Apache Phoenix Improves HBase Support
Written by Kay Ewbank   
Thursday, 21 June 2018

Apache Phoenix 4.14 has been released with support for HBase 1.4 along with support for GRANT and REVOKE. Phoenix adds support for SQL-based OLTP and operational analytics for Apache Hadoop using Apache HBase as its backing store. It also provides integration with other projects in the Apache ecosystem such as Spark, Hive, Pig, Flume, and MapReduce.



Phoenix is an open source SQL skin for HBase. You use it via standard JDBC APIs instead of the HBase client APIs to create tables, insert data, and query your HBase data. It compiles SQL queries to native HBase scans, and can be used to access data stored and produced in other Hadoop products such as Spark, Hive, Pig, Flume, and MapReduce. Phoenix uses secondary indexes to make queries faster, and makes use of parallel processing by executing aggregate queries through server-side hooks (called co-processors). This means queries are executed on the nodes where data is stored, greatly reducing the need to send data over the network.

The main improvement to the new version is support for HBase 1.4. HBase 1.4 was released at the beginning of the year with new shaded client intended to improve compatibility, along with improvements to the REST client.

The new version of Phoenix also includes support for a number of extra CDH versions, specifically CDH 5.11.2, 5.12.2, 5.13.2, and 5.14.2. CDH is Cloudera’s open source platform distribution that includes Apache Hadoop and related applications. 

Another improvement to Phoenix is the addition of support for the SQL GRANT and REVOKE commands to grant or revoke permissions at the table, schema or user level. Permissions in Phoenix are managed by HBase.

Other improvements include avoiding server retries for mutable indexes; and support for the NOT NULL constraint for any columns of immutable tables.  Indexes for transactional tables can be managed purely on the client side, and the better handling of local index regions has been added for queries. Specifically, Phoenix will now prune the regions that need to be scanned over, based on the WHERE conditions against the data table. The example given is that with a multi-tenant table, the only regions that need to scanned would be those prefixed by the tenant ID. This should help prevent large numbers of remote procedure calls over large tables that use local indexes.



More Information

Phoenix Website

Related Articles

HBase 1.4 With New Shaded Client

HBase Adds MultiWAL Support 

Hadoop 3 Adds HDFS Erasure Coding

Hadoop 2.9 Adds Resource Estimator

Hadoop Adds In-Memory Caching

Hadoop SQL Query Engine Launched

Hadoop 2 Introduces YARN

First Hybrid Open-Source RDBMS Powered By Hadoop and Spark

HBase 1.0 Released 

Google's Cloud Spanner To Settle the Relational vs NoSQL Debate?

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.


Machine Learning Scholarship Program On Udacity

The deadline for applying for a scholarship to one of Udacity's most popular Nanodegree Programs has been extended to July 12, 2021. Apply now and gain exclusive access to a Foundations Course that co [ ... ]

JetBrains Finds Spreadsheets Still Favorites For Big Data

Given the fantastic tools available for big data analysis, the latest survey by JetBrains has found that the favorite statistical tool for analysis among respondents was.... the spreadsheet. Who'd hav [ ... ]

More News





or email your comment to: comments@i-programmer.info

Last Updated ( Thursday, 21 June 2018 )