Fala dataholics, hoje é da série de dicas rápidas, mas que podem ajudar muito no dia a dia, tenho certeza que você já precisou fazer alguma automação ou encontrar alguma informação que esses comandos vão te mostrar, listei os top SHOWs que mais podem ser usados no dia a dia para te ajudar.
Alguns comandos de fato são bem simples, mas veja até o final, tenho certeza que pelo menos 1 desses comandos vai te auxiliar no dia a dia.
Obs: Para quem usa Unity Catalog ainda falaremos muito por aqui das tabelas de sistema, para quem era do mundo do SQL Server, essas são nossas DMVs, isso é uma alegria para administradores.
O que veremos hoje:
Listando tabelas que foram Dropadas
Listando usuários e grupos
Listando grupos para um usuário específico (Não tem na UI ainda)
Listando databases, tabelas, colunas e propriedades de uma tabela
Filtrando resultado do SHOW
Automatizando scripts, listando colunas de todas as tabelas
Os comandos SHOW no Databricks ou mesmo no Spark são usados para listar alguma coisa e mostrar na tela no formato tabular e podemos usar esse retorno a nosso favor, seja para de fato encontrar alguma informação ou automatizar alguma rotina, vamos para os comandos SHOWs e falar um pouco de cada um.
SHOW CATALOG
Esse comando é dedicado para quem está usando Unity Catalog, se você não estiver utilizando não faz sentido, pois, o único catalogo que você terá é o hive_metastore.
SHOW DATABASES \ SCHEMAS
Usado para listar todos os banco de dados dentro do catalogo informado, note que temos apenas uma lista simples, se quiser ver mais detalhes use o DESCRIBE.
O SHOW DATABASE é um alias para o SHOW SCHEMAS, ou seja, ambos são o mesmo, apenas para manter a nomenclatura de Databases, embora, era melhor manter uma só para não gerar confusão rs.
SHOW TABLES
Listando todas as tabelas de um banco de dados, note que estou informando o nome do Catálogo + nome do banco de dados, ou poderia dar um USE CATALOG e USE SCHEMA.
Uma extensão do SHOW TABLES é o SHOW TABLE, nele você algumas informações mais detalhadas para cada tabela.
SHOW TABLES DROPPED
Até agora sem novidades né, mas esse comando talvez você não conhecia, ele também é somente para quem usa o Unity Catalog, você pode listar as tabelas que foram dropadas no seu ambiente.
Se você pode ver, também temos a opção de desfazer com o UNDROP, massa ne?!
Obs: Tempo de retenção padrão de 7 dias.
SHOW TBPROPERTIES
Com esse comando podemos ver todas as configurações aplicadas na criação da tabela ou mesmo posteriormente, caso não esteja explicito aqui significa que esta usando o valor Default.
Note o exemplo do DeltaFileRetention que ajustei para 4 dias, ele já aparece na listagem, caso contrario, ele não iria aparecer, pois, estaria com Default de 7 dias.
SHOW COLUMNS
Nada de novo por aqui, apenas uma forma rápida de recuperar a lista de colunas da sua tabela.
SHOW CREATE TABLE
Esse comando é extremamente útil e uso muito no meu dia a dia, você pode usar para ver o comando de criação da tabela em caso de precisar recriar, se for uma VIEW você vai ver o código da VIEW, muito útil no a dia a dia.
SHOW PARTITIONS
Com esse comando você pode visualizar todas as partições da sua tabela de forma simples, útil para casos de troubleshooting e analises.
SHOW USERS
Listar todos os usuários criados no seu workspace.
Todos os comandos SHOW suportam o operador LIKE para buscas com regex, contudo, cuidado que o carácter chave aqui é o * e não o %, várias vezes já cai nessa pegadinha.
SHOW GROUPS
Listando todos os grupos do seu Workspace.
Agora uma coisa legal que ainda não tem na interface gráfica (aguardando há muito tempo), saber quais grupos um login faz parte.
Note que o DirectGroup marca se ele esta atribuído diretamente no grupo ou está herdando esse casso, no caso do READ_DEV ele esta herdando de algum outro grupo com esse acesso.
Olhando com o WITH GROUP, podemos ver que esse grupo READ_DEV possui o grupo READ_WRITE_PROD, no qual o login faz parte diretamente, mas herda também os acessos do READ_DEV.
AUTOMAÇÕES E SCRIPTS DINÂMICOS
Os scripts como mencionei são todos bem simples e focados no uso do dia a dia, embora você possa usar para automatizar algum script, exemplo rodando um comando em todas as tabela do seu ambiente, ou listando as colunas de todas as tabelas num formato de lista para facilitar sua vida.
RODANDO TOP 1 EM TODAS AS TABELAS PARA TESTAR SE ESTÃO ATIVAS.
Usando apenas comando SHOW e python básico podemos fazer coisas simples e úteis para determinadas situações.
COLETANDO AS COLUNAS DE TODAS AS TABELAS.
Temos nossas tabelas e todas suas colunas num formato de lista, fácil para utilizar em outras automações.
Espero que tenha te ajudado.
Link para o script:
Fique bem e até a próxima.
Comentários