Upload
fumikazu-kiyota
View
2.701
Download
1
Embed Size (px)
DESCRIPTION
SnapDish の CloudSearch の利用方法。 インデックスのアップデートの仕組みついて少し説明している
Citation preview
& CloudSearchFumikazu Kiyota Vuzz Inc. 2014/05/15 @AWS Meguro
Index• Self-introduction
• About SnapDish
• Why CloudSearch?
• How we use CloudSearch
• Summary
[self print]★Working for Vuzz Inc.
★ Language Objective-C, Python, Japanese, English
★Member of PyCon JP 2014
★@kiyotaman - twitter
★ Everyday Zazen(meditating) in the morning.
★ 4 years experience in AWS
SnapDish?SnapDish って?
Our mission
Help people cooking everyday!
at SnapDish
Share
Communicate
Find Friends
in Common
Enjoy Cooking!
Image Source: http://www.cancook.co.uk/wp-content/uploads/2010/06/cancookschools.jpg
Why CloudSearch?
Simple & Easy Installation Powerful & Reliable Service
Reasonable & Affordable Price
How we use CloudSearch.
Search users & dishes
User search fields• Full name - multilingual text ex. アマゾン 太郎
• Account name - Alphabet text ex. AmazonTarou
• Bio - multilingual text ex. お寿司とラーメン大好き❤(Love sushi and ramen)
Search query
/2013-01-01/search?q=(or (prefix field=screen_name '寿司') name:'寿司' bio:'寿司')&start=0&q.options={"fields": ["screen_name^10", "name^5", "bio"]}&q.parser=structured&size=300
When update index
・Create a user profile
!
・Update a user profile
!
・Delete a user profile
Job Queue
App Server (Cached)
Job Queue CloudSearch
Client
Enqueue
Add, Delete, Update
DB
Dish search fields (using old version)
• Tokenize - Tokenized text ex. 寿司 すし スシ お寿司 大好き※ Still using old API…
Search query
/2011-02-01/search?rank=-text_relevance&facet=homemade,recipe,cookedit,ingredients&start=0&return-fields=userid&size=300&bq=(and tokenize:'+すし*' (not recipe:"1"))
When update index・Create a dish detail
・User action on a dish detail Yummy(Like), Comment, Resnap(Retweet), View, etc..
・Delete dish detail
App Server (Cached)
SQS
Batch Worker Server
Tokenize
CloudSearch
ClientSQS
Add, Delete, Update within 5MB
(Batch Size Limitation)
Enqueue
DB
http://docs.aws.amazon.com/cloudsearch/latest/developerguide/limits.html
2011-02-11 to 2013-01-01
• Migration Task
• Indexing options
• Analysis Scheme
• Sort Expression
• Batch worker
• Search query
• Tokenise
Summary• SnapDish is for foodies
• Two ways to update index (SQS & Batch Recommended)
• Own dictionary gives you better search result
Thank you m(_ _)m