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.7k
前回の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
AWSの生成AIサービス Amazon Bedrock入門!(2025年1月版)
minorun365
PRO
7
470
Azureの開発で辛いところ
re3turn
0
240
#TRG24 / David Cuartielles / Post Open Source
tarugoconf
0
590
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
120
シフトライトなテスト活動を適切に行うことで、無理な開発をせず、過剰にテストせず、顧客をビックリさせないプロダクトを作り上げているお話 #RSGT2025 / Shift Right
nihonbuson
3
2.2k
Godot Engineについて調べてみた
unsoluble_sugar
0
410
Accessibility Inspectorを活用した アプリのアクセシビリティ向上方法
hinakko
0
180
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
170
PaaSの歴史と、 アプリケーションプラットフォームのこれから
jacopen
7
1.5k
商品レコメンドでのexplicit negative feedbackの活用
alpicola
2
370
2025年に挑戦したいこと
molmolken
0
160
comilioとCloudflare、そして未来へと向けて
oliver_diary
6
450
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
170
14k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
Navigating Team Friction
lara
183
15k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
It's Worth the Effort
3n
183
28k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.2k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
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