各務 洋
kagam****@outwa*****
2015年 11月 17日 (火) 13:28:44 JST
お世話になります、各務です。
横からずさーっと失礼します。
> →mroogna_command('...')内部にgroongaコマンドが入るかと存じますが、
> where date<'2014-11-10'みたいなコマンドはどういう形で、
> 入っているのでしょうか。
--filter の事でしょうか?
http://groonga.org/ja/docs/tutorial/search.html
> mroogna_commandではどういうテーブル名を指定すれば良いのでしょうか。
select --table mail00
だと思います。ここらへんは、Groonga を インストールして直接 Groonga
から触った方が理解しやすいと思いますよ。
> mysqlからgroongaの構造への変換の流れが理解出来ておらず、
元々この仕事をしてくれるのが Mroonga さんなのです。
(本来は余所の者の Groonga さんが超絶簡単かつ便利にテーブル扱い)
ただ SQL の構文では Groonga さんの持っている機能を一部表現できないので、
それを実行可能なバイパスとして作ってあるのが mroonga_command だと思います。
返りが JSON ですので、実装上だと通常の SQL 処理と分ける必要があると思
います。
あと SQL の構文では簡単に出来る JOIN とか WHERE の EXISTS 等はどうする
のだろう?と思うのです。(つまりほぼ SQL のみで完結可)
実装する際には須藤さんからのご指摘のあったドリルダウンを使う時かなぁと
思いました。(最初はこれ専用機能と思っても良いかも知れないレベル)
検証としては、tokenize や normalize の理解がこのコマンドで簡単にでき
たのです。
SELECT mroonga_command("tokenize TokenBigram 東京=福岡線増便!/ANA+スターフライヤーのコードシェア拡大!12/1(日)9:30発売 ");
SELECT mroonga_command('normalize NormalizerMySQLUnicodeCIExceptKanaCIKanaWithVoicedSoundMark TESTふらつくバルスパルスaABCaABC');
tokenize や normalize の指定を変えて色々試してみるとおもしろいですよ。
----
各務
kagam****@outwa*****