Phoenix ODPSBulkLoadTool 使用案例

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
云原生多模数据库 Lindorm,多引擎 多规格 0-4节点
简介: 介绍Phoenix ODPSBulkLoadTool 使用案例

1.创建ODPS表

create table hbaseport.odps_test (
key string,
value1 string,
value2 bigint);

2.配置MR集群访问云HBASE环境

  1. 开通云 HBase HDFS 端口
  2. 配置hdfs-site.xml使之能访问云HBASE HA的hdfs, 具体参考这里
  3. 配置hbase-site.xml文件可访问云HBASE

在MR集群上创建临时conf目录, 执行hadoop命或者yarn命令时通过--config选项添加到命令运行时的classpath中,目录中包括如下:

ls conf/
core-site.xml  hbase-site.xml  hdfs-site.xml  
mapred-site.xml  yarn-site.xml

3.创建Phoenix测试表

DROP TABLE IF EXISTS TABLE1;

CREATE TABLE TABLE1 (
ID VARCHAR NOT NULL PRIMARY KEY,
V1 VARCHAR, 
V2 BIGINT)
SALT_BUCKETS = 10,UPDATE_CACHE_FREQUENCY = 120000;

CREATE INDEX V1_IDX on TABLE1(V1) include(v2);
CREATE INDEX V2_IDX on TABLE1(V2) include(v1);

4.导入测试数据到ODSP表

通过csv导入odps300w数据

5.执行Bulkload命令

使用 Phoenix 提供的 client jar 运行 Bulkload命令:

yarn --config  conf  \
jar ali-phoenix-4.12.0-AliHBase-1.1-0.4-Final/ali-phoenix-4.12.0-AliHBase-1.1-0.4-Final-client.jar \
org.apache.phoenix.mapreduce.ODPSBulkLoadTool \
--table "TABLE1" \
--access_id "xxx" \
--access_key "xxx" \
--odps_url  "http://odps-ext.aliyun-inc.com/api" \
--odps_tunnel_url "http://dt-ext.odps.aliyun-inc.com" \
--odps_project "hbaseport" \
--odps_table "odps_test" \
--odps_partition_number 15  \
--zookeeper "zk1,zk2,zk3" \
--output "hdfs://{hdfs-name-service}/tmp/tmp_data"

6.验证

Phoenix 表数据验证

0: jdbc:phoenix:localhost> select count(*) from TABLE1;
+-----------+
| COUNT(1)  |
+-----------+
| 3124856   |
+-----------+
1 row selected (4.618 seconds)
0: jdbc:phoenix:localhost> select count(*) from V1_IDX;
+-----------+
| COUNT(1)  |
+-----------+
| 3124856   |
+-----------+
1 row selected (3.149 seconds)
0: jdbc:phoenix:localhost> select count(*) from V2_IDX;
+-----------+
| COUNT(1)  |
+-----------+
| 3124856   |
+-----------+
1 row selected (4.386 seconds)
相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
分布式数据库 Hbase
HBase StochasticLoadBalancer组件介绍
HBase StochasticLoadBalancer组件介绍。
3012 0
|
存储 算法 关系型数据库
探索MySQL递归查询,优雅的给树结构分页!
总结起来,对于MySQL中的树结构数据,递归查询结合预排序遍历树算法可以实现优雅的分页,但需要注意性能优化和数据更新的问题。这项技术提供了一种高效处理层级数据的工具,使得开发者可以在复杂的数据结构下实现直观和可靠的数据查询。
731 1
|
分布式数据库 Hbase
[Phoenix] 二、数据类型
目前Phoenix支持22种简单数据类型和1个一维Array的复杂类型。
10358 1
|
Prometheus 监控 Cloud Native
在 HBase 集群中,Prometheus 通常监控哪些类型的性能指标?
在 HBase 集群中,Prometheus 通常监控哪些类型的性能指标?
270 2
|
监控 关系型数据库 Linux
systemctl管理系统服务的详细用法
systemctl管理系统服务的详细用法
643 0
|
存储 负载均衡 监控
redis 集群模式(redis cluster)介绍
redis 集群模式(redis cluster)介绍
|
Oracle Java 关系型数据库
给你的SpringBoot工程打的jar包瘦瘦身
Spring boot默认方式打包由于打的是全量依赖包(也称为fat包),不但打包慢,体积大,传输也慢,今天教大家给spring boot瘦瘦身。
2178 0
给你的SpringBoot工程打的jar包瘦瘦身
|
存储 网络协议 Java
【JDK21】详解虚拟线程
【JDK21】详解虚拟线程
654 0
|
算法
几款主流的压缩算法对比Zlib,snappy,lz4
几款主流的压缩算法对比Zlib,snappy,lz4
1374 0