如何在Elasticsearch中将Firestore日期对象映射到日期

时间:2019-03-08 00:40:33

标签: firebase date elasticsearch timestamp google-cloud-firestore

我正在使用云功能将Firebase Firestore文档发送到elasticsearch进行索引。我正在尝试找到一种方法来将Firebase时间戳字段映射到索引中的elasticsearch日期字段。

elasticsearch日期类型映射支持epoch_millis和epoch_seconds的格式,但是立即存储日期类型是一个对象,如下所示:

"timestamp": {
  "_seconds": 1551833330,
  "_nanoseconds": 300000000
},

我可以使用seconds字段,但会丢失秒的小数部分。

是否有一种方法将时间戳对象映射到索引中的日期字段,该索引字段根据_seconds和_nanoseconds字段计算epoch_millis?我知道精度会丢失(从毫微秒到毫微秒)。

1 个答案:

答案 0 :(得分:2)

如果您不介意丢失秒的小数部分,则可以像这样在索引上设置一个映射,这就是我最终要做的事情:

<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.1.9/p5.min.js"></script>

它将所有时间戳(甚至嵌套在文档中)转换为具有第二精度的日期。