데이터 파이프라인에 대한 원본 데이터 탐색
데이터 파이프라인을 만드는 일반적인 첫 번째 단계는 파이프라인의 원본 데이터를 이해하는 것입니다. 이 단계에서는 Notebook에서 Databricks 유틸리티 및 PySpark 명령을 실행하여 원본 데이터 및 아티팩트를 검사합니다.
예비 데이터 분석에 대한 자세한 내용은 Azure Databricks: 도구 및 기술에 대한 예비 데이터 분석을 참조하세요.
동영상: Databricks Notebook 소개
이 동영상에서 Databricks Notebook에 대한 소개를 확인하세요.
데이터 탐색 Notebook 만들기
사이드바에서 새로 만들기를 클릭하고 메뉴에서 Notebook을 선택합니다. 바꿀 수 있는 기본 이름으로 Notebook이 열립니다.
Notebook 이름을 입력합니다(예:
Explore songs data
). 기본적으로:- Python은 선택한 언어입니다.
- Notebook이 사용한 마지막 클러스터에 연결됩니다. 이 경우 1단계: 클러스터 만들기에서 만든 클러스터입니다.
데이터 세트가 포함된 디렉터리의 내용을 보려면 Notebook의 첫 번째 셀에 다음을 입력하고 을 클릭한 다음 셀 실행을 선택합니다.
%fs ls "/databricks-datasets/songs"
경로 name 크기 modificationTime dbfs:/databricks-datasets/songs/README.md README.md 1719 1454620183000 dbfs:/databricks-datasets/songs/data-001/ data-001/ 0 1672791237846 dbfs:/databricks-datasets/songs/data-002/ data-002/ 0 1672791237846
데이터 탐색
추가 정보 파일에는 데이터 스키마에 대한 설명을 포함하여 데이터 세트에 대한 정보가 있습니다. 스키마 정보는 데이터를 수집할 때 다음 단계에서 사용됩니다. 추가 정보 내용을 보려면 셀 작업 메뉴에서 을 클릭하고 아래 셀 추가를 선택하고, 새 셀에 다음을 입력하고 을 클릭한 다음 셀 실행을 선택합니다.
%fs head --maxBytes=10000 "/databricks-datasets/songs/README.md"
Sample of Million Song Dataset =============================== ## Source This data is a small subset of the [Million Song Dataset](http://labrosa.ee.columbia.edu/millionsong/). The original data was contributed by The Echo Nest. Prepared by T. Bertin-Mahieux <tb2332 '@' columbia.edu> ## Attribute Information - artist_id:string - artist_latitude:double - artist_longitude:double - artist_location:string - artist_name:string - duration:double - end_of_fade_in:double - key:int - key_confidence:double - loudness:double - release:string - song_hotnes:double - song_id:string - start_of_fade_out:double - tempo:double - time_signature:double - time_signature_confidence:double - title:string - year:double - partial_sequence:int ...
이 예제에 사용된 레코드는
/databricks-datasets/songs/data-001/
디렉터리에 있습니다. 이 디렉터리의 콘텐츠를 보려면 셀 작업 메뉴에서 을 클릭하고 아래 셀 추가를 선택하고, 새 셀에 다음을 입력하고 을 클릭한 다음 셀 실행을 선택합니다.%fs ls "/databricks-datasets/songs/data-001"
경로 name 크기 modificationTime dbfs:/databricks-datasets/songs/data-001/header.txt header.txt 377 1454633901000 dbfs:/databricks-datasets/songs/data-001/part-00000 part-00000 52837 1454547464000 dbfs:/databricks-datasets/songs/data-001/part-00001 part-00001 52469 1454547465000 추가 정보 및 파일 이름은 파일 형식을 나타내지 않으므로 각 레코드의 내용과 형식을 더 잘 이해하기 위해 레코드 샘플을 볼 수 있습니다. 데이터 파일 중 하나에서 처음 10개의 레코드를 읽고 표시하려면 셀 작업 메뉴에서 을 클릭하고 아래 셀 추가를 선택하고, 새 셀에 다음을 입력하고 을 클릭한 다음 셀 실행을 선택합니다.
%fs head --maxBytes=10000 "/databricks-datasets/songs/data-001/part-00000"
AR81V6H1187FB48872 nan nan Earl Sixteen 213.7073 0.0 11 0.419 -12.106 Soldier of Jah Army nan SOVNZSZ12AB018A9B8 208.289 125.882 1 0.0 Rastaman 2003 -- ARVVZQP11E2835DBCB nan nan Wavves 133.25016 0.0 0 0.282 0.596 Wavvves 0.471578247701 SOJTQHQ12A8C143C5F 128.116 89.519 1 0.0 I Want To See You (And Go To The Movies) 2009 -- ARFG9M11187FB3BBCB nan nan Nashua USA C-Side 247.32689 0.0 9 0.612 -4.896 Santa Festival Compilation 2008 vol.1 nan SOAJSQL12AB0180501 242.196 171.278 5 1.0 Loose on the Dancefloor 0 225261 ...
레코드 샘플을 보면서 데이터에 대한 몇 가지 사항을 관찰할 수 있습니다. 나중에 데이터를 처리할 때 이러한 관찰 내용을 사용합니다.
- 레코드에 헤더가 포함되지 않습니다. 대신 헤더는 동일한 디렉터리의 별도 파일에 저장됩니다.
- 파일은 TSV(탭으로 구분된 값) 형식으로 표시됩니다.
- 일부 필드가 없거나 잘못되었습니다.
- 레코드에 헤더가 포함되지 않습니다. 대신 헤더는 동일한 디렉터리의 별도 파일에 저장됩니다.
데이터를 추가로 탐색하고 분석하려면 이러한 관찰을 사용하여 TSV 형식의 노래 데이터를 PySpark DataFrame에 로드합니다. 이렇게 하려면 셀 작업 메뉴에서 을 클릭하고 아래 셀 추가를 선택하고 새 셀에 다음 코드를 입력한 다음 >셀 실행을 클릭합니다.
df = spark.read.format('csv').option("sep", "\t").load('dbfs:/databricks-datasets/songs/data-001/part-00000') df.display()
데이터 파일에 헤더가 없으므로 열 이름은
_c0
,_c1
등으로 표시됩니다. 각 열은 실제 데이터 형식과 관계없이string
으로 해석됩니다. 다음 단계에서 원시 데이터를 수집하면 데이터를 로드할 때 유효한 스키마를 적용하는 방법의 예가 표시됩니다.