掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务

Phoenix - Hbase与SQL

Phoenix是什么


简单来说,Phoenix 是一个可以让我们通过SQL的方式操作HBase数据库的框架。

HBase是一个NoSQL数据库,shell客户端只支持一些简单的操作,而且看起来容易晕。

例如下面这个图,返回的是一张表的所有数据:


是不是很难看,而且如果对HBase进行复杂查询的话,只能通过HBase的原生API编写查询程序,这样就比较麻烦。

使用Phoenix的话,就可以使用SQL来查询,便捷高效,同时还可以为HBase添加二级索引,提升查询性能,还有其他一些方便的特性。

Phoenix 支持通过编写JDBC代码来操作HBase,比原生API更方便。

用法示例


建表


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));

查看表


0: jdbc:phoenix:localhost> !tables


到 HBase 中查看:

hbase(main):041:0> list

结果信息:

TABLE
SYSTEM.CATALOG
SYSTEM.FUNCTION
SYSTEM.SEQUENCE
SYSTEM.STATS
US_POPULATION    
...

成功生成了 US_POPULATION 表。

添加数据


先新建一个测试数据文件 us_population.csv,内容如下:

NY,New York,8143197
CA,Los Angeles,3844829
IL,Chicago,2842518
TX,Houston,2016582
PA,Philadelphia,1463281
AZ,Phoenix,1461575
TX,San Antonio,1256509
CA,San Diego,1255540
TX,Dallas,1213825
CA,San Jose,912332

执行命令,把文件中的数据导入到数据库:

./psql.py localhost us_population.csv

查询表数据:

0: jdbc:phoenix:localhost> select * from US_POPULATION; 


示例


Phoenix自带了一个web统计的小示例,先执行命令把他导入进来:

bin/psql.py localhost examples/WEB_STAT.sql examples/WEB_STAT.csv

先执行了建表sql,然后导入数据文件csv。

查询表数据:

0: jdbc:phoenix:localhost> select * from WEB_STAT;


CORE、DB字段是CPU和数据库使用量。

根据DOMAIN分组,查看每组平均CUP、数据库使用情况:

SELECT DOMAIN, AVG(CORE) Average_CPU_Usage, AVG(DB) Average_DB_Usage
FROM WEB_STAT
GROUP BY DOMAIN
ORDER BY DOMAIN DESC;


查看各个domain的访问数,从高到低排序:

select domain,count(1) num 
from web_stat 
group by domain 
order by num desc;  


小结


Phoenix 的基础功能就是在 HBase 之上添加了 SQL 层,可以让我们更方便的使用 HBase。

Phoenix 有很多优秀特性,例如:二级索引、命名空间映射、视图、多租户、动态列、事务 ……

而且现在已经发展的非常完善,可以集成 Spark、Hive、Pig、MapReduce,还有 Flume 插件。

 性能与架构.jpg

原文来自:性能与架构

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

  • AI文本审核服务

    基于大模型能力构建的文本审核服务,能够高效精准地识别各类文本违规内容。与传统文本内容安全审核方案相比,具备更强大的语言理解与分析能力,能精准识别复杂、隐晦的违规内容,突破了传统模式的局限。

    基于大模型能力构建的文本审核服务,能够高效精准地识别各类文本违规内容。与传统文本内容安全审核方案相比,具备更强大的语言理解与分析能力,能精准识别复杂、隐晦的违规内容,突破了传统模式的局限。

  • AI图片审核服务

    基于图片审核大模型服务,能够全方位识别图片中的色情、性感、涉政、暴恐、违禁、宗教、引流广告、不良等违规内容,并支持返回大模型的审核结果。结合大模型和专家小模型,提供更细粒度的标签(如色情细分、具体行为、特定物体等),识别范围更广、标签更丰富。 综合效果最佳,适合对误判率、漏判率都有较高要求的场景。

    基于图片审核大模型服务,能够全方位识别图片中的色情、性感、涉政、暴恐、违禁、宗教、引流广告、不良等违规内容,并支持返回大模型的审核结果。结合大模型和专家小模型,提供更细粒度的标签(如色情细分、具体行为、特定物体等),识别范围更广、标签更丰富。 综合效果最佳,适合对误判率、漏判率都有较高要求的场景。

  • AIGC图片风险检测

    针对AIGC场景,检测AIGC生成的图片是否存在违规或者不宜传播的内容。建议AIGC生成的图片都进行该项检测。

    针对AIGC场景,检测AIGC生成的图片是否存在违规或者不宜传播的内容。建议AIGC生成的图片都进行该项检测。

  • AI生成图片鉴别

    检测图片是否疑似由AI生成合成、图片是否含有AI生成合成隐式标识(如果有隐式标识时支持返回图片AIGC元数据信息)。

    检测图片是否疑似由AI生成合成、图片是否含有AI生成合成隐式标识(如果有隐式标识时支持返回图片AIGC元数据信息)。

  • 诈骗风险感知检测

    根据身份证/手机号进行核验号码是否有涉险诈骗风险。

    根据身份证/手机号进行核验号码是否有涉险诈骗风险。

0512-88869195
客服微信二维码

微信扫码,咨询客服

数 据 驱 动 未 来
Data Drives The Future