HBase 5、Phoenix使用
1、建表
执行建表语句 $ ./psql.py localhost:2181 ../examples/stock_symbol.sql 其中../examples/stock_symbol.sql是建表的sql语句 CREATE TABLE IF NOT EXISTS WEB_STAT ( HOST CHAR(2) NOT NULL, DOMAIN VARCHAR NOT NULL, FEATURE VARCHAR NOT NULL, DATE DATE NOT NULL, USAGE.CORE BIGINT,--usage指定列族名 USAGE.DB BIGINT,--usage指定列族名 STATS.ACTIVE_VISITOR INTEGER CONSTRAINT PK PRIMARY KEY (HOST, DOMAIN, FEATURE, DATE)--指定主键 );
2、导入数据
命令:./psql.py -t WEB_STAT localhost:2181 ../examples/web_stat.csv PS:其中 -t 后面是表名, ../examples/web_stat.csv 是csv数据(注意数据的分隔符需要是逗号)。
3、查询数据
首先使用sqlline查看(截图为部分列的数据),查询表名不区分大小写。
查询1、查询全部记录
语句:select * from web_stat;
查询2、查询记录总条数
语句:select count(1) from web_stat;
查询3、查询结果分组排序
语句:select domain,count(1) as num from web_stat group by domain order by num desc;
查询4、求平均值
语句:select avg(core) from web_stat;
查询5、多字段分组,排序,别名。
语句:select domain,count(1) as num,avg(core) as core,avg(db) as db from web_stat group by domain order by num desc;
查询6、查询日期类型字段
语句:select host,domain,date from web_stat where TO_CHAR(date)='2013-01-15 07:09:01.000';
查询7、字符串,日期类型转换
语句:select TO_DATE('20131125','yyyyMMdd') from web_stat;
Ps:输入的日期字符串会被转换为hbase表date的日期类型。
总结:Phoenix还支持了很多函数和sql语法,在这里不再一一列举。更多请参考Phoenix支持部分
4、Phoenix基本shell命令
PS:以下,可能有部分命令在Phoenix更高版本中已失效,改为其他命令代替,请注意。
0: jdbc:phoenix:localhost> help !all Execute the specified SQL against all the current connections !autocommit Set autocommit mode on or off !batch Start or execute a batch of statements !brief Set verbose mode off !call Execute a callable statement !close Close the current connection to the database !closeall Close all current open connections !columns List all the columns for the specified table !commit Commit the current transaction (if autocommit is off) !connect Open a new connection to the database. !dbinfo Give metadata information about the database !describe Describe a table !dropall Drop all tables in the current database !exportedkeys List all the exported keys for the specified table !go Select the current connection !help Print a summary of command usage !history Display the command history !importedkeys List all the imported keys for the specified table !indexes List all the indexes for the specified table !isolation Set the transaction isolation for this connection !list List the current connections !manual Display the SQLLine manual !metadata Obtain metadata information !nativesql Show the native SQL for the specified statement !outputformat Set the output format for displaying results (table,vertical,csv,tsv,xmlattrs,xmlelements) !primarykeys List all the primary keys for the specified table !procedures List all the procedures !properties Connect to the database specified in the properties file(s) !quit Exits the program 此命令在Phoenix4.3版本已改为!exit !reconnect Reconnect to the database !record Record all output to the specified file !rehash Fetch table and column names for command completion !rollback Roll back the current transaction (if autocommit is off) !run Run a script from the specified file !save Save the current variabes and aliases !scan Scan for installed JDBC drivers !script Start saving a script to a file !set Set a sqlline variable