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

<!--
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
"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>
<link rel="canonical" href="https://ignite.apache.org/features/streaming.html" />
    <meta charset="utf-8">
    <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>Data Loading and Streaming - Apache Ignite</title>
    <!--#include virtual="/includes/styles.html" -->

    <!--#include virtual="/includes/sh.html" -->
</head>
<body>
<!--#include virtual="/includes/header.html" -->
<article>
    <header>
        <div class="container">
            <h1 >Data Loading and <strong>Streaming</strong></h1>
        </div>
    </header>
    <div class="container">
                
        
        <p>
            Apache Ignite® data loading and streaming capabilities allow ingesting large finite as well as
            never-ending volumes of data in a scalable and fault-tolerant way into the cluster.
            The rate at which data can be injected into Ignite is very high and easily exceeds millions
            of events per second on a moderately sized cluster.
        </p>
        <img class="img-responsive diagram-right" src="/images/ignite-stream-query.png" alt="Data Loading and Streaming" />
        <p>
            Apache Ignite <a href="https://apacheignite-mix.readme.io/docs/overview" target="_blank" rel="noopener">
            integrates</a> with major streaming technologies and frameworks such as Kafka, Camel,
            Storm or JMS to bring even more advanced streaming capabilities to Ignite-based architectures.
        </p>
            
                    
        <h2>Data Loading</h2>
        <p>
            Ignite provides several <a href="https://apacheignite.readme.io/docs/data-loading" target="_blank" rel="noopener">
            techniques</a> for initial data loading. For instance, Ignite streaming APIs are a good
            choice for clusters with Ignite native persistence enabled, while the clusters that persist
            data in a 3rd party store can connect to it directly with <code>CacheStore</code> API.
        </p>

        <h2>How Ignite Streaming Works:</h2>
        <ol class="page-list">
            <li>Clients inject streams of data into Ignite.</li>
            <li>Data is automatically partitioned between Ignite data nodes.</li>
            <li>Data is concurrently processed across all cluster nodes.</li>
            <li>Clients perform concurrent <code>SQL queries</code> on the streamed data.</li>
            <li>Clients subscribe to <code>continuous queries</code> as data changes.</li>
        </ol>
    
            
        <h2>Code Examples:</h2>
        <!-- Nav tabs -->
        <ul id="datagrid-examples" class="nav nav-tabs">
            <li ><a class="active" href="#streaming-data" role="tab" data-toggle="tab">Stream Data</a></li>
            <li><a href="#streaming-transformer" role="tab" data-toggle="tab">Transform Data</a></li>
            
        </ul>

        <!-- Tab panes -->
        <div class="tab-content">
            <div role="tabpanel" class="tab-pane active" id="streaming-data">
                <pre class="brush:java">
                    // Get the data streamer reference and stream data.
                    try (IgniteDataStreamer&lt;Integer, String&gt; stmr = ignite.dataStreamer("myStreamCache")) {
                        // Stream entries.
                        for (int i = 0; i &lt; 100000; i++)
                            stmr.addData(i, Integer.toString(i));
                    }
                </pre>
            </div>
            <div role="tabpanel" class="tab-pane" id="streaming-transformer">
                <pre class="brush:java">
                    CacheConfiguration cfg = new CacheConfiguration("wordCountCache");

                    IgniteCache&lt;Integer, Long&gt; stmCache = ignite.getOrCreateCache(cfg);

                    try (IgniteDataStreamer&lt;String, Long&gt; stmr = ignite.dataStreamer(stmCache.getName())) {
                        // Allow data updates.
                        stmr.allowOverwrite(true);

                        // Configure data transformation to count instances of the same word.
                        stmr.receiver(StreamTransformer.from((e, arg) -> {
                        // Get current count.
                        Long val = e.getValue();

                        // Increment count by 1.
                        e.setValue(val == null ? 1L : val + 1);

                        return null;
                        }));

                        // Stream words into the streamer cache.
                        for (String word : text)
                        stmr.addData(word, 1L);
                    }
                </pre>
            </div>
        </div>
            
        <h2>GitHub Examples:</h2>
            <p>Also see
                <a href="https://github.com/apache/ignite/blob/master/examples/src/main/java/org/apache/ignite/examples/datagrid/CacheContinuousQueryExample.java" target="github">continuous queries</a>,
    <a href="https://github.com/apache/ignite/tree/master/examples/src/main/java/org/apache/ignite/examples/streaming/wordcount" target="github">word count</a>,
    and <a href="https://github.com/apache/ignite/tree/master/examples/src/main/java/org/apache/ignite/examples/streaming" target="github">other streaming examples</a> available on GitHub.
            </p>
		
        <h2>Streaming Features</h2>

        <table class="table table-bordered table-striped" name="Streaming Features">
        <thead>
            <tr>
                <th width="35%" class="left">Feature</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td class="left">Data Streamers</td>
                <td>
                    <p>
                        Data streamers are defined by <code>IgniteDataStreamer</code> API and are built to inject large
                        amounts of continuous streams of data into Ignite stream caches. Data streamers are
                        built in a scalable and fault-tolerant fashion and provide <b>at-least-once-guarantee</b>
                        semantics for all the data streamed into Ignite.
                    </p>
                    <div class="page-links">
                        <a href="http://apacheignite.readme.io/docs/data-streamers" target="docs">Docs for this Feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Data Loading</td>
                <td>
                    <p>
                        Data streamers can be used to load large amounts of data into Ignite cahes.
                        They can be used for initial data loading from a 3rd party database or another source.
                    </p>
                    <div class="page-links">
                        <a href="https://apacheignite.readme.io/docs/data-loading" target="docs">Docs for this Feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Collocated Processing</td>
                <td>
                    <p>
                        For cases when you need to execute some custom logic instead of just adding new data,
                        you can take advantage of <code>StreamReceiver</code> API.
                    </p>
                    <p>
                        Stream receivers allow you to react to the streamed data in collocated fashion,
                        directly on the nodes where it will be cached. You can change the data or add any
                        custom pre-processing logic to it, before putting the data into cache.
                    </p>
                    <div class="page-links">
                        <a href="http://apacheignite.readme.io/docs/data-streamers#streamreceiver" target="docs">Docs for this Feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Continuous Queries</td>
                <td>
                    <p>
                        Continuous queries are useful for cases when you want to execute a query and then
                        continue to get notified about the data changes that fall into your query filter.
                    </p>
                    <div class="page-links">
                        <a href="http://apacheignite.readme.io/docs/continuous-queries" target="docs">Docs for this Feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">JMS Data Streamer</td>
                <td>
                    <p>
                        Ignite JMS Data Streamer consumes messages from JMS brokers and inserts them into Ignite caches.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/jms-data-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Apache Flume Sink</td>
                <td>
                    <p>
                        IgniteSink is a Flume sink that extracts events from an associated Flume channel and injects into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/flume-data-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">MQTT Streamer</td>
                <td>
                    <p>
                        Ignite MQTT Streamer consumes messages from a MQTT topic and feeds transformed key-value pairs into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/mqtt-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Twitter Streamer</td>
                <td>
                    <p>
                        Ignite Twitter Streamer consumes messages from a Twitter Streaming API and inserts them into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/twitter-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Apache Kafka Streamer</td>
                <td>
                    <p>
                        Ignite Kafka Data Streamer consumes messages for a given Kafka Topic from Kafka Broker and inserts them into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/kafka-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Apache Camel streamer</td>
                <td>
                    <p>
                        Ignite Camel streamer consumes messages from an Apache Camel consumer endpoint and feeds them into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/camel-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Apache Storm Streamer</td>
                <td>
                    <p>
                        Ignite Storm Streamer consumes messages from an Apache Storm consumer endpoint and feeds them into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/storm-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Apache Flink Streamer</td>
                <td>
                    <p>
                        Ignite Flink Streamer consumes messages from an Apache Flink consumer endpoint and feeds them into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/flink-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">Apache RocketMQ Streamer</td>
                <td>
                    <p>
                        Ignite RocketMQ Streamer consumes messages from an Apache RocketMQ consumer endpoint and feeds them into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/rocketmq-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
            <tr>
                <td class="left">ZeroMQ Streamer</td>
                <td>
                    <p>
                        Ignite ZeroMQ Streamer consumes messages from a ZeroMQ consumer endpoint and feeds them into an Ignite cache.
                    </p>
                    <div  class="page-links">
                        <a href="https://apacheignite-mix.readme.io/docs/zeromq-streamer" target="docs">Docs for this feature <i class="fa fa-angle-double-right"></i></a>
                    </div>
                </td>
            </tr>
        </tbody>
    </table>
</div>
</article>
    <!--#include virtual="/includes/footer.html" -->

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