2019-05-29 ES存储数据量优化

386个标准csv文件,9列,912M,6839927行,

如果是默认index的配置进入es,即5个shards,1个replica,那么占用 3.2G的空间。

那么,通过下面的方式,设置0个replica,1个shard

PUT _template/<template_name>
{
  "index_patterns": "*",
  "settings" : {
    "number_of_replicas" : 0,
    "number_of_shards" : 1
  },
  "version"  : 1
}

然后,再在 grok 解析那里,把原始的message舍去(如果不需要全文索引的话)。那么最后占用空间是1.6G。在kibana上 GET _cat/indices?v 展示的是 1gb
在导入的过程中可以发现,这个占用空间会增长到 2.3G 甚至更多。然后回落、再涨、再回落。
这里是有一个数据压缩的过程,下次再仔细介绍。

大约8分30秒,这684w的数据进入es。平均速度是 13411 TPS。
使用的是一个虚拟机,16G 内存,600G SATA,4核,Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz。给ES开的内存是

-Xms1g
-Xmx1g

曾经一个正儿八经的3实体机集群,SATA盘,从kafka接数据,可以达到25w TPS。

猜你喜欢

转载自blog.csdn.net/weixin_34419321/article/details/90805179