BookmarkSubscribeRSS Feed
Dica da Semana: Otimize e automatize seus scripts utilizando a Dictionary.Tables
pkusniaruk
SAS Employee

O SAS possui diversas tabelas e recursos pré-configurados em sua ferramenta, que grande parte dos usuários não conhecem ou não tem o costume de usar, mas que podem ser muito úteis para otimizar e até mesmo automatizar vários processos. 

Um desses recursos é DICTIONARY, que pode ser utilizado a qualquer momento durante uma sessão SAS e funciona como uma espécie de dicionário, que captura e armazena em formato de tabelas valiosas informações sobre libnames, data sets, colunas e atributos, formatos, macros, entre muitas outras. 

 

Uma dessas tabelas bastante útil é a dictionary.tables, ela possui uma série de informações sobre as bases disponíveis na sessão SAS ativa do usuário. 


Segue abaixo algumas das informações que podem ser consultadas: 

 

Libname 
- Nome da Tabela 
- Tipo (DATA ou VIEW) 
- Datas de Criação e Modificação da Tabela 
- Quantidade de Variáveis na Tabela 
- Quantidade de Observações na Tabela 
- Tipo de Compressão utilizada na tabela (Se está comprida ou não, e qual o tipo de compressão) 
- Tamanho da tabela em disco 
- Entre outras informações 

 

Uma forma de consultar esses dados é realizando um select simples dentro de um PROC SQL, conforme exemplo abaixo: 

 

Proc sql; 

Create table work.dicionario_tabelas_sashelp as  
		select * 
		from dictionary.tables 
		where libname = “SASHELP”; 
Quit;

Resultado:

 

pkusniaruk_0-1629924217007.png

 

 

Vale a pena explorar essa tabela, assim como outras opções disponíveis no dictionary do SAS. 
Caso você queira conhecer mais sobre o Dictionary do SAS, você pode consultar a dictionary.dictionaries, que possui informações sobre todas tabelas e views de dicionário disponíveis no SAS. 

 

 

OBS: Dependendo do ambiente em que estiver trabalhando, as tabelas de dicionário podem ser muito grandes e demorar muito tempo para processar. Nesses casos, pensando nisso, como dica de boa prática deve-se sempre filtrar essas tabelas para realizar consultas mais precisas sobre o que você está procurando. Por exemplo, filtrar apenas uma libname ou apenas uma tabela. 

3 Comments

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Article Labels
Article Tags