
Apache Flink CVE-2020-17519용 익스플로잇으로, 버전 1.11.2 및 이전 버전의 디렉터리 트래버설 취약점을 대상으로 하여 서버에서 무단 파일 읽기를 가능하게 합니다.
Apache Flink는 강력한 스트림 및 배치 처리 기능을 갖춘 오픈 소스 스트림 처리 프레임워크입니다.
Flink에 대해 자세히 알아보려면 https://flink.apache.org/를 방문하세요.
배치 처리와 데이터 스트리밍 프로그램을 모두 지원하는 스트리밍 우선 런타임
Java 및 Scala용의 우아하고 유연한 API
매우 높은 처리량과 낮은 이벤트 지연 시간을 동시에 지원하는 런타임
Dataflow Model 기반의 DataStream API에서 이벤트 시간(event time) 및 순서가 어긋난(out-of-order) 처리를 지원
다양한 시간 의미론(이벤트 시간, 처리 시간)에 걸친 유연한 윈도잉(시간, 개수, 세션, 사용자 정의 트리거)
정확히 한 번(exactly-once) 처리 보장을 통한 내결함성
스트리밍 프로그램의 자연스러운 백프레셔(back-pressure)
그래프 처리(배치), 머신러닝(배치), 복합 이벤트 처리(스트리밍)를 위한 라이브러리
DataSet(배치) API에서 반복 프로그램(BSP)을 위한 내장 지원
인메모리 및 아웃오브코어 데이터 처리 알고리즘 간의 효율적이고 견고한 전환을 위한 사용자 정의 메모리 관리
Apache Hadoop MapReduce용 호환성 레이어
YARN, HDFS, HBase 및 Apache Hadoop 생태계의 기타 구성 요소와의 통합
case class WordWithCount(word: String, count: Long)
val text = env.socketTextStream(host, port, '\n')
val windowCounts = text.flatMap { w => w.split("\\s") }
.map { w => WordWithCount(w, 1) }
.keyBy("word")
.timeWindow(Time.seconds(5))
.sum("count")
windowCounts.print()
case class WordWithCount(word: String, count: Long)
val text = env.readTextFile(path)
val counts = text.flatMap { w => w.split("\\s") }
.map { w => WordWithCount(w, 1) }
.groupBy("word")
.sum("count")
counts.writeAsCsv(outputPath)
Flink 빌드를 위한 사전 요구 사항:
git clone https://github.com/apache/flink.git
cd flink
mvn clean package -DskipTests # 이 작업은 최대 10분이 소요됩니다.
이제 Flink가 build-target에 설치됩니다.
참고: Maven 3.3.x는 Flink를 빌드할 수 있지만 특정 종속성을 제대로 shade하지 못합니다. Maven 3.1.1은 라이브러리를 올바르게 생성합니다. Java 8로 단위 테스트를 빌드하려면 Java 8u51 이상을 사용하여 PowerMock 러너를 사용하는 단위 테스트 실패를 방지하세요.
Flink 커미터들은 IntelliJ IDEA를 사용하여 Flink 코드베이스를 개발합니다. Scala 코드가 포함된 프로젝트를 개발할 때는 IntelliJ IDEA를 권장합니다.
IDE의 최소 요구 사항은 다음과 같습니다:
IntelliJ IDE는 Maven을 기본적으로 지원하며 Scala 개발을 위한 플러그인을 제공합니다.
자세한 내용은 Setting up IntelliJ 가이드를 확인하세요.
참고: 경험상 이 설정은 Flink에서 작동하지 않습니다. Scala IDE 3.0.3에 번들된 이전 Eclipse 버전의 결함 또는 Scala IDE 4.4.1에 번들된 Scala 버전과의 버전 비호환성 때문입니다.
대신 IntelliJ를 사용하는 것을 권장합니다 (위 참조)
주저하지 말고 문의하세요!
도움이 필요하면 메일링 리스트에서 개발자와 커뮤니티에 연락하세요.
Flink에서 버그를 발견했다면 이슈를 등록하세요.
Apache Flink의 문서는 웹사이트 https://flink.apache.org 또는
소스 코드의 docs/ 디렉터리에 있습니다.
이 프로젝트는 활발한 오픈 소스 프로젝트입니다. 시스템을 사용하거나 기여하려는 사람들을 항상 환영합니다. 자신의 기술에 맞는 구현 작업을 찾고 있다면 연락해 주세요. 이 문서는 Apache Flink에 기여하는 방법을 설명합니다.
Apache Flink는 The Apache Software Foundation (ASF)의 오픈 소스 프로젝트입니다. Apache Flink 프로젝트는 Stratosphere 연구 프로젝트에서 시작되었습니다.