$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カウルにおけるElasiticsearchの導入と実例
Search
Hiroki Matsue
November 25, 2016
Technology
0
920
カウルにおけるElasiticsearchの導入と実例
「不動産テック勉強会#4」での発表資料です。
https://itandi.connpass.com/event/43680/
Hiroki Matsue
November 25, 2016
Tweet
Share
More Decks by Hiroki Matsue
See All by Hiroki Matsue
Getting Screenshots Automatically in Flutter
matsue
2
530
Write tests for Provider
matsue
4
840
Optimize Flutter Workflow on Bitrise
matsue
2
1.3k
ややcomplexなBLoCへの対応
matsue
2
800
Flutterアプリの難読化とエラーレポート(iOS)
matsue
2
2.1k
いまさらだけど「良い通知」について考えてみた
matsue
4
11k
リテンション率を2倍にするための2つの視点
matsue
0
3.6k
リソースを効率的に使うためのバックログ活用事例
matsue
1
480
ローディング時のより良いUIの実装
matsue
2
2k
Other Decks in Technology
See All in Technology
法人支出管理領域におけるソフトウェアアーキテクチャに基づいたテスト戦略の実践
ogugu9
1
130
世界最速級 memcached 互換サーバー作った
yasukata
0
150
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
Databricksによるエージェント構築
taka_aki
1
120
命名から始めるSpec Driven
kuruwic
3
830
Eight Engineering Unit 紹介資料
sansan33
PRO
0
5.7k
AI 時代のデータ戦略
na0
8
3.3k
ブロックテーマとこれからの WordPress サイト制作 / Toyama WordPress Meetup Vol.81
torounit
0
310
セキュリティAIエージェントの現在と未来 / PSS #2 Takumi Session
flatt_security
3
1.4k
なぜ使われないのか?──定量×定性で見極める本当のボトルネック
kakehashi
PRO
1
800
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
980
Capture Checking / Separation Checking 入門
tanishiking
0
110
Featured
See All Featured
Building Adaptive Systems
keathley
44
2.9k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Documentation Writing (for coders)
carmenintech
76
5.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
The Language of Interfaces
destraynor
162
25k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Code Reviewing Like a Champion
maltzj
527
40k
How GitHub (no longer) Works
holman
316
140k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Docker and Python
trallard
46
3.7k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Typedesign – Prime Four
hannesfritz
42
2.9k
Transcript
Χϧʹ͓͚Δ Elasiticsearchͷಋೖͱ࣮ྫ Hiroki Matsue גࣜձࣾ Housmart CIO Nov 25, 2016
ෆಈ࢈ςοΫษڧձ#4
• @macs_6 • Ruby / iOS / Scrum • ࠷ۙͷΈ:
KarabinerͰEmacsΩʔϚοϓͰ ͖ͳ͍͜ͱ
None
• 97%ͷ෦Λཏ(౦ژ23۠ɾԣɾਆಸ) • औҾࣄྫਪఆՁ֨Ͱదਖ਼Ձ͕͔֨Δ • հखྉ3%͕࠷େແྉ தݹϚϯγϣϯചങઐͷwebෆಈ࢈
ΧϧͰಈ͘ Elasticsearchͷ
ಋೖͷഎܠ • ϢʔβͷͨΊʹݕࡧΛͬͱ͍͍ͨ͘͢͠ • ࣅͨ݅ݟ͚͍ͭͨ͘͢͠ • ϨεϙϯεΛ͍ͨ͘͠
ݕࡧΫΤϦ
࣮ݱͨ͜͠ͱɾ͍ͨ͜͠ͱ • Ϛϯγϣϯݕࡧ͢ΔࡍͷΩʔϫʔυΛαδΣετ • ʮܘXkmҎͷϚϯγϣϯʯͷऔಘ • 89.8ms => 23.4ms •
Ϛϯγϣϯݕࡧ(Ҡߦத) • ࣅͨϚϯγϣϯͷϨίϝϯυ(͜Ε͔Β)
Ϛϯγϣϯ໊αδΣετͷ
ߏ CloudFront S3 ELB Front (EC2) RDS Elasticsearch (EC2) API
(EC2)
Elasticsearchʹ ೖΕ͍ͯΔσʔλɾ༻్ • σʔλ • Ϛϯγϣϯͷ౩ͷϚελσʔλ • ༻్ • ݕࡧϫʔυͷαδΣετ
• ۙྡͷϚϯγϣϯҰཡͷऔಘ
͠͞/ • ͠͞ • ຊޠ • Ұൠࣙॻʹೖͬͯͳ͍୯ޠ(ϒϥϯυ໊etc) • •
ຊޠಛ༗ͷઃఆͷ࡞ΓࠐΈ • ରσʔλΛԼॲཧ
https://medium.com/hello-elasticsearch/elasticsearch-91c9f22c663a
Char Filter normalize: { type: 'icu_normalizer', name: 'nfkc', mode: 'compose'
} ʮ͔ʯ+ʮʃʯˠʮ͕ʯ ʮὦʯˠʮηϯνʯ
Ωʔϫʔυೖྗத༻ͷFilter ... # Πϯϙʔτ࣌ 'lowercase', 'trim', 'engram' ... # ೖྗ࣌
'lowercase', 'trim' ...
Ωʔϫʔυ֬ఆ༻ͷFilter ... # Πϯϙʔτ࣌ 'lowercase', 'trim', 'readingform_neologd_romaji', 'asciifolding', ‘engram' ...
# ೖྗ࣌ 'lowercase', ‘trim’, 'readingform_neologd_romaji', 'asciifolding' ...
େ·͔ͳྲྀΕ • খจࣈԽ • ݴ༿લޙͷۭനจࣈΛআ • ͍จࣈͷ୯ޠΛআ֎ • ࣈΛϩʔϚࣈʹม •
ΞϧϑΝϕοτมʢhokkaidō → hokkaidoʣ ࢀߟ: https://medium.com/hello-elasticsearch/elasticsearch-ΩʔϫʔυαδΣετຊޠͷͨΊͷઃܭ-352a230030dd
ΠϯσοΫεͷલॲཧ ྫ͑ʰຊώϧζϨδσϯεʱΛ… • ʮຊώϧζϨδσϯεʯ • ʮຊʯʮώϧζʯʮϨδσϯεʯ • ʮຊʯ • ʮώϧζʯ
• ʮϨδσϯεʯ • ʮຊʯʮώϧζʯ • ʮώϧζʯʮϨδσϯεʯ ҙຯͷ͋Δසग़ޠ͕ αδΣετ͞ΕΔ • ໊ɾӺ໊ • ϒϥϯυ໊
ࠓޙΓ͍ͨ͜ͱ • طଘݕࡧͷஔ͖͑(ΫΤϦվमɾࣙॻ֦ॆ) • Ϩίϝϯυػೳͷఏڙ • PercolatorʹΑΔ৽ண௨ • ӡ༻ڧԽ(HAߏɾΠϯϙʔτपΓͷઃܭ) •
etc..
ٕज़ࢿͷ࣌ؒͮ͘Γ http://techblog.housmart.co.jp/2016/03/14/dev_cycle/ ͍͍͢͢ਫ༵
We are hiring! ϋεϚʔτ@wantedly