2016-09-23 95 views
0

我只有RDBMS PostgresSQL的经验但是Im新到Apache Spark和MongoDB
所以我有以下困惑请我

Apache Spark SQL和MongoDB之间的区别?

1)Apache Spark SQL和MongoDB之间有什么区别?
2)我需要使用SparkSQL或MongoDB或组合方式的地方/场景/域名?
3)Apache Spark取代了像mondoDB,cassandra ...?
4)我在MongoDB中有多个TB的数据,我想做数据分析,然后需要提供报告。

所以请分享我的知识和给我你的投入

问候
桑卡小号

回答

5

1) 阿帕奇星火: Apache的火花在SQL查询中对大数据进行并行计算操作。

MongoDB的: MongoDB是一个文档存储和本质上是一个数据库,所以不能与星火这是一个计算引擎,而不是商店进行比较。

2) SparkSQL可以是理想的星火集群导入处理结构化数据,你有几百万供大的计算数据。 Mongodb可用于您需要NoSQL功能的地方(它具有完整的NoSQL功能,与SparkSQL相比)。

3) 没有Apache的Spark是用于不同的目的,你不能mondoDB取代它,cassandra.It就像是计算引擎给你预测对large data sets

4) 使用结果像SLAM DATA http://slamdata.com/这样的第三方服务应用mongodb分析也使用 火花数据帧从MongoDB读取数据

+0

谢谢,瓦西克穆罕默德 –

3

这是两个不同的和广泛的问题,但我做的尝试回答: -

1)什么Apache Spark SQL和MongoDB有什么区别?

Spark SQL是由Apache Spark提供的一个库,用于在SQL查询中对大数据执行并行计算操作。 MongoDB是一个文档存储,本质上是一个数据库,因此无法与Spark相比,它是一个计算引擎而不是商店。

2)我需要使用SparkSQL或MongoDB或组合方式需要什么类型的场所/场景/域?

SparkSQL可以理想地处理Spark集群中导入的结构数据。 Mongodb可以在你需要NoSQL功能的地方理想(它具有完整的NoSQL功能,与SparkSQL相比)

3)Apache Spark被替换为类似mondoDB,cassandra ...?

不完全是因为它们处于不同的范围。 Apache Spark并未取代,但可称为Map-reduce的后继产品,用于在大型数据集上进行并行计算。

4)我在MongoDB中有多个TB的数据,我想做数据分析,然后需要提供报告。

使用spark数据框从使用jdbc驱动程序的MongoDB中读取数据,然后可以在数据框上运行一些Spark SQL查询,然后使用其他可视化工具(如pyplot)生成报告。

谢谢,

Charles。

+0

感谢Charles。 在我的情况下,我在MongoDB集群中有数百万条记录。 从那些记录我想做聚合,计数,总和,groupby,排序操作。 之后,聚合数据需要提供一些图形工具。 这是全面的工作。所以从你的投入我明白这一点。 1)我想从mongoDB集群加载数据到Spark Cluster。 2)然后我需要从Spark Cluster将数据提取到SparkSQL。 3)然后使用SparkSQL我需要做聚合,计数,总和,排序操作。 4)完成汇总,总和,排序操作后,我需要将这些数据提供给图形工具 对不对? –

相关问题