Tablespaces - Parte 2
Published: 2023-12-08 01:37:13

Continuando com o assunto relacionado a Tablespaces, é interessante demonstrar como elas são aplicadas com um exemplo. A princípio é necessário aplicar uma demonstração ilustrada de como as tablespaces se comportam dentro do banco de dados:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8qbm8mezbj0w95sg66y5.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j2b4tf2bf3lpro91vm1j.png)

Apesar da tablespace de usuários ser gerada automaticamente, utilizaremos desse cenário caso fosse criado manualmente, utilizando os comandos que foram mostrados no primeiro artigo nesse exemplo claro.

Para a criação da talespace USERS utilizaremos a seguinte query:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z57uhmqf51fdqq74tus3.png)

Os elementos presentes nesse trecho representam suas funcionalidades como:
users_ts: nome do tablespace. 
‘/path/to/users_data.dbf’: se refere ao caminho para o arquivo de dados (datafile). 
SIZE 200M:se refere ao tamanho com que a tablespace iniciará. 
AUTOEXTEND ON: permite a expansão automática do tabelaspace. 
NEXT 50M: define o tamanho da próxima extensão em 50 megabytes. 
MAXSIZE UNLIMITED: especifica que a limitação do crescimento da tablespace.

Para consultar a tablespace USERS utilizaremos a seguinte query:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5xbxu2loirjkzgbxikhn.png)

Os novos elementos apresentados no trecho anterior correspondem a:
table_name: nome da tabela.
tablespace_name: nome do tablespace ao qual a tabela pertence.
num_rows: número de linhas que contém na tabela.
blocks: número de blocos de dados alocados para a tabela.
avg_row_len: comprimento médio de uma linha na tabela.
last_analyzed: data da última análise da tabela.
SELECT: comando para retornar dados do banco.
FROM: comando que retorna a origem das informações.
WHERE: aponta a restrição/ filtro na consulta do banco.

Para fazer uma alteração na tablespace USERS utilizaremos a seguinte query:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3hgonxkh50q1ever2bsj.png)

O novo elemento apresentado no trecho anterior corresponde a:
ALTER: comando para alterar o um objeto do banco de dados.

Para fazer a exclusão da tablespace USERS utilizaremos a seguinte query:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3sh9vcvy49j894tyflpg.png)

Os novos elementos apresentados no trecho anterior correspondem a:
INCLUDING CONTENTS: Indica que todos os objetos (tabelas, índices, etc.) dentro do tablespace USERS devem ser excluídos.
AND DATAFILES: indica que os arquivos de dados devem ser excluídos também.

Alguns exemplos de práticas usando as Tablespaces juntamente considerando as suas vantagens apresentadas no artigo anterior como:
- Otimizar consultas no dia a dia para armazenar tabelas e índices distribuindo os dados.
- Movimentação de tabelas grandes para tablespaces durante manutenções procurando minimizar o impacto durante processos.
- Manter organização de dados divididos por seções otimizando buscas por informações futuras.

Todos pontos que, se aplicados no ambiente de trabalho, serão eficientes para segurança, organização, otimização e velocidade durante sua jornada. Importante ressaltar que em bancos de dados existem inúmeras formas de ajudar durante os processos e as tablespaces foram implantadas para serem mais uma solução para grandes processos e análises.