| --- |
| title: "Apache Flink Documentation" |
| nav-pos: 0 |
| nav-title: '<i class="fa fa-home title" aria-hidden="true"></i> Home' |
| nav-parent_id: root |
| --- |
| <!-- |
| 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. |
| --> |
| |
| This documentation is for Apache Flink version {{ site.version_title }}. These pages were built at: {% build_time %}. |
| |
| 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 builds batch processing on top of the streaming engine, overlaying native iteration support, managed memory, and program optimization. |
| |
| ## First Steps |
| |
| * **Code Walkthroughs**: Follow step-by-step guides and implement a simple application or query in one of Flink's APIs. |
| * [Implement a DataStream application](./getting-started/walkthroughs/datastream_api.html) |
| * [Write a Table API query](./getting-started/walkthroughs/table_api.html) |
| |
| * **Docker Playgrounds**: Set up a sandboxed Flink environment in just a few minutes to explore and play with Flink. |
| * [Run and manage Flink streaming applications](./getting-started/docker-playgrounds/flink-operations-playground.html) |
| |
| * **Tutorials**: Install Flink on your local machine. |
| * [Setup a local Flink cluster](./getting-started/tutorials/local_setup.html) |
| |
| * **Concepts**: Learn about Flink's basic concepts to better understand the documentation. |
| * [Dataflow Programming Model](concepts/programming-model.html) |
| * [Distributed Runtime](concepts/runtime.html) |
| * [Glossary](concepts/glossary.html) |
| |
| ## API References |
| |
| The API references list and explain all features of Flink's APIs. |
| |
| * [Basic API Concepts](dev/api_concepts.html) |
| * [DataStream API](dev/datastream_api.html) |
| * [DataSet API](dev/batch/index.html) |
| * [Table API & SQL](dev/table/index.html) |
| |
| ## Deployment |
| |
| Before putting your Flink job into production, read the [Production Readiness Checklist](ops/production_ready.html). |
| |
| ## Release Notes |
| |
| Release notes cover important changes between Flink versions. Please carefully read these notes if you plan to upgrade your Flink setup to a later version. |
| |
| * [Release notes for Flink 1.10](release-notes/flink-1.10.html). |
| * [Release notes for Flink 1.9](release-notes/flink-1.9.html). |
| * [Release notes for Flink 1.8](release-notes/flink-1.8.html). |
| * [Release notes for Flink 1.7](release-notes/flink-1.7.html). |
| * [Release notes for Flink 1.6](release-notes/flink-1.6.html). |
| * [Release notes for Flink 1.5](release-notes/flink-1.5.html). |
| |
| ## External Resources |
| |
| - **Flink Forward**: Talks from past conferences are available at the [Flink Forward](http://flink-forward.org/) website and on [YouTube](https://www.youtube.com/channel/UCY8_lgiZLZErZPF47a2hXMA). [Robust Stream Processing with Apache Flink](http://2016.flink-forward.org/kb_sessions/robust-stream-processing-with-apache-flink/) is a good place to start. |
| |
| - **Training**: The [training materials](https://training.ververica.com/) from Ververica include slides, exercises, and sample solutions. |
| |
| - **Blogs**: The [Apache Flink](https://flink.apache.org/blog/) and [Ververica](https://www.ververica.com/blog) blogs publish frequent, in-depth technical articles about Flink. |