-
項目結構:
controller
entity(實體類)
? es
? ? ? ? ?mysql(實體類)
mysqlBlog
? ? ? ? ?數據庫表中的字段
@Table
@ID @GeneratedValue
@Column
@Entity
repository(dao層數據打交道)
? ? ? ? ?es
? ? ? ? ?mysql
interface MysqlBlogRepository繼承JpaRepository<MysqlBlog,Integer>
查看全部 -
項目依賴
Developer Tools?
Web
SQL
配置文件:數據源, JPA,數據庫連接池, ES
查看全部 -
將下載好的IK分詞器,添加到elasticSearch包下的plugins
新建文件夾IK目錄下
重啟ES
post _analyzer
{
"analyzer":"ik_smart/ik_max_word",
"text":"我是中國人"
}
可以在字典(main.dic)里面添加詞組。
查看全部 -
下載
bin 目錄:引入mysql連接接Java jar 包
config 文件夾 mysql.conf設置
查看全部 -
ES 集群就是一個或者多個擁有相同的Cluster.namespace 節(jié)點所組成的。
共同承擔著數據以及負載的壓力。
當有節(jié)點加入集群或者從集群當中移除
整個集群將會平均分布所有的數據。
例如下圖
新加node3
信的node剛進來,集群之前選舉出來的主節(jié)點就會感知到,并且做后續(xù)的一系列的管理和負載編排工作。
主節(jié)點負責集群范圍內的所有變更,比如增加索引,刪除索引,或者增加刪除索引等等。
用戶可以將請求發(fā)送到集群的任意節(jié)點,每一個節(jié)點都知道任意文檔存儲的位置,并且能夠將我們的請求直接轉發(fā)到我們所需文檔的具體節(jié)點,最后將結果展示給客戶端。
ES對于集群內部管理是透明的。
查看全部 -
mysql 使用like進行模糊查詢
mysql為什么不做索引?
索引的適用場景:數值型,字符串類型的全文比較,但在like中進行全文索引,索引將失效。而且還會進行全文的掃描。
隨著數據的增加,就會引入分布式架構,就是使用分庫分表。
搜索的業(yè)務場景是一種模糊匹配,并不知道用戶將要輸入什么樣的字符,所以沒有辦法具體單庫節(jié)點的準確映射。
查看全部 -
安裝ES
www.elastic.co/cn下載想要的版本后,解壓后找到bin目錄下找到elasticsearch.bat文件,直接雙擊運行,
在瀏覽器中輸入localhost:9200,看到json文件,成功安裝單點服務。
安裝kibana
雙擊運行kibana.bat(保證本地啟動了ES)在瀏覽器輸入localhost:5601
kibana的dev tool 可以調試ES
查看全部 -
與Mysql對比:
查看全部 -
ES 是開源的分布式全文搜索和分析引擎
進行實時快速搜索存儲分析海量的數據
分布式 (可以單點運行也可以在多節(jié)點的集群上面運行)
可以通過ES 的分片算法散列在不同的節(jié)點上,從而實現了高可用,負載均衡的搜索服務。
全文檢索
實時快速(維基百科,GitHub, stackconflue)
Restful API :對程序員比較友好
適用于在大量數據上搜索分析
查看全部 -
跨域問題解決
查看全部 -
查看全部
-
mysql.conf 鏈接參數和配置查看全部
-
biglog同步mysql到es查看全部
-
可視化工具kibana
查看全部 -
記錄下查詢語法查看全部
舉報