전 세계의 방대한 데이터가 Amazon S3 버킷에 저장되어 있습니다.
이 가이드에서는 chDB를 사용해 해당 데이터를 쿼리하는 방법을 알아봅니다.
먼저 가상 환경을 만듭니다:
이제 chDB를 설치하겠습니다.
버전 2.0.2 이상인지 확인하십시오:
이제 IPython을 설치합니다:
이 가이드의 나머지 부분에서는 ipython을 사용해 명령을 실행합니다. 다음 명령을 실행하여 시작할 수 있습니다:
이 코드는 Python 스크립트나 자주 사용하는 노트북에서도 사용할 수 있습니다.
먼저 Amazon 리뷰가 포함된 S3 버킷에 있는 모든 파일을 나열해 보겠습니다.
이를 위해 s3 테이블 함수를 사용하고, 파일 경로 또는 파일 집합을 가리키는 와일드카드를 전달할 수 있습니다.
또한 파일을 파싱하지 않고 파일마다 단일 행을 반환하도록 One 입력 형식을 사용합니다. 그러면 _file 가상 컬럼으로 파일에 접근하고 _path 가상 컬럼으로 경로에 접근할 수 있습니다.
이 버킷에는 Parquet 파일만 들어 있습니다.
이제 이러한 파일을 쿼리하는 방법을 알아보겠습니다.
각 파일의 행 수를 계산하려면 다음 쿼리를 실행하면 됩니다.
S3 버킷의 HTTP URI를 전달해도 동일한 결과를 얻을 수 있습니다:
DESCRIBE 절을 사용해 이 Parquet 파일들의 스키마를 살펴보겠습니다:
이제 리뷰 수를 기준으로 상위 제품 카테고리를 계산하고, 평균 별점도 함께 계산해 보겠습니다:
비공개 S3 버킷의 파일을 쿼리하려면 액세스 키와 시크릿을 전달해야 합니다.
이러한 자격 증명은 s3 테이블 함수에 전달할 수 있습니다.
이 쿼리는 공개 버킷에서는 작동하지 않습니다!
대안으로 이름이 지정된 컬렉션을 사용할 수 있지만, 이 방법은 아직 chDB에서 지원되지 않습니다.