PR

 2013年10月現在,Twitterはアクティブユーザ数が2億人以上,1日の投稿ツイート数は5億件以上[1]と,最も活発なWebサービスの1つである.(株)NTTデータが運営する「Twitterデータ提供サービス」は,そのような大量の公開ツイートをFirehose APIを通じて収集し,すべての日本語ツイートを,特性の異なる複数のWeb APIによりユーザに提供するサービスである.Firehoseを利用するシステムは,トラフィックの継続的な増加,ツイート数の瞬間的な急増,データの再取得の難しさなど,さまざまな課題に対処する必要がある.本論文では,OSSを全面的に活用し,これらの課題に対応したシステムの事例を紹介する.

1.はじめに

 (株)NTTデータは,2012年9月に米Twitter社と契約を締結し[2],同年12月から「Twitterデータ提供サービス」を開始した[3].

 このサービスは,Twitter社が提供するAPI「Firehose」[4]から,Twitterに投稿されたすべての公開ツイートを即時に受信し,公開ツイートのうち投稿内容に日本語を含むツイート,もしくは投稿者の言語設定が日本語であるツイート(以下,これらを「日本語ツイート」と総称する)をシステムに蓄積するとともに,後述するAPIを通じて利用者に提供する.

 本システムは一部の構成要素を除き,全面的にOSSを用いて構築した.これは,自分たちが仕組みを理解し,必要に応じて解析・修正できる,透明性の高いソフトウェアでシステムを構築することで,高品質のサービスを提供するためである.

 本論文では,まずTwitterデータ提供サービスの概要とシステム構成,採用したOSSの利用方法を紹介する.次に,今回の構成を選択した背景として,Firehoseを利用するシステムが抱える課題と,本システムがそれらの課題にどのように対処したかを説明する.次いで,大規模データを蓄積・検索する上での工夫を紹介し,最後に,今回の開発を通じて得られた知見を紹介する.

この記事は会員登録で続きをご覧いただけます

日経クロステック登録会員になると…

新着が分かるメールマガジンが届く
キーワード登録、連載フォローが便利

さらに、有料会員に申し込むとすべての記事が読み放題に!
日経電子版セット今なら2カ月無料