Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
20151129_Mroongaをとある教育サービスで導入してみた話
Tatsuya Sasaki
November 29, 2015
Technology
0
4.6k
20151129_Mroongaをとある教育サービスで導入してみた話
良い肉の日(11/29)のGroonga Meetupで話したときの資料
Tatsuya Sasaki
November 29, 2015
Tweet
Share
More Decks by Tatsuya Sasaki
See All by Tatsuya Sasaki
20180912_小さな成功体験を積み重ねてチームで負債に立ち向かう_medbeer.pdf
sasata299
3
10k
Classi - Real Tech Night
sasata299
1
3.6k
20150625_SpeeeTeckParty
sasata299
9
8.6k
前回のMF Geeks Nightに参加してから実践したこと
sasata299
0
710
20141125_エンジニアドリブンな改善の進め方
sasata299
0
2k
20140926_VagrantとDockerと普段思ってること
sasata299
2
5.2k
20140219_4社合同技術勉強会
sasata299
2
3.8k
AngularJSを使ったらこんなことが出来るよ
sasata299
40
70k
エンジニア異種クラスタ交流会01
sasata299
0
2.1k
Other Decks in Technology
See All in Technology
本社オフィスを移転し、 オフィスファシリティ・コーポレートIT を刷新した話
rotomx
3
1.2k
CUEとKubernetesカスタムオペレータを用いた新しいネットワークコントローラをつくってみた
hrk091
0
160
WebLogic Server for OCI 概要
oracle4engineer
PRO
3
830
目指せCoverage100%! AutoScale環境におけるSavings Plans購入戦略 / JAWS-UG_SRE_Coverage
taishin
0
140
データエンジニアを助けてくれるFivetranとSnowflakeの仕様&機能のご紹介
sagara
0
420
ついに来る!TypeScript5.0の新機能
uhyo
16
8.7k
Airdrop for Open Source Projects
epicsdao
0
240
UNIX は知らない。でも AWS は知ってる。 そんな僕が『 UNIX という考え方』を 読んでみた件
kentosuzuki
1
280
【Λ(らむだ)】いつのまにリスキリング / RPALT20230117
lambda
0
380
1日5分!子育て中もインプットを続ける工夫
morihirok
1
350
Deep dive in Reserved Instance ~脳死推奨量購入からの脱却~
kzkmaeda
0
180
JAWS-UG AI/ML #15 - SageMaker Experimentsで始める機械学習モデルの実験管理
masatakashiwagi
0
540
Featured
See All Featured
Embracing the Ebb and Flow
colly
75
3.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
349
27k
Teambox: Starting and Learning
jrom
124
7.9k
Git: the NoSQL Database
bkeepers
PRO
418
60k
Fantastic passwords and where to find them - at NoRuKo
philnash
31
1.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
226
130k
A Philosophy of Restraint
colly
193
15k
Faster Mobile Websites
deanohume
295
29k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
6
830
Typedesign – Prime Four
hannesfritz
34
1.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
254
12k
Rebuilding a faster, lazier Slack
samanthasiow
69
7.5k
Transcript
Mroongaを とある教育サービスで 導⼊入してみた話 株式会社ヒトメディア @sasata299
⾃自⼰己紹介 • ささたつ • ヒトメディア所属 • からあげエンジニア
• 技術ブログ
からあげ 美味しい
[PR] 本を出しました
Mroonga • Tritonnの後継プロダクト • GroongaをMySQLから利利⽤用できるように したもの • 参照ロックフリー
利利⽤用シーン • Classiという教育サービスにて • コンテンツの検索索部分にMroongaを利利⽤用
採⽤用した理理由 • MySQL単体で全⽂文検索索を使える • MySQL5.6.4からは標準で全⽂文検索索が可能になったが 事前にわかち書き等の処理理は必要 • データを更更新するとインデックスも即時反映
• わかりやすいし、MySQLなので運⽤用も楽
MeCabで形態素解析 • groonga-‐‑‒tokenizer-‐‑‒mecabをインストール • テーブル作成時にコメントで ”TokenMecab” を指定する
実際のSQLは • MATCH(検索索するカラム) AGAINST(“検索索 キーワード” IN BOOLEAN MODE) •
検索索したい⽂文字列列の前にPragmaという変な記 号を付ける
AND検索索が出来ない • 「foo bar」とかで検索索すると、「foo」もし くは「bar」が含まれる結果が返ってくる。。 (OR検索索?) <発表後追記> MySQLのデフォルトの挙動がORだから
+のPragmaが付かないとOR検索索になる
出来るようになったよ *D+ <発表後追記> DはDefaultの略略(デフォルトの挙動を変える)
CIの環境構築でコケる • CircleCIで都度度都度度、Mroongaをインストール している • MySQLのバージョンと、Mroongaの依存する MySQLパッケージのバージョンが違う!?
バージョンを指定
通るようになったよ
まとめ • Mroongaは全⽂文検索索を導⼊入したい!って いうときに簡単に実現できるので便便利利 • Pragmaのところが最初はちょっと??だ けど、そういうものだと思えば
ご静聴ありがとう ございました @sasata299