【问题标题】:How to load big datasets like million song dataset into BigData HDFS or Hbase or Hive?如何将百万歌曲数据集等大数据集加载到 BigData HDFS 或 Hbase 或 Hive 中?
【发布时间】:2015-10-09 17:06:01
【问题描述】:

我已经下载了大约 2GB 的百万歌曲数据集的子集。但是,数据被分解为文件夹和子文件夹。在子文件夹中,它们都是几种“H5 文件”格式。我知道可以使用 Python 读取它。但我不知道如何提取并加载到 HDFS 中,这样我就可以在 Pig 中运行一些数据分析。 我是否将它们提取为 CSV 并加载到 Hbase 或 Hive ?如果有人能指出我正确的资源,那将会有所帮助。

【问题讨论】:

    标签: python hadoop hive hbase bigdata


    【解决方案1】:

    如果它已经是CSV或linux文件系统上的任何格式,PIG可以理解,只需执行hadoop fs -copyFromLocal to

    如果您想在 HDFS 上使用 Python 读取/处理原始 H5 文件格式,请查看 hadoop-streaming (map/reduce)

    Python 可以在一个不错的 linux 系统上处理 2GB - 不确定您是否需要 hadoop。

    【讨论】:

    • hadoop fs -copyFromLocal your_files HDFS_Path
    • 我主要想知道如何转换分层数据格式(hdf5)文件并将其加载到hadoop fs。由于数据位于包含元数据信息的多个文件夹中,是否有任何简单的方法可以将其加载到配置单元表中。
    【解决方案2】:

    不要将这么多的小文件加载到 HDFS 中。 Hadoop 不能很好地处理大量小文件。每个小文件都会产生开销,因为块大小(通常为 64MB)要大得多。

    我想自己做,所以我正在考虑解决方案。百万歌曲数据集文件不超过 1MB。我的方法是在导入 HDFS 之前以某种方式聚合数据。

    来自 Cloudera 的博客文章“小文件问题”可能会有所启发。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-04
      • 2016-11-01
      • 2012-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-01
      • 2017-08-29
      相关资源
      最近更新 更多