Tutorial: Calcular estatísticas de contêiner usando o Databricks
Artigo
Este tutorial mostra como coletar estatísticas sobre seus contêineres usando o inventário do Armazenamento de Blobs do Azure junto com o Azure Databricks.
Neste tutorial, você aprenderá como:
Gerar um relatório de inventário
Crie um workspace do Azure Databricks e um notebook
Ler o arquivo de inventário de blobs
Obter o número e o tamanho total de blobs, instantâneos e versões
Obter o número de blobs por tipo de blob e tipo de conteúdo
Blobs de blocos, blobs de páginas e blobs de acréscimo
Subtipos
incluir versões de blob, incluir instantâneos, incluir blobs excluídos
Campos de inventário de blobs
Todos
Frequência de inventário
Diariamente
Formato de exportação
CSV
Talvez seja necessário aguardar até 24 horas depois de habilitar os relatórios de inventário para que o seu primeiro relatório seja gerado.
Configurar o Azure Databricks
Nesta seção, você criará um workspace e um notebook do Azure Databricks. Posteriormente neste tutorial, você colará snippets de código em células de notebook e, em seguida, os executará para coletar estatísticas de contêiner.
Neste bloco de código, substitua os seguintes valores:
Substitua o valor de espaço reservado <storage-account-name> pelo nome da sua conta de armazenamento.
Substitua o valor de espaço reservado <storage-account-key> pelo nome da sua conta de armazenamento.
Substitua o valor do espaço reservado <container-name> pelo contêiner que contém os relatórios de inventário.
Substitua o espaço reservado <blob-inventory-file-name> pelo nome totalmente qualificado do arquivo de inventário (por exemplo: 2023/02/02/02-16-17/blobinventory/blobinventory_1000000_0.csv).
Se sua conta tiver um namespace hierárquico, defina a variável hierarchical_namespace_enabled como True.
Pressione o botão Executar para executar o código nesta célula.
Obter contagem e tamanho de blobs
Em uma nova célula, cole o seguinte código:
print("Number of blobs in the container:", df.count())
print("Number of bytes occupied by blobs in the container:", df.agg({'Content-Length': 'sum'}).first()['sum(Content-Length)'])
Pressione o botão Executar para executar a célula.
O notebook exibe o número de blobs em um contêiner e o número de bytes ocupados por blobs no contêiner.
Obter contagem e tamanho de instantâneos
Em uma nova célula, cole o seguinte código:
from pyspark.sql.functions import *
print("Number of snapshots in the container:", df.where(~(col("Snapshot")).like("Null")).count())
dfT = df.where(~(col("Snapshot")).like("Null"))
print("Number of bytes occupied by snapshots in the container:", dfT.agg({'Content-Length': 'sum'}).first()['sum(Content-Length)'])
Pressione o botão Executar para executar a célula.
O notebook exibe o número de instantâneos e o número total de bytes ocupados por instantâneos de blob.
Obter a contagem e o tamanho das versões
Em uma nova célula, cole o seguinte código:
from pyspark.sql.functions import *
print("Number of versions in the container:", df.where(~(col("VersionId")).like("Null")).count())
dfT = df.where(~(col("VersionId")).like("Null"))
print("Number of bytes occupied by versions in the container:", dfT.agg({'Content-Length': 'sum'}).first()['sum(Content-Length)'])
Pressione SHIFT + ENTER para executar a célula.
O notebook exibe o número de versões de blob e o número total de bytes ocupados por versões de blob.
Obter contagem de blobs por tipo de blob
Em uma nova célula, cole o seguinte código:
display(df.groupBy('BlobType').count().withColumnRenamed("count", "Total number of blobs in the container by BlobType"))
Pressione SHIFT + ENTER para executar a célula.
O notebook exibe o número de tipos de blob por tipo.
Obter contagem de blobs por tipo de conteúdo
Em uma nova célula, cole o seguinte código:
display(df.groupBy('Content-Type').count().withColumnRenamed("count", "Total number of blobs in the container by Content-Type"))
Pressione SHIFT + ENTER para executar a célula.
O notebook exibe o número de blobs associados a cada tipo de conteúdo.
Encerrar o cluster
Para evitar cobrança desnecessária, encerre o recurso de computação. Consulte Encerrar uma computação.
Gerenciar a ingestão e a preparação de dados, o treinamento e a implantação de modelos e o monitoramento da solução de machine learning com Python, Azure Machine Learning e MLflow.
O inventário de Armazenamento do Azure é uma ferramenta que ajuda você a obter uma visão geral de todos os seus dados de blob em uma conta de armazenamento.