Microsoft Fabric Notebook을 사용하는 방법
Microsoft Fabric Notebook은 Apache Spark 작업 및 기계 학습 실험을 개발하기 위한 기본 코드 항목입니다. 데이터 과학자와 데이터 엔지니어가 풍부한 시각화 및 Markdown 텍스트를 활용하는 코드를 작성하는 데 사용하는 웹 기반 대화형 화면입니다. 데이터 엔지니어는 데이터 수집, 데이터 준비 및 데이터 변환을 위한 코드를 작성합니다. 또한 데이터 과학자는 Notebook을 사용하여 실험 및 모델 만들기, 모델 추적 및 배포를 비롯한 기계 학습 솔루션을 빌드합니다.
Synapse Notebook의 이점은 다음과 같습니다.
- 시작에 필요한 설정 작업이 전혀 없습니다.
- 직관적인 하위 코드 환경으로 데이터를 쉽게 탐색하고 처리합니다.
- 기본 제공 엔터프라이즈 보안 기능으로 데이터 보안을 유지합니다.
- 강력한 Spark 기능을 사용하여 원시 형식(CSV, txt, JSON 등), 처리된 파일 형식(parquet, Delta Lake 등)에서 데이터를 분석합니다.
- 향상된 제작 기능 및 기본 제공 데이터 시각화를 통해 생산성을 높일 수 있습니다.
이 문서에서는 데이터 과학 및 데이터 엔지니어링 환경에서 Notebook을 사용하는 방법을 설명합니다.
Notebook 실행의 보안 컨텍스트
Notebook 실행은 다양한 시나리오를 충족할 수 있는 완전한 유연성을 갖춘 Fabric의 세 가지 다른 매너에 의해 트리거될 수 있습니다.
- 대화형 실행: 사용자가 다른 UX 항목을 통해 또는 REST API를 호출하여 실행을 수동으로 트리거합니다. 실행은 현재 사용자의 보안 컨텍스트에서 실행됩니다.
- 파이프라인 작업으로 실행: Fabric Data Factory 파이프라인에서 실행이 트리거됩니다. Notebook 활동에서 세부 단계를 찾을 수 있습니다. 실행은 파이프라인 소유자의 보안 컨텍스트에서 실행됩니다.
- Scheduler: 실행은 스케줄러 계획에서 트리거됩니다. 실행은 스케줄러 계획을 설정/업데이트하는 사용자의 보안 컨텍스트에서 실행됩니다.
다양한 보안 컨텍스트를 사용하여 이러한 실행 옵션을 유연하게 사용하면 다양한 시나리오와 요구 사항을 충족할 수 있지만 Notebook을 디자인하고 개발할 때 보안 컨텍스트를 인식해야 합니다. 그렇지 않으면 예기치 않은 동작과 일부 보안 문제가 발생할 수 있습니다.
Notebook을 처음 만들 때는 검토하지 않고 코드를 실행할 위험을 알려주는 경고 메시지가 표시됩니다.
다음은 보안 문제를 방지하는 데 도움이 되는 몇 가지 모범 사례입니다.
- Notebook을 수동으로 실행하기 전에 Notebook 설정을 열고 정보 패널 아래의 세부 정보 섹션에서 수정 업데이트를 확인합니다. 최신 변경 내용이 올바른지 확인합니다.
- 파이프라인에 Notebook 작업을 추가하기 전에 Notebook 설정을 열고 정보 패널 아래의 세부 정보 섹션에서 수정 업데이트를 확인합니다. 최신 변경 내용으로도 괜찮은지 확인합니다. 최신 변경 내용을 잘 모르는 경우 파이프라인에 추가하기 전에 Notebook을 열어 변경 내용을 검토하는 것이 좋습니다.
- 스케줄러 계획을 업데이트하기 전에 Notebook 설정을 열고 정보 패널 아래의 세부 정보 섹션에서 수정 업데이트를 확인합니다. 최신 변경 내용으로 확인하세요. 최신 변경 내용을 잘 모르는 경우 스케줄러 계획을 업데이트하기 전에 Notebook을 열어 변경 내용을 검토하는 것이 좋습니다.
- 작업 영역을 다른 단계(dev, test, prod)로 분리하고 보안 문제를 방지하기 위해 다른 단계의 액세스를 제어합니다. 신뢰할 수 있는 사용자만 prod 단계에 추가합니다.
Notebook 만들기
새 Notebook을 만들거나 기존 Notebook을 가져올 수 있습니다.
새 Notebook 만들기
다른 표준 Fabric 항목 만들기 프로세스와 마찬가지로 Fabric 데이터 엔지니어 홈페이지, 작업 영역 새로 만들기 옵션 또는 허브 만들기에서 새 Notebook을 쉽게 만들 수 있습니다.
기존 Notebook 가져오기
작업 영역 도구 모음의 항목을 사용하여 로컬 컴퓨터에서 하나 이상의 기존 Notebook을 가져올 수 있습니다. 패브릭 노트북은 표준 Jupyter 노트북 .ipynb 파일과 .py, .scala, .sql같은 소스 파일을 인식하고, 그에 따라 새 노트북 항목을 만듭니다.
Notebook 내보내기
Notebook을 다른 표준 형식으로 내보낼 수 있습니다. Synapse Notebook을 다음으로 내보낼 수 있습니다.
- Jupyter Notebook에 사용되는 표준 Notebook 파일(.ipynb)입니다.
- 브라우저에서 직접 열 수 있는 HTML 파일(.html)입니다.
- Python 파일(.py)
- Latex 파일(.tex)
Notebook 저장
Fabric에서는 Notebook을 열고 편집한 후 기본적으로 자동으로 저장됩니다. 코드 변경 내용이 손실되는 것에 대해 걱정할 필요가 없습니다. 복사본 저장을 사용하여 현재 작업 영역 또는 다른 작업 영역에 다른 복사본을 복제할 수도 있습니다.
Notebook을 수동으로 저장하려는 경우 수동 저장 옵션으로 전환하여 Notebook 항목의 로컬 분기를 지정한 다음 저장 또는 Ctrl+s를 사용하여 변경 내용을 저장할 수 있습니다.
편집 ->저장 옵션 ->수동을 선택하여 수동 저장 모드로 전환할 수도 있습니다. Notebook의 로컬 분기를 켜고 수동으로 저장하려면 저장을 선택하거나 Ctrl+s의 단축키를 사용합니다.
Lakehouse 및 Notebook 연결
Fabric Notebook은 이제 Lakehouse와의 긴밀한 상호 작용을 지원합니다. Lakehouse 탐색기에서 새 Lakehouse 또는 기존 Lakehouse를 쉽게 추가할 수 있습니다.
Lakehouse 탐색기에서 다른 Lakehouse로 이동하여 하나의 Lakehouse를 고정하여 기본값으로 설정할 수 있습니다. 그러면 기본값이 런타임 작업 디렉터리에 탑재되고 로컬 경로를 사용하여 기본 Lakehouse를 읽거나 쓸 수 있습니다.
참고 항목
새 Lakehouse를 고정하거나 기본 Lakehouse의 이름을 변경한 후 세션을 다시 시작해야 합니다.
레이블 추가 또는 제거
Lakehouse 이름 옆에 있는 X 아이콘을 선택하면 Notebook 탭에서 제거되지만 Lakehouse 항목은 여전히 작업 영역에 있습니다.
Lakehouse 추가를 선택하여 기존 Lakehouse 를 추가하거나 새 Lakehouse를 만들어 노트북에 더 많은 Lakehouse를 추가합니다.
Lakehouse 파일 탐색
Lake 보기의 테이블 및 파일 섹션 아래에 있는 하위 폴더와 파일은 Lakehouse 목록과 Notebook 콘텐츠 사이의 콘텐츠 영역에 표시됩니다. 테이블 및 파일 섹션에서 다른 폴더를 선택하여 콘텐츠 영역을 새로 고칩니다.
폴더 및 파일 작업
마우스 오른쪽 단추를 클릭하여 파일(.csv, .parquet, .txt, .jpg, .png 등)을 선택하는 경우 Spark 또는 Pandas API를 사용하여 데이터를 로드할 수 있습니다. 포커스 셀 아래에 새 코드 셀이 생성되고 삽입됩니다.
선택 파일 또는 폴더와 다른 형식의 경로를 쉽게 복사하고 코드에서 해당 경로를 사용할 수 있습니다.
Notebook 리소스
Notebook 리소스 탐색기는 폴더 및 파일을 관리하는 데 도움이 되는 Unix와 유사한 파일 시스템을 제공합니다. 코드 모듈, 의미 체계 모델 및 이미지와 같은 작은 크기의 파일을 저장할 수 있는 쓰기 가능한 파일 시스템 공간을 제공합니다. 로컬 파일 시스템에서 작업하는 것처럼 Notebook의 코드로 쉽게 액세스할 수 있습니다.
참고 항목
- 기본 제공 폴더와 환경 폴더 모두에 대한 최대 리소스 스토리지는 500MB이며 단일 파일 크기는 최대 100MB입니다. 둘 다 총 100개의 파일/폴더 인스턴스를 허용합니다.
-
notebookutils.notebook.run()
를 사용하는 경우notebookutils.nbResPath
명령을 사용하여 대상 Notebook 리소스에 액세스합니다. 기본 제공 상대 경로 는 항상 루트 Notebook의 기본 제공 폴더를 가리킵니다.
기본 제공 리소스 폴더
기본 제공 리소스 폴더는 각 Notebook 항목 인스턴스에 대한 시스템 미리 정의된 폴더입니다. Notebook 리소스의 주요 기능은 다음과 같습니다.
- UI를 통해 만들기/삭제, 업로드/다운로드, 끌어서 놓기, 이름 바꾸기, 복제 및 검색과 같은 일반적인 작업을 사용할 수 있습니다.
- 빠른 탐색을 위해
builtin/YourData.txt
와 같은 상대 경로를 사용할 수 있습니다.notebookutils.nbResPath
메서드는 전체 경로를 작성하는 데 도움이 됩니다. - Lakehouse에 쓰기 옵션을 통해 유효성이 검사된 데이터를 Lakehouse 로 쉽게 이동할 수 있습니다. 패브릭은 일반적인 파일 형식에 대한 풍부한 코드 조각을 포함하여 빠르게 시작할 수 있도록 합니다.
- 이 리소스들은 를 통해
notebookutils.notebook.run()
시에도 사용할 수 있습니다.
환경 리소스 폴더
환경 리소스 폴더는 여러 Notebook에서 공동 작업을 간소화하도록 설계된 공유 리포지토리입니다.
환경 내에서 리소스 탭을 찾고 여기에서 리소스 파일을 관리하는 전체 작업을 수행할 수 있습니다. 전자 필기장이 현재 환경에 연결되면 이러한 파일을 여러 Notebook에서 공유할 수 있습니다.
Notebook 페이지에서 연결된 환경에서 상속된 리소스 아래에 있는 두 번째 루트 폴더를 쉽게 찾을 수 있습니다.
기본 제공 리소스 폴더와 동일한 파일/폴더에서 작업할 수도 있습니다.
환경 리소스 경로는 Notebook 클러스터에 자동으로 탑재됩니다. /env 상대 경로를 사용하여 환경 리소스에 액세스할 수 있습니다.
참고 항목
현재 Notebook 코드의 읽기/쓰기 환경 리소스 폴더는 높은 동시성 세션지원되지 않습니다.
파일 편집기
파일 편집기를 사용하면 Notebook의 리소스 폴더 및 Notebook의 환경 리소스 폴더 내에서 직접 파일을 보고 편집할 수 있습니다. 지원되는 파일 형식에는 CSV, TXT, HTML, YML, PY, SQL 등이 있습니다. 파일 편집기를 사용하면 Notebook 내에서 파일에 쉽게 액세스하고 수정할 수 있으며 키워드 강조 표시를 지원하고 .py 및 .sql같은 코드 파일을 열고 편집할 때 필요한 언어 서비스를 제공합니다.
파일 메뉴에서 '보기 및 편집'을 통해 이 기능에 액세스할 수 있습니다. 파일을 두 번 클릭하는 것이 더 빠릅니다.
파일 편집기에서 콘텐츠 변경 내용은 저장 단추 또는 바로 가기 키를 클릭하여 수동으로 저장해야 합니다. Ctrl+S파일 편집기에서는 자동 저장을 지원하지 않습니다.
파일 편집기는 Notebook 모드의 영향을 받습니다. 편집 권한 없이 전자 필기장 모드에 있는 경우 파일만 볼 수 있지만 편집할 수는 없습니다.
참고 항목
파일 편집기에 대한 몇 가지 제한 사항은 다음과 같습니다.
- 파일 크기 제한은 1MB입니다.
- .xlsx 및 .parquet 파일 형식은 보고 편집할 수 없습니다.
Notebooks에서 공동 작업
Fabric Notebook은 여러 사용자가 동일한 Notebook을 편집할 수 있도록 지원하는 공동 작업 항목입니다.
노트북을 열면 기본적으로 공동 편집 모드로 전환되고, 모든 노트북 편집이 자동으로 저장됩니다. 동료가 같은 Notebook을 동시에 열면 프로필, 실행 출력, 커서 표시기, 선택 표시기 및 편집 추적이 표시됩니다. 공동 작업 기능을 사용하면 쌍 프로그래밍, 원격 디버깅 및 튜터링 시나리오를 쉽게 수행할 수 있습니다.
노트 공유
Notebook을 공유하는 것은 팀 구성원과 공동 작업하는 편리한 방법입니다. 권한 있는 작업 영역 역할은 기본적으로 Notebook을 보거나 편집/실행할 수 있습니다. 지정된 사용 권한이 부여된 Notebook을 공유할 수 있습니다.
Notebook 도구 모음에서 공유를 선택합니다.
이 Notebook을 볼 수 있는 사람의 해당 범주를 선택합니다. 받는 사람에 대한 공유, 편집 또는 실행 권한을 선택할 수 있습니다.
적용을 선택한 후 Notebook을 직접 보내거나 링크를 다른 사람에게 복사할 수 있습니다. 그러면 받는 사람이 사용 권한 수준에서 부여한 해당 보기로 Notebook을 열 수 있습니다.
Notebook 권한을 추가로 관리하려면 작업 영역 항목 목록>추가 옵션을 선택한 다음, 권한 관리를 선택합니다. 해당 화면에서 기존 Notebook 액세스 및 권한을 업데이트할 수 있습니다.
코드 셀 주석 달기
주석 처리는 공동 작업 시나리오에 유용한 또 다른 기능입니다. 현재 Fabric은 셀 수준 주석 추가를 지원합니다.
Notebook 도구 모음에서 주석 단추를 선택하여 주석 창을 엽니다.
코드 셀에서 코드를 선택하고 주석 창에서 새로 만들기를 선택한 다음 댓글을 추가한 다음 주석 게시를 선택하여 저장합니다.
필요한 경우 댓글 옆에 있는 자세히 보기 옵션을 선택하여 주석 수정, 댓글 해결 및 댓글 삭제 옵션을 찾습니다.
메모에서 다른 사용자 태그 지정
"태그 지정"은 주석 스레드에서 사용자를 언급하고 알리는 것을 의미하며, 세부 사항에 대한 공동 작업을 효율적으로 향상합니다.
셀에서 코드 섹션을 선택하고 주석 댓글을 새로 만듭니다.
특정 섹션에 대한 토론을 위해 다른 사람을 언급하려는 경우 사용자 이름을 입력하고 제안 목록에서 올바른 이름을 선택합니다.
인사이트를 공유하고 게시 합니다.
전자 메일 알림이 트리거되고 사용자가 메모 열기 링크를 클릭하여 이 셀을 빠르게 찾습니다.
또한 액세스 권한이 없는 사람에게 태그를 지정할 때 사용자에 대한 권한을 부여하고 구성하여 코드 자산이 잘 관리되도록 합니다.
참고 항목
주석 항목의 경우 태그가 지정된 사용자는 1시간 이내에 주석을 업데이트하는 경우 더 이상 전자 메일 알림을 받지 않습니다. 그러나 태그가 지정된 새 사용자에게 이메일 알림을 보냅니다.
버전 기록
참고 항목
현재 이 기능은 미리 보기로 제공됩니다.
버전 기록을 사용하면 라이브 전자 필기장 변경 내용을 쉽게 버전화할 수 있습니다. 강력한 기본 제공 버전 제어 기능을 사용하여 기록 추적 및 Notebook 관리를 지원하며, 특히 동일한 Notebook에서 여러 참가자와 공동 작업하는 데 특히 유용합니다.
Notebook 전역 도구 모음에서 버전 기록 액세스합니다.
기록 액세스를 보여 주는 스크린샷
Notebook은 검사점을 만드는 두 가지 방법을 지원합니다.
검사점을 클릭하면 차이 보기가 열리며, 선택한 검사점과 현재 라이브 버전 간의 콘텐츠 차이점(셀 내용과 출력, 메타데이터 포함)을 강조 표시합니다. 이 검사점의 버전은 '추가 옵션' 메뉴에서 개별적으로 관리할 수 있습니다.
검사점 드롭다운 메뉴에서 버전을 관리할 수 있습니다. 이전 버전을 유지하려면 검사점에서 복원을 선택하여 현재 노트북을 덮어쓰거나, 복사를 사용하여 새 노트북에 복제할 수 있습니다.
참고 항목
- 알려진 제한 사항: 복원 버튼을 클릭한 후 다시 Notebook으로이동하면, Notebook이 검사점에서 즉시 복구되지 않습니다. 메시지 표시줄에 변경 내용을 보라는 메시지가 표시되고 변경 내용 보기 단추를 클릭하고 저장된 버전 유지를 선택하여 복원을 완료해야 합니다.
- 시스템 체크포인트는 1년 후에 만료됩니다.
Notebook 모드 전환기
패브릭 노트북은 쉽게 전환할 수 있는 네 가지 모드를 지원합니다: 개발 모드,실행 전용 모드, 편집 모드, 그리고 보기 모드. 각 모드는 특정 권한 조합에 매핑됩니다. 전자 필기장을 다른 팀 구성원과 공유할 때 받는 사람에게 적절한 권한을 부여할 수 있습니다. 사용 권한에 따라 사용 가능한 최상의 전자 필기장 모드를 볼 수 있으며 사용 권한이 있는 모드 간에 전환할 수 있습니다.
- 개발 모드: 읽기, 실행, 쓰기 권한이 필요합니다.
- 실행 전용 모드: 읽기, 실행 권한이 필요합니다.
- 편집 모드: 읽기, 쓰기 권한이 필요합니다.
- 보기 모드: 읽기 권한이 필요합니다.