waterguo / antsdb Goto Github PK
View Code? Open in Web Editor NEWAntsDB 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
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
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
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?
Apache Phoenix also provides SQL layer on top of HBase and oriented towards OLTP.
How AntsDB compares to Phoenix?
您好,怎么安装使用antsdb有详细文档吗
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,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)
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每天都会重新启动,在某一天启动的时候,报错 [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)
What DB name should i put in on my mysql application? I know for certain HBase has no thing such as DB_Name like MySQL but applications like laravel requires it?
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.
http://www.antsdb.com/?p=171 - no images visible :-(
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?
I can only see waterguo.
phoenix 是首选的hbase sql解决方案,需要了解下我们数据库和phoenix方案对比的优势,感谢。
Sent with GitHawk
Steps:
Should prevent user from starting antsdb if hbase is not configured
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.