작업 공간에서 노트북 편집 및 실행하기¶
실행 컨텍스트 설정¶
작업 공간의 노트북은 데이터베이스나 스키마를 자동으로 설정하지 않습니다. 데이터를 쿼리하려면 다음 SQL 명령을 사용하여 셀에서 실행 컨텍스트를 정의해야 합니다.
USE DATABASE <database>;
USE SCHEMA <schema>;
노트북이 여러 환경과 클라이언트에서 일관되게 실행되도록 하려면 테이블 및 기타 오브젝트에 정규화된 이름을 사용합니다. 예:
-- Query data objects using a fully qualified name
SELECT * FROM TABLE <database_name.schema_name.table_name>;
-- Create a table using a fully qualified name
WITH filtered_events AS (
SELECT
user_id,
event_type,
event_timestamp
FROM raw_events
WHERE event_timestamp >= '2025-01-01'
)
CREATE OR REPLACE TABLE <database_name.schema_name.table_name> AS
SELECT *
FROM filtered_events;
역할 및 웨어하우스 선택기 사용¶
노트북 편집기의 왼쪽 상단에 있는 선택기를 사용하거나 다음 SQL 명령을 실행하여 활성 역할과 웨어하우스를 설정할 수 있습니다.
USE ROLE <role>;
USE WAREHOUSE <warehouse>;
쿼리 웨어하우스는 노트북에서 호출한 SQL 쿼리 및 Snowpark 푸시다운 컴퓨팅을 실행하는 데 사용됩니다. 또한 대화형 데이터그리드를 렌더링하는 데도 사용되지만, 이 작업에는 크레딧 요금이 부과되지 않습니다.
크레딧 사용에 대해 자세히 알아보려면 :ref:`컴퓨팅 설정하기<label-nb_in_ws_compute_setup>`를 참조하세요.
셀 실행¶
다음의 4가지 실행 옵션이 지원됩니다.
모든 셀을 실행합니다.
하나의 단일 셀 실행
현재 셀 및 위의 모든 셀 실행(셀의 줄임표 메뉴를 통해).
현재 셀 및 아래의 모든 셀 실행(셀의 줄임표 메뉴를 통해)
셀 실행 취소¶
노트북 상단의 :ui:`Stop`을 사용하거나 셀에서 :ui:`Cancel execution`을 사용합니다.
두 작업 모두 현재 실행 중인 셀 및 :ui:`Run all`에 의해 트리거된 큐에 있는 모든 셀을 중지합니다.
참고
노트북이 서비스에 연결되거나 재연결될 때 일시적으로 Run all 버튼이 :ui:`Stop`으로 변경될 수 있습니다.
셀 이름¶
셀에 이름을 할당하여 더 쉽게 탐색하고 상황에 맞는 레이블을 제공할 수 있습니다.
가져온 .ipynb 파일에 이미 이름 또는 제목 메타데이터가 포함된 경우 해당 값이 자동으로 사용됩니다.
셀 참조¶
양방향 SQL에서 Python 셀 참조를 사용하면 두 언어의 셀 간에 결과와 변수를 재사용할 수 있으므로 SQL 및 Python 워크플로 간에 원활하게 전환할 수 있습니다.
결과 도구 설명을 마우스로 가리키면 Python 및 SQL에서 결과를 참조하는 데 사용할 수 있는 DataFrame 이름을 확인할 수 있습니다.
SQL 셀 결과 참조하기¶
각 SQL 셀은 해당 결과를 :code:`dataframe_x`라는 이름의 pandas DataFrame 포인터로 노출합니다.
SQL에서 이중 중괄호를 사용하여 참조합니다(
{{dataframe_1}}).Python에서는 pandas DataFrame으로 직접 참조합니다(
dataframe_1).
Python 변수 참조하기¶
SQL 쿼리에서 Python 변수를 참조하려면 쿼리를 이중 중괄호로 묶습니다. 예:
SELECT * FROM {{uploaded_df}} WHERE "price" > 326;
SQL에서 Python 변수를 참조할 때 DataFrame 변수도 지원됩니다.
워크플로 예시¶
Python 셀
import pandas as pd
uploaded_df = pd.read_csv("../data/diamonds.csv")
uploaded_df
Python 변수를 참조하는 SQL 셀
SELECT * FROM {{uploaded_df}} WHERE "price" > 326;
SQL 셀 결과를 참조하는 SQL 셀
SQL 셀의 결과는 :code:`dataframe_1`이라는 이름의 DataFrame 포인터를 제공합니다. 다른 SQL 쿼리에서 참조할 수 있습니다.
SELECT * FROM {{dataframe_1}} WHERE "carat" < 1.0
UNION ALL
SELECT * FROM {{dataframe_2}} WHERE "carat" >= 1.0;
대화형 데이터그리드¶
데이터그리드는 다음을 지원합니다.
스크롤링
검색
필터링
정렬
코드 없이 차트 생성
기본 제공 차트 빌더¶
작업 공간의 편집 화면 전반에서 데이터 조작 및 시각화를 위한 일관된 사용자 환경을 제공합니다.
미니맵 및 셀 상태¶
미니맵은 마크다운 헤더에서 목차를 생성하고 각 셀에 대한 포괄적인 세션 내 상태(실행 중, 성공, 실패, 수정됨)를 표시합니다.
노트북 커널¶
노트북 서비스가 RUNNING 상태에 있는 한, 노트북 커널은 활성 상태로 유지되어 ML 학습 및 데이터 엔지니어링 작업과 같이 중요한 장기 실행 프로세스를 중단 없이 실행할 수 있습니다.
커널 실행에 영향을 주지 않는 작업:
다른 페이지로 이동하기
|sf-web-interface|의 다른 위치에서 작업하기
브라우저 닫기
컴퓨터 종료하기
Connected 드롭다운을 사용하여 커널을 종료하거나 다시 시작할 수 있습니다.
참고
Shut down kernel 또는 :ui:`Restart kernel`을 사용하면 메모리의 변수는 지워지지만 사용자가 설치한 패키지는 유지됩니다. 사전 설치된 패키지만 있는 완전히 깨끗한 환경을 원하는 경우 서비스를 다시 시작하거나 새 서비스를 생성하여 연결해야 합니다.
노트북 서비스가 일시 중단되면 노트북 커널도 종료됩니다. 자세한 내용은 :ref:`컴퓨팅 설정하기<label-nb_in_ws_compute_setup>`를 참조하세요.
Jupyter 매직¶
작업 공간의 노트북은 IPython(대화형 Python) 커널을 실행하며 표준 Jupyter 셀 및 라인 매직을 제공합니다. :code:`%lsmagic`을 실행하여 사용 가능한 매직을 확인합니다.
터미널 사용하기¶
터미널을 사용하여 다음을 수행할 수 있습니다.
종속성 설치하기
파일 관리하기
병렬 작업 실행하기
컴퓨팅 리소스 사용량 모니터링하기
터미널을 사용하려면 노트북 서비스에 연결되어 있어야 합니다. 다른 서비스로 전환하면 터미널 세션이 다시 시작됩니다.
컴퓨팅 리소스 사용량을 실시간으로 모니터링하기 위한 htop 설치 및 실행의 예제입니다.
# If installation fails, run `apt update` first
# Install `htop`
apt install htop
# Run `htop`
htop