yatsが回収したTwitter日本語圏 9月(1/2)
久しぶりにTwitter日本語圏のダンプを公開したいと思います。
9/1-9/16の1.77億つぶやきのMySQLダンプです(load dataで取り込むタイプ)
yatsの収集対象は
- 公開ユーザー状態でつぶやかれたもののうち
- 過去3週間以内につぶやいたユーザーからのもの、
- 累積200〜400つぶやきの日本語ユーザーからのもの
です。ベストエフォートです。
streaming apiで流れてくるつぶやきもだいたい記録しています。
スキーマ:
CREATE TABLE `buffer_20100916` ( `id_autoinc` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(20) unsigned NOT NULL, `user` varchar(20) NOT NULL, `content` text NOT NULL, `source` text, `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id_autoinc`), UNIQUE KEY `id` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2179575472 DEFAULT CHARSET=utf8
記録されている内容:
CREATE TABLE `buffer_yyyymmdd` ( `id_autoinc` yats内部ID, `id` ステータスID, `user` スクリーンネーム, `content` 本文, `source` 投稿に用いたクライアント情報, `time` つぶやかれた時刻, PRIMARY KEY (`id_autoinc`), UNIQUE KEY `id` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=x DEFAULT CHARSET=utf8
データ:
http://yats-api.no-ip.org/data/buffer_20100916.bz2 8.7G (36GB)
使い方:
$ wget http://yats-api.no-ip.org/data/buffer_20100916.bz2 $ bunzip2 buffer_20100916.bz2 $ mysql -u hoge
mysql > use hogebase; mysql > CREATE TABLE `buffer_20100916` ( `id_autoinc` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(20) unsigned NOT NULL, `user` varchar(20) NOT NULL, `content` text NOT NULL, `source` text, `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id_autoinc`), UNIQUE KEY `id` (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2179575472 DEFAULT CHARSET=utf8; mysql > LOAD DATA INFILE 'buffer_20100916' INTO TABLE buffer_20100916; mysql> select * from buffer_20100916 where user like 'fuba' limit 1\G id_autoinc: 1979328940 id: 22534370639 user: fuba content: 当分夏だろ source: <a href="http://sites.google.com/site/peraperaprv/Home" rel="nofollow">P3:PeraPeraPrv</a> time: 2010-08-31 00:39:46 1 row in set (19.56 sec)
その他の使い方:
MySQLダンプですがスキーマは必要以上にインデックスを張っていません。
用途に応じて張ってみてください。
MySQLに入れずに使うことも出来ます。
bunzip2後のファイルは以下のようになっています。
$ bzcat buffer_20100916.bz2 |head id_autoinc id user content source time id_autoinc id user content source time id_autoinc id user content source time
本文などに改行が入る場合など例外もありますのでちょっと処理が面倒かもですが、
違うデータベースに入れてもいいし、そのまま使っても良いと思います。