大邦 2014-12-29 07:22 采纳率: 100%
浏览 6122
已采纳

如何将存储量很大的txt文档数据导入到hbase当中

我现在要写一个程序,将第三方导出的txt文件内容读取并放到hbase当中。
由于txt文档非常大(超过10G),我初步思路是通过单线程读取到一个线程安全的容器当中,然后再利用多线程向hbase中写入。
请问有没有什么更好的思路,谢谢!

  • 写回答

4条回答 默认 最新

  • joeywen 2014-12-29 15:32
    关注

    方案一:
    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。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 VB.NET2022如何生成发布成exe文件
  • ¥30 matlab appdesigner私有函数嵌套整合
  • ¥15 给我一个openharmony跑通webrtc实现视频会议的简单demo项目,sdk为12
  • ¥15 vb6.0使用jmail接收smtp邮件并另存附件到D盘
  • ¥30 vb net 使用 sendMessage 如何输入鼠标坐标
  • ¥15 关于freesurfer使用freeview可视化的问题
  • ¥100 谁能在荣耀自带系统MagicOS版本下,隐藏手机桌面图标?
  • ¥15 求SC-LIWC词典!
  • ¥20 有关esp8266连接阿里云
  • ¥15 C# 调用Bartender打印机打印