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
20151129_Mroongaをとある教育サービスで導入してみた話
Search
Tatsuya Sasaki
November 29, 2015
Technology
0
4.8k
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
11k
Classi - Real Tech Night
sasata299
1
4.3k
20150625_SpeeeTeckParty
sasata299
9
8.8k
前回のMF Geeks Nightに参加してから実践したこと
sasata299
0
870
20141125_エンジニアドリブンな改善の進め方
sasata299
0
2.1k
20140926_VagrantとDockerと普段思ってること
sasata299
2
5.3k
20140219_4社合同技術勉強会
sasata299
2
4.1k
AngularJSを使ったらこんなことが出来るよ
sasata299
40
71k
エンジニア異種クラスタ交流会01
sasata299
0
2.2k
Other Decks in Technology
See All in Technology
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
370
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.7k
Developers Summit 2025 浅野卓也(13-B-7 LegalOn Technologies)
legalontechnologies
PRO
0
720
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
410
分解して理解する Aspire
nenonaninu
1
150
ユーザーストーリーマッピングから始めるアジャイルチームと並走するQA / Starting QA with User Story Mapping
katawara
0
210
次世代KYC活動報告 / 20250219-BizDay17-KYC-nextgen
oidfj
0
260
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
740
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.4k
Larkご案内資料
customercloud
PRO
0
650
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
540
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
120
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
550
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Designing for Performance
lara
604
68k
A designer walks into a library…
pauljervisheath
205
24k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Unsuck your backbone
ammeep
669
57k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Become a Pro
speakerdeck
PRO
26
5.1k
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