GithubHelp home page GithubHelp logo

apache / ignite-3 Goto Github PK

View Code? Open in Web Editor NEW
174.0 21.0 91.0 60.82 MB

Apache Ignite 3

Home Page: https://ignite.apache.org/

License: Apache License 2.0

Java 89.15% Shell 0.06% FreeMarker 0.04% Dockerfile 0.01% C# 4.86% Batchfile 0.02% CMake 0.10% C++ 5.70% C 0.01% Python 0.05%
distributed-sql-database iot network-client ignite data-management-platform big-data cloud database network-server sql

ignite-3's Introduction

Apache Ignite 3

Apache Ignite 3 is a distributed database for high-performance computing.

  • ACID TRANSACTIONS: Ignite can operate in a strongly consistent mode that provides full support for distributed ACID transactions executed at the Serializable isolation level.
  • DISTRIBUTED SQL: Use Ignite as a traditional SQL database by leveraging JDBC drivers, ODBC drivers, or the native SQL APIs that are available for Java, C#, C++, and other programming languages.
  • COMPUTE API: With traditional databases, for in-place calculations, you use stored procedures that are written in a language such as PL/SQL. With Ignite, you use modern JVM languages to develop and execute custom tasks across your distributed database.
  • SCHEMA-DRIVEN ARCHITECTURE: Ignite built around schema-driven model ensuring consistency between DDL, internal models and data.
  • PLUGABLE STORAGE ENGINES: Ignite's modular architecture enables the customization of underlying data and metadata storage, offering in-memory storage and RocksDB as default options.
  • UNIFIED CLI TOOL AND REST API: Management tools now include built-in CLI and REST API allowing simple access and configuration of Ignite cluster.

Documentation

The latest documentation is generated together with the releases and hosted on the apache site.

Please check the documentation page for more information.

Contact

Ignite is a top level project under the Apache Software Foundation

Download

Latest release artifacts (source release and binary packages) are available from the Ignite web page.

Quick start

Run Ignite from released artifact

To start Ignite you need to download latest zip archive from the Ignite web page. Scroll down to the "Binary releases" section and download the version you are interested in.

Here is the command you can run to download current latest release:

https://dlcdn.apache.org/ignite/3.0.0-beta1/ignite3-3.0.0-beta1.zip
unzip ignite3-3.0.0-beta1.zip

After this you should have two directories: ignite3-db-3.0.0-<version> and ignite3-cli-3.0.0-<version>. The first one contains everything you need to start Ignite node, and the second one contains Ignite CLI tool.

After unpacking it, go to the ignite3-db-3.0.0-<version> folder and run the following command:

cd ignite3-db-3.0.0-beta1
./bin/ignite3db start

This command starts the Ignite node with the name defaultNode. If you want to change any node configuration, change values in etc/ignite-config.conf before the start.

After that you need to connect to your node with Ignite CLI in interactive mode:

cd ../ignite3-cli-3.0.0-beta1
./bin/ignite3

In CLI you need to initialize simple cluster via the following command:

cluster init --name myCluster --cmg-node defaultNode --meta-storage-node defaultNode

Now CLI can be switched into SQL interactive mode with command:

sql

In SQL interactive mode user can simply type SQL commands in CLI:

CREATE TABLE IF NOT EXISTS Person (id int primary key,  city varchar,  name varchar,  age int,  company varchar);
INSERT INTO Person (id, city, name, age, company) VALUES (1, 'London', 'John Doe', 42, 'Apache');
INSERT INTO Person (id, city, name, age, company) VALUES (2, 'New York', 'Jane Doe', 36, 'Apache');
SELECT * FROM Person;

Build from source

Ignite distributive zip archive can be built with Gradle:

./gradlew clean distZip

Build artifacts can be found in packaging/db and packaging/cli directories.

Run from source using Docker

Ignite can be started with the help of Docker:

./gradlew docker
cd packaging/docker
docker compose up -d

You can also run the CLI within the Docker:

docker run -it --rm --net ignite3_default apacheignite/ignite3 cli
> connect http://node1:10300
> cluster init --name cluster --meta-storage-node node1 --meta-storage-node node2 --meta-storage-node node3

For more information, you can check the Developer notes

Contribute

All contributions are welcome.

  1. Please open a Jira issue
  2. And create a pull request

For more information, you can check the Contribution guideline

License

The Apache Ignite project is licensed under the Apache 2.0 License. See the LICENSE file for details.

ignite-3's People

Contributors

alievmirza avatar amashenkov avatar cyrill avatar denis-chudov avatar dependabot[bot] avatar ibessonov avatar iggusev avatar isapego avatar ivgag avatar kgusakov avatar korlov42 avatar lowka avatar pakhomovalexander avatar pochatkin avatar ptupitsyn avatar rpuch avatar sammyvimes avatar sanpwc avatar sashapolo avatar sergeyuttsel avatar sk0x50 avatar tkalkirill avatar valepakh avatar vkulichenko avatar vladermakov07 avatar vldpyatkov avatar vveider avatar xtern avatar ygerzhedovich avatar zstan 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

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.