노트북 및 프로그래매틱 분석 도구
SQL은 강력한 쿼리 언어이지만 Python, Java, R과 같은 프로그래밍 언어는 데이터 분석 작업에 더 표현력이 뛰어난 구문과 통계 함수를 제공합니다. 노트북 환경은 복잡한 데이터 탐색 및 머신러닝 (ML) 워크플로를 위한 스프레드시트의 대안으로 매우 유연합니다.
BigQuery는 기본 제공 노트북 통합과 여러 다른 프로그래매틱 분석 솔루션에 대한 지원을 제공합니다.
Colab Enterprise 노트북
BigQuery에서 Colab Enterprise 노트북을 사용하여 단일 통합 인터페이스에서 엔드 투 엔드 데이터 과학 및 ML 워크플로를 수행할 수 있습니다. 표준 SQL 편집기와 달리 노트북을 사용하면 SQL 쿼리를 Python 코드, 서식 있는 텍스트, 시각화와 결합하여 데이터로 포괄적인 스토리를 전달할 수 있습니다. Colab Enterprise 노트북은 다음과 같은 사용 사례에 적합합니다.
- 엔드 투 엔드 ML 워크플로: 단일 인터페이스 내에서 BigQuery ML 모델을 빌드, 평가, 배포합니다.
- 데이터 탐색: BigQuery DataFrames를 사용하여 대규모 데이터 세트를 정리하고 분석합니다.
- 공동 연구: Identity and Access Management (IAM)를 사용하여 버전 기록을 추적하고 동료와 노트북을 공유합니다.
Colab Enterprise 노트북은 다음과 같은 이점을 제공합니다.
- AI 기반 개발: Gemini Enterprise Agent Platform을 활용하여 보조 코드 개발을 수행합니다.
- 원활한 Python 통합: 추가 설정 없이 BigQuery DataFrames API를 사용합니다.
- 익숙한 편집기 기능: BigQuery SQL 편집기와 유사한 SQL 자동 완성 기능을 활용할 수 있습니다.
- 통합 시각화: 대화형 DataFrame 시각화 또는
matplotlib및seaborn와 같은 라이브러리를 워크플로에서 직접 사용합니다. - SQL-Python 상호 운용성: Python 변수를 참조하는 셀에서 SQL을 실행합니다.
셀 이해
노트북은 수정할 수 있는 셀로 구성됩니다. Colab Enterprise 노트북에서는 다음 유형의 셀이 지원됩니다.
텍스트 셀: 텍스트 셀을 사용하여 마크다운에서 설명과 이미지를 노트북에 추가합니다.
코드 셀: 코드 셀을 사용하여 노트북에 Python을 추가합니다. 각 코드 셀을 개별적으로 실행할 수 있습니다. 코드 셀은 이미 실행한 다른 셀에서 생성된 변수를 참조할 수 있습니다.
SQL 셀: SQL 셀을 사용하여 GoogleSQL 쿼리를 실행합니다. 쿼리 출력은 셀 제목과 이름이 같은 DataFrame으로 자동 저장됩니다. 단일 SQL 셀에서 여러 SQL 문을 실행할 수 있지만 마지막 문의 결과만 DataFrame에 저장됩니다.
표현식에서 Python 변수를 참조하거나 변수 이름을 중괄호(
{ })로 묶어 쿼리에서 BigQuery DataFrames를 테이블로 사용할 수 있습니다.# Refer to the Python variable my_threshold in a SQL expression. SELECT * FROM my_dataset.my_table WHERE x > {my_threshold}; # Reference previous query results to iterate on your queries. SELECT * FROM {df};시각화 셀: 시각화 셀을 사용하여 노트북의 DataFrame 시각화를 자동으로 생성합니다. 표시되는 열을 수정하고 다양한 차트 유형과 집계 중에서 선택할 수 있습니다. 커스텀 색상, 데이터 라벨, 제목을 선택할 수도 있습니다.
노트북 갤러리
노트북 갤러리는 사전 빌드된 노트북 템플릿을 검색하고 사용할 수 있는 중앙 허브입니다. 여기에는 데이터 준비, 분석, 시각화와 같은 일반적인 작업을 수행하는 데 도움이 되는 SQL, Python, Apache Spark, DataFrame의 기본 템플릿이 포함되어 있습니다.
런타임 관리 및 보안
노트북은 코드 실행을 사용 설정하기 위해 특정 사용자에게 할당되는 Compute Engine 가상 머신인 Colab Enterprise 런타임을 사용합니다. 노트북에 대한 액세스는 IAM 역할을 사용하여 제어됩니다. 노트북에서 사용되는 Python 패키지의 취약점을 감지하려면 Notebook Security Scanner를 설치하고 사용하면 됩니다.
모니터링 및 리전
BigQuery Studio의 모든 코드 애셋은 기본 리전에 저장되며 이 설정을 업데이트하면 새로 생성된 코드 애셋의 리전이 변경됩니다. Colab Enterprise 노트북은 BigQuery Studio를 사용할 수 있는 모든 리전에서 사용할 수 있습니다.
노트북 슬롯 사용량을 모니터링하려면 Cloud Billing 결제 보고서를 보고 goog-bq-feature-type 라벨에 BQ_STUDIO_NOTEBOOK 값을 필터로 적용하면 됩니다.
노트북 기능은 Google Cloud 콘솔에서만 사용 가능합니다.
가격 책정
Colab Enterprise 노트북의 가격 책정 정보는 노트북 런타임 가격 책정을 참조하세요.
BigQuery DataFrames
BigQuery DataFrames는 익숙한 Python API를 사용하여 BigQuery 데이터 처리를 활용할 수 있는 오픈소스 Python 라이브러리 집합입니다. BigQuery DataFrames는 SQL 변환을 통해 처리를 BigQuery로 내보내 Pandas 및 scikit-learn API를 구현합니다. 이 설계를 통해 BigQuery를 사용하여 Python API로 테라바이트 단위의 데이터를 탐색 및 처리하고 ML 모델을 학습시킬 수도 있습니다.
BigQuery DataFrames는 다음과 같은 이점을 제공합니다.
- BigQuery 및 BigQuery ML API로의 투명한 SQL 변환을 통해 구현되는 750개 이상의 Pandas 및 scikit-learn API.
- 성능 향상을 위한 지연된 쿼리 실행.
- 클라우드에서 데이터를 처리할 수 있도록 사용자 정의 Python 함수로 데이터 변환을 확장. 이러한 함수는 BigQuery 원격 함수로 자동 배포됩니다.
- Gemini Enterprise Agent Platform과 통합하여 텍스트 생성에 Gemini 모델을 사용.
기타 프로그래매틱 분석 솔루션
Colab Enterprise 및 BigQuery DataFrames 외에도 BigQuery는 다음과 같은 여러 프로그래매틱 솔루션과 통합됩니다.
- Jupyter 노트북 및 JupyterLab: BigQuery용 IPython Magics 또는 BigQuery 클라이언트 라이브러리를 사용하여 Jupyter 노트북에서 직접 BigQuery와 상호작용할 수 있습니다. Vertex AI Workbench 인스턴스 또는 Managed Service for Apache Spark를 사용하여 Google Cloud 에 환경을 배포할 수 있습니다.
- Apache Zeppelin: Managed Service for Apache Spark에 Zeppelin 선택적 구성요소를 설치하여 데이터 분석을 위한 웹 기반 Apache Zeppelin 노트북을 배포할 수 있습니다.
- Apache Hadoop, Spark, Hive: Managed Service for Apache Spark는 오픈소스 BigQuery 커넥터와 통합됩니다. 이러한 커넥터는 gRPC를 통해 BigQuery에서 직접 데이터를 병렬로 스트리밍하는 BigQuery Storage API를 사용합니다.
- Apache Beam 및 Dataflow: Apache Beam은 BigQuery용 커넥터를 포함하여 커넥터 생태계는 물론 다양한 윈도잉과 세션 분석 기본 도구를 제공하는 오픈소스 프레임워크입니다. Dataflow는 이러한 Apache Beam 작업을 대규모로 실행할 수 있는 완전 관리형 서비스입니다.
기타 리소스
BigQuery는 자바, Go, Python, 자바스크립트, PHP, Ruby와 같은 언어로 여러 클라이언트 라이브러리를 제공합니다. Pandas와 같은 특정 데이터 분석 프레임워크는 BigQuery와 직접 상호작용하는 플러그인을 제공하며, 셸 환경을 선호하는 사용자는 bq 명령줄 도구를 사용할 수 있습니다.