我有一些奇怪的问题,从presto CLI查询mongodb。我设置了mongodb.properties并连接到3个不同的数据库,如下所示。
connector.name=mongodb
mongodb.seeds=172.23.0.7:27017
mongodb.schema-collection=stage,configuration,hub
mongodb.credentials=<username>:<password>@stage,<username>:<password>@hub,<username>:<password>@configuration
包括show columns from <collection>
或select count(*) from <collection>
在内的任何查询都不适用于舞台或集线器以及配置中的集合。
问题是,Presto是否支持MongoDB上的这类查询。如果是,我的配置或查询可能会出现什么问题。我们的目的是将Oracle中的数据与MongoDB进行比较。
感谢您的帮助。
答案 0 :(得分:0)
这是旧文章,但我希望这对将来的用户仍然有用。您不应该这样设置mongodb.schema-collection
。该属性旨在指向mongo集合,该集合描述了其他集合的模式,通常在存在时默认为_schema
。大多数presto发行版(包括prestodb)的文档中都对此进行了介绍。
这不允许您控制Presto将有权访问哪些集合,这必须在其他地方完成(例如,在MongoDB集群中设置Presto的用户时)。正确设置后,Presto将能够在其有权访问的所有集合中执行查询,例如您的示例中的查询。