Phoenix
文章平均质量分 57
Cky079
主流
展开
-
phoenix 5.0 二级索引表 与 主表 数据量不一致的情况
前言:select发现count没有值,但是实际上表中有数据的异常情况,是由于二级索引表 与 主表不一致导致的。主表是可变的,日常也是通过phoenix进行upsert的数据,其他几个类似的二级索引表都是正常的,只有这张二级索引表的早期数据缺失,目前原因不明(曾经历过: 停电、磁盘损坏文件丢失与转移)。-- 走二级索引表查询,无数据SELECT SERVER_DATE,COUNT(1) FROM T_ODS_XXX WHERE SERVER_DATE<'2020-01-10' GROUP原创 2021-06-23 15:34:01 · 544 阅读 · 1 评论 -
phoenix 5.0 CURSOR 游标(二) 不得不说的坑
这个坑很深沉,官方文档太简短了。这个坑是由:select语句引起的。也就是声明游标时的查询语句,如下: 拉开序幕:这是一张很简单的表test,id是row key,一共15条数据。 接着,我们使用游标遍历这个表数据。public static void main(String[] args) throws SQLException { ...原创 2018-12-08 18:24:59 · 702 阅读 · 0 评论 -
phoenix 查询 二级索引表
-- 查询索引表,字段使用双引号select * from IDX_T_EXTENSION_ALL_DATAS_COUNTRY where "0:COUNTRY"='England' limit 10;原创 2018-12-12 19:32:21 · 1206 阅读 · 0 评论 -
phoenix 查询记录(内存不足、有趣的等效SQL、exists)
-- hbase两张大表join查询,存在性能与逻辑的问题(特别是分页)。-- 不同数据,需要在进入Hbase前进行整合,大数据只存在一张表。-- 两张 200W+的表join,内存不足报错select t1.seq_id,t2.country from T_EXTENSION_SHOW t1 inner join T_EXTENSION_LOGIN t2 on(t1.sho...原创 2018-12-12 19:37:15 · 1094 阅读 · 0 评论 -
phoenix 减少二级索引表的一种方式
二级索引表,在对原始表进行数据增加时,耗时增加。没有建立二级索引表时,耗时:1.7分钟4.8分钟 建立了9个简单的二级索引表,耗时:5.6分钟43分钟10分钟 16.4分钟从上面的实验结果,可以很明显看出耗时增加了好几倍。 但是页面存在多条件的查询,确实需要这些索引表。那我们是否有办法减少索引表数量呢? T_EXTENSION_ALL_DAT...原创 2018-12-14 09:58:44 · 514 阅读 · 0 评论 -
phoenix 5.0 CURSOR 游标
都在一起,讲几个点:1、phoenix使用游标实例2、游标对SQL的支持情况3、phoenix游标与map reduce感受 1、phoenix使用游标实例官网地址:https://phoenix.apache.org/cursors.html官网示例很清晰明了,只不过使用存在几处问题。1、将execute() 改为 executeQuery() 这样rse...原创 2018-12-07 15:26:06 · 1902 阅读 · 0 评论 -
phoenix5.0 查询、删除 超时问题
遇到的查询超时情况:Error: org.apache.phoenix.exception.PhoenixIOException: Failed after attempts=16, exceptions:Fri Dec 14 15:39:31 CST 2018, null, java.net.SocketTimeoutException: callTimeout=60000, callDu...原创 2018-12-14 16:52:15 · 3706 阅读 · 0 评论 -
phoenix 5.0 查询二级索引表错误 USE_STATS_FOR_PARALLELIZATION
查询二级索引表报错,但是不影响执行结果。经过一段时间,重启了hbase,这种错误就消失了。 WARN iterate.BaseResultIterators: Unable to find parent table "T_EXTENSION_ALL_DATAS" of table "IDX_T_EXTENSION_ALL_DATAS_COUNTRY" to determine USE_S...原创 2018-12-14 17:12:22 · 1421 阅读 · 3 评论 -
phoenix工具类 与 使用例子
phoenix工具类package com.hbase.util;import com.util.PropertiesUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.sql.*;import java.util.Properties;import java.util.UUID;...原创 2019-03-05 11:07:09 · 1557 阅读 · 0 评论 -
phoenix 5.0 CURSOR 游标(三) 不得不说的坑
这个坑,不是phoenix本身的问题。只有在多线程并行的情况下才会发生。会出现各种错误,比如:org.apache.phoenix.exception.PhoenixIOException: nullorg.apache.phoenix.schema.ColumnNotFoundException: ERROR 504 (42703): Undefined column. ...原创 2019-03-15 19:37:59 · 1213 阅读 · 0 评论 -
Phoenix 执行错误 ERROR 604 (42P00): Syntax error. Mismatched input. Expecting "RPAREN", got "s"
org.apache.phoenix.exception.PhoenixParserException: ERROR 604 (42P00): Syntax error. Mismatched input. Expecting "RPAREN", got "s" at line 1, column 197.使用phoenix插入数据,有一次,遇到了上面描述的这种错误。事情是这样的,有...原创 2019-03-13 15:47:20 · 7684 阅读 · 0 评论 -
phoenix5.0 查询单引号内容
通常内容存在单引号,使用第一种 \'转义即可查询出内容。对于第二种极端情况,需要\\\'才行。原创 2019-07-23 14:50:19 · 472 阅读 · 0 评论 -
phoenix 5.0 IN 语法走二级索引遇到的bug
两条基本相同的SQL:SELECT SEQ_ID,SHOW_DATE,EMAIL,TIME_SPEND,CAM_SITE,TOKEN_EARNED,REVENUE,TIPS_SENT,TOY FROM T_EXTENSION_SHOW WHERE SHOW_DATE='2018-11-26' AND SEQ_ID IN(2999909, 2999908, 2999907, 2999906...原创 2018-12-03 15:16:00 · 1590 阅读 · 0 评论 -
Hadoop 简单概念记录
Hadoop的核心,HDFS 与 MapReduceMapReduce 适合一次写入、多次读取数据的应用,关系型数据库则更适合持续更新的数据。MapReduce 的高级查询语言(如:phoenix、Pig、Hive )MapReduce 的核心特征,数据本地化(data locality)。因此获得良好的性能,并节省网络带宽。Apache Mahout 是一个在Hadoop上运行的机器...原创 2018-12-08 10:17:10 · 193 阅读 · 0 评论 -
phoenix psql.py 执行sql遇到的错误
org.apache.phoenix.exception.PhoenixParserException: ERROR 601 (42P00): Syntax error. Unexpected char: ' ' 原因很简单: 从其他编辑器,copy的代码,代码中空格存在一些问题。我们再次编辑,手敲空格即可。2~4个都行。...原创 2018-11-07 15:33:27 · 2099 阅读 · 0 评论 -
phoenix 联合主键的探索
环境:phoenix 5.0 hbase2.0连接上phoenix,建一个测试表:create table test12(email varchar not null,id integer not null,name varchar not null,age integer,aihao varchar CONSTRAINT PK PRIMARY KEY (EMAIL,id,name));...原创 2018-11-13 20:33:05 · 4089 阅读 · 2 评论 -
phoenix 5.0 创建二级索引后新增、删除数据报错
折腾了半天:报错内容:Error: org.apache.hadoop.hbase.client.RetriesExhaustedWithDetailsException: Failed 1 action: org.apache.phoenix.hbase.index.builder.IndexBuildingFailureException: Failed to build index...原创 2018-11-13 21:19:23 · 2572 阅读 · 2 评论 -
Phoenix SEQUENCE 序列
phoenix 5.0创建序列:CREATE SEQUENCE SEQ_T_TEST_ID START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 CYCLE CACHE 100;START WITH: 从1开始NCREMENT BY: 每次增长1MINVALUE 、MAXVALUE :最小值、最大...原创 2018-11-24 14:04:37 · 660 阅读 · 0 评论 -
phoenix 查询优化 40秒变为0.02秒
phoenix 5.0 数据量不多,就是100万,测试一般是够用的。0: jdbc:phoenix:192.168.199.154> select count(1) from T_EXTENSION_ALL_DATAS_SHOW;+-----------+| COUNT(1) |+-----------+| 999999 |+-----------+1...原创 2018-11-24 17:59:31 · 11114 阅读 · 2 评论 -
phoenix 驱动错误
版本是phoenix5.0官网jdbc连接示例,驱动这块,埋了一个雷。import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.PreparedStatement;import ja...原创 2018-11-23 15:35:25 · 1750 阅读 · 0 评论 -
phoenix 有时候不走二级索引 会 更快 /*+ NO_INDEX*/
0: jdbc:phoenix:192.168.199.154> select t1.seq_id as seq_id from (select seq_id,toy from T_EXTENSION_SHOW where show_date='2018-11-24' and email='wjc@45555.com') t1 where t1.toy='ambi' and t1.cam_...原创 2018-12-04 10:36:07 · 1895 阅读 · 0 评论 -
phoenix 查询报错RemoteWithExtrasException
Caused by: org.apache.hadoop.hbase.ipc.RemoteWithExtrasException(org.apache.hadoop.hbase.DoNotRetryIOException): org.apache.hadoop.hbase.DoNotRetryIOException: Error when adding cache: : java.sql.SQL...原创 2018-11-26 18:52:18 · 3713 阅读 · 1 评论 -
phoenix 排序优化,order by
0: jdbc:phoenix:192.168.199.154> select email from T_EXTENSION_ALL_DATAS_LOGIN where login_date='2018-11-24' order by email desc limit 1;+-----------------+| EMAIL |+-----------------...原创 2018-11-27 15:15:28 · 4018 阅读 · 2 评论 -
phoenix 分页limit offset
offset 这个是phoenix新版本提供的属性,但是存在性能问题,大数据的情况下是不推荐的。 我本来想试试offset,随着数量增加,耗时会如何增加。但这两个不同的测试sql,让我有了新发现:两条语句的执行计划:0: jdbc:phoenix:192.168.199.154> explain select login_date,email from T_EXTENS...原创 2018-11-27 19:07:43 · 3838 阅读 · 4 评论 -
Phoenix 创建二级索引,字段顺序问题
T_SHOW 表如下,其中SHOW_DATE、EMAIL是Row key: 我需要这样查询:select seq_id from T_SHOW where show_date='2018-11-24' and cam_site='cam4' order by seq_id desc limit 1; 所以我增加了这样的主键:CREATE INDEX IDX_T_SHOW...原创 2018-11-27 20:27:35 · 1833 阅读 · 1 评论 -
phoenix 大表 小表 顺序 join查询
粗糙的全表扫描例子:T_EXTENSION_ALL_DATAS_LOGIN 大表,200W+数据。T_EXTENSION_ALL_DATAS_SHOW 小表,几十条数据。 select T1.LOGIN_DATE,T1.COUNTRY,T1.IP,T1.BROWSER,T1.USER_NAME,T1.GENDER,T1.EMAIL,T2.TIME_SPEND,T2.CAM_SI...原创 2018-11-10 17:36:04 · 3679 阅读 · 1 评论