我有一个基本问题,我希望能更好地理解:
背景
假设我有一个巨大的CSV文件(50 GB),我希望可以在一个数据科学团队中进行分析。理想情况下,团队的每个成员都能够以自己选择的语言与数据进行交互,数据不需要频繁地移动(考虑到数据的大小),而且所有成员都可以灵活地访问计算资源。
提出的解决方案
Apache似乎是目前满足上述要求的解决方案的领跑者。Scala、Python、SQL和R都能够访问其站点所在的数据(如果利用云提供商(如DataBricks、Azure、AWS、Cloudera),则可以访问这些数据)。
问题
以Microsoft / HDInsight域中的一个具体例子为例。假设我们将这个大型CSV上传到Azure Data。如果我们然后利用HDInsight中的Spark为这些数据定义一个模式,那么我们是否需要从它所在的位置移动/导入数据呢?
我的理解,这可能是错误的,是一个关键的好处是,数据能够驻留在它的本机,CSV格式的数据湖。在它上运行计算并不需要移动它。此外,如果我们希望在需要的基础上频繁地将星火集群带来,我们可以这样做--简单地将它们重新指向廉价存储的CSV。
结论
如能就上述事项提供任何确认,或对误解作出澄清,将不胜感激。Hadoop / Spark生态系统继续快速发展,我想确保我对它目前的能力有一个正确的理解。
发布于 2017-05-14 10:09:38
简短的回答是肯定的,该文件可以留在Azure数据湖商店。您可以简单地将Data作为额外的存储帐户添加到您的星火HDInsight集群中,或者甚至在提供您的集群时将它作为您的默认存储帐户。这将使您的所有火花作业访问您的数据文件驻留在您的存储帐户(S)。
注意,如果您选择拆卸您的HDInsight集群,并且使用Hive与schema/table持久化,请确保使用外部数据库承载您的转移。
有关外部转移瘤的更多信息,请参见此处:https://learn.microsoft.com/en-us/azure/hdinsight/hdinsight-hadoop-provision-linux-clusters#a-nameuse-hiveoozie-metastoreahive-metastore
发布于 2017-05-16 21:31:40
有两点需要注意:
希望它能回答你的问题。
https://stackoverflow.com/questions/43872851
复制相似问题