马克逻辑 : Generate primary key while data ingestion

标签 marklogic marklogic-8 marklogic-7

我正在使用 java-api 从 CSV 中提取数据。我必须维护每个文档的主键。

Does marklogic provide any unique auto-generated id during insert ?

如果marklogic不提供,那么我可以想到一件事是随机生成的十六进制字符串数字,但问题是如果我在CSV中有大量记录要摄取,有时这个随机数字可能会重复。

请建议我如何继续处理此用例。

最佳答案

建议的方法是使用随机生成的 ID 值,其长度足够长,这样对于您的数据集大小来说,碰撞的可能性是不切实际的。因为你是人类,你仍然会忍不住去检查碰撞,但数学表明这只是浪费。如果您使用 64 位随机值,则在 40 亿次之后发生冲突的几率为 50/50。风险太大?如果令人担忧,请使用 128 位随机值,因为 18 千万亿之后的概率为 50/50。看 “Probability of 64-bit hash code collisions

关于马克逻辑 : Generate primary key while data ingestion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37921482/

相关文章:

rest - 使用 MarkLogic 的 REST API 设置文档权限

marklogic - 将 CORB 与 Marklogic 8 结合使用

sparql - 有没有办法优化 SPARQL 查询?

marklogic - 辅助数据库在集群中时是否需要配置本地磁盘故障转移

marklogic - MLCP 分隔文件

docker - ML docker 容器本地设置完成。现在如何使用 Kubernetes 在共享云平台上进行部署?

triggers - 检索事务中预提交触发器删除的文档

marklogic - 用于在 marklogic 中上传文件的 Rest 扩展 API

马克逻辑 CTS :search with sparql

marklogic - SEC-DEFAULTUSERDNE : Default user does not exist: HealthCheck/