我阅读了很多关于Big Data
的文档,尤其是关于Hadoop
生态系统的文档。
感谢我的工作,我必须部署一个大数据结构,以便从RDBMS
(例如Oracle Database
)收集数据,并通过MapReduce
流程制作许多内容,以提高营业额,从我的客户那里获益。
所以我必须想象我的大数据环境才能做到这一点。
在将此项目投入生产之前,我可以尝试一下我的公司硬件。为此,我将通过VM模拟每个节点。我可能有4-5 To将数据存储到HDD中,我有大约32 Gb的RAM。
这个环境非常糟糕,但第一步是安装每个部件,连接器,看看整个项目是否可以在我的生产环境中做同样的事情。
在这个中,每个VM都是服务器。
我正在考虑我的结构以及我必须使用哪些软件才能实现我的项目。
Oracle数据库:
首先,初始数据通常存储在Oracle Database
中。但数据类型可能非常多样:int / char / float,图片,电影......可能是财务数据,验证数据......
Sqoop:
我从未使用Sqoop
,但我认为这是一个非常好的工具,可以将数据从Oracle数据库导入HDFS。
MongoDB:
所以我想使用MongoDB
来存储来自HDFS的数据。
为什么?因为MongoDB非常适合各种数据类型,强大的查询运算符,比较,...和Python驱动程序。恢复时间也很短。
MongoDB Connector for Hadoop:
我的MongoDB选择是合理的,因为它存在MongoDB和Hadoop之间的连接器。我从来没有使用过这个连接器,但是我认为这个连接器可以完成这项工作吗?
Hadoop:
最知名的大数据环境。我将设置3个节点(VM)以进行一些尝试。第一个节点(Namenode)带有HDFS/YARN
,然后是2个节点(Datanodes)和MapReduce进程。也许我会根据辅助名称节点设置第四个节点(在我的测试环境中没有必要)。
要进行报告的工具?
我阅读了一些关于Spark
的文档,但我不知道这个工具是否可以进行报告?
我制定了一个全球计划,以说明我的大数据环境
谢谢
编辑:
如果我的问题应该发布在其他地方,请告诉我,因为我找不到好地方。