昨天测试 基于Phoenix 的JDBC数据导入,同样的表结构:
create table TAB_PS_XDR ( K VARCHAR NOT NULL PRIMARY KEY, A VARCHAR, B VARCHAR, C VARCHAR, D VARCHAR, V VARCHAR) COMPRESSION='SNAPPY',SALT_BUCKETS=12,TTL='7200',VERSIONS='5'; create index CALLING_NUMBER on TAB_PS_XDR (A); create index CALLED_NUMBER on TAB_PS_XDR (B); create index IMSI on TAB_PS_XDR (C); create index IMEI on TAB_PS_XDR (D);
执行下面的语句:
UPSERT INTO TAB_PS_XDR VALUES('aaaaaaacbaa11','', '','','1','1'); UPSERT INTO TAB_PS_XDR VALUES('bbaaaabbaa11','', '','','1','1'); UPSERT INTO TAB_PS_XDR VALUES('ccaaaaccbaa11','', '','','1','1'); UPSERT INTO TAB_PS_XDR VALUES('dDaaaadcbaa11','', '','','1','1');
之后执行 select count(*) from tab_px_xdr ; 发现条数没有变化,插入失败。
但是将语句修改为:
UPSERT INTO TAB_PS_XDR VALUES('aaaaaaacbaa11','', '','1','','1'); UPSERT INTO TAB_PS_XDR VALUES('bbaaaabbaa11','', '','1','','1'); UPSERT INTO TAB_PS_XDR VALUES('ccaaaaccbaa11','', '','1','','1'); UPSERT INTO TAB_PS_XDR VALUES('dDaaaadcbaa11','', '','1','','1');
继续查询结果,发现插入正常。比较郁闷。
相关推荐
《Phoenix构建二级索引——深度解析与实践指南》 在大数据处理领域,Phoenix以其高效、易用的特性,成为与Apache HBase结合的SQL查询引擎的首选。本指南将深入探讨如何在已有的Hbase环境中安装部署Phoenix,并利用...
二是建立二级全文索引表与Hbase原始数据表的关联外键,使得全文检索条件下推到Elasticsearch存储引擎后Elasticsearch存储引擎全文索引表的查询结果为Hbase原始数据表的rowkey。 该方法的优点在于可以快速地对Hbase...
1. **Phoenix架构**:Phoenix是建立在JDBC之上的,它将SQL查询转化为HBase的原生操作,通过优化器和执行引擎实现高效的查询性能。Phoenix使用元数据存储来跟踪表和索引的信息,这些元数据存储在HBase表中。 2. **...
• 全局索引是Phoenix二级索引的一种 • 全局索引的本质是通过一张单独的HBase存储索引数据,用空间换时间加速查询 • 查询路径 • 如果查询的列都在索引表中, 只需要查询一次索引表 • 如果查询的列只有部分在...
Phoenix将SQL语句转换为Hbase的操作,使得非Hbase熟练的开发人员也能轻松地操作分布式NoSQL数据库。要使用Phoenix,你需要在你的项目中添加Phoenix的JDBC驱动,并通过标准的JDBC API建立连接,创建Statement或...
Spring Data JPA会自动为我们生成对应的SQL并调用Phoenix API。 为了测试我们的集成,我们可以创建一个Controller来调用Repository的方法,并返回结果: ```java import org.springframework.beans.factory....
3. 品牌兼容性:PhoenixTool273覆盖了多个主流品牌,这意味着用户无需为不同品牌设备寻找不同的BIOS修改工具。这种广泛的兼容性极大地简化了工作流程,提高了工作效率。 4. 安全与风险:尽管PhoenixTool273提供了...
综上所述,Phoenix不仅为HBase提供了高效的SQL接口,还通过一系列的二级索引机制解决了非rowKey条件查询的性能问题。开发者可以根据不同的应用场景选择合适的索引类型,从而最大化查询性能,同时也要注意索引管理与...
2. **索引管理**:Phoenix提供了二级索引功能,允许用户创建覆盖索引,以加速特定查询。这在处理大量数据时非常有用,因为可以直接定位到所需数据,而无需扫描整个表。 3. **并发与性能优化**:Phoenix通过并行执行...
Apache Phoenix 是一个开源的SQL查询引擎,它在Apache HBase之上提供了一层...在Hadoop生态系统中,Phoenix为企业级大数据分析提供了便利。正确安装和配置后,开发人员和数据分析师可以充分利用其特性来提升工作效率。
同时,复杂的SQL查询可能会导致大量的HBase扫描,需要合理设计表结构和索引来避免性能瓶颈。 总的来说,"phoenix-hbase-1.4-4.16.1-bin"为HBase引入了SQL的便利性,使得大数据分析更为高效。但使用时也需注意其与...
当数据插入、更新或删除时,Phoenix会自动更新相关的二级索引。 #### 八、未来规划 最后,Jesse还提到了Phoenix的发展路线图,包括对二级索引功能的持续优化以及其他新特性的开发计划。随着HBase和Phoenix的不断...
Phoenix将SQL语句转化为HBase的操作,支持索引、视图、触发器等特性。在5.1.2版本中,Phoenix优化了查询性能,提升了对复杂JOIN操作的处理能力,同时也增强了对JDBC和ODBC的兼容性,使得更多的应用可以无缝接入。 3...
默认值对存在默认值设定的业务表,添加全局索引,完美支持,此时,不要使用不可变索引(IMMUTABLE_ROWS=true)不可变索引只会进行插入数据,不会更新数
创建二级索引是Phoenix的一个重要特性,它为HBase的数据提供了额外的检索路径。在HBase中,数据默认按行键排序,但通过Phoenix的二级索引,我们可以根据列族中的某一列或多列创建索引,实现快速的多维度查询。这在...
尤其在处理简单查询场景时,Phoenix具备诸多优势,包括二级索引支持、SQL编译成HBase原生scan、在数据层进行计算、下推过滤条件、利用统计信息优化查询计划以及提供skip scan功能。这些特性使得它在大数据领域中备受...
1. **SQL查询编译为HBase扫描**:Phoenix将SQL语句转换为针对HBase的高效扫描操作,提高了查询效率。 2. **优化Rowkey扫描**:确定最佳的Rowkey扫描范围,有效减少不必要的数据读取。 3. **并行扫描执行**:支持多...
5. **索引管理**:Phoenix支持两种类型的索引:覆盖索引(Covering Indexes)和全局索引(Global Secondary Indexes)。覆盖索引允许查询仅使用索引列而无需回表,提高查询速度。全局索引则是为表创建独立的、完整的...
2. **索引管理**:Phoenix支持创建和维护B-Tree索引,以优化查询性能。 3. **JDBC接口**:提供标准的JDBC驱动,使得任何支持JDBC的应用程序都可以轻松连接到HBase。 4. **SQL支持**:支持大部分标准的SQL语法,如...
Phoenix,作为一个开源的SQL查询引擎,旨在为Apache HBase提供高性能的SQL接口。它允许用户通过标准的JDBC驱动程序来查询和操作HBase数据,使得非SQL背景的开发者也能方便地使用HBase。在大数据领域,Phoenix作为...