| extend ../_components/base.pug |
| |
| block pagetitle |
| title Apache Ignite Streaming, Real-Time Data Processing |
| meta(name="description", content="Apache Ignite data loading, streaming, and real-time processing capabilities allow to inject large amounts of data into an Ignite cluster in a scalable and fault-tolerant way. Learn more here.") |
| link(rel="canonical", href="https://ignite.apache.org/features/streaming.html") |
| |
| meta(property="og:title", content="Apache Ignite Streaming, Real-Time Data Processing") |
| meta(property="og:type", content="article") |
| meta(property="og:url", content="https://ignite.apache.org/features/streaming.html") |
| meta(property="og:image", content="/img/og-pic.png") |
| meta(property="og:description", content="Apache Ignite data loading, streaming, and real-time processing capabilities allow to inject large amounts of data into an Ignite cluster in a scalable and fault-tolerant way. Learn more here.") |
| |
| block css |
| link(rel="stylesheet", href="../css/native-persistence.css?ver=" + config.version) |
| link(rel="stylesheet", href="../css/compute-apis.css?ver=" + config.version) |
| link(rel="stylesheet", href="../css/streaming.css?ver=" + config.version) |
| |
| |
| |
| |
| |
| |
| block main |
| - global.pageHref = "features" |
| - config.hdrClassName = "hdr__blue" |
| include ../_components/header.pug |
| |
| |
| section.innerhero |
| .container.innerhero__cont |
| .innerhero__main |
| .innerhero__pre.pb-3 Apache Ignite |
| h1.h1.innerhero__h1 Real-Time Streaming<br> APIs |
| .innerhero__descr.pt-2.h5. |
| Ingest streams of data and build event-driven architectures |
| .innerhero__action |
| a.button.innerhero__button(href="https://ignite.apache.org/docs/latest/index") Start Coding |
| img.innerhero__pic.innerhero__pic--stream(src="/img/features/streaming/hero-image.svg", alt="stream-hero") |
| // /.innerhero |
| |
| section.stream1 |
| .container |
| .stream1__block.flexi |
| p.stream1__p.h4 With Apache Ignite you can<strong> load and stream</strong> large finite — or never-ending — volumes of data<strong> in a scalable and fault-tolerant way</strong> into the cluster. |
| .stream1__part |
| img.stream1__img(src="/img/features/streaming/speed.png", alt="speed") |
| p.stream1__text The rate at which data can be injected into Ignite <strong>exceeds millions of events per second </strong>on a moderately sized cluster. |
| // /.stream1 |
| |
| section.stream2 |
| .container |
| .stream2__block.flexi |
| .stream2__content |
| h2.stream2__h2.h4 Ignite Core Streaming APIs |
| h3.stream2__h3 What are those APIs? |
| p.stream2__text With Ignite core streaming APIs such as IgniteDataStreamer you get basic streaming capabilities out of the box. You can stream and transform your data originating from multiple custom sources.<br><br>Ignite data streamers automatically buffer the data and group it into batches for better performance, and send it in parallel to multiple nodes. |
| img.stream2__img(src="/img/features/streaming/sql.svg", alt="sql") |
| // /.stream2 |
| |
| section.stream3 |
| .container |
| h2.stream3__h2.h4 IgniteDataStreamer is used for: |
| .stream3__blocks.flexi |
| .stream3__block |
| .stream3__part.flexi |
| .compute2-points__item.fz20 |
| p.stream3__text Data loading |
| .stream3__part.stream3__end.flexi.ml-04 |
| .compute2-points__item.fz20 |
| p.stream3__text Real-time data streaming |
| .stream3__block |
| .stream3__part.stream3__first.flexi |
| .compute2-points__item.fz20 |
| p.stream3__text Achieving advanced streaming capabilities by integrating with streaming frameworks: |
| .stream3__item.stream3__itemstart.flexi |
| img.stream3__img(src="/img/features/streaming/one.png", alt="one") |
| img.stream3__img(src="/img/features/streaming/two.svg", alt="two") |
| img.stream3__img(src="/img/features/streaming/three.png", alt="three") |
| .stream3__item.flexi |
| img.stream3__img(src="/img/features/streaming/four.svg", alt="four") |
| img.stream3__img(src="/img/features/streaming/five.svg", alt="five") |
| img.stream3__img(src="/img/features/streaming/six.svg", alt="six") |
| // /.stream3 |
| |
| section.stream4 |
| .container |
| h2.stream4__h2.h4 Event-Driven Architecture Basic Principles |
| p.stream4__p In many cases, streams of data we receive comprise events that we have to react to.<br> |
| span.stream4__greys With Apache Ignite, you can: |
| .stream4__block.flexi |
| .stream4__part |
| .stream4__number 01 |
| .stream4__text Enrich and transform your data <br>on the fly. |
| .stream4__part.stream4__parttwo |
| .stream4__number 02 |
| .stream4__text Execute any calculations in response<br> to an event on the cluster-node side. |
| .stream4__part |
| .stream4__number 03 |
| .stream4__text React to your streams of data on the application side with continuous queries. |
| .stream4__grey If streamed data represents an event, your application-side logic can react to it after receiving a notification from continuous queries. |
| |
| |
| // /.stream4 |
| |
| |
| |
| section.native-bottom.container |
| .native-bottom__grid |
| article.nativebotblock |
| .h4.nativebotblock__title |
| img(src="/img/features/native-rocket.svg", alt="").nativebotblock__icon |
| span Ready to Start? |
| p.nativebotblock__text Start coding with Ignite Streaming APIs |
| a.nativebotblock__link.arrowlink(href="https://ignite.apache.org/docs/latest/data-streaming", target="_blank") Ignite Streaming APIs |
| article.nativebotblock.nativebotblock--learn |
| .h4.nativebotblock__title |
| img(src="/img/features/native-docs.svg", alt="").nativebotblock__icon |
| span Want to Learn More? |
| p.nativebotblock__text Explore our out-of-the-box integrations with Kafka, Flink, MQTT and other advanced streaming technologies |
| a.nativebotblock__link.arrowlink(href="https://ignite.apache.org/docs/latest/extensions-and-integrations/streaming/kafka-streamer", target="_blank") Extensions And Integrations Guide |
| |
| |
| |
| |