Стек AWS CloudFormation: добавьте прослушиватель балансировки нагрузки в зависимости от условия

В вашем вопросе вы говорите, что

У меня есть способ создать отчет, который выглядит следующим образом

, а затем перечислить данные как

Batch  Zone  Value1  Value2
-----  ----  ------  ------
   25     1       5      15
   25     2      12      31
   26     1       6      14
   26     2      10      32

Теперь, возможно, данные могут уже находиться в форме «без поворота» где-то (с разными Value s в отдельных строках), но если нет, вы бы использовали что-то вроде следующего запроса для достижения что

SELECT 
    [Batch],
    "Zone" & [Zone] & "_" & "Value1" AS [ValueID],
    [Value1] AS [ValueValue]
FROM BatchDataByZone
UNION ALL
SELECT 
    [Batch],
    "Zone" & [Zone] & "_" & "Value2" AS [ValueID],
    [Value2] AS [ValueValue]
FROM BatchDataByZone

... return:

Batch  ValueID       ValueValue
-----  ------------  ----------
   25  Zone1_Value1           5
   25  Zone2_Value1          12
   26  Zone1_Value1           6
   26  Zone2_Value1          10
   25  Zone1_Value2          15
   25  Zone2_Value2          31
   26  Zone1_Value2          14
   26  Zone2_Value2          32

Однако вы доберетесь до этой точки, если вы сохраните этот запрос как [BatchDataUnpivoted], тогда вы можете использовать простой запрос Crosstab «вывести» значения для каждой партии ...

TRANSFORM Sum(BatchDataUnpivoted.[ValueValue]) AS SumOfValueValue
SELECT BatchDataUnpivoted.[Batch]
FROM BatchDataUnpivoted
GROUP BY BatchDataUnpivoted.[Batch]
PIVOT BatchDataUnpivoted.[ValueID];

... return ...

Batch  Zone1_Value1  Zone1_Value2  Zone2_Value1  Zone2_Value2
-----  ------------  ------------  ------------  ------------
   25             5            15            12            31
   26             6            14            10            32
0
задан Peter Grainger 5 March 2019 в 16:42
поделиться

1 ответ

Редактировать: Используя классический балансировщик нагрузки ...

LoadBalancer:
  Type: 'AWS::ElasticLoadBalancing::LoadBalancer'
  Properties:
    HealthCheck:
      HealthyThreshold: '2'
      Interval: '15'
      Target: 'HTTP:9000/'
      Timeout: '5'
      UnhealthyThreshold: '10'
    Listeners: !If 'HasTCPPort1'
      -
        - InstancePort: TCPPort1
          Condition: HasTCPPort1
          InstanceProtocol: HTTP
          LoadBalancerPort: TCPPort1
          SSLCertificateId: !If
            - HasLoadBalancerCertificateARN
            - !Ref LoadBalancerCertificateARN
            - !Ref 'AWS::NoValue'
          Protocol: !If
            - HasLoadBalancerCertificateARN
            - HTTPS
            - HTTP
      - !Ref 'AWS::NoValue' 
    Scheme: internet-facing
    Subnets:
      - 'Fn::ImportValue':
            !Sub '${ParentVPCStack}-SubnetAPublic'
      - 'Fn::ImportValue':
            !Sub '${ParentVPCStack}-SubnetBPublic'
      - 'Fn::ImportValue':
            !Sub '${ParentVPCStack}-SubnetCPublic'
    SecurityGroups:
      - !Ref SecurityGroup
    Instances:
      - !Ref Server
0
ответ дан Mat 5 March 2019 в 16:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: