Phoenix-4.14-cdh5.14.2与hbase-1.2.0-cdh5.14.2集成测试
Phoenix介绍:
针对hbase开发的第三方插件,目前已贡献给Apache,顶级项目
Phoenix是构建在HBase上的一个SQL层
可以使用类似于操作mysql的标准sql语句,作为hbase客户端JDBC的驱动对hbase中的数据进行低延迟的访问
内部实现为将sql查询语句编译成hbase内部的一系列scan操做
因为hive关联hbase查询底层为MapReduce,为Phoenix底层查询为hbase的API,故查询速度比hive集成快
hbase-》hive-》hql-》MapReduce查询等-》速度慢
hbase-》Phoenix-》sql-》hbase Scan查询(JDBC结果集)-》速度快
官网下载 http://phoenix.apache.org/download.html
1、上传解压
$ tar zxf apache-phoenix-4.14.0-cdh5.14.2-bin.tar.gz
$ mv apache-phoenix-4.14.0-cdh5.14.2-bin phoenix-4.14.0-cdh5.14.2 (可不修改)
2、将phoenix安装目录下的phoenix-4.14.0-cdh5.14.2-server.jar拷贝到hbase的lib目录下
$ cp phoenix-4.14.0-cdh5.14.2/phoenix-4.14.0-cdh5.14.2-server.jar hbase-1.2.0-cdh5.14.2/lib/
3、将phoenix安装目录下的phoenix-core-4.14.0-cdh5.14.2.jar 拷贝到hbase的lib目录下(如果是phoenix 3.x版本的安装除了phoenix-[version]-server.jar需要复制外,同时phoenix-core-[version].jar 也需要复制,但是我们安装的是phoenix 4.x所以phoenix-core-[version].jar 的jar包就不需要复制了)
$ cp phoenix-4.14.0-cdh5.14.2/phoenix-core-4.14.0-cdh5.14.2.jar hbase-1.2.0-cdh5.14.2/lib/
4、将hbase/conf目录下hbase-site文件覆盖放入phoenix的bin目录下
$ cp hbase-1.2.0-cdh5.14.2/conf/hbase-site.xml phoenix-4.14.0-cdh5.14.2/bin/
5、重启hbase进程
6、启动phoenix客户端交互命令
$ bin/sqlline.py zkip:2181
第一次启动时间相对较长要进行初始化操作创建一些表
如果报argparse错误:$ sudo yum -y install python-argparse
集成测试:
-》show databases 或 show tables 不支持的,并不与mysql中操作完全一样
-》!help 查看内置命令
-》!tables 查看hbase中与phoenix建立好映射的表
-》通过phoenix客户端创建表
create table user_ph(
id varchar primary key,
name varchar,
password varchar
);
phoenix查看表有没有:
-》hbase shell中通过list查看
注意:phoenix中的表名和字段名不加双引号则默认都为大写
加上双引号则区分大小写
phoenix和RDBMS中一样,有数据类型
-》hbase shell中通过 desc 'USER_PH'
表列簇默认名称是0,NAME => '0'
-》重新创建,并指定列簇:列
drop table user_ph;
create table "user_ph"(
"id" varchar primary key,
"info"."name" varchar,
"info"."password" varchar
);
-》添加数据:
updata+insert结合命令--》upsert,插入数据时表名和列名因为都是小写的所以要加双引号, 值为字符串时只能用单引号引起否则报错,phoenix中创建表时的主键列会默认为hbase表中的rowkey
upsert into "user_ph"("id","info"."name","info"."password") values('001','admin','admin');
upsert into "user_ph"("id","info"."name","info"."password") values('002','admin','admin');
upsert into "user_ph"("id","info"."name","info"."password") values('003','admin','admin');
-》查询数据:
select * from "user_ph";
scan "user_ph"
-》删除数据:
delete from "user_ph" where "id"='002';
-》在phoenix中的client界面中进行的crud(增删改查)操作与RDBMS的操作大都相同
-》退出phonix客户端命令行
!quit
Phoenix-4.14-cdh5.14.2与hbase-1.2.0-cdh5.14.2集成测试的更多相关文章
- Phoenix的安装使用与SQL查询HBase
一. Phoenix的简介 1. 什么是phoenix 现有hbase的查询工具有很多如:Hive,Tez,Impala,Shark/Spark,Phoenix等.今天主要说Phoenix.phoen ...
- Phoenix |安装配置| 命令行操作| 与hbase的映射| spark对其读写
Phoenix Phoenix是HBase的开源SQL皮肤.可以使用标准JDBC API代替HBase客户端API来创建表,插入数据和查询HBase数据. 1.特点 1) 容易集成:如Spark,Hi ...
- Angular2 Hello World 之 2.0.0-beta.14
公司现在采用angualrjs开发一些web应用,采用的是angular1,现在angular2已经差不多了,听说最近rc6已经出来了……其实感觉好慢啊!之前也做过一些anglar2的例子,但是没有记 ...
- 日常英语---七、[Updated November 14 at 4:10 PM PST] Scheduled Game Update - November 14, 2018(n.标准)
日常英语---七.[Updated November 14 at 4:10 PM PST] Scheduled Game Update - November 14, 2018(n.标准) 一.总结 一 ...
- NVIDIA DIGITS 学习笔记(NVIDIA DIGITS-2.0 + Ubuntu 14.04 + CUDA 7.0 + cuDNN 7.0 + Caffe 0.13.0)
转自:http://blog.csdn.net/enjoyyl/article/details/47397505?from=timeline&isappinstalled=0#10006-we ...
- 【spring boot】使用定时任务@Scheduled 报错:Encountered invalid @Scheduled method 'dealShelf': Cron expression must consist of 6 fields (found 7 in "0 30 14 * * ? *")
在spring boot中使用使用定时任务@Scheduled 报错: org.springframework.beans.factory.BeanCreationException: Error c ...
- Ubuntu14.04用apt在线/离线安装CDH5.1.2[Apache Hadoop 2.3.0]
目录 [TOC] 1.CDH介绍 1.1.什么是CDH和CM? CDH一个对Apache Hadoop的集成环境的封装,可以使用Cloudera Manager进行自动化安装. Cloudera-Ma ...
- centos 7 cloudera-manager5.16.2,CDH5.16.2安装升级spark2.4.0
1.在已经安装好系统的linux服务器上关闭selinux和iptables 2.在所有linux服务器上配置ntp服务并设置ntp时间同步 3.在所有linux服务器上安装好cm和cdh版本所需要对 ...
- Ubuntu 14.10 下Eclipse操作HBase
环境介绍 64位Ubuntu14.10,Hadoop 2.5.0 ,HBase 0.99.0 准备环境 1 安装Hadoop 2.5.0,可参考http://www.cnblogs.com/liuch ...
- CDH5上安装Hive,HBase,Impala,Spark等服务
Apache Hadoop的服务的部署比較繁琐.须要手工编辑配置文件.下载依赖包等.Cloudera Manager以GUI的方式的管理CDH集群,提供向导式的安装步骤.因为须要对Hive,HBase ...
随机推荐
- PyQt(Python+Qt)学习随笔:QTreeView树形视图的uniformRowHeights属性
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 uniformRowHeights属性用于控制视图中所有数据项是否保持相同高度,所有高度都与视图中第 ...
- Python接口测试-使用requests模块发送GET请求
本篇主要记录下使用python的requests模块发送GET请求的实现代码. 向服务器发送get请求:无参数时:r = requests.get(url)带params时:r = requests. ...
- Pytorch训练时显存分配过程探究
对于显存不充足的炼丹研究者来说,弄清楚Pytorch显存的分配机制是很有必要的.下面直接通过实验来推出Pytorch显存的分配过程. 实验实验代码如下: import torch from torch ...
- sudo rm -rf /*含义
sudo ----- 管理员权限 rm ------ remove 移除 rf ------ recursive递归 force强制 /* ------ 目录下所有文档
- 算法——和为K的连续子数组
给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数. 输入:nums = [1,1,1], k = 2 输出: 2 , [1,1] 与 [1,1] 为两种不同的情况. 链 ...
- 六、Zookeeper-开源客户端ZkClient与Curator
ZkClient 从创建会话.创建节点.读取数据.更新数据.删除节点拉介绍ZkClient 添加依赖: pom.xml <dependency> <groupId>com.10 ...
- django添加检查用户名和手机号数量接口
1.1 在user/urls.py中添加 urlpatterns = [ path('count/', views.RegCountView.as_view()), # 查询用户名手机号使用量的视图, ...
- Jmeter之登录接口参数化实战
为了纪念我走过的坑(为什么有些简单的问题就是绊住我了,还是不够细啊) Jmeter之接口登录参数化实战 因为想要在登录时使用不同的数据进行测试,所以我选择了将数据进行参数化.因为涉及到新建一个接口的功 ...
- Cisco Packet Tracer NAT模拟实验
Cisco Packet Tracer NAT模拟实验 by: 铁乐猫 date: 2020-09-22 cisco packet tracer : 7.2.2 NAT简介 NAT允许将私有IP地址映 ...
- angular 8 表单带文件上传接口
<div id="homework"> <form (ngSubmit)="doSubmit()" enctype="multipa ...