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
20250326_管理ツールの権限管理で改善したこと
sasata299
1
730
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
900
20141125_エンジニアドリブンな改善の進め方
sasata299
0
2.1k
20140926_VagrantとDockerと普段思ってること
sasata299
2
5.3k
20140219_4社合同技術勉強会
sasata299
2
4.1k
AngularJSを使ったらこんなことが出来るよ
sasata299
40
71k
Other Decks in Technology
See All in Technology
MySQL InnoDB Data Recovery - The Last Resort
lefred
0
110
Why Platform Engineering? - マルチプロダクト・少人数 SRE の壁を越える挑戦 -
nulabinc
PRO
3
340
Simplify! 10 ways to reduce complexity in software development
ufried
2
240
Compose におけるパスワード自動入力とパスワード保存
tonionagauzzi
0
210
本当に必要なのは「QAという技術」だった!試行錯誤から生まれた、品質とデリバリーの両取りアプローチ / Turns Out, "QA as a Discipline" Was the Key!
ar_tama
9
3.9k
AI-in-the-Enterprise|OpenAIが公開した「AI導入7つの教訓」——ChatGPTで変わる企業の未来とは?
customercloud
PRO
0
160
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
430
ソフトウェアテスト 最初の一歩 〜テスト設計技法をワークで体験しながら学ぶ〜 #JaSSTTokyo / SoftwareTestingFirstStep
nihonbuson
PRO
1
120
Global Azure2025(GitHub Copilot ハンズオン)
tomokusaba
2
690
社会人力と研究力ー博士号をキャリアの武器にするー
kentaro
2
110
AI 코딩 에이전트 더 똑똑하게 쓰기
nacyot
0
540
猫でもわかるS3 Tables【Apache Iceberg編】
kentapapa
2
150
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.5k
Agile that works and the tools we love
rasmusluckow
329
21k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
179
53k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Making the Leap to Tech Lead
cromwellryan
133
9.3k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
840
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
Music & Morning Musume
bryan
47
6.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.4k
What's in a price? How to price your products and services
michaelherold
245
12k
Writing Fast Ruby
sferik
628
61k
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