在探索各种工具(如Nifi,Gobblin等)时,我观察到Databricks现在正在推广使用Spark进行数据摄入/登录。Spark作为数据摄入/登录到HDFS
我们对纱线行走的火花[阶]基于应用程序。到目前为止,我们正在研究hadoop和spark集群,我们首先手动将所需的数据文件放在HDFS中,然后再运行我们的spark工作。 现在,当我们正计划使可供我们期待从巨大的任何数据源[FTP,SFTP,任何关系和NoSQL数据库]任何类型和文件[主要CSV,杰森,XML等]的数量的客户我们的应用程序大小[范围从GB到PB]。
记住这一点,我们正在寻找可用于数据入门和数据完整性的选项,然后再将数据推入HDFS。
这是我们正在寻找的选项基于优先级: 1)火花的数据摄取和理智:由于我们的应用程序编写和火花集群上运行时,我们计划使用相同的数据摄取和理智任务,好。 我们有点担心Spark对许多数据源/文件类型等的支持。另外,我们不确定是否试图复制数据让我们说任何FTP/SFTP,然后所有工作人员将并行写入HDFS数据?使用它有什么限制吗?此数据复制时是否有Spark维护的审核跟踪?
2)Nifi在集群模式下:如何好Nifi将用于此目的?它可以用于任何数据源和任何大小的文件吗?将保持审计线索? Nifi能处理这么大的文件吗?如果我们试图复制GB-PB的数据并在将数据推送到HDFS之前对数据执行一定的理性认证,那么将需要多大的群集呢?
3)集群模式下的Gobblin:想要听到与Nifi类似的答案吗?
4)如果有任何其他良好的选择可用于此目的,涉及较低的基础设施/成本和更好的性能?
任何指导/指针/比较上述工具和技术将不胜感激。
最好的问候, 布佩希