2015-06-01から1ヶ月間の記事一覧

X89にピッタリ(ではない)キーボード

今までX89用に使っていたiPad miniサイズのヒンジ付きキーボードの電源スイッチが壊れてしまったので代わりのキーボードを探していた。ヒンジ付きで探すとほとんど選択肢が無くなってしまうし、ヒンジは移植すればいいことに気がついたので「ヒンジ付き」と…

パプリカ

ブダペストという街は不思議なところで第一印象こそヨーロッパの街なのだが、しばらくするとアジアの街のような気がしてきた。ショッピングモールの中には携帯屋がひしめき合い、地下街にも携帯屋がひしめき合い、町中にも携帯屋がひしめき合う…というほどで…

伸縮自在の愛 (5)

今までelasticsearchの記事で当たり前のようにAnalyzerAnalyzerといってきたが、Analyzerとはそもそも一体何なのだろうか?その答えは、Source Textに対して…1. Char Filterで文字列を操作する ex) たとえば、を削除、'&'を'and'に変換する2. Tokenizerでト…

伸縮自在の愛 (4)

elasticsearchの使い方について調べると、英語の情報では英語の検索をする用の情報しか出てこない。一方で日本語の情報では日本語の検索をする用の情報ばかり。 "世界"の"中心"の"日本人(ジャパニーズ)" 用のサービスであったとしても日本語と英語のコンテン…

伸縮自在の愛 (3.1)

これまでのまとめとして、ArticleとUserでelasticsearchに関する部分を取り出すとこんな感じになる。 チューニングして検索が「うまくいく」ようにしていく必要こそあれ、基本的にはこんなんで動いてしまう。しかーし、テストを書くのが大変なのである。

伸縮自在の愛 (3)

インデックスをはる準備ができたので、実際にインデックスを構築してみる。 いきなりだけども、こんな感じでクラスメソッドを実装した。 まず、最初のbegin部分でインデックスを削除し、次の部分でマッピングを定義。前回定義したインデックス名前とセッティ…

伸縮自在の愛 (2)

elasticsearchが使えるようになった。次はインデックスを構築する。特定テーブル内の情報だけ検索できればいいなら簡単だけど、そんなイージーな事例はそうない。たとえば「ArticleはUserにbelongs_toで、Articleを所有しているユーザー名でも検索できるよう…

伸縮自在の愛 (1)

最近、バイト先でElasticsearchを触っている。 今まで、「記事」をついているタグ別に表示する機能を実装するのにacts-as-taggable-onというGemを使ってきた。これはRailsでは定番のGemらしくて、 確かにこいつを使えばタグというもので想像される機能をほぼ…