워크스페이스와 노트북 협업
Databricks for Data Engineers: A Beginner's Guide (2026) — Gaurav Valmiki (DataVidhya 블로그, 2026) Workspace in Databricks (pp.6-7) 및 인터뷰 문항 Q8 'What languages can you use in a Databricks notebook?' (p.4)
이 모듈을 다 읽으면
- Databricks 워크스페이스를 구성하는 핵심 요소(노트북, 폴더, 공유 워크스페이스, Git 연동, Repos)를 나열할 수 있다
- 노트북 안에서 여러 언어를 섞어 쓸 수 있게 하는 매직 커맨드의 동작 방식을 설명할 수 있다
- 폴더 구조나 Git 연동 없이 협업할 때 생기는 문제를 판단할 수 있다
워크스페이스는 데이터 엔지니어·분석가·과학자가 노트북을 작성하고, 파일을 폴더로 정리하고, 프로젝트를 팀과 공유하고, 대시보드와 잡·워크플로우를 관리하는 Databricks의 메인 작업 공간이다. 노트북은 Python, SQL, Scala, R을 하나의 노트북 안에서 매직 커맨드로 오가며 쓸 수 있는 폴리글랏(polyglot) 환경이며, Git 연동과 Repos를 통해 표준적인 소프트웨어 엔지니어링 워크플로우(브랜치, 커밋, PR)를 적용할 수 있다.
워크스페이스의 핵심 구성 요소
워크스페이스에서 가장 많이 쓰는 요소는 노트북이다 — Python, SQL, PySpark, Scala, R로 코드를 작성하고 실행하며, 변환 로직을 테스트하고 데이터를 분석하는 공간이다. 폴더는 작업을 정리하는 용도로(예: Bronze Layer, Silver Layer, Gold Layer, SQL Queries 같은 폴더 구조) 쓰이며, 폴더 없이는 워크스페이스가 금세 어지러워진다.
공유 워크스페이스는 여러 팀원이 같은 워크스페이스 안에서 함께 작업할 수 있게 해 시간을 절약하고 협업을 향상시킨다. Git 연동은 GitHub, GitLab, Azure DevOps 같은 저장소를 연결해 버전 관리와 코드 이력을 관리할 수 있게 하며, Repos는 파일을 수동으로 복사하는 대신 Git 코드를 Databricks 안에서 직접 pull·관리할 수 있게 해준다.
핵심 포인트
- 워크스페이스는 노트북 작성·폴더 정리·팀 공유·대시보드·잡 관리를 한곳에서 처리하는 메인 작업 공간이다
- 폴더 구조(예: Bronze/Silver/Gold 레이어별 폴더)로 프로젝트를 정리하지 않으면 워크스페이스가 빠르게 관리 불가능해진다
- Repos는 GitHub/GitLab/Azure DevOps 코드를 워크스페이스 안에서 직접 관리해 표준 Git 워크플로우(브랜치, 커밋, PR)를 가능하게 한다
폴리글랏 노트북과 매직 커맨드
Databricks 노트북은 Python(PySpark), SQL, Scala, R을 모두 지원하는 폴리글랏 환경이다. 핵심 기능은 `%python`, `%sql`, `%scala`, `%r` 같은 '매직 커맨드'로, 하나의 노트북 안에서 셀마다 다른 언어를 전환하며 쓸 수 있다. 예를 들어 복잡한 데이터 정제는 Python으로 수행하고, 이어지는 셀에서 SQL로 전환해 집계를 수행하거나 비즈니스 이해관계자를 위한 결과를 시각화하는 식이다.
핵심 포인트
- 노트북은 Python, SQL, Scala, R을 지원하는 폴리글랏 환경이다
- 매직 커맨드(`%python`, `%sql`, `%scala`, `%r`)로 셀마다 다른 언어를 전환해 쓸 수 있다
- 복잡한 정제는 Python, 집계·시각화는 SQL처럼 언어별 강점을 조합하는 것이 일반적인 패턴이다