我現在要寫一個程序,將第三方導出的txt文件內容讀取並放到hbase當中。
由於txt文檔非常大(超過10G),我初步思路是通過單線程讀取到一個線程安全的容器當中,然後再利用多線程向hbase中寫入。
請問有沒有什麼更好的思路,謝謝!
方案一:
1、在Linux環境利用split命令把文件分塊;
2、多線程對多文件讀取寫入HBase
方案二:
1、要看文件的格式是怎麼樣的,你想存HBase的格式怎樣的
2、把文件按照格式分割建表存入Hive
3、利用HiveIntegrate 工具把Hive映射到HBase 表
方案三:
1、HBase現已支持MapReduce,把文件先load到HDFS,利用命令:hdfs fs -copyFromLoad xxx xxxxxx
2、編寫MapReduce程序,讀取存入HDFS的文件,程序會自動split文件,然後有多個mapper讀取
然後在reduce中把數據寫入hbase。