Sei sulla pagina 1di 33

Armazenamento de Dados

e Indexao

Armazenamento

Introduo

Dados: O que ?

Qualquer coisa contendo informao

Enciclopdia

Fita cassete

Cartas

Introduo

Dados: O que ?

Tudo que um computador processa ou capaz de


processar

E-mails

Arquivos texto

Fotos digitais

Base de dados

Armazenamento de Dados

Informao estruturada em uma forma que pode ser


armazenada, e consequentemente, utilizada

Armazenamento Primrio

Armazenamento Secundrio

Armazenamento Primrio

Principal dispositivo

Corrente eltrica

Alta velocidade

Acesso direto por CPUs

Barramento de memria

Armazenamento Secundrio

Armazenamento magntico

Mantm dados at que sejam apagados

No so diretamente conetados CPU

No so to rpidos

Armazenamento de Base de
Dados

Crescente aumento de armazenamento

Aumento de custo

Dobra a cada 2-3 anos


Elementos mais caros

Queda no desempenho

Muitos dados

Oramento vs Desempenho
8

Armazenamento de Base de
Dados

Empresas possuem DB gigantes

Muitos dados poucos acessados

Outros sempre utilizados

Manter qualidade de acesso para todos os dados

Muito custoso

Ineficiente

Arquiteturalmente impossvel
9

Armazenamento de Base de
Dados

STORAGE TIERING (ST)

Dividir dados em blocos/camadas

Dados frios so movidos

Retirados dos blocos mais custosos e rpidos

Continuam disponveis

Acesso mais lento

Baixa velocidade de acesso

10

Armazenamento de Base de
Dados

STORAGE TIERING (ST)

Efeito mnimo do desempenho

Dados frios so raramente acessados


Dados frios tambm so comprimidos

Information Lifecycle Management (ILM)

Classifica os dados e estabelece polticas de migrao de


dados em um TIER apropriado
ILM inclui todas as fases de um registro, desde o incio at o
fim
11

STORAGE TIERING (ST)

12

Armazenamento de Base de
Dados

STORAGE TIERING

Diferentes pores de dados so atribudos diferentes


TIERS baseado em:

Demanda

Custo

Desempenho

Disponibilidade

Segurana
13

Armazenamento de Base de
Dados

COMPRESSION TEARING (CT)

Usada alm de ST

Dados frios so comprimidos:

Ganho de espao

Perca de desempenho

IML:
Super Ativo Ativo Pouco Ativo Histrico

14

Armazenamento de Base de
Dados

TIERING

Mesmo com ST e CT um grande desafio decidir qual


aonde e quando um conjunto de dados deve se manter
ou migrar para outro TIER

Mtodos:

Heat Map

Automatic Data Optimization

15

Armazenamento de Base de
Dados

HEAT MAP (HM)

Otimiza a organizao dos dados

Forma que dados esto sendo acessados

Informa como os padres de acesso mudam com o


tempo

Utilizao feita por PL/SQL

16

Armazenamento de Base de
Dados

HEAT MAP (HM)

17

Armazenamento de Base de
Dados

Automatic Data Optimization (ADO)

Usurio cria polticas para compresso e deslocamento de


dados SmartCompression

SmartCompression

Utiliza HM para determinar momento de execuo de uma


operao
ADOs criadas, avaliadas e executadas a qualquer momento por um
DBA

Polticas ADOs especificam condies para inicializar uma


Operao ADO
18

Armazenamento de Base de
Dados

Automatic Data Optimization (ADO)

Reduz espao utilizado por dados antigos

Aumenta o desempenho de Queries

19

Armazenamento de Base de
Dados

Automatic Data Optimization (ADO)

Exemplo 1
ALTER TABLE orders ILM ADD POLICY
ROW STORE COMPRESS ADVANCED SEGMENT
AFTER 30 DAYS OF NO MODIFICATION;

Um segmento um conjunto de extenses que contm todos os dados para uma


estrutura de armazenamento lgico especfico dentro de uma tabela.

20

Armazenamento de Base de
Dados

Automatic Data Optimization (ADO)

Exemplo 2
ALTER TABLE orders ILM ADD POLICY
ROW STORE COMPRESS ADVANCED ROW
AFTER 3 DAYS OF NO MODIFICATION;

21

Armazenamento de Base de
Dados

Automatic Data Optimization (ADO)

Exemplo 3
ALTER TABLE orders ILM ADD
POLICY tier to low_cost_store;

22

Indexao

23

Conceito

Um ndice uma estrutura de dados que associa


uma determinada propriedade de um registro(chave
de pesquisa) sua localizao.
Dessa forma a indexao permite encontrar e
acessar um registro mais rapidamente.

ndices podem ser densos ou esparsos.

24

Estruturas de ndices

ndice primrio;

ndice de agrupamento (clustering);

ndice secundrio;

ndices multinveis;

Arvores B e B+;

Tabelas Hash;
25

Tabela Hash

Hashing uma forma de indexao de dados onde


o ndice gerado partir da chave de cada registro,
utilizando uma funo.
Os possveis ndices so inicialmente fixos.
A funo hash deve distribuir as chaves o mais
uniformemente possvel nos ndices.

26

Tabela Hash

O algoritmo deve tratar colises de chaves em um


mesmo ndice.
Os registros podem ser armazenados em:

Vetor simples

Vetor de listas

Vetor de Buckets
27

Tabela Hash

Tabelas Hash podem ser estticas ou dinmicas.


rpido para busca, insero e remoo, desde que
hajam muitas colises.
Pode usar espao desnecessrio.

28

Tabela Hash

29

rvore B

Consegue armazenar ndice e dados na mesma estrutura


(mesmo arquivo fsico)
Caractersticas de uma rvore B de ordem d

A raiz uma folha ou tem no mnimo 2 filhos

Cada n interno (no folha e no raiz) possui no mnimo d + 1 filhos

Cada n tem no mximo 2d + 1 filhos

Todas as folhas esto no mesmo nvel

Um n de uma rvore B tambm chamado de


pgina
Uma pgina armazena diversos ns da tabela
original

Seu tamanho normalmente equivale ao tamanho de uma pgina em disco

30

rvore B+

semelhante a rvore B, exceto por duas


caractersticas muito importantes:

Armazena dados somente nas folhas os ns internos servem apenas de ponteiros

As folhas so encadeadas

Isso permite o armazenamento dos dados em um


arquivo, e do ndice em outro arquivo separado

rvore B+ na prtica
31

Referncias

Automatic Data Optimiization with Oracle


Database 12c

August, 2013

Author: Kevin Jernigan

Contributing Authors:

Gregg Christman, Cris Pedregal

32

Referncias

Slides Mdulo V: Indexao em Banco de Dados

http://www.inf.unioeste.br/~clodis/BDI/BDI_2007_Modulo5_1.pdf

Hash-Based Indexes Chapter 10

Database Management Systems 3ed

R. Ramakrishnan and J. Gehrke

33

Potrebbero piacerti anche