-
springboot配置
?
查看全部 -
elasticsearch-analysis-ik分詞器?
ik_smart / ik_max_word
POST _analyze
{
? "analyzer": "ik_max_word",
? "text": "我是中國人"
}
查看全部 -
logstash配置
查看全部 -
配置
查看全部 -
binlog? 同步mysql數據到中間件進行解耦?
binlog 有阿里canal
官方 有 logstash
查看全部 -
分詞器
查看全部 -
分詞器 es自帶分詞器
查看全部 -
總結
查看全部 -
demo
查看全部 -
JavaBean To Es
查看全部 -
1、靜態資源訪問
查看全部 -
項目配置
查看全部 -
1、設置讀取MySQL并且同步到ES的配置文件:
????input
????指定jdbc驅動jar包位置、驅動類、URL
????*設置clean_run=true,清除上次緩存的數據;
????配置執行語句。
????
? output
????連接ES地址:IP:port
????索引
????文檔id
2、刪除索引
3、logstash啟動
????
4、驗證同步結果
????使用空的搜索參數
????
5、執行SQL三次迭代:
????a.遺漏R12、R22等臨界時間點數據
????
????b.造成R11等臨界點數據重復,造成額外性能開銷
????
????c.解決臨界點數據遺漏和數據重復問題
????
查看全部 -
一、數據同步
? ? 1、全量:MySQL數據一次性導入
????2、增加:MySQL后續數據的CRUD操作,對應的同步到ES,ES更新數據過程為先刪除再插入、
????在代碼中為CRUD分別配置切面(AOP)也可以實現,但是會造成業務和數據高耦合。
二、中間件
????1、MySQL的binlog訂閱:實時記錄數據變化,通過MySQL的主從復制協議實現客戶端,實現數據同步。
????2、中間件可以解耦。
????3、go語言實現,基于MySQL binlog訂閱,不支持ES6.X及以上版本和MySQL8.X及以上版本,且出現數據混亂bug、進程不退出、多表同步到一個index問題。
????
????4、ES官方中間件,logstash
????輸入源:log4j、MySQL等
????必須條件:
????id:必須來自MySQL中的id字段,提供了ES和MySQL數據之間的數據對應關系。
????time:MySQL表中要有標識創建/修改時間的字段,通過時間比較完成增量同步。
查看全部 -
基于ES實現大數據量搜索
1、新增/刪除節點時,主節點都會平均分配所有數據
2、客戶端可以將請求發送到任意節點。
查看全部
舉報