Você está na página 1de 14

Banco de Dados

Neste tópico, vamos apresentar os conceitos de arquivos e grupos de


arquivos, bem como as diferenças entre as funções dos Administradores
de Banco de Dados.
Conteúdos:
 Administrador de Dados versus Administrador de Banco de
Dados
 Informações básicas sobre Banco de Dados
 Grupos de arquivos.
Ao finalizar este tópico, você será capaz de:
 Identificar o que é instância e mecanismo de Banco de Dados.
 Identificar Tabelas de Sistema.
 Explicar quais são os arquivos do Banco de Dados.
 Compreender o que são grupos de arquivos e seus tipos.

Administrador de
Dados versus Administrador de Banco de
Dados
Você sabia que as funções de Administrador de Dados (AD) e
Administrador de Banco de Dados são diferentes (ABD)?
Há tempos, uma discussão a respeito do gerenciamento de dados e
informações tornou a figura do Administrador de Dados mais
presente nas corporações. A partir dessa discussão, as funções do
Administrador de Dados e do Administrador de Banco de Dados
começaram a ser confundidas.
A confusão acontecia porque as duas áreas trabalham com dados e
informações da empresa.
Além disso, a administração de Banco de Dados surgiu cedo nas empresas, sendo
associada à instalação e à utilização dos sistemas de gerenciamento de Banco de Dados.
Já vimos que as funções de um Administrador de Banco de Dados (Database
Administrator) e de um Administrador de Dados são diferentes, mas você conhece as
diferenças entre essas funções? Clique nas imagens a seguir para conhecê-las.

Os objetivos da administração de Banco de Dados são:


 Instalação da base
 Manutenção
 Otimização dos SGBDs.
Os três tópicos visam atender requisitos predefinidos. Desse modo, a estrutura de dados
em hardware e software é implantada e definida com configurações recomendadas para o
melhor desempenho dos sistemas nesses ambientes.
Já as responsabilidades do Administrador de Banco de Dados são:
 Desenvolver soluções técnicas de implantação.
 Definir acesso físico aos dados.
 Garantir a segurança física para os dados abrangidos pelas aplicações.
A segurança física dos dados deve ser garantida de acordo com os modelos
desenvolvidos ou validados pela administração de dados nas diversas tecnologias e
plataformas oferecidas pelo mercado.

As funções da administração de dados são:

 Manter os modelos de dados empresariais atualizados.


 Manter as estruturas lógicas e físicas dos dados de acordo com as regras de
negócio definidas pela empresa, independentemente da tecnologia usada.
 Garantir a qualidade da informação, considerando sua utilidade para os setores da
empresa.
 Participar da avaliação de soluções de automação sempre que isso interferir na
produção e utilização da informação.
 Monitorar e implementar os modelos, bem como conferir a qualidade do conteúdo
das bases de dados.
 Garantir a adequação das bases de dados em relação aos objetivos da
organização.

A administração de dados abrange todo o sistema de informação, e não apenas os


subsistemas automáticos de processamento de dados. Dessa forma, o objetivo do
Administrador de Dados é a estratégia de negócio e seus reflexos nos requisitos de
informação, e não a tecnologia em si.

O mecanismo de Banco de Dados é o serviço principal para armazenar, processar e


garantir a segurança dos dados.
Desse modo, o mecanismo fornece acesso controlado e processamento rápido das
transações.

Mecanismo de Banco de Dados e suas


Instâncias
Instância de Banco de Dados é uma cópia do executável – nesse caso, sqlservr.exe
–, que é executada como se fosse um serviço do Windows ou outro sistema
operacional instalado.

A instância pode administrar vários bancos de dados, e cada computador


pode executar várias instâncias de Banco de Dados.

Para ter múltiplas instalações do SQL Server, devemos utilizar instâncias


nomeadas. Nesse caso, a instância possui um nome e sua chamada é feita
assim: SERVIDOR\INSTÂNCIA.

Instância do SQL Server é qualquer instalação realizada. Isso quer dizer que


será necessário realizar uma nova instalação sempre que precisar criar uma
nova instância.
O máximo de bancos de dados que podem ser criados em uma instância é de 32.767.

Exemplo
Vamos ver um exemplo de nomeação de instâncias?
Imagine que você tem um computador chamado
COMPUTADOR_PRINCIPAL e deseja instalar o SQL Server
nele. Nesse caso, o COMPUTADOR_PRINCIPAL é o
servidor.
Agora, suponha que você já instalou o SQL Server no
COMPUTADOR_PRINCIPAL e definiu uma instância
nomeada como MINHA_INSTANCIA. Nesse contexto, você
deve invocar a instância em
COMPUTADOR_PRINCIPAL\MINHA_INSTANCIA, como
demonstrado no esquema 1.
Você também pode definir mais instâncias, como
demonstrado no esquema 2.

Exemplo
Como vimos, o computador se torna um servidor quando recebe a instalação do SQL.
Além disso, cada instância (arquivo executável) administra vários bancos de dados.
Também vimos que o mesmo computador (servidor) pode conter várias instâncias. No
entanto, é interessante que as instâncias fiquem em servidores diferentes dependendo da
natureza dos dados.
Suponhamos que as instâncias FUNCIONARIOS e ALUNOS de uma escola devam ser
organizadas. Navegue pelas setas para conhecer as opções de organização dessas
instâncias.

Nesta opção, a instância FUNCIONARIOS está em um servidor e a instância ALUNOS, em


outro.
Tal organização garante a segurança das informações.
Clique nos números para conhecer a organização de cada instância em servidores
diferentes.
No entanto, a organização da instância FUNCIONARIOS e da instância ALUNOS poderia
ser feita em um único servidor.
Clique no número para conhecer a organização dessas instâncias em um único servidor.

Acessando Bancos de Dados do


Sistema
Quando instalamos o SQL Server, o programa de instalação cria alguns bancos que
armazenam dados do sistema. Tais bancos – conhecidos como Bancos de Dados do
Sistema – são utilizados com finalidades internas.

Atenção! Você só vai conseguir visualizar esses bancos depois de acessar o SQL
Server Management Studio.
Relembrando

Relembre como acessar o SQL Server Management Studio clicando no ícone.

SQL Server Management Studio é um ambiente de desenvolvimento integrado que


nos permite acessar, configurar, gerenciar e desenvolver todos os componentes do
SQL Server.

Acessando Bancos de Dados do Sistema


Para entender melhor a finalidade de cada um dos Bancos de Dados do Sistema, observe
como eles estão organizados.  Em seguida, clique em cada um deles, nas abas a seguir,
para obter mais informações.

Master - Como o próprio nome já diz, trata-se do Banco de Dados


‘mestre’. Nele são armazenadas informações de metadados de
toda a instância, configuração do servidor, informações sobre
todos os bancos da instância e informações de inicialização.
Ele registra todas as informações de nível de sistema por uma
instância do SQL Server.

Model - É um modelo para todos os Bancos de Dados que serão


criados. É como se cada banco criado fosse uma cópia do
MODEL. As modificações feitas no Banco de Dados MODEL, são
do tipo: tamanho, agrupamento, modelo de recuperação e outras opções de Banco de
Dados.
Uma vez definidas, serão aplicadas a qualquer Banco de Dados criados em seguida.
Msdb - É o banco que armazena um serviço chamado SQL Agent e onde são
armazenados seus dados.
Esse banco é usado pelo SQL Server Agent para programar alerts e jobs.
Tempdb - É um espaço de trabalho para reter objetos temporários ou conjuntos de
resultados intermediários, ou seja, é onde são armazenados os dados temporários,
como tabelas temporárias.

SQL Server e Tabelas de Sistema


Já sabemos que o SQL Server cria os Bancos de Dados do Sistema quando é instalado,
não é mesmo?
No entanto, além desses bancos de dados, o SQL Server cria algumas tabelas
automaticamente – as tabelas de sistema.
As tabelas de sistema são utilizadas com finalidades internas e NÃO devem ser alteradas.
Veja as tabelas de sistema no esquema a seguir.

Atenção! As tabelas de sistema não


devem ser alteradas diretamente por
usuário algum. Dessa forma, não tente
modificar essas tabelas com
instruções como DELETE, UPDATE,
INSERT ou outras instruções
definidas pelo usuário.

Você reparou que há tipos diferentes de exibição ou função do sistema?


Observe os termos que aparecem na terceira coluna do quadro a seguir.

Vejamos o que cada um dos três tipos de exibição ou função do sistema significa. Clique
em cada um deles para obter mais informações.
Exibição de catálogo

Corresponde a um conjunto de arquivos que armazenam parâmetros de uma linguagem


de computador conhecida como DDL (Data definition language) ou Linguagem de
Definição de Dados.
A DDL é usada para descrever a estrutura de dados ou informações, ou seja, ela fornece o
acesso aos metadados armazenados no servidor. A partir desse catálogo, conseguimos
descobrir quais objetos do Banco de Dados foram alterados nos últimos 10 dias, por
exemplo.
É possível que você encontre o termo “dicionário de dados” em jornais, artigos e revistas.
Esse termo tem o mesmo significado de “catálogo”.

Exibição de gerenciamento dinâmico

Tais tabelas retornam dados informando a situação do servidor.

Essas informações podem ser usadas para realizar o monitoramento da instância do


servidor, diagnosticar problemas, verificar a integridade da instância e acompanhar o
desempenho do servidor.
Exibição de compatibilidade
As tabelas conhecidas como exibições de compatibilidade são destinadas à
compatibilidade com versões anteriores.

Tipos de Arquivos de Bancos de Dados


Até aqui, vimos alguns tipos de Bancos de Dados e tabelas gerados automaticamente, no
momento da instalação do programa. Agora, vamos conhecer os tipos de arquivos de
Banco de Dados.
Os Bancos de Dados do SQL Server possuem três tipos de arquivos. Clique em cada um
deles, a seguir, para conhecê-los.

Primário
O arquivo de dados primário contém as informações de
inicialização do Banco de Dados e aponta para os outros
arquivos no Banco de Dados. Dados do usuário e objetos
podem ser armazenados nesse arquivo ou em arquivos de
dados secundários.
Os arquivos primários são criados pelo usuário. O sistema
utiliza a nomenclatura indicada pelo programador para criar
o arquivo primário com a extensão .mdf.

Secundário
Os arquivos secundários são definidos pelo usuário e
armazenam dados do usuário. Por essa razão, são arquivos
opcionais.
Os arquivos secundários podem ser usados para distribuir os
dados entre os discos, colocando cada arquivo em uma
unidade de disco diferente. Além disso, é possível usar arquivos
secundários para que um Banco de Dados continue se
expandindo, caso ele ultrapasse o tamanho máximo em um
único arquivo Windows.
Os arquivos secundários são opcionais e recebem a extensão .ndf.

Log de transações

Os logs de transações são arquivos que armazenam as


informações de log usadas para recuperar ou restaurar o
Banco de Dados. Nesse sentido, o termo LOG significa
relatório.

Deve haver um arquivo de log para cada Banco de Dados,


no mínimo. A extensão de nome de arquivo indicada para
arquivos de transação é .ldf.
Atenção! É importante nos lembrarmos das extensões de cada tipo de arquivo. Clique nas
extensões a seguir.

É importante saber também que os arquivos MDF e NDF podem ser unidos em grupos de
arquivos, com propósitos de disponibilidade e administração.
Vamos conhecer um pouco o tamanho dos arquivos de Bancos de Dados!
Essa informação é importante para sabermos como encontrar dados
específicos.
O tamanho dos arquivos (primário, secundário e log) aumenta conforme
cresce a quantidade de informações do Banco de Dados.
Desse modo, procurar por dados específicos em um número grande de
arquivos pode consumir muito tempo.

Tipos de Grupos de Arquivos


Agora que já conhecemos os tipos de arquivos do SQL, vamos apresentar os tipos de
GRUPOS de arquivos. Com eles podemos facilitar a busca pelos dados que precisamos
encontrar e ainda melhorar o desempenho do Banco de Dados. Repare que os nomes dos
grupos são parecidos com os nomes dos tipos de arquivos.
O SQL disponibiliza três tipos de grupos de arquivos. Clique em cada um deles para
conhecê-los.

Grupo primário
Grupo de arquivos que contém o arquivo primário.
Todas as tabelas do sistema são alocadas nesse grupo.
Grupo secundário – definido pelo usuário
Qualquer grupo de arquivos que seja definido pelo usuário quando ele cria ou
modifica o Banco de Dados.
Grupo padrão
Grupo de objetos criados no Banco de Dados sem especificação de grupo de arquivos a
que pertencem.

Exemplo
Vamos pensar na organização de três arquivos – Arquivo1.ndf, Arquivo2.ndf e
Arquivo3.ndf. Os três arquivos podem estar gravados nas unidades de disco X, Y e Z, e
atribuídos ao grupo de arquivos Grupo 1.
Podemos criar uma tabela no grupo de arquivos Grupo 1. Com isso, as consultas para
obter dados da tabela serão distribuídas pelos
três discos. Isso fará com que o desempenho
seja melhor.
O esquema a seguir ilustra essa organização.

Repare que os arquivos secundários –


Arquivo1.ndf, Arquivo2.ndf e Arquivo3.ndf –
foram criados em três unidades de disco X, Y e Z, respectivamente. Para agrupá-los,
criou-se o grupo de arquivos Grupo1.

Uma TABELA de dados é criada nesse Grupo1, e seus dados são distribuídos entre os


três arquivos secundários, a fim de melhorar o desempenho do Banco de Dados para cada
consulta realizada.

Tipos de Grupos de Arquivos


Viu como é possível utilizar a estratégia da alocação de arquivos em grupos para melhorar
o desempenho do Banco de Dados?

Só não se esqueça de que arquivos LDF não podem pertencer a grupos de arquivos.
Nesse caso, eles são analisados separadamente.

Para encerrarmos o tópico precisamos saber se você está acompanhando tudo.


Vamos rever e fixar o que aprendemos?

ComentárioClose
Não é função do DBA garantir a qualidade da informação, e manter as estruturas lógicas e
físicas dos dados, de acordo com as regras de negócio da empresa, uma vez que o
Administrador de Banco de Dados não trabalha com as questões técnicas de operação e
utilização do Banco de Dados a instalar ou instalado.

ComentárioClose
Uma instância de Banco de Dados é uma cópia do executável, nesse caso, sqlservr.exe,
que é executada como se fosse um serviço do Windows ou outro sistema operacional
instalado, portanto poderá ser administrada ou executada de várias formas.
Encerramento do Tópico
Neste tópico, você aprendeu os conceitos de arquivos e grupos de arquivos, bem como as
diferenças entre as funções dos Administradores de Dados e de Banco de Dados. 

Agora você já identificou o que é instância e mecanismo de Banco de Dados, identificou


Tabelas de Sistema, conheceu quais são os arquivos do Banco de Dados, e compreendeu
o que são grupos de arquivos e seus tipos.

Caso ainda tenha dúvidas, você pode voltar e rever o conteúdo.

Vamos prosseguir em nossos estudos? Siga para o próximo tópico!

Trabalhando com Banco de Dados


Neste tópico, serão apresentados os recursos necessários para realizar o planejamento de
um Banco de Dados.

Conteúdos:

 Planejamento da capacidade da base de dados


 Criação de um Banco de Dados
 Análise – entrevista para criar o
Banco de Dados
 Administração do tamanho do
Banco de Dados.

Ao final deste tópico, você será capaz de:

 Planejar a capacidade de um
Banco de Dados.
 Administrar o crescimento de um
Banco de Dados.
 Utilizar ferramentas específicas do
SQL Server Management Studio.

Planejamento de Banco de Dados


Você já se perguntou qual a primeira coisa a fazer para criar um Banco de Dados? Vamos
pensar juntos!

Criar um Banco de Dados não se resume a seguir um passo a passo ou digitar uma
programação.

Ao projetar um Banco de Dados, precisamos planejar o tamanho que ele terá.

O planejamento do Banco de Dados ajuda a determinar a configuração


de hardware necessária para:
 Atingir o desempenho solicitado pelos aplicativos.
 Garantir o espaço físico apropriado no disco para armazenar as solicitações de
dados e índices.

Exemplo
Vamos analisar duas situações que demandam o planejamento do Banco de Dados?
Clique em cada uma delas para obter mais informações.

Vamos supor que você tenha definido um tamanho de Banco de


Dados grande demais para ser implementado em determinada
situação.

Nesse caso, será necessário fazer mais estudos sobre a


normalização de dados da solução em questão.

Agora, vamos supor que o tamanho do Banco de Dados definido seja


menor do que o esperado.
Nessa situação, você precisará desnormalizar o Banco de Dados para
melhorar o desempenho da consulta.

Criação de um Banco de Dados


Agora, vamos “colocar a mão na massa” e criar um Banco de Dados! Para isso, partiremos
de uma situação-problema e pensaremos em uma solução. O problema em questão está
relacionado ao caso da empresa Glasbot Ltda. Navegue pelas setas para obter mais
detalhes.

A empresa Glasbot Ltda. produz embalagens de vidro de tamanhos e


capacidades diferentes.

Atualmente, algumas operações do departamento de Recursos Humanos são


realizadas manualmente. Com o crescimento do número de funcionários
contratados, a busca por informações está demandando muito tempo.

sse contexto, a empresa precisa reduzir o tempo gasto para resgatar dados de um
funcionário.

Para resolvermos a situação-problema proposta no caso da empresa Glasbot


Ltda., o ideal é começarmos com uma entrevista a um usuário-chave. Navegue
pelas setas para acompanhar o diálogo dessa entrevista.
Marcos, entrevistador: – Bom, para iniciar, é importante saber o que vocês fazem.

César, representante da empresa: – Nós produzimos embalagens de vidro de tamanhos


e capacidades diferentes. Atendemos clientes de diferentes perfis, como empresas de
cosméticos, farmacêuticas, alimentícias e outras.

Marcos, entrevistador: – Mas qual é sua necessidade?

César, representante da empresa: – Nossa necessidade está no departamento de RH.

Atualmente, algumas operações são realizadas manualmente e, devido ao crescimento do


número de novos funcionários contratados, a busca de informações está demandando
muito tempo.

Com isso, em diversas situações em que existe a necessidade de resgatar dados


pertinentes a determinado funcionário, perdemos muito tempo!

Marcos, entrevistador: – Atualmente, qual o número de funcionários?

César, representante da empresa: – Aproximadamente, 7.700 funcionários.

Marcos, entrevistador: – Certo! Com essas informações já podemos começar a pensar


na criação de um Banco de Dados que resolva o problema.

César, representante da empresa: – Muito obrigado!

A partir das informações apresentadas, já podemos tomar duas importantes


decisões quanto ao armazenamento dos dados. Clique nas imagens para
conhecê-las.

Para armazenar os registros dos 7.700 funcionários da empresa, podemos utilizar


um arquivo primário de 15 MB.

Como o número de funcionários está aumentando, precisamos definir um valor de


incremento para o crescimento do Banco de Dados. Vamos utilizar o valor de
15%.

Agora que já temos todas as informações necessárias, vamos ver como criar um
Banco de Dados.

Primeiramente, vamos visualizar esse processo no SSMS.

Demonstração
Veja a demonstração Como criar um Banco de Dados no SSMS, clicando no ícone.

Preparação para Criação de um Banco


de Dados no T-SQL
Já vimos a criação de um Banco de Dados no SSMS.

Agora, vamos RELEMBRAR como criar um Banco de Dados utilizando o Transact-SQL.


Antes de acessarmos a demonstração, precisamos entender o código a seguir.

Clique na tela do computador para ampliar o conteúdo.

Observando o código, você viu que, utilizando o T-SQL, temos diversos comandos e
parâmetros, certo? Para conhecer sua funcionalidade, clique em cada um deles a
seguir.
CREATE DATABASE Nome_Do_Banco_De_Dados
Indica o nome do Banco de Dados.
Não podemos criar Bancos de Dados com o mesmo nome em um servidor.
ON
Indica o caminho para armazenar arquivos.
FILENAME
É usado para definir o nome físico de um arquivo.
SIZE
Define o tamanho de um arquivo.
Pode ser definido utilizando Kilobytes (KB), Megabytes (MB), Gigabytes (GB)
ou Terabytes (TB).
MAXSIZE
É usado para definir o tamanho máximo que um arquivo pode atingir.
Se o maxsize não for informado, o arquivo crescerá de acordo com a base de dados, até
que todo o espaço disponível em disco seja utilizado.
FILEGROWTH
É usado para definir o incremento de crescimento do arquivo.
É possível informar em Kilobytes, Megabytes ou em porcentagem (%).
LOGON
Indica em que lugar os arquivos log devem ser definidos.

Vamos à demonstração da criação de um Banco de Dados utilizando o T-SQL.

Vejamos algumas informações importantes desse Banco de Dados:

 Nome – RH_TRANSACT
 Tamanho – 15 MB
 Tamanho máximo – 50 Mb
 Incremento – 5MB.
Demonstração

Veja a demonstração Como criar um Banco de Dados no T-SQL, clicando no ícone.

ComentárioClose
Para expandir a capacidade de armazenamento de dados do Banco de Dados (BD) e,
consequentemente de todas as tabelas – incluindo a de vendas –, é necessário aumentar
o valor do tamanho do arquivo primário de Banco de Dados, uma vez que esse aumento
permite a expansão de inserção de dados e informações no BD.

ComentárioClose
Para expandir ou reduzir o tamanho de um banco de dados, é importante conhecer os
valores de alguns totais de itens utilizados no banco de dados, a exemplo do espaço em
disco, dos índices e dos logs de transação. Não é necessário verificar os valores das
colunas de dados porque esses possuem um tamanho padrão fixo ou variável de acordo
com o tipo da coluna definida, portanto, calculados no tamanho do banco de dados a partir
dos dados em disco.

Leitura Recomendada
Amplie seu conhecimento com algumas leituras.
ALVES W. P. Banco de dados. 1. ed. São Paulo: Érica, 2014. 160 p.

______. Banco de dados – teoria e desenvolvimento. 1. ed. São Paulo: Érica, 2009. 288 p.

MACHADO, F. N. R. Banco de dados – projeto e implementação. 3. ed. São Paulo: Érica,


2014. 400 p.

MICROSOFT. Documentação do produto. Disponível em:


<http://technet.microsoft.com/pt-br/library/dd631854(v=sql.10).aspx>. Acesso em: 15 nov.
2014. 

_______. Documentação técnica do SQL Server 2016. Disponível em:


<http://technet.microsoft.com/pt-br/library/ms130214.aspx>. Acesso em: 15 nov. 2014.

_______. Guia de introdução (SQL Server 2014). Disponível em:


<http://technet.microsoft.com/pt-br/library/hh231622.aspx>. Acesso em: 15 nov. 2014.

Você também pode gostar