https://github.com/forcedotcom/phoenix
http://www.vogella.com/articles/MySQLJava/article.html
HBase shell :
create 't1', {NAME => 'f1', VERSIONS => 5}
put 't1', "row1", 'f1:1', "aaa"
scan 't1'
Phoneix:
!tables
CREATE TABLE IF NOT EXISTS "t1" (
row VARCHAR NOT NULL,
"f1"."1" VARCHAR
CONSTRAINT PK PRIMARY KEY (row)
);
select * from "t1";
drop table "t1"; // t1表里面的数据被删除掉了,但是table是存在的。
./sqlline.sh node35:2224 ../examples/stock_symbol.sql
./psql.sh node35:2224 ../examples/web_stat.sql ../examples/web_stat.csv ../examples/web_stat_queries.sql
./performance.sh node35:2224 1000000
performance.sh里面
# Create Table DDL
createtable="CREATE TABLE IF NOT EXISTS $table (HOST CHAR(2) NOT NULL,DOMAIN VARCHAR NOT NULL,
FEATURE VARCHAR NOT NULL,DATE DATE NOT NULL,USAGE.CORE BIGINT,USAGE.DB BIGINT,STATS.ACTIVE_VISITOR
INTEGER CONSTRAINT PK PRIMARY KEY (HOST, DOMAIN, FEATURE, DATE))
SPLIT ON ('CSGoogle','CSSalesforce','EUApple','EUGoogle','EUSalesforce','NAApple','NAGoogle','NASalesforce');"
0: jdbc:phoenix:node35:2224> select count(*) from PERFORMANCE_1000000;
+----------+
| COUNT(1) |
+----------+
| 1000000 |
+----------+
0: jdbc:phoenix:node35:2224> select * from PERFORMANCE_1000000 limit 2;
+------+------------+------------+---------------------+----------+----------+----------------+
| HOST | DOMAIN | FEATURE | DATE | CORE | DB | ACTIVE_VISITOR |
+------+------------+------------+---------------------+----------+----------+----------------+
| CS | Apple.com | Dashboard | 2013-10-22 | 425 | 1906 | 4744 |
| CS | Apple.com | Dashboard | 2013-10-22 | 471 | 875 | 9533 |
+------+------------+------------+---------------------+----------+----------+----------------+
0: jdbc:phoenix:node35:2224> explain select count(*) from PERFORMANCE_1000000;
+------------+
| PLAN |
+------------+
| CLIENT PARALLEL 27-WAY FULL SCAN OVER PERFORMANCE_1000000 |
| SERVER AGGREGATE INTO SINGLE ROW |
+------------+
0: jdbc:phoenix:node35:2224> explain select * from PERFORMANCE_1000000 limit 2;
+------------+
| PLAN |
+------------+
| CLIENT PARALLEL 27-WAY FULL SCAN OVER PERFORMANCE_1000000 |
| SERVER FILTER BY PageFilter 2 |
| CLIENT 2 ROW LIMIT |
+------------+
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class UsePhoenix { public static void main(String[] args) { try { // Register Class.forName("com.salesforce.phoenix.jdbc.PhoenixDriver"); // Address String DBConnectionString = "jdbc:phoenix:10.232.98.35:2224"; Connection connection = DriverManager.getConnection(DBConnectionString); Statement statement = connection.createStatement(); ResultSet rs = statement .executeQuery("select count( *) from PERFORMANCE_1000000"); rs.next(); System.out.println("Count " + rs.getLong(1)); connection.close(); } catch (Exception e) { e.printStackTrace(); } } }
./psql.sh node35:2224 count.sql
./sqlline.sh node35:2224 count.sql
http://www.slideshare.net/Hadoop_Summit/taylor-june27-230pmhall1v2?from_search=6
phoenix使用的元数据都放在一张hbase表(SYSTEM.TABLE )里面,建表的时候可以直接映射到已有的HBase表,这样子数据不需要迁移。
见 https://github.com/forcedotcom/phoenix/wiki
Mapping to an Existing HBase Table
如下操作先创建一张hbase表
create 't2', {NAME => 'f1', VERSIONS => 5}
put 't2', "row1", 'f1:q', "aaa"
put 't2', "row2", 'f1:q', "bbb"
put 't2', "row3", 'f1:q', "ccc"
在phoenix建一张同样的表
./sqlline.sh localhost
CREATE TABLE IF NOT EXISTS "t2" (
row VARCHAR NOT NULL,
"f1"."q" VARCHAR
CONSTRAINT PK PRIMARY KEY (row)
);
t2 f1 q需要用双引号括起来,原因主要是大小写的问题,参考phoenix的wiki https://github.com/forcedotcom/phoenix/wiki
注意在这里,phoenix会修改table的Descriptor,然后添加coprocessor,所以会先disable,在modify,最后enable表。
0: jdbc:phoenix:localhost> CREATE TABLE IF NOT EXISTS "t2" (
. . . . . . . . . . . . .> row VARCHAR NOT NULL,
. . . . . . . . . . . . .> "f1"."q" VARCHAR
. . . . . . . . . . . . .> CONSTRAINT PK PRIMARY KEY (row)
. . . . . . . . . . . . .> );
0: jdbc:phoenix:localhost> select * from "t2";
+------------+------------+
| ROW | q |
+------------+------------+
| row1 | aaa |
| row2 | bbb |
| row3 | ccc |
+------------+------------+
0: jdbc:phoenix:localhost> SELECT COUNT(1) FROM "t2";
+----------+
| COUNT(1) |
+----------+
| 3 |
+----------+
't2', {METHOD => 'table_att', coprocessor$1 => '|com.salesforce.phoenix.coprocessor.ScanRegionObserver|1|', coprocessor$2 => '|com.salesforce.phoenix.coprocessor.UngroupedAggregateRegionObserver|1|', coprocessor$3 => '|com.salesforce.phoenix.coprocessor.GroupedAggregateRegionObserver|1|', coprocessor$4 => '|com.salesforce.phoenix.join.HashJoiningRegionObserver|1|'}, {NAME => 'f1', VERSIONS => '5', KEEP_DELETED_CELLS => 'true'}
'SYSTEM.TABLE', {METHOD => 'table_att', coprocessor$1 => '|com.salesforce.phoenix.coprocessor.ScanRegionObserver|1|', coprocessor$2 => '|com.salesforce.phoenix.coprocessor.UngroupedAggregateRegionObserver|1|', coprocessor$3 => '|com.salesforce.phoenix.coprocessor.GroupedAggregateRegionObserver|1|', coprocessor$4 => '|com.salesforce.phoenix.join.HashJoiningRegionObserver|1|', coprocessor$5 => '|com.salesforce.phoenix.coprocessor.MetaDataEndpointImpl|1|', coprocessor$6 => '|com.salesforce.phoenix.coprocessor.MetaDataRegionObserver|2|', CONFIG => {'SPLIT_POLICY' => 'com.salesforce.phoenix.schema.MetaDataSplitPolicy', 'UpgradeTo20' => 'true'}}, {NAME => '_0', DATA_BLOCK_ENCODING => 'FAST_DIFF', VERSIONS => '1000', KEEP_DELETED_CELLS => 'true'}
相关推荐
Phoneix嵌入式软件包: PhoenixCard_V310_20130618.zip PhoenixSuit_CN_V1.0.6.zip PhoneixUSBPro_V_4_0_0__2014-09-12CN.zip
### Spark集群环境安装详解 #### 一、项目背景与目标 本项目旨在搭建一套完整的Spark集群环境,包括Hadoop HA(高可用)、HBase、Phoenix、Kafka、Flume、Zookeeper以及Scala等多个组件的集成。...
"Phoneix"可能是指开发此工具的公司或团队,他们专注于USB设备的管理和更新解决方案。他们的产品可能广泛应用于硬件开发、物联网(IoT)项目、教育领域以及工业自动化等。 5. **PhoneixUSBPro_CN**: "CN"代表...
**PHOENIX BIOS 4.0 启动自检代码详解** BIOS(基本输入输出系统)是计算机硬件和操作系统之间的一个关键组件,负责在启动过程中执行一系列自检(POST,Power-On Self Test),确保所有硬件设备正常工作。...
创新点:使用Phoneix工具对非关系型数据库进行数据储存与查询 技术路线: 1、数据储存:Hbase 2、数据分析:Phoneix 3、数据管理:SpringBoot+MyBaties+JSP+Layui 4、数据可视化:SpringBoot+echart可视化
flink sql读写phoenix所使用到的连接器依赖包: flink-sql-connector-phoenix-1.14-1.0.jar 使用示例: create table tab2( ID STRING, NAME STRING, PRIMARY KEY (ID) NOT ENFORCED )WITH( ...
本项目是基于Java的Phoenix开源监控平台设计源码,共有1306个文件,包括815个Java文件、75个GIF图像文件等。...在发现异常时,Phoenix能够实时推送告警信息,并提供可视化系统进行配置、管理和查看。...
“phoenix phoneix-hbase1.2”标签表明此压缩包适用于Phoenix与HBase 1.2版本的集成,意味着可能需要关注兼容性问题,确保所有组件版本匹配。 总的来说,通过“phoenix-4.8.0-cdh5.8.0.tar.gz”压缩包,我们可以...
Programming Phoenix Productive Reliable Fast 英文epub
Phoenix是一个HBase的开源SQL引擎。你可以使用标准的JDBC API代替HBase客户端API来创建表,插入数据,查询你的HBase数据。 Phoenix是构建在HBase之上的SQL引擎。你也许会存在“Phoenix是否会降低HBase的效率?...
《Phoenix BIOS Editor 2.0.18.0:深入解析与应用》 Phoenix BIOS Editor 2.0.18.0是一款强大的BIOS编辑工具,由知名公司Phoenix Technologies开发,专为高级用户和系统管理员设计,用于自定义和优化计算机的启动...
在大数据处理领域,CDH(Cloudera Distribution Including Apache Hadoop)是一款广泛使用的开源大数据平台,它包含了Hadoop生态系统中的多个组件,如HDFS、YARN、MapReduce、Hive等。而Phoenix是一个针对HBase的SQL...
Phoenix BIOS Editor Pro v2.2.1.3 By Tidosho 最新版本.国外大神破解.无广告.无弹窗.已注册.把dat复制到主程序安装目录下即可.
CLABS_PHOENIX-4.3.0-1.clabs_phoenix1.0.0.p0.78-el6.parcel.sha1 manifest.json 对应hbase版本1.0 分割成5份
CLABS_PHOENIX-4.3.0-1.clabs_phoenix1.0.0.p0.78-el6.parcel.sha1 manifest.json 对应hbase版本1.0 分割成5份
《全志A20芯片机顶盒智能电视系统线刷工具——Phoenix Suit v1.0.6简体中文版详解》 在智能设备领域,尤其是针对机顶盒和智能电视等设备,系统的更新与维护是至关重要的。"Phoenix Suit v1.0.6全志A20芯片机顶盒...
- **卡农母头对Phoneix头**:用于特定设备间的连接,如转换盒。 3. **关键连接注意事项**: - **非平衡与平衡信号**:计算机的输入输出是非平衡信号,需要通过BI100转换为平衡信号,以减少噪声。 - **声道顺序**...
phoenix-client-hbase-2.2-5.1.2.jar
如果是Phoneix BIOS,进入Boot选项,将HardDrive调整至最前。这样能避免开机时无谓的光驱读取,提高启动速度。 其次,启用Quick Boot功能,可以在BIOS的Advanced BIOS Features下将其设为Enabled。这会使得BIOS在...