Skip to main content
Powerstream は、公開 X データにリアルタイムでアクセスするための最低レイテンシーのストリーミング API です。データのハイドレーションと配信を優先する他のストリーミングエンドポイント (P99 レイテンシー約 6-7 秒) とは異なり、Powerstream は速度に最適化されており、最小限の遅延でデータを配信します。 レガシーの GNIP Powertrack API と同様に、キーワード、オペレーター、メタデータに基づいて Post をフィルタリングするためにルールを使用します。Powerstream エンドポイントへの永続的な HTTP 接続を確立すると、一致する Post をリアルタイムで受信できます。 現在、Powerstream は最大 1,000 ルールをサポートし、各ルールは 2048 文字です。

主な機能

  • リアルタイムデータ配信: Post が公開された瞬間にストリーミングする最低レイテンシーオプション。
  • 精密なフィルタリング: オペレーターを使ったブールクエリで、必要なデータだけを正確にフィルタリング。
  • 配信: HTTP/1.1 の chunked transfer encoding を用いた JSON レスポンス。
  • ローカルデータセンターサポート: レプリケーションラグを回避してレイテンシーをさらに削減するために、ローカルデータセンターからのみ Post を取得。
Powerstream API は、選択された Enterprise プランで利用可能なプレミアムサービスです。Powerstream へのアクセスや Enterprise サービスについて詳しく知りたい方は、Enterprise リクエストフォームを送信して Sales チームまでお問い合わせください。 Powerstream がお客様のニーズをどのようにサポートできるかについて、喜んでご相談いたします。

クイックスタート

このセクションでは、requests ライブラリを使った Python で PowerStream エンドポイントをすぐに始める方法を紹介します。pip install requests でインストールできます。すべての例は OAuth 2.0 Bearer Token 認証を使用します。YOUR_BEARER_TOKEN を実際のトークンに置き換えてください (安全に保管してください。例: os.getenv('BEARER_TOKEN') 経由)。 各エンドポイントをコードスニペット付きで説明します。以下のインポートを冒頭に含めているものとします:

セットアップ

1. ルールを作成 (POST /rules)

ストリームをフィルタリングするためのルールを追加します。

2. ルールを削除 (POST /rules)

ルールを ID (推奨) または値で削除します。
ヒント: すべてのルールを削除するには、まず GET で取得して ID を抽出し、一括削除します。

3. ルールを取得 (GET /rules)

すべてのアクティブなルールを取得します。

4. PowerStream (GET /stream)

リアルタイムで低レイテンシーの Post 用にストリームに接続します。行ごとに読み取るために stream=True を使用します。堅牢性のために再接続ロジックを実装します。

ローカルデータセンターサポート

レイテンシー最適化のために、Powerstream は接続が確立されたローカルデータセンターで発信または作成された Post のみを取得するオプションを提供します。これにより、レプリケーションラグを回避し、他のデータセンターからの Post に比べて高速に配信できます。これを有効にするには、ストリームエンドポイントにクエリパラメーター ?localDcOnly=true を付加します (例: /2/powerstream?localDcOnly=true)。接続しているデータセンターは、ストリームの最初のデータペイロードとレスポンスの HTTP ヘッダーの両方で示されます。 コードでの使用例:
localDcOnly パラメーターが有効になっている場合、ストリームが最初に接続すると、使用されているローカルデータセンターを示す次のレスポンスヘッダーが含まれます:
これに加えて、データセンターを指定する初期ペイロードも送信されます:
ヒント: レイテンシーを最適化するために、異なる地理的位置 (例えば米国東海岸のアトランタ付近と米国西海岸のポートランド付近) から接続をセットアップし、それぞれで localDcOnly=true を有効にします。これにより、それぞれのデータセンターからの Post に高速にアクセスできます。データセンターをまたがったデータを結合するために、ストリームをクライアント側で集約してください。

オペレーター

フィルタリング用のルールを設定するには、キーワードとオペレーターを使用できます。

Powerstream オペレーター

利用可能なオペレーターの完全なリスト

レスポンス

Powerstream API のペイロード形式は、レガシー GNIP Powertrack API と同じです。JSON レスポンスのサンプルは以下のとおりです:
レスポンス例

制限とベストプラクティス

  • レート制限: ルール管理は 24 時間あたり 50 リクエスト。ストリームには制限はありません (ただし接続制限が適用されます)。
  • 再接続: 切断時は指数バックオフを使用。
  • モニタリング: Connection: keep-alive ヘッダーを使用。

ストリーミングの基礎

ストリーミングデータの消費

ストリーミングクライアントのベストプラクティス

切断の処理

優雅に再接続する

大容量対応

高スループットを処理

リカバリと冗長性

レジリエントなアプリケーションを構築