【问题标题】:Loading CSV File into Hbase table using MapReduce使用 MapReduce 将 CSV 文件加载到 Hbase 表中
【发布时间】:2017-03-28 04:40:11
【问题描述】:

我需要将 csv 文件的数据加载到 hbase 表中。我有上述格式的csv文件

CSV 文件:读取 Detachcard.csv

year  class    days   mm   
   1964   9     20.5     8.8          
   1964  10     13.6     4.2      
   1964  11     11.8     4.7     
   1964  12      7.7     0.1       
   1965   1      7.3     0.8       
   1965   2     6.5     0.1         
   1965   3     10.8     1.4         
   1965   4     13.2     3.5         
   1965   5     16.1     7.0         
   1965   6     19.0     9.2          
   1965   7     18.7    10.7       
   1965   8     19.9    10.9          
   1965   9      16.6     8.2 

在上面的文件中,第一行是列限定符名称,第二行是列限定符的值。现在我需要使用 mapreducing 程序将此数据加载到 hbase 表中。如何将这些数据读入 put 命令和行自动增量?我不知道这种格式。请任何人指导我或向我展示一些将此类数据加载到 hbase 表中的示例

【问题讨论】:

    标签: java hadoop mapreduce hbase


    【解决方案1】:

    使用 csvreader ,用这个 jar 对 csv 文件进行操作非常容易。 找到 csvreader jar 并将其放在 jre 中。

    CsvReader products = new CsvReader("CSV file path ");
    
            products.readHeaders();
    
            while (products.readRecord())
            {
                String productID = products.get("year");
                String productName = products.get("class");
                String supplierID = products.get("day");
                String categoryID = products.get("mm");
    
            }
    
            products.close();
    

    【讨论】:

    • 嗨,我只需要使用没有 CSVREADER 的 MapReduce,我已经用我的班级更新了我的帖子,请检查
    【解决方案2】:

    我认为您的数据是 'tab : \t' 分隔的。 您可以做的是,读取/解析映射器中的每一行并创建一个放置对象 然后将其传递给 hbase。

    检查此链接: What is the fastest way to bulk load data into HBase programmatically?

    【讨论】:

    • 请检查,我已经更新了我的问题。我需要从该文件中读取数据,我不知道如何将数据读入 put 方法并添加数据
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多