Scala, Java, Python, R API를 제공하는 대규모 데이터 처리를 위한 통합 분석 엔진입니다.
apache/flink
Apache Flink는 Java, Scala, Python, SQL API를 제공하는 상태 기반 스트림 및 배치 데이터 처리용 오픈 소스 프레임워크입니다.
- 스타
- 26,417
- 포크
- 14,065
- 열린 이슈
- 398
- 마지막 커밋
- 13시간 전
어떤 프로젝트인가요?
Apache Flink는 연속적인 이벤트 스트림과 유한한 데이터셋을 처리하는 데이터 파이프라인을 실행하기 위한 분산 처리 프레임워크입니다. 런타임에서 배치 처리를 스트리밍의 특수한 경우로 다루므로, 같은 엔진으로 두 가지 워크로드를 모두 처리합니다.
DataStream API는 이벤트 시간 처리와 순서가 뒤바뀐 이벤트 처리를 지원하며, 시간·개수·세션 또는 사용자 지정 트리거를 기준으로 유연하게 윈도우를 설정할 수 있습니다. 내결함성은 exactly-once 처리 보장을 기반으로 하며, 백프레셔는 스트리밍 작업 전체에 자연스럽게 전파됩니다.
Flink는 YARN 및 HDFS를 비롯한 Hadoop 생태계와 통합됩니다. Kafka, JDBC, Elasticsearch 등의 커넥터 대부분은 별도의 Apache 저장소에서 관리됩니다. 프로젝트는 Maven으로 빌드하며 Java 11, 17, 21을 지원합니다.
핵심 기능
- 01스트리밍을 우선으로 설계한 런타임으로 배치 작업도 실행
- 02DataStream API에서 이벤트 시간 처리 및 순서가 뒤바뀐 이벤트 처리 지원
- 03시간·개수·세션 또는 사용자 지정 트리거를 기준으로 유연한 윈도우 설정
- 04정확히 한 번(exactly-once) 처리하는 내결함성 보장
- 05Hadoop MapReduce 호환 계층 및 YARN, HDFS 통합
활용 사례
- 클릭스트림이나 센서 데이터와 같은 이벤트 스트림의 실시간 분석
- 데이터 웨어하우스나 검색 인덱스에 데이터를 공급하는 지속적 ETL 파이프라인
- 하나의 코드베이스를 공유하는 배치 및 스트리밍 작업
- 정확히 한 번 처리되는 결과가 필요한 상태 기반 이벤트 구동 애플리케이션
빠른 시작
- 1
저장소를 클론합니다
git clone https://github.com/apache/flink.git - 2
프로젝트 디렉터리로 이동합니다
cd flink - 3
Java 17용으로 Flink를 빌드합니다(기본값)
./mvnw clean package -DskipTests -Djdk17 -Pjava17-target
사용 전 알아둘 점
- 소스에서 빌드하는 데 약 10분이 걸리며 Maven 3.9.16과 버전 11, 17 또는 21의 JDK가 필요합니다.
- 대부분의 커넥터는 별도의 저장소로 이전되었으므로 개별적으로 추가해야 합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- flink은(는) 무엇인가요?
- Apache Flink는 Java, Scala, Python, SQL API를 제공하는 상태 기반 스트림 및 배치 데이터 처리용 오픈 소스 프레임워크입니다. Apache Flink는 연속적인 이벤트 스트림과 유한한 데이터셋을 처리하는 데이터 파이프라인을 실행하기 위한 분산 처리 프레임워크입니다. 런타임에서 배치 처리를 스트리밍의 특수한 경우로 다루므로, 같은 엔진으로 두 가지 워크로드를 모두 처리합니다.
- flink은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- flink은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- flink은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. flink의 마지막 커밋은 2026년 10월 22일입니다.
- flink은(는) 어디에 사용할 수 있나요?
- 클릭스트림이나 센서 데이터와 같은 이벤트 스트림의 실시간 분석 데이터 웨어하우스나 검색 인덱스에 데이터를 공급하는 지속적 ETL 파이프라인 하나의 코드베이스를 공유하는 배치 및 스트리밍 작업 정확히 한 번 처리되는 결과가 필요한 상태 기반 이벤트 구동 애플리케이션
- flink는 어떻게 설치하나요?
- 저장소를 클론합니다: git clone https://github.com/apache/flink.git 프로젝트 디렉터리로 이동합니다: cd flink Java 17용으로 Flink를 빌드합니다(기본값): ./mvnw clean package -DskipTests -Djdk17 -Pjava17-target
- flink은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/apache/flink
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Rust 엔진을 기반으로 스트림 처리, 실시간 분석, LLM 파이프라인과 RAG를 지원하는 Python ETL 프레임워크입니다.
Kafka, MQTT, NATS 등에서 들어오는 실시간 데이터를 대상으로 SQL, Python UDF, ML/LLM 처리를 실행하는 Rust 스트림 처리 엔진입니다.
스트리밍 및 배치 데이터의 지연 시간이 짧은 분석을 위한 실시간 분산 OLAP 데이터 저장소입니다.
Querybook은 노트북 스타일 쿼리 편집기와 테이블 메타데이터를 결합해 분석을 탐색하고 공유할 수 있는 빅데이터 IDE입니다.
Apache Parquet 파일을 열어 기본 SQL 쿼리를 실행할 수 있는 간단한 Windows 데스크톱 앱입니다.