Dela via


Utforska källdata för en datapipeline

Ett vanligt första steg när du skapar en datapipeline är att förstå källdata för pipelinen. I det här steget kör du Kommandona Databricks Utilities och PySpark i en notebook-fil för att undersöka källdata och artefakter.

Mer information om undersökande dataanalys finns i Undersökande dataanalys på Azure Databricks: Verktyg och tekniker.

Video: Introduktion till Databricks-notebook-filer

En introduktion till Databricks-notebook-filer finns i den här videon:

Skapa en notebook-fil för datautforskning

  1. I sidofältet klickar du på Ny ikonNy och selectNotebook- från menyn. Anteckningsboken öppnas med ett standardnamn som du kan ersätta.

  2. Ange ett namn på anteckningsboken, till exempel Explore songs data. Som standard:

    • Python är det valda språket.
    • Anteckningsboken är kopplad till det senaste klustret som du använde. I det här fallet klustret som du skapade i steg 1: Skapa ett kluster.
  3. Om du vill visa innehållet i katalogen som innehåller datamängden anger du följande i den första cellen i anteckningsboken, klickar på Kör menyoch selectKör cell.

    %fs ls "/databricks-datasets/songs"
    
    path name storlek modificationTime
    dbfs:/databricks-datasets/songs/README.md VIKTIGT.md 1719 1454620183000
    dbfs:/databricks-datasets/songs/data-001/ data-001/ 0 1672791237846
    dbfs:/databricks-datasets/songs/data-002/ data-002/ 0 1672791237846

Utforska data

  1. README-filen innehåller information om datamängden, inklusive en beskrivning av data schema. Den schema-informationen används i nästa steg när man matar in data. Om du vill visa innehållet i README klickar du på Down Caret i menyn cellåtgärder, selectLägg till cell nedanföranger du följande i den nya cellen, klickar på Kör menyoch selectKör cell.

    %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
    ...
    
  2. De poster som används i det här exemplet finns i /databricks-datasets/songs/data-001/ katalogen. Om du vill visa innehållet i den här katalogen klickar du på Down Caret i menyn cellåtgärder, selectLägg till cell nedanföranger du följande i den nya cellen, klickar på Kör menyoch selectKör cell.

    %fs ls "/databricks-datasets/songs/data-001"
    
    path name storlek modificationTime
    dbfs:/databricks-datasets/songs/data-001/header.txt header.txt 377 1454633901000
    dbfs:/databricks-datasets/songs/data-001/part-00000 del-00000 52837 1454547464000
    dbfs:/databricks-datasets/songs/data-001/part-00001 part-00001 52469 1454547465000
  3. Eftersom README- och filnamnen inte anger filformatet kan du visa ett exempel på posterna för att bättre förstå innehållet och formatet för varje post. För att läsa och visa de första tio posterna från en av datafilerna, klicka på Down Caret i menyn för cellåtgärder. Sedan klickar du på selectLägg till cell nedanför, ange följande i den nya cellen, klicka på Kör-menyn, och slutligen selectKör cell.

    %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
     ...
    

    Du kan observera några saker om data från att visa ett exempel på posterna. Du kommer att använda dessa observationer senare när du bearbetar data:

    • Posterna innehåller inte ett huvud. I stället lagras huvudet i en separat fil i samma katalog.
      • Filerna verkar vara i TSV-format (tab-separated value).
      • Vissa fält saknas eller är ogiltiga.
  4. Om du vill utforska och analysera data ytterligare använder du dessa observationer för att läsa in TSV-formaterade sångdata till en PySpark DataFrame. Om du vill göra det klickar du på Down Caret i menyn cellåtgärder, selectLägg till cell nedanför, anger följande kod i den nya cellen och klickar sedan på Kör-menyn>Kör cell.

    df = spark.read.format('csv').option("sep", "\t").load('dbfs:/databricks-datasets/songs/data-001/part-00000')
    df.display()
    

    Eftersom datafilen saknar ett huvud visas column namn som _c0, _c1och så vidare. Varje column tolkas som en string oavsett den faktiska datatypen. Inmatningen av rådata i nästa steg visar ett exempel på hur du kan använda en giltig schema när du läser in data.

    DataFrame som skapats från rådata