Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カウルにおけるElasiticsearchの導入と実例
Search
Hiroki Matsue
November 25, 2016
Technology
0
880
カウルにおける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
490
Write tests for Provider
matsue
4
800
Optimize Flutter Workflow on Bitrise
matsue
2
1.2k
ややcomplexなBLoCへの対応
matsue
2
770
Flutterアプリの難読化とエラーレポート(iOS)
matsue
2
2k
いまさらだけど「良い通知」について考えてみた
matsue
4
11k
リテンション率を2倍にするための2つの視点
matsue
0
3.5k
リソースを効率的に使うためのバックログ活用事例
matsue
1
470
ローディング時のより良いUIの実装
matsue
2
1.9k
Other Decks in Technology
See All in Technology
30 代子育て SRE が考える SRE ナレッジマネジメントの現在と将来
kworkdev
PRO
0
200
Amazon S3 Tables + Amazon Athena / Apache Iceberg
okaru
0
230
Startups On Rails 2025 @ Tropical on Rails
irinanazarova
0
240
はてなの開発20年史と DevOpsの歩み / DevOpsDays Tokyo 2025 Keynote
daiksy
5
1.4k
Vision Pro X Text to 3D Model ~How Swift and Generative Al Unlock a New Era of Spatial Computing~
igaryo0506
0
260
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming
tomzoh
0
200
近年の PyCon 情勢から見た PyCon APAC のまとめ
terapyon
0
280
10分でわかるfreeeのQA
freee
1
12k
アセスメントで紐解く、10Xのデータマネジメントの軌跡
10xinc
1
340
“パスワードレス認証への道" ユーザー認証の変遷とパスキーの関係
ritou
1
350
SREが実現する開発者体験の革新
sansantech
PRO
0
160
自分の軸足を見つけろ
tsuemura
2
580
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
5
520
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Docker and Python
trallard
44
3.3k
A designer walks into a library…
pauljervisheath
205
24k
Code Reviewing Like a Champion
maltzj
522
39k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Making Projects Easy
brettharned
116
6.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
Product Roadmaps are Hard
iamctodd
PRO
52
11k
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