twitter分散クロールの野望
TRANSCRIPT
twitter分散クロールの野望しだらようじ (dara)
2007-11-17Ruby勉強会札幌-6
自己紹介
詳しくはポジペ
今日は
として発表させていただきます
buzztterとは
http://twitter.com
「今何しているの?」を媒介にした
コミュニケーションサービス
buzztterは
twitter 全体の「イマ」を切り取るサービス
http://buzztter.com/
Ruby + Ruby on Railsで構築
初期バージョンは2週間で開発
掲載書籍
twitterコミュニケーション・バイブル̶気軽に書ける1行ブログ ブラウザインスタントメッセンジャーケータイ対応菊地 芳枝 著
Twitter!̶Twitter APIガイドブック辻村 浩 著
twitter上での評判twitter、buzztter、twitter検索、tumblr、はてブ。これらが手放せない。http://twitter.com/akio0911/statuses/387770042
buzztterはtwitter-erの心を映す鏡http://twitter.com/maybowjing/statuses/344534932
相変わらずbuzztterはよく空気を読んでる。そもそも、そういう仕組みのモノなんだけど。http://twitter.com/NStyles/statuses/335544352
扱うべきデータ量
扱うべきデータ量2007年11月3日 buzztter調べ125,626 updates/日5234.4 updates/時87.24 updates/分データの大きさ (JSON response)約12kB/20 updates約71.88MB/日約25.62GB/年
システム構成twitter
DB
fetcher
analyzer
web UIhot botnotify bot
dRB
twitter API
importerlanguage guesser
user
...という話は
buzztterの裏側とその周辺技術
しだらようじ(dara)
2007-11-06勉強会@自律系
http://d.hatena.ne.jp/darashi/20071106/1194365071
をご覧いただくことにして
大量の発言を解析し続ける必要がある
ところが
twitter APIでは一度に「最新の」
「20 updates」しか取得できない
取りこぼしたら終わり
ショボーン(́・ω・`)
でも負けない
現在のbuzztter
分散クローラ w/dRB, Rindatwitter
fetcher fetcher fetcher
DB
importer
1時間分をfetcherのメモリに保持
importerが永続化
dRB
ハードウェア on 自宅ラック
自作PC(メイン)Core 2 Duo 6400
(2.13GHz)Memory: 2GB
VM on 自作PC(補助クローラ)Pentium 4 2.53GHzMemory: 1GB
別マシンに分散
問題点
僕らの記憶は1時間しかもたない
ネットワーク的に分散しづらい
(ssh tunnel などが必要)
オープンにはしづらい
そこで
次期分散クローラ構想twitter
fetcher fetcher fetcher
importer importer
DB DB DB
各ユーザが自由に利用
RESTなどでP2Pで補完
進捗状況
まだ構想段階
当面の課題
ノードのデータストレージをどうするか
プロトコルをどうするか
などなど...
山積み
twitterクローラは
twitter全体を解析するサービスには
かならず必要
みんなでつくってみんなでつないでみんなで使おう
twitter分散クローラ