Pular para o conteúdo principal

Explorar os dados de origem para um pipeline de dados

Uma primeira etapa comum na criação de um pipeline de dados é entender os dados de origem do pipeline. Nesta etapa, o senhor executará Databricks utilidades e PySpark comando em um Notebook para examinar os dados de origem e os artefatos.

Para saber mais sobre análise exploratória de dados, consulte Análise exploratória de dados em Databricks: Ferramentas e técnicas.

Criar um Notebook de exploração de dados

  1. Na barra lateral, clique em Novo ícone New e selecione Notebook no menu. O Notebook abre com um nome default que o senhor pode substituir.

  2. Insira um nome para o notebook, por exemplo, Explore songs data. Por padrão:

    • Python é a linguagem selecionada.
    • O Notebook é anexado ao último clustering que o senhor usou. Nesse caso, o clustering que o senhor criou na Etapa 1: Criar um compute recurso.
  3. Para view o conteúdo do diretório que contém o dataset, digite o seguinte na primeira célula do Notebook, clique em Menu Executar e selecione Executar Cell .

    Bash
    %fs ls "/databricks-datasets/songs"

    Caminho

    name

    Tamanho

    Tempo de modificação

    dbfs:/databricks-dataset/songs/README.md

    README.md

    1719

    1454620183000

    dbfs:/databricks-dataset/songs/data-001/

    dados-001/

    0

    1672791237846

    dbfs:/databricks-dataset/songs/data-002/

    dados-002/

    0

    1672791237846

Explore os dados

  1. O arquivo README contém informações sobre o site dataset, incluindo uma descrição do esquema de dados. As informações do esquema são usadas na próxima etapa ao ingerir os dados. Para view o conteúdo do README, clique em Abaixo do cursor no menu de ações da célula, selecione Add Cell abaixo , digite o seguinte na nova célula, clique em Menu Executar e selecione Executar célula .

    Bash
    %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. Os registros usados neste exemplo estão no diretório /databricks-datasets/songs/data-001/. Para view o conteúdo desse diretório, clique em Abaixo do cursor no menu de ações da célula, selecione Add Cell abaixo , digite o seguinte na nova célula, clique em Menu Executar e selecione Executar célula .

    Bash
    %fs ls "/databricks-datasets/songs/data-001"

    Caminho

    name

    Tamanho

    Tempo de modificação

    dbfs:/databricks-dataset/songs/data-001/header.txt

    header.txt

    377

    1454633901000

    dbfs:/databricks-dataset/songs/data-001/part-00000

    parte-00000

    52837

    1454547464000

    dbfs:/databricks-dataset/songs/data-001/part-00001

    parte-00001

    52469

    1454547465000

  3. Como o README e os nomes dos arquivos não indicam o formato do arquivo, o senhor pode view uma amostra dos registros para entender melhor o conteúdo e o formato de cada registro. Para ler e exibir os dez primeiros registros de um dos arquivos de dados, clique em Abaixo do cursor no menu de ações da célula, selecione Add Cell abaixo , digite o seguinte na nova célula, clique em Menu Executar e selecione execução Cell .

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

    Você pode observar algumas coisas sobre os dados ao visualizar uma amostra dos registros. Você usará essas observações posteriormente ao processar os dados:

    • Os registros não contêm um cabeçalho. Em vez disso, o cabeçalho é armazenado em um arquivo separado no mesmo diretório.
      • Os arquivos parecem estar no formato tab-separated value (TSV).
      • Alguns campos estão ausentes ou são inválidos.
  4. Para explorar e analisar melhor o uso de dados, essas observações para carregar os dados da música formatados em TSV em um arquivo PySpark DataFrame. Para fazer isso, clique em Abaixo do cursor no menu de ações da célula, selecione Add Cell abaixo , digite o seguinte código na nova célula e clique em Menu Executar > execução Cell .

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

    Como o arquivo de dados não tem um cabeçalho, os nomes das colunas são exibidos como _c0, _c1 e assim por diante. Cada coluna é interpretada como string, independentemente do tipo de dados real. A ingestão dos dados brutos na próxima etapa mostra um exemplo de como o senhor pode impor um esquema válido ao carregar os dados.

    DataFrame criado a partir de dados brutos de músicas