是否可以将数据库直接从HDFS加载为Spark作为DataFrame?

时间:2018-06-25 13:22:49

标签: mongodb apache-spark hadoop hdfs

我在Zeppelin上运行MongoDB和Spark,它们共享相同的HDFS。 MongoDB会生成一个存储在同一HDFS中的.wt数据库。

我想将该MongoDB产生的数据库集合从HDFS加载到Spark DataFrame中。

是否可以将数据库作为数据帧直接从HDFS加载到spark?还是我需要使用MongoDB Spark连接器?

1 个答案:

答案 0 :(得分:0)

我不建议读取或修改内部WiredTiger Storage Engine's *.wt文件。首先,这些内部文件如有更改,恕不另行通知(不是面向公众的API),对这些文件的任何意外修改也可能导致数据库处于无效/损坏状态。

您可以利用MongoDB Spark Connector将数据从MongoDB加载到Spark。该连接器是为在MongoDB和Apache Spark之间读取/写入数据而设计,开发和优化的。例如,通过经由数据库访问数据,客户端可以利用database indexes来优化读取操作。

另请参阅: