Twitterの「Firehose」とはそもそも何か?
Twitter関連のニュースを眺めていると、「Firehose」という言葉を目にすることがあると思います。
Firehoseというのはそのままの意味だと「fire hose = 消防ホース」のことですが、TwitterではStreaming APIに用意されている、全公開ツイートをリアルタイムに取得可能な機能(メソッド)のことをいいます。
http://apiwiki.twitter.com/Streaming-API-Documentation#statuses/firehose
Streaming APIというのは通常のAPIとは違って、一度サーバーにデータ取得のリクエストを送信すると、その後レスポンスが永続的に流れてくるものです。動画ストリーミングのようなものと考えればいいでしょう。
通常のAPIは、ブラウザと同じように「このURLのデータがほしい」というリクエストを送信すると、その時点までにサーバーにたまっているデータのみ返されて終わりです。一方でStreaming APIではリクエストを送信した後にTwitterに投稿されるツイートもどんどん流れてきます。
誰でも利用可能なStreaming APIは取得可能なデータに制限がかけられており、キーワードを指定したりユーザーIDを指定したりしてフィルタリングした結果を取得することはできますが、フィルタリングなしに全公開ツイートを取得することはできません。
その「フィルタリングなしに全公開ツイートを取得する」ことができるStreaming APIのことを「Firehose」といいます。(ただし検索に出てこないスパムなツイートは流れないみたいです。)
GoogleやMicrosoftは、Twitterと契約することでこのFirehoseにアクセス可能になっていて、リアルタイム検索を提供しています。また、2月上旬には米Yahoo!が加わり、先日はスタートアップ7社がそれに加わったという状況になっています。
コメントを残す