【问题标题】:query mongodb with spark用 spark 查询 mongodb
【发布时间】:2017-04-12 00:25:06
【问题描述】:

我正在将 MongoDB 连接到 Spark,并且我想使用查询加载数据。

df = sqlContext.read.format("com.mongodb.spark.sql").options(collection='test', query = {'name' :'jack'}).load()
df.show()

但它会返回给我整个系列。如何在 Spark 中重现与此查询 db.test.find({'name':'jack'}) 相同的内容?

【问题讨论】:

    标签: mongodb apache-spark


    【解决方案1】:

    您可以使用filterwhere指定条件:

    from pyspark.sql.functions import col
    
    df.filter(col("name") == "jack")
    

    它将转换为aggregation pipeline:

    当使用带有 DataFrames 或 Spark SQL 的过滤器时,底层的 Mongo 连接器代码会构建一个聚合管道来过滤 MongoDB 中的数据,然后再将其发送到 Spark。

    【讨论】:

      猜你喜欢
      • 2016-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-18
      • 2019-06-18
      • 1970-01-01
      相关资源
      最近更新 更多