AWS의 빅 데이터 – 빅 데이터를위한 스마트 솔루션



이 문서는 AWS가 빅 데이터를 어떻게 현명하게 처리하는지 이해하는 데 도움이됩니다. 또한 AWS가 어떻게 빅 데이터 문제를 쉽게 해결할 수 있는지 보여줍니다.

빅 데이터의 개념은 단순히 새로운 것이 아니라 어디에나 있습니다. 빅 데이터의 효과는 비즈니스에서 과학, 정부에서 예술에 이르기까지 모든 곳에 있습니다. 더 나은 동반자는 없습니다 빅 데이터를 처리하고 분석합니다. 이 기사에서는 AWS가 빅 데이터의 문제를 해결하는 방법과 제가 다룰 지침은 다음과 같습니다.

빅 데이터 란?

빅 데이터 특성





빅 데이터는 향상된 통찰력, 의사 결정 및 프로세스 자동화를 가능하게하는 비용 효율적이고 혁신적인 형태의 정보 처리를 요구하는 대용량, 고속 및 / 또는 매우 다양한 정보 자산으로 간주 할 수 있습니다.

빅 데이터는 빅 데이터의 특성을 정의하는 5 개의 중요한 V로 구성되어 있습니다. AWS로 이동하기 전에 이러한 사항에 대해 논의하겠습니다.



AWS 란 무엇입니까?

다양한 클라우드 컴퓨팅 제품 및 서비스로 구성됩니다. 수익성이 높은 Amazon 사업부는 보안과 함께 서버, 스토리지, 네트워킹, 원격 컴퓨팅, 이메일, 모바일 개발을 제공합니다. 더욱이. AWS는 Amazon의 가상 머신 서비스 인 EC2와 Amazon의 스토리지 시스템 인 S3의 두 가지 주요 제품으로 구성됩니다. 컴퓨팅 세계에서 매우 크고 현재 가장 가까운 경쟁자보다 최소 10 배 크기이며 Netflix 및 Instagram과 같은 인기 웹 사이트를 호스팅합니다.

.

AWS는 전 세계 12 개의 글로벌 리전으로 나뉘며 각 리 전에는 서버가있는 여러 가용 영역이 있습니다.이러한 서비스 지역은 사용자가 서비스에 지리적 제한을 설정할 수 있도록 분할 할뿐만 아니라 데이터가 보관되는 물리적 위치를 다양 화하여 보안을 제공합니다.



AWS에서 빅 데이터를 사용해야하는 이유

다양한 도메인의 과학자, 개발자 및 기타 기술 애호가들은 AWS를 활용하여 빅 데이터 분석을 수행하고 증가하는 디지털 정보 대의 중요한 과제를 해결하고 있습니다. AWS는 비용을 대폭 절감하고 수요를 충족하도록 확장하며 혁신 속도를 높여 빅 데이터를 관리하는 데 도움이되는 클라우드 컴퓨팅 서비스 포트폴리오를 제공합니다.

Amazon Web Services는 완전히 통합 된 포트폴리오 클라우드 컴퓨팅 서비스의. 또한 빅 데이터 애플리케이션을 구축, 보호 및 배포하는 데 도움이됩니다. 또한 AWS를 사용하면 조달 할 하드웨어와 유지 관리 및 확장을위한 인프라가 필요하지 않습니다. 이로 인해 새로운 통찰력을 발견하는 데 리소스를 집중할 수 있습니다.새로운 기능이 지속적으로 추가되기 때문에 장기적인 투자 약정없이 항상 최신 기술을 활용할 수 있습니다.

AWS는 어떻게 빅 데이터 문제를 해결할 수 있습니까?

빅 데이터 용 AWS 솔루션

AWS에는 모든 개발 및 배포 목적을위한 수많은 솔루션이 있습니다. 또한 데이터 과학 및 빅 데이터 분야에서 AWS는 빅 데이터 처리의 다양한 측면에서 최근 개발을 내놓았습니다. 도구로 이동하기 전에 AWS가 솔루션을 제공 할 수있는 빅 데이터의 다양한 측면을 이해하겠습니다.

  1. 데이터 수집
    원시 데이터 (트랜잭션, 로그, 모바일 장치 등)를 수집하는 것은 많은 조직이 빅 데이터를 처리 할 때 직면하는 첫 번째 과제입니다. 좋은 빅 데이터 플랫폼은이 단계를 더 쉽게 만들어 개발자가 실시간에서 배치에 이르기까지 어떤 속도로든 구조화 된 데이터에서 구조화되지 않은 데이터까지 다양한 데이터를 수집 할 수 있도록합니다.

  2. 데이터 저장
    모든 빅 데이터 플랫폼에는 작업을 처리하기 전이나 후에 데이터를 저장할 안전하고 확장 가능하며 내구성있는 저장소가 필요합니다. 특정 요구 사항에 따라 전송중인 데이터를위한 임시 저장소가 필요할 수도 있습니다.

  3. 데이터 처리
    이것은 데이터 변환이 원시 상태에서 소비 가능한 형식으로 발생하는 단계입니다. 일반적으로 정렬, 집계, 결합 및 고급 기능 및 알고리즘 수행을 통해 수행됩니다. 결과 데이터 세트는 추가 처리를 위해 스토리지를 거치거나 비즈니스 인텔리전스 및 데이터 시각화 도구를 통해 사용할 수 있습니다.

  4. 심상

    빅 데이터는 데이터 자산에서 높은 가치와 실행 가능한 통찰력을 얻는 것입니다. 이상적으로는 데이터를 빠르고 쉽게 데이터 세트를 탐색 할 수있는 셀프 서비스 비즈니스 인텔리전스와 민첩한 데이터 시각화 도구를 통해 이해 관계자가 사용할 수 있습니다.

빅 데이터 용 AWS 도구

이전 섹션에서는 AWS가 솔루션을 제공 할 수있는 빅 데이터의 필드를 살펴 보았습니다. 또한 AWS는 고객이 빅 데이터 기능을 사용할 수 있도록 다양한 도구와 서비스를 보유하고 있습니다.

빅 데이터 처리와 관련된 다양한 단계를 처리하기 위해 AWS에서 제공하는 다양한 솔루션을 살펴 보겠습니다.

음식물 섭취

  1. 키네 시스

    Amazon Kinesis Firehose는 실시간 스트리밍 데이터를 Amazon S3에 직접 제공하기위한 완전 관리 형 서비스입니다. Kinesis Firehose는 스트리밍 데이터의 볼륨과 처리량에 맞게 자동으로 확장되며 지속적인 관리가 필요하지 않습니다. Amazon S3에 저장하기 전에 스트리밍 데이터를 변환하도록 Kinesis Firehose를 구성 할 수 있습니다.

  2. 스노볼
    당신이 사용할 수있는 AWS Snowball 온 프레미스 스토리지 플랫폼 및 Hadoop 클러스터에서 S3 버킷으로 대량 데이터를 안전하고 효율적으로 마이그레이션합니다. AWS Management Console에서 작업을 생성하면 Snowball 어플라이언스가 자동으로 생성됩니다. Snowball이 도착하면 로컬 네트워크에 연결하고 온 프레미스 데이터 원본에 Snowball 클라이언트를 설치 한 다음 Snowball 클라이언트를 사용하여 파일 디렉터리를 선택하고 Snowball 디바이스로 전송합니다.

저장

  1. 아마존 S3

아마존 S3 데이터 액세스를위한 대기 시간이 밀리 초인 안전하고 확장 성이 뛰어나며 내구성이 뛰어난 개체 스토리지입니다. S3는 웹 사이트 및 모바일 앱, 기업 애플리케이션, IoT 센서 또는 장치의 데이터 등 어디서나 모든 유형의 데이터를 저장할 수 있습니다. 또한 타의 추종을 불허하는 가용성으로 모든 양의 데이터를 저장 및 검색 할 수 있으며, 99.999999999 % (11 개의 9) 내구성을 제공하도록 처음부터 구축되었습니다.

2. AWS Glue

Glue는 데이터 레이크의 데이터를 검색 할 수 있도록 데이터 카탈로그를 제공하는 완전 관리 형 서비스입니다. 또한 분석을 위해 데이터를 준비하기 위해 추출, 변환 및로드 (ETL)를 수행 할 수 있습니다. 또한 내장 된 데이터 카탈로그는 모든 데이터 자산에 대한 영구 메타 데이터 저장소와 같으므로 모든 데이터를 단일보기에서 검색하고 쿼리 할 수 ​​있습니다.

가공

  1. EMR
    Spark 및 Hadoop을 사용한 빅 데이터 처리의 경우 Amazon EMR 방대한 양의 데이터를 쉽고 빠르며 비용 효율적으로 처리 할 수있는 관리 형 서비스를 제공합니다. 또한 EMR은 다음을 포함한 19 개의 다른 오픈 소스 프로젝트를 지원합니다. 하둡 , 불꽃 , 및 또한 데이터 엔지니어링, 데이터 과학 개발 및 협업을위한 관리 형 EMR 노트북과 함께 제공됩니다.

  2. Redshift
    데이터웨어 하우징의 경우 아마존 Redshift는 페타 바이트 규모의 구조화 된 데이터에 대해 복잡한 분석 쿼리를 실행할 수있는 기능을 제공합니다. 또한 Redshift 스펙트럼 불필요한 데이터 이동없이 S3에있는 엑사 바이트의 정형 또는 비정형 데이터에 대해 SQL 쿼리를 직접 실행합니다.

시각화

  1. Amazon QuickSight

    C ++의 피보나치 시퀀스

    대시 보드 및 시각화를 위해 Amazon Quicksight는 빠른 클라우드 기반 비즈니스 분석 서비스를 제공합니다. 멋진 시각화와 풍부한 대시 보드를 쉽게 구축 할 수 있습니다. 또한 모든 브라우저 또는 모바일 장치에서 액세스 할 수 있습니다.

데모 – 호주에서 멸종 위기에 처한 식물과 동물의 데이터 분석.

이 데모에서는 호주 주와 준주에서 멸종 위기에 처한 식물 및 동물 종의 샘플 데이터를 사용합니다. 여기서는 EMR 클러스터를 만들고 다단계 Apache Hive 작업을 실행하도록 구성합니다. EMR 클러스터에는 Apache Hive가 설치됩니다. 이 클러스터는 EMRFS를 파일 시스템으로 사용하므로 데이터 입력 및 출력 위치가 S3 버킷에 매핑됩니다. 또한 클러스터는 로그 파일을 저장하는 데 동일한 S3 버킷을 사용합니다.

이제 샘플 데이터 세트를 처리하기 위해 클러스터에 여러 EMR 단계를 생성합니다. 여기서 이러한 각 단계는 Hive 스크립트를 실행하고 최종 출력은 S3 버킷에 저장됩니다. 이러한 단계는 MapReduce 로그를 생성하며, 이는 Hive 명령이 런타임에 MapReduce 작업으로 변환되기 때문입니다. 각 단계의 로그 파일은 생성되는 컨테이너에서 집계됩니다.

샘플 데이터

이 사용 사례에 대한 샘플 데이터 세트는 호주 정부의 오픈 데이터 웹 사이트 . 이 데이터 세트는 호주의 여러 주와 영토에서 멸종 위기에 처한 동물 및 식물 종에 관한 것입니다. 이 데이터 세트 및 CSV 파일의 필드에 대한 설명을보고 다운로드 할 수 있습니다. 여기 .

처리 단계

여기서 첫 번째 EMR 작업 단계는 S3의 기본 소스 파일에 대한 스키마로 Hive 테이블을 생성하는 것입니다. 두 번째 작업 단계에서는 이제 데이터에 대해 성공적인 쿼리를 실행합니다. 마찬가지로 세 번째 및 네 번째 쿼리를 실행합니다.

이 네 단계를 한 시간에 몇 번 반복하여 다단계 배치 작업의 연속 실행을 시뮬레이션합니다. 그러나 실제 시나리오에서는 일반적으로 각 배치 실행 간의 시간 차이가 훨씬 더 클 수 있습니다. 연속 실행 사이의 작은 시간 차이는 테스트를 가속화하기위한 것입니다.

S3 버킷 및 폴더

EMR 클러스터를 생성하기 전에 여기에서 파일을 호스팅 할 S3 버킷을 생성해야했습니다. 이 예에서는이 버킷의 이름을 'arvind1-bucket'으로 지정합니다.이 버킷 아래의 폴더는 S3 용 AWS 콘솔에 아래에 나와 있습니다.

  • 입력 폴더에는 샘플 데이터가 있습니다.

  • 스크립트 폴더에는 EMR 작업 단계에 대한 Hive 스크립트 파일이 포함되어 있습니다.

  • 출력 폴더에는 분명히 Hive 프로그램 출력이 저장됩니다.

  • EMR 클러스터는 logs 폴더를 사용하여 로그 파일을 저장합니다.

EMR 작업 단계를위한 Hive 스크립트

1.이 작업 단계는 Hive 스크립트를 실행합니다.외부 Hive 테이블을 만듭니다. 이 표는 기본 CSV 데이터 파일의 테이블 형식 스키마를 설명합니다. 이를위한 스크립트는 다음과 같습니다.

CREATE EXTERNAL TABLE`threatened_species` (`scientific name` string,`common name` string,`current science name` string,`threatened status` string,`act` string,`nsw` string,`nt` string,`qld` 문자열, 'sa'문자열, 'tas'문자열, 'vic'문자열, 'wa'문자열, 'aci'문자열, 'cki'문자열, 'ci'문자열, 'csi'문자열, 'jbt'문자열, 'nfi' string,`hmi` string,`aat` string,`cma` string,`listed sprat taxonid` bigint,`current sprat taxonid` bigint,`kingdom` string,`class` string,`profile` string,`date extract ' string,`nsl name` string,`family` string,`genus` string,`species` string,`infraspecific rank` string,`infraspecies` string,`species author` string,`infraspecies author` string) 행 형식 DELIMITED FIELDS TERMINATED BY ','STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat'OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'LOCATION 's3 : // arvind1-bucket / script /'

2.이 작업 단계는 뉴 사우스 웨일즈 (NSW) 주에서 멸종 위기에 처한 상위 5 개 종을 계산하는 쿼리를 실행합니다. Hive 쿼리 파일 이름은 endangeredSpeciesNSW.q 다음과 같이 표시됩니다.

SELECT 종, COUNT (nsw) AS number_of_endangered_species from threatened_species WHERE (nsw = 'Yes'OR nsw = 'Endangered') AND 'threatened status'= 'Endangered'GROUP BY species HAVING COUNT (nsw)> 1 ORDER BY number_of_endangered_species DESC LIMIT 5

삼.이 작업 단계는 오스트레일리아의 각 식물 군에 대해 멸종 위기에 처한 식물 종의 총 수를 계산하는 쿼리를 실행합니다. Hive 쿼리 파일 이름은endangeredPlantSpecies.q아래에 표시됩니다.

SELECT family, COUNT (species) AS number_of_endangered_species from threatened_species2 WHERE kingdom = 'Plantae'AND 'threatened status'= 'Endangered'GROUP BY family

4.이 단계는 호주 퀸즐랜드 주에서 멸종 된 동물 종의 학명을 나열합니다. 스크립트 파일이 호출됩니다. extinctAnimalsQLD.q 아래에 표시됩니다.

왕국 = '동물'AND (qld = '예'OR qld = '멸종') AND '위협 상태'= '멸종'에서 '공통 이름', '과학적 이름'을 threatened_species에서 선택하십시오.

로그 집계

여기에서는 S3 버킷의 scripts 폴더에 logAggregation.json이라는 JSON 파일도 업로드했습니다. 이 파일은 YARN 로그 파일을 집계하는 데 사용됩니다. 로그 집계는 클러스터가 시작될 때 yarn-site.xml 구성 파일에 구성됩니다. logAggregation.json 파일의 내용은 다음과 같습니다.

파이썬 def __init __ (self)

[{ '분류': 'yarn-site', '속성': { 'yarn.log-aggregation-enable': 'true', 'yarn.log-aggregation.retain-seconds': '-1', 'yarn') .nodemanager.remote-app-log-dir”:“s3 : // arvind1-bucket / logs”}}]

S3 버킷을 생성하고 데이터와 스크립트 파일을 각각의 폴더에 복사 한 후 이제 EMR 클러스터를 설정할 차례입니다. 다음 스냅 샷은 대부분 기본 설정으로 클러스터를 만드는 과정을 설명합니다.

EMR 클러스터 설정

첫 번째 이미지에서는 AWS 콘솔에서 클러스터를 구성하기 위해 Hive를 포함하여 EMR에서 권장하는 모든 애플리케이션을 유지했습니다. Hive 메타 데이터를 저장하기 위해 AWS Glue를 사용할 필요가 없으며 현재 작업 단계를 추가하지도 않습니다. 그러나 Hive에 대한 소프트웨어 설정을 추가해야합니다. 여기에서이 필드에 로그 집계 JSON 파일의 경로를 지정하는 방법을주의 깊게 관찰해야합니다.

다음 단계에서는 모든 기본 설정을 유지했습니다. 테스트를 위해 클러스터에는 마스터 노드 1 개와 코어 노드 2 개가 있습니다. 여기에있는 각 노드는 m3.xlarge 인스턴스이며 10GB 루트 볼륨이 있습니다. 다음 단계에서 클러스터 arvind1-cluster의 이름을 지정하고 로그 파일에 대한 사용자 지정 s3 위치를 지정합니다.

마지막으로 클러스터의 마스터 노드에 액세스 할 목적으로 EC2 키 페어를 지정했습니다. EMR, EC2 인스턴스 프로필 및 자동 확장 옵션에 대한 기본 IAM 역할에는 변경 사항이 없습니다. 또한 마스터 및 코어 노드는 기본적으로 사용 가능한 보안 그룹을 사용하고 있습니다. 일반적으로 이것은 EMR 클러스터의 기본 설정입니다. 모든 준비가 완료되면 클러스터는 아래와 같이 '대기'상태가됩니다.

Hive 작업 단계 제출

그런 다음 SSH 액세스를 허용해야합니다.

  1. Amazon EMR 콘솔을 엽니 다. https://console.aws.amazon.com/elasticmapreduce/ .
  2. 고르다 클러스터 .
  3. 선택 이름 클러스터의.
  4. 아래에 보안 및 액세스 선택 마스터 용 보안 그룹 링크.
  5. 고르다 ElasticMapReduce- 마스터 목록에서.
  6. 고르다 인바운드 , 편집하다 .
  7. 다음 설정으로 규칙을 찾고 엑스 아이콘을 삭제하려면 :
    • 유형 SSH
    • 포트 22
    • 출처 사용자 지정 0.0.0.0/0
  8. 규칙 목록의 맨 아래로 스크롤하여 규칙 추가 .
  9. 에 대한 유형 , 고르다 SSH . 이것은 자동으로 들어갑니다 TCP ...에 대한 실험 계획안 22 ...에 대한 포트 범위 .
  10. 소스의 경우 내 IP 그러면 클라이언트 컴퓨터의 IP 주소가 소스 주소로 자동 추가됩니다. 또는 다음 범위를 추가 할 수 있습니다. 커스텀 신뢰할 수있는 클라이언트 IP 주소를 선택하고 규칙 추가 다른 클라이언트에 대한 추가 규칙을 만듭니다. 많은 네트워크 환경에서 IP 주소를 동적으로 할당하므로 신뢰할 수있는 클라이언트의 IP 주소를 업데이트하기 위해 보안 그룹 규칙을 주기적으로 편집해야 할 수 있습니다.
  11. 고르다 저장 .
  12. 선택적으로 ElasticMapReduce- 슬레이브 목록에서 위의 단계를 반복하여 SSH 클라이언트가 신뢰할 수있는 클라이언트의 코어 및 작업 노드에 액세스 할 수 있도록합니다.

EMR 클러스터가 실행 중이므로 4 가지 작업 단계를 추가했습니다. 다음은 EMR이 차례로 실행되는 단계입니다. 다음 이미지는 AWS EMR 콘솔의 단계를 보여줍니다.

네 단계를 추가하면이 단계의 상태를 완료로 확인할 수 있습니다. 이러한 단계의 실행에 문제가 있어도 이러한 경우 이러한 단계의 로그 파일을 사용하여 해결할 수 있습니다.

이 글은 AWS의 빅 데이터에 대한이 기사의 제 편입니다. 여기서 설명한 모든 내용을 이해 하셨기를 바랍니다.

AWS에서이 빅 데이터와 관련이있는 경우 Edureka의 라이브 및 강사 진행 과정을 확인하십시오. , 업계 실무자들이 공동 제작했습니다.

질문이 있으십니까? 이 AWS에서 Java 웹 애플리케이션을 배포하는 방법의 주석 섹션에 언급 해 주시면 다시 연락 드리겠습니다.