nGQL hash("str") 函数 是和hive 中hash() 函数是一样的吗

如题:
由于vertex ID 不支持自定义字符串,所以通过nGQL hash(“str”) 函数 做为预处理,但是不知道是否和hive SQL hash() 函数处理逻辑是否一致

或者 是否有提供UDF

2.0 vertexID 支持 字符串了, UDF目前还未支持

借楼问一下,nebula的hash方式是什么样的呢?如果我需要用code来做这个hash方法应该用哪种算法实现呢?试了下常规的方式好像都转出来不对

hash(‘str’) 是 murmurhash2

1 个赞

好的!感谢回复!貌似各类语言做murmurhash2得到的结果不一样

这是不可能的

我对10.49.148.130这个字符串用nebula的hash得到的结果是-9182924218433354970,但是java中MurmurHash2.hash64(“10.49.148.130”)得到的结果是-4279588979291232064,python中得到的结果是419535616680419207,因此有这个疑问

在java中使用MurmurHash2时,要传入种子,你可以这样生成

MurmurHash2.hash64("10.49.148.130".getBytes(),"10.49.148.130".getBytes().length, 0xc70f6907)
1 个赞