Apache Beam이란 무엇입니까? [닫은]

Viswa 02/08/2016. 2 answers, 11.776 views
apache-beam

나는 아파치 포스트를 거치며 빔이라는 새로운 용어를 발견했다. 정확히 아파치 빔이 무엇인지 설명 할 수 있습니까? 나는 google을 시도했지만 명확한 답을 얻을 수 없었다.

2 Comments
3 Joel 02/10/2016
가장 가까운 것은 Spark (Batch and Streaming)입니다. Apache Beam (이전의 Google DataFlow)과 spark 처리 cloud.google.com/dataflow/blog/...를 비교하면 다음과 같습니다.

2 Answers


Frances 01/10/2017.

Apache Beam 은 일괄 처리 및 스트리밍 데이터 병렬 처리 파이프 라인을 정의하고 실행하는 오픈 소스 통합 모델이며 파이프 라인을 구성하기위한 언어 별 SDK 세트와이를 실행하기위한 런타임 별 Runners를 제공합니다.

History: Beam의 모델은 MapReduce , FlumeJavaMillwheel을 비롯한 여러 가지 내부 Google 데이터 처리 프로젝트에서 발전했습니다. 이 모델은 원래 " 데이터 흐름 모델 "로 알려져 있었으며 처음에는 Google Cloud Dataflow 로 구현되었습니다 .GitHub의 파이프 라인 작성 용 Java SDK 와 Google Cloud Platform에서 실행되는 완전히 관리되는 서비스가 여기에 포함됩니다. 커뮤니티의 다른 사람들은 Spark Runner , Flink Runner , Scala SDK 등의 확장 기능을 작성하기 시작했습니다. 2016 년 1 월 Google과 여러 파트너가 Apache Beam (통합 Batch + strEAM 처리)이라는 이름으로 Apache Flow Assembler Proposal 으로 Dataflow Programming Model 및 SDK 부분을 제출했습니다. Apache Beam은 2016 년 12 월 인큐베이션을 졸업했습니다 .

빔 모델 학습을위한 추가 자료 :

2 comments
Minudika 02/28/2016
안녕하세요, 나는 GSOC 2016에 대한 sugessted되었습니다 issues.apache.org/jira/browse/ZEPPELIN-682이 문제를 따르고 있었다. 아파치 빔 익숙해지기 위해 몇 가지 리소스를 주실 수 있습니까? 감사
Pierre Mage 02/28/2016
@Minudika Apache Beam Java SDK는 2016 년 3 월 ~ 5 월 전에 사용 가능하지 않으며 2016 년 여름 이전에 Python SDK를 사용할 수 없습니다. 아마 거기에서 시작해야합니다 : mail-archives.apache.org/mod_mbox/incubator-beam-dev/...

nealmcb 06/21/2017.

Apache Beam (Batch + strEAM)은 일괄 처리 및 스트리밍 데이터 처리를 수행하는 데 필요한 일련의 API 세트입니다. 아파치 인큐베이터 프로젝트를 통해 2016 년 Google (Cloudera 및 PayPal)이 오픈 소스를 제공했습니다.

데이터 흐름 / 빔 및 스파크 : 프로그래밍 모델 비교 - Cloud Dataflow 는 Beam API와 Apache Spark를 비교합니다. Apache Spark 는 현대적이고 유연한 API와 Hadoop 세계에 스트리밍 및 스트리밍을위한 최적화 기술 세트를 제공하는 데 큰 성공을 거두었습니다. 을 넘어서.

Beam은 Programming Model Comparison 에서 설명한대로 일괄 처리와 스트리밍 처리를 결합 할 때 종종 문제가되는 out-of-order processing 의 다양한 측면을 쉽게 설명 할 수있는 모델을 통해 한 걸음 더 나아가려고합니다.

특히, 비교를 인용하면 Dataflow 모델은보다 모듈화되고 강력하며 유지 관리가 간편하고 우아하고 효율적으로 처리되도록 설계되었습니다.

... 모든 데이터 처리 전문가가 파이프 라인을 만들 때 대답해야하는 네 가지 중요한 질문 :

  • 어떤 결과가 계산됩니까? 합계, 조인, 막대 그래프, 기계 학습 모델?
  • 이벤트 시간에 결과가 어디에서 계산됩니까? 원래 각 이벤트가 발생한 시간이 결과에 영향을 줍니까? 결과가 고정 창, 세션 또는 단일 글로벌 창에 집계됩니까?
  • 처리 시간에 결과가 구체화됩니까? 각 이벤트가 시스템 내에서 관찰되는 시간이 결과에 영향을 줍니까? 결과가 언제 나오나요? 데이터가 발전함에 따라 추측 적으로? 데이터가 늦게 도착하면 결과를 수정해야합니까? 이 중 일부 조합?
  • 결과의 세분화는 어떤 관계가 있습니까? 추가 데이터가 도착하고 결과가 바뀌면 독립적이며 구별 되는가?

Beam에 설명 된 파이프 라인은 Spark, Flink, Google의 Dataflow for the cloud 및 "직접"로컬 시스템 옵션을 포함한 다른 "런타임"에서 실행될 수 있습니다.

다양한 언어가 아키텍처에서 지원됩니다. 이제 Java SDK를 사용할 수 있습니다. Dataflow Python SDK가 릴리스에 가까워지고 있으며, 다른 것들은 Scala 등을 위해 구상되어 있습니다.

Apache Beam의 미러 소스를 참조하십시오.

Related questions

Hot questions

Language

Popular Tags