「Azure SDK for Go のドキュメント」サイトの「Azure SDK for Go のインストール」ページを読み進みています。
「Azure SDK for Go を入手する」セクションにて、いくつかのAzure サービス用のパッケージは Azure/azure-sdk-for-go とは別に用意されているとの記述があり、それらは主にストレージ サービスとメッセージング サービスのパッケージです。
ストレージ サービス
File Storage(パッケージ:Azure/azure-storage-file-go)
- Azure上に構築されたSMB プロトコルのファイル共有システム。
- 汎用 OS(Linux, macOS, Windows、など)でのファイル共有で使用。
Blob Storage(パッケージ:Azure/azure-storage-blob-go)
- ファイルをBLOBで扱うストレージ。
- 大量データの蓄積や操作(アーカイブ、ランダム アクセス、データ解析、など)
Queue storage(パッケージ:Azure/azure-storage-queue-go)
- RESTでのテキストメッセージをキューイングする。
- Service Busと比べてキューイング(格納)に重きが置かれている。
Table storage(パッケージ:なし)
- 分散Key-Valueストア。
メッセージング サービス
Service Bus(パッケージ:Azure/azure-service-bus-go)
- TCP プロトコルのメッセージをキューイングしたりPub/Subで処理する。
- Queue Storageと比べてメッセージングに重きが置かれている。
Event Hubs(パッケージ:Azure/azure-event-hubs-go)
- HTTPS/AMQP/Kafka プロトコルの大量のイベントを受け取って、Kafka プロトコルに対応したサービスに振り分ける。
- ビッグ データ向け。
Event Grid(パッケージ:なし)
- 対応したAzure サービスからのイベントを受け取って、対応したAzure サービスに振り分ける。
サービスのパッケージが分家する動きは、Azure SDK for Goがベータ版だった時からあり、最初はストレージでした。