Home PC Games Linux Windows Database Network Programming Server Mobile  
  Home \ Database \ Why HBase need to build SQL engine layer     - Use PDFBox parse PDF file (Linux)

- CentOS7 installation performance monitoring system (Server)

- NGINX Plus now fully supports HTTP / 2 (Server)

- Slice MyCAT common fragmentation rules of enumeration (Database)

- ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], [] (Database)

- VMware installed Linux system and JDK deployment (Linux)

- Linux shell string interception and stitching (Linux)

- 10 Best Swift Tutorial examples (Programming)

- C # how to generate a folder or file automatically rename (Programming)

- Grep how to find files based on file contents in UNIX (Linux)

- HDFS Distributed File System Resource Manager Developer summary (Server)

- Linux Tutorial ---- fundamentals of data traffic redirection (Linux)

- WebLogic administrator account and reset the password (Database)

- How to troubleshoot error java.lang.NoSuchMethodError (Programming)

- Ubuntu clean up unnecessary disk space usage (Linux)

- Three binary tree traversal (recursive, non-recursive traversal and Morris) (Programming)

- Why did not Oracle privileges can also log in with sysdba (Database)

- Command-line based tools for better alternatives (Linux)

- Linux environment to configure Apache + Django + wsgi (Server)

- How to test your MongoDB application upgrade? (Database)

  Why HBase need to build SQL engine layer
  Add Date : 2018-11-21      

Existing SQL level solutions are usually not scalable, so when the data becomes large when there may be obstacles. But this case, as has been the emergence of NoSQL great degree of ease, and with NoSQL technology improvement and maturity, this situation will be solved fundamentally.

We know that different from the relational database NoSQL thing is NoSQL does not use SQL as a query language, SQL interface provided as to why the NoSQL data storage HBase, the following reasons:

1. Use language such as SQL so easy to understand, so that people can more easily use HBase.

2. Use SQL such as a higher level language to write, reducing the amount of code written.

3. When the query is executed, data access and SQL runtime plus a layer of abstraction can be so heavily optimized between execution. For example, for the GROUP BY query, use HBase in co-processor, the polymerization can be carried out on the server, rather than on the client side, doing so would greatly reduce the amount of data transferred between the client and the server. Alternatively, you can execute in parallel GROUP BY client, which is based on the scope of Xingjian to truncate scanning achieved. The results will be returned via the parallel execution faster. All of these optimization without user involvement, you can simply execute the query.

Based on HBase SQL engine to achieve

There are some in the industry at this stage to try on HBase SQL engine layer, there are already some of the more stable and realistic solutions.

1.Hive integration HBase

Hive and HBase integration feature from Hive0.6.0 version has begun to appear, the use of both external API interface to communicate with each other, communication is mainly rely hive_hbase-handler.jar Kit (Hive Storage Handlers). Because there is a relatively large HBase version changes, so not every version of the existing HBase and Hive can integrate version, so in the course special attention is consistency between the two versions.


Phoenix Salesforce.com by the open source Apache HBase is built on top of a SQL intermediate layer that allows developers to execute SQL queries on HBase. Phoenix is completely written in Java code is on Github, and provides a client can be embedded JDBC driver. For simple queries 10w to 100w line is, Phoenix be better than Hive.


Kundera is a JPA2.0 object mapping framework compatible with NoSQL data stores. Kundera build on existing library, package the simple API, its main characteristics are:

1) support cross persistent data storage, which means that different users can use a single method of data storage to store and retrieve related entities.

2) can be well-managed affairs, while supporting EntityTransaction and Java Transaction API (JPA).

3) Compatible JPA2.0, strictly use JPA annotation object to the map data storage table.

4) currently supports NoSQL servers include: HBase, MongoDB, Redis, Neo4j like.

There are other solutions, such as: Lealone, hbase-sql, Impala, etc., or immature, or stop updating it, or has limitations. The readers are interested in, you can get to know yourself.

- Linux systems for entry-learning - Install Go language in Linux (Linux)
- Compile and install LNMP under CentOS 6.5 (Server)
- Macro Analysis Performance: PHP Performance Analysis and Experiment (Programming)
- C / C ++ language usage summary of const (Programming)
- C ++ casts New Standard Comments (Programming)
- 10 useful Linux command Interview Questions and Answers (Linux)
- Getting Started with Linux system to learn: how to install the kernel headers on Linux (Linux)
- sudo command scenario analysis (Linux)
- The basic principle of pointers in C ++ (Programming)
- Large computer network security policy Experience (Linux)
- MySQL5.6 based GTID master-slave replication (Database)
- Linux common network tools: batch scanning of nmap hosting service (Linux)
- PostgreSQL export table structure information (Database)
- 20 Linux commands interview questions and answers (Linux)
- Ubuntu 14.04 / Linux Mint 17 How to install the MintMenu 5.5.2 menu (Linux)
- To share some very useful Vim command (Linux)
- Gentoo: startx problem appears Failed to load module (Linux)
- Linux beginners to develop the seven habits (Linux)
- Use FFmpeg processing high quality GIF (Programming)
- Install JDK 1.7 + Eclipse in CentOS 6.4 in (Linux)
  CopyRight 2002-2022 newfreesoft.com, All Rights Reserved.