【问题标题】:mongo-hadoop. not to handle mongodb document deletionmongo-hadoop。不处理 mongodb 文档删除
【发布时间】:2015-11-12 07:43:38
【问题描述】:

我想同步mongodb和hadoop,但是当我从mongodb中删除文档时,这个文档一定不能在hadoop中删除。

我尝试使用 mongo-hadoop 和 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 集合同步的表。通过这个查询,mongo-hadoop 也可以处理文档删除。

mongo-hadoop 是否有任何选项,不处理文档删除? 或者,有没有其他工具可以解决这个问题?

提前致谢。

【问题讨论】:

    标签: mongodb hadoop hive mongodb-hadoop


    【解决方案1】:

    如果您像现在一样直接查询 mongo,是的,您将看到 mongo 中发生的所有文档突变。这就是像这样查询 mongo 的全部意义所在。如果您想要 mongo 数据的快照视图,则需要执行 mongodump 之类的操作,并将 bson 文件放在磁盘上的某个位置(例如 HDFS)。否则,您将始终查询实时的变异数据。

    【讨论】:

      猜你喜欢
      • 2013-09-14
      • 2016-04-20
      • 2014-03-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-06
      • 1970-01-01
      相关资源
      最近更新 更多