title | layout |
---|---|
Scalable Batch and Stream Data Processing |
base |
**Apache Flink®** is an open source platform for distributed stream and batch data processing.
Flink’s core is a streaming dataflow engine that provides data distribution, communication, and fault tolerance for distributed computations over data streams.
Flink includes several APIs for creating applications that use the Flink engine:
- [DataStream API]({{ site.docs-snapshot }}/dev/datastream_api.html) for unbounded streams embedded in Java and Scala, and
- [DataSet API]({{ site.docs-snapshot }}/dev/batch/index.html) for static data embedded in Java, Scala, and Python,
- [Table API]({{ site.docs-snapshot }}/dev/table_api.html) with a SQL-like expression language embedded in Java and Scala.
Flink also bundles libraries for domain-specific use cases:
- [CEP]({{ site.docs-snapshot }}/dev/libs/cep.html), a complex event processing library,
- [Machine Learning library]({{ site.docs-snapshot }}/dev/libs/ml/index.html), and
- [Gelly]({{ site.docs-snapshot }}/dev/libs/gelly/index.html), a graph processing API and library.
You can integrate Flink easily with other well-known open source systems both for data input and output as well as deployment.
High throughput and low latency stream processing with exactly-once guarantees.
Batch processing applications run efficiently as special cases of stream processing applications.
DataSet, DataStream, and more. Integrated with the Apache Big Data stack.
Check out the Features page to get a tour of all major Flink features and the Powered by Flink page to see real-world Flink use cases.
Download the latest stable release and run Flink on your machine, cluster, or cloud:
The documentation contains a [setup guide]({{ site.docs-snapshot }}/setup/building.html) for all deployment options.
The [programming guide]({{ site.docs-snapshot }}/dev/api_concepts.html) contains all information to get you started with writing and testing your Flink programs.
See our list of [third-party packages]({{ site.baseurl }}/community.html#third-party-packages) for Flink.
Check out the [documentation]({{ site.docs-snapshot }}) for the next steps.
-
{% for post in site.posts limit:5 %}
- {{ post.date | date_to_string }} » {{ post.title }} {% endfor %}
Check out the blog for all posts.
You can post questions to the Flink community on various channels. Pick the one, which suits you best:
-
User mailing list. Subscribe to the mailing list by sending an empty email to user-subscribe@flink.apache.org. Once the subscription is confirmed, you can send questions to user@flink.apache.org.
-
Stack Overflow. Post your questions to Stack Overflow and tag them with #flink.
-
IRC chat. The IRC channel #flink at irc.freenode.org is dedicated to Apache Flink. Join the channel and chat with the Flink community.
Check out the community page for all community-related information. If you want to contribute, make sure to have a look at the contribution guide.