On Apache Ignite and GridGain Community Edition. Q&A with Nikita Ivanov
Q1. Who is currently using Apache Ignite for production deployments?
Thousands of companies worldwide use Apache® Ignite™, which has been downloaded over four million times since it launched as an Apache Software Foundation project. GridGain® Systems is a commercial company which offers products built on Apache Ignite and services for both GridGain products and Ignite but we have limited visibility into the broad list of companies which use Ignite. We do become aware of some of the Ignite users through our business dealings and our organization of the In-Memory Computing Summits in Europe and North America. For those interested in who uses Apache Ignite, they may want to visit the In-Memory Computing Summit website at https://www.imcsummit.org/ and watch the keynote and breakout session recordings by Apache Ignite users or attend one of the upcoming In-Memory Computing Summits (London in June 2109 and North America in November 2019) or attend one of the Apache Ignite or In-Memory Computing Meetups we organize worldwide.
Q2. You have recently released the GridGain Community Edition (GCE). What is it?
GridGain Community Edition is a hardened, high performance, open source in-memory computing platform. It includes an in-memory data grid, in-memory database, streaming analytics support, and a continuous learning framework for real-time machine learning and simplified deep learning. Built on Apache Ignite, it includes additional functionality, tuning and patches developed by GridGain to deliver highly reliable performance in production environments.
GridGain Community Edition includes the Apache Ignite code base plus additional functionality, tuning and patches developed by GridGain to improve the performance, reliability, security and manageability of Ignite in production environments. GCE undergoes extensive QA testing conducted by GridGain to ensure high reliability and optimal performance out of the box.
The GridGain Community Edition allows GridGain to quickly deploy patches and upgrades for Apache Ignite faster than the normal Ignite release cycle. GCE also includes performance and reliability enhancements that optimize Apache Ignite for production deployments. GCE is available under the GridGain Community Edition License.
Q3. What specific Apache Ignite code base plus patches did you include in GCE?
Each GCE version is built on the then current version of Apache Ignite. The current version is GridGain Community Edition 8.7, which is built on Apache Ignite 2.7.
Q4. Who does and how does the GCE QA testing work?
The GridGain Systems QA engineering team performs QA testing on all GridGain editions including the GridGain Community Edition.
Q5. How is it possible for GridGain developers to deploy patches and upgrades for Apache Ignite, faster than the normal Ignite release cycle?
Apache Ignite releases are managed by the Apache Ignite Project Management Committee. The Committee members review the proposed release, conduct their own testing and then vote to approve new releases. There are typically 2 to 4 Ignite releases per year. As GridGain develops patches and upgrades for Apache Ignite, we apply them to all GridGain products, including GCE, and donate them to the Apache Ignite project. We can then test and bundle the new patches and upgrades into a new release of all of our products, including GridGain Community Edition. The new patches and upgrades may or may not be included in the next Apache Ignite release candidate and will not be available in Ignite until the next approved release, which may be issued months after the updates are donated to the Ignite project and are available in the GCE.
Q6. In your press release you write that GCE can be deployed between existing applications and data layers, requiring no rip-and-replace of existing software and database infrastructure. Can you please elaborate on that?
When GCE is deployed on a cluster of commodity servers as an in-memory data grid (IMDG) between an existing application and database, the data in the underlying database is loaded into the IMDG. The IMDG then processes all the reads and writes. New transactions are sent by the application layer to the IMDG, which then writes them to the underlying database, ensuring consistency and availability of the data. By holding all data in memory and applying massively parallel processing across the distributed cluster, processes can run up to 1000x faster than when the application must constantly interact directly with the underlying disk-based database. The distributed architecture of the GridGain platform allows the pooled CPU power and RAM of the cluster to be increased simply by adding nodes to the cluster. The in-memory computing platform can automatically detect the additional nodes and redistribute data to ensure that all the cluster CPU and RAM is used optimally.
Adding GCE between an existing application and database requires minimal configuration changes. Similar to Apache Ignite and all GridGain products, GCE has a unified API which supports a broad range of access protocols including ANSI-99 SQL.
Q7. What are the lessons you have learned in working with GridGain users that deploy your solutions on-premises, on a public or private cloud, or on a hybrid environment?
The most important insight is that nearly all companies are moving towards cloud-based computing, whether they are deploying on their own private cloud, on a public cloud, or across a hybrid environment. We still see a majority of our users deploying on-premises, but the number deploying on public or private clouds is rapidly approaching 50%. Because of this high level of cloud adoption, GridGain products are now available through the AWS, Microsoft Azure and Oracle Cloud Marketplaces. GridGain users regularly deploy our solutions on AWS, Azure, Google Cloud Platform, Rackspace, Oracle Cloud and many other cloud platforms. GridGain is commonly deployed using Docker containers and is used with Kubernetes for orchestration.
Qx. Anything else you wish to add?
GCE is a full-featured in-memory computing platform that includes an in-memory data grid (IMDG), in-memory database (IMDB), Streaming Analytics Platform, and Continuous Learning Framework. As an IMDG, GCE sits between an existing application and database without the need for a rip-and-replace of the existing database. The Streaming Analytics Platform manages the complexity around dataflow and event processing, enabling users to query active data without impacting performance. The Continuous Learning Framework enables organizations to dramatically increase the frequency at which a machine learning model is updated. GridGain Systems also offers the GridGain Enterprise and Ultimate Editions which include additional features built on top of Apache Ignite for high performance, demanding use cases which require additional enterprise-grade features such as datacenter replication, rolling production upgrades, and enhanced security which are very beneficial in large, production deployments.
Nikita Ivanov is founder and CTO of GridGain Systems, started in 2007 and funded by RTP Ventures and Almaz Capital. Nikita provides the vision and leadership at GridGain to develop the world’s top in-memory computing platform, now used by thousands of organizations around the globe to power business-critical systems and enable digital transformation initiatives.
Nikita has over 20 years of experience in software application development, building HPC and middleware platforms, contributing to the efforts of other startups and notable companies including Adaptec, Visa and BEA Systems. Nikita was one of the pioneers in using Java technology for server side middleware development while working for one of Europe’s largest system integrators in 1996.
He is an active member of Java middleware community, contributor to the Java specification, and holds a Master’s degree in Electro Mechanics from Baltic State Technical University, Saint Petersburg, Russia.