ES是否适合在超大磁盘空间的机器上运行

Elasticsearch | 作者 ghnjk | 发布于2018年09月11日 | 阅读数:943

公司的日志非常大, 为了节省成本, 准备使超大磁盘空间的机器组建存储集群。
具体差不多是32cpu 64g内存 然后是60块2T(共120T)的磁盘。
最近在做这块的方案, 现在担心内存不够,查询会很慢,想问问有人是否碰到类似的场景, 有没有好的建议。
已邀请:

JackGe

赞同来自: juin

ES在写入数据时先在内存建立倒排索引会有大量计算耗CPU和内存,在进行小segment合并时耗CPU和内存和磁盘IO;在进行聚合分析查询时耗内存和CPU;ES节点重启后加载Lucene文件时耗磁盘IO,长期保存数据耗磁盘空间和内存。因此ES服务器需要计算型,您说的机型32C64G120T,磁盘太大了无法利用起来,除非把不查询的索引close需要时再open。存日志数据,mapping设置也很关键,长字符串建议index:no,如果分词的话磁盘和内存消耗会很大。

juin - 大数据开发

赞同来自:

看你的数据量大小了,内存是小了点,64G 内存怕是不能分给es 堆31G 了
优化查询语句
减少数据插入时内存占比
单一职责,有专门来做负载均衡的节点
...

rojay - 杭州的一枚90后初入职场的IT男

赞同来自:

磁盘是够用了,但是如果数据量有这么多的话,你这cpu和内存肯定是吃不消的。

ghnjk

赞同来自:

@juin 
嗯,这种机器准备专门用作数据节点,可以控制查询和写入的时间分开。不过感觉内存还是太少了, 感觉每次都要从磁盘加载索引数据。不清楚这个会有多慢。

yayg2008

赞同来自:

如果是32C,64G,2T的机器,60台;还是可以尝试的。

要回复问题请先登录注册