Welcome to Our Website

HPE 개발자 커뮤니티 포털

원래 포스팅 정보:

"authorDisplayName": "Carol McDonald","publish": "2018-10-17T08:00:00.000Z","tags": "spark"

에서 이 블로그 게시물 우리는 내용을 소개하는 아파치 스파크의 역사를 탐험의 일부 지역에서는 그 특정 기능의 가장 보여 약속입니다. 우리는 다른 핵심 기술과의 관계에 대해 논의하고 몇 가지 도움이되는 포인터를 제공 할 것입니다.

스파크 2 와.,0 이상 버전에서는 Spark 를보다 쉽게 프로그래밍하고 더 빨리 실행할 수 있도록 큰 개선 사항이 구현되었습니다.

Apache Spark 란 무엇입니까?

Spark 는 광범위한 상황에서 사용하기에 적합한 범용 분산 데이터 처리 엔진입니다. Spark core 데이터 처리 엔진 위에 sql,기계 학습,그래프 계산 및 스트림 처리를위한 라이브러리가 있으며 응용 프로그램에서 함께 사용할 수 있습니다. Spark 에서 지원하는 프로그래밍 언어에는 Java,Python,Scala 및 R 이 포함됩니다., 응용 프로그램 개발자 및 데이터 과학자들은 통합 스파크는 응용 프로그램을 빠르게 쿼리,분석 및 변환 데이터에서는 규모입니다. 작업에 가장 자주와 연관된 불꽃을 포함 ETL 및 SQL 배치 작업에 걸쳐 큰 데이터의 처리는 스트리밍 데이터에서는 센서,IoT,또는 금융시스템,기계 학습 작업입니다.

역사

을 이해하기 위해서 불꽃,그것을 이해하는 데 도움이 됩니다., 하기 전에 스파크가 있었 MapReduce,탄력성 있는 분산 처리 프레임워크 활성화 구글이 지수 폭발 볼륨의 콘텐츠에 웹에서 큰 클러스터의 상품이 서버에 있습니다.

가 있었 3 핵심 개념을 구글은 전략이다:

  1. 배포 데이터의:데이터 파일을 업로드로 클러스터,그것은 분으로 덩어리라는 데이터 블록 사이에 데이터 노드와 복제에서 클러스터입니다.,
  2. 분포를 계산:사용자 지정도 함수는 프로세스를 키/값 쌍을 생성하는 설정의 중간 키/값 쌍으로 줄이는 기능을 합병하는 모든 중간에 관련된 값과 같은 중간 키입니다. 프로그램을 사용하여 이 기능적인 스타일이 자동으로 병렬화하고 실행에 큰 클러스터의 상품에서 기계는 다음과 같은 방법으로.

    • mapping 프로세스를 실행에 각 할당된 데이터 노드 작업에서만 그것의 구획에서 데이터의 분산 파일입니다.,
    • 결과를 매핑에서 프로세스로 전송되는 흡진기에는 과정”이라는 셔플을 정렬”:키/값 쌍으로서 매퍼에 의해 정렬 키,분할의 수에 의해 흡진기,그리고 다음 네트워크를 통해 전송 및 기록 열쇠”를 정렬 순서 파일에서”흡진기 노드입니다.
    • 흡진기 프로세스를 실행에 할당된 노드 및에서 작동합 그것의 하위 집합의 데이터를(그 순서 파일)입니다. 감속기 프로세스의 출력은 출력 파일에 기록됩니다.,
  3. 용인 결함을 모두 데이터와 계산할 수 있는 오류 허용에 의해 실패를 통해 다른 노드를 위한 데이터 또는 처리합니다.

MapReduce 단어 개수 실행 예:

일부 반복적인 알고리즘과 같은 PageRank,이는 구글이 사용하여 순위에 있는 웹사이트들을 검색 엔진 결과,필요 여러 체인 MapReduce 작업을 함께하는 원인이 많이 읽기와 쓰기의 디스크에 있습니다., 할 때 여러 MapReduce 작업이 함께 묶여,각각에 대해 MapReduce 작업에서 데이터를 읽어들이며 분산 파일 블록으로도 프로세스,기록에서 읽고 SequenceFile 사이에서,그리고 다음에 기록된 출력에서 파일을 흡진기는 과정입니다.

일년 후에는 구글 게시 백지를 설명하는 MapReduce framework(2004),덕은 절단 및 마이크 Cafarella 만든 아파치 하둡니다.,

Apache Spark™는 2009 년 캘리포니아 버클리 대학의 AMPLab 내에서 프로젝트로 생활을 시작했습니다. Spark 는 2013 년 Apache Software Foundation 의 인큐베이팅 된 프로젝트가되었으며,2014 년 초에 재단의 최상위 프로젝트 중 하나가되기 위해 추진되었습니다. 스파크는 현재 중 하나 가장 활동적인 프로젝트 관리,기초과 지역 사회는 성장했 프로젝트의 주위에 모두 포함 다작의 개인 참가자와 잘 투자한 기업 후원자와 같은 Databricks,IBM,중국의 Huawei.,

목표의 불꽃 프로젝트를 유지하는 혜택의 MapReduce 의 확장 가능,분산,결함 관대한 처리 프레임워크는 동안,그것을 더 효율적이고 쉽게 사용할 수 있습니다. 의 장점은 불꽃을 통해 MapReduce 습니다:

  • 스파크 실행하는 훨씬 더 빠르게 캐싱하여 메모리에 데이터는 여러한 병렬 운영하는 반면,MapReduce 포함 더 읽기와 쓰기에서 디스크에 있습니다.
  • Spark 는 jvm 프로세스 내부에서 다중 스레드 작업을 실행하는 반면 MapReduce 는 더 무거운 무게 JVM 프로세스로 실행됩니다., 이를 통해 Spark 는 더 빠른 시작,더 나은 병렬 처리 및 더 나은 CPU 사용률을 제공합니다.
  • Spark 는 MapReduce 보다 풍부한 함수형 프로그래밍 모델을 제공합니다.
  • Spark 는 반복 알고리즘으로 분산 된 데이터의 병렬 처리에 특히 유용합니다.

는 방법에는 불꽃 응용 프로그램이 실행되는 클러스터에

아래의 그림은 불꽃 응용 프로그램에서 실행되는 클러스터입니다.,

  • Spark 응용 프로그램은 드라이버 프로그램의 SparkSession 개체에 의해 조정 된 독립적 인 프로세스로 실행됩니다.
  • 리소스 또는 클러스터 관리자 할당하는 작업이 근로자들,하나의 작업별 파티션입니다.
  • 작업에 적용됩의 작업 단위에서 데이터 집합 파티션 및 출력에 새로운 파티션합니다. 반복 알고리즘은 데이터에 반복적으로 연산을 적용하기 때문에 반복 전반에 걸쳐 데이터 세트를 캐싱함으로써 이점을 얻습니다.,
  • 결과는 드라이버 응용 프로그램으로 다시 전송되거나 디스크에 저장할 수 있습니다.,anager 포함되어 있으로 불꽃
  • 아파치 메소–일반적인 클러스터의 관리자는 실행할 수도 있습니다 Hadoop 응용 프로그램
  • Apache Hadoop 사 리소스 관리자에 Hadoop2
  • Kubernetes–오픈 소스에 대한 시스템 자동화하는 배포,확장, 하고 관리하는 컨테이너 응용 프로그램

스파크 또는 로컬 모드 운전자 및 집행인으로 실행 스레드에서 대신 컴퓨터의 클러스터 유용한 응용 프로그램을 개발하에서 개인용 컴퓨터입니다.,

스파크는 무엇을합니까?

스파크가 처리할 수 있는 여러한 데이터 시간에,분산에서의 클러스터의 수천을 협력하는 실제 또는 가상 서버에 있습니다. 광범위한 개발자 라이브러리 및 Api 세트를 보유하고 있으며 Java,Python,R 및 Scala 와 같은 언어를 지원하므로 유연성이 뛰어나 다양한 사용 사례에 적합합니다., 스파크는 자주 사용되는 데이터와 같은 저장 HPE Ezmeral 데이터 직물,Hadoop 의 HDFS,아마존의 S3,인기있는 NoSQL 와 같은 데이터베이스 HP Ezmeral 데이터 직물,아파치는 기본 컨테이너를 지정해야 합니다.Apache 카산드라,그리고 MongoDB 고 다른 상점과 같은 HPE Ezmeral 데이터 직물 및 Apache 카프카.

일반적인 사용 사례는 다음과 같습니다.

스트림 처리:에서 로그 파일을 센서 데이터,어플리케이션 개발자들은 점점에 대처하는”스트림”의 데이터입니다., 이 데이터는 종종 동시에 여러 소스에서 꾸준한 스트림에 도착합니다. 그것은 확실히 실현을 저장하는 이러한 데이터 스트림에서 디스크 및 그들을 분석하는 소급하여,그것은 때때로 재치 있는 중요한 프로세스에 따라 행동 데이터 도착한다. 데이터 스트림의 금융 거래와 관련된,예를 들어 처리할 수 있습에 실시간 확인 및 거절–잠재적으로 부정 트랜잭션이 있습니다.

Machine learning:으로 데이터 볼륨이 증가함에 따라,기계 학습 방식을 더욱 가능하고 점점 더 정확합니다., 소프트웨어 훈련될 수 있을 식별하고 그에 따라 행동 트리거 이내에 잘 이해할 수 있는 데이터 세트를 적용하기 전에 동일한 솔루션을 알려지지 않은 새로운 데이터입니다. 불꽃의 능력을 메모리에 데이터를 저장하고 빠르게 실행할 반복되는 쿼리를 그것을 좋은 선택을 위한 교육 기계 학습 알고리즘이 있습니다. 실행하는 광범위하게 유사한 쿼리,또 다시 규모로,시간을 크게 줄여 필요한 설정을 통해 갈 가능한 솔루션을 찾기 위해 가장 효율적인 알고리즘이 있습니다.,

대화형 분석:실행하기보다 미리 정의한 쿼리를 만드는 정적인 대시보드의 판매 또는 생산 라인 생산 또는 주식 가격,사업 분석가 및 데이터 과학자들은 탐구하고 싶은 자신의 데이터 질문을 물어보고,그 결과,그리고 다음 중 하나를 변경하는 초기 질문 약간 또는 드릴링 깊은 결과입니다. 이 대화식 쿼리 프로세스에는 Spark 와 같은 시스템이 필요하며 신속하게 대응하고 적응할 수 있습니다.,

데이터를 통합에서 생성된 데이터를 다른 시스템에서는 비즈니스는 거의 깨끗한 또는 충분히 일치하는 간단하고 쉽게 결합에 대한 보고 또는 분석합니다. 추출,변환,그리고 로드(ETL)프로세스가 자주 사용하는 데에서 다른 시스템에 깨끗하고 표준화시킨 다음으로 별도의 시스템에 대한 분석입니다. Spark(및 Hadoop)는이 ETL 프로세스에 필요한 비용과 시간을 줄이기 위해 점점 더 많이 사용되고 있습니다.

누가 스파크를 사용합니까?,

넓은 범위의 기술 공급업체가 빠르게 지원 스파크,기회의 인식을 확장하는 그들의 기존하는 빅 데이터 제품 영역으로는 불꽃 제공합 진짜 가치는 등 대한 쿼리를 and machine learning. 잘 알려진 와 같은 회사는 IBM 및 웨이 투자한 중요한 금액에서 기술,그리고 증가는 벤처 기업의 구축하는 기업에 의존한 전체 또는 일부에 불꽃이 있습니다., 예를 들어,2013 년 Spark 생성을 담당하는 Berkeley 팀은 Spark 에 의해 구동되는 호스팅 된 엔드 투 엔드 데이터 플랫폼을 제공하는 Databricks 를 설립했습니다. 회사는 아니라 투자,을 받$247 만에 네 개의 라운드에 대한 투자의 2013,2014,2016 년 및 2017,Databricks 직원이 지속적인 역할을 하고에서 가장 오픈 소스 코드는 아파치 Spark 프로젝트입니다.,

주요 Hadoop 공급업체함에 담았,Cloudera,쿼리하고 결과,모든 이동을 지원하는 털실 기반의 불꽃과 함께 기존 제품,그리고 각각의 공급업체 추가하기 위해 노력하고 있습니다 값에 대한 그것의 고객입니다. 다른 곳에서는 IBM,Huawei 등이 모두 Apache Spark 에 상당한 투자를하여 자체 제품에 통합하고 개선 및 확장을 Apache 프로젝트에 다시 기여했습니다., 웹 기반 기업,다음과 같 Chinese search engine Baidu,전자상거래 운영 Taobao,그리고 회사 소셜 네트워킹 텐센트,모든 실행 스파크-기반에서 운영 규모,텐센트와의 800 만 활성 사용자는 소문에 생성 700TB 의 데이터에 하루 처리를 위해 클러스터에서 이상의 8,000 컴퓨팅 노드입니다.

에서 그뿐만 아니라 웹 기반의 거인,제약 회사는 노바티스에 따라 달라집하는 시간을 줄일 수를 얻을하는 데 필요한 모델링 데이터의 손으로 연구자는다는 것을 보장하는 동시에 윤리적 및 계약상 안전은 유지됩니다.,Spark 를 별도로 설정하는 방법은 무엇입니까?

는 많은 이유가 있을 선택한 스파크,하지만 다음과 같은 세 가지 주요:

단순:불꽃의 기능에 액세스할 수 있을 통해 설정한 풍부한 Api,모두를 위해 특별히 설계된 상호작용으로 쉽고 빠르게 데이터를 축적해 왔습니다. 이러한 Api 를 사용하여 문서화하고 구조화된 방법으로는 간단한 데이터에 대한 과학자들과 응용 프로그램 개발자를 신속하게 점화하여 작동합니다.

속도:Spark 는 메모리와 디스크에서 모두 작동하는 속도를 위해 설계되었습니다., Spark 를 사용하여 Databricks 의 팀은 2014 년 Daytona GraySort 벤치마킹 챌린지(https://spark.apache.org/news/spark-wins-daytona-gray-sort-100tb-benchmark.html)에서 샌디에고 캘리포니아 대학(University of California,san Diego)의 팀과 1 위를 차지했습니다. 전을 포함한 처리 정적 데이터를 설정한다;Databricks 팀이 처리할 수 있 100 테라바이트에 저장된 데이터의 솔리드 스테이트 드라이브에서 그냥 23 분 소요,이전 우승했 72 분를 사용하여 하둡고 다른 클러스터 구성. Spark 는 메모리에 저장된 데이터의 대화식 쿼리를 지원할 때 더 잘 수행 할 수 있습니다., 이러한 상황에서 스파크는 Hadoop 의 MapReduce 보다 100 배 빠를 수 있다는 주장이 있습니다.

지원:Spark 는 Java,Python,R 및 Scala 를 포함한 다양한 프로그래밍 언어를 지원합니다. 스파크에 대한 지원을 포함한 통합 다수의 주요 스토리지 솔루션 Hadoop 생태계 및 넘어,포함하여 HP Ezmeral 데이터 직물(파일 시스템,데이터베이스 및 이벤트 저장),Hadoop(HDFS),아파치는 기본 컨테이너를 지정해야 합니다.,그리고 아파치 카산드라입니다. 또한 Apache Spark 커뮤니티는 크고 활동적이며 국제적입니다., Databricks,IBM 및 모든 주요 Hadoop 공급 업체를 포함한 증가하는 상용 공급 업체 세트는 Spark 기반 솔루션에 대한 포괄적 인 지원을 제공합니다.

데이터의 힘 파이프라인

의 스파크의 힘에있는 그것의 능력을 결합하는 매우 다양한 기술과 함께 프로세스로,하나의 일관된다. 외부 스파크,개별 작업을 선택하는 데이터를 변환하는 다양한 방법으로 데이터,그리고 분석하는 변환된 결과를 수 있습 쉽게 필요한 시리즈의 별도의 처리 프레임워크와 같은 아파치 작업을 실행., 스파크,다른 한편으로는,수있는 기능을 제공합을 결합한 이러한 함께,경계를 넘어서는 사이에 일괄 처리,스트리밍하고,대화에서 워크플로 있는 방법으로 사용자 생산성을 높이고 있습니다.

스파크 작업을 수행 여러 작업을 연속적으로 메모리에만 흘리를 때는 디스크에 필요한 메모리에 의해 제한 사항이 있습니다. 스파크의 관리를 단순화합이 서로 다른 프로세스를 제공하고,통합된 전체 데이터는 파이프라인을 구성하는 것이 더 쉽게 실행할 수 있도록 보장합니다., 에서 사용할 경우 등의 ETL,이러한 파이프라인할 수 있습이 매우 풍부하고 복잡한,결합의 큰 숫자를 입력하고 다양한 범위의 처리 단계로 통합된 전체는 지속적으로 제공하여 원하는 결과입니다.피>

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다