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
Percolatorを用いたカテゴリ分類
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
INA Lintaro
August 02, 2018
Programming
0
3.7k
Percolatorを用いたカテゴリ分類
2018-08-02 Elasticsearch勉強会
https://www.meetup.com/ja-JP/Tokyo-Elastic-Fantastics/events/252971593/
INA Lintaro
August 02, 2018
Tweet
Share
More Decks by INA Lintaro
See All by INA Lintaro
record4s --- Extensible Records for Scala 3, and Domain Modeling with Structural Types
tarao
2
22k
仮想関数テーブルと型クラスを見比べる
tarao
1
2.1k
ジョブキューシステムFireworqのアーキテクチャ設計と運用時のベストプラクティス
tarao
1
6.2k
計算ファースト vs. 型ファースト / Computation First vs. Type First
tarao
4
22k
10年でどう変わった? はてなブックマークでのPerlの使い方
tarao
10
9.7k
Other Decks in Programming
See All in Programming
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
0
140
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
0
830
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
490
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.8k
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
440
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
280
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
970
Implementation Patterns
denyspoltorak
0
270
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
180
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
140
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
370
Featured
See All Featured
Marketing to machines
jonoalderson
1
4.6k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
93
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Building the Perfect Custom Keyboard
takai
2
680
Building an army of robots
kneath
306
46k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
110
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
ラッコキーワード サービス紹介資料
rakko
1
2.2M
From π to Pie charts
rasagy
0
120
Facilitating Awesome Meetings
lara
57
6.7k
Transcript
Percolator id:tarao @oarat 2018-08-02 Elasticsearch
(id:tarao @oarat) 2008-10 ( ) 2010-04 (DC1) 2013-04 2013-12 2017-02
◮ ◮ , ◮ ◮ Scala
None
◮ (2015 ) ◮
None
:
◮ ◮ ◮
pull ◮ (Complement Naive Bayes) ◮ ◮ ◮ N ◮
◮
pull
pull ◮ ◮ ◮ Elasticsearch ◮ Memcached
pull
pull ◮ ◮ ◮ ◮ ( ) ◮ N (
N ) ◮
push ◮ ( ) ◮ ( )
push
◮ ◮
◮ ◮ ⇒ Percolator
Percolator https://en.wikipedia.org/wiki/Coffee_percolator
Percolator (Scala) createIndex(MainIndex).mappings( mapping("issue_item_query") fields percolatorField("query")) val query = issueItem.query.toCategorizingQuery.toFilteredQuery
register(query) into(MainIndex / "issue_item_query", "query") withId issueItemId.toPercolatorId search(MainIndex / "issue_item_query") query { percolateQuery("entry", "query") usingSource entry.toEsEntry.toJsonString }
Percolator (API) PUT /MainIndex/issue_item_query { "mappings": { "_doc": { "properties":
{ "query": { "type": "percolator" } } } } } PUT /MainIndex/issue_item_query/issueItemId { "query": query } GET /MainIndex/issue_item_query/_search { "query": { "percolate": { "document_type": "entry", "field": "query", "document": entry } } }
◮ ◮ OR
◮ ◮ ◮ ◮
◮ ×8 ◮ ×250+ ◮ ×800+
None
◮ ◮ 1 ◮ ◮ ( ) ◮ ◮
◮ ◮ ◮ ? ( kuromoji ) ◮ ◮ →
◮ ◮ ◮ Percolator ◮ Percolator ? ◮
◮ push ◮ Percolator ◮ push ◮