hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Water Guo <water....@antsdb.com>
Subject Re: AntsDB is released with MySQL compatibility for HBase
Date Tue, 08 May 2018 01:09:57 GMT
AntsDB can handle joins and nested queries. It has a query optimizer that can use the proper
index if it is available. It is almost one order of magnitude faster than querying HBase if
the the query goes across multiple tables, i.e. a join. It is able to achieve this by using
the local storage as the cache. AntsDB will be more than happy doing all the crazy lookups
and joins locally than bothering HBase. Just imaging a foreign key lookup, it only takes AntsDB
1000 cpu cycles, while it takes about 1ms for HBase to do it, if you are lucky.

Nevertheless, AntsDB is not designed to scan billions of records to produce a very complex
report. I believe big data query is already a resolved problem completed by Spark, Spark SQL,
MapReduce or alike. My goal is to reduce the latency to the minimum to query the hot data.
In my test, AntsDB performs at the same level of MySQL with joins going across 5 tables with
millions of rows falls into the scan range conditions. For scans larger than this, Spark is
the answer. 

In the worse case, if the query exceeds the design capability so that it seems hanging up,
it always can be killed using the MySQL KILL QUERY statement.

~water

> On May 7, 2018, at 7:17 PM, 张铎(Duo Zhang) <palomino219@gmail.com> wrote:
> 
> Mysql compatible is great.
> 
> Since you mention that AntsDB is designed for OLTP, but I think actually
> you can not prevent user writes an analytical SQL and throw it to you, how
> do you deal with these SQLs?
> 
> Water Guo <water.guo@antsdb.com>于2018年5月8日 周二03:02写道:
> 
>> Sorry, just realize it has dependence on MySQL JDBC driver.
>> 
>>> On May 7, 2018, at 2:58 PM, Water Guo <water.guo@antsdb.com> wrote:
>>> 
>>> Not it is not. AntsDB has no dependence on MySQL code. It is written in
>> Java and uses a couple of open source libraries.
>>> 
>>>> Sounds great Water. Lets take it for a spin. Quick question, why the
>> "GNU
>>>> Affero General Public License, version 3" Is it up from mysql? Thanks,
>>>> S
>>> 
>>> On Mon, May 7, 2018 at 10:09 AM, Water Guo <water.guo@antsdb.com> wrote:
>>> 
>>>> Dear HBase Community,
>>>> 
>>>> I’d like to take this opportunity to introduce my open source project
>>>> AntsDB. It is a database virtualization software that brings MySQL
>>>> compatibility to HBase. It means you can use any MySQL bindings such as
>>>> JDBC, ODBC, PHP, Perl to manipulate data in HBase. It supports most
>> MySQL
>>>> DDLs and all DMLs, transaction control, table locks, row locks etc. Up
>> to
>>>> date applications such as MySQL console, MySQL command lines,
>> BenchmarkSQL,
>>>> MediaWiki, SonarQube, DBeaver, SquirrelSQL and many others can run
>> directly
>>>> on HBase using AntsDB layer. The project is hosted at
>>>> https://github.com/waterguo/antsdb.
>>>> 
>>>> AntsDB is designed to support high concurrency, low latency
>> applications.
>>>> It uses local storage as cache so it can further reduce the latency of
>>>> HBase. We have benchmarked AntsDB using YCSB. The result is at
>>>> http://www.antsdb.com/?p=171.
>>>> 
>>>> People always ask me how it is different from Phoenix. While Phoenix is
>>>> building a powerful SQL layer for HBase, we want to focus on backward
>>>> compatibility. We want to have applications built for MySQL can be used
>>>> directly on HBase. And people who are familiar with traditional
>> relational
>>>> database can adopt HBase/Hadoop stack with ease.
>>>> 
>>>> I’d be very glad if you find the project is useful and your feedback is
>>>> very welcome.
>>>> 
>>>> Thanks
>>>> -water
>>>> 
>>> 
>> 
>> 

Mime
View raw message