All Projects → blobcity → Db

blobcity / Db

Licence: agpl-3.0
A blazing fast ACID compliant NoSQL DataLake with support for storing 17 formats of data. Full SQL and DML capabilities along with Java stored procedures for advanced data processing.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Db

Bojack
🐴 The unreliable key-value store
Stars: ✭ 101 (-36.48%)
Mutual labels:  database, nosql
Couchbase Lite Ios
Lightweight, embedded, syncable NoSQL database engine for iOS and MacOS apps.
Stars: ✭ 1,532 (+863.52%)
Mutual labels:  database, nosql
Griddb
GridDB is a next-generation open source database that makes time series IoT and big data fast,and easy.
Stars: ✭ 1,587 (+898.11%)
Mutual labels:  database, nosql
Tupl
The Unnamed Persistence Library
Stars: ✭ 83 (-47.8%)
Mutual labels:  database, nosql
Ardb
A redis protocol compatible nosql, it support multiple storage engines as backend like Google's LevelDB, Facebook's RocksDB, OpenLDAP's LMDB, PerconaFT, WiredTiger, ForestDB.
Stars: ✭ 1,707 (+973.58%)
Mutual labels:  database, nosql
Summitdb
In-memory NoSQL database with ACID transactions, Raft consensus, and Redis API
Stars: ✭ 1,295 (+714.47%)
Mutual labels:  database, nosql
Gkvdb
[mirror] Go语言开发的基于DRH(Deep-Re-Hash)深度哈希分区算法的高性能高可用Key-Value嵌入式事务数据库。基于纯Go语言实现,具有优异的跨平台性,良好的高可用及文件IO复用设计,高效的底层数据库文件操作性能,支持原子操作、批量操作、事务操作、多表操作、多表事务、随机遍历等特性。
Stars: ✭ 109 (-31.45%)
Mutual labels:  database, nosql
Ejdb
🏂 EJDB 2.0 — Embeddable JSON Database engine C library. Simple XPath like query language (JQL). Websockets / Android / iOS / React Native / Flutter / Java / Dart / Node.js bindings. Docker image.
Stars: ✭ 1,187 (+646.54%)
Mutual labels:  database, nosql
Db Tutorial
💾 db-tutorial 是一个数据库教程。
Stars: ✭ 128 (-19.5%)
Mutual labels:  database, nosql
Dynein
DynamoDB CLI written in Rust.
Stars: ✭ 126 (-20.75%)
Mutual labels:  database, nosql
Neo4j
Graphs for Everyone
Stars: ✭ 9,582 (+5926.42%)
Mutual labels:  database, nosql
Jnosql
Eclipse JNoSQL is a framework which has the goal to help Java developers to create Jakarta EE applications with NoSQL.
Stars: ✭ 145 (-8.81%)
Mutual labels:  database, nosql
Ftserver Cs
Lightweight iBoxDB Full Text Search Server for C#
Stars: ✭ 81 (-49.06%)
Mutual labels:  database, nosql
Cog
A Persistent Embedded Graph Database for Python
Stars: ✭ 90 (-43.4%)
Mutual labels:  database, nosql
Iotdb
Apache IoTDB
Stars: ✭ 1,221 (+667.92%)
Mutual labels:  database, nosql
Unqlite
An Embedded NoSQL, Transactional Database Engine
Stars: ✭ 1,583 (+895.6%)
Mutual labels:  database, nosql
Aliyun Tablestore Go Sdk
TableStore SDK for Golang
Stars: ✭ 63 (-60.38%)
Mutual labels:  database, nosql
Tidis
Distributed transactional NoSQL database, Redis protocol compatible using tikv as backend
Stars: ✭ 1,182 (+643.4%)
Mutual labels:  database, nosql
Databazel
The analytical and reporting solution for MongoDB
Stars: ✭ 118 (-25.79%)
Mutual labels:  database, nosql
Arangodb
🥑 ArangoDB is a native multi-model database with flexible data models for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions.
Stars: ✭ 11,880 (+7371.7%)
Mutual labels:  database, nosql

License: AGPL v3 PRs Welcome GitHub issues Generic badge Ask Me Anything ! Slack

Description

BlobCity DB is an All-in-One Database. It offers support for natively storing 17 different formats of data, including JSON, XML, CSV, PDF, Word, Excel, Log, GIS, Image amongst others. It run two full feature storage engines. One that stores data in memory and the other that stores data on disk. In-memory storage offers sheer performance for real-time analytics, while the disk storage make BlobCity an excellent alternative for DataLakes.

Supported Data Formats

Push data in any of these 17 formats: JSON, XML, CSV, SQL, Plaintext, PDF, Excel, Word, RTF, ZIP, Log, Powerpoint, syslog, audio files, video files, image files, GIS

Multi-Model Example

JSON Record

{"col1": 1, "col2": 2}

XML Record

<col1>3</col1></col2>4</col2>

Auto created table schema and data

col1 col2
1 2
3 4

Push variety of data into a single collection within BlobCity, and get back a standardised response.

user$ nc localhost 10113
username>root
password>9a371c6445
You are now inside the BlobCity DB console
Type 'help' for assistance and 'exit' to quit
blobcity>create-ds test
Datastore successfully created
blobcity>create-collection test.test
Collection successfully created

blobcity>insert into test.test JSON
In insert mode. Type 1 JSON per line and press enter to insert
{"col1": 1, "col2": 2}
Inserted
exit
Exited insert mode

blobcity>insert into test.test XML
In insert mode. Type 1 XML per line and press enter to insert
<col1>3</col1><col2>4</col2>
Inserted
exit
Exited insert mode

blobcity>sql test: select * from test.test
{"p":[{"_id":"5cb30531-dde1-493c-9c67-86b5f4dce36c","col2":2,"col1":1},{"_id":"57f653e3-de68-4591-9563-af9ad66af56b","col2":4,"col1":3}],"time(ms)":2,"ack":"1","rows":2}

blobcity>sql test: select col1 from test.test
{"p":[{"col1":"1"},{"col1":"3"}],"time(ms)":18,"ack":"1","rows":2}

blobcity>set-column-type test.test col1 integer 
Column type successfully updated in schema

blobcity>sql test: select SUM(col1) from test.test
{"p":[{"SUM(col1)":4}],"time(ms)":27,"ack":"1","rows":1}

The above example shows inserting both JSON and XML recoreds into the same collection. The DB seamlessly creates columns and merges the columns to allow querying of both records using SQL.

Features

  • Full SQL: Run SQL queries over REST, ODBC & JDBC connectivity
  • DataLake: On-disk storage engine optimised for DataLake scale with low latency query response
  • DML Support: Designed like a DataLake, but works like a database. Full support for UPDATE & DELETE queries
  • Realtime: HIgh speed in-memory storage optimised for real-time analytics
  • 17 Data Formats: Stores 17 formats of data such as JSON, XML, PDF, Excel, Word amongst others for collective analytics
  • ACID: Full ACID compliant transactions on individual records
  • Stored Procedures: Run Java & Scala code within the database for complex operations on data without moving the data out of the database
  • Fine-grained Access Control: Control data access across users and departments, with column level control on user access
  • On-Cloud: Fully managed virtually infinte scale, multi-tenant cloud with unlimited free storae and pay only for what you analyse

Get Started

        

On BlobCity Cloud

Store unlimited data for free and pay only for what you analyse. Delivers ultra high speed analytics over multi-tenant infrastructure, starting at $10/month.

Start Now

Using Docker

docker run -i -p 10111:10111 -p 10113:10113 blobcity/db

Once container is started, open a telnet connection on port 10113 to connect to over network CLI.

nc localhost 10113
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
username>root
password>xxxxx
You are now inside the BlobCity DB console
Type 'help' for assistance and 'exit' to quit
blobcity>

A random auto-generated password is placed at /mnt/data/root-pass.txt. This file can be found within the container. It can be fetched from within the container, or by mounting this folder to an external mount point.

docker run -i -v /my-folder:/mnt/data -p 10111:10111 -p 10113:10113 blobcity/db

The password file can now be found at /my-folder/root-pass.txt on your computer.

Using Binary Distribution

Supported only on Unix & MacOS distributions

Download latest tar.gz archive from the releases.

Decompress the download file, then run blobcity.sh from inside the bin folder.

user>tar -xvf blobcity-db-x.x.x.tar.gz
user>cd blobcity-db-x.x.x/bin
user>sh ./blobcity.sh

JAVA_HOME must be set to a JDK / JRE version 8 or higher for the DB to be booted.

The database will create a folder called data at blobcity-db-x.x.x/data. The randomly generated root user password can be found inside a text file at blobcity-db-x.x.x/data/root-pass.txt.

Use this password to connect to the CLI console to start using the DB. It is recommended that the data folder be stored at a difference location than the boot volume, and the volume be XFS formatted.

The location of the data folder can be set by editing the blobcity.sh file and uncommenting the following line and setting a folder path of your choice.

#export BLOBCITY_DATA=

Look at some of the best practices for optimal disk storage performance.

Acceleration

BlobCity is a winner of Economic Times Power of Ideas (Season 2), is funded by CIIE IIM-Ahmedabad and is a graduate from NetApp Excellerator (Cohort #2).

  

Docs

https://docs.blobcity.com

Contribute

Join our Slack community and request to become a contributor. We encourage your contributions :)

Authors

BlobCity DB was created by Sanket Sarang along with notable contributions from Akshay Dewan and Karun Japhet, amongst others. BlobCity DB is sponsored by BlobCity, Inc..

License

GNU Affero General Public License v3.0

Kraken

                       ___
                    .-'   `'.
                   /         \
                   |         ;
                   |         |           ___.--,
          _.._     |0) ~ (0) |    _.---'`__.-( (_.
   __.--'`_.. '.__.\    '--. \_.-' ,.--'`     `""`
  ( ,.--'`   ',__ /./;   ;, '.__.'`    __
  _`) )  .---.__.' / |   |\   \__..--""  """--.,_
 `---' .'.''-._.-'`_./  /\ '.  \ _.-~~~````~~~-._`-.__.'
       | |  .'R_.-' |  |  \K \  '.               `~---`
        \K\/ .'     \  \   '. '-._)
         \/ /        \  \    `=.__`~-.
         / /\         `) )    /E/ `"".`\
   , _.-'.'\ \        /A/    ( (     /N/
    `--~`   ) )    .-'.'      '.'.  | (
           (/`    ( (`          ) )  '-;
            `      '-;         (-'

Kraken was our internal project code name until open sourcing. You may still find some mentions of it in the code docs.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].