cloudsearch初披露 (2012-05-18 jaws-ug 札幌 第6回 勉強会)
DESCRIPTION
CloudSearchって、実は凄いデータベースなんじゃないかなTRANSCRIPT
1位 DynamoDB2位 SimpleDB
3位 CloudSearch
4位 Route53
5位 S3
とくがみ りゅういち東京から来た大阪コアメンバー
札幌に来た理由
というわけで今日は
CloudSearch
まず質問
こんな使い方
facetResult
Result
Result
facet
facet
facetResult
Result
Result
facet
facet
こんな使い方
{“name”=”完訳 ファーブル昆虫記 第1巻 上”,“author”=[“ジャン=アンリ・ファーブル”,”奥本 大三郎”],“format”=[”単行本”],“price”=”2940”,}
{“name”=”完訳 ファーブル昆虫記 <1> (岩波文庫)”,“author”=[“J.H.ファーブル”,”J.H.Fabre”,”山田 吉彦”,”林 達夫”],“format”=[”単行本”],“price”=”2940”,}
{“name”=”ファーブル昆虫記 <1> ふしぎなスカラベ”,“author”=[”奥本 大三郎”],“format”=[”単行本”],“price”=”1680”,}
自動でスケール
ちょっとデモ
こんなCloudSearchですが
データもってないと使えない?
ここから事例紹介
うちはクローラ屋さん
だけど万能ではない
商品名:旭食品 旭 ポンズ 360ml
価格:697円
機械的に収集するには?
おそらくこうする
セレクタ:span#btAsinTitle正規表現:<span id=”btAsinTitle>(.*?)</span>
セレクタ:td#actualPriceValue>b.priceLarge
正規表現:<span id=”actualPriceValue”.*?¥([\D,]+)\s</b>
これが1サイトなら問題ない
100サイト、10000サイトなら?
....
これを解決する技術
特許取りました
AWS上に実装しサービス化ユーザ・課金の管理
サービスの窓口API
独自に作った分散処理の仕組み
ユーザ・課金の管理
課金情報
IAM
ユーザ作成
顧客情報
http://member.mushikago.org/entry
サービスの窓口 API
利用量message
metadata
認証
負荷
増減
api. (subdomain)
独自に作った分散処理
message
message数EC2増減
データmetadatastatus
データ
データ
利用量
この仕組みでやっていること
HTMLのパース
各ノードに重み付け
最適なノードの抽出と学習
そして、各項目の抜き出し
http://www.slideshare.net/tottokug/simpledb
少しだけ詳しいことは2010/12/16に行われた
第6回JAWS-UG勉強会の資料を見て下さい
具体例
具体例{“name”=”完訳 ファーブル昆虫記 第1巻 上”,“author”=[“ジャン=アンリ・ファーブル”,”奥本 大三郎”],“format”=[”単行本”],“price”=”2940”,}
{“name”=”完訳 ファーブル昆虫記 <1> (岩波文庫)”,“author”=[“J.H.ファーブル”,”J.H.Fabre”,”山田 吉彦”,”林 達夫”],“format”=[”単行本”],“price”=”2940”,}
{“name”=”ファーブル昆虫記 <1> ふしぎなスカラベ”,“author”=[”奥本 大三郎”],“format”=[”単行本”],“price”=”1680”,}
{“name”=”完訳 ファーブル昆虫記 第1巻 上”,“author”=[“ジャン=アンリ・ファーブル”,”奥本 大三郎”],“format”=[”単行本”],“price”=”2940”,}
{“name”=”完訳 ファーブル昆虫記 <1> (岩波文庫)”,“author”=[“J.H.ファーブル”,”J.H.Fabre”,”山田 吉彦”,”林 達夫”],“format”=[”単行本”],“price”=”2940”,}
{“name”=”ファーブル昆虫記 <1> ふしぎなスカラベ”,“author”=[”奥本 大三郎”],“format”=[”単行本”],“price”=”1680”,}
CloudSearch
実装例
html,js
CloudFront
動的コンテンツ
ちょっと宣伝
hanamgri(はなむぐり)
近日β版リリース予定
www.mushikago.org