Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

SnapDish&CloudSearch@aws

4,622 views

Published on

SnapDish の CloudSearch の利用方法。
インデックスのアップデートの仕組みついて少し説明している

Published in: Technology
  • Login to see the comments

SnapDish&CloudSearch@aws

  1. 1. & CloudSearch Fumikazu Kiyota Vuzz Inc. 2014/05/15 @AWS Meguro
  2. 2. Index • Self-introduction • About SnapDish • Why CloudSearch? • How we use CloudSearch • Summary
  3. 3. [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
  4. 4. SnapDish? SnapDish って?
  5. 5. Our mission
  6. 6. Help people cooking everyday!
  7. 7. at SnapDish
  8. 8. Share
  9. 9. Communicate
  10. 10. Find Friends
  11. 11. in Common
  12. 12. Enjoy Cooking! Image Source: http://www.cancook.co.uk/wp-content/uploads/2010/06/cancookschools.jpg
  13. 13. Why CloudSearch?
  14. 14. Simple & Easy Installation Powerful & Reliable Service Reasonable & Affordable Price
  15. 15. How we use CloudSearch.
  16. 16. Search users & dishes
  17. 17. User search fields • Full name - multilingual text 
 
 ex. アマゾン 太郎 • Account name - Alphabet text
 
 ex. AmazonTarou • Bio - multilingual text
 
 ex. お寿司とラーメン大好き❤(Love sushi and ramen)
  18. 18. 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
  19. 19. When update index ・Create a user profile ! ・Update a user profile ! ・Delete a user profile
  20. 20. Job Queue App Server (Cached) Job Queue CloudSearch Client Enqueue Add, Delete, Update DB
  21. 21. Dish search fields (using old version) • Tokenize - Tokenized text 
 
 ex. 寿司 すし スシ お寿司 大好き
 
 
 ※ Still using old API…
  22. 22. 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"))
  23. 23. When update index ・Create a dish detail ・User action on a dish detail
 Yummy(Like), Comment, Resnap(Retweet), View, etc..
 ・Delete dish detail
  24. 24. App Server (Cached) SQS Batch Worker Server Tokenize CloudSearch Client SQS Add, Delete, Update within 5MB (Batch Size Limitation) Enqueue DB http://docs.aws.amazon.com/cloudsearch/latest/developerguide/limits.html
  25. 25. 2011-02-11 to 2013-01-01 • Migration Task • Indexing options • Analysis Scheme • Sort Expression • Batch worker • Search query • Tokenise
  26. 26. Summary • SnapDish is for foodies • Two ways to update index 
 (SQS & Batch Recommended) • Own dictionary gives you better search result
  27. 27. Thank you m(_ _)m
  28. 28. https://pycon.jp/2014/ Waiting for your! PyCon JP 2014 Sponsorship and CfP!

×