繁体   English   中英

如何在 elasticsearch 摄取管道脚本中执行复杂计算?

[英]How can i perform a complex computation within a elasticsearch ingest pipeline script?

我正在尝试将非常大的数字(WEI)索引到 Elasticsearch 中,但是由于映射类型(uint64 和 int32)的限制,考虑到我们想在这些字段上运行总和聚合,这将是有问题的。

因此,唯一有意义的是将这些值转换为整数而不是 WEI。 这个问题/问题有两个部分,首先是我们在 WEI 中索引数量,我们知道 ETH 的小数点是 18。所以这是一个简单的等式:

value / 10 ^ decimals

在这个小数中将是 18。上面等式的 output 假设10000000000000000000001000

是否可以通过摄取管道执行此操作? 如果有怎么办?

第二部分,某些字段是否有自己的小数(非 eth 支付),并且该小数在文档中(在另一个字段,相同的索引中)是否可以根据该值执行这种乘法? 在每个文档的基础上以及通过摄取管道的那些特定字段?

我在 Elasticsearch 7.10

tldr;

我可以在摄取管道中进行复杂的计算吗?

是的,使用无痛的摄取处理器,您应该能够写下您想要的计算。

elasticsearch 能处理这样的精度吗?

Elasticsearch 能够使用这些数字类型所以只要它适合其中之一,你应该没有问题。

我可以从同一个文档中引用其他字段的值吗?

是的,一点没错。 处理器带有一些预定义变量(上下文) ,这些变量通常保存您正在使用的文档中的一些数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM