mongo hadoop不处理mongodb文档删除

daupos2t  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(278)

我想同步mongodb和hadoop,但是当我从mongodb中删除文档时,hadoop中不能删除这个文档。
我试过使用mongohadoop和hive。这是配置单元查询:

CREATE EXTERNAL TABLE SubComponentSubmission
(
  id STRING,
  status INT,
  providerId STRING,
  dateCreated TIMESTAMP,
  subComponentId STRING,
  packageName STRING
)
STORED BY 'com.mongodb.hadoop.hive.MongoStorageHandler'
WITH SERDEPROPERTIES('mongo.columns.mapping'=
                    '{"id":"_id", "status":"Status", 
                      "providerId":"ProviderId", 
                      "dateCreated":"DateCreated", 
                      "subComponentId":"SubComponentPackage.SubComponentId", 
                      "packageName":"SubComponentPackage.PackageName"}'
                    )
TBLPROPERTIES('mongo.uri'='mongodb://<host>:27017/<db name>.<collection name>');

此查询创建与相应mongodb集合同步的表。通过这个查询,mongohadoop也可以处理文档删除。
MongoHadoop有没有任何选项,不处理文档删除?或者,有没有其他工具可以解决这个问题?
提前谢谢。

jucafojl

jucafojl1#

如果您像现在这样直接查询mongo,是的,您将看到mongo中发生的所有文档突变。这就是为什么要这样质疑蒙哥。如果您想要mongo数据的快照视图,则需要执行mongodump之类的操作,并将bson文件放在磁盘上的某个位置(如hdfs)。否则,您将始终查询活动的、突变的数据。

相关问题