1.介紹
ignite是分布式內存網格的一種實現,其基於java平台,具有可持久化,分布式事務,分布式計算等特點,此外還支持豐富的鍵值存儲以及SQL語法(基於h2引擎),可以看成是一個分布式內存數據庫。
2.安裝
注意:要把mysql的驅動放在jdk的/jre/lib/ext目錄下。
2.1 原始安裝
下載地址:https://apache.mirror.colo-serv.net/ignite/,下載后解壓,進入bin目錄,執行sh ignite.sh即可。
2.2 自定義持久化到msyql安裝
訪問https://console.gridgain.com/signin進行配置也可以,但本文采用的是自行搭建Web控制台,下載gridgain-web-console-agent運行sh web-console-agent.sh進行安裝,安裝好后訪問http://192.168.81.17:11180/configuration/overview會提示下載ignite-web-agent,下載ignite-web-agent后也安裝在gridgain-web-console-agent跟同一台機器,解壓后把mysql的驅動包上傳到jdbc-drivers目錄。Sh ignite-web-agent.sh直接啟動就可以了,該工具的大致工作原理如下:
安裝好后就可以通過界面生成model文件,集群信息等文件,然后修改一下連接信息以及相關代碼,最后打包啟動。注意配置中的cachename需要配置為大寫。
注意:這一塊踩坑比較久,有時候會啟動不成功,所以最好映射model等代碼自行編寫。
2.3 Ignite安裝信息
本次安裝的ignite安裝在單節點上,節點是8核,64G,持久化采用的是自建的mysql(由於上面安裝的應用較多,性能較差)。
3.數據流程圖介紹
以下是本次打樣的數據流向圖,本次主要計算的特征是個人,部門上刊商機客戶數,金額。其中標黃的為開發的應用。
4.性能測試報告總結
通過本次測試發現以下幾點:
- ignite對於left join支持不怎么好,使用過程發現比inner join更耗時
- ignite表關聯越多性能越差
- ignite適用於單表緩存,針對單表的增刪改查較快
- ignite使用持久化功能可以減少結果數據導出過程
- ignite針對關聯字段加索引后性能會有很大提升,性能可以從15分鍾左右的性能提升到秒級
源碼添加公眾號搜索文章<<Ignite安裝及使用>>獲取: