blob: 1be56dd277b9aa5ba552b0fca79c5b360626b9d0 [file] [log] [blame]
extend ../_components/base.pug
block pagetitle
| Real-Time Streaming APIs
block css
link(rel="stylesheet", href="../css/native-persistence.css")
link(rel="stylesheet", href="../css/compute-apis.css")
link(rel="stylesheet", href="../css/streaming.css")
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="/public/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="/public/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="/public/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="/public/img/features/streaming/one.png", alt="one")
img.stream3__img(src="/public/img/features/streaming/two.svg", alt="two")
img.stream3__img(src="/public/img/features/streaming/three.png", alt="three")
.stream3__item.flexi
img.stream3__img(src="/public/img/features/streaming/four.svg", alt="four")
img.stream3__img(src="/public/img/features/streaming/five.svg", alt="five")
img.stream3__img(src="/public/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 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
h3.h4.nativebotblock__title
img(src="/public/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
h3.h4.nativebotblock__title
img(src="/public/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/spring/spring-boot", target="_blank") Extensions and integrations guide