Download - 割とよくやる使い方 20130419
![Page 1: 割とよくやる使い方 20130419](https://reader031.vdocuments.pub/reader031/viewer/2022020218/559b65e91a28ab313c8b46c4/html5/thumbnails/1.jpg)
割とよくやる使い方
![Page 2: 割とよくやる使い方 20130419](https://reader031.vdocuments.pub/reader031/viewer/2022020218/559b65e91a28ab313c8b46c4/html5/thumbnails/2.jpg)
レプリケーションスレーブでの分割
![Page 3: 割とよくやる使い方 20130419](https://reader031.vdocuments.pub/reader031/viewer/2022020218/559b65e91a28ab313c8b46c4/html5/thumbnails/3.jpg)
変更前構成図
バッチ処理が追いつかないようなケースがあった場合、
Master
DB
1.Get data
Master
DB Full-text
search replication
AP AP
Batch
2.Register Slave
DB
Slave
DB ……
Full-text
search ……
……
Batch ……
Crawler Crawler ……
again,
again…
![Page 4: 割とよくやる使い方 20130419](https://reader031.vdocuments.pub/reader031/viewer/2022020218/559b65e91a28ab313c8b46c4/html5/thumbnails/4.jpg)
Spider投入後の構成図
レプリケーションスレーブで分割を行い、
バッチ処理の並列性を高めるのにSpiderを使います。
こうすることで、特定の処理のパフォーマンスの改善のみに
フォーカスした分割を行うことができ、テスト工数も最小化できます。
Master
DB
Master
DB
Full-text
search
replication
AP AP
Batch
2.Register
Slave
DB
Slave
DB …
Full-text
search …
…
Batch …
Crawler Crawler …
DB
tbl_a
DB
tbl_a
DB
tbl_a
DB
tbl_a
DB
tbl_a
col_a%4=0
col_a%4=1 col_a%4=2
col_a%4=3 Data
sharding
by Spider
1.Get data
DB DB
tbl_a tbl_a
again, again…
replication
1.Get data
![Page 5: 割とよくやる使い方 20130419](https://reader031.vdocuments.pub/reader031/viewer/2022020218/559b65e91a28ab313c8b46c4/html5/thumbnails/5.jpg)
激しいログトラフィックをさばく
![Page 6: 割とよくやる使い方 20130419](https://reader031.vdocuments.pub/reader031/viewer/2022020218/559b65e91a28ab313c8b46c4/html5/thumbnails/6.jpg)
ログトラフィックをさばくためのサーバ構成図
まずBlackholeストレージエンジンのテーブルにログの書き込みを行い、
それをレプリケーションしてSpider経由で集計用のDBにかき集めます。
集計用DBにトリガを仕掛けて、
データの加工を合わせて行うということもよくやります。
AP
… Statistical
DB DB
AP
DB
tbl_a
DB
tbl_a
DB
tbl_a …
tbl_a tbl_a
1.Write log
2.Replication 3.Log data collecting
using Spider
Blackhole
… Trigger