--- title: Flink Overview --- Apache Flink is a platform for efficient, distributed, general-purpose data processing. It features powerful programming abstractions in Java and Scala, a high-performance runtime, and automatic program optimization. It has native support for iterations, incremental iterations, and programs consisting of large DAGs of operations. If you quickly want to try out the system, please look at one of the available quickstarts. For a thorough introduction of the Flink API please refer to the [Programming Guide](programming_guide.html). ## Stack This is an overview of Flink's stack. Click on any component to go to the respective documentation. Stack Graph API: Gelly Table DataSet API (Java/Scala) DataStream API (Java/Scala) Optimizer Flink Runtime Local Remote Embedded YARN Tez ## Download This documentation is for the next upcoming major release version {{ site.FLINK_VERSION_THIS_SHORT }} of Apache Flink. You can download the latest pre-built snapshot version from the [downloads]({{ site.FLINK_DOWNLOAD_URL }}#latest) page of the [project website]({{ site.FLINK_WEBSITE_URL }}). The Scala API uses Scala {{ site.FLINK_SCALA_VERSION_SHORT }}. Please make sure to use a compatible version.