phoenix修改表中字段的数据类型

phoenix表结构修改(新增字段,字段类型修改) 文章目录修改思路开始操作创建模拟表**插入数据添加字段将新增的字段数据补齐删除字段查看元数据查看表的主键修改元数据举一反三查看表信息 计划总是赶不上变化,在实际开发中,需求总会不断变更,比如需求开始只需要在phoenix中创建5个字段就可以,但随着业务的变化,需要新增一个字段,某个字段的数据类型也需要改变,这时简单粗暴的方式就是删表重建,再重跑数据。是否可以在phoenix中修改字段类型和添加字... 阅读详情

使用phoenix修改表中的字段数据类型

本文部分转自 https://blog.youkuaiyun.com/yuanhaiwn/article/details/82141923
软件环境:
hbase version 2.1.0-cdh6.1.0
phoneix version phoenix-5.0.0-HBase-2.0

Phoenix的表是映射hbase的表,hbase存储的数据都是字节数组, 因此, 限制数据类型的只能是Phoenix自己, 所以, 我们就可以通过修改Phoenix元数据的方式修改表中字段的数据类型.
Phoenix中有5张系统表,存储表相关的信息
在这里插入图片描述
其中表的元数据信息存储在SYSTEM.CATALOG表中
desc查看SYSTEM.CATALOG表的结构
在这里插入图片描述
在这里插入图片描述
1.创建一张表
CREATE TABLE IF NOT EXISTS mytest (
name VARCHAR(40) NOT NULL PRIMARY KEY,
id VARCHAR(20),
score VARCHAR(16),
level VARCHAR(20),
addr VARCHAR(40));

在这里插入图片描述
2.插入数据
upsert into mytest values(‘tom’,‘001’,‘89.5’,‘A’,‘China’);
在这里插入图片描述
写入成功,但是,我现在需要将score改为float类型的数据类型
3.查看元数据信息
select TENANT_ID,TABLE_SCHEM,TABLE_NAME,COLUMN_NAME,COLUMN_FAMILY,DATA_TYPE,COLUMN_SIZE,DECIMAL_DIGITS from SYSTEM.CATALOG where TABLE_NAME=‘MYTEST’;
在这里插入图片描述
各个字段的含义:
在这里插入图片描述
4. 修改元数据
在这里插入图片描述
4.1 修改字段长度
upsert into SYSTEM.CATALOG (TENANT_ID,TABLE_SCHEM,TABLE_NAME,COLUMN_NAME,COLUMN_FAMILY,COLUMN_SIZE) values(’’,’’,‘MYTEST’,‘SCORE’,‘0’,6);
在这里插入图片描述
可以看出修改COLUMN_SIZE可以修改SCORE的字段长度

4.2 修改字段数据类型
upsert into SYSTEM.CATALOG (TENANT_ID,TABLE_SCHEM,TABLE_NAME,COLUMN_NAME,COLUMN_FAMILY,DATA_TYPE) values(’’,’’,‘MYTEST’,‘SCORE’,‘0’,6);
在这里插入图片描述
可以看到SCORE的数据类型改为了FLOAT

  1. 验证
    upsert into mytest values(‘lilei’,‘002’,‘98.02’,‘S’,‘China’);
    在这里插入图片描述
  2. 数据类型和数据名称对应关系
    在这里插入图片描述
  3. 补充
    在参考文章中看到作者强调改完字段数据长度之后,需要重启hbase才能生效,但是本次测试中,修改完之后字段之后,可以直接写入新的类型的数据不会出错
    此外,对于也可以通过upsert into的方式修改SYSTEM.CATALOG表中的可以修改小数点长度DECIMAL_DIGITS等等.
phoenix_修改表名 特别是做了和hbase表关联的情况下,在phoenix删除同时也会删除hbase,所以一定要小心。总体思想是:先把表数据备份出来,删除表,创建新表,将数据拷贝回去。因此有两个方案,方案一使用快照,网上的步骤如下(没有亲自尝试):第1: 先在hbase上把pho1修改成pho2,具体命令行如下:hbase(main):001:0>disable 'pho1'hbase(main):001:0&... 阅读详情

相关推荐

phoenix使用详解

phoenix和hive类似,它也是一个工具,hive是在hadoop之上,phoenix是在hbase之上,也是Apache基金的顶级项目。phoenix是构建在HBase上的一个SQL层,能让我们用标椎的JDBC APIs而不是HBase客户端APIs来创建表、和对HBase数据进行CRUD。Phoenix完全使用java编写,作为HBase内嵌的JDBC驱动,Phoenix查询引擎会将SQL查询转换为一个或多个HBse扫描。

m0_37767351的博客 5794

Phoenix增加,删除,修改字段

Phoenix增加,删除,修改字段

追梦少年渐已老的博客 2499

Phoenix 查看表信息及修改元数据

sqlline或phoenix-sqlline模式 1.查看所有表信息 0: jdbc:phoenix:>!tables 输出结果: 2.查看表字段信息 0: jdbc:phoenix:> !desc SYSTEM.HBASE_TEST; 输出结果: 3.查看表主键信息 0: jdbc:phoenix:> !primarykeys SYSTEM.HBASE_TEST; 输出结果: JDBC模式 1.查看所有表信息 select * from SYSTEM.CATALOG whe

gmHappy 3955

phoenix5表结构变更,修改字段类型

概述 众所周知,hbase中存储的数据都是二进制的字节数组,是没有数据类型的 ,所以这里的数据类型也就是说的Phoenix中的数据类型。 在Phoenix中,有以下几张系统表,其中SYSTEM.CATALOG表保存了表的元数据信息 SYSTEM:CATALOG SY...

刘本龙的专栏 3763

SGLang HiCache实战:手把手教你配置KV Cache Offload,让大模型推理成本直降84%

本文详细介绍了SGLang HiCache在KV Cache Offload配置与调优中的实战应用,通过多级存储架构和智能卸载策略,显著降低大模型推理成本达84%。文章涵盖HiCache架构优势、环境配置、高级调优策略及生产环境最佳实践,帮助开发者优化GPU显存使用,提升并发处理能力。

weixin_29044713的博客 461

大麦APP抢票协议分析:从‘掌密网络’代码看移动端API安全防护

本文深度解析了大麦APP抢票协议的安全防护体系,重点分析了'掌密网络'代码中体现的动态签名、设备指纹和人机验证等关键技术。文章详细介绍了大麦APP如何通过多层次API安全防护应对抢票压力,包括参数加密、请求头部设计和异常处理机制,为移动应用开发者提供了安全实践建议。

weixin_28740299的博客 289

HBase和Phoenix的类型转换

在Phoenix中字段的类型所保存的byte数组和HBase中用Bytes工具了转换的byte数组可能会对不上,比如Bytes.toBytes(1)的结果和Phoenix中定义为INTEGER类的byte[]就不一样。因为Phoenix中的INTEGER是带符号的,要用无符号的话需要定义UNSIGNED_INT类型,UNSIGENT_INT类型的byte[]值和Bytes.toBytes(1)是一...

rewerma的博客 6122

[QMT量化交易小白入门]-二十八、有了回测年化收益好的策略,如何在QMT量化实盘呢(附python代码解析)

本专栏主要是介绍QMT的基础用法,常见函数,写策略的方法,也会分享一些量化交易的思路,大概会写100篇左右。QMT的相关资料较少,在使用过程中不断的摸索,遇到了一些问题,记录下来和大家一起沟通,共同进步,自己淋过雨了,希望大家都有一把伞。

木头大左的博客 2924

phoenix_字段类型

Phoenix字段类型INTEGERjava.lang.Integer-2147483648 to 2147483647(4 byte  )UNSIGNED_INTjava.lang.Integer0 to 2147483647(4 byte  )   BIGINT                                                 java.lang.Long-922...

子龙修仙的博客 4934

企业级大模型落地:私有化部署的安全合规全流程实战指南

摘要:本文针对企业在大模型私有化部署中面临的数据泄露、合规风险及系统稳定性难题,提出一套覆盖数据安全、模型合规、审计追踪与灾备方案的全流程解决方案。通过双加密管道(国密SM4传输加密+AES-GCM存储加密)、SGX可信执行环境等技术,实现数据全生命周期保护;结合等保2.0三级要求与《生成式AI服务管理暂行办法》,提供合规性实施细则;并给出本地GPU集群、混合云、边缘推理盒子三种企业级部署方案及成本模型。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 910

Avalonia+ReactiveUI跨平台路由:从零到舞者,你的UI也能跨界起舞?

至此,你已掌握了Avalonia+ReactiveUI的跨平台路由精髓!你的应用现在能够优雅地在各个界面间穿梭,就像是在不同星球间跳跃的宇宙飞船。无论是初探跨平台开发的新手,还是经验丰富的老船长,这段旅程都能让你的UI编排技能更上一层楼。现在,是时候让世界见证你的跨平台魔术了!💫记住,每一次实践都是向着完美编舞迈进的一步,勇敢地在你的项目中尝试吧!如果在航行中遇到风暴,别忘了回来看看这篇指南,或者在评论区抛出你的救生圈,我们一起解决!🌊。

java专栏 1534

mysql与phoenix字段类型对应_Phoenix表 修改字段数据类型长度

mysql等数据库使用alter 可以很方便的修改字类型,但是截止最新的Phoenix, alter table 并没有修改 现有表 现有字段 数据类型的功能, 所以我们只能想点办法来修改数据表的字段类型。1.Phoenix表如何修改字段类型Phoenix表是映射的hbase表, hbase存储的数据都是字节数组, 因此, 限制数据类型的只能是Phoenix自己, 所以, 我们就可以通过修改Ph...

weixin_28766939的博客 880

基于Stateflow的驱动电机控制系统模式管理与安全策略研究

摘要 本文基于Stateflow状态机建模工具,研究了驱动电机控制系统的模式管理架构与安全策略实现方法。通过分析电机控制系统的工作模式,设计了包含初始化、待机、校准、对齐、运行、故障、复位七种状态的有限状态机模型,并建立了三级故障处理机制和降额保护策略。基于Simulink/Stateflow搭建的仿真模型实现了模式切换逻辑和安全管理功能,验证了系统能够正确响应各类控制事件,故障处理机制可有效保护系统安全。研究成果为电动汽车电机控制系统的工程开发提供了参考。 关键词:Stateflow;驱动电机控制;模式管

AI的内部世界的博客 58

Phoenix表数据类型修改

截止最新的Phoenix-4.14.0, alter table 并没有修改 现有表 现有字段 数据类型的功能, 因此, 想要实现修改数据类型的功能需要另辟蹊径, 或者使用简单粗暴的删表建表, 但是生产上显然这是不可取的. 修改思路 Phoenix表是映射的hbase表, hbase存储的数据都是字节数组, 因此, 限制数据类型的只能是Phoenix自己, 所以, 我们就可以...

稼轩 9888

122、Android Camera HAL3 框架:Request、Result、Metadata 的异步管道模型

本文深入剖析了Android Camera HAL3框架中的异步管道模型,围绕Request、Result和Metadata三个核心要素展开。作者通过实际案例(黑屏闪退问题)切入,揭示了异步模型中常见的帧序错乱陷阱。文章详细阐释了三个角色的交互机制,指出HAL3采用生产者-消费者模式的关键特征:Request与Result一一对应但不保证顺序。针对开发实践,总结了三个必须加锁的场景和回调函数的锁使用禁忌,并给出解决帧序问题的具体方案(独立帧号生成器)。最后提出五项经验性建议,强调异步模型带来的灵活性与复杂性

sundong_81的博客 213

13、数据来源介绍与操作指南

本文详细介绍了多种数据源的特点、操作步骤及适用场景,包括元数据数据源、MongoDB数据源、Pentaho Data Integration数据源、OLAP数据源、Pentaho分析数据源和OLAP4J数据源。通过流程图和表格对比,帮助用户理解不同数据源的选择与使用方法,并提供了实际应用案例和注意事项,旨在提升数据获取与分析效率,支持高效报告生成。

ik678901234的博客 148

phoenix的元数据一般存在哪里_Phoenix 查看表信息及修改元数据

Phoenix 查看表信息及修改元数据Phoenix 查看表信息及修改元数据sqlline或phoenix-sqlline模式1.查看所有表信息0: jdbc:phoenix:>!tables输出结果:2.查看表字段信息0: jdbc:phoenix:> !desc SYSTEM.HBASE_TEST;输出结果:3.查看表主键信息0: jdbc:phoenix:> !primar...

weixin_29323049的博客 1189

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Phoenix(2):Phoenix常用操作

一、基本原则 1.phoenix中的表名和字段名不加双引号,都为大写,加上双引号,则区分大写; 2.phoenix和RDBMS中一样,有数据类型 3.插入数据时,values中数值类型不用引号,字符串只能是单引号 二、常用语句 1.创建表 create table us_population( state varchar(2), city varchar(15), population ...

小蚯蚓的博客 1881

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

phoenix创建hbase表的映射

phoenix中建立hbase表的映射

craftsman_gosky的博客 1764

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

phoenix大表增加字段的方法

phoenix大表增加字段的方法 文章背景:给phoenix大数据表加字段,一般用官方的alter语句,但有时候会因为表中数据量过多或者其它原因导致超时失败,于是就有了这篇文章,用于讨论怎么给大表增加字段 文章主题:通过改system.catalog表来给phoenix表增加字段 正文: 下面以hbase测试环境演示, 尝试给表MEMBER_TEST增加字段WJH_TEST_COLUMD11 首先查看目标表在system.catalog表中记录的相关信息 select

apply_bomb的博客 1565

phoenix 修改表字段

主要记录下apache phoenix修改表字段的一种变通方式,仅供参考 CREATE TABLE IF NOT EXISTS t_appversion ( f_region_id VARCHAR, f_province_id VARCHAR, f_province_name VARCHAR, f_terminal INTEGER , f_phone_model ...

Millton0518的专栏 885

使用Phoenix映射hbase表创建表和视图

之前的文章介绍了如何在CDH5和CDH6中分别安装phoenix4和phoenix5: CDH6.2中使用parcel离线安装Phoenix5.0.0 CDH5.14集群下Phoenix4.14.0安装及性能对比phoenix/impala/hive 本篇内容介绍一下如何使用Phoenix映射hbase创建表和视图以及注意事项。 1. 进入命令行模式 首先进入命令行模式,使用!tables查看当前的表,效果等同于hbase里的list和rdbms里的show tables; /opt/clou

王义凯 的博客 6577

Phoenix教程 SpringBoot MybatisPlus Phoenix 整合

springboot MybatisPlus整合Phoenix实现sql操作HBase

爱码猿的博客 2862

postgres 把一个表的值转成另一个表的字段名_Phoenix系列创建Phoenix映射表

目前,在公司小部分的业务场景中有用到 Phoenix,但也仅限基于 Phoenix 的二级索引机制来进行查询上的优化。虽然使用的频次不大,但偶尔用到时,有些语句的使用方式和注意事项总记不太熟,每次都需要一顿谷歌和百度,然后从五花八门的文章中摄取着自己需要的信息。本文是 Phoenix 系列的第一篇文章,我打算从 Phoenix 映射表的创建开始说起。Phoenix 映射表的创建虽然看起来...

weixin_39955154的博客 392

phoenix 表 增删改查

phoenix对表的操作,看似根其他sql差不多,但是总感觉很变扭。特别是不加双引号默认大写,值必须用单引号。 1,phoenix schema操作 //创建schema createschema"tank_schema"; //删除schema dropschemaifexists"tank_schema"; //切换schema use"tank_ns"; //查看所有schema(//创建schema就是hbase的namespace) list_...

追梦少年渐已老的博客 3078

Phoenix快速入门系列(2) | 一文教你如何使用Phoenix

  此篇为大家带来的是一文教你如何使用Phoenix。 目录一. Phoenix 表操作二. Phoenix 表映射1. Phoenix 表和 HBase 表的关系2 准备工作3. 视图映射4. 表映射5. 视图映射和表映射的对比与总结 一. Phoenix 表操作 1. 显示所有表 !tables # 或者 !table 2 创建表 CREATE TABLE IF NOT EXISTS us_population ( state CHAR(2) NOT NULL,

不温卜火 7114
上一篇: org.apache.hadoop.hbase.RegionTooBusyException: Over memstore limit
下一篇: 使用DBeaver连接Phoenix
darkbreak_up
博客等级 码龄8年 0粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值