Noções básicas das estruturas lógicas no Oracle 12c
Todas as estruturas lógicas que você verá estão em arquivos de dados do banco de dados. estruturas lógicas da Oracle 12c permitem que você organize seus dados em partes gerenciáveis e, bem, lógicos.
Menu
Vamos examinar a relação da lógica aos objetos físicos. A seta aponta na direção de um relacionamento um-para-muitos.
Espaços de tabela no Oracle 12c
tablespaces são o primeiro nível de organização lógica do seu armazenamento físico.
Cada banco de dados 12c deve ter as seguintes áreas de tabela:
SISTEMA: Armazena os objetos de banco de dados principais que são usados para executar o próprio banco de dados.
SYSAUX: Para objetos que são auxiliares e não especificamente ligada aos principais recursos do banco de dados.
DESFAZER: Armazena a reversão ou desfazer segmentos utilizados para a recuperação transação.
TEMP: Para o armazenamento temporário.
Cada espaço de tabela é responsável pela organização de um ou mais arquivos de dados. Normalmente, cada tabela pode começar anexado a um arquivo de dados, mas como o banco de dados cresce e seus arquivos tornam-se grandes, você pode decidir adicionar armazenamento na forma de vários arquivos de dados.
Então, qual é o próximo passo para obter o seu banco de dados instalado e funcionando? Você cria algumas áreas para armazenar seus dados. Digamos que seu banco de dados vai ter vendas, recursos humanos, dados contábeis e dados históricos. Você pode ter os seguintes espaços de tabela:
SALES_DATA
SALES_INDEX
HR_DATA
HR_INDEX
ACCOUNTING_DATA
ACCOUNTING_INDEX
HISTORY_DATA
HISTORY_INDEX
Segmentos no Oracle 12c
Segmentos são a próxima estrutura de armazenamento lógico depois de tabela. segmentos são objetos no banco de dados que exigem armazenamento físico e incluem o seguinte:
tabelas
índices
visões materializadas
partições
Estes exemplos são objectos não segmentos e não armazenam dados reais:
Visualizações
procedimentos
sinônimos
sequências
A última lista de objetos não vivem em um espaço de tabela com segmentos. Eles são pedaços de código que vivem no espaço de tabela SYSTEM.
Sempre que você criar um segmento, especifique o espaço de tabela que você quer que ele seja parte de. Isso ajuda com o desempenho.
Extensões no Oracle 12c
extensões são como os anéis de crescimento de uma árvore. Sempre que um segmento cresce, ele ganha uma nova medida. Quando você cria uma tabela para armazenar itens, ele recebe sua primeira medida. Como você inserir dados em que a tabela, nessa medida enche. Quando a medida enche, ele pega outra medida a partir do espaço de tabela.
Quando você cria um espaço de tabela, é todo o espaço livre. Quando você começar a criar objectos, que o espaço livre é atribuído aos segmentos em forma de extensões. Seu espaço de tabela média é composta de extensões utilizados e espaço livre.
Quando todo o espaço livre é preenchido, esse arquivo de dados está fora do espaço. É quando suas habilidades DBA entrar e você decide como fazer mais espaço livre disponível para os segmentos de continuar a oferecer.
Extensões não são necessariamente contíguas. Por exemplo, quando você cria uma tabela de itens e inserir os primeiros 1.000 itens, ele pode crescer e ampliar várias vezes. Agora seu segmento pode ser composta por cinco extensões. No entanto, você também criar uma nova tabela.
À medida que cada tabela é criada uma nova área de tabela, que começa no início do ficheiro de dados. Depois de criar a sua segunda mesa, a sua primeira tabela pode precisar de estender novamente. Sua próxima medida vem depois do segundo grau. No final, todos os objetos que compartilham um espaço de tabela terão suas extensões misturados.
Esta não é uma coisa ruim. Nos últimos anos, antes de a Oracle tinha melhores algoritmos para armazenamento, DBAs passou muito do seu tempo e esforços tentando aglutinar essas extensões. Era Chamado fragmentação. É uma coisa do passado. Não se chupado! Basta deixá-lo ser. A Oracle 12c é plenamente capaz de gerir tais situações.
Há situações onde você tem vários arquivos de dados em um espaço de tabela. Se um espaço de tabela tem mais de um arquivo de dados, o espaço de tabela cria automaticamente extensões de uma forma round-robin em todos os arquivos de dados. Esta é outra característica de desempenho Oracle.
Digamos que você tenha uma grande mesa que suporta a maioria de sua aplicação. Ele vive em um espaço de tabela feita de quatro arquivos de dados. Como o quadro se estende, a Oracle aloca as extensões através de cada arquivo de dados como este:
1,2,3,4,1,2,3,4,1,2,3,4. . . e assim por diante
Desta forma, a Oracle pode tirar vantagem da propagação de dados em vários dispositivos físicos quando os usuários acessarem dados. Ele reduz a contenção em segmentos que têm um monte de atividade.
blocos da Oracle no Oracle 12c
A bloco do oracle é a unidade mínima que a Oracle irá ler ou escrever em um determinado momento.
A Oracle normalmente lê e escreve mais de um bloco de uma só vez, mas isso é com a Oracle nos dias de hoje. Você costumava ter mais controle direto de como a Oracle conseguiu a sua leitura e escrita de blocos, mas agora funcionalidade é automaticamente sintonizado. Você pode ajustá-lo manualmente, até certo ponto, mas a maioria das instalações são deixadas para Oracle.
Independentemente disso, os blocos estão a unidade lógica final do armazenamento. Os dados de suas tabelas e índices são armazenados em blocos. As seguintes coisas acontecem quando você inserir uma nova linha em uma tabela:
A Oracle encontra o segmento.
A Oracle pede esse segmento se há qualquer sala.
O segmento retorna um bloco que não é completo.
A entrada de linha ou índice é adicionado a esse bloco.
Se nenhum bloco são livres para inserções, o segmento de pega outra medida livre da tabela. By the way, tudo isso é feito pelo processo do servidor ao qual você está conectado.
blocos Oracle também tem uma contraparte física, assim como os arquivos de dados fazer. blocos da Oracle são feitos de blocos OS. É formatado o tamanho da unidade de armazenamento mínima no dispositivo.