계단식(소프트웨어)
Cascading (software)안정적 해제 | 3.3.0 / 2018년 3월 24일;[1] 전 |
---|---|
릴리스 미리 보기 | 4.0-wip-120 / 2021년 3월 27일;[2] 전 |
리포지토리 | github |
기록 위치 | 자바 |
면허증 | Apache 라이센스 v2[3] |
웹사이트 | www |
캐스캐이딩은 Apache Hadoop 및 Apache Flink용 소프트웨어 추상화 계층이다.Cascading은 JVM 기반 언어(Java, JRuby, Clojure 등)를 사용하여 Hadoop 클러스터에서 복잡한 데이터 처리 워크플로우를 생성 및 실행하는 데 사용되며, MapReduce 작업의 기본 복잡성을 숨긴다.그것은 오픈 소스로서 Apache License에 의해 이용 가능하다.Drived, Inc.에서 상업적 지원을 받을 수 있다.[4]
Cascading은 원래 Chris Wensel이 저술한 것으로, 후에 Concurrent, Inc.를 설립하여 Drived로 다시 브랜드화되었다.[5]캐스캐이딩은 커뮤니티에[citation needed] 의해 활발하게 개발되고 있으며 많은 추가 모듈들이 이용 가능하다.[6]
건축
Cascading을 사용하려면 Apache Hadoop도 설치해야 하며 Hadoop 작업 .jar에는 Cascading .jars가 포함되어 있어야 한다.캐스캐이딩은 데이터 처리 API, 통합 API, 프로세스 플래너, 프로세스 스케줄러로 구성된다.
Cascading은 Hadoop의 확장성을 활용하지만 기본 맵에서 벗어나 표준 데이터 처리 작업을 추상화하고 작업을 줄인다.[7][better source needed]개발자들은 필요한 프로세스를 설명하는 .jar 파일을 만들기 위해 Cascading을 사용한다.이것은 '소스-파이프-싱크' 패러다임을 따르며, 소스에서 데이터를 캡처하고, 데이터 분석 프로세스를 수행하는 재사용 가능한 '파이프'를 따르며, 그 결과는 출력 파일이나 '싱크'에 저장된다.파이프는 그들이 처리할 데이터로부터 독립적으로 생성된다.일단 데이터 소스와 싱크대에 묶이면 '흐름'이라고 한다.이러한 흐름은 '캐스케이드'로 그룹화할 수 있으며, 프로세스 스케줄러는 모든 종속성이 충족될 때까지 주어진 흐름이 실행되지 않도록 보장할 것이다.파이프와 흐름은 서로 다른 비즈니스 요구를 지원하기 위해 재사용 및 재주문할 수 있다.[8]
개발자는 JVM 기반 언어로 코드를 작성하고 MapReduce를 배울 필요가 없다.결과 프로그램은 다른 Java 애플리케이션과 마찬가지로 회귀 테스트 및 외부 애플리케이션과 통합될 수 있다.[9]
캐스캐이딩은 광고 타겟팅, 로그 파일 분석, 생물정보학, 머신러닝, 예측 분석, 웹 콘텐츠 마이닝, ETL(Extract, Transform and Load) 애플리케이션 등에 가장 많이 사용된다.[10]
캐스캐이딩의 사용
캐스캐이딩은 2011년 SD타임스가 생물정보학 관련[12][unreliable source?] 주요 오픈소스 프로젝트로 선정한 가장 강력한 [11][unreliable source?]5대 하둡 프로젝트 중 하나로 꼽혔으며 Tom White의 Hadoop: A Frinal Guide에 포함되어 있다.[13]이 프로젝트는 하둡[14][15][16][17] 및 Apache Spark와[18] 함께 작업하는 데 유용한 도구로 프레젠테이션, 회의 진행 및 Hadoop 사용자 그룹 미팅에서도 언급되어 왔다.
- 아마존 웹 서비스의 멀티툴은 캐스캐이딩을 이용하여 개발되었다.[19]
- Amazon CloudFront용 LogAnalyzer는 Cascading을 사용하여 개발되었다.[20]
- BackType[21] - 소셜 분석 플랫폼
- Etsy[22] - 마켓플레이스
- FlightCaster[23] - 비행 지연 예측
- 이온 플럭스[24] - DNA 시퀀스 데이터 분석
- RapLeep[25] - 개인화 및 권장 시스템
- 레이저피시[26] - 디지털 광고
Cascading 기반의 도메인별 언어
- PyCascading[27] - Twitter, GitHub에서 이용 가능
- 캐스캐이딩쥬비[28] - GitHub에서 Greggoire Marabout에 의해 개발됨
- Cascalog[29] - Nathan Marz가 작성했으며 GitHub에서 사용 가능
- Scalding[30] - Cascading용 Scala API.Cascading/Scalding 코드를 스파크로 쉽게 전환Twitter로 GitHub에서 이용 가능
참조
- ^ "Releases · Cascading/cascading". github.com. Retrieved 2021-03-29.
- ^ "Releases · cwensel/cascading". github.com. Retrieved 2021-03-29.
- ^ "cascading/LICENSE.txt at 3.3 · Cascading/cascading". github.com. Retrieved 2021-03-29.
- ^ 계단식 지원 페이지
- ^ 모빌드, 주식회사
- ^ "Cascading modules". Archived from the original on 2011-08-11. Retrieved 2011-08-22.
- ^ 하둡과 함께 Cascading의 사용에 대한 Etsy의 블로그 게시물
- ^ 2011년 2월 6일 웨이백 머신에 보관된 Cascading 사용자 가이드
- ^ 추진 제품 페이지
- ^ 구동 홈 페이지
- ^ Handy, Alex (1 June 2011). "The top five most powerful Hadoop projects". SD Times. Retrieved 26 October 2013.
- ^ Taylor, Ronald (21 December 2010). "An overview of the Hadoop/MapReduce/HBase framework and its current applications in bioinformatics". BioMed Central. Springer Science+Business Media. Retrieved 26 October 2013.
- ^ 화이트, 톰 "하둡:최종 가이드," 오레일리 미디어, 2010 페이지 539 – 549.
- ^ 나단, 파코 (위키피디아: Paco Nathan), 2010년 7월 19일 SV Cloud Computing Meetup을 위한 "Geting Started on Hadoop" 프레젠테이션.
- ^ "Julio Guijarro, Steve Loughran and Paolo Castagna, "Hadoop and beyond," HP Labs, Bristol UK, 2008" (PDF). Archived from the original (PDF) on 2011-10-01. Retrieved 2011-08-22.
- ^ 크로스, 브래드포드 "Flightcaster"HUG," 2010년 3월 26일 Bay Area Hadoop Users' 그룹에서 프레젠테이션
- ^ Curtin, Christopher, "NoSQL, Hadoop and Cascading", 2010년 6월.
- ^ "Using Cascading to Build Data-centric Applications on Spark". Spark Summit 2014. 2014-05-07. Retrieved 2016-03-25.
- ^ 캐스캐이딩AWS의 멀티툴
- ^ LogAnalyzer for Amazon CloudFront
- ^ 2011년 8월 25일 웨이백 머신에 보관된 BackType 블로그
- ^ 하둡과 함께 Cascading의 사용에 대한 Etsy의 블로그 게시물
- ^ 플라이트캐스터
- ^ 2011년 10월 23일 웨이백 기계에 보관된 이온 플럭스
- ^ RapLeep 블로그 2011년 2월 1일 웨이백 머신에 보관
- ^ 라이저피시
- ^ "PyCascading is no longer maintained". GitHub. 17 September 2021.
- ^ 캐스캐이딩찌르비
- ^ 캐스칼로그
- ^ 데임