通过HbaseClient来写Phoenix表实现

由于数据存储在Hbase上,并且上层使用了Phoenix来读写数据。并且由于数据的列字段不固定,并且可能由于Hbase表列和Phoenix的表列字段不一致,使用Phoenix写入的数据会导致写出报错的问题出现。所以这里直接使用HbaseClient写入到Hbase表中,再使用Phoenix查询就能查询到数据。

sql 复制代码
CREATE TABLE IF NOT EXISTS MIS_TEST.TEST_INSERTINTO2 (
 "rowkey" VARCHAR PRIMARY KEY,
 "info"."ID" VARCHAR,
 "info"."NAME" VARCHAR, 
 "info"."DATA_DATE" VARCHAR
) COLUMN_ENCODED_BYTES=0;

建表语句如上,其中 COLUMN_ENCODED_BYTES = 0是表示禁用Phoenix表的列映射,并且不加的话,会导致Phoenix写入的和HbaseClient写入的,字段的编码不一致,导致Phoenix读取的时候读取不到数据。

参考文章:

Storage Formats | Apache Phoenix

Phoenix 关联映射 Hbase表 获取不到数据,upsert hbase 列名为16进制字符_wx5ae1cd41f3d21的技术博客_51CTO博客

解决Hbase数据更新Phoenix对应索引表不更新问题_TracyGao01的博客-CSDN博客

相关推荐
一只幸运猫.15 小时前
JAVA后端面试题
java·开发语言
看海的四叔15 小时前
【SQL】SQL-管好你的字符串
大数据·数据库·hive·sql·数据分析·字符串
空中海15 小时前
第三章:Maven高级篇 — 插件开发与多模块工程
java·maven
秋916 小时前
TiDB 数据库全链路实战指南:从下载部署到 Java 高并发调优
java·数据库·tidb
zhou周大哥16 小时前
银河麒麟安装mysql
数据库·mysql
JAVA面经实录91716 小时前
Java开发工程基础完整手册(企业实战完整版)
java·开发语言·git·ci/cd·svn·github·intellij idea
李艺为16 小时前
Fake Device Test作假屏幕分辨率分析
android·java
无敌的黑星星16 小时前
Spring @Transactional 注解全解析
java·数据库·oracle
xiaogg367816 小时前
spring oauth2 单点登录
java·vue.js·spring
Rust研习社16 小时前
Rust + PostgreSQL 极简技术栈应用开发
开发语言·数据库·后端·http·postgresql·rust