-
OverviewFlink/Concepts 2024. 4. 21. 13:51
https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/concepts/overview/
Overview
Concepts # The Hands-on Training explains the basic concepts of stateful and timely stream processing that underlie Flink’s APIs, and provides examples of how these mechanisms are used in applications. Stateful stream processing is introduced in the cont
nightlies.apache.org
1.17 documnet 기반으로 정리했습니다.
Flink API
- flink는 Streaming / Batch 처리를 위한 다양한 level의 추상화 제공
- Stateful Stream Processing
- stateful 하고 timely한 streaming processing 제공, 해당 부분은 Process Function을 통한 DataStream API에 포함되어 있음
- 다양한 프로세스 처리, 일관되고 fault tolerant state 사용할 수 있도록 기능 제공
- event time, processing time callbacks들을 등록 할 수 있어서 프로그램이 정교한 계산을 할 수 있도록 도와줌
- DataStream (bounded/unbounded data) / DataSet API (bounded data set) <Core API>
- 실질적으로 많이 사용하는 level
- specified transformations, joins, aggregations, windows, state를 사용할 수 있는 기능을 제공
- Table API
- Table 전용적인 도메인 전용 언어(declarative DSL)
- table은 동적으로 변형 가능
- 스키마 사용이 가능하고 select, project, join, group-by, aggregate 등등의 명령어 사용 가능
- 정확한 코드의 동작보다는 선언적으로 명령한 logical한 명령어 수행에 중점되어 있음
- Core API 보다는 작업의 자유도가 떨어지지만 사용하기 간결
- 수행 전 최적화 작업이 있음
- 테이블과 DataStream / DataSet 간에 원활하게 변환가능해서 혼합해서 유용하게 사용 가능
- SQL
- Table API 와 유사 하지만 프로그램을 SQL 쿼리 식으로 나타냄
- SQL 쿼리는 Table API 에 정의된 테이블에 대해 실행될 수 있음
'Flink > Concepts' 카테고리의 다른 글
Stateful Stream Processing (0) 2024.04.21