전체 글 373

Snowflake Database & Warehouse

내 Account안의 Databases 확인 빨간색 박스의 Data의 Databases 메뉴를 클릭하면 데이터 베이스 목록들을 확인할 수 있습니다. 지난 Snowflake 개념 시간에 Snowflake는 Account 생성과 동시에 2개의 DB를 자동으로 생성한다고 했었죠? 파란색 박스의 SNOWFLAKE와 SNOWFLAKE_SAMPLE_DATA 두개의 DB가 바로 그것입니다. 각 DB 안에는 초록색 박스와 같은 스키마가 들어있고 각 스키마 안에는 주황색 박스와 같은 테이블들이 들어있습니다. AWS Redshift와 거의 다를게 없습니다. 뒤의 실습에서 DEV라는 이름의 데이터 베이스를 한번 추가해보겠습니다. 내 Account안의 Warehouses 확인 Snowflake는 데이터 베이스라는 스토리지와 ..

Snowflake 무료 체험판

Snowflake 30일 무료 시험판 시작 30일 혹은 최대 $400까지 사용 가능하며 기간이 자나거나 $400를 모두 사용하면 자동으로 suspended 됩니다. 이후 더 계속 비용을 지불하고 사용하고 싶다면 그 때 신용카드 정보를 입력하면 됩니다. 모든 정보를 입력해주세요. Standard 에디션을 선택해주세요. 클라우드 공급자는 지난 실습 Redshift serverless를 사용해 AWS로 선택했습니다. 각자 본인이 필요한대로 선택하셔도 괜찮습니다. 지역은 서울을 선택했습니다. 가입이유, 사용목적, 선호하는 언어 등을 물어보는데 대충 작성하셔도 상관없습니다. 전송 버튼을 눌러주시면 아까 기입했던 이메일 주소로 메일이 하나 도착할 것입니다. 메일의 내용은 위와 같습니다. CLICK TO ACTIVA..

Snowflake 특징 소개

Snowflake 소개 2014년에 클라우드 기반 데이터웨어하우스로 시작됨 (2020년 상장) 지금은 데이터 클라우드라고 부를 수 있을 정도로 발전 글로벌 클라우드위에서 모두 동작 (AWS, GCP, Azure) - 멀티클라우드 데이터 판매를 통한 매출을 가능하게 해주는 Data Sharing/Marketplace 제공하는데 데이터 웨어하우스끼리의 데이터 공유를 매우 간단하게 만들었기 때문입니다. ETL과 다양한 데이터 통합 기능 제공 Snowflake 특징 스토리지와 컴퓨팅 인프라가 별도로 설정되는 가변 비용 모델 Redshift 고정비용처럼 노드 수를 조정할 필요가 없고 distkey등의 최적화 불필요 SQL 기반으로 빅데이터 저장, 처리, 분석을 가능하게 해줌 Redshift ML과 비슷합니다. 비..

Redshift 중지/제거하기

중지라는 것은 고정비용에만 존재합니다. Redshift 관련 유지보수 Redshift(고정비용) 서비스는 주기적으로 버전 업그레이드를 위해 중단됩니다. 1~2주에 한번 10~30분 정도 Maintenance window로 서비스를 중단시키고 restart합니다. AWS web console에서 주기를 확인할 수 있습니다. 그 시간대를 피해 작업을 하는 것을 권장합니다. 참고로 Serverless에는 이게 존재하지 않습니다. 테이블 청소와 최적화 - VACUUM 명령 VACUUM을 주기적으로 해주면 좋습니다. 또 여러 파라미터로 다양한 기능을 사용할 수 있습니다. 테이블 데이터 정렬: Redshift 테이블에 데이터가 삽입, 업데이트 또는 삭제될 때 데이터는 불규칙하게 분산되어 저장될 수 있는데 VACUU..

Redshift ML

머신러닝의 정의 ● 배움이 가능한 기계(혹은 알고리즘)의 개발 ○ 결국 데이터의 패턴을 보고 흉내(imitation)내는 방식으로 학습 ○ 학습에 사용되는 이 데이터를 트레이닝셋 (training set)이라고 부름 ● 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야 ● 딥러닝(신경망의 다른 이름)은 머신 러닝의 일부 ○ 비젼, 자연언어처리 (텍스트/오디오)등에 적용되고 있음 ● 인공지능은 머신러닝을 포괄하는 개념 딥러닝 ⊂ 머신러닝 ⊂ AI 머신러닝 모델이란? ● 머신 러닝의 최종 산물이 머신 러닝 모델 ○ 학습된 패턴(트레이닝셋)에 따라 예측을 해주는 블랙박스 ■ 선택한 머신러닝 학습 알고리즘에 따라 내부가 달라짐 ■ 디버깅은 쉽지 않으며 왜 동작하는지 이유를 설명하기도 쉽지 않음 ■..

Redshift Glue 권한 추가 & Spectrum 실습

Glue 권한 추가하기 Redshift Spectrum(혹은 Athena) 사용을 위해서는 우리가 지난 시간 만든 AmazonS3FullAccess에 AWSGlueConsoleFullAccess를 하나 더 추가해야 합니다. IAM의 역할에서 우리가 이전에 만든 redshift.read.s3를 클릭합니다. 지난 실습에서 만든 AmazonS3FullAccess 권한 하나만 있군요. 드랍 다운 메뉴에서 우측의 정책 연결을 클릭해주세요. 검색어를 입력한 후 체크한 뒤 권한추가를 클릭합니다. 자 IAM에서 Glue 권한을 만들었습니다. 이제 S3로 갑니다. 우리가 만든 S3 버킷으로 가주세요. 버킷 이름은 유니크하므로 여러분은 다른 이름일 것입니다. 지난 시간 만든 test_data 폴더가 보입니다. usc 폴더..

Redshift Spectrum

Redshift와 S3을 사용하다보면.. S3의 굉장히 큰 데이터를 Redshift로 로딩할 때 다소 버거울 것입니다. 일단 비용이 많이 나오고 데이터의 질이 떨어질 수도 있죠. 그러면 데이터를 정제하고 Redshift로 옮기고 싶을텐데 그런 경우 사용할 수 있는 것이 Redshift Spectrum (혹은 Athena)입니다. S3의 테이블들을 external 테이블로 간주해 마치 Redshift안의 테이블처럼 SQL을 사용해 조작할 수 있도록 해줍니다. Fact 테이블과 Dimension 테이블 매우 자주 듣게될 용어들 입니다. Fact 테이블: 분석의 초점이 되는 양적 정보를 포함하는 중앙 테이블 일반적으로 매출 수익, 판매량 또는 이익과 같은 사실 또는 측정 항목을 포함하며 비즈니스 결정에 사용 ..

Redshift Spectrum, Athena, ML 개념

어떤 것들이 있을까? Redshift Serverless (가변비용 모델로 이미 앞에서 살펴봄) Redshift Spectrum (S3 등에 있는 파일들을 테이블처럼 사용가능하게 해줌) Athena (Apache Presto를 서비스화한 것, 부가 서비스가 아닌 별도 서비스입니다.) Redshift ML * Apache Presto는 고성능, 분산형 SQL 쿼리 엔진입니다. Presto는 페타바이트 규모의 데이터를 처리할 수 있으며, 여러 데이터 소스에서 데이터를 쿼리할 수 있습니다. Redshift Serverless 앞서 설명했으니 간단하게 살펴보겠습니다. 일반 Redshift는 용량을 미리 결정하고 월정액(Fixed Cost)를 지불합니다. 즉, 고정비용입니다. 반면에 Redshift Serverl..

Redshift Snapshot 백업과 테이블 복구

Redshift가 지원하는 데이터 백업 방식 기본적으로 백업 방식은 마지막 백업으로부터 바뀐 것들만 저장하는 방식: 이를 Snapshot이라고 부름 백업을 통해 과거로 돌아가 그 시점의 내용으로 특정 테이블을 복구하는 것이 가능 (Table Restore) 또한 과거 시점의 내용으로 Redshift 클러스터를 새로 생성하는 것도 가능 자동 백업: 기본은 하루이지만 최대 과거 35일까지의 변경을 백업하게 할 수 있음. 이 경우 백업은 같은 지역에 있는 S3에 이뤄짐. 다른 지역에 있는 S3에 하려면 Cross-regional snapshot copy를 설정해야함. 이는 보통 재난시 데이터 복구에 유용함 매뉴얼 백업: 언제든 원할 때 만드는 백업으로 명시적으로 삭제할 때까지 유지됨 (혹은 생성시 보존 기한 ..