Go Faster. Grow Bigger.

GridDB Community Edition has been starred and forked more than 1,000 times at GitHub.
Download GridDB Community Edition now!

Features

Open source time series database for real-time utilization of high-frequency and high-volume time series data.

Multi model including our own Key Container data model

Pluggable data store enabling the implementation of a key-container data model and a wide variety of data models for efficient processing and management of transactional data and time series data of different characteristics.

Petabyte-Scale Performance for Big Data System

Various architectural innovations, such as in-memory orientation with "memory as the main unit and disk as the secondary unit" and event-driven design with minimal overhead, have been incorporated to achieve processing capabilities that can handle petabyte-scale applications.

Low latency NoSQL and high throughput SQL

Dual interfaces for NoSQL with high response required for high frequency and huge data collection and storage, and SQL with high throughput required for real-time processing of large volumes of data.

Open source

Gathers awareness of issues, experience and wisdom through open source community activities. Promoting collaboration with leading open source software and vendors to rapidly realise advanced systems in the ecosystem.

Why GridDB Community Edition?

Optimized for IoT Data

Data models in database have several types such as Relational, key-value, wide column, and document. These data models have their own advantages:

  • Relational: Data is stored in a two-dimensional tabular format (table), and relationships between data are also stored in a tabular format (table). It is designed to be rigorous in schema definitions, such as data definition and organization of relationships, to support ACID transactions, and to maintain referential integrity and strong data consistency. Suitable for traditional business applications.
  • Key-value: Data is stored in units of key and value. Simple and responsive
  • Column-oriented: One that has multiple columns for one row key. Flexible data operation is possible because each row can have a different number of columns. It is also suitable for aggregation processing because it aggregates in the column direction at high speed.
  • Document: A semi-structured document whose value part is JSON. Since it is schema-less, it can flexibly operate complex data and is said to be compatible with general web systems.
In a real IoT system,  each machine has several sensors with different attributes. GridDB key-container data model has been designed from the ground up to accomodate these characteristics.

The key container type data model introduces a concept similar to an RDB table called a container that groups the values of key values, and stores data for each target. The schema definition that defines the data type for the container and the column index setting enable high-speed search. In addition, transaction operations can be performed on a row-by-row basis within a container, and ACID (Atomicity, Consistency, Isolation, Durability) of transactions is guaranteed on a container-by-container basis.

Time Series Data Management

There are two types of containers: a collection container in which records are stored in any order to manage various general data, and a time-series container in which records are stored in chronological order.

The time series container provides special time series functionalities such as time series data compression, data retention function to automatically delete unwanted data after a certain period of time, and time series analysis function. 

Petabyte-scale Performance

I/O is a common bottleneck in any DBMS that can cause the CPU to be under-utilized. GridDB overcomes this bottleneck with the ‘Memory first, Storage second’ structure where the ‘primary’ data that is frequently accessed resides in memory and the rest is passed on to disks (SSD and HDD). High performance is achieved in GridDB by:

Prioritizing In-Memory processing – In scenarios with large amounts of data, GridDB localizes the data access needed by applications by placing as much ‘primary’ data in the same block as possible. Based on the application’s access pattern and frequency GridDB efficiently utilizes memory space by setting hint memory intensity function and thus reduces memory misses.

Reducing the Overhead – Operational and communication overhead occurs in multi-threaded operations due to lock and synchronization. GridDB eliminates this by allocating an exclusive memory and DB file to each CPU core / thread. As a result, execution time gets shortened and better performance is achieved.

Parallel Processing – GridDB achieves high performance through parallel processing within a node and across nodes. Parallel processing across nodes is done by distributing a large dataset among multiple nodes (partitioning). Parallelism is made possible by the event-driven engine which processes multiple requests using the least amount of resources.

Open Source Community

GridDB is open soure and can be downloaded for free. GridDB developer site (griddb.net) is constantly updated with news about community events and technical blogs, guide on how to use GridDB and integrate with other Open Source Softwares.

GridDB Community Edition Free Download