多年前剛開始接觸 Elasticsearch 時,想試試看是否可以做出 auto completion 的功能,那時剛開始成為資料工程師,對於資料庫、NoSql 等矇矇懂懂,sql query 會寫、mongo query 也可以,但背後機制一竅不通;聽到 elasticsearch 強項是全文搜索,可以用來實作搜尋引擎,聽著就很新奇,就開始把手弄髒;所以半是完成工作、半是好玩的研究,做了一個差強人意的結果。
現在很久沒有接觸 elasticsearch,偶爾在工作上聽到,會想起這個不算 side project 的 project,覺得應該好好地留下紀錄(目的1),順便複習 / 更新一下 elasticsearch 的發展(目的2),也試試看現在的功力是不是可以讓結果更好一點(目的3)。
可以期待看到什麼
可能可以期待看到(?
不要期待看到什麼
先定義下 auto completion:就是很常見搜尋引擎的自動補全、猜你想問什麼的功能。主要是為了方便使用者不用把很長的文字 key 完、或是提供使用者一些想法;圖為 google 的例子(當然本文沒有要拿 google 對標,單純是舉例)。
以上是這 30 天的前情提要,如果有興趣歡迎看下去,有什麼想法都歡迎留言~