<!--
 ▄▄▄       ██▓███   ▄▄▄       ▄████▄   ██░ ██ ▓█████     ██▓  ▄████  ███▄    █  ██▓▄▄▄█████▓▓█████
▒████▄    ▓██░  ██▒▒████▄    ▒██▀ ▀█  ▓██░ ██▒▓█   ▀    ▓██▒ ██▒ ▀█▒ ██ ▀█   █ ▓██▒▓  ██▒ ▓▒▓█   ▀
▒██  ▀█▄  ▓██░ ██▓▒▒██  ▀█▄  ▒▓█    ▄ ▒██▀▀██░▒███      ▒██▒▒██░▄▄▄░▓██  ▀█ ██▒▒██▒▒ ▓██░ ▒░▒███
░██▄▄▄▄██ ▒██▄█▓▒ ▒░██▄▄▄▄██ ▒▓▓▄ ▄██▒░▓█ ░██ ▒▓█  ▄    ░██░░▓█  ██▓▓██▒  ▐▌██▒░██░░ ▓██▓ ░ ▒▓█  ▄
 ▓█   ▓██▒▒██▒ ░  ░ ▓█   ▓██▒▒ ▓███▀ ░░▓█▒░██▓░▒████▒   ░██░░▒▓███▀▒▒██░   ▓██░░██░  ▒██▒ ░ ░▒████▒
 ▒▒   ▓▒█░▒▓▒░ ░  ░ ▒▒   ▓▒█░░ ░▒ ▒  ░ ▒ ░░▒░▒░░ ▒░ ░   ░▓   ░▒   ▒ ░ ▒░   ▒ ▒ ░▓    ▒ ░░   ░░ ▒░ ░
  ▒   ▒▒ ░░▒ ░       ▒   ▒▒ ░  ░  ▒    ▒ ░▒░ ░ ░ ░  ░    ▒ ░  ░   ░ ░ ░░   ░ ▒░ ▒ ░    ░     ░ ░  ░
  ░   ▒   ░░         ░   ▒   ░         ░  ░░ ░   ░       ▒ ░░ ░   ░    ░   ░ ░  ▒ ░  ░         ░
      ░  ░               ░  ░░ ░       ░  ░  ░   ░  ░    ░        ░          ░  ░              ░  ░
-->

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <link rel="canonical" href="https://ignite.apache.org/events.html"/>
    <!--#include virtual="/includes/scriptshead.html" -->

    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/>
    <meta http-equiv="Pragma" content="no-cache"/>
    <meta http-equiv="Expires" content="0"/>
    <title>Meetups & Events - Apache Ignite</title>
    <!--#include virtual="/includes/styles.html" -->
</head>
<body>
    <!--#include virtual="/includes/header.html" -->
<article>
<header>    <div class="container">
        
            <h1 class="first">Upcoming Apache Ignite <strong>Events</strong></h1>
</div>
</header>
<div class="container">
    <section id="events" class="page-section">
        
        <!--
            ** USE THIS SNIPPET TO ADD NEW EVENTS. JUST ADJUST/REPLACE THE {PLACEHOLDERS} WITH INFO **
            ** A useful quick tool to create the slug for {anchor} is to paste the event title in: https://blog.tersmitten.nl/slugify/


        <div class="row row-event">
            <div class="col-md-2 d-none d-md-block">
                <div class="round-icon-block">
                    <img src="images/{conferences|webinars|meetup}.svg" alt="{Conference|Webinar|Meetup} logo">
                    <p>{Conference|Webinar|<strong>Virtual</strong> Meetup}</p>
                </div>
            </div>
            <div class="col-md-10 ">
                <section id="{event-anchor}">
                    <h3 style="display:inline-block;">{event-title}
                        <a href="/events.html#{event-anchor}"><i
                                class="fa fa-anchor"></i></a>
                    </h3>
                    <div class="event-date">{event-speaker}</div>
                    <div class="event-date">{event-date}</div>

                    <p>{event-description}</p>

                    <div class="row">
                            <div class=" col-md-9  news-readmore">
                            <p>
                                <a href="{event-url}" target="_blank" rel="noopener">Read more</a>
                            </p>
                        </div>
                        <div class=" col-md-3  ">

                            
                            <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                data-a2a-url="{event-url}"
                                data-a2a-title="{event-title}">
                                <a class="a2a_button_twitter"></a>
                                <a class="a2a_button_linkedin"></a>
                                <a class="a2a_button_facebook"></a>
                                <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                            </div>
                        </div>
                    </div>
                    
                </section>
            </div>
        </div> 

    *** END OF SNIPPET FOR CREATING NEW EVENTS **
    -->


        
    <!-- {{upcoming_events}} -->


<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="apache-ignite-now-with-cdc">
            <h3 style="display:inline-block;">Apache Ignite. Now with CDC!
                <a href="/events.html#apache-ignite-now-with-cdc"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Saint Highload++, Nikolay Izhikov</div>
            <div class="event-date">September 20, 2021</div>

            <p>Nikolay Izhikov, Apache Ignite PMC, will introduce the audience to Change Data Capture and share how it's organized in Apache Ignite. </p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.highload.ru/spb/2021/abstracts/7942" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.highload.ru/spb/2021/abstracts/7942"
                        data-a2a-title="Apache Ignite. Now with CDC!">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>


    
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="distributed-java-databases-under-the-hood-main-components-and-interactions-between-them">
            <h3 style="display:inline-block;">Distributed Java Databases Under the Hood: Main Components and Interactions Between Them
                <a href="/events.html#distributed-java-databases-under-the-hood-main-components-and-interactions-between-them"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">ApacheCon, Valentin Kulichenko</div>
            <div class="event-date">September 21, 2021</div>

            <p>Distributed databases are becoming more and more popular. Social networks, online banking, and retail-—these are only a few examples of applications that might require horizontal scalability to achieve the performance, capacity, and availability that organizations require. Using the Apache Ignite platform as a basis, we will identify major internal mechanisms that a typical distributed database uses to achieve the required goals. We will describe the minimal architecture of distributed data storage—-the main components and how these components work together.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.apachecon.com/acah2021/tracks/bigdata.html" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.apachecon.com/acah2021/tracks/bigdata.html"
                        data-a2a-title="Distributed Java Databases Under the Hood: Main Components and Interactions Between Them">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="apache-ignite-extensions-modularization">
            <h3 style="display:inline-block;">Apache Ignite Extensions - Modularization
                <a href="/events.html#apache-ignite-extensions-modularization"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">ApacheCon, Saikat Maitra</div>
            <div class="event-date">September 23, 2021</div>

            <p>Apache Ignite Extensions to allow Apache Ignite codebase host core modules capabilities and migrate 3rd party integrations in a separate repository.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.apachecon.com/acah2021/tracks/integration.html" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.apachecon.com/acah2021/tracks/integration.html"
                        data-a2a-title="Apache Ignite Extensions - Modularization">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="moscow-apache-ignite-meetup">
            <h3 style="display:inline-block;">Moscow Apache Ignite Meetup
                <a href="/events.html#moscow-apache-ignite-meetup"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Moscow Apache Ignite Meetup, Ivan Bessonov, Maxim Muzafarov, Dmitry Gorchakov</div>
            <div class="event-date">September 23, 2021</div>

            <p>The Apache Ignite® community invites developers to their first offline meeting in 2021! Ignite Committers Ivan Bessonov and Maxim Muzafarov will talk about recently updated features (Ignite snapshots and Data Defragmentation). Dmitry Gorchakov will introduce the case - building a distributed system of "super services" on Apache Ignite.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.meetup.com/Moscow-Apache-Ignite-Meetup/events/280030657/" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.meetup.com/Moscow-Apache-Ignite-Meetup/events/280030657/"
                        data-a2a-title="Moscow Apache Ignite Meetup">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="organization-of-testing-distributed-systems-on-the-example-of-a-real-java-project">
            <h3 style="display:inline-block;">Organization of testing distributed systems on the example of a real Java project
                <a href="/events.html#organization-of-testing-distributed-systems-on-the-example-of-a-real-java-project"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Moscow Python Conference 2021, Maxim Losevskoy</div>
            <div class="event-date">September 28, 2021</div>

            <p>In this talk, Maxim will share how GridGaim organized our testing infrastructure for Apache Ignite based platform using the tools provided by Python.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://conf.python.ru/moscow/2021/abstracts/7837" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://conf.python.ru/moscow/2021/abstracts/7837"
                        data-a2a-title="Organization of testing distributed systems on the example of a real Java project">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="python-client-for-apache-ignite-distributed-database">
            <h3 style="display:inline-block;">Python-client for Apache Ignite Distributed DataBase
                <a href="/events.html#python-client-for-apache-ignite-distributed-database"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Moscow Python Conference 2021, Ivan Daschinsky</div>
            <div class="event-date">September 28, 2021</div>

            <p>Ivan Daschinsky, Apache Ignite Committer and Python Client maintainer will present the latest version of the Client.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://conf.python.ru/moscow/2021/abstracts/7815" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://conf.python.ru/moscow/2021/abstracts/7815"
                        data-a2a-title="Python-client for Apache Ignite Distributed DataBase">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>



			
<!-- END OF Upcoming Events -->
			
            <div class="row row-event ">
                <div class="col-md-12 text-center">
                    <p>Browse the <a href="meetup-groups.html">Apache Ignite groups</a> and find one near your area.</p>
                </div>
            </div>

            <h2 class="sub-head-events">Past Events</h2>
            <!-- Nav tabs -->
            <ul id="past-events" class="nav nav-tabs">
                <li><a href="#events-2021" class="active" aria-controls="profile" data-toggle="tab">2021</a></li>
                <li><a href="#events-2020" aria-controls="profile" data-toggle="tab">2020</a></li>
                <li><a href="#events-2019" aria-controls="profile" data-toggle="tab">2019</a></li>
                <li><a href="#events-2018" aria-controls="profile" data-toggle="tab">2018</a></li>
                <li><a href="#events-2017" aria-controls="profile" data-toggle="tab">2017</a></li>
                <li><a href="#events-2016" aria-controls="profile" data-toggle="tab">2016</a></li>
                <li><a href="#events-2015" aria-controls="profile" data-toggle="tab">2015</a></li>
                <li><a href="#events-2014" aria-controls="profile" data-toggle="tab">2014</a></li>
            </ul>

            <!-- Tab panes -->
            <div class="tab-content">

                <div class="tab-pane active" id="events-2021">
                    <!--
                        /**** insert your past event below *****/ 
                    -->
                    <!-- {{past_events}} -->


                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="building-a-low-code-baas-platform-on-apache-ignite">
                                <h3 style="display:inline-block;">Building a low-code BaaS platform on Apache Ignite
                                    <a href="/events.html#building-a-low-code-baas-platform-on-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite Meetup,  Courtney Robinson (Hypi, co-founder and CEO)</div>
                                <div class="event-date">September 2, 2021</div>
                    
                                <p>In this talk we're going to take a deep dive into Hypi's journey designing and scaling its low-code backend as a service platform with Apache Ignite at its core.<br />The talk will look at the general architecture, playing nice with other technologies and the future reactive-streams architecture. We'll look at why we're transitioning to reactive streams and how Ignite is being used to accelerate other technologies in the stack.<br />Just like Ignite 3, the next-gen of Hypi itself is using Apache Calcite as a data virtualisation layer. The talk will explore a little of how this is being done and finally will discuss some challenges and pitfalls to avoid.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/280030600/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/280030600/"
                                            data-a2a-title="Building a low-code BaaS platform on Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-3-0-0-alpha-2-build-community-gathering">
                                <h3 style="display:inline-block;">Apache Ignite 3.0.0 Alpha 2 Build Community Gathering
                                    <a href="/events.html#apache-ignite-3-0-0-alpha-2-build-community-gathering"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite Meetup, Valentin Kulichenko</div>
                                <div class="event-date">July 20, 2021</div>
                    
                                <p>This gathering is organized to summarize feedback, share ideas, and overview the following stages of Ignite 3.0 development.<br />
                                    During this session, we will:</p>
                    
                                <ul>
                                    <li>Give an update on the Ignite 3 development - what has been completed so far, and the next steps planned.</li>
                                    <li>Discuss the latest Ignite 3 milestone: the Alpha 2 release.</li>
                                    <li>Run a live demo: create an Ignite 3 Alpha 2 cluster and demonstrate the new APIs usage by running code examples.</li>
                                </ul>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/279417063/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/279417063/"
                                            data-a2a-title="Apache Ignite 3.0.0 Alpha 2 Build Community Gathering">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>


                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-on-kubernetes">
                                <h3 style="display:inline-block;">Apache Ignite on Kubernetes
                                    <a href="/events.html#apache-ignite-on-kubernetes"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Colin Capriati</div>
                                <div class="event-date">June 19, 2021</div>
                    
                                <p>Running Apache Ignite on Kubernetes can help Ignite developers streamline deployment and management of applications in cloud environments, both private and public. Apache Ignite is Kubernetes-friendly with features that simplify cluster provisioning and minimize the operational and management burden.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/apache-ignite-kubernetes" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/apache-ignite-kubernetes"
                                            data-a2a-title="Apache Ignite on Kubernetes">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="why-distributed-sql-is-not-as-easy-as-it-looks">
                                <h3 style="display:inline-block;">Why Distributed SQL Is Not As Easy As It Looks
                                    <a href="/events.html#why-distributed-sql-is-not-as-easy-as-it-looks"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Highload++, Stan Lukyanov</div>
                                <div class="event-date">May 18, 2021</div>
                    
                                <p>In this talk, we'll cover why distributed SQL is needed, how it differs from SQL in traditional databases, what it does well, and what doesn't. Apache Ignite will be used as an example of distributed SQL support.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.highload.ru/spring/2021/abstracts/6686" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.highload.ru/spring/2021/abstracts/6686"
                                            data-a2a-title="Why Distributed SQL Is Not As Easy As It Looks">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-to-use-spark-with-apache-ignite-for-big-data-processing">
                                <h3 style="display:inline-block;">How to Use Spark With Apache Ignite for Big Data Processing
                                    <a href="/events.html#how-to-use-spark-with-apache-ignite-for-big-data-processing"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Andrey Alexandrov</div>
                                <div class="event-date">April 28, 2021</div>
                    
                                <p>In this webinar, you learn when to use Ignite, and, using real-world examples, you learn how to configure Spark-Ignite integration. In addition, Andrey will tell about optimization techniques and best practices.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/how-use-spark-apache-ignite-big-data-processing" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/how-use-spark-apache-ignite-big-data-processing"
                                            data-a2a-title="How to Use Spark With Apache Ignite for Big Data Processing">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-native-persistence-storage">
                                <h3 style="display:inline-block;">Apache Ignite Native Persistence Storage
                                    <a href="/events.html#apache-ignite-native-persistence-storage"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite Meetup, Anton Kalashnikov</div>
                                <div class="event-date">April 27, 2021</div>
                    
                                <p>Persistence in Apache Ignite enables you to consistently save all data to disk and, thus, enables you to survive a node restart. In this presentation, Anton, without going into detail, talks about the architecture of native persistence and explains how the architecture’s components work.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/ru-RU/Apache-Ignite-Virtual-Meetup/events/277298901/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/ru-RU/Apache-Ignite-Virtual-Meetup/events/277298901/"
                                            data-a2a-title="Apache Ignite Native Persistence Storage">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="dealing-with-network-overhead-in-distributed-systems-an-effective-approach-to-working-with-data">
                                <h3 style="display:inline-block;">Dealing with Network Overhead in Distributed Systems: An Effective Approach to Working with Data
                                    <a href="/events.html#dealing-with-network-overhead-in-distributed-systems-an-effective-approach-to-working-with-data"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DOTNEXT Russia, Pavel Tupitsyn</div>
                                <div class="event-date">April 20, 2021</div>
                    
                                <p>Modern apps consist of many subsystems: databases, caches, event brokers. The single user request can involve multiple internal network calls. We will talk about data locality, reducing network overhead, improving performance and scalability. Benchmarks, demos, live coding, and practical examples await.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://dotnext-piter.ru/en/2021/spb/talks/3ar6q8gmbfi86lhbduts0k/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://dotnext-piter.ru/en/2021/spb/talks/3ar6q8gmbfi86lhbduts0k/"
                                            data-a2a-title="Dealing with Network Overhead in Distributed Systems: An Effective Approach to Working with Data">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="distributed-java-databases-under-the-hood-main-components-and-interactions">
                                <h3 style="display:inline-block;">Distributed Java Databases Under the Hood: Main Components and Interactions
                                    <a href="/events.html#distributed-java-databases-under-the-hood-main-components-and-interactions"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Seattle Java User Group, Val Kulichenko</div>
                                <div class="event-date">April 20, 2021</div>
                    
                                <p>During the session, we create a simple (although fully workable) distributed cache in Java, almost from scratch. We use the cache to demonstrate basic CRUD operations, as well as to demonstrate how scalability can be improved by adding resources to the system.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/seajug/events/276324545/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/seajug/events/276324545/"
                                            data-a2a-title="Distributed Java Databases Under the Hood: Main Components and Interactions">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-meetup-moscow">
                                <h3 style="display:inline-block;">Apache Ignite Meetup Moscow
                                    <a href="/events.html#apache-ignite-meetup-moscow"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Ivan Dashchinskiy, Grigory Domozhirov</div>
                                <div class="event-date">April 15, 2021</div>
                    
                                <p>Join the Apache Ignite community meetup on April 15 at 18:00 Moscow time. Let's go over the latest release of this distributed database, talk about how to load data into Ignite faster, and tell about the hottest changes for data scientists and others working with Python - Apache Ignite Python Thin Client.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/ru-RU/Moscow-Apache-Ignite-Meetup/events/277376724/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/ru-RU/Moscow-Apache-Ignite-Meetup/events/277376724/"
                                            data-a2a-title="Apache Ignite Meetup Moscow">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="using-ignite-and-jboss-drools-to-implement-a-complex-event-processing-solution">
                                <h3 style="display:inline-block;">Using Ignite and JBoss Drools to Implement a Complex Event Processing Solution
                                    <a href="/events.html#using-ignite-and-jboss-drools-to-implement-a-complex-event-processing-solution"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite Meetup, Manoel Pereira de Lima Junior & Ney Luiz Montes Junior</div>
                                <div class="event-date">April 13, 2021</div>
                    
                                <p>In this talk, we describe and show how to use Apache Ignite and JBoss Drools to design a complex event processing (CEP) solution. The solution processes and correlates millions of events per second from a publish/subscribe message broker and another kind of events streamer. The CEP solution that we demonstrate has a microservices architecture with real-time automation of CI/CD. We show how we have used this highly scalable CEP microservices ecosystem since 2018 to support a digital-service and marketing platform for one of the largest banks in Brazil.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276693067/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276693067/"
                                            data-a2a-title="Using Ignite and JBoss Drools to Implement a Complex Event Processing Solution">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="distributed-java-databases-under-the-hood-components-and-interactions-between-them">
                                <h3 style="display:inline-block;">Distributed Java DBs Under the Hood: Components & Interactions Between Them
                                    <a href="/events.html#distributed-java-databases-under-the-hood-components-and-interactions-between-them"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Chicago PostgreSQL Meetup Group, Val Kulichenko</div>
                                <div class="event-date">April 13, 2021</div>
                    
                                <p>During the session, we create a simple (although fully workable) distributed cache in Java, almost from scratch. We use the cache to demonstrate basic CRUD operations, as well as to demonstrate how scalability can be improved by adding resources to the system.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Chicago-PostgreSQL-User-Group/events/277073375/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Chicago-PostgreSQL-User-Group/events/277073375/"
                                            data-a2a-title="Distributed Java DBs Under the Hood: Components & Interactions Between Them">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="distributed-java-dbs-under-the-hood-components-interactions-between-them">
                                <h3 style="display:inline-block;">Distributed Java DBs Under the Hood: Components & Interactions Between Them
                                    <a href="/events.html#distributed-java-dbs-under-the-hood-components-interactions-between-them"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">London Java Community, Val Kulichenko</div>
                                <div class="event-date">April 7, 2021</div>
                    
                                <p>During the session, we create a simple (although fully workable) distributed cache in Java, almost from scratch. We use the cache to demonstrate basic CRUD operations, as well as to demonstrate how scalability can be improved by adding resources to the system.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.eventbrite.co.uk/e/distributed-java-databases-under-the-hood-tickets-148903304793" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.eventbrite.co.uk/e/distributed-java-databases-under-the-hood-tickets-148903304793"
                                            data-a2a-title="Distributed Java DBs Under the Hood: Components & Interactions Between Them">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="distributed-java-dbs-under-the-hood-components-interactions-between-them">
                                <h3 style="display:inline-block;">Distributed Java DBs Under the Hood: Components & Interactions Between Them
                                    <a href="/events.html#distributed-java-dbs-under-the-hood-components-interactions-between-them"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">The Boston Java Meetup Group, Val Kulichenko</div>
                                <div class="event-date">March 29, 2021</div>
                    
                                <p>During the session, we create a simple (although fully workable) distributed cache in Java, almost from scratch. We use the cache to demonstrate basic CRUD operations, as well as to demonstrate how scalability can be improved by adding resources to the system.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/boston-java/events/276334396/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/boston-java/events/276334396/"
                                            data-a2a-title="Distributed Java DBs Under the Hood: Components & Interactions Between Them">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/webinars.svg" alt="Webinar logo">
            <p>Webinar</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="how-to-use-apache-ignite-and-spring-to-build-a-reliable-distributed-web-application">
            <h3 style="display:inline-block;">How to use Apache Ignite and Spring to build a reliable distributed web application
                <a href="/events.html#how-to-use-apache-ignite-and-spring-to-build-a-reliable-distributed-web-application"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Webinar, Semyon Danilov</div>
            <div class="event-date">March 17, 2021</div>

            <p>Spring is a popular framework, and Apache Ignite is a fast layer for data storage. Adding Ignite enables you to manage http sessions, cache-application data, and so on. During this 1.5 hour session, Semyon uses the Spring framework to create a simple web application and demonstrates how Apache Ignite can empower the application.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/how-use-apache-ignite-and-spring-build-reliable-distributed-web-application" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/how-use-apache-ignite-and-spring-build-reliable-distributed-web-application"
                        data-a2a-title="How to use Apache Ignite and Spring to build a reliable distributed web application">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="using-apache-ignite-to-boost-the-development-of-jira-cloud-apps">
            <h3 style="display:inline-block;">Using Apache Ignite to boost the development of Jira Cloud apps
                <a href="/events.html#using-apache-ignite-to-boost-the-development-of-jira-cloud-apps"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Virtual Apache Ignite Meetup, Peter Gagarinov</div>
            <div class="event-date">March 2, 2021</div>

            <p>In this talk, Peter shares his Apache Ignite experience. He will show how one can minimize the number of blocks in a complex, scalable backend for an ML-based, automated issue-management system (Alliedium), as you stay within the Java ecosystem and the microservice paradigm. We show you how to integrate Apache Ignite with Atlassian Connect Spring Boot, and we discuss Apache Ignite features such as SQL and NoSQL queries, thin and thick clients, caching, distributed messaging and events, distributed computations, database-schema change tracking, and Kubernetes deployment.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276416802/" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276416802/"
                        data-a2a-title="Using Apache Ignite to boost the development of Jira Cloud apps">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/webinars.svg" alt="Webinar logo">
            <p>Webinar</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="apache-ignite-sql-troubleshooting">
            <h3 style="display:inline-block;">Apache Ignite SQL Troubleshooting
                <a href="/events.html#apache-ignite-sql-troubleshooting"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Webinar, Vladimir Pligin</div>
            <div class="event-date">February 24, 2021</div>

            <p>In this webinar, Vladimir begins with an overview of the Apache Ignite distributed SQL engine. Then, Vladimir talks about basic diagnostic techniques, such as using metrics, tracing, and logs. You see examples of how the techniques can be used to identify SQL issues. At the conclusion of the webinar, you receive a checklist, that will help you quickly identify common SQL issues and improve performance.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/apache-ignite-sql-troubleshooting" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/apache-ignite-sql-troubleshooting"
                        data-a2a-title="Apache Ignite SQL Troubleshooting">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="designing-in-memory-applications-for-cloud-deployment">
            <h3 style="display:inline-block;">Designing In Memory Applications for Cloud Deployment
                <a href="/events.html#designing-in-memory-applications-for-cloud-deployment"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">DeveloperWeek, CloudWorld, Greg Stachnik</div>
            <div class="event-date">February 19, 2021</div>

            <p>Cloud deployments offer the potential for almost infinite resources and flexible scalability. But there are so many options! It can be overwhelming to know which services are best for your use case. Building distributed systems which take advantage of in-memory computing only adds to the complexity. During this session we will introduce the Apache Ignite in-memory computing platform and identify key metrics that can help you maximize application performance on your existing cloud infrastructure. We will provide best practices on how best to structure and deploy in-memory applications on both public and hybrid clouds.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://emamo.com/event/developerweek-2021/s/open-talk-cloudworld-designing-in-memory-applications-for-cloud-deployment-WQKZyN" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://emamo.com/event/developerweek-2021/s/open-talk-cloudworld-designing-in-memory-applications-for-cloud-deployment-WQKZyN"
                        data-a2a-title="Designing In Memory Applications for Cloud Deployment">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="pro-workshop-in-memory-computing-how-to-fight-your-serverless-code-s-idle-time">
            <h3 style="display:inline-block;">PRO WORKSHOP: In-Memory Computing: How to Fight Your Serverless Code's Idle Time
                <a href="/events.html#pro-workshop-in-memory-computing-how-to-fight-your-serverless-code-s-idle-time"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">DeveloperWeek Virtual, Denis Magda</div>
            <div class="event-date">February 17, 2021</div>

            <p>In this session, you learn how to use in-memory computing to reduce idle time and accelerate the execution of serverless code. The provisioning of an in-memory cluster is a prerequisite, not a game-changer. Dramatic differences become apparent when you consider several tactics while fastening serverless code to your just-provisioned in-memory cluster.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://emamo.com/event/developerweek-2021/s/pro-workshop-in-memory-computing-how-to-fight-your-serverless-codes-idle-time-ozjzro" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://emamo.com/event/developerweek-2021/s/pro-workshop-in-memory-computing-how-to-fight-your-serverless-codes-idle-time-ozjzro"
                        data-a2a-title="PRO WORKSHOP: In-Memory Computing: How to Fight Your Serverless Code's Idle Time">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="detecting-potential-hazardous-situations-in-the-dutch-railway-planning-with-apache-ignite">
            <h3 style="display:inline-block;">Detecting Potential Hazardous Situations in the Dutch Railway Planning with Apache Ignite
                <a href="/events.html#detecting-potential-hazardous-situations-in-the-dutch-railway-planning-with-apache-ignite"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Virtual Apache Ignite® Meetup, Pim Dorrestijn</div>
            <div class="event-date">February 16, 2021</div>

            <p>Every day, millions of people travel by train through the Netherlands—on one of the busiest rail infrastructures in Europe. More than 10,000 train movements are performed daily. Planning for all these train rides and designing a timetable that avoids hazardous situations is a challenge. And, the challenge is constantly increasing, with more travelers every day and more trains on every new timetable. To meet this challenge, JDriven built a space-based architecture with Apache Ignite. Ignite provides a distributed, horizontally scalable data and computational grid. The grid is used to calculate all train movements on the rail infrastructure. Thus, it becomes possible to detect potentially hazardous situations and report them to the planners, so timetable reliability can be improved. Such improvements help Nederlandse Spoorwegen (the Dutch main rail network) and ProRail to ensure that everyone travels safely to their destination.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276125392/" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276125392/"
                        data-a2a-title="Detecting Potential Hazardous Situations in the Dutch Railway Planning with Apache Ignite">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/training.svg" alt="Training logo">
            <p>Training</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="apache-ignite-essentials-key-design-principles-for-building-data-intensive-applications">
            <h3 style="display:inline-block;">Apache Ignite Essentials - Key Design Principles for Building Data-Intensive Applications
                <a href="/events.html#apache-ignite-essentials-key-design-principles-for-building-data-intensive-applications"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Developer Training, Denis Magda</div>
            <div class="event-date">February 10, 2021</div>

            <p>This free, two-hour training is for Java developers and architects who build high-performance and data-intensive applications that are powered by Apache Ignite.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/developer-training-apache-ignite-essentials-key-design-principles-building-data" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/developer-training-apache-ignite-essentials-key-design-principles-building-data"
                        data-a2a-title="Apache Ignite Essentials - Key Design Principles for Building Data-Intensive Applications">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="enabling-real-time-analytics-for-data-lakes-with-apache-ignite">
            <h3 style="display:inline-block;">Enabling Real-Time Analytics for Data Lakes with Apache Ignite
                <a href="/events.html#enabling-real-time-analytics-for-data-lakes-with-apache-ignite"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Subsurface: Cloud Data Lake conf, Denis Magda</div>
            <div class="event-date">January 28, 2021</div>

            <p>In this session, Denis Magda describes how Apache Ignite and GridGain as an in-memory computing platform can modernize existing data lake architectures, enabling real-time analytics that spans operational, historical, and streaming data sets.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://subsurfaceconf.com/winter2021" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://subsurfaceconf.com/winter2021"
                        data-a2a-title="Enabling Real-Time Analytics for Data Lakes with Apache Ignite">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="apache-ignite-3-0-0-alpha-build-community-gathering">
            <h3 style="display:inline-block;">Apache Ignite 3.0.0 Alpha Build Community Gathering
                <a href="/events.html#apache-ignite-3-0-0-alpha-build-community-gathering"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Virtual Apache Ignite® Meetup</div>
            <div class="event-date">January 26, 2021</div>

            <p>This gathering is organized to summarize feedback, share ideas, and overview the following stages of Ignite 3.0 development. In the beggining Release Manager, Val Kulichenko, will do the short demo.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/275722317/" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/275722317/"
                        data-a2a-title="Apache Ignite 3.0.0 Alpha Build Community Gathering">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="designing-in-memory-applications-for-cloud-deployment">
                                <h3 style="display:inline-block;">Designing In Memory Applications for Cloud Deployment
                                    <a href="/events.html#designing-in-memory-applications-for-cloud-deployment"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DeveloperWeek, CloudWorld, Greg Stachnik</div>
                                <div class="event-date">February 19, 2021</div>
                    
                                <p>Cloud deployments offer the potential for almost infinite resources and flexible scalability. But there are so many options! It can be overwhelming to know which services are best for your use case. Building distributed systems which take advantage of in-memory computing only adds to the complexity. During this session we will introduce the Apache Ignite in-memory computing platform and identify key metrics that can help you maximize application performance on your existing cloud infrastructure. We will provide best practices on how best to structure and deploy in-memory applications on both public and hybrid clouds.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://emamo.com/event/developerweek-2021/s/open-talk-cloudworld-designing-in-memory-applications-for-cloud-deployment-WQKZyN" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://emamo.com/event/developerweek-2021/s/open-talk-cloudworld-designing-in-memory-applications-for-cloud-deployment-WQKZyN"
                                            data-a2a-title="Designing In Memory Applications for Cloud Deployment">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="pro-workshop-in-memory-computing-how-to-fight-your-serverless-code-s-idle-time">
                                <h3 style="display:inline-block;">PRO WORKSHOP: In-Memory Computing: How to Fight Your Serverless Code's Idle Time
                                    <a href="/events.html#pro-workshop-in-memory-computing-how-to-fight-your-serverless-code-s-idle-time"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DeveloperWeek Virtual, Denis Magda</div>
                                <div class="event-date">February 17, 2021</div>
                    
                                <p>In this session, you learn how to use in-memory computing to reduce idle time and accelerate the execution of serverless code. The provisioning of an in-memory cluster is a prerequisite, not a game-changer. Dramatic differences become apparent when you consider several tactics while fastening serverless code to your just-provisioned in-memory cluster.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://emamo.com/event/developerweek-2021/s/pro-workshop-in-memory-computing-how-to-fight-your-serverless-codes-idle-time-ozjzro" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://emamo.com/event/developerweek-2021/s/pro-workshop-in-memory-computing-how-to-fight-your-serverless-codes-idle-time-ozjzro"
                                            data-a2a-title="PRO WORKSHOP: In-Memory Computing: How to Fight Your Serverless Code's Idle Time">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="detecting-potential-hazardous-situations-in-the-dutch-railway-planning-with-apache-ignite">
                                <h3 style="display:inline-block;">Detecting Potential Hazardous Situations in the Dutch Railway Planning with Apache Ignite
                                    <a href="/events.html#detecting-potential-hazardous-situations-in-the-dutch-railway-planning-with-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite® Meetup, Pim Dorrestijn</div>
                                <div class="event-date">February 16, 2021</div>
                    
                                <p>Every day, millions of people travel by train through the Netherlands—on one of the busiest rail infrastructures in Europe. More than 10,000 train movements are performed daily. Planning for all these train rides and designing a timetable that avoids hazardous situations is a challenge. And, the challenge is constantly increasing, with more travelers every day and more trains on every new timetable. To meet this challenge, JDriven built a space-based architecture with Apache Ignite. Ignite provides a distributed, horizontally scalable data and computational grid. The grid is used to calculate all train movements on the rail infrastructure. Thus, it becomes possible to detect potentially hazardous situations and report them to the planners, so timetable reliability can be improved. Such improvements help Nederlandse Spoorwegen (the Dutch main rail network) and ProRail to ensure that everyone travels safely to their destination.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276125392/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276125392/"
                                            data-a2a-title="Detecting Potential Hazardous Situations in the Dutch Railway Planning with Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/training.svg" alt="Training logo">
                                <p>Training</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-essentials-key-design-principles-for-building-data-intensive-applications">
                                <h3 style="display:inline-block;">Apache Ignite Essentials - Key Design Principles for Building Data-Intensive Applications
                                    <a href="/events.html#apache-ignite-essentials-key-design-principles-for-building-data-intensive-applications"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Developer Training, Denis Magda</div>
                                <div class="event-date">February 10, 2021</div>
                    
                                <p>This free, two-hour training is for Java developers and architects who build high-performance and data-intensive applications that are powered by Apache Ignite.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/developer-training-apache-ignite-essentials-key-design-principles-building-data" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/developer-training-apache-ignite-essentials-key-design-principles-building-data"
                                            data-a2a-title="Apache Ignite Essentials - Key Design Principles for Building Data-Intensive Applications">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="enabling-real-time-analytics-for-data-lakes-with-apache-ignite">
                                <h3 style="display:inline-block;">Enabling Real-Time Analytics for Data Lakes with Apache Ignite
                                    <a href="/events.html#enabling-real-time-analytics-for-data-lakes-with-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Subsurface: Cloud Data Lake conf, Denis Magda</div>
                                <div class="event-date">January 28, 2021</div>
                    
                                <p>In this session, Denis Magda describes how Apache Ignite and GridGain as an in-memory computing platform can modernize existing data lake architectures, enabling real-time analytics that spans operational, historical, and streaming data sets.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://subsurfaceconf.com/winter2021" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://subsurfaceconf.com/winter2021"
                                            data-a2a-title="Enabling Real-Time Analytics for Data Lakes with Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-3-0-0-alpha-build-community-gathering">
                                <h3 style="display:inline-block;">Apache Ignite 3.0.0 Alpha Build Community Gathering
                                    <a href="/events.html#apache-ignite-3-0-0-alpha-build-community-gathering"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite® Meetup</div>
                                <div class="event-date">January 26, 2021</div>
                    
                                <p>This gathering is organized to summarize feedback, share ideas, and overview the following stages of Ignite 3.0 development. In the beggining Release Manager, Val Kulichenko, will do the short demo.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/275722317/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/275722317/"
                                            data-a2a-title="Apache Ignite 3.0.0 Alpha Build Community Gathering">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    
                </div>
            

            <!-- ----    BEGIN 2020          --- -->
            

                <div class="tab-pane " id="events-2020">
                                       
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-workshop-developing-applications-that-are-easy-to-manage">
                                <h3 style="display:inline-block;">Apache Ignite Workshop: Developing Applications That Are Easy to Manage
                                    <a href="/events.html#apache-ignite-workshop-developing-applications-that-are-easy-to-manage"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Alexey Kukushkin</div>
                                <div class="event-date">December 9, 2020</div>
                    
                                <p>Typically, operations exceed fifty percent of the cost of an IT system’s life cycle. By developing applications that can be easily managed, developers can significantly reduce the cost of ownership. Manageability is especially important for distributed applications because they are especially complex and often mission-critical.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/apache-ignite-workshop-developing-applications-are-easy-manage" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/apache-ignite-workshop-developing-applications-are-easy-manage"
                                            data-a2a-title="Apache Ignite Workshop: Developing Applications That Are Easy to Manage">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-to-use-apache-ignite-to-rescue-the-backend-of-a-bank">
                                <h3 style="display:inline-block;">How to Use Apache Ignite to Rescue the Backend of a Bank
                                    <a href="/events.html#how-to-use-apache-ignite-to-rescue-the-backend-of-a-bank"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite® Meetup, Mikhail Antonov</div>
                                <div class="event-date">December 8, 2020</div>
                    
                                <p>As users transition to digital channels, the load on the bank's systems has increased. For example, since the beginning of 2020, the number of requests to the ABS subsystems from Raiffeisen-Online has grown by a third. Therefore, load reduction and system scaling are constant and top priorities. Mikhail Antonov will talk about what options were considered, why Ignite was chosen, what the solution architecture looks like, and what the development plans are.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/274647932/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/274647932/"
                                            data-a2a-title="How to Use Apache Ignite to Rescue the Backend of a Bank">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="using-apache-ignite-s-compute-grid-to-integrate-the-drools-rules-engine">
                                <h3 style="display:inline-block;">Using Apache Ignite’s Compute Grid to Integrate the Drools Rules Engine
                                    <a href="/events.html#using-apache-ignite-s-compute-grid-to-integrate-the-drools-rules-engine"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite® Meetup, Ken Cottrell</div>
                                <div class="event-date">December 8, 2020</div>
                    
                                <p>In this brief talk and demo, Ken will show you some of the techniques that you can use with Apache Ignite’s compute grid to broadcast, deploy, and then run Drools/Kie business rules that are co-located with the data in the clusters. Ignite cluster nodes, each of which contains local Drools servers, then process simultaneously and in parallel.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/274647932/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/274647932/"
                                            data-a2a-title="Using Apache Ignite’s Compute Grid to Integrate the Drools Rules Engine">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-java-developers-and-architects">
                                <h3 style="display:inline-block;">In-Memory Computing Essentials for Java Developers and Architects 
                                    <a href="/events.html#in-memory-computing-essentials-for-java-developers-and-architects"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">jLove conference, Denis Magda</div>
                                <div class="event-date">December 4, 2020</div>
                    
                                <p>This session is for software engineers and architects who build data-intensive applications and want practical experience with in-memory computing. You will be introduced to the fundamental capabilities of distributed, in-memory systems and will learn how to tap into your cluster’s resources and how to negate any negative impact that the network might have on the performance of your applications.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://jlove.konfy.care/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://jlove.konfy.care/"
                                            data-a2a-title="In-Memory Computing Essentials for Java Developers and Architects ">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-to-deploy-change-data-capture-using-debezium-in-apache-ignite-and-gridgain">
                                <h3 style="display:inline-block;">How to Deploy Change Data Capture Using Debezium in Apache Ignite and GridGain
                                    <a href="/events.html#how-to-deploy-change-data-capture-using-debezium-in-apache-ignite-and-gridgain"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Evgenii Zhuravlev</div>
                                <div class="event-date">December 2, 2020</div>
                    
                                <p>Kafka with Debezium and GridGain connectors enables change data capture (CDC) based synchronization between third-party databases and GridGain clusters. Synchronization that is based CDC does not require coding; all it requires is to prepare configuration files for each of the points.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/change-data-capture-using-debezium-in-apache-ignite-and-gridgain" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/change-data-capture-using-debezium-in-apache-ignite-and-gridgain"
                                            data-a2a-title="How to Deploy Change Data Capture Using Debezium in Apache Ignite and GridGain">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-java-developers-and-architects">
                                <h3 style="display:inline-block;">In-Memory Computing Essentials for Java Developers and Architects
                                    <a href="/events.html#in-memory-computing-essentials-for-java-developers-and-architects"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Java.IL - the Israeli Java Community, Denis Magda</div>
                                <div class="event-date">November 30, 2020</div>
                    
                                <p>This session is for software engineers and architects who build data-intensive applications and want practical experience with in-memory computing. You will be introduced to the fundamental capabilities of distributed, in-memory systems and will learn how to tap into your cluster’s resources and how to negate any negative impact that the network might have on the performance of your applications.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/JavaIL/events/274529630/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/JavaIL/events/274529630/"
                                            data-a2a-title="In-Memory Computing Essentials for Java Developers and Architects">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    


                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-to-leverage-the-gridgain-operator-for-kubernetes-to-deploy-apache-ignite">
                                <h3 style="display:inline-block;">How to Leverage the Gridgain Operator for Kubernetes to Deploy Apache Ignite
                                    <a href="/events.html#how-to-leverage-the-gridgain-operator-for-kubernetes-to-deploy-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Alexander Shapkin</div>
                                <div class="event-date">November 18, 2020</div>
                    
                                <p>The GridGain Operator for Kubernetes enables you to deploy and manage Apache Ignite and GridGain clusters efficiently. The automation that Kubernetes and the Operator provide simplifies provisioning and minimizes the operational and management burden.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/gridgain-kubernetes-operator-for-apache-ignite" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/gridgain-kubernetes-operator-for-apache-ignite"
                                            data-a2a-title="How to Leverage the Gridgain Operator for Kubernetes to Deploy Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-from-scratch-live-coding-of-a-naive-distributed-system-in-java">
                                <h3 style="display:inline-block;">Apache Ignite from Scratch: Live Coding of a Naive Distributed System in Java
                                    <a href="/events.html#apache-ignite-from-scratch-live-coding-of-a-naive-distributed-system-in-java"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite® Meetup, Denis Magda & Val Kulichenko</div>
                                <div class="event-date">November 17, 2020</div>
                    
                                <p>Apache Ignite is designed as a black box that hides the complexities of distributed databases. However, by knowing how internal components work and how the distributed databases function, you can pave the way for advanced optimizations and sophisticated solutions that are powered by Ignite. During this live coding session, we build a naive implementation of a distributed database that mimics the major components of Ignite. </p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/273935662/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/273935662/"
                                            data-a2a-title="Apache Ignite from Scratch: Live Coding of a Naive Distributed System in Java">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    

<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/webinars.svg" alt="Webinar logo">
            <p>Webinar</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="distributed-application-development-training-approaches-for-user-authentication">
            <h3 style="display:inline-block;">Distributed Application Development Training: Approaches for User Authentication
                <a href="/events.html#distributed-application-development-training-approaches-for-user-authentication"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Webinar, Denis Mekhanikov</div>
            <div class="event-date">November 12, 2020</div>

            <p>During this webinar, we review various approaches to storing and using authentication data in distributed applications. Moving from the simplest to the most complex models, we consider the pros and cons of each approach. We give special attention to one of the most popular approaches to distributed sessions—single sign-on.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/distributed-application-development-training-approaches-user-authentication" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/distributed-application-development-training-approaches-user-authentication"
                        data-a2a-title="Distributed Application Development Training: Approaches for User Authentication">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="performance-and-fault-tolerance-of-apache-ignite-s-network-components">
            <h3 style="display:inline-block;">Performance and Fault-Tolerance of Apache Ignite's Network Components
                <a href="/events.html#performance-and-fault-tolerance-of-apache-ignite-s-network-components"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">In-Memory Computing Summit, Stanislav Lukyanov</div>
            <div class="event-date">October 29, 2020</div>

            <p>Networking is a core pillar of any distributed system. Data transfer, clustering, and failure detection are all done by the system's networking . Network architecture can greatly influence operational performance and efficiency. This talk introduces you to how Apache Ignite's networking layer makes it performant and resilient.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.imcsummit.org/2020/virtual/session/performance-and-fault-tolerance-apache-ignites-network-components" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.imcsummit.org/2020/virtual/session/performance-and-fault-tolerance-apache-ignites-network-components"
                        data-a2a-title="Performance and Fault-Tolerance of Apache Ignite's Network Components">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="engineering-overview-of-gridgain-nebula-managed-service-how-we-deploy-gridgain-apache-ignite-in-clouds">
            <h3 style="display:inline-block;">Engineering Overview of GridGain Nebula Managed Service: How We Deploy GridGain/Apache Ignite in Clouds
                <a href="/events.html#engineering-overview-of-gridgain-nebula-managed-service-how-we-deploy-gridgain-apache-ignite-in-clouds"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">In-Memory Computing Summit,  Andrey Alexandrov</div>
            <div class="event-date">October 29, 2020</div>

            <p>A managed service offering (MSO) is usually thought of as a magic black box. You deploy your database or application as part of an MSO in a cloud environment, and then your solution is scaled, load-balanced, patched with security fixes and kept up-and-running day and night. To make such services functional and reliable, the engineers who develop MSOs have to solve many challenges. The challenges are related to deployment in the cloud and in Kubernetes environments, monitoring, fault-tolerance, and recovery. Join this technical deep-dive, led by Andrey Alexander. Andrey guides you through the internals of GridGain Nebula, a managed service for Apache Ignite. Learn how to deploy Apache Ignite and how to monitor best practices for cloud environments.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.imcsummit.org/2020/virtual/session/engineering-overview-gridgain-nebula-managed-service-how-we-deploy-gridgainapache-ignite" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.imcsummit.org/2020/virtual/session/engineering-overview-gridgain-nebula-managed-service-how-we-deploy-gridgainapache-ignite"
                        data-a2a-title="Engineering Overview of GridGain Nebula Managed Service: How We Deploy GridGain/Apache Ignite in Clouds">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="hyper-parameter-tuning-and-distributed-stacking-with-apache-ignite-ml">
            <h3 style="display:inline-block;">Hyper-parameter Tuning and Distributed Stacking with Apache Ignite ML
                <a href="/events.html#hyper-parameter-tuning-and-distributed-stacking-with-apache-ignite-ml"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">In-Memory Computing Summit, Alexey Zinoviev</div>
            <div class="event-date">October 29, 2020</div>

            <p>The distributed machine learning algorithms are presented in one greatest library widely known as Spark MLlib, but the current implementation of ML algorithms in Spark has several disadvantages associated with the transition from standard Spark SQL types to ML-specific types, a lack of support for ensembles methods like stacking, boosting and bagging, a low level of algorithms' adaptation to distributed computing, a relatively slow speed of adding new algorithms to the current library and only basic support for hyper-parameter tuning including Grid Search and Cross-Validation methods.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.imcsummit.org/2020/virtual/session/hyper-parameter-tuning-and-distributed-stacking-apache-ignite-ml" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.imcsummit.org/2020/virtual/session/hyper-parameter-tuning-and-distributed-stacking-apache-ignite-ml"
                        data-a2a-title="Hyper-parameter Tuning and Distributed Stacking with Apache Ignite ML">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="apache-ignite-extensions-modularization">
            <h3 style="display:inline-block;">Apache Ignite Extensions - Modularization
                <a href="/events.html#apache-ignite-extensions-modularization"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">In-Memory Computing Summit, Saikat Maitra</div>
            <div class="event-date">October 28, 2020</div>

            <p>Apache Ignite Extensions to allow Apache Ignite codebase host core modules capabilities and migrate 3rd party integrations in a separate repository. We will discuss the changes that would be required in user applications to prepare for Apache Ignite upgrade and Apache Ignite Extensions migration if any of the migrated extensions modules are used. </p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.imcsummit.org/2020/virtual/session/apache-ignite-extensions-modularization" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.imcsummit.org/2020/virtual/session/apache-ignite-extensions-modularization"
                        data-a2a-title="Apache Ignite Extensions - Modularization">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="analyzing-and-debugging-ignite-applications-for-performance">
            <h3 style="display:inline-block;">Analyzing and Debugging Ignite Applications for Performance
                <a href="/events.html#analyzing-and-debugging-ignite-applications-for-performance"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">In-Memory Computing Summit, Greg Stachnick</div>
            <div class="event-date">October 28, 2020</div>

            <p>In this demo-driven session, you will learn how to enable tracing in your Ignite application, how to collect and analyze span data, and how to debug the various parts of the application lifecycle. We will also identify key performance metrics which you should be aware of when monitoring production applications.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.imcsummit.org/2020/virtual/session/analyzing-and-debugging-ignite-applications-performance" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.imcsummit.org/2020/virtual/session/analyzing-and-debugging-ignite-applications-performance"
                        data-a2a-title="Analyzing and Debugging Ignite Applications for Performance">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="going-cloud-native-serverless-applications-with-apache-ignite">
            <h3 style="display:inline-block;">Going Cloud-Native: Serverless Applications With Apache Ignite
                <a href="/events.html#going-cloud-native-serverless-applications-with-apache-ignite"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">In-Memory Computing Summit, Denis Magda</div>
            <div class="event-date">October 28, 2020</div>

            <p>Serverless computing allows you to design and build scalable cloud-native applications without thinking about infrastructure provisioning and orchestration. With Apache Ignite, you can bootstrap an in-memory cluster in the cloud and access data 100-1000x faster than with disk-based databases. Join Denis discussing architectural patterns and design considerations for deploying Apache Ignite in a serverless computing environment.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.imcsummit.org/2020/virtual/session/going-cloud-native-serverless-applications-apache-ignite" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.imcsummit.org/2020/virtual/session/going-cloud-native-serverless-applications-apache-ignite"
                        data-a2a-title="Going Cloud-Native: Serverless Applications With Apache Ignite">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/conferences.svg" alt="Conference logo">
            <p>Conference</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="training-setting-up-apache-ignite-management-and-monitoring-solution-with-gridgain-control-center">
            <h3 style="display:inline-block;">Training: Setting Up Apache Ignite Management and Monitoring Solution With GridGain Control Center
                <a href="/events.html#training-setting-up-apache-ignite-management-and-monitoring-solution-with-gridgain-control-center"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">In-Memory Computing Summit, Denis Magda</div>
            <div class="event-date">October 27, 2020</div>

            <p>This instructor-led training is for those wondering how to monitor and manage Apache Ignite (or GridGain) clusters in production: what the most important metrics are, how to set up alerting or troubleshoot performance when the cluster is under the production load, and how to do cluster backups. The list of questions and challenges related to Ignite production monitoring goes on and on. And you’ll get many of those questions covered.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.imcsummit.org/2020/virtual/register" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.imcsummit.org/2020/virtual/register"
                        data-a2a-title="Training: Setting Up Apache Ignite Management and Monitoring Solution With GridGain Control Center">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="apache-ignite-lightning-talks-and-q-a-session">
            <h3 style="display:inline-block;">Apache Ignite Lightning Talks and Q&A Session
                <a href="/events.html#apache-ignite-lightning-talks-and-q-a-session"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Virtual Apache Ignite® Meetup</div>
            <div class="event-date">October 20, 2020</div>

            <p>On October 20, join a special community session and ask experts about Ignite features, configuration, and architecture. We will start with three 10-minute tech talks by Ignite developers: Apache Ignite System Views — Show what was hidden — Nikolay Izhikov, Apache Ignite PMC Communication via Discovery — Ivan Bessonov, Apache Ignite Contributor working with Ignite Core TBD — Ravil Galeyev, Apache Ignite ML module Contributor Then, you will have an hour to ask our pool of experts your Ignite questions.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.meetup.com/ru-RU/Apache-Ignite-Virtual-Meetup/events/273921637/" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.meetup.com/ru-RU/Apache-Ignite-Virtual-Meetup/events/273921637/"
                        data-a2a-title="Apache Ignite Lightning Talks and Q&A Session">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-workshop-cluster-memory-management-techniques">
                                <h3 style="display:inline-block;">Apache Ignite Workshop: Cluster Memory Management Techniques
                                    <a href="/events.html#apache-ignite-workshop-cluster-memory-management-techniques"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">October 14</div>
                    
                                <p>In this webinar, Denis Magda will introduce several architectural techniques that can help you keep your cluster operational and your applications running even if memory becomes a scarce resource. During the webinar demo you will learn how to use those techniques in practice. </p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/apache-ignite-workshop-cluster-memory-management-techniques" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/apache-ignite-workshop-cluster-memory-management-techniques"
                                            data-a2a-title="Apache Ignite Workshop: Cluster Memory Management Techniques">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-java-developers-and-architects-with-vjug">
                                <h3 style="display:inline-block;">In-Memory Computing Essentials for Java Developers and Architects with VJUG
                                    <a href="/events.html#in-memory-computing-essentials-for-java-developers-and-architects-with-vjug"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Java User Group, Denis Magda</div>
                                <div class="event-date">October 8, 2020</div>
                    
                                <p>This session is for software engineers and architects who build data-intensive applications and want practical experience with in-memory computing. You will be introduced to the fundamental capabilities of distributed, in-memory systems and will learn how to tap into your cluster’s resources.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/virtualJUG/events/273278453/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/virtualJUG/events/273278453/"
                                            data-a2a-title="In-Memory Computing Essentials for Java Developers and Architects with VJUG">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-java-developers-and-architects-with-ljc">
                                <h3 style="display:inline-block;">In-Memory Computing Essentials for Java Developers and Architects with LJC
                                    <a href="/events.html#in-memory-computing-essentials-for-java-developers-and-architects-with-ljc"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">London Java Community Meetup, Denis Magda</div>
                                <div class="event-date">October 7, 2020</div>
                    
                                <p>This session is for software engineers and architects who build data-intensive applications and want practical experience with in-memory computing. You will be introduced to the fundamental capabilities of distributed, in-memory systems and will learn how to tap into your cluster’s resources.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.eventbrite.co.uk/e/in-memory-computing-essentials-for-java-developers-architects-tickets-123331914075" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.eventbrite.co.uk/e/in-memory-computing-essentials-for-java-developers-architects-tickets-123331914075"
                                            data-a2a-title="In-Memory Computing Essentials for Java Developers and Architects with LJC">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    
                    
                           
                            
                            



                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="imc-essentials-jconf-dev">
                                <h3 style="display:inline-block;">In-Memory Computing Essentials for Software Engineers
                                    <a href="/events.html#imc-essentials-jconf-dev"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">JConf.dev, Denis Magda</div>
                                <div class="event-date">September 30, 2020</div>
            
                                <p>Distributed, in-memory computing technologies such as caches, data grids, and databases boost
                                    application performance and solve scalability problems by storing and processing large datasets
                                    across a cluster of interconnected machines.
            
                                    This session is for software engineers and architects who build data-intensive applications and
                                    want practical experience with in-memory computing. You will be introduced to the fundamental
                                    capabilities of distributed, in-memory systems and will
                                    learn how to tap into your cluster’s resources and how to negate any negative impact that the
                                    network might have on the performance of your applications.
                                </p>
            
                                <div class="row">
                                    <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://jconf.dev/session?id=5454" target="_blank" rel="noopener">Join</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                             data-a2a-url="https://jconf.dev/session?id=5454"
                                             data-a2a-title="In-Memory Computing Essentials for Software Engineers">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
            
                            </section>
                        </div>
                    </div>

                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="data-streaming-using-apache-flink-and-apache-ignite-apache-con">
                                <h3 style="display:inline-block;">Data Streaming using Apache Flink and Apache Ignite
                                    <a href="/events.html#data-streaming-using-apache-flink-and-apache-ignite-apache-con"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">ApacheCon @home, Saikat Maitra</div>
                                <div class="event-date">September 29, 2020</div>
                    
                                <p>Join Saikat Maitra to learn how to build a simple data streaming application using Apache Flink and Apache Ignite. This stream processing topology will allow data streaming in a distributed, scalable, and fault-tolerant manner, which can process data sets consisting of virtually unlimited streams of events. </p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://apachecon.com/acah2020/tracks/ignite.html" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://apachecon.com/acah2020/tracks/ignite.html"
                                            data-a2a-title="Data Streaming using Apache Flink and Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-software-engineers-apache">
                                <h3 style="display:inline-block;">In-Memory Computing Essentials For Software Engineers
                                    <a href="/events.html#in-memory-computing-essentials-for-software-engineers-apache"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">ApacheCon @home, Denis Magda</div>
                                <div class="event-date">September 29, 2020</div>
                    
                                <p>Attendees will be introduced to the fundamental capabilities of in-memory computing platforms
                                    that are proven to boost application performance and solve scalability problems by storing and
                                    processing unlimited data sets distributed across a cluster of interconnected machines. The
                                    session is tailored for software engineers and architects seeking practical experience with in-memory computing technologies. </p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://apachecon.com/acah2020/tracks/ignite.html" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://apachecon.com/acah2020/tracks/ignite.html"
                                            data-a2a-title="In-Memory Computing Essentials For Software Engineers">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-continuous-machine-and-deep-learning-at-scale">
                                <h3 style="display:inline-block;">Apache Ignite: Continuous Machine and Deep Learning at Scale
                                    <a href="/events.html#apache-ignite-continuous-machine-and-deep-learning-at-scale"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Developer Week Seattle: Cloud Edition, Ken Cottrell</div>
                                <div class="event-date">September 28, 2020</div>
            
                                <p>Learn how Apache Ignite in-memory computing platform addresses these ML limitations with distributed model training and execution, to provide near-real-time, continuous learning capabilities. This discussion will explain how distributed ML/DL works with Apache Ignite, and how to get started.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.developerweek.com/CloudEdition/conference/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.developerweek.com/CloudEdition/conference/"
                                            data-a2a-title="Apache Ignite: Continuous Machine and Deep Learning at Scale">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
            
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference logo">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="heads-in-the-cloud-cloud-deployment-best-practices-for-in-memory-computing">
                                <h3 style="display:inline-block;">Heads in the Cloud: Cloud Deployment Best Practices for in Memory Computing
                                    <a href="/events.html#heads-in-the-cloud-cloud-deployment-best-practices-for-in-memory-computing"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Developer Week Seattle: Cloud Edition, Greg Stachnik</div>
                                <div class="event-date">September 28, 2020</div>
            
                                <p>During this session, we will introduce the Apache Ignite in-memory computing platform and identify key metrics that can help you maximize application performance on your existing cloud infrastructure. We will provide best practices on how best to structure and deploy in-memory applications on both public and hybrid clouds.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.developerweek.com/CloudEdition/conference/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.developerweek.com/CloudEdition/conference/"
                                            data-a2a-title="Heads in the Cloud: Cloud Deployment Best Practices for in Memory Computing">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-3-0-major-changes-and-features-in-russian">
                                <h3 style="display:inline-block;">Apache Ignite 3.0: Major Changes and Features in Russian
                                    <a href="/events.html#apache-ignite-3-0-major-changes-and-features-in-russian"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Meetup, Valentin Kulichenko</div>
                                <div class="event-date">September 17, 2020</div>

                                <p>Apache Ignite 3.0 is coming! What will it be? September 15 Val Kulichenko, a community old-timer and the Ignite 3.0 release manager, will open the discussion by covering major changes that are proposed for release 3.0. The gathering will be in Russian.</p>

                                <div class="row">
                                    <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/ru-RU/Moscow-Apache-Ignite-Meetup/events/272675398/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">


                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                             data-a2a-url="https://www.meetup.com/ru-RU/Moscow-Apache-Ignite-Meetup/events/272675398/"
                                             data-a2a-title="Apache Ignite 3.0: Major Changes and Features in Russian">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>

                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="going-cloud-native-serverless-applications-with-apache-ignite">
                                <h3 style="display:inline-block;">Going Cloud-Native: Serverless Applications With Apache Ignite
                                    <a href="/events.html#going-cloud-native-serverless-applications-with-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">September 16, 2020</div>
                    
                                <p>Serverless computing allows you to design and build scalable cloud-native applications without thinking about infrastructure provisioning and orchestration. With Apache Ignite, you can bootstrap an in-memory cluster in the cloud and access data 100-1000x faster than with disk-based databases.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/going-cloud-native-serverless-applications-apache-ignite" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/going-cloud-native-serverless-applications-apache-ignite"
                                            data-a2a-title="Going Cloud-Native: Serverless Applications With Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-3-0-major-changes-and-features">
                                <h3 style="display:inline-block;">Apache Ignite 3.0: Major Changes and Features
                                    <a href="/events.html#apache-ignite-3-0-major-changes-and-features"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Meetup, Valentin Kulichenko</div>
                                <div class="event-date">September 15, 2020</div>
                    
                                <p>Apache Ignite 3.0 is coming! What will it be? September 15 Val Kulichenko, a community old-timer and the Ignite 3.0 release manager, will open the discussion by covering major changes that are proposed for release 3.0.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/272675408/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/272675408/"
                                            data-a2a-title="Apache Ignite 3.0: Major Changes and Features">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="networking-communication-in-apache-ignite">
                                <h3 style="display:inline-block;">Networking & Communication in Apache Ignite
                                    <a href="/events.html#networking-communication-in-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Stanislav Lukyanov</div>
                                <div class="event-date">September 9, 2020</div>
                    
                                <p>Networking is a core pillar of any distributed system and is responsible for cluster-node discovery procedures, peer-to-peer communication between nodes, and failure handling. Network architecture can greatly influence operational performance and efficiency.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/maximize-apache-ignite-performance-optimizing-network-components" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/maximize-apache-ignite-performance-optimizing-network-components"
                                            data-a2a-title="Networking & Communication in Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="when-you-don-t-need-apache-ignite-3-cases-when-you-d-better-not-use-platform">
                                <h3 style="display:inline-block;">When You Don't Need Apache Ignite: 3 cases when you'd better not use platform
                                    <a href="/events.html#when-you-don-t-need-apache-ignite-3-cases-when-you-d-better-not-use-platform"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Virtual Apache Ignite Meetup, Dmitry Pavlov</div>
                                <div class="event-date">September 8, 2020</div>
                    
                                <p>For some cases, Apache Ignite is the perfect application. However, also, for some cases, Apache Ignite can be a disappointment. In this talk, Dmitry Pavlov discusses some popular and less-than popular use cases. The presentation focuses on the needs of developers and architects who face application-performance problems.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/272551117/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/272551117/"
                                            data-a2a-title="When You Don't Need Apache Ignite: 3 cases when you'd better not use platform">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="getting-started-with-apache-ignite-digital-integration-hub">
                                <h3 style="display:inline-block;">Getting Started with Apache Ignite: Digital Integration Hub
                                    <a href="/events.html#getting-started-with-apache-ignite-digital-integration-hub"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Glenn Wiebe</div>
                                <div class="event-date">September 2, 2020</div>
                    
                                <p>Apache Ignite and GridGain can be used as a simple cache, an in-memory data grid (IMDG), and as an in-memory database (IMDB). These data management patterns can be combined with Ignite integration facilities to function as a Digital Integration Hub (DIH) for real-time data access across data sources and applications.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/getting-started-apache-ignite-digital-integration-hub" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/getting-started-apache-ignite-digital-integration-hub"
                                            data-a2a-title="Getting Started with Apache Ignite: Digital Integration Hub">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="using-distributed-tracing-to-resolve-performance-issues-in-apache-ignite">
                                <h3 style="display:inline-block;">Using Distributed Tracing to Resolve Performance Issues in Apache Ignite
                                    <a href="/events.html#using-distributed-tracing-to-resolve-performance-issues-in-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Greg Stachnick</div>
                                <div class="event-date">August 26, 2020</div>
                    
                                <p>Debugging distributed-system applications can be more complex than debugging traditional monolithic applications. As API calls jump across nodes in the cluster, it can be tricky to follow the execution just by analyzing application logs. Tracing adds a useful tool to the root-cause-analysis toolbox.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/using-distributed-tracing-resolve-performance-issues-in-apache-ignite" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/using-distributed-tracing-resolve-performance-issues-in-apache-ignite"
                                            data-a2a-title="Using Distributed Tracing to Resolve Performance Issues in Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-ml-2-8-a-complete-feature-overview">
                                <h3 style="display:inline-block;">Apache Ignite ML 2.8: A Complete Feature Overview
                                    <a href="/events.html#apache-ignite-ml-2-8-a-complete-feature-overview"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache Ignite Saint Petersburg Meetup, Alexey Zinoviev</div>
                                <div class="event-date">August 20, 2020</div>
                    
                                <p>The talk will be presented in Russian. In this 50-minute presentation, the module maintainer Alexey Zinoviev will give a complete overview of the ML functionality. He will tell what can already be done with Apache Ignite ML and what cannot be done yet.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/St-Petersburg-Apache-Ignite-Meetup/events/272207798/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/St-Petersburg-Apache-Ignite-Meetup/events/272207798/"
                                            data-a2a-title="Apache Ignite ML 2.8: A Complete Feature Overview">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    


                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="building-a-blockchain-network-with-perper-a-serverless-computation-framework-for-apache-ignite">
                                <h3 style="display:inline-block;">Building a Blockchain Network with Perper, a Serverless Computation Framework for Apache Ignite
                                    <a href="/events.html#building-a-blockchain-network-with-perper-a-serverless-computation-framework-for-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache Ignite Virtual Meetup, Branimir Angelov</div>
                                <div class="event-date">August 11, 2020</div>
                    
                                <p>Apache Ignite offers powerful, in-memory, distributed-computing capabilities. These capabilities can provide the foundation for building various programming models. In this talk, we focus on reactive programming and how to use Apache Ignite to build a serverless computation framework that is based on reactive streams (Perper). We discuss Apache Ignite topics such as services, data locality, continuous queries, and platform interoperability. </p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/271920068/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/271920068/"
                                            data-a2a-title="Building a Blockchain Network with Perper, a Serverless Computation Framework for Apache Ignite">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-101-key-deployment-strategies-for-database-acceleration">
                                <h3 style="display:inline-block;">Apache Ignite 101: Key Deployment Strategies for Database Acceleration
                                    <a href="/events.html#apache-ignite-101-key-deployment-strategies-for-database-acceleration"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Valentin Kulichenko</div>
                                <div class="event-date">August 5, 2020</div>
                    
                                <p>The Ignite in-memory computing platform can power real-time applications that need to process terabytes of data with in-memory speed. Join us for this webinar to learn about the various Ignite deployment options for database acceleration</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/database-acceleration-deployment-strategies-with-apache-ignite" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/database-acceleration-deployment-strategies-with-apache-ignite"
                                            data-a2a-title="Apache Ignite 101: Key Deployment Strategies for Database Acceleration">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-best-practices-for-native-persistence-and-data-recovery">
                                <h3 style="display:inline-block;">Apache Ignite Best Practices for Native Persistence and Data Recovery
                                    <a href="/events.html#apache-ignite-best-practices-for-native-persistence-and-data-recovery"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache Ignite Virtual Meetup, Ivan Rakov</div>
                                <div class="event-date">July 28, 2020</div>
                    
                                <p>When persistence is enabled, the memory becomes a cache for the most frequently used data and indexes. Native persistence is ACID-compliant, durable, and enables immediate availability on a restart of each node. Data is never lost; GridGain supports full and incremental snapshots along with continuous archiving and provides Point-in-Time recovery to an individual transaction.</p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/271602652/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/271602652/"
                                            data-a2a-title="Apache Ignite Best Practices for Native Persistence and Data Recovery">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="building-a-blockchain-network-with-perper-a-serverless-computation-framework-for-apache-ignite">
                                <h3 style="display:inline-block;">Building a Blockchain Network with Perper, a Serverless Computation Framework for Apache Ignite.
                                    <a href="/events.html#building-a-blockchain-network-with-perper-a-serverless-computation-framework-for-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Branimir Angelov</div>
                                <div class="event-date">July 22, 2020</div>
                    
                                <p>Apache Ignite offers powerful, in-memory, distributed-computing capabilities. These capabilities can provide the foundation for building various programming models. In this talk, we focus on reactive programming and how to use Apache Ignite to build a serverless computation framework that is based on reactive streams (Perper). We discuss Apache Ignite topics such as services, data locality, continuous queries, and platform interoperability. </p>
                    
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/building-blockchain-network-with-perper" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
                    
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/building-blockchain-network-with-perper"
                                            data-a2a-title="Building a Blockchain Network with Perper, a Serverless Computation Framework for Apache Ignite.">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
                    
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="when-you-do-not-need-apache-ignite">
            <h3 style="display:inline-block;">When you DO NOT need Apache Ignite
                <a href="/events.html#when-you-do-not-need-apache-ignite"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Java Community Meetup Saint Petersburg, Dmitry Pavlov</div>
            <div class="event-date">July 16, 2020</div>

            <p>Apache Ignite PMC Chair Dmitry Pavlov will talk about cases when Apache Ignite® should be replaced with other products, as well as about cases when the technology is worth using. We will discuss both the main cases - in-memory data grid & database, and the more rare ones - storing large files, organizing asynchronous interaction through message queues, and full-text search.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://community-z.com/events/java-community-meetup" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://community-z.com/events/java-community-meetup"
                        data-a2a-title="When you DO NOT need Apache Ignite">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="how-to-boost-and-scale-postgres">
            <h3 style="display:inline-block;">How to boost and scale Postgres
                <a href="/events.html#how-to-boost-and-scale-postgres"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Chicago PostgreSQL Meetup Group, Valentin Kulichenko</div>
            <div class="event-date">July 15, 2020</div>

            <p>Due to this, many industry players tend to predict Postgres' extinction. Nevertheless, most businesses have Postgres deployments for decades and continue doing so regardless of the advancement in big data, mobile, IoT, and all other revolutions that contribute to data generation.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.meetup.com/Chicago-PostgreSQL-User-Group/events/271419029/" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.meetup.com/Chicago-PostgreSQL-User-Group/events/271419029/"
                        data-a2a-title="How to boost and scale Postgres">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/webinars.svg" alt="Webinar logo">
            <p>Webinar</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="architect-s-guide-for-continuous-machine-learning-platforms-with-apache-ignite-2-8">
            <h3 style="display:inline-block;">Architect’s Guide for Continuous Machine Learning Platforms With Apache Ignite 2.8
                <a href="/events.html#architect-s-guide-for-continuous-machine-learning-platforms-with-apache-ignite-2-8"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Webinar, Ken Cottrell</div>
            <div class="event-date">July 15, 2020</div>

            <p>Many machine learning (ML) and deep learning (DL) platforms are slow in production environments. It can sometimes take hours or days to update ML models. This is a result of having the ML processing run on a different system from the operational transactions system in order to avoid performance degradation.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/continuous-machine-learning-platforms-apache-ignite-2-8" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/continuous-machine-learning-platforms-apache-ignite-2-8"
                        data-a2a-title="Architect’s Guide for Continuous Machine Learning Platforms With Apache Ignite 2.8">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/webinars.svg" alt="Webinar logo">
            <p>Webinar</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="getting-started-with-apache-ignite-as-an-in-memory-database-imdb">
            <h3 style="display:inline-block;">Getting Started With Apache Ignite as an In-Memory Database (IMDB)
                <a href="/events.html#getting-started-with-apache-ignite-as-an-in-memory-database-imdb"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Webinar, Glenn Wiebe</div>
            <div class="event-date">July 8, 2020</div>

            <p>In this webinar, Glenn Wiebe, GridGain Solution Architect, will introduce developers to Apache Ignite as an in-memory database (IMDB). He will review how an IMDB differs from a cache or an in-memory data grid (IMDG). He will discuss the key characteristics of an IMDB and also highlight core Ignite features and facilities.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/get-started-with-apache-Ignite-as-an-in-memory-database" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/get-started-with-apache-Ignite-as-an-in-memory-database"
                        data-a2a-title="Getting Started With Apache Ignite as an In-Memory Database (IMDB)">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/webinars.svg" alt="Webinar logo">
            <p>Webinar</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="learn-apache-ignite-through-coding-examples">
            <h3 style="display:inline-block;">Learn Apache Ignite Through Coding Examples
                <a href="/events.html#learn-apache-ignite-through-coding-examples"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Webinar, Denis Magda</div>
            <div class="event-date">June 24, 2020</div>

            <p>Join Denis Magda, Apache Ignite veteran and GridGain Head of Developer Relations, as he demonstrates various Apache Ignite capabilities you might have heard of or read about. Topics covered will include clustering, compute and SQL capabilities, data loading and streaming.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/learn-apache-ignite-through-coding-examples" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/learn-apache-ignite-through-coding-examples"
                        data-a2a-title="Learn Apache Ignite Through Coding Examples">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="architecting-low-latency-java-systems-at-massive-scale">
            <h3 style="display:inline-block;">Architecting Low-Latency Java Systems at Massive Scale
                <a href="/events.html#architecting-low-latency-java-systems-at-massive-scale"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Java Talk & Java Meetup Sydney, Simon Ritter & Denis Magda</div>
            <div class="event-date">June 17, 2020</div>

            <p>Due to the nature of garbage collectors, Java can initiate a stop-the-world pause at any moment in time breaking low-latency requirements and making the behavior of the whole system unpredictable. That's, primarily, why Java is not seen as a viable option for such workloads by many. In this session, we're going to review a Java-powered software stack based on Azul Zing and Apache Ignite that makes JVM behavior predictable scales out linearly and allows selecting Java for high-throughput low-latency scenarios.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.eventbrite.com/e/architecting-low-latency-java-systems-at-massive-scale-tickets-108907284620" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.eventbrite.com/e/architecting-low-latency-java-systems-at-massive-scale-tickets-108907284620"
                        data-a2a-title="Architecting Low-Latency Java Systems at Massive Scale">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/webinars.svg" alt="Webinar logo">
            <p>Webinar</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="simplifying-gridgain-and-apache-ignite-management-with-the-gridgain-control-center">
            <h3 style="display:inline-block;">Simplifying GridGain and Apache Ignite Management with the GridGain Control Center
                <a href="/events.html#simplifying-gridgain-and-apache-ignite-management-with-the-gridgain-control-center"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Webinar, Greg Stachnick</div>
            <div class="event-date">June 17, 2020</div>

            <p>Managing distributed systems can be complex and time consuming because there are numerous moving parts. Having a consistent set of tools can give a clear picture of how clusters are performing, when to take action and avoid potential problems, and how to optimize configurations.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.gridgain.com/resources/webinars/simplifying-gridgain-and-apache-ignite-management-with-the-gridgain-control-center" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.gridgain.com/resources/webinars/simplifying-gridgain-and-apache-ignite-management-with-the-gridgain-control-center"
                        data-a2a-title="Simplifying GridGain and Apache Ignite Management with the GridGain Control Center">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>
<div class="row row-event">
    <div class="col-md-2 d-none d-md-block">
        <div class="round-icon-block">
            <img src="images/meetup.svg" alt="Meetup logo">
            <p><strong>Virtual</strong> Meetup</p>
        </div>
    </div>
    <div class="col-md-10 ">
        <section id="the-role-and-specifics-of-networking-in-distributed-systems-dissecting-apache-ignite">
            <h3 style="display:inline-block;">The Role and Specifics of Networking in Distributed Systems. Dissecting Apache Ignite
                <a href="/events.html#the-role-and-specifics-of-networking-in-distributed-systems-dissecting-apache-ignite"><i
                        class="fa fa-anchor"></i></a>
            </h3>
            <div class="event-date">Bay Area In-Memory Computing Meetup, Stanislav Lukyanov</div>
            <div class="event-date">June 11, 2020</div>

            <p>This talk introduces you to the architecture and role of the distributed system’s networking layer. With Apache Ignite as an example, you gain practical insights and learn how to apply what you’ve learned to your distributed solutions, thus maximizing the performance and reliability of your applications.</p>

            <div class="row">
                    <div class=" col-md-9  news-readmore">
                    <p>
                        <a href="https://www.meetup.com//Bay-Area-In-Memory-Computing/events/271016164/" target="_blank" rel="noopener">Read more</a>
                    </p>
                </div>
                <div class=" col-md-3  ">

                    
                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                        data-a2a-url="https://www.meetup.com//Bay-Area-In-Memory-Computing/events/271016164/"
                        data-a2a-title="The Role and Specifics of Networking in Distributed Systems. Dissecting Apache Ignite">
                        <a class="a2a_button_twitter"></a>
                        <a class="a2a_button_linkedin"></a>
                        <a class="a2a_button_facebook"></a>
                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                    </div>
                </div>
            </div>
            
        </section>
    </div>
</div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="learn-apache-ignite-through-coding-examples">
                                <h3 style="display:inline-block;">Learn Apache Ignite Through Coding Examples
                                    <a href="/events.html#learn-apache-ignite-through-coding-examples"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">June 24, 2020</div>
            
                                <p>Join Denis Magda, Apache Ignite veteran and GridGain Head of Developer Relations, as he demonstrates various Apache Ignite capabilities you might have heard of or read about. Topics covered will include clustering, compute and SQL capabilities, data loading and streaming.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/learn-apache-ignite-through-coding-examples" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/learn-apache-ignite-through-coding-examples"
                                            data-a2a-title="Learn Apache Ignite Through Coding Examples">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="moving-apache-ignite-into-production-best-practices-for-distributed-transactions">
                                <h3 style="display:inline-block;">Moving Apache Ignite into Production: Best Practices for Distributed Transactions
                                    <a href="/events.html#moving-apache-ignite-into-production-best-practices-for-distributed-transactions"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Ivan Rakov</div>
                                <div class="event-date">June 10, 2020</div>
            
                                <p>The Apache Ignite transactional engine can execute distributed ACID transactions which span multiple nodes, data partitions, and caches/tables. This key-value API differs slightly from traditional SQL-based transactions but its reliability and flexibility lets you achieve an optimal balance between consistency and performance at scale by following several guidelines.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/moving-apache-ignite-into-production-best-practices-for-distributed-transactions" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/moving-apache-ignite-into-production-best-practices-for-distributed-transactions"
                                            data-a2a-title="Moving Apache Ignite into Production: Best Practices for Distributed Transactions">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
            
                   

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-apache-ignite-powers-real-time-subscriber-offers-for-a-leading-telecommunications-company">
                                <h3 style="display:inline-block;">How Apache Ignite Powers Real-Time Subscriber Offers for a Leading Telecommunications Company
                                    <a href="/events.html#how-apache-ignite-powers-real-time-subscriber-offers-for-a-leading-telecommunications-company"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Alexey Bednov & Fedor Loginov</div>
                                <div class="event-date">June 3, 2020</div>
            
                                <p>The telecommunications company deployed a recommendation engine that provides over 7,000,000 relevant marketing offers every day to their subscribers. The engine includes functionality for control/target group segmentation, subscriber contact policies, and contact history mechanics. By the end of this webinar, you will understand the deployed architecture, how Ignite machine learning helps power the engine and the new capabilities this campaigning engine provides the telecommunications company as part of their digital transformation.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/apache-ignite-powers-real-time-subscriber-offers-at-telecommunications-company" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/apache-ignite-powers-real-time-subscriber-offers-at-telecommunications-company"
                                            data-a2a-title="How Apache Ignite Powers Real-Time Subscriber Offers for a Leading Telecommunications Company">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="architecting-low-latency-java-systems-at-massive-scale">
                                <h3 style="display:inline-block;">Architecting Low-Latency Java Systems at Massive Scale
                                    <a href="/events.html#architecting-low-latency-java-systems-at-massive-scale"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Simon Ritter and Denis Magda</div>
                                <div class="event-date">May 27, 2020</div>
            
                                <p>Join NYJavaSIG on May 27 to see a presentation by Azule and GridGain.<br />
                                    Due to the nature of garbage collectors, Java can initiate a stop-the-world pause at any moment in time breaking low-latency requirements and making the behavior of the whole system unpredictable. That's, primarily, why Java is not seen as a viable option for such workloads by many. In this session, we're going to review a Java-powered software stack based on Azul Zing and Apache Ignite that makes JVM behavior predictable scales out linearly and allows selecting Java for high-throughput low-latency scenarios.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/270625098/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/270625098/"
                                            data-a2a-title="Architecting Low-Latency Java Systems at Massive Scale">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
            
            
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="getting-started-with-apache-ignite-and-sql">
                                <h3 style="display:inline-block;">Getting Started with Apache Ignite and SQL
                                    <a href="/events.html#getting-started-with-apache-ignite-and-sql"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda & Igor Seliverstov</div>
                                <div class="event-date">May 20, 2020</div>
            
                                <p>Apache Ignite’s ANSI-99 SQL support provides application developers a classical SQL database experience while enabling in-memory speeds at petabyte scale for a variety of workloads. Concise SQL syntax and availability of JDBC and ODBC drivers shields the complexity of Ignite’s distributed architecture from developers and allows them to easily manage and query distributed datasets. Nevertheless, there are some essentials and design patterns that developers should consider when deploying Apache Ignite.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/getting-started-apache-ignite-and-sql" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/getting-started-apache-ignite-and-sql"
                                            data-a2a-title="Getting Started with Apache Ignite and SQL">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
            
            
                   
            
            
            
                        
                   
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="adding-speed-and-scale-to-mysql-deployments-with-in-memory-computing">
                                <h3 style="display:inline-block;">Adding Speed and Scale to MySQL Deployments With In-Memory Computing
                                    <a href="/events.html#adding-speed-and-scale-to-mysql-deployments-with-in-memory-computing"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Denis Magda</div>
                                <div class="event-date">May 14, 2020</div>
            
                                <p>Learn how software architects use in-memory computing technologies to add speed and scale to existing MySQL deployments. You will see how to deploy a distributed in-memory cluster on top of a MySQL database, how to configure the cluster to write-through all the changes to the database, and how to boost SQL operations by querying in-memory data sets.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/ru-RU/London-In-Memory-Computing-Meetup/events/269972893/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/ru-RU/London-In-Memory-Computing-Meetup/events/269972893/"
                                            data-a2a-title="Adding Speed and Scale to MySQL Deployments With In-Memory Computing">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>


                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="using-data-center-replication-to-ensure-high-availability-of-apache-ignite-and-gridgain-clusters">
                                <h3 style="display:inline-block;">Using Data Center Replication to Ensure High Availability of Apache Ignite and GridGain Clusters
                                    <a href="/events.html#using-data-center-replication-to-ensure-high-availability-of-apache-ignite-and-gridgain-clusters"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Konstantin Orlov</div>
                                <div class="event-date">May 13, 2020</div>
            
                                <p>When working with multiple data centers, it is important to ensure high availability of your GridGain cluster. The GridGain Enterprise and Ultimate Editions, built on Apache Ignite®, include a Data Center Replication feature that allows data transfer between caches in distinct topologies, even located in different geographic locations.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/data-center-replication-to-ensure-high-availability-of-apache-ignite-clusters" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/data-center-replication-to-ensure-high-availability-of-apache-ignite-clusters"
                                            data-a2a-title="Using Data Center Replication to Ensure High Availability of Apache Ignite and GridGain Clusters">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
            
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="conquer-application-performance-challenges-with-in-memory-computing">
                                <h3 style="display:inline-block;">Conquer Application Performance Challenges with In-Memory Computing
                                    <a href="/events.html#conquer-application-performance-challenges-with-in-memory-computing"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Valentin Kulichenko</div>
                                <div class="event-date">May 6, 2020</div>
            
                                <p>Distributed platforms, like Apache Ignite®, rely on horizontal scalability. More machines in the cluster lead to application performance improvements. But the speed of the application performance after adding a second machine to the cluster?  In this talk, attendees will learn about the challenges architects face when designing distributed systems.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/ru-RU/London-In-Memory-Computing-Meetup/events/269971583/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/ru-RU/London-In-Memory-Computing-Meetup/events/269971583/"
                                            data-a2a-title="Conquer Application Performance Challenges with In-Memory Computing">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>
            
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="architects-guide-for-apache-ignite-acid-transactions-and-consistency">
                                <h3 style="display:inline-block;">Architects Guide for Apache Ignite ACID Transactions and Consistency
                                    <a href="/events.html#architects-guide-for-apache-ignite-acid-transactions-and-consistency"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Ivan Rakov</div>
                                <div class="event-date">April 29, 2020</div>
            
                                <p>Apache Ignite can function in a strong consistency mode which keeps application records in sync across all primary and backup replicas. It also supports distributed ACID transactions that allow you to update multiple entries stored on different cluster nodes and in various caches/tables.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/architects-guide-for-apache-ignite-acid-transactions-and-consistency" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.gridgain.com/resources/webinars/architects-guide-for-apache-ignite-acid-transactions-and-consistency"
                                            data-a2a-title="Architects Guide for Apache Ignite ACID Transactions and Consistency">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>





                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Virtual</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-software-engineers-with-denver-and-boulder-jug">
                                <h3 style="display:inline-block;">In-Memory Computing Essentials for Software Engineers with Denver & Boulder JUG
                                    <a href="/events.html#in-memory-computing-essentials-for-software-engineers-with-denver-and-boulder-jug"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Denis Magda</div>
                                <div class="event-date">April 8, 2020</div>

                                <p>The session is tailored for software engineers and architects seeking practical experience with in-memory computing technologies. You'll be given an overview (including code samples in Java) of in-memory concepts such as caches, databases, and data grids combined with a technical deep-dive based on Apache Ignite in-memory computing platform. </p>

                                <div class="row">
                                    <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/DenverJavaUsersGroup/events/cpmtcqybcgblb/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">


                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                             data-a2a-url="https://www.meetup.com/DenverJavaUsersGroup/events/cpmtcqybcgblb/"
                                             data-a2a-title="In-Memory Computing Essentials for Software Engineers with Denver & Boulder JUG">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>

                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar logo">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="learn-how-apache-ignite-28-offers-improved-production-maintenance-and-machine-learning">
                                <h3 style="display:inline-block;">Learn How Apache Ignite 2.8 Offers Improved Production Maintenance and Machine Learning
                                    <a href="/events.html#learn-how-apache-ignite-28-offers-improved-production-maintenance-and-machine-learning"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">April 8, 2020</div>

                                <p>Apache Ignite 2.8 includes over 1,900 upgrades and fixes that enhance almost all components of the platform. The release notes include hundreds of line items cataloging the improvements. In this webinar, Ignite community members demonstrate and dissect new capabilities related to production maintenance, monitoring, and machine learning.</p>

                                <div class="row">
                                    <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.gridgain.com/resources/webinars/apache-ignite-28-improved-production-maintenance-machine-learning" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">


                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                             data-a2a-url="https://www.gridgain.com/resources/webinars/apache-ignite-28-improved-production-maintenance-machine-learning"
                                             data-a2a-title="Learn How Apache Ignite 2.8 Offers Improved Production Maintenance and Machine Learning">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>

                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup logo">
                                <p><strong>Online</strong> Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="virtual-meetup-scale-out-and-conquer-or-mysteries-of-in-memory-systems">
                                <h3 style="display:inline-block;">Virtual Meetup: Scale Out and Conquer or Mysteries of In-Memory Systems
                                    <a href="/events.html#virtual-meetup-scale-out-and-conquer-or-mysteries-of-in-memory-systems"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Valentin Kulichenko, Lead Architect at GridGain Systems</div>
                                <div class="event-date">April 1, 2020</div>
            
                                <p>The health and well being of our community is our highest priority. Due to the existing environment, we are moving all our meet up events online for the foreseeable future, until things get back to normalcy.</p>
            
                                <div class="row">
                                        <div class=" col-md-9  news-readmore">
                                        <p>
                                            <a href="https://www.meetup.com/ru-RU/Bay-Area-In-Memory-Computing/events/269533457/" target="_blank" rel="noopener">Read more</a>
                                        </p>
                                    </div>
                                    <div class=" col-md-3  ">
            
                                        
                                        <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                            data-a2a-url="https://www.meetup.com/ru-RU/Bay-Area-In-Memory-Computing/events/269533457/"
                                            data-a2a-title="Virtual Meetup: Scale Out and Conquer or Mysteries of In-Memory Systems">
                                            <a class="a2a_button_twitter"></a>
                                            <a class="a2a_button_linkedin"></a>
                                            <a class="a2a_button_facebook"></a>
                                            <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                        </div>
                                    </div>
                                </div>
                                
                            </section>
                        </div>
                    </div>


                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="using-apache-ignite-for-continuous-machine-and-deep-learning-at-scale">
                                <h3>Using Apache Ignite for Continuous Machine and Deep Learning at Scale
                                    <a href="/events.html#using-apache-ignite-for-continuous-machine-and-deep-learning-at-scale"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker: Ken Cottrell</div>
                                <div class="event-date">March 11, 2020</div>
        
                                <p>In this webinar you will learn how the Apache Ignite<sup>®</sup> in-memory computing platform addresses these machine learning limitations with distributed model training and execution to provide real-time, continuous learning capabilities.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/using-apache-ignite-for-continuous-machine-and-deep-learning-at-scale"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/using-apache-ignite-for-continuous-machine-and-deep-learning-at-scale"
                                         data-a2a-title="Using Apache Ignite for Continuous Machine and Deep Learning at Scale">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="security-guide-for-apache-ignite-and-gridgain-with-configuration-examples">
                                <h3>Security Guide for Apache Ignite and GridGain with Configuration Examples
                                    <a href="/events.html#security-guide-for-apache-ignite-and-gridgain-with-configuration-examples"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker: Andrey Alexandrov</div>
                                <div class="event-date">March 4, 2020</div>
        
                                <p>Using live examples, we will go through the configurations for: SSL/TLS to create a secure connection among all nodes, thin clients, and REST, Ignite advance security module.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/security-guide-apache-ignite-and-gridgain-configuration-examples"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/security-guide-apache-ignite-and-gridgain-configuration-examples"
                                         data-a2a-title="Security Guide for Apache Ignite and GridGain with Configuration Examples">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-to-for-apache-ignite-deployments-in-kubernetes">
                                <h3>How-to for Apache Ignite Deployments in Kubernetes
                                    <a href="/events.html#how-to-for-apache-ignite-deployments-in-kubernetes"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker: Valentin Kulichenko</div>
                                <div class="event-date">February 26, 2020</div>
        
                                <p>In this webinar, Val Kulichenko, Apache Ignite Project Management Committee member, will provide steps on how to deploy Ignite in Kubernetes. He will provide best practices and identify common issues and how to deal with them with minimum limitations.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/how-apache-ignite-deployments-in-kubernetes"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/how-apache-ignite-deployments-in-kubernetes"
                                         data-a2a-title="How-to for Apache Ignite Deployments in Kubernetes">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-to-boost-and-scale-postgres-from-sharding-to-in-memory-data-grids">
                                <h3>How to boost and scale Postgres - from sharding to
                                    in-memory data grids
                                    <a href="/events.html#how-to-boost-and-scale-postgres-from-sharding-to-in-memory-data-grids"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bengaluru, PGConf India, Speaker: Denis Mekhanikov</div>
                                <div class="event-date">February 26, 2020</div>
        
                                <p>Whether you want to scale to petabytes or tap into RAM, there is a solution for Postgres.
                                    Let's review these practical solutions, including built-in caching, sharding, and in-memory
                                    data grids like Apache Ignite.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://pgconf.in/conferences/pgconfin2020/program/proposals/184"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://pgconf.in/conferences/pgconfin2020/program/proposals/184"
                                         data-a2a-title="How to boost and scale Postgres - from sharding to in-memory data grids">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="google-big-table-and-ignite-for-spark">
                                <h3>Google Big Table Deep Dive and Spark SQL Acceleration with Apache Ignite
                                    <a href="/events.html#google-big-table-and-ignite-for-spark"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Chicago Bay Area In-Memory Computing Meetup</div>
                                <div class="event-date">February 20, 2020</div>
        
                                <p>Deep-dive talks on Google Big Data and Apache Ignite for Spark SQL engine optimizations.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/meetup-group-mqTCMocI/events/267952761/" target="_blank"
                                           rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/meetup-group-mqTCMocI/events/267952761/"
                                         data-a2a-title="Google Big Table Deep Dive and Spark SQL Acceleration with Apache Ignite">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="google-big-table-and-ignite-for-spark">
                                <h3>Google Big Table Deep Dive and Spark SQL Acceleration with Apache Ignite
                                    <a href="/events.html#google-big-table-and-ignite-for-spark"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Chicago Bay Area In-Memory Computing Meetup</div>
                                <div class="event-date">February 20, 2020</div>
        
                                <p>Deep-dive talks on Google Big Data and Apache Ignite for Spark SQL engine optimizations.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/meetup-group-mqTCMocI/events/267952761/" target="_blank"
                                           rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/meetup-group-mqTCMocI/events/267952761/"
                                         data-a2a-title="Google Big Table Deep Dive and Spark SQL Acceleration with Apache Ignite">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-meetup-moscow-8">
                                <h3>Apache Ignite Meetup Moscow #8
                                    <a href="/events.html#apache-ignite-meetup-moscow-8"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Speakers: Maxim Muzafarov, Alexey Bednov, Fedor Loginov, Ruslan Kamashev</div>
                                <div class="event-date">February 20, 2020</div>
        
                                <p>Join Igniters from Moscow to learn, what changes in release 2.8 are super important if you are going to store data in Apache Ignite. Also, developers from Teradata and Tinkoff bank will share their experience of implementing Apache Ignite in their solutions.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/ru-RU/Moscow-Apache-Ignite-Meetup/events/268535144" target="_blank" rel="noopener">Read
                                            more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/ru-RU/Moscow-Apache-Ignite-Meetup/events/268535144"
                                         data-a2a-title="In-Memory Computing Essentials for Java Developers">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>	

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-java-developers">
                                <h3>In-Memory Computing Essentials for Java Developers 
                                    <a href="/events.html#in-memory-computing-essentials-for-java-developers"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Boston JUG Meetup Group, Speaker: Denis Magda</div>
                                <div class="event-date">February 18, 2020</div>
        
                                <p>Attendees will be introduced to the fundamental capabilities of in-memory computing platforms that are proven to boost applications performance and solve scalability problems by storing and processing massive data sets in RAM and on disk.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/meetup-group-HMwxfjeG/events/268167605/" target="_blank" rel="noopener">Read
                                            more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/boston-java/events/268001478/"
                                         data-a2a-title="In-Memory Computing Essentials for Java Developers">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-software-engineers">
                                <h3>In-Memory Computing Essentials for Software Engineers
                                    <a href="/events.html#in-memory-computing-essentials-for-software-engineers"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">San Francisco, DeveloperWeek 2020, Speaker: Denis Magda</div>
                                <div class="event-date">February 13, 2020</div>
        
                                <p>The session is tailored for Java experts who thirst for practical experience with in-memory
                                    computing technologies. You’ll be given an overview of in-memory concepts such as caches,
                                    databases, and data grids combined with a technical deep-dive.</p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://developerweek2020.sched.com/event/YF7B" target="_blank" rel="noopener">Read
                                            more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://developerweek2020.sched.com/event/YF7B"
                                         data-a2a-title="In-Memory Computing Essentials for Software Engineers">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Conferences">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="best-practices-for-loading-real-time-data-into-distributed-systems-using-change-data-capture">
                                <h3>Best Practices for Loading Real-time Data into Distributed Systems Using Change Data Capture
                                    <a href="/events.html#best-practices-for-loading-real-time-data-into-distributed-systems-using-change-data-capture"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker: Alexey Goncharuk</div>
                                <div class="event-date">February 12, 2020</div>
        
                                <p>This webinar is for developers and architects interested in learning how to use the Apache Ignite in-memory computing platform to achieve incremental batch or real-time updates of large data sets. We will cover the fundamental principles and restrictions of CDC and review examples of how to change data capture is implemented in real-life use cases. </p>
        
                                <div class="row">
        <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/best-practices-loading-real-time-data-distributed-systems-using-change-data" target="_blank" rel="noopener">Read
                                            more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/best-practices-loading-real-time-data-distributed-systems-using-change-data"
                                         data-a2a-title="Best Practices for Loading Real-time Data into Distributed Systems Using Change Data Capture">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>	

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-java-developers-chicago-5th-feb">
                                <h3>In-Memory Computing Essentials for Java Developers
                                    <a href="/events.html#in-memory-computing-essentials-for-java-developers-chicago-5th-feb"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Chicago SQL Meetup Group, Speaker: Denis Magda</div>
                                <div class="event-date">February 5, 2020</div>
        
                                <p>Attendees will be introduced to the fundamental capabilities of in-memory computing platforms
                                    that are proven to boost applications performance and solve scalability problems by storing
                                    and processing massive data sets in RAM and on disk. </p>
        
                                <div class="row">
                                <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Chicago-SQL/events/267816135/" target="_blank"
                                           rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">
        
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Chicago-SQL/events/267816135/"
                                         data-a2a-title="In-Memory Computing Essentials for Java Developers">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>



                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-java-developers">
                                <h3>In-Memory Computing Essentials for Java Developers
                                    <a href="/events.html#in-memory-computing-essentials-for-java-developers"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Chicago Java User Group, Speaker: Denis Magda</div>
                                <div class="event-date">January 16, 2020</div>

                                <p>Attendees will be introduced to the fundamental capabilities of in-memory computing platforms
                                    that are proven to boost applications performance and solve scalability problems by storing
                                    and processing massive data sets in RAM and on disk. </p>

                                <div class="row">
                                <div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/meetup-group-mqTCMocI/events/267293957/" target="_blank"
                                           rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/meetup-group-mqTCMocI/events/267293957/"
                                         data-a2a-title="In-Memory Computing Essentials for Java Developers">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="enabling-java-for-low-latency-use-cases">
                                <h3>Enabling Java for low-latency use cases at unlimited scale
                                    <a href="/events.html#enabling-java-for-low-latency-use-cases"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Group, Speaker: Gil Tene, Denis
                            Magda</div>
                                <div class="event-date">January 23rd, 2020</div>

                                <p>This time we are gathering together with Silicon Valley Java Performance meetup group to
                                    discuss how in-memory computing combined with a pauseless Java Virtual Machine results in
                                    a Java-powered solution that enables consistent low millisecond response times at unlimited scale.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/267751131" target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/267751131"
                                         data-a2a-title="In-Memory Computing Essentials for Java Developers">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="distributed-computing-with-ignite-webinar">
                                <h3>Distributed Computing with Apache Ignite
                                    <a href="/events.html#distributed-computing-with-ignite-webinar"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker: Denis Mekhanikov</div>
                                <div class="event-date">January 29, 2020</div>

                                <p>In this webinar, you’ll see how to design and execute distributed computations considering
                                    all the pros and cons.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/distributed-computing-apache-ignite"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/distributed-computing-apache-ignite"
                                         data-a2a-title="How to Migrate Your Data Schema to Apache Ignite">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                </div>



                <div class="tab-pane" id="events-2019">

                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="data-streaming-using-apache-flink-and-apache-ignite">
                                <h3>Data Streaming Using Apache Flink and Apache
                                    Ignite
                                    <a href="/events.html#data-streaming-using-apache-flink-and-apache-ignite"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker: Saikat Maitra</div>
                                <div class="event-date">DECEMBER 18, 2019</div>

                                <p>Join Saikat Maitra to learn how to build a simple data streaming application using
                                    Apache Flink and Apache Ignite. This stream processing topology will allow data
                                    streaming in a distributed, scalable, and fault-tolerant manner, which can process
                                    data sets consisting of virtually unlimited streams of events.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/data-streaming-using-apache-flink-and-apache-ignite"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3  ">

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/data-streaming-using-apache-flink-and-apache-ignite"
                                         data-a2a-title="Data Streaming Using Apache Flink and Apache Ignite">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event ">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-software-engineers-dec-2">
                                <h3>In-Memory Computing Essentials for Software
                                    Engineers
                                    <a href="/events.html#in-memory-computing-essentials-for-software-engineers-oct"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">The Silicon Valley Java User Group, Speaker: Denis Magda</div>
                                <div class="event-date">DECEMBER 18, 2019</div>

                                <p>Attendees will be introduced to the fundamental capabilities of in-memory computing
                                    platforms that are proven to boost application performance and solve scalability
                                    problems by storing and processing massive data sets in RAM and on disk.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/en-US/sv-jug/events/265881743/" target="_blank"
                                           rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/en-US/sv-jug/events/265881743/"
                                         data-a2a-title="In-Memory Computing Essentials for Software Engineers">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                            </section>
                        </div>
                    </div>

                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="in-memory-computing-essentials-for-software-engineers-dec-1">
                                <h3>How and why Apache Ignite<sup>®</sup> is changing
                                    from an In-Memory Data Grid into an In-Memory Database
                                    <a href="/events.html#in-memory-computing-essentials-for-software-engineers-oct"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Open Source Database Best Practices, Speaker: Alexey Goncharuk</div>
                                <div class="event-date">DECEMBER 16, 2019</div>

                                <p>Our upcoming event “Open Source Database Best Practices” focuses on the latest
                                    developments in open source database technology. You will hear about ProxySQL,
                                    ClickHouse and Apache Ignite from speakers who are actively engaged in creating
                                    these technologies. The speakers work for ProxySQL, Altinity, and GridGain Systems
                                    and are all active committers to their respective projects.</p>

                                <a href="https://www.google.com/maps/place/51°30'07.1%22N+0°07'07.9%22W/@51.501965,-0.118852,17z/data=!3m1!4b1!4m5!3m4!1s0x0:0x0!8m2!3d51.501965!4d-0.118852"
                                   target="_blank" rel="noopener">Where to Find Us</a>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.eventbrite.com/e/open-source-database-best-practices-registration-82082285325"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.eventbrite.com/e/open-source-database-best-practices-registration-82082285325"
                                         data-a2a-title="How and why Apache Ignite™ is changing from an In-Memory Data Grid into an In-Memory Database">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="how-to-migrate-your-data-schema-to-apache-ignite-deec-4-19">
                                <h3>How to Migrate Your Data Schema to Apache Ignite
                                    <a href="/events.html#how-to-migrate-your-data-schema-to-apache-ignite-deec-4-19"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker: Ivan Rakov</div>
                                <div class="event-date">DECEMBER 4, 2019</div>

                                <p>In this webinar, we will discuss the pros and cons of SQL and JCache APIs approaches
                                    to work with your data in Apache Ignite. Talk includes Ignite SQL capabilities,
                                    consistency guarantees, complications of distributed SQL and how affinity
                                    co-location can minimize them.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/how-migrate-your-data-schema-apache-ignite"
                                           target="_blank" rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/how-migrate-your-data-schema-apache-ignite"
                                         data-a2a-title="How to Migrate Your Data Schema to Apache Ignite">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10 ">
                            <section id="apache-ignite-moscow-meetup-dec-3-19">
                                <h3>Apache Ignite Moscow Meetup
                                    <a href="/events.html#apache-ignite-moscow-meetup-dec-3-19"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Moscow, Russia, Speakers: Andrey Gura, Denis Garus</div>
                                <div class="event-date">DECEMBER 3, 2019</div>

                                <p>Andrei Gora, Apache Ignite PMC, will talk about typical problems that arise when
                                    moving to a distributed model of data storage and processing, namely, the
                                    organization of consistent data placement in a distributed system. Denis Garus
                                    (Sbertech) will present Ignite Sandbox and tell about data protection in a
                                    distributed Java environment. After the talks, we plan to discuss what does
                                    community expect from Ignite 3.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://gridgain.timepad.ru/event/1124829/" target="_blank"
                                           rel="noopener">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://gridgain.timepad.ru/event/1124829/"
                                         data-a2a-title="Apache Ignite Moscow Meetup">
                                        <a class="a2a_button_twitter"></a>
                                        <a class="a2a_button_linkedin"></a>
                                        <a class="a2a_button_facebook"></a>
                                        <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="ignite-pearls-insight-and-creativity-in-distributed-programming">
                                <h3>Ignite Pearls - Insight and Creativity in
                                    Distributed Programming
                                    <a href="/events.html#ignite-pearls-insight-and-creativity-in-distributed-programming"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NY Scala Group, Speaker - Nikita Ivanov</div>
                                <div class="event-date">November 21, 2019</div>

                                <p>This presentation is a live Scala coding talk full of small case studies, real
                                    examples, and interesting exercises for learning about how to do a modern
                                    distributed programming with Apache Ignite.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/en-US/ny-scala/events/266240908/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/en-US/ny-scala/events/266240908/"
                                         data-a2a-title="Ignite Pearls - Insight and Creativity in Distributed Programming">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-ignite-pumpkin-meetup">
                                <h3>Apache Ignite Pumpkin Meetup
                                    <a href="/events.html#apache-ignite-pumpkin-meetup" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache Ignite Meetup, Saint Petersburg, Russia, Speaker: Evgeny Zhuravlev</div>
                                <div class="event-date">October 31, 2019</div>

                                <p>We are going to have a cozy Halloween talk about “how to use” (first speaker) and
                                    “how does it work” (second speaker). As usual, there will be tea and coffee, a snack
                                    and a raffle of useful books. Evgeny Zhuravlev will present talk “Architecture and
                                    optimization of working with memory for processing big data”. Apache Ignite
                                    Committer Maxim Muzafarov will tell about his experience of working with Rebalance
                                    feature. </p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href=" https://gridgain.timepad.ru/event/1091051/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url=" https://gridgain.timepad.ru/event/1091051/"
                                         data-a2a-title="Apache Ignite Pumpkin Meetup">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="in-memory-computing-essentials-for-software-engineers-oct">
                                <h3>In-Memory Computing Essentials for Software
                                    Engineers
                                    <a href="/events.html#in-memory-computing-essentials-for-software-engineers-oct"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">SQL NYC, The NoSQL & NewSQL Database Big Data Meetup Speaker: Denis Magda</div>
                                <div class="event-date">October 29, 2019</div>

                                <p>Free books+swag, caviar, liquors, cheeses & other eclectic delicacies! Attendees will
                                    be introduced to the fundamental capabilities of in-memory computing platforms that
                                    are proven to boost application performance and solve scalability problems by
                                    storing and processing massive data sets in RAM and on disk.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/es-ES/mysqlnyc/events/265780229/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/es-ES/mysqlnyc/events/265780229/"
                                         data-a2a-title="In-Memory Computing Essentials for Software Engineers">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section
                                    id="ensembles-of-ml-algorithms-and-distributed-online-machine-learning-with-apache-ignite">
                                <h3>Ensembles of ML algorithms and Distributed Online
                                    Machine Learning with Apache Ignite
                                    <a href="/events.html#ensembles-of-ml-algorithms-and-distributed-online-machine-learning-with-apache-ignite"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">ApacheCon Europe 2019, Speaker - Alexey Zinovyev</div>
                                <div class="event-date">October 23, 2019</div>

                                <p>Alexey Zinovyev, Apache<sup>®</sup> Ignite® Committer, will tell about Apache Ignite
                                    ML module and how can it speedup your ML training. Also He will speak about using
                                    Ignite as a backend for distributed TensorFlow calculations.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://aceu19.apachecon.com/session/ensembles-ml-algorithms-and-distributed-online-machine-learning-apache-ignite-0"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://aceu19.apachecon.com/session/ensembles-ml-algorithms-and-distributed-online-machine-learning-apache-ignite-0"
                                         data-a2a-title="Ensembles of ML algorithms and Distributed Online Machine Learning with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinars</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="whats-new-in-gridgain-web-console">
                                <h3>Updated Apache Ignite Apache® Ignite® Web Console
                                    live demo
                                    <a href="/events.html#whats-new-in-gridgain-web-console"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Greg Stachnick</div>
                                <div class="event-date">October 16, 2019</div>

                                <p>GridGain Web Console is now 100% free for Apache® Ignite™ and GridGain® users. During
                                    the session we will cover the basics of installation and discuss new features and
                                    capabilities added to the most recent release as well as architectural changes.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/whats-new-in-gridgain-web-console"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/whats-new-in-gridgain-web-console"
                                         data-a2a-title="Updated Apache Ignite Apache® Ignite® Web Console live demo">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="why-did-we-developed-another-one-kafka-connector">
                                <h3>Why did we developed another one Kafka connector
                                    <a href="/events.html#why-did-we-developed-another-one-kafka-connector"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Autumn Kafka at Leroy Merlin, Moscow (Russia), Speaker - Alexey Kukushkin</div>
                                <div class="event-date">October 9, 2019</div>

                                <p>In his talk Alexey will tell, when the connectors are more convenient than developing
                                    from scratch, briefly will go through the existing connectors. After that Alexey
                                    will tell how he wrote his version based on Apache Ignite and certified by
                                    Confluent.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://leroy-merlin.timepad.ru/event/1069622/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://leroy-merlin.timepad.ru/event/1069622/"
                                         data-a2a-title="Why did we developed another one Kafka connector">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="data-distribution-in-apache-ignite">
                                <h3>Data Distribution in Apache Ignite
                                    <a href="/events.html#data-distribution-in-apache-ignite" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Scalability Meetup, Moscow (Russia), Speaker - Andrey Gura </div>
                                <div class="event-date">October 3, 2019</div>

                                <p>Andrei Gora, committer and PMC of the Apache Ignite project, will talk about typical
                                    problems that arise when moving to a distributed model of data storage and
                                    processing, namely, the organization of a consistent data placement in a distributed
                                    system. Special attention will be paid to the rendezvous hashing algorithm, the
                                    features of its use in Apache Ignite (Rendezvous affinity function) and possible
                                    alternatives.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/ru-RU/Scalability-Camp/events/264936752/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/ru-RU/Scalability-Camp/events/264936752/"
                                         data-a2a-title="Data Distribution in Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section
                                    id="moving-apache-ignite-into-production-best-practices-for-disaster-recovery-and-high-availability">
                                <h3>Moving Apache® Ignite® into Production: Best
                                    Practices For Disaster Recovery and High Availability
                                    <a href="/events.html#moving-apache-ignite-into-production-best-practices-for-deploying-apache-ignite-in-the-cloud"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Stanislav Lukyanov</div>
                                <div class="event-date">September 18, 2019</div>

                                <p>Learn some of the best practices and the different options for maximizing
                                    availability and preventing data loss. This session explains in detail the various
                                    challenges including cluster and data center failures, and the best practices for
                                    implementing disaster recovery (DR) for distributed in-memory computing based on
                                    real-world deployments.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/moving-apache-ignite-production-best-practices-disaster-recovery-and-high"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/moving-apache-ignite-production-best-practices-disaster-recovery-and-high"
                                         data-a2a-title="Moving Apache® Ignite® into Production: Best Practices For Disaster Recovery and High Availability">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="continuous-machine-and-deep-learning-at-scale-with-apache-ignite">
                                <h3>Continuous Machine and Deep Learning at Scale
                                    with Apache Ignite
                                    <a href="/events.html#continuous-machine-and-deep-learning-at-scale-with-apache-ignite"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">ApacheCon North America 2019, Speaker, Speaker - Denis Magda</div>
                                <div class="event-date">September 18, 2019</div>

                                <p>During this session Denis, Apache Ignite PMC chair, will tell, how Apache Ignite and
                                    GridGain help to address these limitations with model training and execution, and
                                    help achieve near-real-time, continuous learning. It will be explained how ML/DL
                                    work with Apache Ignite, and how to get started.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://apachecon.com/acna19/s/#/scheduledEvent/1125 " target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://apachecon.com/acna19/s/#/scheduledEvent/1125 "
                                         data-a2a-title="Continuous Machine and Deep Learning at Scale with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinars</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section
                                    id="moving-apache-ignite-into-production-best-practices-for-deploying-apache-ignite-in-the-cloud">
                                <h3>Moving Apache® Ignite® into Production: Best
                                    Practices for Deploying Apache Ignite in the Cloud
                                    <a href="/events.html#moving-apache-ignite-into-production-best-practices-for-deploying-apache-ignite-in-the-cloud"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Greg Stachnick</div>
                                <div class="event-date">August 28, 2019</div>

                                <p>This webinar discusses deploying Apache Ignite into production in public and private
                                    clouds. Companies have faced many challenges when deploying in-memory computing
                                    platforms such as Apache Ignite in the cloud, but they have also discovered many
                                    best practices that have made success possible.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/moving-apacher-ignitetm-production-best-practices-deploying-apache-ignite-in"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/moving-apacher-ignitetm-production-best-practices-deploying-apache-ignite-in"
                                         data-a2a-title="Moving Apache® Ignite® into Production: Best Practices for Deploying Apache Ignite in the Cloud">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="cloud-deployment-best-practices">
                                <h3>Cloud deployment best practices
                                    <a href="/events.html#cloud-deployment-best-practices" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Speaker - Greg Stachnick</div>
                                <div class="event-date">August 22, 2019</div>

                                <p>Cloud deployments offer the potential for almost infinite resources and flexible
                                    scalability. But there are so many options! It can be overwhelming to know which
                                    services are best for your use case. Building distributed systems only adds to the
                                    complexity. Come learn some best practices on how to best structure and deploy
                                    IMDB/IMDG applications in a cloud environment.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/meetups/nyc-in-memory-computing-meetup-10"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/meetups/nyc-in-memory-computing-meetup-10"
                                         data-a2a-title="Cloud deployment best practices">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="the-insiders-checklist-for-hardening-an-in-memory-computing-cluster">
                                <h3>The Insiders Checklist for Hardening an In-Memory
                                    Computing Cluster
                                    <a href="/events.html#the-insiders-checklist-for-hardening-an-in-memory-computing-cluster"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">August 20, 2019</div>

                                <p> In this talk Denis Magda, GridGain's VP of product management and Apache® Ignite™
                                    PMC Chair, will walk through the various components of Apache Ignite and GridGain --
                                    including memory storage, networking layer, compute grid -- to help explain many of
                                    best practices and the reasoning behind them.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/meetups/bay-area-in-memory-computing-meetup-10"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/meetups/bay-area-in-memory-computing-meetup-10"
                                         data-a2a-title="The Insiders Checklist for Hardening an In-Memory Computing Cluster">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="htap-via-integration-of-ignite-spark">
                                <h3>HTAP via integration of Apache Ignite and Apache
                                    Spark
                                    <a href="/events.html#htap-via-integration-of-ignite-spark"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Speaker - Roman Shtykh</div>
                                <div class="event-date">June 28, 2019</div>

                                <p> In this talk Roman will explain advantages of compute and storage disaggregation in
                                    general,
                                    and using Apache Ignite as a storage engine for Apache Spark in particular to
                                    handle HTAP workloads.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://cyberagent.connpass.com/event/134260/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://cyberagent.connpass.com/event/134260/"
                                         data-a2a-title="HTAP via integration of Apache Ignite and Apache Spark">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="moving-apache-ignite-production-initial-checklist">
                                <h3>Moving Apache Ignite into Production: An Initial
                                    Checklist
                                    <a href="/events.html#moving-apache-ignite-production-initial-checklist"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Denis Magda</div>
                                <div class="event-date">May 29, 2019</div>

                                <p>Guaranteeing that your in-memory computing solution stays up and running is the most
                                    important goal for a rolling out a new production environment. The trick is making
                                    sure that you have all the bases covered and have thought through all your
                                    requirements, needs, and potential roadblocks. In this webinar, Apache® Ignite™ PMC
                                    Chair Denis Magda shares a checklist to consider for your Apache Ignite production
                                    deployments.</p>

                                <p>This webinar is the first in a series that will guide you through the best
                                    development, monitoring, and troubleshooting practices for deploying Apache Ignite
                                    across different topologies and use cases.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/moving-apache-ignite-production-initial-checklist"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/moving-apache-ignite-production-initial-checklist"
                                         data-a2a-title="Moving Apache Ignite into Production: An Initial Checklist">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="sparkaisummit-north-america-2019">
                                <h3>Distributed ML/DL with Ignite ML Module Using
                                    Apache Spark as Database
                                    <a href="/events.html#sparkaisummit-north-america-2019" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Spark + AI Summit 2019, Speaker - Alexey Zinovyev</div>
                                <div class="event-date">April 25, 2019</div>
                                <p>
                                    The current implementation of ML algorithms in Spark has several disadvantages
                                    associated with the
                                    transition from standard Spark SQL types to ML-specific types, a low level of
                                    algorithms'
                                    adaptation to distributed computing, a relatively slow speed of adding new
                                    algorithms to the
                                    current library. Apache Ignite could work closely with Apache Spark due to exellent
                                    Ignite RDD/Ignite DataFrame
                                    implementation (see
                                    https://ignite.apache.org/use-cases/spark/shared-memory-layer.html).
                                    Also Apache Ignite has Ignite ML module that includes a lot of distributed ML
                                    algorithms, NLP package
                                    (will be available in next release, 2.8), the bunch of approximate ML algorithms,
                                    simple integration
                                    with TensorFlow via TensorFlow Ignite Dataset (currently, this is a part of
                                    TF.contrib package) and
                                    also each algorithm supports the model updating that gives us ability to make
                                    online-learning
                                    not only for KMeans and LinReg.
                                </p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://databricks.com/sparkaisummit/north-america/sessions-single-2019?id=143"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://databricks.com/sparkaisummit/north-america/sessions-single-2019?id=143"
                                         data-a2a-title="Distributed ML/DL with Ignite ML Module Using Apache Spark as Database">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacher-ignitetm-nodejs-developers">
                                <h3>Apache Ignite for Node.js Developers
                                    <a href="/events.html#apacher-ignitetm-nodejs-developers" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Denis Magda</div>
                                <div class="event-date">March 20, 2019</div>
                                <p>
                                    The benefits of Ignite are now available to Node.js
                                    developers with the addition of the Node.js Thin Client for Ignite. In this webinar,
                                    using examples, Denis will cover the specifics of how to use Node.js with Ignite,
                                    including:
                                </p>
                                <ul class="page-list">
                                    <li>Instantiating an Ignite Client</li>
                                    <li>Creating an Ignite Client Configuration</li>
                                    <li>Connecting a Client to an Ignite Cluster Node</li>
                                    <li>Obtaining an Ignite Storage Instance</li>
                                    <li>Configuring an Ignite Storage Instance</li>
                                    <li>Performing Key-Value Queries</li>
                                    <li>Performing SQL, SQL Fields and Scan Queries</li>
                                </ul>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/apacher-ignitetm-nodejs-developers"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/apacher-ignitetm-nodejs-developers"
                                         data-a2a-title="Apache Ignite for Node.js Developers">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="open-data-science-meetup-saint-petersburg-russia">
                                <h3>Using TensorFlow with Apache Ignite
                                    <a href="/events.html#open-data-science-meetup-saint-petersburg-russia"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Open Data Science Meetup Saint Petersburg (Russia), Speaker - Yury Babak</div>
                                <div class="event-date">March 15, 2019</div>
                                <p>
                                    Yuri Babak will explain how to use TensorFlow with Apache Ignite. Topics covered in
                                    this presentation:
                                </p>
                                <ul class="page-list">
                                    <li>Apache Ignite as a distributed data source for TensorFlow</li>
                                    <li>Distributed training of the model on the TensorFlow cluster over Apache Ignite
                                    </li>
                                    <li>Inference TensorFlow models on Apache Ignite cluster</li>
                                </ul>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/meetups/open-data-science-meetup-saint-petersburg-russia"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/meetups/open-data-science-meetup-saint-petersburg-russia"
                                         data-a2a-title="Using TensorFlow with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="whats-new-in-apache-ignite-27">
                                <h3>What’s New in Apache Ignite 2.7
                                    <a href="/events.html#whats-new-in-apache-ignite-27" aria-label="Webinar"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Denis Magda</div>
                                <div class="event-date">Feb 13, 2019</div>
                                <p>
                                    Learn what's new with Apache Ignite 2.7. This session, given by Denis Magda, Apache
                                    Ignite PMC Chair, is for all Apache Ignite users.
                                    You will learn how the new capabilities of Apache Ignite work. You will also
                                    understand more about some
                                    of the other changes made to Apache Ignite, and the reasoning behind them. Come with
                                    your questions, and learn from the questions of your peers.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/whats-new-in-apache-ignite-27"
                                           target="_blank" rel="noopener" aria-label="Webinar">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/whats-new-in-apache-ignite-27"
                                         data-a2a-title="What’s New in Apache Ignite 2.7">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="EffectiveMySQL-257849652">
                                <h3>Turbocharge your MySQL queries in-memory with
                                    In-Memory Computing
                                    <a href="/events.html#EffectiveMySQL-257849652" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">MySQL New York Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">Feb 5, 2019</div>
                                <p>
                                    Learn how to boost performance 1000x and scale to over 1 billion transactions per
                                    second with
                                    in-memory storage of hundreds of TBs of data for your MySQL-based applications.
                                    Attendees will learn how Apache Ignite handles auto-loading of a MySQL schema and
                                    data from
                                    PostgreSQL, supports MySQL indexes, supports compound indexes, and various forms of
                                    MySQL queries including distributed MySQL joins.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/EffectiveMySQL/events/257849652/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/EffectiveMySQL/events/257849652/"
                                         data-a2a-title="Turbocharge your MySQL queries in-memory with In-Memory Computing">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="gridgain-cloud-deploy-apache-ignite-in-minutes">
                                <h3>GridGain Cloud: Deploy Apache Ignite in Minutes
                                    <a href="/events.html#gridgain-cloud-deploy-apache-ignite-in-minutes"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">January 30, 2019</div>
                                <p>
                                    If you're interested in in-memory computing and are trying Apache Ignite or are
                                    interested
                                    in-memory computing as a Service, this session about GridGain Cloud is for you.
                                    Learn how to deploy Ignite as a service with just a few clicks, and how to use
                                    Ignite as a
                                    distributed cache or in-memory database (IMDB) as a service.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/gridgain-cloud-deploy-apache-ignite-in-minutes"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/gridgain-cloud-deploy-apache-ignite-in-minutes"
                                         data-a2a-title="GridGain Cloud: Deploy Apache Ignite in Minutes">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="in-memory-computing-best-practices-developing-new-apps-channels-and-apis">
                                <h3>In-Memory Computing Best Practices: Developing
                                    New Apps, Channels and APIs
                                    <a href="/events.html#in-memory-computing-best-practices-developing-new-apps-channels-and-apis"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Rob Meyer</div>
                                <div class="event-date">January 24, 2019</div>
                                <p>
                                    Digital transformation is arguably the most important initiative in IT today, in
                                    large part
                                    because of its ability to improve the customer experience and business operations,
                                    and to make a business more agile.
                                    But delivering a responsive digital business is not possible at scale without
                                    in-memory computing.
                                    This session, the third in the In-Memory Computing Best Practices Series, dives into
                                    how in-memory
                                    computing acts as a foundation for digital business.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/in-memory-computing-best-practices-developing-new-apps-channels-and-apis"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/in-memory-computing-best-practices-developing-new-apps-channels-and-apis"
                                         data-a2a-title="In-Memory Computing Best Practices: Developing New Apps, Channels and APIs">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Stanford-Data-Science-Machine-Learning-Meetup-256812708">
                                <h3>Workshop: Machine Learning 101 with In-Memory
                                    Computing
                                    <a href="/events.html#Stanford-Data-Science-Machine-Learning-Meetup-256812708"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Stanford Data Science Machine Learning Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">January 15, 2019</div>
                                <p>
                                    Attendees will be introduced to the fundamental capabilities of in-memory computing
                                    platforms
                                    that boost highly-loaded applications, research projects, risk analysis and fraud
                                    detection
                                    tasks by storing and processing massive amounts of data in memory and on disk across
                                    a cluster of machines.
                                    By the end of the workshop the attendees will learn how to:
                                </p>
                                <ul class="page-list">
                                    <li>Deploy a distributed Apache Ignite cluster.</li>
                                    <li>Preload data into the cluster deciding how much RAM is to be available for
                                        storage needs.
                                    </li>
                                    <li>Create custom calculations and algorithms and utilize cluster’s resources for
                                        their execution.
                                    </li>
                                    <li>Solve optimizations problems by simulating the process of biological
                                        evolution.
                                    </li>
                                    <li>Apply machine learning algorithms supported by Apache Ignite.</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Stanford-Data-Science-Machine-Learning-Meetup/events/256812708"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Stanford-Data-Science-Machine-Learning-Meetup/events/256812708"
                                         data-a2a-title="Workshop: Machine Learning 101 with In-Memory Computing ">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="open-source-data-science-256974934">
                                <h3>Workshop: In-Memory Computing Essentials for Data
                                    Scientists
                                    <a href="/events.html#open-source-data-science-256974934" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">BOSTON #ODSC, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">January 15, 2019</div>
                                <p>
                                    Attendees will be introduced to the fundamental capabilities of in-memory computing
                                    platforms
                                    that boost highly-loaded applications, research projects, risk analysis and fraud
                                    detection
                                    tasks by storing and processing massive amounts of data in memory and on disk across
                                    a cluster of machines.
                                    By the end of the workshop the attendees will learn how to:
                                </p>
                                <ul class="page-list">
                                    <li>Deploy a distributed Apache Ignite cluster.</li>
                                    <li>Preload data into the cluster deciding how much RAM is to be available for
                                        storage needs.
                                    </li>
                                    <li>Create custom calculations and algorithms and utilize cluster’s resources for
                                        their execution.
                                    </li>
                                    <li>Solve optimizations problems by simulating the process of biological
                                        evolution.
                                    </li>
                                    <li>Apply machine learning algorithms supported by Apache Ignite.</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/open-source-data-science/events/256974934/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/open-source-data-science/events/256974934/"
                                         data-a2a-title="Workshop: In-Memory Computing Essentials for Data Scientists">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-257355223">
                                <h3>Relational DBMSs: Faster Transactions and
                                    Analytics with In-Memory Computing
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-257355223"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">January 14, 2019</div>
                                <p>
                                    Combining Apache Ignite with a Relational DBMS can offer enterprises the best of
                                    both open-source worlds:
                                    a highly-scalable high-velocity grid-based in-memory SQL database, with a robust
                                    fully-featured
                                    SQL persistent datastore for advanced analytics and data-warehouse capabilities.
                                </p>
                                <p>Topics to be covered:</p>
                                <ul class="page-list">
                                    <li>How to complement a Relational DBMS for Hybrid Transactional/Analytical
                                        Processing (HTAP) by leveraging the massive parallel processing and SQL
                                        capabilities of Apache Ignite.
                                    </li>
                                    <li>How to use Apache Ignite as an In-Memory Data Grid that stores data in memory
                                        and boosts applications performance by offloading reads from a Relational DBMS.
                                    </li>
                                    <li>The strategic benefits of using Apache Ignite instead of Memcache, Redis,
                                        GigaSpaces, or Oracle Coherence.
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/257355223"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/257355223"
                                         data-a2a-title="Relational DBMSs: Faster Transactions and Analytics with In-Memory Computing">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                </div>
                <div class="tab-pane" id="events-2018">
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Amsterdam-Kubernetes-Meetup-256234544">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the rescue!
                                    <a href="/events.html#Amsterdam-Kubernetes-Meetup-256234544"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Amsterdam Kubernetes/Cloud-Native Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">December 6, 2018</div>
                                <p>
                                    Distributed databases can make so many things easier for a developer, but not always
                                    for DevOps.
                                    Kubernetes has come to the rescue with an easy application orchestration! It is
                                    straightforward to do the orchestration leaning on relational databases as a data
                                    layer.
                                    However, it is more difficult to do the same when a distributed SQL database or
                                    other kind of distributed storage is used instead.
                                    In this presentation, attendees will learn how Kubernetes can orchestrate a
                                    distributed database like Apache Ignite, in particular:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster Assembling - database nodes auto-discovery in Kubernetes</li>
                                    <li>Database Resilience - automated horizontal scalability</li>
                                    <li>Database Availability - what’s the role of Kubernetes and the database</li>
                                    <li>Utilizing both RAM and disk - set up Apache Ignite in a way to get in-memory
                                        performance with the durability of disk
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Amsterdam-Kubernetes-Meetup/events/256234544"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Amsterdam-Kubernetes-Meetup/events/256234544"
                                         data-a2a-title="Distributed Database DevOps Dilemmas? Kubernetes to the rescue!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Hamburg-Kubernetes-Meetup-256200849">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the rescue!
                                    <a href="/events.html#Hamburg-Kubernetes-Meetup-256200849"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Hamburg Kubernetes/Cloud-Native Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">December 5, 2018</div>
                                <p>
                                    Distributed databases can make so many things easier for a developer, but not always
                                    for DevOps.
                                    Kubernetes has come to the rescue with an easy application orchestration! It is
                                    straightforward to do the orchestration leaning on relational databases as a data
                                    layer.
                                    However, it is more difficult to do the same when a distributed SQL database or
                                    other kind of distributed storage is used instead.
                                    In this presentation, attendees will learn how Kubernetes can orchestrate a
                                    distributed database like Apache Ignite, in particular:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster Assembling - database nodes auto-discovery in Kubernetes</li>
                                    <li>Database Resilience - automated horizontal scalability</li>
                                    <li>Database Availability - what’s the role of Kubernetes and the database</li>
                                    <li>Utilizing both RAM and disk - set up Apache Ignite in a way to get in-memory
                                        performance with the durability of disk
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Hamburg-Kubernetes-Meetup/events/256200849/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Hamburg-Kubernetes-Meetup/events/256200849/"
                                         data-a2a-title="Distributed Database DevOps Dilemmas? Kubernetes to the rescue!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Munchen-Kubernetes-Meetup-256177844">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the rescue!
                                    <a href="/events.html#Munchen-Kubernetes-Meetup-256177844"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">München Kubernetes/Cloud-Native Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">December 4, 2018</div>
                                <p>
                                    Distributed databases can make so many things easier for a developer, but not always
                                    for DevOps.
                                    Kubernetes has come to the rescue with an easy application orchestration! It is
                                    straightforward to do the orchestration leaning on relational databases as a data
                                    layer.
                                    However, it is more difficult to do the same when a distributed SQL database or
                                    other kind of distributed storage is used instead.
                                    In this presentation, attendees will learn how Kubernetes can orchestrate a
                                    distributed database like Apache Ignite, in particular:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster Assembling - database nodes auto-discovery in Kubernetes</li>
                                    <li>Database Resilience - automated horizontal scalability</li>
                                    <li>Database Availability - what’s the role of Kubernetes and the database</li>
                                    <li>Utilizing both RAM and disk - set up Apache Ignite in a way to get in-memory
                                        performance with the durability of disk
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Munchen-Kubernetes-Meetup/events/256177844/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Munchen-Kubernetes-Meetup/events/256177844/"
                                         data-a2a-title="Distributed Database DevOps Dilemmas? Kubernetes to the rescue!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-256580648">
                                <h3>Memory-Centric Architecture - A New Approach to
                                    Distributed Systems
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-256580648"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">November 29, 2018</div>
                                <p>
                                    In this presentation, attendees will learn how to achieve the best performance and
                                    scale with
                                    the new memory-centric approach to distributed architectures. The presentation will
                                    review traditional
                                    in-memory and disk-based systems, compare their strengths and weaknesses, cover
                                    features such as
                                    ACID compliance, SQL compatibility, persistence, replication, security, fault
                                    tolerance and more.
                                    Additionally, the presentation will cover some of the most common use cases for
                                    distributed
                                    computing and analyze some large Apache Ignite and GridGain deployments. Finally,
                                    attendees will learn
                                    how to build the most effective and scalable systems by borrowing the best of
                                    two worlds - disk-first and memory-first approaches.

                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/256580648/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/256580648/"
                                         data-a2a-title="Memory-Centric Architecture - A New Approach to Distributed Systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Kafka-ATL-256500714">
                                <h3>Stream Processing Best Practices - In the Cloud
                                    and with Apache Ignite
                                    <a href="/events.html#Kafka-ATL-256500714" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache Kafka Atlanta, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">November 28, 2018</div>
                                <p>
                                    Learn some of the best practices companies have used for making Apache Kafka and
                                    Apache Ignite scale.
                                    Making stream processing scale requires making all the components --including
                                    messaging,
                                    processing, storage -- scale together. During this talk, Akmal will explain:
                                </p>
                                <ul class="page-list">
                                    <li>The integration between Apache Ignite and Kafka</li>
                                    <li>Examples of how Ignite and Kafka are used together</li>
                                    <li>Recommended approaches for deployment, monitoring and management</li>
                                    <li>Tips and tricks for performance and scalability tuning</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Kafka-ATL/events/256500714/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Kafka-ATL/events/256500714/"
                                         data-a2a-title="Stream Processing Best Practices - In the Cloud and with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Apache-Kafka-DC-256476441">
                                <h3>Best Practices for Stream Processing with Kafka
                                    and Apache Ignite
                                    <a href="/events.html#Apache-Kafka-DC-256476441" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache Kafka DC, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">November 27, 2018</div>
                                <p>
                                    Learn some of the best practices companies have used for making Apache Kafka and
                                    Apache Ignite scale.
                                    Making stream processing scale requires making all the components --including
                                    messaging,
                                    processing, storage -- scale together. During this talk, Akmal will explain:
                                </p>
                                <ul class="page-list">
                                    <li>The integration between Apache Ignite and Kafka</li>
                                    <li>Examples of how Ignite and Kafka are used together</li>
                                    <li>Recommended approaches for deployment, monitoring and management</li>
                                    <li>Tips and tricks for performance and scalability tuning</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Apache-Kafka-DC/events/256476441"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Apache-Kafka-DC/events/256476441"
                                         data-a2a-title="Best Practices for Stream Processing with Kafka and Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="moscow-apache-ignite-meetup-818220">
                                <h3>Apache Ignite performance measurement. How we do
                                    benchmarks
                                    <a href="/events.html#moscow-apache-ignite-meetup-818220" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Moscow Apache Ignite Meetup, Speakers - Ilya Suntsov, Dmitry Pavlov, Nikolay Kulagin, Nikolay Izhikov</div>
                                <div class="event-date">November 14, 2018</div>
                                <p>
                                    We invite you to the next meeting of Apache Ignite Community in Moscow.
                                    Let's talk about benchmarks, what to do with unstable tests and how major open
                                    source features are
                                    created using the example of Transparent Data Encryption in Apache Ignite.

                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/meetups/moscow-apache-ignite-meetup"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/meetups/moscow-apache-ignite-meetup"
                                         data-a2a-title="Apache Ignite performance measurement. How we do benchmarks">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="KafkaBayArea--255670377">
                                <h3>Best Practices for Stream Processing with Kafka
                                    and Apache Ignite
                                    <a href="/events.html#KafkaBayArea--255670377" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area Apache Kafka Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">November 7, 2018</div>
                                <p>
                                    Learn some of the best practices companies have used for making Apache Kafka and
                                    Apache Ignite scale.
                                    Making stream processing scale requires making all the components --including
                                    messaging, processing, storage -- scale together. During this talk, Denis will
                                    explain:
                                </p>
                                <ul class="page-list">
                                    <li>The integration between Apache Ignite and Kafka and the commercially supported
                                        versions, GridGain and Confluent
                                    </li>
                                    <li>Examples of how Ignite and Kafka are used together</li>
                                    <li>Recommended approaches for deployment, monitoring and management</li>
                                    <li>Tips and tricks for performance and scalability tuning</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/KafkaBayArea/events/255670377/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/KafkaBayArea/events/255670377/"
                                         data-a2a-title="Best Practices for Stream Processing with Kafka and Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-255491989">
                                <h3>In-Memory Computing Essentials for Data Scientist
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-255491989"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Speaker - Lucas Beeler</div>
                                <div class="event-date">November 1, 2018</div>
                                <p>
                                    Lucas will talk about the fundamental capabilities of in-memory computing platforms
                                    that specifically boost high-load applications and services.
                                    These cost-effective capabilities bring existing IT architecture to the next level
                                    by storing and processing massive quantities of data both in RAM and, optionally, on
                                    disk.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/255491989/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/255491989/"
                                         data-a2a-title="In-Memory Computing Essentials for Data Scientist">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="DevOps-Exchange-SanFrancisco-254969027">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the rescue!
                                    <a href="/events.html#DevOps-Exchange-SanFrancisco-254969027"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DevOps Exchange San Francisco, Speaker - Valentin Kulichenko</div>
                                <div class="event-date">October 25, 2018</div>
                                <p>
                                    Distributed databases can make so many things easier for a developer, but not always
                                    for DevOps.
                                    Kubernetes has come to the rescue with an easy application orchestration! It is
                                    straightforward to do the orchestration
                                    leaning on relational databases as a data layer. However, it is more difficult to do
                                    the same when a distributed SQL database or
                                    other kinds of distributed storage is used instead. In this presentation, attendees
                                    will learn how Kubernetes can orchestrate a distributed database.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/DevOps-Exchange-SanFrancisco/events/254969027"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/DevOps-Exchange-SanFrancisco/events/254969027"
                                         data-a2a-title="Distributed Database DevOps Dilemmas? Kubernetes to the rescue!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-254701726">
                                <h3>Powering up banks and financial institutions with
                                    distributed systems
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-254701726"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 25, 2018</div>
                                <p>
                                    In this talk, attendees will learn about the key capabilities and features of
                                    in-memory computing
                                    platforms that are important for financial applications -- including ACID
                                    compliance, SQL compatibility,
                                    persistence, replication, security, fault tolerance, fraud detection and more.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/254701726/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/254701726/"
                                         data-a2a-title="Powering up banks and financial institutions with distributed systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="futureofdata-newyork-253873404">
                                <h3>Best practices for stream ingestion, processing
                                    and analytics using in-memory computing
                                    <a href="/events.html#futureofdata-newyork-253873404" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Future of Data: New York, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 24, 2018</div>
                                <p>
                                    In this talk, Akmal Chaudhri will share the best practices used for real-time stream
                                    ingestion,
                                    processing and analytics using Apache Ignite, Apache Kafka, Apache Spark and other
                                    technologies.
                                    Akmal, will explain how to:
                                </p>
                                <ul class="page-list">
                                    <li>Optimize stream ingestion from Kafka and other popular messaging and streaming
                                        technologies
                                    </li>
                                    <li>Architect pre-processing and analytics for performance and scalability</li>
                                    <li>Implement and tune Apache Ignite or GridGain and Spark together</li>
                                    <li>Design to ensure performance for real-time reports</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/futureofdata-newyork/events/253873404"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/futureofdata-newyork/events/253873404"
                                         data-a2a-title="Best practices for stream ingestion, processing and analytics using in-memory computing">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Metis-New-York-Data-Science-254379968">
                                <h3>Apache Ignite: The In-Memory Hammer In Your Data
                                    Science Toolkit
                                    <a href="/events.html#Metis-New-York-Data-Science-254379968"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Metis: New York Data Science, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 23, 2018</div>
                                <p>
                                    In this presentation we will look at some of the main components of Apache Ignite,
                                    such as the Compute Grid,
                                    Data Grid and the Machine Learning Grid. Through examples, attendees will learn how
                                    Apache Ignite can be used for data analysis.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Metis-New-York-Data-Science/events/254379968"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Metis-New-York-Data-Science/events/254379968"
                                         data-a2a-title="Apache Ignite: The In-Memory Hammer In Your Data Science Toolkit">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="it-dev-connections-dallas">
                                <h3>Scale Out and Conquer: Architectural Decisions
                                    Behind Distributed In-Memory Systems
                                    <a href="/events.html#it-dev-connections-dallas" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">IT/Dev Connections, Dallas, Speaker - Denis Magda</div>
                                <div class="event-date">October 18, 2018</div>
                                <p>
                                    In this session, attendees will learn about the compromises and pitfalls architects
                                    face when designing
                                    distributed systems. They will also learn the advantages and disadvantages of
                                    different
                                    data-sharding algorithms, effective data models for distributed environments,
                                    synchronization and
                                    coordination in distributed systems, and local scalability issues of speeding up
                                    local processing on cluster nodes.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://tmt.knect365.com/it-dev-connections/speakers/denis-magda-1#far-east-room_scale-out-and-conquer-architectural-decisions-behind-distributed-in-memory-systems"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://tmt.knect365.com/it-dev-connections/speakers/denis-magda-1#far-east-room_scale-out-and-conquer-architectural-decisions-behind-distributed-in-memory-systems"
                                         data-a2a-title="Scale Out and Conquer: Architectural Decisions Behind Distributed In-Memory Systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup Logo">
                                <p>Meetups</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-254629901">
                                <h3>Best Practices for Stream Ingestion, Processing
                                    and Analytics Using In-Memory Computing
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-254629901"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Speaker - Valentin Kulichenko</div>
                                <div class="event-date">September 26, 2018</div>
                                <p>
                                    Learn the best practices used for real-time stream ingestion, processing and
                                    analytics using Apache® Ignite®, GridGain®, Apache Kafka™, Apache Spark™ and other
                                    technologies.
                                    In this session Valentin will explain how to:
                                </p>
                                <ul class="page-list">
                                    <li>Optimize stream ingestion from Kafka and other popular messaging and streaming
                                        technologies
                                    </li>
                                    <li>Architect pre-processing and analytics for performance and scalability</li>
                                    <li>Implement and tune Apache Ignite or GridGain and Spark together</li>
                                    <li>Design to ensure performance for real-time reports</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/254629901/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/254629901/"
                                         data-a2a-title="Best Practices for Stream Ingestion, Processing and Analytics Using In-Memory Computing">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="db-tech-showcase-tokyo">
                                <h3>Apache Ignite: From In-Memory Data Grid to
                                    Memory-Centric Distributed Database
                                    <a href="/events.html#db-tech-showcase-tokyo" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DB Tech Showcase, Tokyo, Speaker - Roman Shtykh</div>
                                <div class="event-date">September 21, 2018</div>
                                <p>
                                    In this session Roman will explain how Apache Ignite evolved from in-memory data
                                    grid to memory-centric database, and you will learn about its peculiarities and
                                    strengths for fast data storing and processing.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.db-tech-showcase.com/dbts/tokyo" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.db-tech-showcase.com/dbts/tokyo"
                                         data-a2a-title="Apache Ignite: From In-Memory Data Grid to Memory-Centric Distributed Database">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Big-Data-Paris-251647148">
                                <h3>How to become a Big Data Rockstar in 15 minutes!
                                    <a href="/events.html#Big-Data-Paris-251647148" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Data Natives European Tour, Paris, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">September 17, 2018</div>
                                <p>
                                    The secret? Apache Ignite! Apache Ignite is a memory-centric distributed database,
                                    caching, and processing platform.
                                    It is designed for transactional, analytical, and streaming workloads, delivering
                                    in-memory performance at scale.<br/>
                                    In this presentation attendees will learn about some of the key capabilities of
                                    Ignite, such as:
                                </p>
                                <ul class="page-list">
                                    <li>Turbocharging SQL queries when working with existing Relational database
                                        systems
                                    </li>
                                    <li>Sharing data and state across multiple Spark jobs using RDDs and DataFrames</li>
                                    <li>Using Ignite’s Machine Learning library for Data Science</li>
                                    <li>Easing DevOps dilemmas by using Ignite with Kubernetes</li>
                                </ul>
                                <p>Attendees will also learn how to download and install Ignite and start to be
                                    productive in under 5 minutes.</p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Big-Data-Paris/events/251647148" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Big-Data-Paris/events/251647148"
                                         data-a2a-title="How to become a Big Data Rockstar in 15 minutes!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Metis-New-York-Data-Science-253834339">
                                <h3>In-Memory Computing Essentials for Data
                                    Scientists
                                    <a href="/events.html#Metis-New-York-Data-Science-253834339"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">New York Data Science, Speaker - Denis Magda</div>
                                <div class="event-date">September 12, 2018</div>
                                <p>
                                    Attendees will be introduced to the fundamental capabilities of in-memory computing
                                    platforms that
                                    boost highly-loaded applications, research projects, risk analysis and fraud
                                    detection tasks by storing
                                    and processing massive amounts of data in memory and on disk across a cluster of
                                    machines. By the end of the workshop the attendees will learn how to:

                                </p>
                                <ul class="page-list">
                                    <li>Deploy a distributed Apache Ignite cluster.</li>
                                    <li>Preload data into the cluster deciding how much RAM is to be available for
                                        storage needs.
                                    </li>
                                    <li>TCreate custom calculations and algorithms and utilize cluster’s resources for
                                        their execution.
                                    </li>
                                    <li>Solve optimizations problems by simulating the process of biological
                                        evolution.
                                    </li>
                                    <li>Apply machine learning algorithms supported by Apache Ignite.</li>
                                </ul>
                                <p>This two-hour workshop is a must-attend event for all data scientists!</p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Metis-New-York-Data-Science/events/253834339/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Metis-New-York-Data-Science/events/253834339/"
                                         data-a2a-title="In-Memory Computing Essentials for Data Scientists">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="postgres-nyc-252852884">
                                <h3>PostgreSQL with Apache Ignite: Faster
                                    Transactions and Analytics
                                    <a href="/events.html#postgres-nyc-252852884" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">New York City PostgreSQL User Group, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">August 30, 2018</div>
                                <p>
                                    Combining Apache Ignite with PostgreSQL can offer enterprises the best of both
                                    open-source worlds:
                                    a highly-scalable high-velocity grid-based in-memory SQL database, with a robust
                                    fully-featured SQL
                                    persistent datastore for advanced analytics and data-warehouse capabilities. Topics
                                    to be covered:
                                </p>
                                <ul class="page-list">
                                    <li>How to complement PostgreSQL for Hybrid Transactional/Analytical Processing
                                        (HTAP) by leveraging the massive parallel processing and SQL capabilities of
                                        Apache Ignite.
                                    </li>
                                    <li>How to use Apache Ignite as an In-Memory Data Grid that stores data in memory
                                        and boosts applications performance by offloading reads from PostgreSQL.
                                    </li>
                                    <li>The strategic benefits of using Apache Ignite instead of Memcache, Redis,
                                        GigaSpaces, or Oracle Coherence.
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/postgres-nyc/events/252852884/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/postgres-nyc/events/252852884/"
                                         data-a2a-title="PostgreSQL with Apache Ignite: Faster Transactions and Analytics">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-253100350">
                                <h3>Machine and Deep Learning with an Apache Ignite
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-253100350"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">August 29, 2018</div>
                                <p>
                                    Apache Ignite Release 2.4 added built-in machine learning (ML) and deep learning
                                    (DL).
                                    It not only eliminates any delays caused by transferring data to a different
                                    database or store.
                                    It delivers near real-time performance by running a variety of ML and DL algorithms
                                    in place,
                                    in memory, that are optimized for collocated processing.
                                </p>
                                <p>Learn more about these new capabilities and how to use them in Apache Ignite 2.4. In
                                    his talk, Akmal will provide:</p>
                                <ul class="page-list">
                                    <li>An overview of the ML and DL algorithms and how they work</li>
                                    <li>Examples of how to implement each ML and DL algorithm</li>
                                    <li>Tips and tricks for getting the most performance out of ML and DL</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/253100350/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/253100350/"
                                         data-a2a-title="Machine and Deep Learning with an Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="big-bang-Data-science-Solutions-253752437">
                                <h3>Improving Apache Spark™ In-Memory Computing with
                                    Apache Ignite<sup>®</sup>
                                    <a href="/events.html#big-bang-Data-science-Solutions-253752437"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Bang Data Science - Georgia, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">August 28, 2018</div>
                                <p>
                                    Learn how Apache Ignite simplifies development and improves performance for Apache
                                    Spark. In his talk, Akmal Chaudhri will explain
                                    how Apache Spark and Ignite are integrated, and how they are used together for
                                    analytics, stream processing and machine learning.
                                </p>
                                <p>By the end of this talk you will understand:</p>
                                <ul class="page-list">
                                    <li>How Apache Ignite's native RDD and new native DataFrame APIs work</li>
                                    <li>How to use Ignite as an in-memory database and massively parallel processing
                                        (MPP) style collocated processing for preparing and managing data for Spark
                                    </li>
                                    <li>How to leverage Ignite to easily share state across Spark jobs using mutable
                                        RDDs and DataFrames
                                    </li>
                                    <li>How to leverage Ignite distributed SQL and advanced indexing in memory to
                                        improve SQL performance
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/big-bang-Data-science-Solutions/events/253752437/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/big-bang-Data-science-Solutions/events/253752437/"
                                         data-a2a-title="Improving Apache Spark™ In-Memory Computing with Apache Ignite™">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Greater-Atlanta-Internet-of-Things-253619287">
                                <h3>Speeding-up the IoT: Best practices for stream
                                    ingestion, processing and analytics using in-memory computing
                                    <a href="/events.html#Greater-Atlanta-Internet-of-Things-253619287"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Greater Atlanta Internet of Things, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">August 27, 2018</div>
                                <p>
                                    In this talk, Akmal Chaudhri will share the best practices used for real-time stream
                                    ingestion,
                                    processing and analytics using Apache Ignite, Apache Kafka, Apache Spark and other
                                    technologies. Akmal will explain how to:
                                </p>
                                <ul class="page-list">
                                    <li>Optimize stream ingestion from Kafka and other popular messaging and streaming
                                        technologies
                                    </li>
                                    <li>Architect pre-processing and analytics for performance and scalability</li>
                                    <li>Implement and tune Apache Ignite and Spark together</li>
                                    <li>Design to ensure performance for real-time reports</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Greater-Atlanta-Internet-of-Things/events/253619287/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Greater-Atlanta-Internet-of-Things/events/253619287/"
                                         data-a2a-title="Speeding-up the IoT: Best practices for stream ingestion, processing and analytics using in-memory computing">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-252983625">
                                <h3>Best Practices for Deploying Distributed
                                    Databases and In-Memory Computing Platforms with Kubernetes
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-252983625"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Menlo Park, Speaker - Denis Magda</div>
                                <div class="event-date">August 23, 2018</div>
                                <p>
                                    Denis will explain how Kubernetes can orchestrate a distributed database or
                                    in-memory computing solutions using Apache Ignite as an example. He'll demonstrate
                                    how to:
                                </p>
                                <ul class="page-list">
                                    <li>Deploy, provision and manage an IMDG or IMDB when you wish to keep data in RAM
                                    </li>
                                    <li>Set up and manage persistence for the in-memory technologies above or configure
                                        a disk-based distributed database
                                    </li>
                                    <li>Set up auto-discovery and automated horizontal scalability, and use other tricks
                                        for high availability
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/252983625"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/252983625"
                                         data-a2a-title="Best Practices for Deploying Distributed Databases and In-Memory Computing Platforms with Kubernetes">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Metis-San-Francisco-Data-Science-253823997">
                                <h3>In-Memory Computing Essentials for Data
                                    Scientists
                                    <a href="/events.html#Metis-San-Francisco-Data-Science-253823997"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Metis: San Francisco Data Science, Speaker - Valentin Kulichenko</div>
                                <div class="event-date">August 22, 2018</div>
                                <p>
                                    Attendees will be introduced to the fundamental capabilities of in-memory computing
                                    platforms that
                                    boost highly-loaded applications, research projects, risk analysis and fraud
                                    detection tasks by
                                    storing and processing massive amounts of data in memory and on disk across a
                                    cluster of machines.
                                    These capabilities and benefits will be demonstrated with the usage of Apache Ignite
                                    which is the
                                    in-memory computing platform that is durable, strongly consistent, and highly
                                    available with powerful SQL, key-value and processing APIs.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Metis-San-Francisco-Data-Science/events/253823997"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Metis-San-Francisco-Data-Science/events/253823997"
                                         data-a2a-title="In-Memory Computing Essentials for Data Scientists">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="datasummer-ukraine">
                                <h3>Apache Ignite + Apache Spark RDDs and DataFrames
                                    integration (ENG)
                                    <a href="/events.html#datasummer-ukraine" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Data Summer Conf, Ukraine, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">July 21, 2018</div>
                                <p>
                                    This session will explain how Apache Spark and Ignite are integrated, and how they
                                    are used to together for
                                    analytics, stream processing and machine learning. By the end of this session
                                    attendees will understand:
                                </p>
                                <ul class="page-list">
                                    <li>How Apache Ignite’s native RDD and new native DataFrame APIs work</li>
                                    <li>How to use Ignite as an in-memory database and massively parallel processing
                                        (MPP) style collocated processing for preparing and managing data for Spark
                                    </li>
                                    <li>How to leverage Ignite to easily share state across Spark jobs using mutable
                                        RDDs and DataFrames
                                    </li>
                                    <li>How to leverage Ignite distributed SQL and advanced indexing in memory to
                                        improve SQL performance
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="big-data-san-francisco-v-50-tickets-46971191097">
                                <h3>Adding Speed and Scale to Existing Applications
                                    with No Rip and Replace Using Apache Ignite
                                    <a href="/events.html#big-data-san-francisco-v-50-tickets-46971191097"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Data, San Francisco v 5.0, Speaker - Denis Magda</div>
                                <div class="event-date">July 18, 2018</div>
                                <p>
                                    Learn how companies are not only adding speed and scale without ripping out,
                                    rewriting or replacing
                                    their existing applications and databases, but also how they're setting themselves
                                    up for future
                                    projects to improve the customer experience. In this talk, Denis will explain how
                                    to:
                                </p>
                                <ul class="page-list">
                                    <li>Get started with Apache Ignite as In-Memory Data Grid (IMDG) deployed on top of
                                        RDBMS or NoSQL database
                                    </li>
                                    <li>Keep data in sync across RAM (Apache Ignite) and disk (RDBMS/NoSQL database)
                                    </li>
                                    <li>Leverage from Apache Ignite distributed SQL and ACID transaction for IMDG
                                        scenarios
                                    </li>
                                    <li>Move further and start to build HTAP applications, real-time analytics, and
                                        machine learning, on the same IMDG
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.eventbrite.co.uk/e/big-data-san-francisco-v-50-tickets-46971191097"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div class=" col-md-3 ">

                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.eventbrite.co.uk/e/big-data-san-francisco-v-50-tickets-46971191097"
                                         data-a2a-title="Adding Speed and Scale to Existing Applications with No Rip and Replace Using Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="London-In-Memory-Computing-Meetup-252516279">
                                <h3>Machine and Deep Learning with in-memory
                                    computing
                                    <a href="/events.html#London-In-Memory-Computing-Meetup-252516279"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">London In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">July 18, 2018</div>
                                <p> Apache Ignite is an open-source distributed database, caching and processing
                                    platform designed
                                    to store and compute on large volumes of data across a cluster of nodes.
                                    Using this free, open-source software, Akmal will give:
                                </p>
                                <ul class="page-list">
                                    <li>An overview of the ML and DL algorithms and how they work</li>
                                    <li>Examples of how to implement each ML and DL algorithm</li>
                                    <li>Tips and tricks for getting the most performance out of ML and DL</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/London-In-Memory-Computing-Meetup/events/252516279"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/London-In-Memory-Computing-Meetup/events/252516279"
                                         data-a2a-title="Machine and Deep Learning with in-memory computing">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section
                                    id="webinars-best-practices-deploying-distributed-databases-and-in-memory-computing-platforms">
                                <h3>Best Practices for Deploying Distributed
                                    Databases and In-Memory Computing Platforms with Kubernetes
                                    <a href="/events.html#webinars-best-practices-deploying-distributed-databases-and-in-memory-computing-platforms"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Denis Magda</div>
                                <div class="event-date">July 11, 2018</div>
                                <p>
                                    In-memory computing technologies such as in-memory data grids (IMDG) and databases
                                    (IMDB), NoSQL and NewSQL
                                    databases can make so many things easier for a developer. But implementing DevOps
                                    for these distributed technologies
                                    and the related storage can be difficult. Luckily Kubernetes has come to the rescue!
                                </p>
                                <p>
                                    In this webinar, learn how Kubernetes can orchestrate a distributed database or
                                    in-memory computing solutions using Apache Ignite as an example.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/best-practices-deploying-distributed-databases-and-in-memory-computing-platforms"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/best-practices-deploying-distributed-databases-and-in-memory-computing-platforms"
                                         data-a2a-title="Best Practices for Deploying Distributed Databases and In-Memory Computing Platforms with Kubernetes">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="webinars-in-memory-computing-essentials-architects-and-developers-part-1-0">
                                <h3>In-Memory Computing Essentials for Architects and
                                    Developers: Part 1
                                    <a href="/events.html#webinars-in-memory-computing-essentials-architects-and-developers-part-1-0"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">July 03, 2018</div>
                                <p>
                                    In this webinar, Akmal Chaudhri will introduce the fundamental capabilities and
                                    components of
                                    an in-memory computing platform with a focus on Apache Ignite, and demonstrate how
                                    to apply the theory in practice.
                                    With increasingly advanced coding examples, architects and developers will learn
                                    about:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster configuration and deployment</li>
                                    <li>Data processing with key-value APIs</li>
                                    <li>Data processing with SQL</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/in-memory-computing-essentials-architects-and-developers-part-1-0"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/in-memory-computing-essentials-architects-and-developers-part-1-0"
                                         data-a2a-title="In-Memory Computing Essentials for Architects and Developers: Part 1">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="docker-new-york">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the rescue!
                                    <a href="/events.html#docker-new-york" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DockerNYC, Speaker - Denis Magda</div>
                                <div class="event-date">June 28, 2018</div>
                                <p>
                                    Distributed databases can make so many things easier for a developer, but not always
                                    for DevOps.
                                    Kubernetes has come to the rescue with an easy application orchestration! It is
                                    straightforward to do the orchestration leaning on relational databases as a data
                                    layer.
                                    However, it is more difficult to do the same when a distributed SQL database or
                                    other kind of distributed storage is used instead.
                                    In this presentation, attendees will learn how Kubernetes can orchestrate a
                                    distributed database like Apache Ignite, in particular:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster Assembling - database nodes auto-discovery in Kubernetes</li>
                                    <li>Database Resilience - automated horizontal scalability</li>
                                    <li>Database Availability - what’s the role of Kubernetes and the database</li>
                                    <li>Utilizing both RAM and disk - set up Apache Ignite in a way to get in-memory
                                        performance with the durability of disk
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://events.docker.com/events/details/docker-new-york-presents-dockernyc-with-gridgain"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://events.docker.com/events/details/docker-new-york-presents-dockernyc-with-gridgain"
                                         data-a2a-title="Distributed Database DevOps Dilemmas? Kubernetes to the rescue!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-251244661">
                                <h3>Scale Out and Conquer: Architectural Decisions
                                    Behind Distributed In-Memory Systems
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-251244661"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">June 27, 2018</div>
                                <p>
                                    In this talk attendees will learn about the compromises and pitfalls architects face
                                    when designing distributed systems:
                                </p>
                                <ul class="page-list">
                                    <li>Advantages and disadvantages of different data-sharding algorithms</li>
                                    <li>Effective data models for distributed environments</li>
                                    <li>Synchronization and coordination in distributed systems</li>
                                    <li>Local scalability issues of speeding up local processing on cluster nodes</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/251244661/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/251244661/"
                                         data-a2a-title="Scale Out and Conquer: Architectural Decisions Behind Distributed In-Memory Systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="mysqlnyc-251606063">
                                <h3>Apache Cassandra vs Apache Ignite for HTAP
                                    <a href="/events.html#mysqlnyc-251606063" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">SQL NYC Database Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">June 26, 2018</div>
                                <p>
                                    Join Denis Magda to learn the current best-practices for HTAP along with the
                                    differences
                                    between Apache Cassandra and Apache Ignite, two of the most-common technologies
                                    utilized
                                    for Hybrid Transactional/Analytical Processing.
                                    This session will cover:
                                </p>
                                <ul class="page-list">
                                    <li>A detailed comparison of Apache Ignite and Apache Cassandra for HTAP
                                        applications
                                    </li>
                                    <li>The requirements for real-time, high volume HTAP applications</li>
                                    <li>Architectural best practices, including how in-memory computing fits in and has
                                        eliminated tradeoffs between consistency, speed and scale
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/mysqlnyc/events/251606063/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/mysqlnyc/events/251606063/"
                                         data-a2a-title="Apache Cassandra vs Apache Ignite for HTAP">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section
                                    id="webinar-building-new-hybrid-transactionaloperational-processing-htap-applications">
                                <h3>Building New Hybrid Transactional/Operational
                                    Processing (HTAP) Applications With Apache® Ignite®
                                    <a href="/events.html#webinar-building-new-hybrid-transactionaloperational-processing-htap-applications"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Denis Magda</div>
                                <div class="event-date">June 20, 2018</div>
                                <p>
                                    Learn how companies build new HTAP applications with in-memory computing that
                                    leverage analytics
                                    within transactions to improve business outcomes. This is how many retail innovators
                                    like Amazon,
                                    Expedia/HomeAway or SaaS innovators like Workday have succeeded. This webinar will
                                    explain with examples on how to:
                                </p>
                                <ul class="page-list">
                                    <li>Merge operational data and analytics together, so that analytics can work
                                        against the most recent data
                                    </li>
                                    <li>Improve processing and analytics scalability with massively parallel processing
                                        (MPP)
                                    </li>
                                    <li>Increase transaction throughput using a combination of distributed SQL, ACID
                                        transaction support and native persistence
                                    </li>
                                    <li>Synchronize data and transactions with existing systems</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/part-2-building-new-hybrid-transactionaloperational-processing-htap-applications"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/part-2-building-new-hybrid-transactionaloperational-processing-htap-applications"
                                         data-a2a-title="Building New Hybrid Transactional/Operational Processing (HTAP) Applications With Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="containerdays-distributed-database-devops-dilemmas">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the rescue!
                                    <a href="/events.html#containerdays-distributed-database-devops-dilemmas"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Containerdays, Hamburg, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">June 19, 2018</div>
                                <p>
                                    Distributed databases can make so many things easier for a developer, but not always
                                    for DevOps.
                                    Kubernetes has come to the rescue with an easy application orchestration! It is
                                    straightforward to
                                    do the orchestration leaning on relational databases as a data layer. However, it is
                                    more difficult
                                    to do the same when a distributed SQL database or other kind of distributed storage
                                    is used instead.
                                    In this presentation, attendees will learn how Kubernetes can orchestrate a
                                    distributed database
                                    like Apache Ignite, in particular:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster Assembling - database nodes auto-discovery in Kubernetes</li>
                                    <li>Database Resilience - automated horizontal scalability</li>
                                    <li>Database Availability - what's the role of Kubernetes and the database</li>
                                    <li>Utilizing both RAM and disk - set up Apache Ignite in a way to get in-memory
                                        performance with the durability of disk
                                    </li>
                                </ul>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="euroadshow18-iot-schedule">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT
                                    <a href="/events.html#euroadshow18-iot-schedule" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache EU Roadshow, Berlin, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">June 14, 2018</div>
                                <p>
                                    This session will show attendees how to build a Fast Data solution that will receive
                                    endless streams
                                    from the IoT side and will be capable of processing the streams in real-time using
                                    Apache Ignite's cluster resources.
                                    In particular, attendees will learn about data streaming to an Apache Ignite cluster
                                    from
                                    embedded devices and real-time data processing with Apache Spark.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="http://www.apachecon.com/euroadshow18/iot-schedule.html"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="http://www.apachecon.com/euroadshow18/iot-schedule.html"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-251308516">
                                <h3>In-memory computing hot topics & emerging trends:
                                    Panel discussion in Menlo Park
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-251308516"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">June 13, 2018</div>
                                <p>
                                    While the cost of memory is still slightly higher than disk-based storage, an
                                    in-memory computing
                                    solution offers a tremendous increase in performance and much greater flexibility to
                                    incorporate new
                                    capabilities in the future. The benefit? A far superior return on investment (ROI),
                                    especially when
                                    competitive advantage and customer experience is taken into account.
                                </p>
                                <p>
                                    You are invited to attend our June 13 gathering at BootUp in Menlo Park for an
                                    insightful panel
                                    discussion on in-memory computing hot topics and emerging trends (and more). The
                                    panel of experts
                                    will also field your questions, suggestions and ideas.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/251308516/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/251308516/"
                                         data-a2a-title="In-memory computing hot topics & emerging trends: Panel discussion in Menlo Park">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="javamug-lvktppyxjbrb">
                                <h3>Skyrocket Java applications with the open-source
                                    Apache Ignite
                                    <a href="/events.html#javamug-lvktppyxjbrb" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Java Metroplex User Group (JavaMUG), Speaker - Dani Taphagen</div>
                                <div class="event-date">June 13, 2018</div>
                                <p>
                                    In her talk, Dani will introduce the many components of the open-source Apache
                                    Ignite.
                                    As Java professionals, you will learn how to solve some of the most demanding
                                    scalability and
                                    performance challenges. She’ll also cover a few typical use cases and work through
                                    some code examples.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/javamug/events/lvktppyxjbrb/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/javamug/events/lvktppyxjbrb/"
                                         data-a2a-title="Skyrocket Java applications with the open-source Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="adding-speed-and-scale-existing-applications-no-rip-and-replace-using">
                                <h3>Adding Speed and Scale to Existing Applications
                                    with No Rip and Replace Using Apache® Ignite®
                                    <a href="/events.html#adding-speed-and-scale-existing-applications-no-rip-and-replace-using"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Denis magda</div>
                                <div class="event-date">May 30, 2018</div>
                                <p>
                                    Learn how companies are not only adding speed and scale without ripping out,
                                    rewriting or replacing
                                    their existing applications and databases, but also how they're setting themselves
                                    up for future
                                    projects to improve the customer experience. This webinar will explain, with
                                    examples, how to:
                                </p>
                                <ul class="page-list">
                                    <li>Get started with Apache Ignite as In-Memory Data Grid (IMDG) deployed on top of
                                        RDBMS or NoSQL database
                                    </li>
                                    <li>Keep data in sync across RAM (Apache Ignite) and disk (RDBMS/NoSQL database)
                                    </li>
                                    <li>Leverage from Apache Ignite distributed SQL and ACID transaction for IMDG
                                        scenarios
                                    </li>
                                    <li>Move further and start to build HTAP applications, real-time analytics, and
                                        machine learning, on the same IMDG
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/part-1-adding-speed-and-scale-existing-applications-no-rip-and-replace-using"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/part-1-adding-speed-and-scale-existing-applications-no-rip-and-replace-using"
                                         data-a2a-title="Adding Speed and Scale to Existing Applications with No Rip and Replace Using Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-250456740">
                                <h3>Improving Apache Spark™ In-Memory Computing with
                                    Apache Ignite®
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-250456740"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Speaker - Valentin Kulichenko</div>
                                <div class="event-date">May 17, 2018</div>
                                <p>
                                    Val will explain how Apache Ignite® simplifies development and improves performance
                                    for Apache Spark™.
                                    He'll demonstrate how Apache Spark and Ignite are integrated, and how they are used
                                    to together for analytics,
                                    stream processing and machine learning. By the end of his presentation you'll
                                    understand:
                                </p>
                                <ul class="page-list">
                                    <li>How Apache Ignite’s native RDD and new native DataFrame APIs work</li>
                                    <li>How to use Ignite as an in-memory database and massively parallel processing
                                        (MPP) style collocated processing for preparing and managing data for Spark
                                    </li>
                                    <li>How to leverage Ignite to easily share state across Spark jobs using mutable
                                        RDDs and DataFrames
                                    </li>
                                    <li>How to leverage Ignite distributed SQL and advanced indexing in memory to
                                        improve SQL performance
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/250456740/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/250456740/"
                                         data-a2a-title="Improving Apache Spark™ In-Memory Computing with Apache Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="iot-world-santa-clara">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT
                                    <a href="/events.html#iot-world-santa-clara" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">IOT World, Santa Clara Convention Center, CA, Speaker - Denis Magda</div>
                                <div class="event-date">May 16, 2018</div>
                                <p>
                                    This session will show attendees how to build a Fast Data solution that will receive
                                    endless streams
                                    from the IoT side and will be capable of processing the streams in real-time using
                                    Apache Ignite's cluster resources.
                                    Attendees will learn about data streaming to an Apache Ignite cluster from embedded
                                    devices and real-time data processing with Apache Spark.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinars</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="machine-learning-and-deep-learning-apacher-ignitetm">
                                <h3>Machine Learning and Deep Learning with Apache®
                                    Ignite®
                                    <a href="/events.html#machine-learning-and-deep-learning-apacher-ignitetm"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">May 16, 2018</div>
                                <p>
                                    Apache Ignite Release 2.4 added built-in machine learning (ML) and deep learning
                                    (DL).
                                    It not only eliminates any delays caused by transferring data to a different
                                    database or store.
                                    It delivers near real-time performance by running a variety of ML and DL algorithms
                                    in place, in memory,
                                    that are optimized for collocated processing. Learn more about these new
                                    capabilities and how
                                    to use them in Apache Ignite 2.4.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/machine-learning-and-deep-learning-apacher-ignitetm"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/machine-learning-and-deep-learning-apacher-ignitetm"
                                         data-a2a-title="Machine Learning and Deep Learning with Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetups">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="London-In-Memory-Computing-Meetup-250316825">
                                <h3>Comparing Apache Ignite and Cassandra for Hybrid
                                    Transactional/Analytical Processing (HTAP)
                                    <a href="/events.html#London-In-Memory-Computing-Meetup-250316825"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">London In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">May 09, 2018</div>
                                <p>
                                    The 10x growth of transaction volumes, 50x growth in data volumes -- along with the
                                    drive for
                                    real-time visibility and responsiveness over the last decade -- have pushed
                                    traditional technologies
                                    including databases beyond their limits. Your choices are either buy expensive
                                    hardware to
                                    accelerate the wrong architecture, or do what other companies have started to do and
                                    invest in
                                    technologies being used for modern hybrid transactional/analytical processing
                                    (HTAP).
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/London-In-Memory-Computing-Meetup/events/250316825/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/London-In-Memory-Computing-Meetup/events/250316825/"
                                         data-a2a-title="Comparing Apache Ignite and Cassandra for Hybrid Transactional/Analytical Processing (HTAP)">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetups">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-events-249201183">
                                <h3>Comparing Apache Ignite and Cassandra for Hybrid
                                    Transactional/Analytical Processing (HTAP)
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-events-249201183"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">April 26, 2018</div>
                                <p>
                                    Learn some of the current best practices in building HTAP applications, and the
                                    differences between two of the more common technologies companies use: Apache®
                                    Cassandra™ and Apache® Ignite®.
                                    This session will cover:
                                </p>
                                <ul class="page-list">
                                    <li>The requirements for real-time, high volume HTAP applications</li>
                                    <li>Architectural best practices, including how in-memory computing fits in and has
                                        eliminated tradeoffs between consistency, speed and scale
                                    </li>
                                    <li>A detailed comparison of Apache Ignite and GridGain® for HTAP applications</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/249201183/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/249201183/"
                                         data-a2a-title="Comparing Apache Ignite and Cassandra for Hybrid Transactional/Analytical Processing (HTAP)">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="webinar-improving-apache-spark-in-memory-computing-apache-ignite">
                                <h3>Improving Apache Spark™ In-Memory Computing with
                                    Apache Ignite®
                                    <a href="/events.html#webinar-improving-apache-spark-in-memory-computing-apache-ignite"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">April 25, 2018</div>
                                <p>
                                    Learn how Apache Ignite® simplifies development and improves performance for Apache
                                    Spark™.
                                    This session will explain how Apache Spark and Ignite are integrated, and how they
                                    are used
                                    to together for analytics, stream processing and machine learning. By the end of
                                    this session you will understand:
                                </p>
                                <ul class="page-list">
                                    <li>How Apache Ignite's native RDD and new native DataFrame APIs work</li>
                                    <li>How to use Ignite as an in-memory database and massively parallel processing
                                        (MPP) style collocated processing for preparing and managing data for Spark
                                    </li>
                                    <li>How to leverage Ignite to easily share state across Spark jobs using mutable
                                        RDDs and DataFrames
                                    </li>
                                    <li>How to leverage Ignite distributed SQL and advanced indexing in memory to
                                        improve SQL performance
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/improving-apache-spark-in-memory-computing-apache-ignite"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/improving-apache-spark-in-memory-computing-apache-ignite"
                                         data-a2a-title="Improving Apache Spark™ In-Memory Computing with Apache Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetups">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-events-248615199">
                                <h3>Comparing Apache Ignite and Cassandra for Hybrid
                                    Transactional/Analytical Processing (HTAP)
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-events-248615199"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Speaker - Dmitriy Setrakyan</div>
                                <div class="event-date">April 11, 2018</div>
                                <p>
                                    Learn some of the current best practices in building HTAP applications, and the
                                    differences between two of the more common technologies companies use: Apache®
                                    Cassandra™ and Apache® Ignite®.
                                    This session will cover:
                                </p>
                                <ul class="page-list">
                                    <li>The requirements for real-time, high volume HTAP applications</li>
                                    <li>Architectural best practices, including how in-memory computing fits in and has
                                        eliminated tradeoffs between consistency, speed and scale
                                    </li>
                                    <li>A detailed comparison of Apache Ignite and GridGain® for HTAP applications</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/248615199/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/248615199/"
                                         data-a2a-title="Comparing Apache Ignite and Cassandra for Hybrid Transactional/Analytical Processing (HTAP)">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetups">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Apache-Spark-Maryland-events-248437125">
                                <h3>Apache Spark and Apache Ignite: Make streaming
                                    analytics real with in-memory computing
                                    <a href="/events.html#Apache-Spark-Maryland-events-248437125"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Apache Spark and Distributed Computing Maryland, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">April 05, 2018</div>
                                <p>
                                    Learn how Apache Spark is integrated with Apache Ignite through standard Spark APIs,
                                    and how Spark benefits from processing data in-memory in Apache Ignite. In this
                                    session Akmal will demonstrate how to:
                                </p>
                                <ul class="page-list">
                                    <li>Use Ignite as an in-memory database for Spark applications</li>
                                    <li>Perform streaming analytics by deploying Spark stream pipeline</li>
                                    <li>Process data stored in Ignite with Spark RDDs and DataFrames</li>
                                    <li>Speed up SQL queries by leveraging the Ignite SQL engine and indexing</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Apache-Spark-Maryland/events/248437125/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Apache-Spark-Maryland/events/248437125/"
                                         data-a2a-title="Apache Spark and Apache Ignite: Make streaming analytics real with in-memory computing">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetups">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NOVA-Data-Science-events-249015197">
                                <h3>Apache Ignite: the in-memory hammer in your data
                                    science toolkit.
                                    <a href="/events.html#NOVA-Data-Science-events-249015197" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NOVA Data Science, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">April 04, 2018</div>
                                <p>
                                    In this presentation, Akmal will look at some of the main components of Apache
                                    Ignite, such as
                                    the Compute Grid, Data Grid and the Machine Learning Grid. Through examples,
                                    attendees will learn how Apache Ignite can be used for data analysis.

                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NOVA-Data-Science/events/249015197/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NOVA-Data-Science/events/249015197/"
                                         data-a2a-title="Apache Ignite: the in-memory hammer in your data science toolkit.">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetups">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="DC-Spring-Framework-events-247811860">
                                <h3>Faster data access and processing? Our experiment
                                    with Apache Ignite
                                    <a href="/events.html#DC-Spring-Framework-events-247811860"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DC Spring Framework Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">April 03, 2018</div>
                                <p>
                                    Slow database performance is a common complaint for Java developers. Is Apache
                                    Ignite the solution? Akmal Chaudhri will cover a few typical use cases and work
                                    through some code examples using Apache Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/DC-Spring-Framework/events/247811860/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/DC-Spring-Framework/events/247811860/"
                                         data-a2a-title="Faster data access and processing? Our experiment with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetups">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="big-data-washington-dc-v-20-tickets-42867967244">
                                <h3>The In-Memory Hammer In Your Data Science Toolkit
                                    <a href="/events.html#big-data-washington-dc-v-20-tickets-42867967244"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Data, Washington DC v 2.0, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">April 02, 2018</div>
                                <p>
                                    In this presentation, Akmal will explain some of the main components of Apache
                                    Ignite,
                                    such as the Compute Grid, Data Grid and the Machine Learning Grid.
                                    Through examples, attendees will learn how Apache Ignite can be used for data
                                    analysis.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.eventbrite.com/e/big-data-washington-dc-v-20-tickets-42867967244"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.eventbrite.com/e/big-data-washington-dc-v-20-tickets-42867967244"
                                         data-a2a-title="The In-Memory Hammer In Your Data Science Toolkit">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section
                                    id="brighttalk-comparing-apacher-ignitetm-and-cassandratm-hybrid-transactional-applications">
                                <h3>Comparing Apache® Ignite® and Cassandra™ for
                                    Hybrid Transactional Applications (HTAP)
                                    <a href="/events.html#brighttalk-comparing-apacher-ignitetm-and-cassandratm-hybrid-transactional-applications"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">BrightTALK Webinar, Denis Magda</div>
                                <div class="event-date">March 28, 2018</div>
                                <p>
                                    Learn some of the current best practices in building HTAP applications, and the
                                    differences between two of the more common technologies companies use: Apache®
                                    Cassandra™ and Apache® Ignite®.
                                    This session will cover:
                                </p>
                                <ul class="page-list">
                                    <li>The requirements for real-time, high volume HTAP applications</li>
                                    <li>Architectural best practices, including how in-memory computing fits in and has
                                        eliminated tradeoffs between consistency, speed and scale
                                    </li>
                                    <li>A detailed comparison of Apache Ignite and GridGain® for HTAP applications</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.brighttalk.com/webcast/9059/306965?utm_campaign=webcasts-search-results-feed&utm_content=Ignite&utm_source=brighttalk-portal&utm_medium=web"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.brighttalk.com/webcast/9059/306965?utm_campaign=webcasts-search-results-feed&utm_content=Ignite&utm_source=brighttalk-portal&utm_medium=web"
                                         data-a2a-title="Comparing Apache® Ignite® and Cassandra™ for Hybrid Transactional Applications (HTAP)">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinars</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="comparing-apacher-ignitetm-and-cassandratm-hybrid-transactional-applications">
                                <h3>Comparing Apache® Ignite® and Cassandra™ for
                                    Hybrid Transactional Applications (HTAP)
                                    <a href="/events.html#comparing-apacher-ignitetm-and-cassandratm-hybrid-transactional-applications"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">March 28, 2018</div>
                                <p>
                                    Learn some of the current best practices in building HTAP applications, and the
                                    differences between two of the more common technologies companies use: Apache®
                                    Cassandra™ and Apache® Ignite®.
                                    This session will cover:
                                </p>
                                <ul class="page-list">
                                    <li>The requirements for real-time, high volume HTAP applications</li>
                                    <li>Architectural best practices, including how in-memory computing fits in and has
                                        eliminated tradeoffs between consistency, speed and scale
                                    </li>
                                    <li>A detailed comparison of Apache Ignite and GridGain® for HTAP applications</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/comparing-apacher-ignitetm-and-cassandratm-hybrid-transactional-applications"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/comparing-apacher-ignitetm-and-cassandratm-hybrid-transactional-applications"
                                         data-a2a-title="Comparing Apache® Ignite® and Cassandra™ for Hybrid Transactional Applications (HTAP)">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="in-memory-computing-essentials-for-data-scientists">
                                <h3>In-Memory Computing Essentials for Data
                                    Scientists
                                    <a href="/events.html#in-memory-computing-essentials-for-data-scientists"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Symbion IoT Meetup (Copenhagen, Denmark), Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 28, 2018</div>
                                <p>
                                    In this hands on workshop, attendees will be introduced to the fundamental
                                    capabilities of in-memory computing platforms that
                                    boost highly-loaded applications, research projects, risk analysis and fraud
                                    detection tasks by
                                    storing and processing massive amounts of data in memory and on disk across a
                                    cluster of machines.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://symbion.dk/event/in-memory-computing-essentials-for-data-scientists/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://symbion.dk/event/in-memory-computing-essentials-for-data-scientists/"
                                         data-a2a-title="In-Memory Computing Essentials for Data Scientists">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-ignite-the-in-memory-hammer-in-your-data-science-toolkit">
                                <h3>Apache Ignite: the in-memory hammer in your data
                                    science toolkit
                                    <a href="/events.html#apache-ignite-the-in-memory-hammer-in-your-data-science-toolkit"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Symbion IoT Meetup (Copenhagen, Denmark), Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 27, 2018</div>
                                <p>
                                    In this presentation, Akmal will explain some of the main components of Apache
                                    Ignite,
                                    such as the Compute Grid, Data Grid and the Machine Learning Grid.
                                    Through examples, attendees will learn how Apache Ignite can be used for data
                                    analysis.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://symbion.dk/event/apache-ignite-the-in-memory-hammer-in-your-data-science-toolkit/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://symbion.dk/event/apache-ignite-the-in-memory-hammer-in-your-data-science-toolkit/"
                                         data-a2a-title="Apache Ignite: the in-memory hammer in your data science toolkit">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Atlanta-Apache-Spark-User-Group-events-247807609">
                                <h3>How to Share State Across Multiple Spark Jobs
                                    using Apache Ignite
                                    <a href="/events.html#Atlanta-Apache-Spark-User-Group-events-247807609"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Atlanta Apache Spark User Group, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 20, 2018</div>
                                <p>
                                    This session will demonstrate how to easily share state in-memory across multiple
                                    Spark jobs,
                                    either within the same application or between different Spark applications using an
                                    implementation of the Spark RDD abstraction provided in Apache Ignite
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Atlanta-Apache-Spark-User-Group/events/247807609/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Atlanta-Apache-Spark-User-Group/events/247807609/"
                                         data-a2a-title="How to Share State Across Multiple Spark Jobs using Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="big-bang-Data-science-Solutions-events-247996429">
                                <h3>Apache Ignite: The in-memory hammer in your data
                                    science toolkit
                                    <a href="/events.html#big-bang-Data-science-Solutions-events-247996429"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Bang Data Science - Georgia, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 19, 2018</div>
                                <p>
                                    Join Big Bang Data Science as we learn from Dr. Akmal Chaudhri about some of the
                                    main components
                                    of Apache Ignite, such as the Compute Grid, Data Grid, and the Machine Learning
                                    Grid.
                                    Through examples, attendees will learn how Apache Ignite can be used for data
                                    analysis.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/big-bang-Data-science-Solutions/events/247996429/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/big-bang-Data-science-Solutions/events/247996429/"
                                         data-a2a-title="Apache Ignite: The in-memory hammer in your data science toolkit">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="webinar-choosing-right-in-memory-computing-technology">
                                <h3>Choosing the Right In-Memory Computing Technology
                                    <a href="/events.html#webinar-choosing-right-in-memory-computing-technology"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Dmitriy Setrakyan</div>
                                <div class="event-date">March 14, 2018</div>
                                <p>
                                    The need for real-time computing has resulted in the growth of many different
                                    in-memory computing technologies
                                    including caches, in-memory data grids, in-memory databases, streaming technologies
                                    and broader
                                    in-memory computing platforms. But what are the best technologies for each type of
                                    project?
                                    Learn about your options from one of the leading in-memory computing veterans.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/choosing-right-in-memory-computing-technology"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/choosing-right-in-memory-computing-technology"
                                         data-a2a-title="Choosing the Right In-Memory Computing Technology">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-events-248077601">
                                <h3>All the Cool Kids are Doing it: The Whys and Hows
                                    of Architecting a Distributed Caching solution for your use case with Apache Ignite
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-events-248077601"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Fotios Filacouris</div>
                                <div class="event-date">March 14, 2018</div>
                                <p>
                                    Are you considering a distributed cache to help accelerate and scale your existing
                                    application?
                                    Or do you have a new project that you know the SLAs are going to require an act of
                                    magic to produce?
                                    Have no fear, Foti is here to walk your through some reference architectures on
                                    various use cases that have
                                    benefited from using Apache Ignite. He will cover the Why and How of each use case
                                    and the pros and cons
                                    of different technology choices. How to use Kafka, noSQL, RDBMS, Kubernetes and
                                    container deployment, Spark,
                                    etc will all be discussed in terms of various best practices in architecting the
                                    right solution with Apache Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/248077601/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/248077601/"
                                         data-a2a-title="All the Cool Kids are Doing it: The Whys and Hows of Architecting a Distributed Caching solution for your use case with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Moscow-Apache-Ignite-Meetup-events-247608182">
                                <h3>In-Memory Computing Essentials for Architects and
                                    Developers - Part 1
                                    <a href="/events.html#Moscow-Apache-Ignite-Meetup-events-247608182"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Moscow Apache Ignite Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">March 13, 2018</div>
                                <p>
                                    Denis Magda will talk about the main features and components of In-Memory Computing
                                    solutions using the example of Apache Ignite.
                                    The webinar combines theory and practice, after which participants will be able to
                                    design and write code for similar systems.
                                    On specific examples of the code you will learn about:
                                <ul class="page-list">
                                    <li>Configuration and launch of clusters</li>
                                    <li>Data processing using key-value API</li>
                                    <li>Optimal data processing with distributed SQL</li>
                                </ul>
                                <br/>
                                <i>This webinar is in Russian.</i>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Moscow-Apache-Ignite-Meetup/events/247608182/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Moscow-Apache-Ignite-Meetup/events/247608182/"
                                         data-a2a-title="In-Memory Computing Essentials for Architects and Developers: Part 1">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="elciotna18-event-DYLq">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT
                                    <a href="/events.html#elciotna18-event-DYLq" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">OpenIoTSummit North America, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 12, 2018</div>
                                <p>
                                    This session will show attendees how to build a Fast Data solution that will receive
                                    endless streams
                                    from the IoT side and will be capable of processing the streams in real-time using
                                    Apache Ignite's cluster resources.
                                    In particular, attendees will learn about data streaming to an Apache Ignite cluster
                                    from
                                    embedded devices and real-time data processing with Apache Spark.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://elciotna18.sched.com/event/DYLq" target="_blank" rel="noopener"
                                           aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://elciotna18.sched.com/event/DYLq"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Amsterdam-Java-User-Group-events-246975240">
                                <h3>In-Memory Computing Essentials for Java
                                    Developers
                                    <a href="/events.html#Amsterdam-Java-User-Group-events-246975240"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Amsterdam Java User Group Workshop, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 08, 2018</div>
                                <p>
                                    Akmal Chaudhri will introduce to the fundamental capabilities of in-memory computing
                                    platforms that
                                    boost high-load applications and services, and bring existing IT architecture to the
                                    next level by
                                    storing and processing a massive amount of data both in RAM and, optionally, on
                                    disk.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Amsterdam-Java-User-Group/events/246975240/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Amsterdam-Java-User-Group/events/246975240/"
                                         data-a2a-title="In-Memory Computing Essentials for Java Developers">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Amsterdam-Java-User-Group-events-244797561">
                                <h3>Catch an intro to the Java-powered Apache Ignite
                                    - memory-centric distributed platform
                                    <a href="/events.html#Amsterdam-Java-User-Group-events-244797561"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Amsterdam Java User Group, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 07, 2018</div>
                                <p>
                                    In his talk, Akmal will introduce the many components of the open-source Apache
                                    Ignite.
                                    You will learn how to solve some of the most demanding scalability and performance
                                    challenges.
                                    Akmal will also cover a few typical use cases and work through some code examples.
                                    Hope to see you there so you can leave ready to fire up your database deployments!
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Amsterdam-Java-User-Group/events/244797561/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Amsterdam-Java-User-Group/events/244797561/"
                                         data-a2a-title="Catch an intro to the Java-powered Apache Ignite - memory-centric distributed platform">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Amsterdam-Kubernetes-Meetup-events-247989650">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the rescue!
                                    <a href="/events.html#Amsterdam-Kubernetes-Meetup-events-247989650"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Amsterdam Kubernetes/Cloud-Native Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 06, 2018</div>
                                <p>
                                    Attendees will be introduced to the fundamental capabilities of in-memory computing
                                    platforms that
                                    boost highly-loaded applications, research projects, risk analysis and fraud
                                    detection tasks by
                                    storing and processing massive amounts of data in memory and on disk across a
                                    cluster of machines.
                                    These capabilities and benefits will be demonstrated with the usage of Apache Ignite
                                    which is the
                                    in-memory computing platform that is durable, strongly consistent, and highly
                                    available with
                                    powerful SQL, key-value and processing APIs.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Amsterdam-Kubernetes-Meetup/events/247989650/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Amsterdam-Kubernetes-Meetup/events/247989650/"
                                         data-a2a-title="Distributed Database DevOps Dilemmas? Kubernetes to the rescue!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="BruJUG-events-247929324">
                                <h3>Skyrocket Java applications with the open-source
                                    Apache Ignite
                                    <a href="/events.html#BruJUG-events-247929324" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">The Brussels Java User Group, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">March 05, 2018</div>
                                <p>
                                    In his talk, Akmal will introduce the many components of the open-source Apache
                                    Ignite.
                                    As Java professionals, you will learn how to solve some of the most demanding
                                    scalability and performance challenges.
                                    He’ll also cover a few typical use cases and work through some code examples.
                                    Attendees would leave ready to fire up their own database deployments!
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/BruJUG/events/247929324/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/BruJUG/events/247929324/"
                                         data-a2a-title="Skyrocket Java applications with the open-source Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinars</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="webinars-essentials-in-russian-part1">
                                <h3>Basics of In-Memory Computing for architects and
                                    developers: Part 1
                                    <a href="/events.html#webinars-essentials-in-russian-part1"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">Febuary 28, 2018</div>
                                <p>
                                    Denis Magda will talk about the main features and components of In-Memory Computing
                                    solutions using the example of Apache Ignite.
                                    The webinar combines theory and practice, after which participants will be able to
                                    design and write code for similar systems.
                                    On specific examples of the code you will learn about:
                                <ul class="page-list">
                                    <li>Configuration and launch of clusters</li>
                                    <li>Data processing using key-value API</li>
                                    <li>Optimal data processing with distributed SQL</li>
                                </ul>
                                <br/>
                                <i>This webinar is in Russian.</i>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/essentials-in-russian-part1"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/essentials-in-russian-part1"
                                         data-a2a-title="Basics of In-Memory Computing for architects and developers: Part 1">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Big-Data-Berlin-events-247348848">
                                <h3>The In-Memory Hammer In Your Data Science Toolkit
                                    <a href="/events.html#Big-Data-Berlin-events-247348848" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Data, Berlin, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">Febuary 22, 2018</div>
                                <p>
                                    In this presentation, Akmal will explain some of the main components of Apache
                                    Ignite,
                                    such as the Compute Grid, Data Grid and the Machine Learning Grid.
                                    Through examples, attendees will learn how Apache Ignite can be used for data
                                    analysis.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Big-Data-Berlin/events/247348848/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Big-Data-Berlin/events/247348848/"
                                         data-a2a-title="The In-Memory Hammer In Your Data Science Toolkit">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-events-247427747">
                                <h3>Building consistent and highly available
                                    distributed systems with Apache Ignite and GridGain
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-events-247427747"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Speaker - Valentin Kulichenko</div>
                                <div class="event-date">Febuary 21, 2018</div>
                                <p>
                                    In this session, meetup attendees will be given an overview of Apache® Ignite® and
                                    GridGain capabilities that allow the delivery of high availability, while not
                                    breaking data consistency. Specific guidelines will be presented on how to build
                                    such systems covering topics such as:
                                <ul class="page-list">
                                    <li>In-memory backups</li>
                                    <li>Data persistence</li>
                                    <li>Data center replication</li>
                                    <li>Full and incremental snapshots</li>
                                </ul>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/247427747/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/247427747/"
                                         data-a2a-title="Building consistent and highly available distributed systems with Apache Ignite and GridGain">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Berlin-Kubernetes-Meetup-events-247357559">
                                <h3>Kubernetes: Good, Bad, Ugly of GKE and
                                    Distributed Databases in Kubernetes
                                    <a href="/events.html#Berlin-Kubernetes-Meetup-events-247357559"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Berlin Kubernetes Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">Febuary 21, 2018</div>
                                <p>
                                    In this talk you will learn how Kubernetes can orchestrate distributed database like
                                    Apache Ignite, in particular:
                                <ul class="page-list">
                                    <li>Cluster Assembling - database nodes auto-discovery in Kubernetes</li>
                                    <li>Database Resilience - automated horizontal scalability</li>
                                    <li>Database Availability - what’s the role of Kubernetes and the database</li>
                                    <li>Utilizing both RAM and disk - set up Apache Ignite in a way to get in-memory
                                        performance with durability of disk
                                    </li>
                                </ul>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Berlin-Kubernetes-Meetup/events/247357559/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Berlin-Kubernetes-Meetup/events/247357559/"
                                         data-a2a-title="Kubernetes: Good, Bad, Ugly of GKE and Distributed Databases in Kubernetes">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="ibm-indexconf-sessions">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT
                                    <a href="/events.html#ibm-indexconf-sessions" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Index Developer Conference, Speaker - Denis Magda</div>
                                <div class="event-date">Febuary 20, 2018</div>
                                <p>
                                    It is not enough to build a mesh of sensors or embedded devices to obtain more
                                    insights about the
                                    surrounding environment and optimize your production systems. Usually, your IoT
                                    solution needs
                                    to be capable of transferring enormous amounts of data to storage or the cloud where
                                    the
                                    data have to be processed further.

                                    This session will show attendees how to build a Fast Data solution that will receive
                                    endless streams from the IoT side and will be capable of processing the streams in
                                    real-time using Apache Ignite's cluster resources.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://developer.ibm.com/indexconf/sessions/#!?id=5554"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://developer.ibm.com/indexconf/sessions/#!?id=5554"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="jug-bb-events-247490915">
                                <h3>Skyrocket Java applications with the open-source
                                    Apache Ignite
                                    <a href="/events.html#jug-bb-events-247490915" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Java Usergroup Berlin-Brandenburg, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">Febuary 20, 2018</div>
                                <p>
                                    In his talk, Akmal will introduce the many components of the open-source Apache
                                    Ignite.
                                    Meetup members, as Java professionals, will learn how to solve some of the most
                                    demanding scalability and performance challenges. He’ll also cover a few typical use
                                    cases
                                    and work through some code examples. Attendees would leave ready to fire up their
                                    own database deployments!

                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/jug-bb/events/247490915/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/jug-bb/events/247490915/"
                                         data-a2a-title="Skyrocket Java applications with the open-source Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="redis-replaced-why-companies-now-choose-apacher-ignitetm">
                                <h3>GridGain Webinar: Redis Replaced: Why Companies
                                    Now Choose Apache® Ignite® to Improve Application Speed and Scale
                                    <a href="/events.html#redis-replaced-why-companies-now-choose-apacher-ignitetm"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">Febuary 20, 2018</div>
                                <p>
                                    Learn why businesses are choosing Apache Ignite to handle their in-memory computing
                                    needs, and moving away from traditional caches like Redis.
                                    In this session, Denis will explain how:
                                <ul class="page-list">
                                    <li>In-memory technologies have evolved from caches to in-memory computing
                                        platform
                                    </li>
                                    <li>Apache Ignite slides in-between existing applications and SQL databases to
                                        improve performance and scale
                                    </li>
                                    <li>Apache Ignite native SQL and ACID transaction support works</li>
                                    <li>Apache Ignite in-memory storage and collocated computing scales out linearly to
                                        avoid scale limitations with traditional caches
                                    </li>
                                </ul>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/company/news/events/gridgain-webinar-redis-replaced-why-companies-now-choose-apacher-ignitetm"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/company/news/events/gridgain-webinar-redis-replaced-why-companies-now-choose-apacher-ignitetm"
                                         data-a2a-title="GridGain Webinar: Redis Replaced: Why Companies Now Choose Apache® Ignite® to Improve Application Speed and Scale">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="San-Francisco-Kubernetes-Meetup-events-247330448">
                                <h3>Deploy like a Boss: Using Kubernetes and Apache
                                    Ignite!
                                    <a href="/events.html#San-Francisco-Kubernetes-Meetup-events-247330448"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">San Francisco Kubernetes Meetup, Speaker - Dani Traphagen</div>
                                <div class="event-date">Febuary 15, 2018</div>
                                <p>
                                    If downtime is not an option for you and your application needs to be extremely
                                    low-latency;
                                    what cocktail of open source projects can facilitate this best? Both Kubernetes and
                                    Apache Ignite
                                    are Open Source Frameworks that work exceedingly well together to achieve said
                                    goals. By working with containerization
                                    Kubernetes helps enable developers to work seamlessly with new versions of their
                                    applications, running
                                    them where they want with a flexibly scalable experience. Apache Ignite is the
                                    perfect complement to this.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/San-Francisco-Kubernetes-Meetup/events/247330448/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/San-Francisco-Kubernetes-Meetup/events/247330448/"
                                         data-a2a-title="Deploy like a Boss: Using Kubernetes and Apache Ignite! - Dani Traphagen">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="getting-started-apacher-ignitetm-distributed-database">
                                <h3>Getting Started with Apache® Ignite<sup>®</sup>
                                    as a Distributed Database
                                    <a href="/events.html#getting-started-apacher-ignitetm-distributed-database"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Valentin Kulichenko</div>
                                <div class="event-date">Febuary 14, 2018</div>
                                <p>
                                    Apache Ignite native persistence is a distributed ACID and SQL-compliant store that
                                    turns Apache Ignite into a full-fledged distributed SQL database.
                                    In this webinar, Valentin Kulichenko will:
                                <ul class="page-list">
                                    <li>Explain what native persistence is, and how it works</li>
                                    <li>Show step-by-step how to set up Apache Ignite with native persistence</li>
                                    <li>Explain the best practices for configuration and tuning</li>
                                </ul>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/getting-started-apacher-ignitetm-distributed-database"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/getting-started-apacher-ignitetm-distributed-database"
                                         data-a2a-title="Getting Started with Apache® Ignite® as a Distributed Database">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Sydney-Cassandra-Users-events-246922765">
                                <h3>Ignite your Cassandra Love Story: Caching
                                    Cassandra with Apache Ignite
                                    <a href="/events.html#Sydney-Cassandra-Users-events-246922765"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Sydney Cassandra Users Meetup, Speaker - Rachel Pedreschi</div>
                                <div class="event-date">Febuary 13, 2018</div>
                                <p>
                                    In this session you will learn how Apache Ignite can turbocharge your Cassandra
                                    cluster without sacrificing availability guarantees.
                                    In this talk we’ll cover:
                                <ul class="page-list">
                                    <li>An overview of the Apache Ignite architecture</li>
                                    <li>How to deploy Apache Ignite in minutes on top of Cassandra</li>
                                    <li>How companies use this powerful combination to handle extreme OLTP workloads
                                    </li>
                                </ul>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Sydney-Cassandra-Users/events/246922765/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Sydney-Cassandra-Users/events/246922765/"
                                         data-a2a-title="Ignite your Cassandra Love Story: Caching Cassandra with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="boston-java-events-246725780">
                                <h3>Java and In-Memory Computing: Apache Ignite
                                    <a href="/events.html#boston-java-events-246725780" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">The Boston Java Meetup Group, Speaker - Fotios Filacouris</div>
                                <div class="event-date">Febuary 13, 2018</div>
                                <p>
                                    In his talk, Akmal will introduce the many components of the open-source Apache
                                    Ignite.
                                    Meetup members, as Java professionals, will learn how to solve some of the most
                                    demanding scalability and performance challenges. He’ll also cover a few typical use
                                    cases
                                    and work through some code examples. Attendees would leave ready to fire up their
                                    own database deployments!

                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/boston-java/events/246725780/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/boston-java/events/246725780/"
                                         data-a2a-title="Java and In-Memory Computing: Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="mysqlbos-events-246021720">
                                <h3>Turbocharge your MySQL queries in-memory with
                                    Apache Ignite
                                    <a href="/events.html#mysqlbos-events-246021720" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">The Boston MySQL Meetup Group, Speaker - Fotios Filacouris</div>
                                <div class="event-date">Febuary 12, 2018</div>
                                <p>
                                    Apache Ignite is a unique data management platform that is built on top of a
                                    distributed key-value storage
                                    and provides full-fledged MySQL support.Attendees will learn how Apache Ignite
                                    handles auto-loading of a
                                    MySQL schema and data from PostgreSQL, supports MySQL indexes, supports compound
                                    indexes, and various
                                    forms of MySQL queries including distributed MySQL joins.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/mysqlbos/events/246021720/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/mysqlbos/events/246021720/"
                                         data-a2a-title="Turbocharge your MySQL queries in-memory with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="mysqlbos-events-246021720">
                                <h3>Turbocharge your MySQL queries in-memory with
                                    Apache Ignite
                                    <a href="/events.html#mysqlbos-events-246021720" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">The Boston MySQL Meetup Group, Speaker - Fotios Filacouris</div>
                                <div class="event-date">Febuary 12, 2018</div>
                                <p>
                                    Apache Ignite is a unique data management platform that is built on top of a
                                    distributed key-value storage
                                    and provides full-fledged MySQL support.Attendees will learn how Apache Ignite
                                    handles auto-loading of a
                                    MySQL schema and data from PostgreSQL, supports MySQL indexes, supports compound
                                    indexes, and various
                                    forms of MySQL queries including distributed MySQL joins.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/mysqlbos/events/246021720/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/mysqlbos/events/246021720/"
                                         data-a2a-title="Turbocharge your MySQL queries in-memory with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="London-In-Memory-Computing-Meetup-events-246875000">
                                <h3>Building consistent and highly available
                                    distributed systems with Apache Ignite and GridGain
                                    <a href="/events.html#London-In-Memory-Computing-Meetup-events-246875000"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">London In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">Febuary 07, 2018</div>
                                <p>
                                    It is well known that there is a tradeoff between data consistency and high
                                    availability.
                                    However, there are many applications that require very strong consistency
                                    guarantees.
                                    Making such applications highly available can be a significant challenge. Akmal will
                                    explain how to overcome these challenges.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/London-In-Memory-Computing-Meetup/events/246875000/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/London-In-Memory-Computing-Meetup/events/246875000/"
                                         data-a2a-title="Building consistent and highly available distributed systems with Apache Ignite and GridGain">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conferences</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-ignite-service-grid-foundation-of-your-microservices-based-solution">
                                <h3>Apache Ignite Service Grid: Foundation of Your
                                    Microservices-Based Solution
                                    <a href="/events.html#apache-ignite-service-grid-foundation-of-your-microservices-based-solution"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">DeveloperWeek 2018, Speaker - Denis Magda</div>
                                <div class="event-date">Febuary 07, 2018</div>
                                <p>
                                    During this session, Denis will provide a step-by-step guide on how to build a
                                    fault-tolerant and scalable microservice-based solution using Apache Ignite's
                                    Service Grid and other components to resolve these aforementioned issues.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://developerweeksfbayarea2018.sched.com/event/D6C7/apache-ignite-service-grid-foundation-of-your-microservices-based-solution"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://developerweeksfbayarea2018.sched.com/event/D6C7/apache-ignite-service-grid-foundation-of-your-microservices-based-solution"
                                         data-a2a-title="Apache Ignite Service Grid: Foundation of Your Microservices-Based Solution">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="techiteasy-events-245530302">
                                <h3>Meet Apache Ignite In-Memory Computing Platform
                                    <a href="/events.html#techiteasy-events-245530302" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Tech it Easy- Tokyo, Speaker - Roman Shtykh</div>
                                <div class="event-date">Febuary 01, 2018</div>
                                <p>
                                    In this talk you will learn about Apache Ignite memory-centric distributed database,
                                    caching,
                                    and processing platform. Roman will explain how one can do distributed computing,
                                    and use SQL
                                    with horizontal scalability and high availability of NoSQL systems with Apache
                                    Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/techiteasy/events/245530302/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/techiteasy/events/245530302/"
                                         data-a2a-title="Meet Apache Ignite In-Memory Computing Platform">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Los-Angeles-Kubernetes-Meetup-244966244">
                                <h3>Deploy like a Boss: Using Kubernetes and Apache
                                    Ignite!
                                    <a href="/events.html#Los-Angeles-Kubernetes-Meetup-244966244"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Los Angeles Kubernetes Meetup, Dani Traphagen</div>
                                <div class="event-date">January 31, 2018</div>
                                <p>
                                    If downtime is not an option for you and your application needs to be extremely
                                    low-latency;
                                    what cocktail of open source projects can facilitate this best? Both Kubernetes and
                                    Apache Ignite
                                    are Open Source Frameworks that work exceedingly well together to achieve said
                                    goals.
                                    By working with containerization Kubernetes helps enable developers to work
                                    seamlessly with
                                    new versions of their applications, running them where they want with a flexibly
                                    scalable experience. Apache Ignite is the perfect complement to this.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Los-Angeles-Kubernetes-Meetup/events/244966244/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Los-Angeles-Kubernetes-Meetup/events/244966244/"
                                         data-a2a-title="Deploy like a Boss: Using Kubernetes and Apache Ignite!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="webinar-ignite-fire-in-your-sql-app">
                                <h3>Ignite The Fire In Your SQL App
                                    <a href="/events.html#webinar-ignite-fire-in-your-sql-app"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Akmal Chaudhri</div>
                                <div class="event-date">January 31, 2018</div>
                                <p>
                                    Apache Ignite is (an in-memory computing platform OR an in-memory distributed data
                                    store and compute grid) with full-fledged SQL,
                                    key-value and processing APIs. Many companies have added it as a cache in-between
                                    existing SQL databases
                                    and their applications to speed up response times and scale. In other projects
                                    they've used it as its own SQL database.
                                    This session will dive into some of the best practices for both types of projects
                                    using Apache Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/ignite-fire-in-your-sql-app"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/ignite-fire-in-your-sql-app"
                                         data-a2a-title="Ignite The Fire In Your SQL App">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="BigDataApps-244915185">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT
                                    <a href="/events.html#BigDataApps-244915185" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Data Application Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">January 31, 2018</div>
                                <p>
                                    This session will show attendees how to build a Fast Data solution that will
                                    receive endless streams from the IoT side and will be capable of processing the
                                    streams
                                    in real-time using Apache Ignite's cluster resources.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/BigDataApps/events/244915185/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/BigDataApps/events/244915185/"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-246047934">
                                <h3>Building consistent and highly available
                                    distributed systems with Apache Ignite and GridGain
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-246047934"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">January 25, 2018</div>
                                <p>
                                    It is well known that there is a tradeoff between data consistency and high
                                    availability.
                                    However, there are many applications that require very strong consistency
                                    guarantees,
                                    and making such applications highly available can be a significant challenge. In
                                    this session,
                                    attendees will be given an overview of Apache Ignite and GridGain capabilities
                                    that allow the delivery of high availability, while not breaking data consistency.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/246047934/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/246047934/"
                                         data-a2a-title="Building consistent and highly available distributed systems with Apache Ignite and GridGain">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="scale-out-and-conquer-architectural-decisions-behind-distributed-in-memory">
                                <h3>Scale Out and Conquer: Architectural Decisions
                                    Behind Distributed In-Memory Systems
                                    <a href="/events.html#scale-out-and-conquer-architectural-decisions-behind-distributed-in-memory"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">January 17, 2018</div>
                                <p>
                                    Distributed platforms like Apache® Ignite® rely on a horizontal “scale-out”
                                    architecture where you dynamically
                                    add more machines to achieve near-linear, elastic scalability. But how does it
                                    really work? What are its limits?
                                    And how can you optimize performance and scalability?
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/scale-out-and-conquer-architectural-decisions-behind-distributed-in-memory"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/scale-out-and-conquer-architectural-decisions-behind-distributed-in-memory"
                                         data-a2a-title="Scale Out and Conquer: Architectural Decisions Behind Distributed In-Memory Systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>

                </div>
                <div class="tab-pane" id="events-2017">
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="niketechtalksdec2017">
                                <h3>Getting Started With Apache Ignite
                                    <a href="/events.html#niketechtalksdec2017" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Nike Teck Talks, Speaker - Dani Traphagen</div>
                                <div class="event-date">December 14, 2017</div>
                                <p>
                                    Apache Ignite provides a caching layer between applications and the system of
                                    record,
                                    but additionally, it provides a peer to peer architecture for transacting data,
                                    performing computations, microservices, streaming, and much more.
                                    During this session, we will do a deep-dive into the Apache Ignite architecture and
                                    discuss
                                    how it is being deployed around the globe. You will walk away knowing why and when
                                    to use Apache Ignite in your next data intensive application!
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://niketechtalksdec2017.splashthat.com/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://niketechtalksdec2017.splashthat.com/"
                                         data-a2a-title="Getting Started With Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-events-245196260">
                                <h3>Want extreme performance at scale? Do distributed
                                    the RIGHT way!
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-events-245196260"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area In-Memory Computing Meetup, Speaker - Valentin Kulichenko</div>
                                <div class="event-date">December 13, 2017</div>
                                <p>
                                    During this meetup, Valentin Kulichenko will talk about challenges and
                                    pitfalls one may face when architecting and developing a distributed system.
                                    Valentin will show how to take advantage
                                    of the affinity collocation concept that is one of the most powerful and usually
                                    undervalued technique provided by distributed systems.
                                    He will take Apache Ignite as a database for his experiments covering these moments
                                    in particular:

                                    What is data affinity and why is it important for distributed systems?
                                    What is affinity colocation and how does it help to improve performance?
                                    How does affinity colocation affects execution of distributed computations and
                                    distributed SQL queries? And more...
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/245196260/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/245196260/"
                                         data-a2a-title="Want extreme performance at scale? Do distributed the RIGHT way!">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="in-memory-computing-essentials-architects-and-developers-part-2">
                                <h3>In-Memory Computing Essentials for Architects and
                                    Developers: Part 2
                                    <a href="/events.html#in-memory-computing-essentials-architects-and-developers-part-2"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">December 13, 2017</div>
                                <p>
                                    In this webinar, Denis Magda will introduce the fundamental capabilities and
                                    components of a distributed,
                                    in-memory computing platform. With increasingly advanced coding examples, you’ll
                                    learn about:
                                </p>
                                <ul class="page-list">
                                    <li>Collocated processing</li>
                                    <li>Collocated processing for distributed computations</li>
                                    <li>Collocated processing for SQL (distributed joins and more)</li>
                                    <li>Distributed persistence usage</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/in-memory-computing-essentials-architects-and-developers-part-2"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/in-memory-computing-essentials-architects-and-developers-part-2"
                                         data-a2a-title="In-Memory Computing Essentials for Architects and Developers: Part 2">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Moscow-Apache-Ignite-Meetup-events-245332076">
                                <h3>Apache Ignite Use Cases for Banks and Telecoms
                                    <a href="/events.html#Moscow-Apache-Ignite-Meetup-events-245332076"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Moscow Apache Ignite Meetup, Speakers- Mikhail Kuznetzov, Mikhail Khasin, Victor Khoodyakov</div>
                                <div class="event-date">December 12, 2017</div>
                                <p>
                                    Welcome to the inaugural gathering of the Moscow Apache® Ignite® Meetup! Our guest
                                    experts - Mikhail Kuznetzov, Mikhail Khasin, and Victor Khoodyakov will talk about
                                    their experiences implementing solutions for a large bank as well as a telecom
                                    company, based on Apache Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Moscow-Apache-Ignite-Meetup/events/245332076/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Moscow-Apache-Ignite-Meetup/events/245332076/"
                                         data-a2a-title="Apache Ignite Use Cases for Banks and Telecoms">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="kccncna17-event-D3vE">
                                <h3>Distributed Database DevOps Dilemmas? Kubernetes
                                    to the Rescue
                                    <a href="/events.html#kccncna17-event-D3vE" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">KubeCon + CloudNativeCon North America 2017, Speaker - Denis Magda</div>
                                <div class="event-date">December 08, 2017</div>
                                <p>
                                    Distributed databases can make so many things easier for a developer... but not
                                    always for DevOps.
                                    OK, almost never for DevOps. Kubernetes has come to the rescue with an easy
                                    application orchestration!
                                    In this talk you will learn how Kubernetes can orchestrate distributed database like
                                    Apache Ignite, in particular:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster Assembling - database nodes auto-discovery in Kubernetes.</li>
                                    <li>Database Resilience - automated horizontal scalability.</li>
                                    <li>Database Availability - what’s the role of Kubernetes and the database.</li>
                                    <li>Utilizing both RAM and disk - set up Apache Ignite in a way to get in-memory
                                        performance with durability of disk.
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://kccncna17.sched.com/event/D3vE" target="_blank" rel="noopener"
                                           aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://kccncna17.sched.com/event/D3vE"
                                         data-a2a-title="Distributed Database DevOps Dilemmas? Kubernetes to the Rescue">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="austin-data-meetup-events-245472777">
                                <h3>Apache Ignite: the in-memory hammer in your data
                                    science toolkit
                                    <a href="/events.html#austin-data-meetup-events-245472777"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Austin Data Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">December 07, 2017</div>
                                <p>
                                    Machine learning is a method of data analysis that automates the building of
                                    analytical models.
                                    By using algorithms that iteratively learn from data, computers are able to find
                                    hidden insights
                                    without the help of explicit programming. These insights bring tremendous benefits
                                    into many different domains.
                                    For business users, in particular, these insights help organizations improve
                                    customer experience,
                                    become more competitive, and respond much faster to opportunities or threats. The
                                    availability of very
                                    powerful in-memory computing platforms, such as the open-source Apache Ignite
                                    (https://ignite.apache.org/),
                                    means that more organizations can benefit from machine learning today.

                                    In this presentation, Denis will look at some of the main components of Apache
                                    Ignite, such as a
                                    distributed database, distributed computations, and machine learning toolkit.
                                    Through examples,
                                    attendees will learn how Apache Ignite can be used for data analysis.

                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/austindata/events/245472777/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/austindata/events/245472777/"
                                         data-a2a-title="Apache Ignite: the in-memory hammer in your data science toolkit">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="meeting-challenges-fast-data-in-healthcare-in-memory-technologies">
                                <h3>Meeting the Challenges of Fast Data in Healthcare
                                    with In-Memory Technologies
                                    <a href="/events.html#meeting-challenges-fast-data-in-healthcare-in-memory-technologies"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Akmal Chaudhri</div>
                                <div class="event-date">December 06, 2017</div>
                                <p>
                                    In this webinar, Akmal Chaudhri will discuss the requirements for fast data in
                                    healthcare and specifically
                                    how Apache Ignite, a distributed in-memory computing platform, is used by drug
                                    discovery companies to identify potential therapies for complex diseases.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/meeting-challenges-fast-data-in-healthcare-in-memory-technologies"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/meeting-challenges-fast-data-in-healthcare-in-memory-technologies"
                                         data-a2a-title="Meeting the Challenges of Fast Data in Healthcare with In-Memory Technologies">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="implementing-durable-memory-centric-architectures-in-large-financial">
                                <h3>Implementing Durable Memory-Centric Architectures
                                    in Large Financial <br/>Institutions
                                    <a href="/events.html#implementing-durable-memory-centric-architectures-in-large-financial"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Dmitriy Setrakyan</div>
                                <div class="event-date">November 29, 2017</div>
                                <p>
                                    In this 1-hour webinar, GridGain Systems Chief Product Officer Dmitriy Setrakyan
                                    will present
                                    how distributed memory-centric architectures can be applied to various financial
                                    systems.
                                    Dmitriy will first go over some Apache® Ignite® features important for financial use
                                    cases, including ACID compliance,
                                    SQL compatibility, persistence, replication, security, fault tolerance and more. He
                                    will next analyze one of the largest
                                    Apache Ignite deployments in the world at Sberbank, a Russian and eastern European
                                    bank. He’ll walk through its overall
                                    architecture and demonstrate the 5 major challenges that Sberbank ran into when
                                    integrating distributed,
                                    horizontally scalable memory-centric database at their bank.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/implementing-durable-memory-centric-architectures-in-large-financial"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/implementing-durable-memory-centric-architectures-in-large-financial"
                                         data-a2a-title="Implementing Durable Memory-Centric Architectures in Large Financial Institutions">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="in-memory-computing-essentials-architects-and-developers-part-1">
                                <h3>In-Memory Computing Essentials for Architects and
                                    Developers: Part 1
                                    <a href="/events.html#in-memory-computing-essentials-architects-and-developers-part-1"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">November 21, 2017</div>
                                <p>
                                    In this webinar, Denis Magda will introduce the fundamental capabilities and
                                    components of an in-memory computing platform, and
                                    demonstrate how to apply the theory in practice. With increasingly advanced coding
                                    examples, you’ll learn about:
                                </p>
                                <ul class="page-list">
                                    <li>Cluster configuration and deployment</li>
                                    <li>Data processing with key-value APIs</li>
                                    <li>Data processing with SQL</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/in-memory-computing-essentials-architects-and-developers-part-1"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/in-memory-computing-essentials-architects-and-developers-part-1"
                                         data-a2a-title="In-Memory Computing Essentials for Architects and Developers: Part 1">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="datariders-events-243704486">
                                <h3>Hands-on Workshop: In-Memory Computing Essentials
                                    for Java Developers
                                    <a href="/events.html#datariders-events-243704486" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Data and Cloud Meetup, Speaker - Denis Magda</div>
                                <div class="event-date">November 16, 2017</div>
                                <p>
                                    Attendees will be introduced to the fundamental capabilities of in-memory computing
                                    platforms that boost
                                    high-load applications and services, and bring existing IT architecture to the next
                                    level by storing
                                    and processing a massive amount of data both in RAM and, optionally, on
                                    disk.
                                    The capabilities and benefits of such platforms will be demonstrated with the usage
                                    of Apache Ignite,
                                    which is the in-memory computing platform that is durable, strongly consistent, and
                                    highly available with powerful SQL, key-value and processing APIs.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conferences</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="devoxx-Apache_Spark_and_Apache_Ignite:_Where_Fast_Data_Meets_the_IoT">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT
                                    <a href="/events.html#devoxx-Apache_Spark_and_Apache_Ignite:_Where_Fast_Data_Meets_the_IoT"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Devoxx Morocco, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">November 16, 2017</div>
                                <p>
                                    It is not enough to build a mesh of sensors or embedded devices to obtain more
                                    insights about the surrounding environment and
                                    optimize your production systems. Usually, your IoT solution needs to be capable of
                                    transferring enormous amounts of data to
                                    storage or the cloud where the data have to be processed further. Quite often, the
                                    processing of the endless streams of data has
                                    to be done in real-time so that you can react on the IoT subsystem's state
                                    accordingly.
                                    This session will show attendees how to build a Fast Data solution that will receive
                                    endless streams from the
                                    IoT side and will be capable of processing the streams in real-time using Apache
                                    Ignite's cluster resources. In particular, attendees will learn
                                    about data streaming to an Apache Ignite cluster from embedded devices and real-time
                                    data processing with Apache Spark.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conferences</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section
                                    id="devoxx-How_to_build_an_event-driven_dynamically_re-configurable_micro-services_platform">
                                <h3>How to build an event-driven, dynamically
                                    re-configurable micro-services platform
                                    <a href="/events.html#How_to_build_an_event-driven_dynamically_re-configurable_micro-services_platform"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Devoxx Belgium, Speaker - Sven Beauprez</div>
                                <div class="event-date">November 10, 2017</div>
                                <p>
                                    Why only look at Apache Kafka to build event-driven microservices when there is also
                                    Apache Ignite, which brings far more to the table?
                                </p>
                                <p>
                                    In this presentation, Sven will show you how to combine Apache Ignite with Docker to
                                    not only build an event-driven microservice platform but also to make this
                                    dynamically re-configurable without any downtime at all.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://cfp.devoxx.be/2017/talk/YPK-6082/How_to_build_an_event-driven_dynamically_re-configurable_micro-services_platform"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://cfp.devoxx.be/2017/talk/YPK-6082/How_to_build_an_event-driven_dynamically_re-configurable_micro-services_platform"
                                         data-a2a-title="How to build an event-driven, dynamically re-configurable micro-services platform">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conferences</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="odsc-apache-ignite-memory-hammer-data-science-toolkit-2">
                                <h3>Apache Ignite: The In-Memory Hammer In Your Data
                                    Science Toolkit&nbsp;
                                    <a href="/events.html#odsc-apache-ignite-memory-hammer-data-science-toolkit-2"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">ODSC San Francisco, Speaker - Denis Magda</div>
                                <div class="event-date">November 3, 2017</div>
                                <p>
                                    Machine learning is a method of data analysis that automates the building of
                                    analytical models.
                                    By using algorithms that iteratively learn from data, computers are able to find
                                    hidden insights without
                                    the help of explicit programming. These insights bring tremendous benefits into many
                                    different domains.
                                    For business users, in particular, these insights help organizations improve
                                    customer experience, become more competitive,
                                    and respond much faster to opportunities or threats. The availability of very
                                    powerful in-memory computing platforms,
                                    such as Apache Ignite, means that more organizations can benefit from machine
                                    learning today.
                                    In this presentation Denis will look at some of the main components of Apache
                                    Ignite, such as the Compute Grid,
                                    Data Grid and the Machine Learning Grid. Through examples, attendees will learn how
                                    Apache Ignite can be used for data analysis.
                                </p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="sydney-ibm-bluemix-meetup-group">
                                <h3>Fast Data meets Big Data in the IoT- Using Apache
                                    Ignite&nbsp;
                                    <a href="/events.html#sydney-ibm-bluemix-meetup-group" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Sydney IBM Bluemix Meetup Group, Speaker - Rachel Pedreschi</div>
                                <div class="event-date">November 2, 2017</div>
                                <p>
                                    So, you've built yourself a killer IoT application. You have connected all the
                                    things and they are all happily sending
                                    over their packets of data faster than you can say "Big Blue". Now what? How do you
                                    architect a server architecture
                                    that can support all the data flowing in and also be able to grow for the
                                    future?
                                    In this talk, Rachel will cover some of the architectural decisions you need to
                                    consider when choosing a data platform and discuss
                                    how Apache Ignite can meet those requirements. Rachel will also cover other design
                                    options like NoSQL and Spark and how to deploy in the IBM cloud.
                                </p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/company/news/events/sydney-ibm-bluemix-meetup-group"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/company/news/events/sydney-ibm-bluemix-meetup-group"
                                         data-a2a-title="Fast Data meets Big Data in the IoT- Using Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-243868747">
                                <h3>Achieving High Availability and Consistency With
                                    Distributed Systems&nbsp;
                                    <a href="/events.html#Bay-Area-In-Memory-Computing-243868747"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Bay Area Apache® Ignite® Meetup, Speakers - Denis Magda, Valetin Kulichenko</div>
                                <div class="event-date">November 2, 2017</div>
                                <p>
                                    Tech talk No. 1 - Val kicks off the learning with a session titled, "Building
                                    Consistent and Highly Available Distributed Systems with Apache Ignite and
                                    GridGain."
                                </p>

                                <p>
                                    Tech talk No. 2 - Denis continues the knowledge sharing with a session titled,
                                    "Harnessing the 21st Century with a Distributed Memory-Centric SQL."
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/243868747/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/243868747/"
                                         data-a2a-title="Achieving High Availability and Consistency With Distributed Systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Dublin-Spark-Meetup-events-243875410">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT&nbsp;
                                    <a href="/events.html#Dublin-Spark-Meetup-events-243875410"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Dublin Spark Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 26, 2017</div>
                                <p>
                                    In this session, Akmal will show attendees how to build a Fast Data solution that
                                    will receive endless streams from the
                                    IoT side and will be capable of processing the streams in real-time using Apache
                                    Ignite's cluster resources. In particular,
                                    attendees will learn about data streaming to an Apache Ignite cluster from embedded
                                    devices and real-time data processing with Apache Spark.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Dublin-Spark-Meetup/events/243875410/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Dublin-Spark-Meetup/events/243875410/"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="spark-summit-eu-2017-how-to-share-state">
                                <h3>How to Share State Across Multiple Spark Jobs
                                    using Apache® Ignite®&nbsp;
                                    <a href="/events.html#spark-summit-eu-2017-how-to-share-state"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Spark Summit Europe 2017, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 25, 2017</div>
                                <p>
                                    Attend this session to learn how to easily share state in-memory across multiple
                                    Spark jobs, either
                                    within the same application or between different Spark applications using an
                                    implementation of the Spark RDD
                                    abstraction provided in Apache Ignite. During the talk, attendees will learn in
                                    detail how IgniteRDD –
                                    an implementation of native Spark RDD and DataFrame APIs – shares the state of the
                                    RDD across other Spark jobs,
                                    applications and workers. Examples will show how IgniteRDD, with its advanced
                                    in-memory indexing capabilities,
                                    allows execution of SQL queries many times faster than native Spark RDDs or Data
                                    Frames.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://spark-summit.org/eu-2017/events/how-to-share-state-across-multiple-apache-spark-jobs-using-apache-ignite/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://spark-summit.org/eu-2017/events/how-to-share-state-across-multiple-apache-spark-jobs-using-apache-ignite/"
                                         data-a2a-title="How to Share State Across Multiple Spark Jobs using Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="imc-summit-2017">
                                <h3>The In-Memory Computing Summit 2017 – North
                                    America&nbsp;
                                    <a href="/events.html#imc-summit-2017" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">South San Francisco Conference Center</div>
                                <div class="event-date">October 24-25, 2017</div>
                                <p>
                                    There will be several highly technical talks about Apache Ignite at the 3rd-annual
                                    In-Memory Computing Summit
                                    Oct. 24-25 at the South San Francisco Conference Center. The IMC Summit is the only
                                    industry-wide event that focuses
                                    on the full range of in-memory computing-related technologies and solutions held in
                                    North America.
                                </p>
                                <p>Check out the agenda here: <a
                                        href="https://www.imcsummit.org/us/agenda/schedule/day-1">https://www.imcsummit.org/us/agenda/schedule/day-1</a>
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.imcsummit.org/us/" target="_blank" rel="noopener"
                                           aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.imcsummit.org/us/"
                                         data-a2a-title="The In-Memory Computing Summit 2017 – North America">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Eurostaff-Big-Data-243650721">
                                <h3>Better Machine Learning with Apache® Ignite®&nbsp;
                                    <a href="/events.html#Eurostaff-Big-Data-243650721" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Eurostaff Big Data Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 19, 2017</div>
                                <p>
                                    The availability of very powerful in-memory computing platforms, such as Apache®
                                    Ignite®, means that more organizations can benefit
                                    from machine learning today. In this presentation, Akmal will discuss how the
                                    Compute Grid, Data Grid, and Machine Learning Grid
                                    components of Apache Ignite work together to enable your business to start reaping
                                    the benefits of machine learning.
                                </p>
                                <p>
                                    Through examples, attendees will learn how Apache Ignite can be used for data
                                    analysis and be the in-memory hammer in your machine learning toolkit.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="sv-jug-events-242946746">
                                <h3>Catch an intro to Apache Ignite and skyrocket
                                    Java applications&nbsp;
                                    <a href="/events.html#sv-jug-events-242946746" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Java User Group Meetup, Speaker - Valentin Kulichenko</div>
                                <div class="event-date">October 18, 2017</div>
                                <p>
                                    Join Valentin (Val) Kulichenko as he introduces the many components of the
                                    open-source Apache Ignite.
                                    You, as a Java professional, will learn how to solve some of the most demanding
                                    scalability and performance challenges.
                                    He will also cover a few typical use cases and work through some code examples.
                                    Hope to see you there so you can leave ready to fire up your database deployments!
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacher-sparktm-and-apacher-ignitetm-where-fast-data-meets-iot">
                                <h3>Apache® Spark™ and Apache® Ignite®: Where Fast
                                    Data Meets the IoT&nbsp;
                                    <a href="/events.html#apacher-sparktm-and-apacher-ignitetm-where-fast-data-meets-iot"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">October 18, 2017</div>
                                <p>
                                    During this 1-hour webinar, Denis Magda will discuss a Fast Data solution that can
                                    receive endless streams
                                    from the Internet of Things (IoT) and be capable of processing the streams in
                                    real-time using Apache Ignite’s cluster resources.
                                    You will also learn about data streaming to an Apache Ignite® cluster from embedded
                                    devices and real-time data processing with Apache® Spark™.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/apacher-sparktm-and-apacher-ignitetm-where-fast-data-meets-iot"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/apacher-sparktm-and-apacher-ignitetm-where-fast-data-meets-iot"
                                         data-a2a-title="Apache® Spark™ and Apache® Ignite®: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="odsc-europe-2017-apache-ignite-memory-hammer-data-science-toolkit">
                                <h3>Apache Ignite®: The In-Memory Hammer in Your Data
                                    Science Toolkit&nbsp;
                                    <a href="/events.html#odsc-europe-2017-apache-ignite-memory-hammer-data-science-toolkit"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">ODSC Europe 2017, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 14, 2017</div>
                                <p>
                                    In this presentation, Akmal will show some of the main components of Apache Ignite®,
                                    such as the Compute Grid, Data Grid and the Machine Learning Grid. Through examples,
                                    attendees will learn how Apache Ignite can be used for data analysis.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="london-bigdataweek-powering-banks-financial-institutions-distributed-systems">
                                <h3>Powering up banks and financial institutions with
                                    distributed systems&nbsp;
                                    <a href="/events.html#london-bigdataweek-powering-banks-financial-institutions-distributed-systems"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Data Week London 2017, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 13, 2017</div>
                                <p>
                                    In this presentation, attendees will learn about important Apache Ignite features
                                    for financial applications,
                                    such as ACID compliance, SQL compatibility, persistence, replication, security,
                                    fault tolerance and more.
                                </p>
                                <p>
                                    A customer case study will also be presented. We will analyze one of the largest
                                    Apache Ignite deployments in the world at Sberbank,
                                    a Russian and Eastern European Bank, by walking through the overall architecture and
                                    demonstrating various implementation and deployment challenges.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="http://london.bigdataweek.com/session/powering-banks-financial-institutions-distributed-systems/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="http://london.bigdataweek.com/session/powering-banks-financial-institutions-distributed-systems/"
                                         data-a2a-title="Powering up banks and financial institutions with distributed systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="dataplatform-jp">
                                <h3>Real-time Data Analysis with Apache Ignite
                                    High-Performance In-memory Platform&nbsp;
                                    <a href="/events.html#dataplatform-jp" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Data Platform Conference Tokyo 2017, Speaker - Roman Shtykh</div>
                                <div class="event-date">October 10, 2017</div>
                                <p>
                                    With the advances in IoT technology, the volume and the diversity of data to be
                                    analyzed has enormously increased,
                                    and processing it with traditional disk-based technology has become more
                                    challenging. Therefore the number of data
                                    analysis solutions using in-memory technology, such as Apache Ignite
                                    high-performance in-memory platform, has increased.
                                </p>
                                <p>
                                    In this session, Roman will introduce Apache Ignite, and explain how it can be used
                                    for real-time analysis of large volumes of IoT data.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="http://dataplatform.jp/" target="_blank" rel="noopener"
                                           aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="http://dataplatform.jp/"
                                         data-a2a-title="Real-time Data Analysis with Apache Ignite High-Performance In-memory Platform">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="webinar-postgres-apacher-ignitetm">
                                <h3>Postgres with Apache® Ignite®: Faster
                                    Transactions and Analytics&nbsp;
                                    <a href="/events.html#webinar-postgres-apacher-ignitetm"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Fotios Filacouris</div>
                                <div class="event-date">October 4, 2017</div>
                                <p>
                                    Join Fotios Filacouris as he discusses how you can supplement PostgreSQL with Apache
                                    Ignite. You'll learn:
                                </p>
                                <ul class="page-list">
                                    <li>The strategic benefits of using Apache Ignite instead of Memcache, Redis®,
                                        GigaSpaces®, or Oracle Coherence™
                                    </li>
                                    <li>How to overcome the limitations of the PostgreSQL architecture for big data
                                        analytics by leveraging the parallel distributed computing and ANSI SQL-99
                                        capabilities of Apache Ignite
                                    </li>
                                    <li>How to use Apache Ignite as an advanced high-performance cache platform for hot
                                        data
                                    </li>
                                </ul>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/postgres-apacher-ignitetm-faster-transactions-and-analytics"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/postgres-apacher-ignitetm-faster-transactions-and-analytics"
                                         data-a2a-title="Postgres with Apache® Ignite®: Faster Transactions and Analytics">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Paris-Spark-Meetup-243673170">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT&nbsp;
                                    <a href="/events.html#Paris-Spark-Meetup-243673170" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Paris Spark Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 3, 2017</div>
                                <p>
                                    In this session, Akmal will show attendees how to build a Fast Data solution that
                                    will receive endless streams from the
                                    IoT side and will be capable of processing the streams in real-time using Apache
                                    Ignite's cluster resources. In particular,
                                    attendees will learn about data streaming to an Apache Ignite cluster from embedded
                                    devices and real-time data processing with Apache Spark.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Paris-Spark-Meetup/events/243673170/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Paris-Spark-Meetup/events/243673170/"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Big-Data-Developers-in-Paris-243327509">
                                <h3>Giving a boost to the Hadoop and Spark ecosystems
                                    with in-memory technologies&nbsp;
                                    <a href="/events.html#Big-Data-Developers-in-Paris-243327509"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Big Data & Data Science, Paris, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">October 2, 2017</div>
                                <p>
                                    In this talk, Akmal present how to speed up existing Hadoop and Spark deployments by
                                    making Apache Ignite responsible for RAM utilization.
                                    No code modifications, no new architecture from scratch! Specifically, this
                                    presentation will cover :
                                    Hadoop Accelerator, HDFS compliant In-Memory File System, MapReduce Accelerator,
                                    Spark Shared RDDs, Spark SQL boost.

                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="New-York-Kubernetes-Meetup-242597746">
                                <h3>Stateful Apps in Production and Distributed
                                    Database Orchestration&nbsp;
                                    <a href="/events.html#New-York-Kubernetes-Meetup-242597746"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">New York Kubernetes Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">September 27, 2017</div>
                                <p>
                                    This talk will focus on a DevOps perspective on the orchestration of distributed
                                    databases, Apache Ignite.
                                    Denis will speak on node auto-discovery, automated horizontal scalability,
                                    availability and utilization of RAM and disk with Apache Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/New-York-Kubernetes-Meetup/events/242597746/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/New-York-Kubernetes-Meetup/events/242597746/"
                                         data-a2a-title="Stateful Apps in Production and Distributed Database Orchestration">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="better-machine-learning-apacher-ignitetm">
                                <h3>Better Machine Learning with Apache® Ignite®&nbsp;
                                    <a href="/events.html#better-machine-learning-apacher-ignitetm"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Akmal Chaudhri</div>
                                <div class="event-date">September 27, 2017</div>
                                <p>
                                    In this presentation, Akmal will discuss how the Compute Grid, Data Grid, and
                                    Machine Learning Grid components of Apache Ignite work together
                                    to enable your business to start reaping the benefits of machine learning. Through
                                    examples, attendees will learn how Apache Ignite
                                    can be used for data analysis and be the in-memory hammer in your machine learning
                                    toolkit.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/better-machine-learning-apacher-ignitetm"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/better-machine-learning-apacher-ignitetm"
                                         data-a2a-title="Better Machine Learning with Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="NYC-In-Memory-Computing-Meetup-243150945">
                                <h3>Powering up banks and financial institutions with
                                    distributed systems&nbsp;
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-243150945"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">NYC In-Memory Computing Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">September 26, 2017</div>
                                <p>
                                    In this talk, Akmal will start with a brief high-level overview of distributed
                                    computing fundamentals and in-memory computing use cases.
                                    Then he'll introduce the open-source Apache Ignite, an in-memory computing platform
                                    that enables high-performance transactions,
                                    real-time streaming, and fast analytics in a single, comprehensive data access and
                                    processing layer.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/243150945/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/NYC-In-Memory-Computing-Meetup/events/243150945/"
                                         data-a2a-title="Powering up banks and financial institutions with distributed systems">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="internet-things-iot-new-york-meetup">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT&nbsp;
                                    <a href="/events.html#NYC-In-Memory-Computing-Meetup-243150945"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Internet of Things (IoT) New York Meetup, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">September 25, 2017</div>
                                <p>
                                    Quite often, the processing of the endless streams of data has to be done in
                                    real-time so that you can react on the IoT subsystem's state accordingly.
                                    In this session, Akmal will show attendees how to build a Fast Data solution that
                                    will receive endless streams from the IoT
                                    side and will be capable of processing the streams in real-time using Apache
                                    Ignite's cluster resources.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/company/news/events/internet-things-iot-new-york-meetup"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/company/news/events/internet-things-iot-new-york-meetup"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Cambridge-NET-User-Group-238837204">
                                <h3>Business Intelligence and Apache Ignite for .NET
                                    Users&nbsp;
                                    <a href="/events.html#Cambridge-NET-User-Group-238837204" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Cambridge .NET User Group, Speaker - Akmal Chaudhri</div>
                                <div class="event-date">September 18, 2017</div>
                                <p>
                                    This presentation will provide a deep dive into .NET features of the top level
                                    Apache projects: Apache Ignite.
                                    Apache Ignite is the memory-centric platform that combines distributed SQL database
                                    and key-value data grid,
                                    that is ACID compliant, horizontally scalable and highly available, and empowered
                                    with compute and machine learning capabilities.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Cambridge-NET-User-Group/events/238837204/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Cambridge-NET-User-Group/events/238837204/"
                                         data-a2a-title="Business Intelligence and Apache Ignite for .NET Users">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="SF-Big-Analytics-242368299">
                                <h3>Apache Ignite: The in-memory hammer in your data
                                    science toolkit&nbsp;
                                    <a href="/events.html#SF-Big-Analytics-242368299" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Mountain View, CA, Speaker - Denis Magda</div>
                                <div class="event-date">September 13, 2017</div>
                                <p>
                                    In this talk, Denis will go through some of the main components of Apache Ignite,
                                    such as the Compute Grid, Data Grid and the Machine Learning Grid.
                                    Through examples, attendees will learn how Apache Ignite can be used for big data
                                    analysis.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/SF-Big-Analytics/events/242368299/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/SF-Big-Analytics/events/242368299/"
                                         data-a2a-title="Apache Ignite: The in-memory hammer in your data science toolkit">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="webinar-5573556767611108099">
                                <h3>Implementing In-Memory Computing for Financial
                                    Services Use Cases with Apache® Ignite®&nbsp;
                                    <a href="/events.html#SF-Big-Analytics-242368299" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">September 12, 2017</div>
                                <p>
                                    In this presentation, Denis will explain features of the Apache Ignite distributed
                                    computing platform that are important for financial use cases, including:
                                </p>
                                <ul class="page-list">
                                    <li>ACID transaction guarantees</li>
                                    <li>Distributed ANSI-99 SQL support</li>
                                    <li>Replication</li>
                                    <li>Security</li>
                                    <li>Fault tolerance</li>
                                    <li>Persistence</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://register.gotowebinar.com/register/5573556767611108099"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://register.gotowebinar.com/register/5573556767611108099"
                                         data-a2a-title="Implementing In-Memory Computing for Financial Services Use Cases with Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="big-data-and-cloud-meetup-santa-clara-242523245">
                                <h3>Apache Spark and Apache Ignite: Where Fast Data
                                    Meets the IoT&nbsp;
                                    <a href="/events.html#big-data-and-cloud-meetup-santa-clara-242523245"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Santa Clara, CA, Speaker - Denis Magda</div>
                                <div class="event-date">September 09, 2017</div>
                                <p>
                                    In his talk, Denis will will show attendees how to build a sast Data solution that
                                    will receive endless streams from
                                    the IoT side and will be capable of processing the streams in real-time using the
                                    cluster resources of Apache Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/datariders/events/242523245/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/datariders/events/242523245/"
                                         data-a2a-title="Apache Spark and Apache Ignite: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="deploy-boss-using-kubernetesr-and-apacher-ignitetm">
                                <h3>Deploy like a Boss: Using Kubernetes® and Apache®
                                    Ignite®&nbsp;
                                    <a href="/events.html#deploy-boss-using-kubernetesr-and-apacher-ignitetm"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Dani Traphagen</div>
                                <div class="event-date">August 23, 2017</div>
                                <p>
                                    If downtime is not an option for you, and your application needs to be extremely
                                    low-latency, Kubernetes® and Apache® Ignite® are open source frameworks that work
                                    exceedingly well together to achieve these goals.
                                </p>
                                <p>
                                    In this webinar, Dani Traphagen will walk through the basics of a Kubernetes and
                                    Apache Ignite deployment, including:
                                </p>
                                <ul class="page-list">
                                    <li>Setting up a Apache Ignite cluster</li>
                                    <li>Using the Kubernetes IP Finder and the Kubernetes Ignite Lookup Service</li>
                                    <li>Sharing the Ignite Cluster Configuration</li>
                                    <li>Deploying your Ignite Pods</li>
                                    <li>Adjusting the Ignite Cluster Size when you need to scale</li>
                                </ul>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="http://info.gridgain.com/r40u0R2G0WUmSWT9S00K030" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="http://info.gridgain.com/r40u0R2G0WUmSWT9S00K030"
                                         data-a2a-title="Deploy like a Boss: Using Kubernetes® and Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="big-community-webinar-2423316315303466241">
                                <h3>Introduction to Apache Ignite, a memory-centric
                                    distributed platform&nbsp;
                                    <a href="/events.html#big-community-webinar-2423316315303466241"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Akmal Chaudhri</div>
                                <div class="event-date">August 16, 2017</div>
                                <p>
                                    Apache Ignite is an open source memory-centric platform that combines a distributed
                                    SQL database with a Key-Value Data Grid that
                                    is ACID-compliant and horizontally scalable. It enables high-performance
                                    transactions, real-time streaming, and fast analytics
                                    in a single, comprehensive data access and processing layer.
                                </p>
                                <p>
                                    In this webinar, attendees will learn about the many components of Apache Ignite,
                                    including the Data Grid, Compute Grid,
                                    distributed SQL database and the Machine Learning Grid. We will also cover a few
                                    typical use cases and work through some Java code examples.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://register.gotowebinar.com/register/2423316315303466241"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://register.gotowebinar.com/register/2423316315303466241"
                                         data-a2a-title="Introduction to Apache Ignite, a memory-centric distributed platform">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="building-consistent-and-highly-available-distributed-systems">
                                <h3>Building Consistent and Highly Available
                                    Distributed Systems with Apache® Ignite®&nbsp;
                                    <a href="/events.html#building-consistent-and-highly-available-distributed-systems"
                                       aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Valentin Kulichenko</div>
                                <div class="event-date">August 02, 2017</div>
                                <p>
                                    In this session, Valentin Kulichenko, Apache Ignite Committer and PMC, will give an
                                    overview of some of Apache® Ignite®
                                    capabilities that allow the delivery as much availability as possible, while not
                                    breaking data consistency.
                                    Valentin will give specific guidelines on how to build such systems, and will do a
                                    deep dive into topics like:
                                </p>
                                <ul class="page-list">
                                    <li>In-memory backups</li>
                                    <li>Data persistence</li>
                                    <li>Data center replication</li>
                                    <li>Full and incremental snapshots</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/building-consistent-and-highly-available-distributed-systems-apacher-ignitetm"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/building-consistent-and-highly-available-distributed-systems-apacher-ignitetm"
                                         data-a2a-title="Building Consistent and Highly Available Distributed Systems with Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Bay-Area-In-Memory-Computing-241381155">
                                <h3>Diving into the internals of Apache Ignite's
                                    memory architecture&nbsp;<a
                                            href="/events.html#Bay-Area-In-Memory-Computing-241381155"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Meetup, Denis Magda</div>
                                <div class="event-date">Jul 27, 2017</div>
                                <p>
                                    Apache Ignite is one of the fastest growing Apache projects. The presentation will
                                    take the audience on a
                                    roadmap discovery of Ignite moving to a memory-centric storage model, supporting
                                    both, fast in-memory and durable on-disk data,
                                    and blending a distributed SQL database with an in-memory key-value data grid.
                                </p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/241381155/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Bay-Area-In-Memory-Computing/events/241381155/"
                                         data-a2a-title="Diving into the internals of Apache Ignite's memory architecture">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Brighton-Java-241395191">
                                <h3>An Intro to Apache Ignite, the Memory-centric
                                    Distributed Platform&nbsp;<a href="/events.html#Brighton-Java-241395191"
                                                                 aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Akmal Chaudhri</div>
                                <div class="event-date">July 26, 2017</div>
                                <p>
                                    Join Akmal Chaudhri as he introduces the many components of the open-source Apache
                                    Ignite.
                                    You, as a Java professional, will learn how to solve some of the most demanding
                                    scalability and performance challenges.
                                    He will also cover a few typical use cases and work through some code examples.
                                </p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Brighton-Java/events/241395191/" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Brighton-Java/events/241395191/"
                                         data-a2a-title="An Intro to Apache Ignite, the Memory-centric Distributed Platform">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="distributed-acid-transactions-apache-ignite">
                                <h3>Distributed ACID Transactions in Apache Ignite&nbsp;<a
                                        href="/events.html#" aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Webinar, Akmal Chaudhri</div>
                                <div class="event-date">July 19, 2017</div>
                                <p>
                                    During this session, Akmal Chaudhri will do a deep-dive on the architecture of
                                    Apache Ignite's ACID-compliant transactional subsystem, elaborating on the
                                    following:
                                </p>
                                <ul class="page-list">
                                    <li>Data consistency: one-phase and two-phase commit implementations.</li>
                                    <li>Fault-tolerance: recovery protocol for running transactions.</li>
                                    <li>Optimistic and Pessimistic transactions.</li>
                                    <li>Deadlock-free transactions</li>
                                    <li>Deadlock detection mechanism</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/distributed-acid-transactions-apache-ignite"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/distributed-acid-transactions-apache-ignite"
                                         data-a2a-title="Distributed ACID Transactions in Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="SQL-queries-meetup-amsterdam">
                                <h3>Turbocharge your SQL queries in-memory with
                                    Apache® Ignite®&nbsp;<a href="/events.html#SQL-queries-meetup-amsterdam"
                                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Meetup, Amsterdam, Netherlands, Speaker - Denis Magda</div>
                                <div class="event-date">June 20, 2017 @6:30pm</div>
                                <p>
                                    During this session, Denis will explain how Apache Ignite handles auto-loading of
                                    SQL schema and data from MySQL,
                                    supports SQL indexes, compound indexes support, and various forms of SQL queries
                                    including distributed SQL joins.
                                    He will demostrate how to:
                                </p>
                                <ul class="page-list">
                                    <li>Import SQL schema from MySQL and preserve the data sets stored in MySQL and
                                        Apache Ignite in sync.
                                    </li>
                                    <li>Connect to Apache Ignite from your favourite tool or application language using
                                        ODBC or JDBC driver and start
                                        talking to a clustered data using familiar statements like SELECT, UPDATE,
                                        DELETE or INSERT.
                                    </li>
                                    <li>Boost application performance 1,000x and scale to over 1 billion transactions
                                        per second with in-memory storage of hundreds
                                        of TB's of data for your SQL-based applications.
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/MySQL-User-Group-NL/events/240545280/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/MySQL-User-Group-NL/events/240545280/"
                                         data-a2a-title="Turbocharge your SQL queries in-memory with Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="meetup-an-overview-of-ignite-persistent-store">
                                <h3>Apache Ignite Community Meetup - An Overview of
                                    Donated Ignite Persistent Store Feature&nbsp;<a
                                            href="/events.html#meetup-an-overview-of-ignite-persistent-store"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Meetup, GoToMeeting, Speaker - Denis Magda</div>
                                <div class="event-date">June 16, 2017 @8:00am</div>
                                <p>
                                    Apache Ignite Community decided to gather and dive into the details of Ignite
                                    Persistent Store donation to the main code base.
                                    It’s planned to give a general overview of the store learning more about its main
                                    capabilities and features as well as go over implementation details referring to the
                                    source code.

                                    To join use the details below.

                                    Please join my meeting from your computer, tablet or smartphone.<br/>
                                    <a href="https://global.gotomeeting.com/join/818661157">https://global.gotomeeting.com/join/818661157</a>

                                    You can also dial in using your phone.<br/>
                                    United States: +1 (571) 317-3112

                                    Access Code: 818-661-157
                                </p>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="http://apache-ignite-developers.2346864.n4.nabble.com/DISCUSS-Webinar-for-Ignite-Persistent-Store-walk-through-td18677.html#a18767"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="http://apache-ignite-developers.2346864.n4.nabble.com/DISCUSS-Webinar-for-Ignite-Persistent-Store-walk-through-td18677.html#a18767"
                                         data-a2a-title="Apache Ignite Community Meetup - An Overview of Donated Ignite Persistent Store Feature">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conferences</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="sparksummit2017-apacheignite-apachespark">
                                <h3>Apache Ignite and Apache Spark: This is Where
                                    Fast Data Meets the IoT&nbsp;<a
                                            href="/events.html#sparksummit2017-apacheignite-apachespark"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Spark Summit 2017, San Francisco, CA. Speaker - Denis Magda</div>
                                <div class="event-date">June 07, 2017 @3:20pm</div>
                                <p>
                                    During this session, Denis will explain and demonstrate how to build a Fast Data
                                    solution that will receive
                                    endless streams from the IoT side and will be capable of processing the streams in
                                    real-time.
                                    In particular, you will learn the following:
                                </p>
                                <ul class="page-list">
                                    <li>Data streaming to an Apache Ignite cluster from embedded devices powered by
                                        Apache Mynewt.
                                    </li>
                                    <li>Real-time data processing with Apache Spark and Apache Ignite.</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://spark-summit.org/2017/events/apache-spark-and-apache-ignite-where-fast-data-meets-the-iot/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://spark-summit.org/2017/events/apache-spark-and-apache-ignite-this-is-where-fast-data-meets-the-iot/"
                                         data-a2a-title="Apache Ignite and Apache Spark: This is Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacher-ignitetm-whats-new-version-201">
                                <h3>Apache® Ignite® 2.0: Prelude to a Distributed SQL
                                    Database&nbsp;<a href="/events.html#apacher-ignitetm-whats-new-version-201"
                                                     aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">June 07, 2017 @11:00am PT / 2:00pm ET</div>
                                <p>
                                    Apache Ignite 2.0 is a turnkey release which blends a distributed in-memory SQL
                                    database (IMDB) and an in-memory key-value data
                                    grid (IMDG) under one data management platform. It is also a necessary stepping
                                    stone ahead of Ignite 2.1 release
                                    which will be focused around the native disk persistence, allowing Ignite operate
                                    equally well in-memory and on-disk.

                                    You will learn how the off-heap memory architecture in Ignite has been re-engineered
                                    to better
                                    support SSD or Flash-based persistence. The new off-heap design uses a page-based
                                    approach with
                                    slab memory allocation, which may be optionally mapped to a persistent storage as
                                    is, without
                                    having to serialize or deserialize the data. The new architecture automatically
                                    handles memory
                                    fragmentation, significantly accelerates SQL, and almost completely removes costly
                                    garbage
                                    collection pauses.

                                    You will also learn how to create and alter SQL indexes at runtime, as well as
                                    utilize DDL to
                                    update distributed data sets using standard SQL syntax. We will also cover B+Tree
                                    data structures
                                    used to store SQL indexes off-heap.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/apacher-ignitetm-20-prelude-distributed-sql-database"
                                           target="_blank" rel="noopener">Register for this webinar</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/apacher-ignitetm-20-prelude-distributed-sql-database"
                                         data-a2a-title="Apache® Ignite® 2.0: Prelude to a Distributed SQL Database">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apachecon2017-apacheignite-apachespark">
                                <h3>Apache Ignite and Apache Spark: This is Where
                                    Fast Data Meets the IoT&nbsp;<a
                                            href="/events.html#apachecon2017-apacheignite-apachespark"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">ApacheCon North America, Miami, FL. Speaker - Denis Magda</div>
                                <div class="event-date">May 18, 2017 @2:40pm</div>
                                <p>
                                    During this session, Denis will explain and demonstrate how to build a Fast Data
                                    solution that will receive
                                    endless streams from the IoT side and will be capable of processing the streams in
                                    real-time.
                                    In particular, you will learn the following:
                                </p>
                                <ul class="page-list">
                                    <li>Data streaming to an Apache Ignite cluster from embedded devices powered by
                                        Apache Mynewt.
                                    </li>
                                    <li>Real-time data processing with Apache Spark and Apache Ignite.</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://apachecon2017.sched.com/event/9zot" target="_blank"
                                           rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://apachecon2017.sched.com/event/9zot"
                                         data-a2a-title="Apache Ignite and Apache Spark: This is Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apachebigdata2017-apacheignite-sql-grid">
                                <h3>Apache Ignite SQL Grid: Hot Blend of Traditional
                                    SQL and Swift Data Grid&nbsp;<a
                                            href="/events.html#apachebigdata2017-apacheignite-sql-grid"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">ApacheCon North America, Miami, FL. Speaker - Denis Magda</div>
                                <div class="event-date">May 18, 2017 @10:00am</div>
                                <p>
                                    In-memory data grids bring exceptional performance and scalability gains to
                                    applications built on top of them.
                                    The applications truly achieve 10x more performance improvement and become easily
                                    scalable and fault-tolerant
                                    thanks to the unique data grids architecture. However, because of this particular
                                    architecture,
                                    a majority of data grids have to sacrifice traditional SQL support requiring
                                    application developers to
                                    completely rewrite their SQL-based code to support data grid specific APIs.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://apachebigdata2017.sched.com/event/A01a?iframe=no"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://apachebigdata2017.sched.com/event/A01a?iframe=no"
                                         data-a2a-title="Apache Ignite SQL Grid: Hot Blend of Traditional SQL and Swift Data Grid">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Miami-Hadoop-User-Group">
                                <h3>Apache Ignite and Apache Spark: Where Fast Data
                                    Meets the IoT&nbsp;<a href="/events.html#Miami-Hadoop-User-Group"
                                                          aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">Miami Hadoop User Group, Miami, FL. Speaker - Denis Magda</div>
                                <div class="event-date">May 17, 2017 @6:00pm</div>
                                <p>
                                    During this session, Denis will explain and demonstrate how to build a Fast Data
                                    solution that will receive
                                    endless streams from the IoT side and will be capable of processing the streams in
                                    real-time.
                                    In particular, you will learn the following:
                                </p>
                                <ul class="page-list">
                                    <li>Data streaming to an Apache Ignite cluster from embedded devices powered by
                                        Apache Mynewt.
                                    </li>
                                    <li>Real-time data processing with Apache Spark and Apache Ignite.</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Miami-Hadoop-User-Group/events/239713172/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Miami-Hadoop-User-Group/events/239713172/"
                                         data-a2a-title="Apache Ignite and Apache Spark: Where Fast Data Meets the IoT">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="benchmarking-apache-ignite-still-keeps-ahead-of-ha-1">
                                <h3>Benchmarking: Apache Ignite Still Keeps Ahead Of
                                    Hazelcast&nbsp;<a
                                            href="/events.html#benchmarking-apache-ignite-still-keeps-ahead-of-ha-1"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Blog, Denis Magda</div>
                                <div class="event-date">May 12, 2017</div>
                                <p>
                                    There's an ad saying that Hazelcast is up to 50% faster than Apache Ignite, but that
                                    may not be true anymore. Check out this benchmark to get the true story.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://dzone.com/articles/benchmarking-apache-ignite-still-keeps-ahead-of-ha-1"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://dzone.com/articles/benchmarking-apache-ignite-still-keeps-ahead-of-ha-1"
                                         data-a2a-title="Benchmarking: Apache Ignite Still Keeps Ahead Of Hazelcast">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="Apache-Flink-London-Meetup">
                                <h3>Apache Flink meets Apache Ignite&nbsp;<a
                                        href="/events.html#Apache-Flink-London-Meetup" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">Apache Flink London Meetup, Speaker - Akmal B. Chaudhri</div>
                                <div class="event-date">May 10, 2017 @6:30pm</div>
                                <p>
                                    Akmal B. Chaudhri will be giving a quick introduction of Apache Ignite, its main
                                    capabilities and how it can add value to your pipelines.
                                    Akmal is a Technical Evangelist, specializing in Big Data, NoSQL and NewSQL database
                                    technologies.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Apache-Flink-London-Meetup/events/239663941/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Apache-Flink-London-Meetup/events/239663941/"
                                         data-a2a-title="Apache Flink meets Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacheignite-oscon-2017">
                                <h3>The next phase of distributed systems with Apache
                                    Ignite&nbsp;<a href="/events.html#apacheignite-oscon-2017"
                                                   aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">OSCON, Austin, TX. Speaker - Dani Traphagen</div>
                                <div class="event-date">May 10, 2017 @5:05pm</div>
                                <p>
                                    Is memory the new disk? If so, what does this mean for the future of database
                                    systems and persistence as we know it?
                                    Will all our data(bases) still belong to us? Dani Traphagen explores the key
                                    paradigm shifts currently impacting those
                                    Fortune 500 companies that view disk as a bottleneck. Dani explains how to optimize
                                    toward the cache, leveraging it for low-latency,
                                    highly available microservices architectures with the
                                    hot-and-fresh-out-of-the-kitchen open source project Apache Ignite.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://conferences.oreilly.com/oscon/oscon-tx/public/schedule/detail/60801"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://conferences.oreilly.com/oscon/oscon-tx/public/schedule/detail/60801"
                                         data-a2a-title="The next phase of distributed systems with Apache Ignite">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacher-ignitetm-real-time-processing-iot-generated-streaming-data">
                                <h3>Apache® Ignite®: Real-Time Processing of
                                    IoT-Generated Streaming Data&nbsp;<a
                                            href="/events.html#apacher-ignitetm-real-time-processing-iot-generated-streaming-data"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">May 10, 2017 @11:00am</div>
                                <p>
                                    During this 1-hour webinar, Denis will explain and demonstrate how to build a fast
                                    data solution that can receive endless IoT-generated streams and
                                    process them in real-time using Apache Ignite's distributed in-memory computing
                                    platform. In particular, you will learn the following:
                                </p>
                                <ul class="page-list">
                                    <li>How to stream data to an Apache Ignite cluster from embedded devices</li>
                                    <li>How to conduct real-time data processing on this stream using Apache Ignite</li>
                                </ul>

                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/apacher-ignitetm-real-time-processing-iot-generated-streaming-data"
                                           target="_blank" rel="noopener">Register for this webinar</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/apacher-ignitetm-real-time-processing-iot-generated-streaming-data"
                                         data-a2a-title="Apache® Ignite®: Real-Time Processing of IoT-Generated Streaming Data">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-ignite-20-released">
                                <h3>Apache Ignite 2.0 Released&nbsp;<a
                                        href="/events.html#apache-ignite-20-released" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">May 05, 2017</div>
                                <p>
                                    This major release was under the development for a long time. The community spent
                                    almost a year incorporating tremendous changes to the legacy Apache Ignite 1.x
                                    architecture.
                                    Curious why are we so boastful about this? Some of the main features of Apache
                                    Ignite 2.0 are:
                                </p>
                                <ul class="page-list">
                                    <li>Re-engineered Off-Heap Memory Architecture</li>
                                    <li>Data Definition Language</li>
                                    <li>Machine Learning Grid Beta - Distributed Algebra</li>
                                    <li>Integration with Spring Data, Rocket MQ, Hibernate 5</li>
                                    <li>Enchanced Inite.Net and Ignite C++ APIs</li>
                                </ul>
                                <p>
                                    See <a href="https://ignite.apache.org/releases/2.0.0/release_notes.html">release
                                    notes</a> for a full list of the changes.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://blogs.apache.org/ignite/entry/apache-ignite-2-0-redesigned"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://blogs.apache.org/ignite/entry/apache-ignite-2-0-redesigned"
                                         data-a2a-title="Apache Ignite 2.0 Released">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conferences">
                                <p>Conferences</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="presenting-apache-ignite-at-percona-live-2017">
                                <h3>Accelerate MySQL® for Demanding OLAP and OLTP Use
                                    Cases with Apache® Ignite™&nbsp;<a
                                            href="/events.html#presenting-apache-ignite-at-percona-live-2017"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Percona Live 2017, Santa Clara, CA, USA. Speaker - Nikita Ivanov</div>
                                <div class="event-date">April 25, 2017 @1:20pm PT</div>
                                <p>
                                    How to overcome the limitations of the MySQL architecture for big data analytics by
                                    leveraging the parallel distributed
                                    computing and ANSI SQL-99 capabilities of Apache Ignite. How to use Apache Ignite as
                                    an advanced high performance cache platform for hot data.
                                    The strategic benefits of using Apache Ignite® instead of memcache, Redis®,
                                    Elastic®, or Apache® Spark™.
                                    At the end of the session, you will understand how incorporating Apache Ignite into
                                    your architecture can empower dramatically faster analytics and
                                    transactions when augmenting your current MySQL infrastructure.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.percona.com/live/17/sessions/accelerate-mysql®-demanding-olap-and-oltp-use-cases-apache®-ignite™-0"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.percona.com/live/17/sessions/accelerate-mysql®-demanding-olap-and-oltp-use-cases-apache®-ignite™-0"
                                         data-a2a-title="Accelerate MySQL® for Demanding OLAP and OLTP Use Cases with Apache® Ignite®">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacher-ignitetm-memory-backbone-microservices-based-architectures">
                                <h3>Apache® Ignite™: An In-Memory Backbone for
                                    Microservices-Based Architectures&nbsp;<a
                                            href="/events.html#apacher-ignitetm-memory-backbone-microservices-based-architectures"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">April 19, 2017 @11:00am PT / 2:00pm ET</div>
                                <p>
                                    When systems that rely on microservices are used under high load or have to process
                                    rapidly growing volumes of data,
                                    they usually face the same issues and difficulties as applications that are not
                                    microservices-based. Disk-backed databases become a
                                    performance bottleneck as they can no longer keep up with growing volumes of data
                                    that have to be stored and processed in parallel.
                                    This degrades application performance and ultimately causes instability.<br/>

                                    This webinar discusses how in-memory computing using Apache® Ignite® can overcome
                                    the performance limitations
                                    common to microservices architectures built using traditional database
                                    architectures.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/apacher-ignitetm-memory-backbone-microservices-based-architectures"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/apacher-ignitetm-memory-backbone-microservices-based-architectures"
                                         data-a2a-title="Apache® Ignite®: An In-Memory Backbone for Microservices-Based Architectures">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="presenting-apache-ignite-performance-jpoint-2017">
                                <h3>Scalability in Distributed In-Memory Systems&nbsp;<a
                                        href="/events.html#presenting-apache-ignite-performance-jpoint-2017"
                                        aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">JPoint 2017, Moscow, Russia. Speaker - Vladimir Ozerov</div>
                                <div class="event-date">April 7, 2017 @15:30pm</div>
                                <p>
                                    In-memory computing frameworks and products rely on a simple horizontal scalability
                                    property - the more machines we have in a cluster the better the performance.
                                    However, a reasonable question arises. If I add a second machine to the cluster will
                                    I get 2x improvement? If there are 10 machines in a cluster should I expect overall
                                    10x performance increase?
                                    Is it true and if, yes, if the guarantee meets all the time?
                                    Join Yakov on his talk to get answers on these questions and learn more about
                                    scalability and concurrency concepts implemented in Apache Ignite In-Memory Data
                                    Fabric.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="presenting-apache-ignite-performance-jbreak-2017">
                                <h3>Scalability in Distributed In-Memory Systems&nbsp;<a
                                        href="/events.html#presenting-apache-ignite-performance-jbreak-2017"
                                        aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">JBreak 2017, Novosibirsk, Russia. Speaker - Yakov Zhdanov</div>
                                <div class="event-date">April 4, 2017 @15:15pm</div>
                                <p>
                                    In-memory computing frameworks and products rely on a simple horizontal scalability
                                    property - the more machines we have in a cluster the better the performance.
                                    However, a reasonable question arises. If I add a second machine to the cluster will
                                    I get 2x improvement? If there are 10 machines in a cluster should I expect overall
                                    10x performance increase?
                                    Is it true and if, yes, if the guarantee meets all the time?
                                    Join Yakov on his talk to get answers on these questions and learn more about
                                    scalability and concurrency concepts implemented in Apache Ignite In-Memory Data
                                    Fabric.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://2017.jbreak.ru/en/talks/scalability-in-distributed-in-memory-systems/"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://2017.jbreak.ru/en/talks/scalability-in-distributed-in-memory-systems/"
                                         data-a2a-title="Scalability in Distributed In-Memory Systems, Speaker - Yakov Zhdanov">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="presenting-apache-ignite-sql-grid-pgconf-2017">
                                <h3>Presenting Apache Ignite SQL Grid at PGConf US
                                    2017&nbsp;<a href="/events.html#presenting-apache-ignite-sql-grid-pgconf-2017"
                                                 aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Presentation, Denis Magda</div>
                                <div class="event-date">March 30, 2017 @14:00pm EDT</div>
                                <p>
                                    Learn how to boost performance 1,000x and scale to over 1 billion transactions per
                                    second with in-memory storage of hundreds
                                    of TBs of data for your SQL-based applications. Apache Ignite is a unique NewSQL
                                    platform that is built on top of a distributed
                                    key-value storage and provides full-fledged SQL support. Denis will show how Apache
                                    Ignite handles auto-loading of SQL schema and data,
                                    SQL indexes, compound indexes support, and various forms of SQL queries including
                                    distributed SQL joins.
                                    It will be demonstrated how to connect to Apache Ignite from your favorite tool or
                                    application language using ODBC or JDBC driver and
                                    start talking to a clustered data using familiar statements like SELECT, UPDATE,
                                    DELETE or INSERT.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        
                                    </p>
                                </div>
                                <div>
                                    
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="presenting-apache-ignite-sql-grid">
                                <h3>Presenting Apache Ignite SQL Grid at Big Data
                                    Bootcamp&nbsp;<a href="/events.html#presenting-apache-ignite-sql-grid"
                                                     aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                
                                <div class="event-date">Presentation, Denis Magda</div>
                                <div class="event-date">March 28, 2017 @1:00pm PT</div>
                                <p>
                                    In this presentation, Denis will introduce Apache Ignite SQL Grid component that
                                    combines the best of two worlds - performance and scalability of data grids and
                                    traditional ANSI-99 SQL support of relational databases. Moreover, Denis will take
                                    an existing application that works with a relational database and
                                    will show how to run it on top of Apache Ignite with minimum efforts.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://blogs.apache.org/ignite/entry/presenting-apache-ignite-sql-grid"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://blogs.apache.org/ignite/entry/presenting-apache-ignite-sql-grid"
                                         data-a2a-title="Presenting Apache Ignite SQL Grid at Big Data Bootcamp">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="presenting-apache-ignite-codemotion-rome-2017">
                                <h3>Presenting Apache Ignite at Codemotion Rome 2017&nbsp;<a
                                        href="/events.html#presenting-apache-ignite-codemotion-rome-2017"
                                        aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Presentation, Mandhir Gidda</div>
                                <div class="event-date">March 24, 2017 @15:00pm</div>
                                <p>
                                    Join and learn about Apache Ignite which is a high-performance, integrated and
                                    distributed in-memory platform for
                                    computing and transacting on large-scale data sets in real-time, orders of magnitude
                                    faster than possible with traditional
                                    disk-based or flash technologies.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="http://rome2017.codemotionworld.com/wp-content/themes/event/detail-talk.php?detail=5799"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="http://rome2017.codemotionworld.com/wp-content/themes/event/detail-talk.php?detail=5799"
                                         data-a2a-title="Presenting Apache Ignite at Codemotion Rome 2017">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinars">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacher-sql-grid-webinar">
                                <h3>The Apache&reg; Ignite&reg; SQL Grid: A Hot Blend
                                    of Traditional SQL and In-Memory Data Grids&nbsp;<a
                                            href="/events.html#apacher-sql-grid-webinar" aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">March 15, 2017 @11:00am PT / 2:00pm ET</div>
                                <p>
                                    During this webinar, Apache Ignite PMC chair Denis Magda will introduce the SQL Grid
                                    component of Apache&reg; Ignite&reg;. He will discuss:
                                </p>
                                <ul class="page-list">
                                    <li>ANSI-99 SQL queries including distributed joins</li>
                                    <li>Creating and leveraging SQL indices</li>
                                    <li>Data modification with ANSI-99 DML (INSERT, UPDATE, DELETE, etc.)</li>
                                    <li>Using Apache Ignite's JDBC and ODBC drivers</li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/company/news/events/gridgain-webinar-apacher-ignitetm-sql-grid-hot-blend-traditional-sql-and-memory"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/company/news/events/gridgain-webinar-apacher-ignitetm-sql-grid-hot-blend-traditional-sql-and-memory"
                                         data-a2a-title="The Apache&reg; Ignite&reg; SQL Grid: A Hot Blend of Traditional SQL and In-Memory Data Grids">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="london_ignite_meetup_feb_23">
                                <h3>Apache Ignite: Transform batch-based system into
                                    swift real-time solution&nbsp;<a href="/events.html#london_ignite_meetup_feb_23"
                                                                     aria-label="Event Meetup"><i
                                            class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">Apache Ignite London Meetup</div>
                                <div class="event-date">February 23, 2017</div>
                                <p>
                                    IHS Markit will present first on how they have been using Apache Ignite on several
                                    major projects.
                                    The 2nd part of the meetup will be led by Mandhir Gidda who's been working with
                                    in-memory technologies for nearly 10 years.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.meetup.com/Apache-Ignite-London/events/237189063"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.meetup.com/Apache-Ignite-London/events/237189063"
                                         data-a2a-title="Apache Ignite: Transform batch-based system into swift real-time solution">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apacher-ignitetm-web-console">
                                <h3>The Apache&reg; Ignite&reg; Web Console:
                                    Automating RDBMS Integration&nbsp;<a
                                            href="/events.html#apacher-ignitetm-web-console"
                                            aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Webinar, Denis Magda</div>
                                <div class="event-date">February 15, 2017 @11:00am PT / 2:00pm ET</div>
                                <p>
                                    During this webinar, Apache Ignite PMC chair Denis Magda will demonstrate how Apache&reg;
                                    Ignite&reg; Web Console enables automatic integration of Apache Ignite and your
                                    RDBMS. He will show you how to:
                                </p>
                                <ul class="page-list">
                                    <li>Import a RBMS schema and map it to the Apache Ignite caches</li>
                                    <li>Setup indexes</li>
                                    <li>Create a Java POJO</li>
                                    <li>Download a ready-to-run Apache Ignite based project that will be fully
                                        integrated with the RDBMS
                                    </li>
                                </ul>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/apacher-ignitetm-web-console-automating-rdbms-integration"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/apacher-ignitetm-web-console-automating-rdbms-integration"
                                         data-a2a-title="The Apache&reg; Ignite&reg; Web Console: Automating RDBMS Integration">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/webinars.svg" alt="Webinar">
                                <p>Webinar</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="deploying-apacher-ignitetm-and-gridgain-top-7-faqs">
                                <h3>Deploying Apache&reg; Ignite&reg; – Top 7 FAQs&nbsp;<a
                                        href="/events.html#deploying-apacher-ignitetm-and-gridgain-top-7-faqs"
                                        aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Webinar, Christos Erotocritou and Rachel Pedreschi</div>
                                <div class="event-date">January 25, 2017 @11:00am PT / 2:00pm ET</div>
                                <p>
                                    Christos Erotocritou and Rachel Pedreschi have helped numerous customers get started
                                    with Apache&reg; Ignite&reg; and GridGain. During this 1-hour webinar, they will
                                    share answers to the most common questions asked prior to deployment.
                                    They will also provide guidance that will save you time and make deploying Apache
                                    Ignite a more enjoyable experience.
                                </p>
                                <div class="row">
<div class="col-md-9 news-readmore">
                                    <p>
                                        <a href="https://www.gridgain.com/resources/webinars/deploying-apacher-ignitetm-and-gridgain-top-7-faqs"
                                           target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                    </p>
                                </div>
                                <div>
                                    <!-- AddToAny BEGIN -->
                                    <div class="a2a_kit a2a_kit_size_28 a2a_default_style news-socialmedia-icons"
                                         data-a2a-url="https://www.gridgain.com/resources/webinars/deploying-apacher-ignitetm-and-gridgain-top-7-faqs"
                                         data-a2a-title="Deploying Apache&reg; Ignite&reg; – Top 7 FAQs">
                                        <a aria-label="Twitter" class="a2a_button_twitter"></a>
                                        <a aria-label="Linkedin" class="a2a_button_linkedin"></a>
                                        <a aria-label="Facebook" class="a2a_button_facebook"></a>
                                        <a aria-label="Add To Any" class="a2a_dd"
                                           href="https://www.addtoany.com/share"></a>
                                    </div>
                                    <!-- AddToAny END -->
                                </div>
                                </div>
                            </section>
                        </div>
                    </div>
                </div>
                <div class="tab-pane" id="events-2016">
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-big-data-europe-nov-16-2">
                                <h3>Shared Memory Layer for Spark
                                    Applications&nbsp;<a href="/events.html#apache-big-data-europe-nov-16-2"
                                                         aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Dmitriy Setrakyan, Apache Big Data Europe</div>
                                <div class="event-date">November 16, 2016</div>
                                <p>
                                    Join Dmitriy Setrakyan, Apache Ignite Project Management Committee Chairman and
                                    co-founder and Chief Product Officer at GridGain,
                                    to learn more about the need to share state across different Spark jobs and
                                    applications and several technologies that make it possible, including Tachyon and
                                    Apache Ignite.
                                </p>
                                <p>
                                    <a href="https://apachebigdataeu2016.sched.org/event/8m2O/shared-memory-layer-for-spark-applications-dmitriy-setrakyan-gridgain"
                                       target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-big-data-europe-nov-16-1">
                                <h3>Shared Memory Layer and Faster SQL for Spark
                                    Applications&nbsp;<a href="/events.html#apache-big-data-europe-nov-16-1"
                                                         aria-label="Event Meetup"><i class="fas fa-anchor"></i></a></h3>
                                <div class="event-date">Dmitriy Setrakyan, Apache Big Data Europe</div>
                                <div class="event-date">November 16, 2016</div>
                                <p>
                                    Learn the importance of In Memory File Systems, Shared In-Memory RDDs with Apache
                                    Ignite, as well as the need to index data in-memory for fast SQL execution.
                                </p>
                                <p>
                                    <a href="https://apachebigdataeu2016.sched.org/event/8m2i/shared-memory-layer-and-faster-sql-for-spark-applications-dmitriy-setrakyan-gridgain"
                                       target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Conference">
                                <p>Conference</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-big-data-europe-nov-15">
                                <h3>Apache Ignite - Path to Converged Data Platform&nbsp;<a
                                        href="/events.html#apache-big-data-europe-nov-15" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">Dmitriy Setrakyan, Apache Big Data Europe</div>
                                <div class="event-date">November 15, 2016</div>
                                <p>
                                    The presentation will take the audience on a roadmap discovery of Ignite moving to a
                                    converged storage model, supporting both, analytical and transactional data sets.
                                </p>
                                <p>
                                    <a href="https://apachebigdataeu2016.sched.org/event/8TzM/apache-ignite-path-to-converged-data-platform-dmitriy-setrakyan-gridgain"
                                       target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="london-meetup-june-2016">
                                <h3>Apache Ignite London Meetup&nbsp;<a
                                        href="/events.html#london-meetup-june-2016" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">July 13, 2016</div>
                                <p>
                                    Join us for a technical session to look at Apache Ignite and hear from BlackRock on
                                    how they believe it will
                                    solve their application performance & scalability challenges.
                                </p>
                                <p>
                                    Please RSVP on <a href="https://secure.meetup.com/register/?ctx=ref" target="_blank"
                                                      rel="noopener">Meetup.com</a>.
                                </p>
                                <p>
                                    <a href="http://www.meetup.com/Apache-Ignite-London/events/231963106/"
                                       target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/meetup.svg" alt="Meetup">
                                <p>Meetup</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="nyc-meetup-june-2016">
                                <h3>Apache Ignite NYC Meetup&nbsp;<a
                                        href="/events.html#nyc-meetup-june-2016" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">June 28, 2016</div>
                                <p>
                                    Apache Ignite PMC member, Nikita Ivanov will be presenting a deep dive on Apache
                                    Ignite at our NYC meetup,
                                    Tuesday, June 28 at Work Market, 240 W 37th St, 9th Floor, New York, NY.
                                </p>
                                <p>
                                    Please RSVP on <a href="http://www.meetup.com/mysqlnyc/events/231578906/"
                                                      target="_blank" rel="noopener">Meetup.com</a>. Space is limited
                                    and is filling up fast!
                                </p>
                                <p>
                                    <a href="http://www.meetup.com/mysqlnyc/events/231578906/" target="_blank"
                                       rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    
                </div>
                <div class="tab-pane" id="events-2015">
                    
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="release-1.5.0-b1">
                                <h3>Apache Ignite 1.5.0-b1 Early Access Released&nbsp;<a
                                        href="/events.html#release-1.5.0-b1" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">December 12, 2015</div>
                                <p>
                                    This early access version includes support for .NET and C++, Streamer for MQTT,
                                    Twitter, and Apache Flume,
                                    compact binary protocol, performance improvements for SQL queries, transactions, and
                                    more.
                                </p>
                                <p>
                                    <a href="/download.cgi" target="_blank" rel="noopener">Download Ignite 1.5.0-b1</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="release-1.4.0">
                                <h3>Apache Ignite 1.4.0 Released&nbsp;<a
                                        href="/events.html#release-1.4.0" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">September 28, 2015</div>
                                <p>
                                    This is the first Apache Ignite release since the project graduated from incubation
                                    in
                                    August, 2015. This new release includes SSL support to communication and discovery,
                                    support for log4j2, significantly faster JDBC driver implementation,
                                    fixes for SQL queries group index logic, auto-retries for cache operations in
                                    recoverable cases and more.
                                </p>
                                <p>
                                    <a href="/download.cgi" target="_blank" rel="noopener">Download Ignite 1.4.0</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-ignite-graduation">
                                <h3>Apache Ignite Graduated to a Top-Level Project&nbsp;<a
                                        href="/events.html#apache-ignite-graduation" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">August 25, 2015</div>
                                <p>
                                    The Apache Software Foundation (ASF), the all-volunteer developers, stewards, and
                                    incubators of more than 350
                                    Open Source projects and initiatives, announced today that Apache® Ignite® has
                                    graduated from the Apache Incubator
                                    to become a Top-Level Project (TLP), signifying that the project's community and
                                    products have been well-governed
                                    under the ASF's meritocratic process and principles.
                                </p>
                                <p>
                                    <a href="http://globenewswire.com/news-release/2015/08/25/763148/10146997/en/The-Apache-Software-Foundation-Announces-Apache-tm-Ignite-tm-as-a-Top-Level-Project.html"
                                    target="_blank" rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="release-1.3.0">
                                <h3>Apache Ignite 1.3.0 Released&nbsp;<a
                                        href="/events.html#release-1.3.0" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">July 21, 2015</div>
                                <p>
                                    This new release includes integration with Apache YARN for data center and resource
                                    management, fixes for JTA transactions, Hibernate L2 Cache improvements, and more.
                                </p>
                                <p>
                                    <a href="/download.cgi" target="_blank" rel="noopener">Download Ignite 1.3.0</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="release-1.2.0">
                                <h3>Apache Ignite 1.2.0 Released&nbsp;<a
                                        href="/events.html#release-1.2.0" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">June 29, 2015</div>
                                <p>
                                    This new release includes shared RDD for Apache Spark (based on Ignite Data Grid),
                                    integration with Apache Mesos for data center management, client-mode for
                                    light-weight
                                    cluster discovery, memory-size eviction policy, and more.

                                </p>
                                <p>
                                    <a href="/download.cgi" target="_blank" rel="noopener">Download Ignite 1.2.0</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="release-1.1.0">
                                <h3>Apache Ignite 1.1.0 Released&nbsp;<a
                                        href="/events.html#release-1.1.0" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">May 28, 2015</div>
                                <p>
                                    This new release includes Google Compute Engine and generic cloud TCP discovery IP
                                    finder, "Collocated" mode for SQL queries,
                                    support for (*) star notation in cache names, fix for SQL union support, and more.
                                </p>
                                <p>
                                    <a href="/download.cgi" target="_blank" rel="noopener">Download Ignite 1.1.0</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="release-1.0.0">
                                <h3>Apache Ignite 1.0.0 Released&nbsp;<a
                                        href="/events.html#release-1.0.0" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">April 2, 2015</div>
                                <p>
                                    This new release includes dynamic caching functionality to start and stop caches
                                    during runtime,
                                    simplified Query API, automatic aggregation, grouping and sorting support for SQL
                                    Queries,
                                    Streaming examples, and more.
                                </p>
                                <p>
                                    <a href="/download.cgi" target="_blank" rel="noopener">Download Ignite 1.0.0</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/release.svg" alt="Release">
                                <p>Release</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="release-1.0.0-RC3">
                                <h3>Apache Ignite 1.0.0-RC3 Released&nbsp;<a
                                        href="/events.html#release-1.0.0-RC3" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">March 24, 2015</div>
                                <p>
                                    This is the first release of Apache Ignite project. The source code in large part is
                                    based
                                    on the GridGain In-Memory Data Fabric, open source edition, v. 6.6.2, which was
                                    donated to Apache Software Foundation.
                                    The main feature set of Ignite In-Memory Data Fabric includes:
                                </p>
                                <ul class="page-list">
                                    <li>Advanced Clustering</li>
                                    <li>Compute Grid</li>
                                    <li>Data Grid</li>
                                    <li>Service Grid</li>
                                    <li>IGFS - Ignite File System</li>
                                    <li>Distributed Data Structures</li>
                                    <li>Distributed Messaging</li>
                                    <li>Distributed Events</li>
                                    <li>Streaming & CEP</li>
                                </ul>
                                <p>
                                    <a href="/download.cgi" target="_blank" rel="noopener">Download Ignite 1.0.0-RC3</a>
                                </p>
                            </section>
                        </div>
                    </div>
                </div>
                <div class="tab-pane" id="events-2014">
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Interview">
                                <p>Interview</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="nikita-interview-ignite-incubation">
                                <h3>InfoQ Interview with Nikita Ivanov on Apache
                                    Ignite Incubation&nbsp;<a href="/events.html#nikita-interview-ignite-incubation"
                                                              aria-label="Event Meetup"><i class="fas fa-anchor"></i></a>
                                </h3>
                                <div class="event-date">December 3, 2014</div>
                                <p>
                                    InfoQ caught up with Nikita Ivanov, CTO and founder of GridGain, about the
                                    In-Memory Computing framework becoming an Apache project, motivation behind this
                                    decision,
                                    and upcoming features and enhancements of GridGain.

                                </p>
                                <p>
                                    <a href="http://www.infoq.com/articles/gridgain-apache-ignite" target="_blank"
                                       rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                    <div class="row row-event">
                        <div class="col-md-2 d-none d-md-block">
                            <div class="round-icon-block">
                                <img src="images/conferences.svg" alt="Interview">
                                <p>News</p>
                            </div>
                        </div>
                        <div class="col-md-10">
                            <section id="apache-ignite-enters-incubation">
                                <h3>Apache Ignite Enters Incubation&nbsp;<a
                                        href="/events.html#apache-ignite-enters-incubation" aria-label="Event Meetup"><i
                                        class="fa fa-anchor"></i></a></h3>
                                <div class="event-date">October 1, 2014</div>
                                <p>
                                    GridGain recently announced that the GridGain In-Memory Data Fabric has been
                                    accepted
                                    into the Apache Incubator program under the name "Apache Ignite." Earlier in 2014,
                                    GridGain was
                                    transformed to an open source model through Apache 2.0 license. Now, the product
                                    will be available
                                    under the Apache Foundation project portfolio.
                                </p>
                                <p>
                                    <a href="http://www.infoq.com/news/2014/12/gridgain-ignite" target="_blank"
                                       rel="noopener" aria-label="Event Meetup">Read more</a>
                                </p>
                            </section>
                        </div>
                    </div>
                </div>
            </div>
        </section>
    </div>
</article>
    <!--#include virtual="/includes/footer.html" -->

<!--#include virtual="/includes/scripts.html" -->

</body>
</html>
