Phoenix操作Hbase移动表 20C

请问一下,Phoenix操作habse ,如果在A模式下有一个表,需要移动到B模式下面去,除了删除A模式下的表重新在B模式下新建,还有更好的办法嘛?

0

2个回答

一.与hbase 的映射
1.空表格映射
在phoenix中创建表格,会自动映射到hbase中,我们可以通过hbase shell 来查看。举个例子,我们创建了一个表,

create table hbase_col_test(
pk varchar not null primary key,

//primary key 映射到hbase 中的rowkey
"cf1"."col1" varchar ,

//对应hbase的列族cf1,列名为col1
"cf1"."col2" varchar ,

//对应cf1:col2
"cf2"."col3" varchar

//对应cf2:col3
);
1
2
3
4
5
6
7
8
9
10
创建的时候注意格式的书写。

2.对于已经存在的hbase表做映射
通过创建视图来查询hbase表,我们举个例子,对于一个列族的查询:

create view "test" (
k varchar not null primary key, //主键对应hbase 中的rowkey
"val" varchar)default_column_family='cf1';//列名与hbase 中对应即可
1
2
3
4
对于多个列族的查询,可以这样写:

create view "hbase_to_phoe"(
pk varchar not null primary key, -----主键对应
"addr"."province" varchar, -----addr列族,province列(hbase中定义的列)
"school"."name" varchar); -----school列族,name列(hbase中定义列)

0

老兄好像有点答非所问吧

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
phoenix操作注意点
一.与hbase 的映射1.空表格映射在phoenix中创建表格,会自动映射到hbase中,我们可以通过hbase shell 来查看。举个例子,我们创建了一个表,create table hbase_col_test( pk varchar not null primary key, //primary key 映射到hbase 中的rowkey
如何在不删除hbase表的前提下删掉其在phoenix中的映射表
很简单,只需在phoenix中执行以下sql即可: DELETE from SYSTEM.CATALOG where TABLE_NAME ='mapped_table_name'
phoenix视图-phoneix查询原生态Hbase的表
标准的SQL视图语法现在在Phoenix上也支持了。这使得能在同一张底层HBase物理表上创建多个虚拟表。 hbase(main)> create 't1' , {NAME => 'f1', VERSIONS => 2} hbase(main)> put 't1','rowkey001','f1:col1','value01' hbase(main)> put '...
Phoenix基本使用(HBase)
HBase迁移相关的数据库表此处记录了对应表格的MySql中的数据库中table的DDL和HBase中使用Phoenix建立表的DDLHBase Table DDL商品操作记录表 CREATE TABLE IF NOT EXISTS tb_product_log_record ( id varchar(100) primary key, -- 主键Id 需要进行设计这个就是 一个记录对应的row
Hbase中表与Phoenix表建立关联关系
Hbase建表 base(main):014:0> create 'stu' ,'cf1','cf2' 0 row(s) in 1.2140 seconds => Hbase::Table - stu hbase(main):015:0> put 'stu', 'key1','cf1:name','luozhao' 0 row(s) in 0.01
Phoenix(十二)使用Phoenix自带的工具执行sql脚本
本篇主要介绍如何使用phoenix自带的工具执行sql脚本
phoenix创建hbase的映射表
phoenix创建hbase的映射表 首先在hbase中创建表方法如下: 往表里面添加数据: hbase查询数据:   在phoenix创建hbase的映射表:   注意:在phoenix创建hbase映射表时,如果hbase的表是小写,一定要在创建phoenix映射表时小写表名加上引号,phoenix映射表的字段不管hbase的字段是大小写都要加上引号,...
phoenix_使用中遇到的问题(hbase不能删除记录)
这是一个当时纠结了两天的问题,突然一下hbase中的记录删除不了了,对应的phoenix记录及索引记录都只能添加和修改,不能删除,也不报错,最后才发现,是前几天研究phoenix的事务时,在hbase配置文件中添加了一些配置,事务还没解决,确带了新的问题,添加的配置内容如下:  < property >     < name > hbase.coprocessor.regi...
Apache Phoenix的Join操作和优化
估计Phoenix中支持Joins,对很多使用HBase的朋友来说,还是比较好的。下面我们就来演示一下。首先看一下几张表的数据:Orders表: OrderID CustomerID ItemID Quantity Date 1630781 C004 I001 650 09-01-2013 1630782 C003 I006 2500 09-02-2013
hbase表映射Phoenix视图, 基于视图的二级索引是否实时更新
1. hbase shell 创建表 create 'MY_TABLE', 'CF1','CF2' 添加数据 put 'MY_TABLE','1' ,'CF1:V1', 'uwo1' put 'MY_TABLE','1' ,'CF2:V2', '1' put 'MY_TABLE','1' ,'CF1:V3', '10' put 'MY_TABLE','2' ,'CF1:V1', 'uwo...
phoenix对hbase进行映射
1.查看phoenix的版本,如果版本是4.10之前的,映射关系是根据列来映射的,phoenix可以通过create table(...)来映射2.如果版本是4.10以后的,则只能通过视图来创建,create view(...),才能查询到hbase中的数据...
【十】Phoenix视图映射HBase中已有的表
启动zookeeper 启动hadoop 启动hbase 查看wc表 启动phoenix命令行 创建一个视图来映射HBase中的表。如果在phoenix中建表映射HBase中已有的表,phoenix会认为这表是自己的,在phoenix删除该表,会把HBase中已有的表的数据一起删掉。所以最好用视图。 create view "wc"( pk varchar primary key...
【十二】Phoenix Java API操作
项目目录 phoenix.properties phoenix.driver=org.apache.phoenix.jdbc.PhoenixDriver phoenix.url=jdbc:phoenix:node1:2181 phoenix.user=root phoenix.password=密码 pom.xml <?xml version="1.0" encoding="...
hbase的表与phoenix建立映射
一,hbase的表与phoenix建立映射1, 具体步骤如下:(1) 先在hbase上建立表,表名为(PHO)hbase(main):001:0>create 'PHO','KID','INFO'(2), 然后在phoenix上建立相同的表名 (PHO)0: jdbc:phoenix:db1,db2,db3:2181>create table if not exists PHO(id varcha
如何用Phoenix(4.14版本)映射HBase中已有的表
解决4.10版本后,查不到数据的问题一.为什么要做映射?二.如果进行映射?1.创建一个 HBase 表并插入一定量数据。2.创建一个 HBase 表并插入一定量数据。3.使用 SELECT 语句查询4.特殊强调:三.视图映射四.总结 一.为什么要做映射? 本地安装好 Phoenix 之后,用 phoenix 的 !talblse 命令列出所有表,会发现 HBase 原有的表没有被列出来。而使用 P...
Phoenix(4):phoenix中创建hbase的映射表
一、实现功能 phoenix映射hbase中表,从而实现快速复杂查询与编辑。 二、步骤 1.hbase中要有对应的表,以及数据 create 'teacher','info','contact' put 'teacher','1001','info:name','Jack' put 'teacher','1001','info:age','28' put 'teacher','1001...
客户端phoenix安装、运行、创建与HBase表同名视图、聚合查询
客户端phoenix安装、运行、创建与HBase表同名视图、聚合查询
Phoenix创建视图映射Hbase中已创建的表
前言 准备HBase Phoenix创建视图映射HBase已创建的表 前言 HBase版本:Version 1.2.0-cdh5.10.2 Phoenix版本:phoenix-4.9 网上翻了好多资料都没有搞定,这里记录一下 准备HBase 登陆HBase Shell hbase shell 在HBase里创建表,命名为USER: # 创建表: cre...
Phoenix - Hbase与SQL
Phoenix - Hbase与SQL 2016-10-23 杜亦舒 Phoenix是什么 简单来说,Phoenix 是一个可以让我们通过SQL的方式操作HBase数据库的框架。 HBase是一个NoSQL数据库,shell客户端只支持一些简单的操作,而且看起来容易晕。 例如下面这个图,返回的是一张表的所有数据: 是不是很难看,而且如果对HBase进行复杂查询的话,只能通过HBase的原生AP...
关于Phoenix创建的表在hbase shell的显示问题及hue中不能查询的问题
建表语句 create table schema_test1 ( keys varchar not null primary key, f.f1 varchar, ...
PHOENIX查询不到数sparkstreaming写入的数据,hbase可以查到
最近做到一个项目用到了kafka,SparkStreaming,PHOENIX,测试集群发布测试一切正常,但是在生产集群提交的时候发现在PHOENIX用select * 查不到数据,但是在hbase做scan可以查到有很多数据。仔细检查提交命令(使用了--jars指定外部依赖)和集群环境发现测试环境和生产环境版本不一样,测试用的phoenix-core-4.8.0,集群是4.14版本的。 更换依赖...
Phoenix开启对Hbase中的namespace及二级索引的支持
1. 开启schema与namespace的对应关系 如果使用了hbase中的自定义namespace,不仅仅使用default,那么在phoenix中与之对应的是schema的概念,但是默认并没有开启,需要在hbase-site.xml中增加以下配置项: <property> &am
解决Hbase数据更新Phoenix对应索引表不更新问题
问题描述: 用户访问的数据接口直接走Phoenix,Phoenix的表是映射hbase产生,Phoenix的表会建很多索引,这时候问题就出现了,正常通过接口直接写数据进Phoenix表,相应的索引表也是会更新的,但是直接写数据到底层hbase表,这时候对应的索引表是不会更新,从而影响正常的用户访问 直接通过API把数据写入Phoeinx是正常的,如下图:       直接写数据到H...
linux上安装Phoenix操作hbase(图文详解)
一、什么是 Phoenix Phoenix是一个开源的HBASE SQL层,是一个中间件,使用Phoenix我们就可以使用标准的JDBC API代替HBase客户端API来创建表,插入数据,查询你的HBase数据,具体的介绍请看官网http://phoenix.apache.org/。 二、在linux上搭建Phoenix  1、下载 Phoenix 下载地址:http://phoenix...
phoenix的配置,及表的简单映射
解压phoenix的对应版本后,将对应的需要的jar包拷贝到相应的位置--将phoenix安装目录下的phoenix-version-client.jar拷贝到hbase的lib目录下--将phoenix安装目录下的lib子目录中的phoenix-core-version.jar拷贝到hbase的lib目录下--将hbase/conf目录下hbase-site文件放到phoenix安装的bin目录...
Phoenix批量导入数据至Hbase中
笔者环境:hdp2.5.3 + centos6.9 + phoenix4.7 官网文档: Phoenix provides two methods for bulk loading data into Phoenix tables: Single-threaded client loading tool for CSV formatted data via the psql command...
Hbase+Phoenix 安装及基本操作
1.安装Hbase:     解压:tar-zxvf hbase-1.2.1-bin.tar.gz     重命名:mvhbase-1.2.1  hbase 2.配置环境变量exportJAVA_HOME=/usr/local/software/jdk1.8.0_66 exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar...
Phoenix连接hbase的sql操作
phoenix,直译为凤凰,构建在Hbase之上,使用标准的SQL操作Hbase,可以做联机事务处理,拥有低延迟的特性。 phoenix会把SQL编译成一系列的Hbase的scan操作,然后把scan结果生成标准的JDBC结果集, 其底层由于使用了Hbase的API,协处理器,过滤器,处理千万级行的数据也只用毫秒或秒级就搞定。 支持有:SELECT, FROM, WHERE, GROUP B...
Phoenix创建视图和索引--基于HBase
一、HBase shell命令 1. 进入hbase shell # Step1:进入hbase的安装路径的bin目录 cd /home/gulfmoon/apps/hbase-1.2.4/bin # Step2:启动hbase shell hbase shell 启动成功后显示的信息: 2. 查看hbase中所有的表 !list 3. help大法   二、Ph...
初探phoenix操作Hbase
Phoenix操作手册 目录 一. Phoenix适用场景 2 二. 架构图 2 三. 连接方式 4 命令行方式连接 4 客户端工具(squirrel) 5 JDBC方式连接(与普通JDBC无异) 11 四. 对QL支持 14  SELECT 14  UPSERT VALUES 14  DELETE 14  CREATE TABLE 14  DROP TABLE 14  CREATE...
Phoenix表数据类型修改
截止最新的Phoenix-4.14.0, alter table 并没有修改 现有表 现有字段 数据类型的功能, 因此, 想要实现修改数据类型的功能需要另辟蹊径, 或者使用简单粗暴的删表建表, 但是生产上显然这是不可取的. 修改思路 Phoenix表是映射的hbase表, hbase存储的数据都是字节数组, 因此, 限制数据类型的只能是Phoenix自己, 所以, 我们就可以...
使用Phoenix通过jdbc连接hbase
使用Phoenix连接hbase数据库,PhoenixUtil连接hbase数据库,HbaseTest测试hbase数据库的创建、删除,及表数据的增删改查
phoenix连接(命名空间映射)
@phoenix连接(命名空间映射) 数据源连接属性(setConnectProperties)增加 phoenix.schema.isNamespaceMappingEnabled=true
Phoenix二级索引再探
目前分两种情况测试: 一种是该Hbase表已存在,通过该Hbase表映射一张对应的Phoenix表; 另一种是该Hbase表不存在,通过Phoenix创建对应的Hbase表。 Hbase表存在的情况: 1、通过hbase shell 创建Hbase表 hbase(main):009:0> create 't_hbase1','info' 0 row(s) in 1.5...
apache phoenix 修改默认的hbase初始化
apache phoenix 是使用了jdbc的驱动,实现了sql方式访问hbase,并且建立索引的方式。 但是我们发现,有一个很麻烦的问题,没有默认提供一个hadoop的configuration的方法,进行一些初始化的操作。必须读取hbase-site.xml, hdfs-site.xml的文件,导致不能进行个性化的动态调整。我们项目又喜欢把hadoop 的配置通过界面进行添加,这样很麻烦。
一次phoenix大表删除数据超时导致hbase和phoneix启动不了的解决过程
phoenix有一个大表,数据其实也不算太多。300多万条记录,另外还有5-6个二级索引表。在sqlline.py里执行delete命令,超时,数据删除剩下80多万条,继续执行delete命令。。。大事不好了。。。 1.执行stop-hbase.sh 超时,关闭不了 2.启动hbase shell: 报: ERROR:org.apache.hadoop.hbase.PleaseHoldExcept...
使用Phoenix连接Hbase
想要使用SQL语句对Hbase进行查询,需要使用Apache的开源框架Phoenix。 演示环境:Phoenix 4.9.0-Hbase-1.1 + Hbase 1.1.91 本地安装Phoenix1.1 下载Phoenix从Apache下载Phoenix(下载链接),从4.8.0到4.10.0各版本都有,本地安装的Hbase版本为1.1.9,所以选择对应Hbase是1.1版本的下载。这里我下载的
使用客户端squirrel client连接phoenix查询HBase数据
使用客户端squirrel client连接phoenix查询HBase数据
phoenix查询hbase ,想要走rowkey查询却成了走索引
背景: 这是实际项目中遇到的实例,主要涉及到rowkey查询,索引查询 以及主键primary key。问题是在sql使用order by 查询 时遇到的,以下为个人浅见,仅供参考。内容:     Hbase中存在数据表如下:CREATE TABLE IF NOT EXISTS Test.AppLog ( UserId INTEGER NOT NULL, Number INTEGER NOT...
使用scala,java实现使用phenix读取hbase中数据
前提:将phenix与hbase已经成功映射 直接上代码:scala object testperson { def main(args: Array[String]) { var cc: Connection = null val driver: String = "org.apache.phoenix.jdbc.PhoenixDriver" val url: