GREEにおける全文検索の歴史

 GREEにおける全文検索の歴史

D93fb300519f17800d3fbc8119ed4bed?s=128

Nobutoshi Ogata

March 26, 2013
Tweet

Transcript

  1. GREEʹ͓͚Δ શจݕࡧͷྺ࢙ GREE Inc. Infrastructure Platform Development Nobutoshi Ogata (@nobu666)

  2. about me • @nobu666 • ย۱Ͱ͘͢Ϳ͍ͬͯ·͢ • ೣͱ΢ΠεΩʔͱϫΠϯ

  3. GREEͷݕࡧ

  4. ݕࡧͷྺ࢙ (1) • Senna • 2007೥ͱ͔ͦͷลͷ࿩…? • ҆ఆՔಇ͠ͳ͔ͬͨ

  5. ݕࡧͷྺ࢙ (1) • Tritonn • 2009೥͘Β͍·Ͱ • σʔλϑΝΠϧ͕յΕΔ • ΍ͬͺΓ҆ఆ͠ͳ͍

    • MySQLͷόʔδϣϯ͍͋͛ͨ
  6. ݕࡧͷྺ࢙ (3) • Lucene • 2012೥ॳ಄·Ͱ • खಈindex optimizeͱͷઓ͍

  7. ݕࡧͷྺ࢙ (4) • Solr • ΠϚίί • 2012೥ॳ಄͔Β

  8. SolrԽͷԸܙ • ΄΅ϝϯςφϯεϑϦʔ • SPoFϑϦʔ • શମతͳݕࡧ଎౓޲্

  9. Lucene͔ΒSolr3.6΁

  10. ·ͣ΍Δ͜ͱ

  11. ·ͣ͜ΕΛങ͏Μͩ!!

  12. ͍ͭങ͏͔?

  13. SolrԽ΁ͷલఏ৚݅ • ଞϓϩμΫτ΁ӨڹΛग़͞ͳ͍ • ϑϩϯτΤϯυ͔Βͷݺͼग़͠͸
 ޓ׵ੑΛҡ࣋͢Δ • Ease of maintenance

  14. ޙํޓ׵ • HTTP GETΛड͚ͯXMLΛฦ٫ • Lucene+TomcatͰड͚෇͚͍ͯͨ
 ΫΤϦΛSolr޲͚ʹม׵ • Solrͷฦ٫͢ΔXMLΛΧελϚΠζ •

    IndexingґཔͷI/F΋ม͑ͳ͍
  15. Ease of maintenance • ͢΂ͯͷαʔόʔΛ৑௕Խ • αʔϏεӨڹͳ͠ʹindex optimize

  16. ←WebΞϓϦ͕Queue΁ొ࿥ ←indexer͕Master΁ొ࿥ ɹ͜͜Ͱఆظతʹoptimize ←ΫΤϦͷड෇ɺฦ٫ ←ΫΤϦͱϨεϙϯεͷม׵
 ɹ ΫϥΠΞϯτ͔ΒͷΫΤϦड෇ query translation

  17. ؆୯ʹઆ໌ • ݱঢ়7schema • αʔόʔ୆਺40୆ͪΐͬͱ • ϚϧνίΞ࢖͑͹΋ͬͱ٧ΊΒΕΔ • શ෦Ͱ250qps+ ͘Β͍

  18. None
  19. None
  20. ෛՙͷ܏޲ • େຌ0:00෇ۙʹෛՙͷϐʔΫ • schemaʹΑͬͯ͸΄ͱΜͲ
 ࢖ΘΕ͍ͯͳ͍ • Range Query࢖͍·͘ΓͳͷͰ
 slave͕Ұ൪ॏ͘ͳΔ

  21. ࡞Γ͜Έ͕ඞཁͩͬͨ෦෼(1) • Indexer • Master΁෼ࢄͯ͠Indexing • ϚϧνεϨουͰޮ཰తʹ

  22. ࡞Γ͜Έ͕ඞཁͩͬͨ෦෼(2) • Query Translation • ෛͷҨ࢈ͷܧঝ • SchemaຖͷಛघͳϑΟϧλ෇༩ • ੨গ೥อޢͳΜͪΌΒ͚

    • ਓྗ؂ࢹͱͷ݉Ͷ߹͍ • ؂ࢹ • Replication, SSH, Ping, Solr Ping
  23. ࠓͰ΋໘౗ͳ͜ͱ • εΩʔϚมߋΛແఀࢭͰ΍Δͷ
 ͍͢͝ΊΜͲ͍ • SlaveΛMasterʹঢ֨͢ΔɺͳͲͷ
 ૢ࡞͸खಈͰઃఆϑΝΠϧΛ͍͡Δ

  24. ݕࡧͷ͜Ε͔Β

  25. վળ͍ͨ͠ͱ͜ • ਫ਼౓ • ೔ຊޠҎ֎Ͱ΋࢖ΘΕΔͷͰ
 ࣙॻΛ࢖͏&ϝϯς͢Δͷ͕
 ࣄ্࣮೉͍͠ • ͞ΒͳΔࣗಈԽ

  26. ࢼ͍ͨ͜͠ͱ • AmazonͷαʔϏε͡Όͳ͍͜ͱͰ
 ͓ͳ͡ΈͷElasticSearch • Solr Cloud • ͜Ε΋ͬͱલʹ͋ͬͨΒԶ͸
 ͜ΜͳʹؤுΒͳͯ͘ྑ͔ͬͨઆ

  27. Any Questions?

  28. Join us! http://jobs.gree.net/