成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

VictoriaLogs:一款超低占用的 ElasticSearch 替代方案

開發 前端
當前我們只用來存儲 Pulsar 鏈路追蹤數據,目前看來非常穩定,各方面資源占用極少;所以后續我們會陸續講一些日志類型的數據遷移過來,比如審計日志啥的。

背景

前段時間我們想實現 Pulsar 消息的追蹤流程,追蹤實現的效果圖如下:圖片

實現其實比較簡單,其中最重要的就是如何存儲消息。

消息的讀取我們是通過 Pulsar 自帶的 BrokerInterceptor 實現的,對這個感興趣的朋友后面會單獨做一個分享。

根據這里的顯示內容我們大概需要存儲這些信息:

  • 客戶端地址
  • 消息發布時間
  • 分發消費者、訂閱者名稱
  • ACK 消費者、訂閱者名稱
  • 消息 ID 最終捋了下:

圖片圖片

都以兩個 consumer 計算:一條消息占用內存:140+ 535*2 + 536*2 =2282byte存儲三天:TPS * 86400 * 3=TPS*259200 條總存儲:2282*TPS*259200≈ 百GB

根據我們的 TPS 計算,三天的大概會使用到 上百 G 的存儲,這樣首先就排除了 Redis 這種內存型數據庫。

同樣的換成 MySQL 存儲也不劃算,因為其實這些數據并不算那么重要。

做了幾個技術選型都不太滿意,不是資源開銷太大就是沒有相關的運維經驗。

后面在領導的提醒下,我們使用的 VictoriaMetrics 開源了一個 VictoriaLogs,雖然當時的版本還是 0.1.0,使用過他們家 Metrics 的應該都會比較信任他們的技術能力,所以就調研了一下。

具體的信息可以查看官方文檔:https://docs.victoriametrics.com/VictoriaLogs/

圖片圖片

簡單來說就是它也是一個日志存儲數據庫,并且有著極低的資源占有率,相對于 ElasticSearch 來說內存、磁盤、CPU 都是幾十倍的下降率。

圖片圖片

通過官方的壓測對比圖會發現確實在各方面對 ES 都是碾壓。

圖片圖片

官方宣傳的第一反應是不能全信,于是我自己壓測了一下,果然 CPU 內存 磁盤的占用都是極低的。

同時也發現運維部署確實簡單,直接一個 helm install 就搞定,就是一個二進制文件,不會依賴第二個組件。

按照剛才同樣的數據存儲三天,只需要不到 6G 的磁盤空間,我們生產環境已經平穩運行一段時間了。

圖片圖片

因為我們是批量寫入數據的,所以在最高峰 20K 的 TPS 下 CPU 使用不到 0.1 核,內存使用最高 120M,這點確實是對 ES 碾壓了。

圖片圖片

磁盤占用也是非常少。

這些有點得歸功于它有些的壓縮、編解碼算法,以及 Golang  帶來的相對于 Java 的極低資源占用。

還存在的問題

如果一切都這么完美的話那 VictoriaLogs  確實也太變態了, 自然他也有一些不太完美的地方。

分詞功能有限

首先第一個是分詞功能有限,只能做簡單的搜索,無法做到類似于 ES 的各種分詞,插件當然也別想了。

不支持集群

當前版本不支持集群部署,也就是無法橫向擴展了;不過幸好他的的單機性能已經非常強了。

這也是目前階段部署簡單的原因。

過期時間無法混用

VictoriaLogs 支持為數據配置過期時間自動刪除,有點類似于 Redis,它會在后臺啟動一個協程定期判斷數據是否過期,但只能對所有數據統一設置。

比如我想在 VictoriaLogs 中存放兩種不同類型的數據,同時他們的過期刪除時間也不相同;比如一個是三天刪除,一個是三月后刪除。

這樣的需求目前是無法實現的,只能部署兩個 VictoriaLogs.

默認無法查詢所有字段

圖片圖片

由于 VictoriaLogs  可以存儲非結構化數據,默認情況下只能查詢內置的三個字段,我們自定義的字段目前沒法自動查詢,需要我們手動指定。

這個倒不是致命問題,只是使用起來稍微麻煩一些;社區也有一些反饋,相信不久就會優化該功能。

圖片圖片

圖片圖片

  • https://github.com/VictoriaMetrics/VictoriaMetrics/issues/4780
  • https://github.com/VictoriaMetrics/VictoriaMetrics/issues/4513

沒有官方 SDK

圖片圖片

這也是個有了更好的一個功能,目前只能根據 REST API 自己編寫。

總結

當前我們只用來存儲 Pulsar 鏈路追蹤數據,目前看來非常穩定,各方面資源占用極少;所以后續我們會陸續講一些日志類型的數據遷移過來,比如審計日志啥的。

之后再逐步完善功能后,甚至可以將所有應用存放在 ElasticSeach 中的日志也遷移過來,這樣確實能省下不少資源。

總得來說 VictoriaLogs  資源占用極少,如果只是拿來存儲日志相關的數據,沒有很強的分詞需求那它將非常合適。

截止到目前最新版也才 0.3.0 還有很大的進步空間,有類似需求的可以持續關注。

責任編輯:武曉燕 來源: crossoverJie
相關推薦

2022-06-17 10:04:41

Coolify開源Heroku

2014-08-20 10:47:58

Lime Text開源

2023-04-27 11:52:54

人工智能Claude軟件

2022-02-25 13:45:09

TailscaleHeadscaleLinux

2015-08-18 09:51:09

VMware NSXSDNOpenDayligh

2021-05-11 11:20:54

VRAR虛擬現實技術

2012-07-04 17:26:58

云創存儲

2021-09-28 20:19:54

APKAndroid流程

2021-07-23 16:50:19

httpJava框架

2024-03-26 12:22:03

Visio軟件

2014-12-16 10:11:22

2024-08-16 08:31:05

2017-03-06 11:02:59

產品軟件Power Desig

2017-05-08 14:35:14

JavascriptBOOM動畫效果

2015-04-09 09:38:53

Tap4FunAWS手游

2021-01-27 13:16:39

ScreenLinux命令

2016-02-15 11:44:23

源碼開源項目watch

2021-02-16 10:58:50

ScreenLinux命令

2011-01-19 13:19:39

Thunderbird插件

2020-07-06 10:29:21

Linux系統數據
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色婷婷亚洲国产女人的天堂 | 福利电影在线 | 日韩精品一区二区三区在线观看 | 91精品无人区卡一卡二卡三 | 国外成人在线视频网站 | 欧美在线精品一区 | 欧美极品在线 | 亚洲影视在线 | 成人在线免费网站 | 精品国产一区二区三区性色 | 精品av| 日韩一区精品 | av网站免费在线观看 | 毛片com| 欧美成人一区二区 | 国产成人免费视频网站高清观看视频 | 欧美精品乱码久久久久久按摩 | 日韩欧美黄色 | 国产精品久久久久久久久久免费看 | 日韩不卡一二区 | 国产日韩精品一区二区三区 | 国产精品久久久久久婷婷天堂 | 日韩无| 免费一级大片 | 成人精品一区二区三区中文字幕 | 国产成人午夜高潮毛片 | 男女av| 亚洲成人精品 | 成人一区二区三区 | 台湾a级理论片在线观看 | 日本精品免费在线观看 | 日韩爱爱网站 | 亚洲一区二区电影网 | 黄色免费三级 | 色综合久久久久 | 91精品国产乱码久久久久久久久 | 国产精品久久a | 伊人网站视频 | 欧美精品一区二区三区视频 | 久久国产精品久久国产精品 | 欧美一区二区三区在线播放 |