Upgrade to Pro — share decks privately, control downloads, hide ads and more …

もし groonga が Amazon CloudSearch 互換の API だったら

Yoji Shidara
November 29, 2012

もし groonga が Amazon CloudSearch 互換の API だったら

全文検索エンジンgroongaを囲む夕べ 3
http://atnd.org/events/33070

Yoji Shidara

November 29, 2012
Tweet

More Decks by Yoji Shidara

Other Decks in Programming

Transcript

  1. ΋͠HSPPOHB͕
    "NB[PO$MPVE4FBSDIޓ׵ͷ
    "1*ͩͬͨΒ
    ͩ͠ΒΑ͏͡
    !EBSBTIJ

    શจݕࡧΤϯδϯHSPPOHBΛғΉ༦΂

    View Slide

  2. "NB[PO$MPVE4FBSDI

    View Slide

  3. "NB[PO$MPVE4FBSDI
    ͝ଘ஌ͷํ

    View Slide

  4. Amazon CloudSearch ͸Ϋϥ΢υͰ׬શʹ؅ཧ͞ΕͨݕࡧαʔϏεͰ͋Γɺ͓٬༷͸
    ߴ଎Ͱඇৗʹ֦ுੑͷߴ͍ݕࡧػೳΛΞϓϦέʔγϣϯʹ༰қʹ౷߹Ͱ͖·͢ɻAWS
    Management Console Ͱ਺ճΫϦοΫ͢Δ͚ͩͰɺ։ൃऀ͸؆୯ʹݕࡧυϝΠϯΛ࡞
    ੒ͯ͠ݕࡧର৅ʹ͢ΔσʔλΛ Amazon CloudSearch ʹΞοϓϩʔυͰ͖ɺαʔϏε
    ͸ࣗಈతʹඞཁͳٕज़ϦιʔεΛఏڙͯ͠ߴ౓ʹௐ੔͞ΕͨݕࡧΠϯσοΫεΛల։͠
    ·͢ɻ
    Amazon CloudSearch ͸ݕࡧର৅σʔλ͕૿Ճͨ͠ΓΫΤϦ཰͕มԽͨ͠Γ͢Δͷʹ
    Ԡͯ͡γʔϜϨεʹॖখ·ͨ͸֦ு·͢ɻ։ൃऀ͸͍ͭͰ΋ݕࡧύϥϝʔλʔΛมߋ͠
    ͨΓɺݕࡧͷద੾౓Λมߋɺ৽͍͠ઃఆΛద༻͢Δ͜ͱ͕Ͱ͖ɺσʔλΛ΋͏Ұ౓Ξο
    ϓϩʔυ͢Δඞཁ΋͋Γ·ͤΜɻ
    Amazon CloudSearch ʹΑΓɺ͓٬༷͸ݕࡧϓϥοτϑΥʔϜΛӡ༻͓Αͼॖখ΍֦
    ு͢ΔͨΊͷ؅ཧෆՄΛͳ͘͢͜ͱ͕Ͱ͖·͢ɻ͓٬༷͸ϋʔυ΢ΣΞͷ४උɺσʔλ
    ͷύʔςΟγϣϯɺιϑτ΢ΣΞͷύονͳͲʹ͍ͭͯߟ͑Δඞཁ͸͋Γ·ͤΜɻ
    Amazon CloudSearch ͸ɺैྔ՝੍ۚͷ௿͍Ձ֨ઃఆΛఏڙ͠ɺઌߦ౤ࢿඅ༻΍௕ظ
    తͳܖ໿͸ඞཁ͋Γ·ͤΜɻ
    1 ࣌ؒະຬɺ1 ͔݄͋ͨΓ 100USD ະຬͰݕࡧػೳΛ։࢝͢Δํ๏ͷৄࡉʹͭ
    ͍ͯ͸ɺAmazon Web Services Evangelist Ͱ͋Δ Jeff Barr ͷ
    CloudSearch ϒϩάهࣄΛ͝ࢀর͍ͩ͘͞ɻ
    αΠϯΞοϓ͕؆୯ɺ
    ࠷୹10෼Ͱར༻։࢝Ͱ͖·͢
    ΞΧ΢ϯτ࡞੒ͷྲྀΕ͸ͪ͜Β
    ͝ෆ໌ͳ఺͸͓ؾܰʹ
    ͓໰͍߹Θ͍ͤͩ͘͞
    Amazon CloudSearch ͱ͸ԿͰ
    ͔͢ʁ
    Amazon CloudSearch ͷػೳੑ
    αʔϏε֓ཁ
    ྉۚද
    ৄࡉ৘ใ
    ૝ఆ͞ΕΔ࢖༻ํ๏ͱ੍ݶ
    Amazon CloudSearchʢϕʔλʣ
    ͜ͷϖʔδʹ͸ɺҎԼͷ৘ใΧςΰϦؚ͕·Ε͍ͯ·͢ɻΫϦοΫͯ͠ҎԼ΁δϟϯϓ:
    Amazon CloudSearch
    Amazon CloudSearch ͷ֓

    تͼͷ੠
    ྉۚද
    FAQ
    AWS Management Console
    υΩϡϝϯτ
    Java ༻ SDK
    .NET ༻ SDK
    ϦϦʔεϊʔτ
    ίϛϡχςΟϑΥʔϥϜ
    ؔ࿈Ϧιʔε
    تͼͷ੠
    ੡඼ͱιϦϡʔγϣϯ AWS Product Information ։ൃऀ αϙʔτ
    αΠϯΞοϓ ΞΧ΢ϯτ / ίϯιʔϧ English
    http://aws.amazon.com/jp/cloudsearch/

    View Slide

  5. Amazon CloudSearch ͸Ϋϥ΢υͰ׬શʹ؅ཧ͞ΕͨݕࡧαʔϏεͰ͋Γɺ͓٬༷͸
    ߴ଎Ͱඇৗʹ֦ுੑͷߴ͍ݕࡧػೳΛΞϓϦέʔγϣϯʹ༰қʹ౷߹Ͱ͖·͢ɻAWS
    Management Console Ͱ਺ճΫϦοΫ͢Δ͚ͩͰɺ։ൃऀ͸؆୯ʹݕࡧυϝΠϯΛ࡞
    ੒ͯ͠ݕࡧର৅ʹ͢ΔσʔλΛ Amazon CloudSearch ʹΞοϓϩʔυͰ͖ɺαʔϏε
    ͸ࣗಈతʹඞཁͳٕज़ϦιʔεΛఏڙͯ͠ߴ౓ʹௐ੔͞ΕͨݕࡧΠϯσοΫεΛల։͠
    ·͢ɻ
    Amazon CloudSearch ͸ݕࡧର৅σʔλ͕૿Ճͨ͠ΓΫΤϦ཰͕มԽͨ͠Γ͢Δͷʹ
    Ԡͯ͡γʔϜϨεʹॖখ·ͨ͸֦ு·͢ɻ։ൃऀ͸͍ͭͰ΋ݕࡧύϥϝʔλʔΛมߋ͠
    ͨΓɺݕࡧͷద੾౓Λมߋɺ৽͍͠ઃఆΛద༻͢Δ͜ͱ͕Ͱ͖ɺσʔλΛ΋͏Ұ౓Ξο
    ϓϩʔυ͢Δඞཁ΋͋Γ·ͤΜɻ
    Amazon CloudSearch ʹΑΓɺ͓٬༷͸ݕࡧϓϥοτϑΥʔϜΛӡ༻͓Αͼॖখ΍֦
    ு͢ΔͨΊͷ؅ཧෆՄΛͳ͘͢͜ͱ͕Ͱ͖·͢ɻ͓٬༷͸ϋʔυ΢ΣΞͷ४උɺσʔλ
    ͷύʔςΟγϣϯɺιϑτ΢ΣΞͷύονͳͲʹ͍ͭͯߟ͑Δඞཁ͸͋Γ·ͤΜɻ
    Amazon CloudSearch ͸ɺैྔ՝੍ۚͷ௿͍Ձ֨ઃఆΛఏڙ͠ɺઌߦ౤ࢿඅ༻΍௕ظ
    తͳܖ໿͸ඞཁ͋Γ·ͤΜɻ
    1 ࣌ؒະຬɺ1 ͔݄͋ͨΓ 100USD ະຬͰݕࡧػೳΛ։࢝͢Δํ๏ͷৄࡉʹͭ
    ͍ͯ͸ɺAmazon Web Services Evangelist Ͱ͋Δ Jeff Barr ͷ
    CloudSearch ϒϩάهࣄΛ͝ࢀর͍ͩ͘͞ɻ
    αΠϯΞοϓ͕؆୯ɺ
    ࠷୹10෼Ͱར༻։࢝Ͱ͖·͢
    ΞΧ΢ϯτ࡞੒ͷྲྀΕ͸ͪ͜Β
    ͝ෆ໌ͳ఺͸͓ؾܰʹ
    ͓໰͍߹Θ͍ͤͩ͘͞
    Amazon CloudSearch ͱ͸ԿͰ
    ͔͢ʁ
    Amazon CloudSearch ͷػೳੑ
    αʔϏε֓ཁ
    ྉۚද
    ৄࡉ৘ใ
    ૝ఆ͞ΕΔ࢖༻ํ๏ͱ੍ݶ
    Amazon CloudSearchʢϕʔλʣ
    ͜ͷϖʔδʹ͸ɺҎԼͷ৘ใΧςΰϦؚ͕·Ε͍ͯ·͢ɻΫϦοΫͯ͠ҎԼ΁δϟϯϓ:
    Amazon CloudSearch
    Amazon CloudSearch ͷ֓

    تͼͷ੠
    ྉۚද
    FAQ
    AWS Management Console
    υΩϡϝϯτ
    Java ༻ SDK
    .NET ༻ SDK
    ϦϦʔεϊʔτ
    ίϛϡχςΟϑΥʔϥϜ
    ؔ࿈Ϧιʔε
    تͼͷ੠
    ੡඼ͱιϦϡʔγϣϯ AWS Product Information ։ൃऀ αϙʔτ
    αΠϯΞοϓ ΞΧ΢ϯτ / ίϯιʔϧ English
    http://aws.amazon.com/jp/cloudsearch/

    View Slide


  6. "NB[PO $MPVE4FBSDI ͸Ϋϥ
    ΢υͰ׬શʹ؅ཧ͞ΕͨݕࡧαʔϏ
    εͰ͋Γɺ͓٬༷͸ߴ଎Ͱඇৗʹ֦
    ுੑͷߴ͍ݕࡧػೳΛΞϓϦέʔγ
    ϣϯʹ༰қʹ౷߹Ͱ͖·͢ɻ

    View Slide

  7. 'SPOU&OE
    3BJMT FUD

    )551
    3FRVFTUT
    )551
    3FRVFTUT
    +40/
    3FTQPOTFT
    +40/
    3FTQPOTFT
    "NB[PO
    $MPVE4FBSDI
    Payment
    Required!

    View Slide

  8. ʹϦϦʔε

    View Slide

  9. Amazon CloudSearch ͸Ϋϥ΢υͰ׬શʹ؅ཧ͞ΕͨݕࡧαʔϏεͰ͋Γɺ͓٬༷͸
    ߴ଎Ͱඇৗʹ֦ுੑͷߴ͍ݕࡧػೳΛΞϓϦέʔγϣϯʹ༰қʹ౷߹Ͱ͖·͢ɻAWS
    Management Console Ͱ਺ճΫϦοΫ͢Δ͚ͩͰɺ։ൃऀ͸؆୯ʹݕࡧυϝΠϯΛ࡞
    ੒ͯ͠ݕࡧର৅ʹ͢ΔσʔλΛ Amazon CloudSearch ʹΞοϓϩʔυͰ͖ɺαʔϏε
    ͸ࣗಈతʹඞཁͳٕज़ϦιʔεΛఏڙͯ͠ߴ౓ʹௐ੔͞ΕͨݕࡧΠϯσοΫεΛల։͠
    ·͢ɻ
    Amazon CloudSearch ͸ݕࡧର৅σʔλ͕૿Ճͨ͠ΓΫΤϦ཰͕มԽͨ͠Γ͢Δͷʹ
    Ԡͯ͡γʔϜϨεʹॖখ·ͨ͸֦ு·͢ɻ։ൃऀ͸͍ͭͰ΋ݕࡧύϥϝʔλʔΛมߋ͠
    ͨΓɺݕࡧͷద੾౓Λมߋɺ৽͍͠ઃఆΛద༻͢Δ͜ͱ͕Ͱ͖ɺσʔλΛ΋͏Ұ౓Ξο
    ϓϩʔυ͢Δඞཁ΋͋Γ·ͤΜɻ
    Amazon CloudSearch ʹΑΓɺ͓٬༷͸ݕࡧϓϥοτϑΥʔϜΛӡ༻͓Αͼॖখ΍֦
    ு͢ΔͨΊͷ؅ཧෆՄΛͳ͘͢͜ͱ͕Ͱ͖·͢ɻ͓٬༷͸ϋʔυ΢ΣΞͷ४උɺσʔλ
    ͷύʔςΟγϣϯɺιϑτ΢ΣΞͷύονͳͲʹ͍ͭͯߟ͑Δඞཁ͸͋Γ·ͤΜɻ
    Amazon CloudSearch ͸ɺैྔ՝੍ۚͷ௿͍Ձ֨ઃఆΛఏڙ͠ɺઌߦ౤ࢿඅ༻΍௕ظ
    తͳܖ໿͸ඞཁ͋Γ·ͤΜɻ
    1 ࣌ؒະຬɺ1 ͔݄͋ͨΓ 100USD ະຬͰݕࡧػೳΛ։࢝͢Δํ๏ͷৄࡉʹͭ
    ͍ͯ͸ɺAmazon Web Services Evangelist Ͱ͋Δ Jeff Barr ͷ
    CloudSearch ϒϩάهࣄΛ͝ࢀর͍ͩ͘͞ɻ
    αΠϯΞοϓ͕؆୯ɺ
    ࠷୹10෼Ͱར༻։࢝Ͱ͖·͢
    ΞΧ΢ϯτ࡞੒ͷྲྀΕ͸ͪ͜Β
    ͝ෆ໌ͳ఺͸͓ؾܰʹ
    ͓໰͍߹Θ͍ͤͩ͘͞
    Amazon CloudSearch ͱ͸ԿͰ
    ͔͢ʁ
    Amazon CloudSearch ͷػೳੑ
    αʔϏε֓ཁ
    ྉۚද
    ৄࡉ৘ใ
    ૝ఆ͞ΕΔ࢖༻ํ๏ͱ੍ݶ
    Amazon CloudSearchʢϕʔλʣ
    ͜ͷϖʔδʹ͸ɺҎԼͷ৘ใΧςΰϦؚ͕·Ε͍ͯ·͢ɻΫϦοΫͯ͠ҎԼ΁δϟϯϓ:
    Amazon CloudSearch
    Amazon CloudSearch ͷ֓

    تͼͷ੠
    ྉۚද
    FAQ
    AWS Management Console
    υΩϡϝϯτ
    Java ༻ SDK
    .NET ༻ SDK
    ϦϦʔεϊʔτ
    ίϛϡχςΟϑΥʔϥϜ
    ؔ࿈Ϧιʔε
    تͼͷ੠
    ੡඼ͱιϦϡʔγϣϯ AWS Product Information ։ൃऀ αϙʔτ
    αΠϯΞοϓ ΞΧ΢ϯτ / ίϯιʔϧ English
    http://aws.amazon.com/jp/cloudsearch/

    View Slide

  10. ʘ ϕʔλ
    ʗ

    View Slide

  11. ࠓޙͷൃల͕ظ଴͞Ε·͢

    View Slide

  12. "NB[PO$MPVE4FBSDI
    ࢖͍ͬͯΔํ

    View Slide

  13. "$4Λ࢖͍ͬͯΔͱ
    ͜͏͍͏೰Έ͕ग़ͯ͘Δ͸ͣ

    View Slide


  14. ݸਓͷαʔϏεͰ
    ͪΐͬͱ࢖͍͍ͨΜ͚ͩͲ
    ͓͕ۚʜ

    View Slide


  15. ։ൃ࣌ͷςετʹ
    ࢖͍͍ͨΜ͚ͩͲʜ

    View Slide


  16. ೔ຊޠͷσʔλΛ
    ݕࡧ͍ͨ͠Μ͚ͩͲʜ

    View Slide


  17. 044ͩͬͨΒͳ͋ʜ

    View Slide

  18. ΋͠HSPPOHB͕
    "NB[PO$MPVE4FBSDIޓ׵ͷ
    "1*ͩͬͨΒ

    View Slide

  19. ΋͠HSPPOHB͕
    "NB[PO$MPVE4FBSDIޓ׵ͷ
    "1*ͩͬͨΒ
    ͦͷ೰Έɺ
    ղܾͰ͖Δ͔΋͠Ε·ͤΜʂ

    View Slide

  20. (SPPOHB$MPVE4FBSDI

    View Slide

  21. More Resources
    More Resources
    Documentation Community Blog
    Functional comparison
    Functional comparison
    Feature
    Feature
    Groonga
    Groonga
    CloudSearch
    CloudSearch
    Amazon
    Amazon
    CloudSearch
    CloudSearch
    Configuration
    Configuration
    Creating search domains ✓ ✓
    Creating index fields ✓ ✓
    Authentications ✕ ✓
    Deletion of existing domains ✓ (v1.1.0-) ✓
    Groonga CloudSearch
    Open Source Amazon CloudSearch on Your Computer
    Groonga CloudSearch is an Amazon CloudSearch compatible open source full text search server.
    v1.3.0 (2012-10-29)
    INSTALL TUTORIAL
    Fork me on GitHub
    http://gcs.groonga.org/

    View Slide

  22. HSPPOHBΛόοΫΤϯυʹ
    "NB[PO$MPVE4FBSDI
    ޓ׵ͷ"1*Λఏڙ

    View Slide

  23. 'SPOU&OE
    3BJMT FUD

    )551
    3FRVFTUT
    )551
    3FRVFTUT
    +40/
    3FTQPOTFT
    +40/
    3FTQPOTFT
    "NB[PO
    $MPVE4FBSDI
    Payment
    Required!

    View Slide

  24. 'SPOU&OE
    3BJMT FUD

    )551
    3FRVFTUT
    )551
    3FRVFTUT
    +40/
    3FTQPOTFT
    +40/
    3FTQPOTFT
    Payment Free
    (SPPOHB
    $MPVE4FBSDI

    View Slide


  25. ݸਓͷαʔϏεͰ
    ͪΐͬͱ࢖͍͍ͨΜ͚ͩͲ
    ͓͕ۚʜ

    View Slide

  26. (SPPOHB$MPVE4FBSDI͸
    714Ͱ΋ىಈͰ͖·͢
    ৭ʑಉډͰ͖·͢

    View Slide

  27. ϑϩϯτ͸1BB4ʹ
    όοΫΤϯυ͸714ʹ
    ͱ͍͏ͷ΋ΦπͰ͢Ͷ

    View Slide


  28. ։ൃ࣌ͷςετʹ
    ࢖͍͍ͨΜ͚ͩͲʜ

    View Slide

  29. ϩʔΧϧͰ΋ىಈͰ͖·͢

    View Slide

  30. ͜ͷNPDLʜಈͧ͘ঢ়ଶ

    View Slide

  31. ࣗಈԽςετͰศར

    View Slide


  32. ೔ຊޠͷσʔλΛ
    ݕࡧ͍ͨ͠Μ͚ͩͲʜ

    View Slide

  33. HSPPOHB͔ͩΒ
    ೔ຊޠݕࡧ΋0,

    View Slide


  34. 044ͩͬͨΒͳ͋ʜ

    View Slide

  35. 044Ͱ͢

    View Slide

  36. https://github.com/groonga/gcs

    View Slide

  37. https://github.com/groonga/groonga

    View Slide

  38. ͦͷ೰Έɺ
    ղܾͰ͖Δ͔΋͠Ε·ͤΜʂ
    (SPPOHB$MPVE4FBSDI
    ͩͬͨΒ

    View Slide

  39. ͋Δ͔΋͠Εͳ͍
    ࣭໰ͱͦͷ౴͑

    View Slide

  40. 2
    "NB[PO$MPVE4FBSDIͷ
    ΫϥΠΞϯτϥΠϒϥϦ͸
    ࢖͑Δͷʁ

    View Slide

  41. "
    େ఍ͷΫϥΠΞϯτϥΠϒϥϦ͸
    ઀ଓઌΛมߋ͢Δͪΐͬͱͨ͠ύονΛ౰ͯΔͱ
    ͔ͭ͑·͢

    View Slide

  42. 2
    ؅ཧίϯιʔϧ͸
    ͳ͍ͷ

    View Slide

  43. "
    ͋Γ·͢

    View Slide

  44. HDTDPOTPMF
    αϒύοέʔδͰ
    ϒϥ΢β͔Β֤छͷ؅ཧૢ࡞

    View Slide

  45. Home
    Home
    DOMAINS
    DOMAINS
    companies
    companies
    Create New Domain
    Create New Domain
    About Search Index Fields Upload
    Delete
    Delete
    Delete
    Delete
    Delete
    Delete
    Delete
    Delete
    Delete
    Delete
    Name
    Type
    Search
    companies
    Index Fields
    Name Type Facet Result Operation
    address text false true
    age uint
    email_address text false true
    name text false true
    product text false true
    Create an index field
    text
    Groonga CloudSearch Console
    Groonga CloudSearch Console
    Index Field ͷઃఆ

    View Slide

  46. Home
    Home
    DOMAINS
    DOMAINS
    companies
    companies
    Create New Domain
    Create New Domain
    About Search Index Fields Upload
    Search
    Search
    « Previous Next »
    companies
    tokyo
    Request URL: http://search-companies-caco9v6jo4xqkg8tww0wwf0mwd.127.0.0.1.xip.io:7575/2011-02-
    01/search?q=tokyo&size=5&start=0&return-fields=address%2Cage%2Cemail_address%2Cname%2Cproduct
    Found 3 records.
    Found 3 records. Showing 1 - 3 (3 records).
    Showing 1 - 3 (3 records).
    1 id1
    address Shibuya, Tokyo, Japan
    age 1
    email_address [email protected]
    name Brazil
    product groonga
    2 id3
    address Hongo, Tokyo, Japan
    age 3
    Groonga CloudSearch Console
    Groonga CloudSearch Console
    ݕࡧͷςετ

    View Slide

  47. 2
    ηοτΞοϓ͸໘౗͡Όͳ͍ʁ

    View Slide

  48. "
    %FCJBO 6CVOUV 049༻ͷ
    ύοέʔδ͕͋Γ·͢

    View Slide

  49. 2
    ͏·͍࿩͹͔ͬΓ͚ͩͲ

    View Slide

  50. "
    "NB[PO$MPVE4FBSDI
    ͷΑ͏ͳεέʔϥϏϦςΟ͸
    ͋Γ·ͤΜ

    View Slide

  51. "
    (SPPOHB$MPVE4FBSDI͸
    ࣗ෼Ͱӡ༻͢Δඞཁ͕͋Γ·͢

    View Slide

  52. "
    ޓ׵ੑ΋·ͩ·ͩ׬શͰ͸ͳ͍

    View Slide

  53. 2
    ݴ͍࢒ͨ͜͠ͱ͸͋Δ

    View Slide

  54. "
    "NB[PO$MPVE4FBSDI
    ͷπʔϧ͕࢖͑·͢

    View Slide

  55. DTHFOFSBUFTEGίϚϯυ

    View Slide

  56. DTW IUNM UFYU KTPO
    NTXPSE QEG FYDFM
    QPXFSQPJOU YIUNM YNMΛ
    ΠϯσΫεՄೳͳܗࣜʹม׵

    View Slide

  57. ˠ(SPPOHB$MPVE4FBSDI
    ΁౤ೖ

    View Slide

  58. ·ͱΊ

    View Slide

  59. (SPPOHB$MPVE4FBSDI͸
    HSPPOHBΛ༻͍ͯ
    "NB[PO$MPVE4FBSDIޓ׵ͷ
    "1*Λఏڙ͠·͢

    View Slide

  60. More Resources
    More Resources
    Documentation Community Blog
    Functional comparison
    Functional comparison
    Feature
    Feature
    Groonga
    Groonga
    CloudSearch
    CloudSearch
    Amazon
    Amazon
    CloudSearch
    CloudSearch
    Configuration
    Configuration
    Creating search domains ✓ ✓
    Creating index fields ✓ ✓
    Authentications ✕ ✓
    Deletion of existing domains ✓ (v1.1.0-) ✓
    Groonga CloudSearch
    Open Source Amazon CloudSearch on Your Computer
    Groonga CloudSearch is an Amazon CloudSearch compatible open source full text search server.
    v1.3.0 (2012-10-29)
    INSTALL TUTORIAL
    Fork me on GitHub
    http://gcs.groonga.org/

    View Slide