【问题标题】:Transfer data from MySQL to HBase将数据从 MySQL 传输到 HBase
【发布时间】:2014-02-04 01:50:42
【问题描述】:

我正在尝试使用 Python(不是 sqoop)将数据从 MySQL 插入 HBase。 MySQL 中有一个名为 tblTest 的表,其架构和数据如下:

create table tblTest(idTest int, idObj int, sName varchar(25));

insert into tblTest values (202, 7678, 'sMfg1'), (203, 7679, 'sMfg2'), (204, 7680, 'sMfg3');

我需要创建一个 HBase 表:

> create 'tblHTest', 'cf'

现在,我如何将数据插入到 HBase 表中(你能用 python 代码解释一下吗)?请相应地更正我的 HBase 架构。我是 Python 和 HBase 的新手。

提前谢谢你。

【问题讨论】:

  • 基于要导入 HBase 的数据大小,基于 Python/Thrift 的方法可能无法满足要求。看看 HBase 批量加载(12)。不完全确定仅使用 Python 的要求。
  • 我正在寻找一个 python 代码(逐步)将这 3 行数据从 MySQL 加载到 HBase。

标签: python mysql hadoop hbase


【解决方案1】:

有一些方法可以从 Python 连接到 HBase,其中一种(我使用的)是 Thrift。

看看Thrift API,它不仅用于python,还用于PHP、perl、ruby和许多其他语言。

您将需要运行 Thrift 服务器(包含在 HBase 中,请使用第二个版本的 thrift)

$HBASE_DIR/bin/hbase start thrift2

下载并安装thrift 以及所有必要的包,如用于生成python文件的python dev,然后生成它们:

thrift --gen py path-to/Hbase.thrift

然后你可以在你的 python 代码中下载和使用这些类

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-29
    • 1970-01-01
    • 1970-01-01
    • 2010-10-29
    • 2016-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多