Apache Phoenix is an open source, massively parallel, relational database engine offering OLTP for Hadoop using Apache HBase as its backing end. Phoenix delivers a JDBC driver that hides the particulars of the noSQL store allowing users to create, delete, and alter SQL tables, views, indexes, and sequences; insert and delete rows singly and in bulk. Phoenix compiles queries into native noSQL store APIs rather than using MapReduce allowing the structure of low latency claims on top of noSQL stores.
Apache Phoenix is a comparatively new open source Java project that delivers a JDBC driver and SQL contact to Hadoop’s NoSQL database: HBase. It was shaped as an inside project at Salesforce and became a top-level Apache project in May 2014. Phoenix can help to have robust SQL programming services and like to be bright to use them with a powerful NoSQL database.
Architecture
Phoenix offer services by:
• compiling your SQL queries to native HBase scans
• conclusive the best start and stop for scan key
• scoring the parallel execution
• transporting the calculation to the data
• pushing the creates in where section to a server-side filter
• performing aggregate queries over server-side hooks
Phoenix delivers fast admission to large quantity of data. Full table scan of 100M rows typically completes in 20 seconds. This time come down to few milliseconds if query covers filter on key columns. For filters on non-key columns or non-leading key columns, it can enhance secondary indexes on these columns which tips to performance equal to filtering on key column by building copy of table with indexed column(s) part of key.
Features:
• Follows ANSI SQL standards
• It is brought as embedded JDBC driver for HBase data.
• Allows columns to be demonstrated as a multi-part row key or key/value cells.
• DDL support: CREATE TABLE, DROP TABLE, and ALTER TABLE for adding/removing columns.
• Full query provision with establish push down and optimal scan key construction.
• Versioned schema repository. Table metadata is kept in an HBase table and versioned, such that snapshot enquiries over prior versions will routinely use the right schema.
Installation:
Phoenix is an open source SQL skin for HBase. The normal JDBC APIs is used in its place of the regular HBase client APIs to create tables, insert data, and query your HBase data.
Prerequisites –
1. Java JDK (This demo uses JDK version 1.7.0_67)
Make certain the JAVA_HOME system environment variable ideas to the JDK. Make sure the java executable’s directory is in the PATH setting variable, i.e., %JAVA_HOME%bin.
2. Make certain, have installed Hbase on machine