2025年phoenix表操作

phoenix表操作phoenix 表操作 官网 https phoenix apache org language index html upsert select 进入命令行 这是 sqlline py 配置到 path 环境变量的情况下 sqlline py localhost 例如 phoenix sqlline py xxxxxxxxxx

大家好,我是讯享网,很高兴认识大家。

phoenix表操作

官网 :https://phoenix.apache.org/language/index.html#upsert_select

进入命令行,这是sqlline.py 配置到path环境变量的情况下

sqlline.py localhost 例如:phoenix-sqlline.py xxxxxxxxxx:2181 如果要退出命令行:!q 或者 !quit 

讯享网

创建表

讯享网CREATE TABLE IF NOT EXISTS us_population ( state CHAR(2) NOT NULL, city VARCHAR NOT NULL, population BIGINT CONSTRAINT my_pk PRIMARY KEY (state, city)); 

插入数据

UPSERT INTO us_population (state, city, population) values ('NY','New York',); UPSERT INTO us_population (state, city, population) values ('CA','Los Angeles',); 

在phoenix中,默认情况下,表名等会自动转换为大写,若要小写,使用双引号,如"us_population"。

显示所有表

讯享网!tables 

phoenix表映射

 默认情况下,直接在hbase中创建的表,通过phoenix是查看不到的, 

US_POPULATION是在phoenix中直接创建的,而test是在hbase中直接创建的,默认情况下,在phoenix中是查看不到test的。

在这里插入图片描述
讯享网

如果需要在phoenix中操作直接在hbase中创建的表,则需要在phoenix中进行表的映射。映射方式有两种:视图映射和表映射。

hbase 中test的表结构如下,两个列簇name、company.
在这里插入图片描述

hbase命令行中创建表

$ cd /home/hadoop/hbase/bin

$ ./hbase shell 进入hbase命令行

讯享网 create 'test','name','company' 创建表,如下图 

在这里插入图片描述

视图映射(不推荐)

Phoenix创建的视图是只读的,所以只能用来做查询,无法通过视图对源数据进行修改等操作。而且相比于直接创建映射表,视图的查询效率会低,原因是:创建映射表的时候,Phoenix会在表中创建一些空的键值对,这些空键值对的存在可以用来提高查询效率。

 1)创建视图 
讯享网create view"test"(empid varchar primarykey,"name"."firstname" varchar,"name"."lastname"varchar,"company"."name" varchar,"company"."address"varchar); 
 2)删除视图 
讯享网 drop view "test"; 

表映射

使用Apache Phoenix创建对HBase的表映射,有两种方法:

1) 当HBase中表已存在,创建同名表和结构即可 2)当HBase中不存在,可以直接使用create table指令创建需要的表,并且在创建指令中可以根据需要对HBase表结构进行显示的说明。 第1)种情况下,如在之前的基础上已经存在了表,则表映射的语句如下: 
讯享网create table "HBASE_BMDA5"("SS5" varchar primary key , "info"."NodeType" INTEGER , "info"."NodeName" varchar, "info"."IsWarehouse" INTEGER, "info"."IsAssetUser" INTEGER); 
 View Code 

然后数据就直接有了.

讯享网使用create table创建的关联表,如果对表进行了修改,源数据也会改变,同时如果关联表被删除,源表也会被删除。但是视图就不会,如果删除视图,源数据不会发生改变。 
小讯
上一篇 2025-01-04 21:26
下一篇 2025-01-07 18:09

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/36126.html