2014年7月8日 星期二

安裝 elasticsearch-head 界面

elasticsearch-head  是 A web front end for an elastic search cluster,簡單來說裝了之後能夠提供一個界面來顯示 elasticsearch 叢集(cluster),說是界面,其實就是利用 port (9200),但是網址是 /_plugin/head,在 browser 跑這個畫面,可以直接透過  elasticsearch-head 做搜尋,安裝方式非常簡單,首先可以在 github 下載。

如果不習慣 curl ,或是需要一個同時可以查看 cluster 狀態, 搜尋 index 等操作的功能,

安裝方式
提供兩種方式給你安裝:

1. 安裝在 node 的環境下
如果有使用 node 的朋友,你的選擇就是 clone 這個專案,然後 npm install,最後用 grunt server 去跑。



2. 以 plugin 的方式安裝在 elasticsearch 的 plugin 資料夾,並且啟動它 (本文使用這種)
真實的路徑要看你把 elasticsearch 裝在哪裡...
sudo elasticsearch/bin/plugin -install mobz/elasticsearch-head
安裝完成
➜ elasticsearch-1.2.1  sudo bin/plugin -install mobz/elasticsearch-head
Password:
-> Installing mobz/elasticsearch-head...
Trying https://github.com/mobz/elasticsearch-head/archive/master.zip...
Downloading .......................................................................................................................................................................................................................................................................................................................................DONE
Installed mobz/elasticsearch-head into /Users/win/elasticsearch-1.2.1/plugins/head
Identified as a _site plugin, moving to _site structure ...

下指令開啟瀏覽器,或是直接開瀏覽器連到 http://localhost:9200/_plugin/head/
open http://localhost:9200/_plugin/head/

畫面:
首頁是可以一覽所有 cluster 的界面,真悲哀,我目前還沒有東西可以玩,不知道怎麼介紹 xddd ,等我把工具們研究一番之後,再來玩一下...  Orz



切換到 Browser 頁籤,可以依照 index 查看 type,甚至單筆資料


 elasticsearch-head  只是 ES 的工具之ㄧ,主要用來看資料的部分,不過要小心,透過這個界面,是可以直接刪除一個 index 的,小心手滑。



還有其他的工具需要在研究,目標放在日誌 (log),跟分析的工具,待續...。

2014年7月7日 星期一

使用 elasticsearch-river-jdbc 匯入 MySQL 到 elasticsearch

Github Repo: Elasticsearch-river-jdbc

(本文若有用到 ES,用來代表 elasticsearch 這個詞)

為什麼要用 Elasticsearch-river-jdbc?
因為我想知道怎麼把 MySQL 的資料轉進去,但是,Elastic Search 原生並不支援 MySQL,所以我們需要用一些特殊的方式,去觸發 Elasticsearch 去 reindexing (重新建立 index),而 elasticsearch-river-jdbc 正好是其中一種選擇。



Elasticsearch River
在 elasticsearch 中,river 這個字代表的是一個資料的來源,也是其他資料庫同步資料到 ES 的方法,通常他是以一種 plugin 或是說外掛的方式,裝在一個 ES 上的服務,透過讀取 river 中的資料並且把它 index 到 ES,像是現在官方有提供的 river 有 couchdb, rabbitmq, twitter, wikipedia。


下載與安裝方式
./bin/plugin --install jdbc --url http://xbib.org/repository/org/xbib/elasticsearch/plugin/elasticsearch-river-jdbc/1.2.1.1/elasticsearch-river-jdbc-1.2.1.1-plugin.zip

2014年7月6日 星期日

Elasticsearch 第一發 - 入門筆記

是說....,你是否有搜尋過,單字的 『Elastic』 是什麼意思嗎 :P


Elasticsearch 是一個開源的資料搜尋分析系統,它可以解決現在 Web 去做資料庫的搜尋的種種問題,嚴格來說也不只是 web,(有可能是為了撈資料的效能,或是 schema free,  real-time 等等)。

Elasticsearch 的目標就是為了解決這些問題,甚至是更多 (做分析等等)。能夠做到類似事情的分析系統除了它之外,也有一套叫做 Solr,兩種都是 Apache Lecene 的骨子。

Elasticsearch 的優點像是安裝簡單, Model 是基於 JSON, Schema free (自由的搜尋模式) and Document Oriented,透過 HTTP 使用 JSON 索引資料,實現多租戶 (Multi Tenant) ,以及分佈式可以對搜尋做 cluster 等等...。

想到 Elasticsearch 的話,就是開源 / RESTful 的搜尋引擎 / Distributed (分佈式的),一言以蔽之,就是 A Distributed RESTful Search Engine

可以透過以下的 git repo 跟網址了解更多關於 Elasticsearch:




Getting Start
剛開始研究 Elasticsearch 時會有很多專有名詞的疑惑,在來是使用 Elasticsearch 要搭配 Java 的環境。


Vue multiselect set autofocus and tinymce set autofocus

要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...