Anda di halaman 1dari 20

Arquitetura do SQL Server

Prof. Emiliano Monteiro


Camada de protocolos
SQL OS
M
o
t
o
r

d
o

B
a
n
c
o
M
o
t
o
r

d
o

B
a
n
c
o
M
o
t
o
r

R
e
l
a
c
i
o
n
a
l
M
o
t
o
r

d
e

A
r
m
a
z
e
n
a
m
e
n
t
o
Camada de protocolos
Esta camada implementa a interface externa para o SQL Server.
Todas as operaes que podem ser invocadas no SQL Server so
transmitidos atrav!s de um formato definido pela Microsoft"
c#amado Ta$ular %ata Stream&T%S'.
T%S ! um protocolo da camada de aplicao" utili(ada para
transferir dados entre um servidor de $anco e um cliente.
)nicialmente pro*etado e desenvolvido pela S+$ase para o seu
motor do SQL Server relacional S+$ase em ,-./" e mais tarde pela
Microsoft no Microsoft SQL Server" os pacotes T%S pode ser
envolvido em outros protocolos de transporte f0sicos" incluindo
TCP1)P" 2amed Pipes" e mem3ria compartil#ada. Al!m disso" a AP)
do SQL Server tam$!m est4 dispon0vel para servios 5e$.
Motor 6elacional
Tam$!m c#amado de 7processador de consultas8" o mecanismo
relacional inclui os componentes do SQL Server que determinam o
que sua consulta precisa fa(er exatamente e a mel#or maneira de
fa(9:lo. Ele ;erencia a execuo de consultas.
Tarefas diferentes de mecanismo relacional<
Processamento de consultas
=erenciamento de Mem3ria
T#reads e =esto de Tarefas
=erenciamento de $uffer
Processamento de consultas distri$u0das
Motor de arma(enamento
Motor de arma(enamento ! respons4vel pelo
arma(enamento e recuperao de dados so$re o
sistema de arma(enamento &disco" SA2" etc.'.
2o servidor SQL" existem dois tipos de arquivos que
so criados no n0vel do disco<
Arquivo de dados e arquivo de lo;.
Arquivo de dados arma(ena fisicamente os dados em
p4;inas de dados.
Lo; que tam$!m so con#ecidos por escrever o
re;istro das operaes &lo;s'" so utili(ados para
arma(enar transaes executadas na $ase de dados.
SQL >S
Esta situa:se entre a m4quina #ost &?indo5s >S' e o SQL Server.
Todas as atividades reali(adas no motor de $anco de dados so
atendidos pelo SQL >S.
@ um sistema operacional altamente confi;ur4vel com uma
poderosa AP) &interface de pro;ramao de aplicativo'" permitindo
uma s!rie de operaes e principalmente o paralelismo avanado
&suporte multi t#reads'.
>S SQL fornece servios operacionais diferentes do sistema" tais
como ofertas de ;erenciamento de pool de mem3ria" $loqueios de
re;istro e de deteco de deadlocA. >utros servios incluem
manipulao de exceo" #ospeda;em para componentes externos
como Common Lan;ua;e 6untime : CL6 &para .net nativo'" etc.
Arquitetura do >racle
System Global Area
S+stem =lo$al Area &S=A' : ! uma terminolo;ia
usada no S=B% >racle que representa uma 4rea
de mem3ria compartil#ada respons4vel por
arma(enar todas as informaes referentes aos
processos do >racle.
Essa 4rea ! dividida em v4rias outras 4reas de
mem3ria que cada instCncia do $anco de dados
ocupa no S=A.
S#ared Pool
Cac#e Buffer< Este $locos de dados so arma(enados
temporariamente quando so lidos do disco. )sto permite um acesso
repetitivo para os $locos de dados a partir da cac#e" em ve( leituras
a partir do disco.
Cac#e de dicion4rio< Ele cont!m informaes so$re as ta$elas de
dicion4rio de dados" incluindo informaes so$re contas de
usu4rios" arquivos de $anco de dados" se;mentos" extenses" mesas
e direitos &privil!;ios'. &so metadados'DD
6edo Lo; Buffer< Ele cont!m informaes so$re operaes
reali(adas que ainda no foram escritas para os arquivos de 7lo;
redo online8.
S#ared pool< Aqui esto interli;adas as consultas recentes utili(ado
instrues SQL e seus planos de execuo eE arma(enamento do
cac#e de dicion4rio.
Pool FAGA< Analisar os comandos Fava.
Arquitetura do M+SQL
Camada de aplicao
Hsu4rios e clientes intera;e com o 6%BMS M+SQL.
I4 tr9s componentes nesta camada<
,' Administradores
J' Clientes
K' Hsu4rios comuns
>s administradores usam a interface administrativa e v4rios
utilit4rios como< m+sqladmin" isamc#A" etc.
>s clientes se comunicam com o M+SQL atrav!s de v4rias interfaces
e utilit4rios com acesso ao M+SQL AP)s.
Hsu4rios comuns< intera;em com o M+SQL 6%BMS utili(ando
Lm+sql7 ou li$m+sql.dll.
LM+sqlL ! na verdade uma interface de consulta. @ um monitor que
permite aos usu4rios para emitir instrues SQL e ver os resultados.
Camada l3;ica
A camada l3;ica do M+SQL ! dividida em v4rios
su$sistemas<
,. Processador de consultas.
J. =erenciamento de transaes.
K. =erenciamento de recuperao.
/. =erenciamento de arma(enamento.
>s su$sistemas acima tra$al#am em con*unto
para processar as solicitaes para o servidor de
$anco de dados M+SQL.
,. Processador de Consultas &Quer+s'
> Processador de consulta consiste dos
se;uintes sistemas<
)ncorporado %ML precompiler
%%L compilador
Analisador de consultas
Pre:processor consulta
Se;urana
>timi(ador de consultas
Motor de Execuo
J. =estor de transao
Ela facilita o acesso a dados simultCneos.
Mornece a facilidade de $loqueio.
=arante v4rios que v4rios usu4rios1sesses
possam acessar simultaneamente dados de
uma forma consistente.
)mpede a corrupo de dados ou danos a
dados.
=esto de $loqueio.
K. =esto de recuperao
,. Lo; Mana;er
6e;istra cada operao executada no $anco de dados.
Arma(ena os re;istros de operaes com os comandos
do M+SQL.
Prote;er contra fal#as do sistema ao executar comandos
que iro tra(er de volta o $anco de dados para seu
Nltimo estado est4vel.
J. 6ecover+ Mana;er
6espons4vel pela recuperao de $anco de dados para
seu Nltimo estado est4vel.
Hsa os re;istros criados pelo ;erente de lo;.
/. =esto de arma(enamento
=estor de arma(enamento<
Ele a;e como uma interface com o sistema operacional.
Sua principal tarefa ! escrever dados para o disco" assim como os
dados internos do sistema.
Buffer Mana;er<
=ere recursos alocados em mem3ria" decide a quantidade de mem3ria
para alocar por $uffer.
=estor de recursos<
Aceita pedidos do mecanismo de execuo.
Aceita pedidos so$re detal#es do ;erenciador de $uffer.
%evolve os dados para a camada superior.