您好,欢迎来到汇智旅游网。
搜索
您的当前位置:首页HappyBase操作Hbase

HappyBase操作Hbase

来源:汇智旅游网

7.3 HappyBase操作Hbase

  • 什么是HappyBase

    • HappyBase is a developer-friendly library to interact with . HappyBase is designed for use in standard HBase setups, and offers application developers a Pythonic API to interact with HBase. Below the surface, HappyBase uses the to connect to HBase using its gateway, which is included in the standard HBase 0.9x releases.
  • HappyBase 是FaceBook员工开发的操作HBase的python库, 其基于Python Thrift, 但使用方式比Thrift简单, 已被广泛应用

  • 启动hbase thrift server : hbase-daemon.sh start thrift

  • 安装happy base

    • pip install happybase
  • 使用happy base时可能出现的问题(windows系统)

    • happybase1.0在win下不支持绝对路径
    • 解决方案:将488行的url_scheme == ”改为url_scheme in (‘代码盘符’, ”)
  • 如何使用HappyBase

    • 建立连接
    import happybase
    connection = happybase.Connection('somehost')
    
    • 当连接建立时, 会自动创建一个与 HBase Thrift server的socket链接. 可以通过参数禁止自动链接, 然后再需要连接是调用 :
    connection = happybase.Connection('somehost', autoconnect=False)
    # before first use:
    connection.open()
    
    • 这个类提供了一个与HBase交互的入口, 比如获取HBase中所有的表: :
    print(connection.tables())
    
    • 操作表
      • Table类提供了大量API, 这些API用于检索和操作HBase中的数据。 在上面的示例中,我们已经使用Connection.tables()方法查询HBase中的表。 如果还没有任何表,可使用Connection.create_table()创建一个新表:
    connection.create_table('users',{
         'cf1': dict()})
    
    • 创建表之后可以传入表名获取到Table类的实例:

      table = connection.table('mytable')
      
    • 查询操作

    # api
    table.scan() #全表查询
    table.row(row_keys[0]) # 查询一行
    table.rows(row_keys) # 查询多行
    #封装函数
    def show_rows(table, row_keys=None):
        if row_keys:
            print('show value of row named %s' 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- hzar.cn 版权所有 赣ICP备2024042791号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务