通过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博客

相关推荐
王家视频教程图书馆3 分钟前
开源api
数据库
威风的虫5 分钟前
LangGraph的介绍
java·开发语言
康小庄11 分钟前
Java阻塞队列——用法及常用场景
java·开发语言·数据库·spring boot·spring·jetty
yy.y--16 分钟前
Java多线程实例:输出线程名20次
java·开发语言
m0_5287490018 分钟前
MySQL CAPI核心操作全解析
数据库·mysql
Apple_羊先森35 分钟前
ORACLE数据库巡检SQL脚本--23、检查Oracle数据库中被锁定的数据库对象
数据库·sql·oracle
时光书签36 分钟前
数据库服务器磁盘存储扩容
数据库
—Miss. Z—40 分钟前
计算机软件资格考试—第六章 数据库基础知识
数据库
SakitamaX1 小时前
Tomcat介绍与实验
java·tomcat