图创建后vid使用内存评估方法,怎么估算内存上多少内存是由点边数量占用的。

  • nebula 版本:3.1.0
  • 部署方式:分布式
  • 安装方式:RPM
  • 是否上生产环境:Y
  • 硬件信息
    • 磁盘 3.6T SSD
    • CPU:36C
    • 内存信息:128G
  • 问题的具体描述
    官方文档中有介绍 VID 的生成 不要将 FIXED_STRING() 的 N 设置成超大,这会浪费大量内存和硬盘。
    请问关于内存问下
    1.点vid为md5后的32位字母 1000W数据量放到内存中会占用多大内存,是怎么评估的;如果没有精确的 有大概的评估吗
    2.点vid为md5后的32位字母,边是否也会存储到内存中?怎么评估占用
    3.存储的内存是在文档中的bloom filter? 看有资源评估公式bloom filter是点边数量 *16 bytes;按照这么说占用内存大小和vid大小无关? vid的长度只影响磁盘?

首先,可以看对应版本文档中的点边结构以及index结构,vid在其中所以也会影响,这样可以确认一条点/边的空间,(内存/存储都会有),然后可以看下你的查询大概涉及多大的数据量,看看计划都涉及了哪些操作,这些在论坛中都有。
内存分为很多中占用,比如rocksdb的缓存,graphd查询时将数据读取传输以及处理时所占据的内存等。bloom filter只是rocksdb的一种读优化策略,可以参考rocksdb的相关文章,其内存使用和vid的大小确实关系不大。

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。