抱歉,描述比较冗长。
我想在一个大型的Mongodb集合中运行转换操作,该集合包含大约1000万条记录,约10G。具体而言,我想对每个文档中的ip字段应用geoip转换,并将结果记录追加到该文档中,或者只是创建一个与此记录相关联的全新记录(例如通过id进行关联)。然后,我想按城市分组统计数量(我知道如何执行最后一步)。
我相信无法使用map-reduce的主要原因是我无法在映射函数中调用geoip库(或者至少我认为存在这样的约束)。
因此,核心问题是如何遍历集合中的每个记录并应用变换 - 使用最有效的方法来执行此操作。
通过Limit / skip批处理不可行,因为它会执行“表扫描”,并且速度会逐渐变慢。
有什么建议吗?
Python或Js首选,因为我有这些geoip库,但其他语言的代码示例也可以。
我想在一个大型的Mongodb集合中运行转换操作,该集合包含大约1000万条记录,约10G。具体而言,我想对每个文档中的ip字段应用geoip转换,并将结果记录追加到该文档中,或者只是创建一个与此记录相关联的全新记录(例如通过id进行关联)。然后,我想按城市分组统计数量(我知道如何执行最后一步)。
我相信无法使用map-reduce的主要原因是我无法在映射函数中调用geoip库(或者至少我认为存在这样的约束)。
因此,核心问题是如何遍历集合中的每个记录并应用变换 - 使用最有效的方法来执行此操作。
通过Limit / skip批处理不可行,因为它会执行“表扫描”,并且速度会逐渐变慢。
有什么建议吗?
Python或Js首选,因为我有这些geoip库,但其他语言的代码示例也可以。