리소스들을 사용자들이 프로비저닝하지 않더라도 사용 가능하며, 자동으로 증가하거나 감소시켜 유연하게 제공
빅데이터의 기초는 분산 시스템
대규모 데이터 처리를 위한 맵리듀스 아키텍처
데이터 사이즈가 커질 때, 여러 대의 컴퓨터를 연결해서 병렬로 처리
하둡 에코시스템
맵리듀스 아키텍처를 오픈소스로 구현한 것
기존의 온 프레미스에서의 빅데이터 플랫폼 구축
OSS : Open Source Software
Cloud Dataproc은 관리형 Hadoop
GCP Hadoop 및 Spart/Hive/Pig를 관리형으로 빠르고 쉽게 실행하는 방법 즉, Hadoop 및 Spart/Hive/Pig를 지원하는 관리형 서비스
클러스터 생성 시간 평균 90초 이하
작업 실행 중에서도 클러스터 규모 확장 및 축소 가능
빠른 속도로 원래 일(목적)에 집중할 수 있도록
온프레미스 Hadoop 작업을 클라우드로 손쉽게 마이그레이션 할 수 있음
Cloud Storage에 저장된 로그 등의 데이터를 빠르게 분석하고, 평균 90초 이내에 클러스터를 생성하고, 즉시 삭제 가능
Spark/Spart SQL을 그대로 사용하여 데이터 마이닝 및 분석을 빠르게 수행
Spark 머신러닝 라이브러리(MLilb)를 사용하여 분류 알고리즘을 수행
Data Pipeline 예시 (Streaming & Batch)
데이터가 원래 들어있는 소스 시스템에서부터 데이터를 받아서 데이터를 목적에 맞게 가공하고 어디에 저장 후 활용, 분석 (ETL : 추출(Extract), 변환(Transform), 적재(Load))
데이터를 받아와서 전달 - 데이터를 분석 하기 전에 데이터 정제 - 데이터 분석하기 위해 저장 - 데이터 분석 - 데이터 활용
확장 가능하고 안정적인 메시징인 Cloud Pub/Sub
메시지를 주고 받을 수 있는 완전 관리형 실시간 메시징 서비스
다대다 비동기 메시징 지원 애플리케이션 구성요소에서 주제에 대한 push/pull 구독 작성
검증된 Google 기술 활용하여 대규모 서비스에도 안정적으로 서비스 (Gmail, 검색 서비스에 사용)
자동으로 리소스를 확보하므로 확장성이 좋음
Cloud Dataflow와 통합하여 비동기식 전달 데이터 처리 파이프라인 구현
Dataflow, 사물 인터넷, 마케팅 분석의 데이터 수집을 위한 구성 요소를 받아서 서비스와 연결 가능
Dataflow 스트리밍의 기반 가능
클라우드 기반 애플리케이션의 푸시 알림 가능
Google Cloud Platform에 속하는 여러 애플리케이션 연결(Compute Engine과 App Engine 사이에 push/pull) 가능
Cloud Dataflow는 ELT을 제공하는 관리형 데이터 파이프라인
Compute Engine 인스턴스를 사용하여 데이터 처리 설정한 max 값 내에서 클러스터 크기 자동 조절이 가능하며, 자동화된 확장 제공, 인스턴스 프로비저닝이 필요하지 않음
코드를 한 번만 작성하여 일괄 처리 및 스트리밍 - 변환 기반 프로그래밍 모델
작업이 오래 걸릴 경우, 자동으로 오래걸리는 작업을 다른 노드에 리밸런싱해서 전체적으로 빠르게 처리하도록 함
Dataflow 파이프라인으로 변환을 통해 소스의 데이터가 이동
ELT(추출/변환/로드) 파이프라인으로 데이터 이동, 필터링, 다변화 및 형성 가능
데이터 분석 - 일괄 연산 또는 스트리밍을 사용한 연속 연산 가능
오케스트레이션 - 외부 서비스를 포함하여 여러 서비스를 조율하는 파이프라인 작성 가능
Cloud Storage, Cloud Pub/Sub, BigQuery, Bigtable 등의 GCP 서비스와 통합 가능 - 오픈소스 Java 및 Python SDK
완전 관리형 데이터 웨어하우스 BigQuery
방대한 데이터세트(PB : 페타바이트)에 대한 실시간에 가까운 대화형 분석 제공
SQL 구문(SQL 2011)을 사용하는 쿼리
사전에 인프라를 프로비저닝 할 필요 없으며, 클러스터 유지보수가 필요하지 않음
Google의 고성능 인프라에서 실행됨
컴퓨팅과 스토리지를 분리한 후, 페타비트급 네트워크로 연결됨
사용된 스토리지 및 처리에 대해서만 지불
장기 데이터 스토리지 자동 할인
BigQuery의 조회 속도가 빠른 이유는 Column 기반으로 데이터가 저장되는 Columnar Storage이기 때문임
Row 기반의 RDB, Column 기반의 BigQuery
Google Cloud에서 머신러닝을 적용하는 방식
방대한 데이터셋을 가지고 학습을 시켜 모델을 만들어내고, 모델에 새로운 데이터를 입력했을 때의 결과를 예측
Training (훈련) / Prediction (예측)
보고 듣고 이해하는 앱을 지원하는 Machine Learning API
구글에서 미리 사전에 학습시켜 놓은 API이므로 예측하는 것에만 사용
Cloud Vision API 1) 단순한 REST API로 이미지 분석 - 로고 감지, 라벨 인식 등 2) Cloud Vision API에서 제공하는 기능 - 이미지에서 유용한 정보 확보, 부적절한 콘텐츠 감지, 정서 분석, 텍스트 추출
Cloud Speech API 1) Speech-to-text (음성인식) / Text-to-speech (음성합성) 지원 2) 80개 이상 언어 및 변형어 인식 3) 실시간으로 텍스트 반환 기능 4) 소음이 심한 환경에서도 높은 정확도 제공 5) 모든 기기에서 액세스 6) Google 머신러닝 기반 7) 다양한 목소리 타입 지원
Cloud Natural Language API 1) 머신러닝 모델을 사용하여 텍스트의 구조와 의미를 파악 2) 텍스트 문서, 뉴스 기사, 블로그 글에서 언급된 사안에 관한 정보를 추출 3) 요청 시 업로드된 텍스트를 분석하거나 Cloud Storage와 통합
Cloud Translation API 1) 수많은 언어 쌍 사이에서 임의 문자열 번역 2) 문서의 언어를 프로그래매틱 방식으로 감지 3) 수십 개의 언어 지원
Cloud Video Intelligence API 1) 라벨 감지 가능, 영상 속 엔티티 추출 가능 2) 동영상 콘텐츠에 특수효과 적용 3) 장면 변화 감지 4) 부적절한 콘텐츠 신고 5) 다양한 동영상 형식 지원
Cloud AutoML
특화된 커스텀 모델을 생성하기 위해 콘솔에서 제공하는 UI로 최적의 모델을 만들어 줌
데이터의 대상에 따라 Vision, CVideo, Natural Language, Tables, Translation 제품 제공
Custom Training with code
준비된 데이터와 ML 전문가가 만들어낸 코드를 같이 넣고 학습을 시킨 후, 학습 결과물로 나온 모델을 예측하도록 환경 제공
예측 분석을 위한 BigQuery 머신러닝
BigQuery에 저장된 데이터를 옮길 필요 없이 머신러닝 이니셔티브 실행할 수 있으며, 학습된 모델이 BigQuery에 저장
BigQuery에서 SQL 모델을 반복 실행하여 개발 속도를 높임
일반 머신러닝 업무 및 초매개변수 조정 (Hyperparameter tuning) 작업 자동화