カウルにおけるElasiticsearchの導入と実例

4c6ec167a614173c5b31aaf4d1defa19?s=47 Hiroki Matsue
November 25, 2016

 カウルにおけるElasiticsearchの導入と実例

「不動産テック勉強会#4」での発表資料です。
https://itandi.connpass.com/event/43680/

4c6ec167a614173c5b31aaf4d1defa19?s=128

Hiroki Matsue

November 25, 2016
Tweet

Transcript

  1. Χ΢ϧʹ͓͚Δ Elasiticsearchͷಋೖͱ࣮ྫ Hiroki Matsue גࣜձࣾ Housmart CIO Nov 25, 2016

    ෆಈ࢈ςοΫษڧձ#4
  2. • @macs_6 • Ruby / iOS / Scrum • ࠷ۙͷ೰Έ:

    KarabinerͰEmacsΩʔϚοϓͰ ͖ͳ͍͜ͱ
  3. None
  4. • 97%ͷ෦԰Λ໢ཏ(౦ژ23۠ɾԣ඿ɾਆಸ઒) • औҾࣄྫ΍ਪఆՁ֨Ͱదਖ਼Ձ͕֨෼͔Δ • ஥հख਺ྉ3%͕࠷େແྉ தݹϚϯγϣϯചങઐ໳ͷwebෆಈ࢈

  5. Χ΢ϧͰಈ͘ Elasticsearchͷ࿩

  6. ಋೖͷഎܠ • ϢʔβͷͨΊʹݕࡧΛ΋ͬͱ࢖͍΍͍ͨ͘͢͠ • ࣅͨ෺݅ݟ͚ͭ΍͍ͨ͘͢͠ • ϨεϙϯεΛ଎͍ͨ͘͠

  7. ݕࡧΫΤϦ

  8. ࣮ݱͨ͜͠ͱɾ͍ͨ͜͠ͱ • Ϛϯγϣϯݕࡧ͢ΔࡍͷΩʔϫʔυΛαδΣετ • ʮ൒ܘXkmҎ಺ͷϚϯγϣϯʯͷऔಘ • 89.8ms => 23.4ms •

    Ϛϯγϣϯݕࡧ(Ҡߦத) • ࣅͨϚϯγϣϯͷϨίϝϯυ(͜Ε͔Β)
  9. Ϛϯγϣϯ໊αδΣετͷ࿩

  10. ߏ੒ CloudFront S3 ELB Front (EC2) RDS Elasticsearch (EC2) API

    (EC2)
  11. Elasticsearchʹ ೖΕ͍ͯΔσʔλɾ༻్ • σʔλ • Ϛϯγϣϯͷ౩ͷϚελσʔλ • ༻్ • ݕࡧϫʔυͷαδΣετ

    • ۙྡͷϚϯγϣϯҰཡͷऔಘ
  12. ೉͠͞/޻෉ • ೉͠͞ • ೔ຊޠ • Ұൠࣙॻʹೖͬͯͳ͍୯ޠ(ϒϥϯυ໊etc) • ޻෉ •

    ೔ຊޠಛ༗ͷઃఆͷ࡞ΓࠐΈ • ର৅σʔλΛԼॲཧ
  13. https://medium.com/hello-elasticsearch/elasticsearch-91c9f22c663a

  14. Char Filter normalize: { type: 'icu_normalizer', name: 'nfkc', mode: 'compose'

    } ʮ͔ʯ+ʮʃʯˠʮ͕ʯ ʮὦʯˠʮηϯνʯ
  15. Ωʔϫʔυೖྗத༻ͷFilter ... # Πϯϙʔτ࣌ 'lowercase', 'trim', 'engram' ... # ೖྗ࣌

    'lowercase', 'trim' ...
  16. Ωʔϫʔυ֬ఆ༻ͷFilter ... # Πϯϙʔτ࣌ 'lowercase', 'trim', 'readingform_neologd_romaji', 'asciifolding', ‘engram' ...

    # ೖྗ࣌ 'lowercase', ‘trim’, 'readingform_neologd_romaji', 'asciifolding' ...
  17. େ·͔ͳྲྀΕ • খจࣈԽ • ݴ༿લޙͷۭനจࣈΛ࡟আ • ௕͍จࣈ਺ͷ୯ޠΛআ֎ • ׽ࣈΛϩʔϚࣈʹม׵ •

    ΞϧϑΝϕοτม׵ʢhokkaidō → hokkaidoʣ ࢀߟ: https://medium.com/hello-elasticsearch/elasticsearch-ΩʔϫʔυαδΣετ೔ຊޠͷͨΊͷઃܭ-352a230030dd
  18. ΠϯσοΫεͷલॲཧ ྫ͑͹ʰ࿡ຊ໦ώϧζϨδσϯεʱΛ… • ʮ࿡ຊ໦ώϧζϨδσϯεʯ • ʮ࿡ຊ໦ʯʮώϧζʯʮϨδσϯεʯ • ʮ࿡ຊ໦ʯ • ʮώϧζʯ

    • ʮϨδσϯεʯ • ʮ࿡ຊ໦ʯʮώϧζʯ • ʮώϧζʯʮϨδσϯεʯ ҙຯͷ͋Δසग़ޠ͕ αδΣετ͞ΕΔ • ஍໊ɾӺ໊ • ϒϥϯυ໊
  19. ࠓޙ΍Γ͍ͨ͜ͱ • طଘݕࡧͷஔ͖׵͑(ΫΤϦվमɾࣙॻ֦ॆ) • Ϩίϝϯυػೳͷఏڙ • PercolatorʹΑΔ৽ண௨஌ • ӡ༻ڧԽ(HAߏ੒ɾΠϯϙʔτपΓͷઃܭ) •

    etc..
  20. ٕज़౤ࢿͷ࣌ؒͮ͘Γ http://techblog.housmart.co.jp/2016/03/14/dev_cycle/ ͍͍͢͢ਫ༵೔

  21. We are hiring! ϋ΢εϚʔτ@wantedly