Esplorare i dati di origine per una pipeline di dati
Un primo passaggio comune per la creazione di una pipeline di dati consiste nel comprendere i dati di origine per la pipeline. In questo passaggio verranno eseguiti i comandi Databricks Utilities e PySpark in un notebook per esaminare i dati e gli artefatti di origine.
Per altre informazioni sull'analisi esplorativa dei dati, vedere Analisi esplorativa dei dati in Azure Databricks: Strumenti e tecniche.
Video: Introduzione ai notebook di Databricks
Per un'introduzione ai notebook di Databricks, guardare questo video:
Creare un notebook di esplorazione dei dati
Nella barra laterale fare clic su
Nuovo e selezionare Notebook dal menu. Il notebook viene aperto con un nome predefinito che è possibile sostituire.
Immettere un nome per il notebook, ad esempio
Explore songs data
. Per impostazione predefinita:- Python è il linguaggio selezionato.
- Il notebook è collegato all'ultimo cluster usato. In questo caso, il cluster creato nel Passaggio 1: Creare un cluster.
Per visualizzare il contenuto della directory contenente il set di dati, immettere quanto segue nella prima cella del notebook, cliccare su
e selezionare Esegui cella.
%fs ls "/databricks-datasets/songs"
path name size 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
Esplorare i dati
Il file README contiene informazioni sul set di dati, inclusa una descrizione dello schema dei dati. Le informazioni sullo schema vengono usate nel passaggio successivo durante l'inserimento dei dati. Per visualizzare il contenuto del file README, fare clic su
Cursore inattivo nel menu delle azioni della cella, selezionare Aggiungi cella sotto, immettere quanto segue nella nuova cella, fare clic su
e selezionare Esegui cella.
%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 ...
I record usati in questo esempio si trovano nella directory
/databricks-datasets/songs/data-001/
. Per visualizzare il contenuto di questa directory, fare clic sunel menu delle azioni della cella, selezionare Aggiungi Cella Sotto, immettere quanto segue nella nuova cella, fare clic su
e selezionare Esegui Cella.
%fs ls "/databricks-datasets/songs/data-001"
path name size 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 Poiché i nomi di file e README non indicano il formato di file, è possibile visualizzare un esempio dei record per comprendere meglio il contenuto e il formato di ogni record. Per leggere e visualizzare i primi dieci record da uno dei file di dati, fare clic su
nel menu azioni cella, selezionare Aggiungi cella sotto, immettere quanto segue nella nuova cella, fare clic su
e selezionare Esegui cella.
%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 ...
È possibile osservare alcuni aspetti relativi ai dati dalla visualizzazione di un campione dei record. Queste osservazioni verranno usate in un secondo momento durante l'elaborazione dei dati:
- I record non contengono un'intestazione. L'intestazione viene invece archiviata in un file separato nella stessa directory.
- I file sono in formato con valori delimitati da tabulazioni (TSV).
- Alcuni campi sono mancanti o non validi.
- I record non contengono un'intestazione. L'intestazione viene invece archiviata in un file separato nella stessa directory.
Per esplorare e analizzare ulteriormente i dati, usare queste osservazioni per caricare i dati dei brani in formato TSV in un DataFrame PySpark. A tale scopo, fare clic su
inattivo nel menu azioni cella, selezionare Aggiungi cella sotto, immettere il codice seguente nella nuova cella e quindi fare clic su
>Esegui cella.
df = spark.read.format('csv').option("sep", "\t").load('dbfs:/databricks-datasets/songs/data-001/part-00000') df.display()
Poiché il file di dati manca un'intestazione, i nomi delle colonne vengono visualizzati come
_c0
,_c1
e così via. Ogni colonna viene interpretata comestring
indipendentemente dal tipo di dati effettivo. L'inserimento dei dati non elaborati nel passaggio successivo mostra un esempio di come imporre uno schema valido quando si caricano i dati.