Azure Event Hubs のスループット単位を自動的にスケールアップするAutomatically scale up Azure Event Hubs throughput units

Azure Event Hubs は、拡張性の高いデータ ストリーミング プラットフォームです。Azure Event Hubs is a highly scalable data streaming platform. そのため、Event Hubs の使用は、多くの場合、サービスの利用開始後に増えます。As such, Event Hubs usage often increases after starting to use the service. このような使用では、Event Hubs のスケーリングとより大きな転送率の処理を行うために、事前に定義されたスループット単位を増やす必要があります。Such usage requires increasing the predetermined throughput units to scale Event Hubs and handle larger transfer rates. Event Hubs の自動インフレ機能は、使用量のニーズに合わせてスループット単位の数を増やすことで、自動的にスケールアップします。The Auto-inflate feature of Event Hubs automatically scales up by increasing the number of throughput units, to meet usage needs. スループット単位を増やすことで、以下の状況で必要になる調整シナリオを防ぐことができます。Increasing throughput units prevents throttling scenarios, in which:

  • データの受信レートが、設定されたスループット単位を超えている。Data ingress rates exceed set throughput units.
  • データの送信要求レートが、設定されたスループット単位を超えている。Data egress request rates exceed set throughput units.

負荷が最小しきい値を超えていて、ServerBusy エラーなどで失敗した要求がない場合、Event Hubs サービスでスループットが増えます。The Event Hubs service increases the throughput when load increases beyond the minimum threshold, without any requests failing with ServerBusy errors.

自動インフレのしくみHow Auto-inflate works

Event Hubs のトラフィックは スループット単位で制御されます。Event Hubs traffic is controlled by throughput units. 受信の場合、1 スループット単位は 1 MB/秒となり、送信の場合はその倍となります。A single throughput unit allows 1 MB per second of ingress and twice that amount of egress. 標準的なイベント ハブを構成するときのスループット単位は 1 ~ 20 です。Standard event hubs can be configured with 1-20 throughput units. 自動インフレを使用すると、自分で選択した最低限必要なスループット単位から小さく始めることができます。Auto-inflate enables you to start small with the minimum required throughput units you choose. その後、この機能は、トラフィックの増加に応じて、必要なスループット単位の上限を自動的にスケーリングします。The feature then scales automatically to the maximum limit of throughput units you need, depending on the increase in your traffic. 自動インフレには、次の利点があります。Auto-inflate provides the following benefits:

  • 小さく始めて、成長と共にスケールアップする効率的なスケーリング メカニズムです。An efficient scaling mechanism to start small and scale up as you grow.
  • 調整問題なしで、指定された上限に自動的にスケーリングします。Automatically scale to the specified upper limit without throttling issues.
  • タイミングと量を制御できるため、スケーリングを細かく制御できます。More control over scaling, because you control when and how much to scale.

名前空間で自動インフレを有効にするEnable Auto-inflate on a namespace

Event Hubs 名前空間の自動インフレを有効または無効にするには、次のいずれかの方法を使用します。You can enable or disable Auto-inflate on an Event Hubs namespace by using either of the following methods:

ポータルで自動インフレを有効にするEnable Auto-inflate through the portal

作成時に有効にするEnable at the time of creation

自動インフレ機能は、Event Hubs 名前空間の作成時に有効にできます。You can enable the Auto-inflate feature when creating an Event Hubs namespace:

イベント ハブの作成時に自動インフレを有効にする

このオプションを有効にすると、小さなスループット単位で開始し、使用量のニーズの増加に合わせてスケールアップできます。With this option enabled, you can start small with your throughput units and scale up as your usage needs increase. インフレの上限はすぐには料金に影響しません。料金は 1 時間ごとに使用されるスループット単位の数によって決まります。The upper limit for inflation does not immediately affect pricing, which depends on the number of throughput units used per hour.

既存のイベント ハブの自動インフレを有効にするEnable auto-inflate for an existing event hub

自動インフレ機能を有効にし、次の手順を使用してその設定を変更することもできます。You can also enable the Auto-inflate feature and modify its settings by using the following instructions:

  1. [Event Hubs 名前空間] ページの [Auto-inflate throughput units](自動インフレのスループット ユニット)[無効] を選択します。On the Event Hubs Namespace page, select Disabled under Auto-inflate throughput units.

    [Event Hubs 名前空間] ページでスループット ユニットを選択する

  2. [スケールの設定] ページで、 [有効] のチェック ボックスをオンにします (自動スケール機能が有効になっていなかった場合)。In the Scale Settings page, select the checkbox for Enable (if the autoscale feature wasn't enabled).

    [有効] を選択する

  3. スループット ユニットの最大数を入力するか、スクロール バーを使用して値を設定します。Enter the maximum number of throughput units or use the scrollbar to set the value.

  4. (省略可能) このページの上部でスループット ユニットの最小数を更新します。(optional) Update the minimum number of throughput units at the top of this page.

注意

自動インフレの構成を適用してスループット ユニットを増やした場合、Event Hubs サービスにより、スループットがいつ何故増加したかに関する情報を提供する診断ログが出力されます。When you apply the auto-inflate configuration to increase throughput units, the Event Hubs service emits diagnostic logs that give you information about why and when the throughput increased. イベント ハブの診断ログを有効にするには、Azure portal のイベント ハブ ページの左のメニューで [診断設定] を選択します。To enable diagnostic logging for an event hub, select Diagnostic settings on the left menu on the Event Hub page in the Azure portal. 詳しくは、「Azure イベント ハブの診断ログを設定する」をご覧ください。For more information, see Set up diagnostic logs for an Azure event hub.

Azure Resource Manager テンプレートを使用して自動インフレを有効にするEnable Auto-Inflate using an Azure Resource Manager template

Azure Resource Manager テンプレートのデプロイ時に自動インフレを有効にできます。You can enable Auto-inflate during an Azure Resource Manager template deployment. たとえば、isAutoInflateEnabled プロパティを true に設定し、maximumThroughputUnits を 10 に設定します。For example, set the isAutoInflateEnabled property to true and set maximumThroughputUnits to 10. 例:For example:

"resources": [
        {
            "apiVersion": "2017-04-01",
            "name": "[parameters('namespaceName')]",
            "type": "Microsoft.EventHub/Namespaces",
            "location": "[variables('location')]",
            "sku": {
                "name": "Standard",
                "tier": "Standard"
            },
            "properties": {
                "isAutoInflateEnabled": true,
                "maximumThroughputUnits": 10
            },
            "resources": [
                {
                    "apiVersion": "2017-04-01",
                    "name": "[parameters('eventHubName')]",
                    "type": "EventHubs",
                    "dependsOn": [
                        "[concat('Microsoft.EventHub/namespaces/', parameters('namespaceName'))]"
                    ],
                    "properties": {},
                    "resources": [
                        {
                            "apiVersion": "2017-04-01",
                            "name": "[parameters('consumerGroupName')]",
                            "type": "ConsumerGroups",
                            "dependsOn": [
                                "[parameters('eventHubName')]"
                            ],
                            "properties": {}
                        }
                    ]
                }
            ]
        }
    ]

完全なテンプレートについては、GitHub のイベント ハブ名前空間とインフレの有効化のテンプレートを参照してください。For the complete template, see the Create Event Hubs namespace and enable inflate template on GitHub.

次の手順Next steps

Event Hubs の詳細については、次のリンク先を参照してください:You can learn more about Event Hubs by visiting the following links: