본문 바로가기

데이터엔지니어링

(44)
[7주차] 데이터 웨어하우스 관리와 고급 SQL과 BI 대시보드 (4) 🙂 Snowflake✔ 특징스토리지와 컴퓨팅 인프라가 별도로 설정되는 가변 비용 모델Redshift 고정비용처럼 노드 수를 조정할 필요가 없고 distkey 등의 최적화 불필요SQL 기반으로 빅데이터 저장, 처리, 분석 가능비구조화 데이터 처리와 ML 기능도 제공CSV, JSON, Avro, Parquet 등과 같은 다양한 데이터 포맷 지원S3, GC 클라우드 스토리지, Azure Blog Storage도 지원배치 데이터 중심이지만 실시간 데이터 처리 지원Time Travel: 과거 데이터 쿼리 기능으로 트렌드 분석 용이웹 콘솔 외에도 Python API를 통한 관리/제어 가능ODBC/JDBC 연결도 지원자체 스토리지 이외에도 클라우드 스토리지를 외부 테이블로 사용 가능대표 고객: Siemens, Fl..
[7주차] 데이터 웨어하우스 관리와 고급 SQL과 BI 대시보드 (3) 🙂 Redshift 고급기능✔ Redshift 권한과 보안🍦 테이블 권한 설정사용자별로 테이블 권한 설정 X역할(Role) 혹은 그룹(Group) 별로 스키마별 접근 권한을 주는 것이 일반적RBAC(Role Based Access Control)가 새로운 트렌드Inclusive: 여러 역할에 속한 사용자의 경우는 각 역할의 권한 일괄 부여개인정보와 관련한 테이블에는 별도 스키마 설정analytics_authorsGRANT ALL ON SCHEMA analytics TO GROUP analytics_authors;GRANT ALL ON ALL TABLES IN SCHEMA analytics TO GROUP analytics_authors;GRANT ALL ON SCHEMA adhoc TO GROUP a..
[7주차] 데이터 웨어하우스 관리와 고급 SQL과 BI 대시보드 (2) 🙂 Redshift✔ Redshift 특징AWS 지원 데이터 웨어하우스 (DW)2 PB의 데이터까지 처리 가능: 최소 160GB로 시작해서 점진적으로 용량 증감 가능OLAP: 응답속도가 빠르지 않기 때문에 프로덕션 DB로 사용불가컬럼 기반 스토리지레코드 별로 저장하는 것이 아니라 컬럼별로 저장컬럼별 압축이 가능하며 컬럼을 추가/삭제가 빠름벌크 업데이트 지원: 레코드가 들어있는 파일을 S3로 복사 후 COPY 커맨드로 Redshift로 일괄 복사고정 용량/비용 SQL 엔진. 가변 비용 옵션도 제공 (Redshift Serverless)데이터 공유 기능(Datashare): 다른 AWS 계정과 특정 데이터 공유 가능. (Snowflake의 기능)다른 DW처럼 PK Uniqueness를 보장하지 않음🍦 S..
[7주차] 데이터 웨어하우스 관리와 고급 SQL과 BI 대시보드 (1) 🙂 다양한 데이터 웨어하우스 옵션✔ 데이터의 흐름과 데이터 팀의 발전 단계   🍦 데이터 웨어하우스 (DW)회사가 필요한 모든 데이터를 모아놓은 중앙 데이터베이스 (SQL 데이터베이스)데이터의 크기에 맞게 어떤 데이터베이스를 사용할 지 선택AWS Redshift, 구글 클라우드의 BigQuery스노우플레이크(Snowflake) - 클라우드와 상관 없음오픈소스 기반의 하둡(Hive/Presto) / 스팍(Spark)모두 SQL 지원프로덕션용 데이터베이스와 별개의 데이터베이스여야 함.DW의 구축이 진정한 데이터 조직이 되는 첫 번째 스텝🍦 ETL (Extract, Transform, Load)다른 곳에 존재하는 데이터를 가져다가 DW에 로드하는 작업Extract: 외부 데이터 소스에서 데이터를 추출Tr..
[6주차] AWS 클라우드(4) 🙂 Docker✔ Docker 개요 https://aws.amazon.com/ko/docker Docker란 무엇입니까? | AWSQ: Docker로 어떤 작업을 할 수 있습니까? Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 신속하게 배포 및 확장할 수 있으며 코드가 문제없이 실행될 것임을 확신할 수 있습니다. 이는 Docaws.amazon.com🍦 Docker 설치리눅스 설치https://docs.docker.com/engine/install/ubuntu/MAC 설치brew install --cask docker✔ Docker image 이미지 (Image)이미지는 컨테이너를 생성할 때 필요한 요소로 컨테이너의 목적에 맞는 바이너리와 의존성 설치.여러 개의 계층으로 된 바이너리 파일로..
[6주차] AWS 클라우드(3) 🙂 IAM✔ IAM: Identity and Access ManagementAWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스IAM을 사용하여 리소스를 사용하도록 인증(로그인) 및 권한 부여(권한 있음)된 대상을 제어.AWS 계정을 생성할 때는 해당 계정의 모든 AWS 서비스 및 리소스에 대한 완전한 액세스 권한이 있는 단일 로그인 ID로 시작.이 자격 증명은 AWS 계정 루트 사용자라고 하며, 계정을 생성할 때 사용한 이메일 주소와 암호로 로그인하여 액세스.일상적인 작업에 루트 사용자를 사용하지 않을 것을 강력히 권장.🍦 IAM 특징AWS 계정에 대한 공유세분화된 권한Amazon EC2에서 실행되는 애플리케이션을 위한 보안 AWS 리소스 액세스멀티 팩터 인증 (MFA)ID 페더레이션보..
[6주차] AWS 클라우드(2) 🙂 DB✔ RDSDB 인스턴스는 클라우드에서 실행하는 격리된 DB환경 DB 인스턴스에는 여러 사용자가 만든 데이터베이스가 포함될 수 있으며,독립 실행형 DB 인스턴스에 액세스할 때 사용하는 도구 및 애플리케이션을 사용해 액세스할 수 있다.AWS 명령줄 도구, Amazon RDS API 작업 또는 AWS Management Console을 사용해 간단히 DB 인스턴스를 만들고 수정 가능.직접 시스템 로그인 불가.Serverless가 아님.✔ Document DBMongoDB API 워크로드의 완전 관리 및 유연한 확장이 가능한 문서전용(Document) DBAmazon Document DB에서는 스토리지 및 컴퓨팅이 분리되어 각각을 독립적으로 조정.개발자는 데이터 크기에 관계없이 지연 시간이 짧은 읽기 ..
[6주차] AWS 클라우드 (1) 🙂 클라우드 서비스✔ 클라우드 컴퓨팅클라우드 컴퓨팅 IT 리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼 비용을 지불하는 방식물리적 데이터 센터와 서버를 구입, 소유 및 유지 관리하는 대신 필요에 따라 기술 서비스에 액세스민첩성탄력성비용절감On demand관리 용이성✔ 클라우드 유형On premises (own server) : 네트워크부터 전체 개인화IAAS (virtual machines) : OS 부터 개인화PAAS (app service) : 데이터 부터 개인화SAAS (O365) : 모든 서비스를 제공받음✔ 클라우드 서비스 제품아마존 AWSMS Azure구글 GCP오라클 OCIIBM 클라우드알리바바 클라우드KT 클라우드네이버 NCP🙂 AWS 기본 용어🍦 가상화물리적 HW를 보다 효율..