Apache Flink : 스트림 및 일괄 데이터 처리를위한 차세대 빅 데이터 분석 프레임 워크



이 블로그에서 Apache Flink 및 Flink 클러스터 설정에 대해 자세히 알아보십시오. Flink는 실시간 및 일괄 처리를 지원하며 빅 데이터 분석을위한 필수 빅 데이터 기술입니다.

Apache Flink는 분산 스트림 및 일괄 데이터 처리를위한 오픈 소스 플랫폼입니다. Windows, Mac OS 및 Linux OS에서 실행할 수 있습니다. 이 블로그 게시물에서는 로컬에서 Flink 클러스터를 설정하는 방법에 대해 설명합니다. 여러면에서 Spark와 유사합니다. Apache Spark와 같은 Graph 및 Machine Learning 처리 용 API가 있습니다.하지만 Apache Flink와 Apache Spark는 정확히 동일하지 않습니다.





Flink 클러스터를 설정하려면 시스템에 java 7.x 이상이 설치되어 있어야합니다. CentOS (Linux)에 Hadoop-2.2.0을 설치했기 때문에 Hadoop 2.x와 호환되는 Flink 패키지를 다운로드했습니다. 아래 명령을 실행하여 Flink 패키지를 다운로드하십시오.

명령: wget http://archive.apache.org/dist/flink/flink-1.0.0/flink-1.0.0-bin-hadoop2-scala_2.10.tgz



Command-Apache-Flink

flink 디렉토리를 얻으려면 파일의 압축을 풉니 다.

명령: tar -xvf 다운로드 /flink-1.0.0-bin-hadoop2-scala_2.10.tgz



명령: ls

.bashrc 파일에 Flink 환경 변수를 추가합니다.

명령: sudo gedit .bashrc

.bashrc 파일의 변경 사항이 활성화되도록 아래 명령을 실행해야합니다.

명령: 소스 .bashrc

이제 flink 디렉토리로 이동하여 클러스터를 로컬로 시작하십시오.

명령: cd hefty-1.0.0

명령: bin / start-local.sh

클러스터를 시작하면 새 데몬 JobManager가 실행중인 것을 볼 수 있습니다.

명령: jps

브라우저를 열고 http : // localhost : 8081로 이동하여 Apache Flink 웹 UI를 확인합니다.

C 대 C ++ 대 자바

Apache Flink를 사용하여 간단한 단어 개수 예제를 실행 해 보겠습니다.

예제를 실행하기 전에 시스템에 netcat을 설치하십시오 (sudo yum install nc).

이제 새 터미널에서 아래 명령을 실행하십시오.

명령: nc -lk 9000

flink 터미널에서 아래 주어진 명령을 실행하십시오. 이 명령은 스트리밍 된 데이터를 입력으로 사용하고 스트리밍 된 데이터에 대해 단어 수 연산을 수행하는 프로그램을 실행합니다.

명령: bin / flink 실행 예제 /streaming/SocketTextStreamWordCount.jar –hostname localhost –port 9000

웹 UI에서 실행 상태의 작업을 볼 수 있습니다.

새 터미널에서 아래 명령을 실행하면 스트리밍 및 처리 된 데이터가 인쇄됩니다.

명령: tail -f 로그 /flink-*-jobmanager-*.out

자바 예제의 스레드 동기화

이제 netcat을 시작한 터미널로 이동하여 무언가를 입력하십시오.

netcat 터미널에 데이터를 입력 한 후 키워드에서 Enter 버튼을 누르는 순간 해당 데이터에 wordcount 연산이 적용되고 밀리 초 이내에 여기 (flink의 jobmanager 로그)에 출력이 인쇄됩니다!

매우 짧은 시간 내에 데이터가 스트리밍, 처리 및 인쇄됩니다.

Apache Flink에 대해 배울 것이 훨씬 더 많습니다. 다가오는 블로그에서 다른 Flink 주제를 다룰 것입니다.

질문이 있으십니까? 댓글 섹션에서 언급하시면 다시 연락 드리겠습니다.

관련 게시물:

Apache Falcon : Hadoop 생태계를위한 새로운 데이터 관리 플랫폼