Giter Site home page Giter Site logo

waterguo / antsdb Goto Github PK

View Code? Open in Web Editor NEW
104.0 8.0 28.0 1.1 GB

AntsDB is a low latency, high concurrency, MySQL compliant SQL layer for HBase

Home Page: www.antsdb.com

License: GNU Lesser General Public License v3.0

Shell 0.05% ANTLR 0.80% Java 99.00% Groovy 0.14%
database newsql hadoop hbase distributed-database mysql

antsdb's Introduction

Introduction
------------

AntsDB is a low latency, high concurrency virtual SQL layer for HBase. Unlike the other SQL on Hadoop solutions, AntsDB is aiming at making Hadoop a powerful OLTP database by providing complex transaction management capability, complete locking mechanism, sub millisecond latency and full compatibility with MySQL.


Features
--------
- ACID compliant. AntsDB supports read-committed isolation. Transaction can cross multiple table and multiple rows with automatic or manual commit/rollback. Updates is versioned using MVCC. Both optimistic locking and pessimistic locking are supported at the granularity of either table or row level.
- Core DML/DDL in MySQL flavour
- Secondary index.
- JDBC, ODBC, PHP, Python are supported using MySQL drivers
- Kerberos as the security mechanism
- Work with the popular MySQL frond-end such as MySQL Console, PhpMyAdmin, DBeaver, Squirrel SQL etc.

Requirements
------------
AntsDB requires Java 1.8. It runs on Linux, Windows and MacOS. It needs at leat 1G memory and 10G storage. 

Installation
------------
AntsDB executable can be either built using the source code or downloaded directly from www.antsdb.com. For details, please refer to the installation page on our wiki.

Security
--------
AntsDB shares the same security mechanism, Kerberos, with Hadoop/HBase. In order to enable the security. Your Hadoop/HBase cluster must be configure properly with Kerberos. When security is not enabled, user can log into AntsDB use any combination of user name and password.

Compatibility
-------------
AntsDB is wire compatible with MySQL. Most MySQL applications can run directly without any changes. 


Contact Us
----------
Please visit our website www.antsdb.com

M

antsdb's People

Contributors

dependabot[bot] avatar waterguo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

antsdb's Issues

Requirement and Installation

Hi,
Curious to try antsdb. I use binary download. My macbook meets the h/w requirement. When i run it's failed with the following error log:

02 12:16:23,128 [WrapperSimpleAppMain] ERROR server.SaltedFish - failed to start
java.lang.NullPointerException
	at com.antsdb.saltedfish.storage.HBaseStorageService.open(HBaseStorageService.java:156)
	at com.antsdb.saltedfish.nosql.Humpback.initStorage(Humpback.java:296)
	at com.antsdb.saltedfish.nosql.Humpback.init(Humpback.java:249)
	at com.antsdb.saltedfish.nosql.Humpback.open(Humpback.java:195)
	at com.antsdb.saltedfish.sql.Orca.<init>(Orca.java:132)
	at com.antsdb.saltedfish.server.SaltedFish.startDatabase(SaltedFish.java:137)
	at com.antsdb.saltedfish.server.SaltedFish.start(SaltedFish.java:54)
	at com.antsdb.saltedfish.server.SaltedFish.run(SaltedFish.java:133)
	at com.antsdb.saltedfish.server.SaltedFishMain.run(SaltedFishMain.java:83)
	at com.antsdb.saltedfish.server.SaltedFishMain.main(SaltedFishMain.java:44)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
	at java.base/java.lang.Thread.run(Thread.java:834)

Any other requirement other than installing hadoop and hbase before setup antsdb?

Random error can not connect to antsbd

Randomly can not connect to antsdb from dbeaver especially after cancelling add index that takes long time.

ERROR server.SaltedFish - failed to start
com.antsdb.saltedfish.storage.OrcaHBaseException: hbase is currently linked to a different antsdb instance 1114301489047
	at com.antsdb.saltedfish.storage.HBaseStorageService.init(HBaseStorageService.java:248)
	at com.antsdb.saltedfish.storage.HBaseStorageService.open(HBaseStorageService.java:153)
	at com.antsdb.saltedfish.nosql.Humpback.initStorage(Humpback.java:296)
	at com.antsdb.saltedfish.nosql.Humpback.init(Humpback.java:249)
	at com.antsdb.saltedfish.nosql.Humpback.open(Humpback.java:195)
	at com.antsdb.saltedfish.sql.Orca.<init>(Orca.java:132)
	at com.antsdb.saltedfish.server.SaltedFish.startDatabase(SaltedFish.java:137)
	at com.antsdb.saltedfish.server.SaltedFish.start(SaltedFish.java:54)
	at com.antsdb.saltedfish.server.SaltedFish.run(SaltedFish.java:133)
	at com.antsdb.saltedfish.server.SaltedFishMain.run(SaltedFishMain.java:83)
	at com.antsdb.saltedfish.server.SaltedFishMain.main(SaltedFishMain.java:44)

antsdb-check

antsdb home: /Applications/antsdb
antsdb configuration: /Applications/antsdb/conf/conf.properties
storage: hbase
hbase config: /Applications/hbase-2.1.4/conf/hbase-site.xml
zookeeper quorum: localhost
quorum is connected

Tried to run hbase-relink does not help. I can no longer connect to dbeaver.

Part of the sql function does not support

Part of the sql function does not support,E.g:concat after like

com.antsdb.saltedfish.sql.OrcaException: Invalid SQL. Offending token: concat
at com.antsdb.saltedfish.sql.Session.parse(Session.java:214)
at com.antsdb.saltedfish.sql.Session.run(Session.java:113)
at com.antsdb.saltedfish.server.mysql.QueryHandler.query(QueryHandler.java:46)
at com.antsdb.saltedfish.server.mysql.MysqlSession.query(MysqlSession.java:305)
at com.antsdb.saltedfish.server.mysql.MysqlSession.run0(MysqlSession.java:170)
at com.antsdb.saltedfish.server.mysql.MysqlSession.run(MysqlSession.java:117)
at com.antsdb.saltedfish.server.SimpleSocketWorker.run0(SimpleSocketWorker.java:90)
at com.antsdb.saltedfish.server.SimpleSocketWorker.run(SimpleSocketWorker.java:61)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.antlr.v4.runtime.misc.ParseCancellationException
at org.antlr.v4.runtime.BailErrorStrategy.recover(BailErrorStrategy.java:75)
at com.antsdb.saltedfish.lexer.MysqlParser.like_expr(MysqlParser.java:12236)
at com.antsdb.saltedfish.lexer.MysqlParser.expr(MysqlParser.java:11708)
at com.antsdb.saltedfish.lexer.MysqlParser.expr(MysqlParser.java:11649)
at com.antsdb.saltedfish.lexer.MysqlParser.where_clause(MysqlParser.java:7579)
at com.antsdb.saltedfish.lexer.MysqlParser.select_or_values(MysqlParser.java:7294)
at com.antsdb.saltedfish.lexer.MysqlParser.select_stmt(MysqlParser.java:7010)
at com.antsdb.saltedfish.lexer.MysqlParser.from_subquery(MysqlParser.java:8532)
at com.antsdb.saltedfish.lexer.MysqlParser.from_item(MysqlParser.java:8179)
at com.antsdb.saltedfish.lexer.MysqlParser.from_clause(MysqlParser.java:7433)
at com.antsdb.saltedfish.lexer.MysqlParser.select_or_values(MysqlParser.java:7285)
at com.antsdb.saltedfish.lexer.MysqlParser.select_stmt(MysqlParser.java:7010)
at com.antsdb.saltedfish.lexer.MysqlParser.sql_stmt(MysqlParser.java:700)
at com.antsdb.saltedfish.lexer.MysqlParser.script(MysqlParser.java:363)
at com.antsdb.saltedfish.sql.mysql.MysqlParserFactory.parse(MysqlParserFactory.java:120)
at com.antsdb.saltedfish.sql.mysql.MysqlParserFactory.parse(MysqlParserFactory.java:54)
at com.antsdb.saltedfish.sql.Session.parse(Session.java:202)
... 10 more
Caused by: org.antlr.v4.runtime.NoViableAltException
at com.antsdb.saltedfish.lexer.MysqlParser.like_expr(MysqlParser.java:12230)

why can you archive High concurrency

Hi, i am reading your project and i am interesting it, but i have a question, why can you archive High concurrency in your app, can you tell me how can you do it, the pros and cons when using it, thank u so much

antsdb启动问题

我的antsdb每天都会重新启动,在某一天启动的时候,报错 [main] ERROR server.SaltedFish - failed to start
我很久之前往里面添加过数据之后就没有动过hbase了,而且这个问题我在以前也遇到过,完全一样。请问遇到这样的问题怎么解决?
下面是完整的日志:
satled fish home: /home/software/antsdb using log configuration: /home/software/antsdb/conf/log4j.properties log file: /home/software/antsdb/logs/fish.log log file: /home/software/antsdb/logs/sql.log 11 09:51:56,143 [main] INFO server.SimpleSocketServer - starting simple socket listener on port: 3307 11 09:51:56,212 [main] INFO sql.Orca - starting orca at /home/software/antsdb version 5.6.0-antsdb12 11 09:51:56,220 [main] INFO nosql.Humpback - Humpback home: /home/software/antsdb 11 09:51:56,225 [main] INFO nosql.Humpback - server id: 3882892088857 11 09:51:56,227 [main] INFO nosql.Humpback - log retention: log retention by size: 1073741824 11 09:51:56,566 [main] INFO storage.HBaseStorageService - system namespace: ANTSDB 11 09:51:56,674 [main] WARN util.NativeCodeLoader - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 11 09:51:57,070 [main] INFO storage.HBaseStorageService - HBase is connected 11 09:51:57,469 [main] INFO minke.Minke - openning minke /home/software/antsdb/cache ... 11 09:51:57,474 [main] INFO minke.Minke - minke pif:null 11 09:51:57,475 [main] INFO minke.Minke - minke @ /home/software/antsdb/cache is successfully initialzied. 0 pages free. 63 pages allocated 11 09:51:57,601 [main] ERROR server.SaltedFish - failed to start java.lang.NullPointerException at com.antsdb.saltedfish.nosql.MemTable.open(MemTable.java:413) at com.antsdb.saltedfish.nosql.GTable.open(GTable.java:250) at com.antsdb.saltedfish.nosql.Humpback.initTables(Humpback.java:446) at com.antsdb.saltedfish.nosql.Humpback.init(Humpback.java:255) at com.antsdb.saltedfish.nosql.Humpback.open(Humpback.java:199) at com.antsdb.saltedfish.sql.Orca.<init>(Orca.java:144) at com.antsdb.saltedfish.server.SaltedFish.startDatabase(SaltedFish.java:137) at com.antsdb.saltedfish.server.SaltedFish.start(SaltedFish.java:54) at com.antsdb.saltedfish.server.SaltedFish.run(SaltedFish.java:133) at com.antsdb.saltedfish.server.SaltedFishMain.run(SaltedFishMain.java:83) at com.antsdb.saltedfish.server.SaltedFishMain.main(SaltedFishMain.java:44) java.lang.NullPointerException at com.antsdb.saltedfish.nosql.MemTable.open(MemTable.java:413) at com.antsdb.saltedfish.nosql.GTable.open(GTable.java:250) at com.antsdb.saltedfish.nosql.Humpback.initTables(Humpback.java:446) at com.antsdb.saltedfish.nosql.Humpback.init(Humpback.java:255) at com.antsdb.saltedfish.nosql.Humpback.open(Humpback.java:199) at com.antsdb.saltedfish.sql.Orca.<init>(Orca.java:144) at com.antsdb.saltedfish.server.SaltedFish.startDatabase(SaltedFish.java:137) at com.antsdb.saltedfish.server.SaltedFish.start(SaltedFish.java:54) at com.antsdb.saltedfish.server.SaltedFish.run(SaltedFish.java:133) at com.antsdb.saltedfish.server.SaltedFishMain.run(SaltedFishMain.java:83) at com.antsdb.saltedfish.server.SaltedFishMain.main(SaltedFishMain.java:44)

Projects Similar to Ants DB that might be useful

Hello. Really excited about to learn AntsDB & wanted to contribute a list of similar projects that you might be able to learn from. Part of the benefit of these alternative platforms is that they're Apache Licensed & lean on mature codebases so you may be able to pull features & capabilities from them rather quickly.

The Doris approach of using Impala is particularly interesting as Impala can query HBase, so you may be able to benefit from their approach.

TPCC

I am newbie to understand the TPCC benchmark, I went through the official website but still wants to know in few words can anyone describe me that if I want to measure AntsDB database or any other database performance then how can I measure it with millions of data?

对比phoenix的优势

phoenix 是首选的hbase sql解决方案,需要了解下我们数据库和phoenix方案对比的优势,感谢。

Sent with GitHawk

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.