2023/11 33

데이터 웨어하우스와 고급 SQL, BI 대시보드 (4)

Snowflake 2014년 클라우드 기반 데이터웨어하우스로 시작 지금은 데이터 클라우드라고 부를 수 있을 정도로 발전 글로벌 클라우드 (AWS, GCP, Azure) 위에서 모두 동작 - 멀티 클라우드 데이터 판매를 통한 매출을 가능하게 해주는 Data sharing/Marketplace 제공 ETL과 다양한 데이터 통합 기능을 제공 Snowflake 특징 스토리지와 컴퓨팅 인프라가 별도로 설정되는 가변 비용 모델 Redshift 고정비용처럼 노드 수를 조정할 필요가 없고 distkey 등의 최적화 불필요 SQL 기반으로 빅데이터 저장, 처리, 분석을 가능하게 해줌 비구조화된 데이터 처리와 머신러닝 기능도 제공 CSV, JSON, Avro, Parquet 등과 같은 다양한 데이터 포맷 지원 S3, GC..

데이터 웨어하우스와 고급 SQL, BI 대시보드 (3)

Redshift 권한과 보안 사용자별 테이블 권한 설정 일반적으로 사용자 별 테이블 별 권한 설정은 하지 않음 너무 복잡하고 실수의 가능성이 높음 역할 (Role) 혹은 그룹 (Group) 별로 스키마 별 접근 권한을 주느넋이 일반적 RBAC (Role Based Access Control)가 새로운 트렌드 : 그룹보다 더 편리 여러 역할에 속한 사용자의 경우는 각 역하릐 권한을 모두 갖게 됨 (Inclusive) 개인정보와 관련한 테이블들이라면 별도의 스키마 설정 극히 일부 사람만 속한 역할에 접근 권한을 설정 Column Level Security (컬럼 레벨 보안) 테이블 내의 특정 컬럼(들)을 특정 사용자나 특정 그룹/역할에만 접근 가능하게 하는 것 보통 개인정보 등에 해당하는 컬럼을 권한이 없는..

데이터 웨어하우스와 고급 SQL, BI 대시보드 (2)

Redshift AWS에서 지원하는 데이터 웨어하우스 서비스 2PB의 데이터까지 처리 가능 최소 160GB로 시작해 점진적으로 용량 증감 가능 Still OLAP 응답속도가 빠르지 않기 때문에 프로덕션 데이터베이스로 사용불가 컬림 기반 스토리지 레코드 별로 저장이 아닌 컬럼 별로 저장 컬럼 별 압축이 가능하며 컬럼을 추가하거나 삭제하는 것이 아주 빠름 벌크 업데이트 지원 레코드가 들어있는 파일을 S3로 복사 후 COPY 커맨드로 Redshift로 일괄 복사 고정 용량/비용 SQL 엔진 최근 가변 비용 옵션도 제공 (Redshift Serverless) 데이터 공유 기능 (Datashare) 다른 AWS 계정과 특정 데이터 공유 가능 다른 데이터 웨어하우스처럼 primary key uniqueness를 보..

데이터 웨어하우스와 고급 SQL, BI 대시보드 (1)

데이터 조직이 하는 일 고품질 데이터를 기반으로 의사 결정권자에게 입력 제공 - 결정 과학 (Decision Science)라고도 함 - 데이터를 고려한 결정을 가능하게 해줌 - Ex_) 데이터 기반 지표 정의, 대시보드와 리포트 생성 등을 수행 고품질 데이터를 기반으로 사용자 서비스 경험 개선 혹은 프로세스 최적화 - 머신 러닝과 같은 알고리즘을 통해 사용자의 서비스 경험을 개선 데이터 웨어하우스 회사에 필요한 모든 데이터를 모아놓은 중앙 데이터베이스 - AWS Redshift, 구글 BigQuery, Snowflake, 하둡/Spark 등이 있음 프로덕션용 베이터베이스와 별개의 데이터베이스여야 함 데이터 웨어하우스의 구축이 진정한 데이터 조직이 되는 첫 번째 단계 데이터 웨어하우스 장단점 기본적으로 ..

AWS(5)

Docker 컨테이너 기반의 오픈소스 가상화 플랫폼 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리를 단순화 백엔드 프로그램, 데이터베이스 서버, 메시지 큐 등 어떤 프로그램도 컨테이너로 추상화 가능 컨테이너 (Container) 호스트와 다른 컨테이너로 격리된 시스템 자원과 네트워크를 사용하는 프로세스 이미지는 읽기 전용으로 사용하여 변경사항은 컨테이너 계층에 저장 -> 컨테이너에서 무엇을 하든 이미지는 영향을 받지 않음 이미지 (Image) 컨테이너를 생성할 때 필요한 요소를 포함 (파일, 설정 값 등) 컨테이너의 목적에 맞는 바이너리와 의존성이 설치되어 있음 여러 개의 계층으로 된 바이너리 파일로 존재 주요 명령어 Container 생성 및 실..

728x90