quarta-feira, 27 de novembro de 2013

SQL Azure - Um Banco de Dados na Nuvem

O Que é o SQL Azure?

O SQL Azure é um conjunto de serviços que oferece capacidades de processamento e armazenamento de dados relacionais na nuvem, sobre a plataforma Windows Azure.

Usando o SQL Azure, as aplicações podem aproveitar recursos como persistência de dados, business intelligence, sincronização, replicação de dados, relatórios, data mining, etc., a partir de uma infraestrutura de alta escalabilidade e provisionamento dinâmico, que são características nativas de um ambiente em nuvem.

Entre os benefícios do SQL Azure podemos destacar seu modelo de programação simétrico, que permite ao desenvolvedor trabalhar com o ambiente SQL Server 2008 local (on-premise) e o ambiente de dados do SQL Azure da mesma forma, aproveitando os mesmo recursos do .NET Framework.
Outro benefício do SQL Azure é permitir o foco na aplicação, uma vez que o administrador de dados ou DBA – Database Administrator – não precisa se preocupar com atividades relacionadas à infraestrutura do ambiente SQL Azure, como:
  • Compra de repositório e espaço de armazenamento de dados para seu datacenter;
  • Configuração física e lógica de repositórios;
  • Dimensionamento de servidores;
  • Instalação e atualização de software de bancos de dados;
  • Diagnóstico e resolução de falhas de hardware, etc.;
O principal recurso do SQL Azure é sua capacidade de persistência de dados relacionais, da mesma forma que temos no SQL Server 2008 local (on-premise). Além do suporte ao modelo relacional, o serviço SQL Azure suporta acesso direto via ADO.NET, da mesma forma como ocorre em aplicações locais acessando dados em um banco SQL Server local, ou seja, de forma transparente para o desenvolvedor.
 O SQL Azure suporta um modelo de provisionamento baseado em contas Azure com servidores e bases de dados (ou instâncias de SQL Azure), o que permite ao usuário do serviço a criação de bases de dados de 1 GB a 50 GB de espaço para armazenamento, permitindo ainda diversas combinações.
Para o modelo de provisionamento do SQL Azure destacamos seus três componentes:
  • Account (conta): Cada conta Azure tem zero ou mais servidores contratados, sendo o instrumento principal para controle de Billing (pagamento);
  • Server (servidor): Cada servidor tem um ou mais bases de dados, sendo o container principal de nossas instâncias de bases. O servidor ainda contém metadados sobre as bases em uso e informações para autenticação. É através do servidor que nos conectamos em nossas bases de dados no SQL Azure, sendo a unidade de autenticação no modelo. Também, o servidor é a unidade de geo-localização, por onde controlamos o datacenter para hospedagem de nossas bases na plataforma Windows Azure, sendo também acessado através de um nome padrão DNS.
  • Database (base de dados): finalmente, cada database ou base de dados no SQL Azure possui os objetos SQL de nossas aplicações. É a unidade de consistência e multi-tenancy do modelo, contendo nossas informações de usuários, tabelas, views, índices, etc. A base de dados é a unidade granular básica para cobrança no SQL Azure.
Por exemplo, para a conta MyAccount, podemos ter um servidor de nome (Fully Qualified DNS name) xaqpblthd.database.windows.net, que conterá nossas bases de dados para aplicações MyDatabaseApp1 e MyDatabaseApp2.
  É possível escolher entre dois tipos de contratação de bases de dados no SQL Azure:
  • Web Edition: que permite instâncias de 1 GB ou 5 GB de espaço para armazenamento de dados;
  • Business Edition: que permite instâncias de 10, 20, 30, 40 e 50 GB de espaço para armazenamento de dados.
 A Quem se Destina:

A empresas que precisam utilizar um banco de dados relacional, e que o mesmo esteja disponível na internet para que possa ser utilizado em sistemas rodando em diferentes locais. Permitindo assim que a empresa não precise se preocupar com a necessidade de ter um servidor local em cada empresa e ainda garantir que os dados estão sincronizados em todos os servidores locais.
O preço cobrado pelo serviço varia de acordo com o tamanho do banco de dados, segue abaixo uma tabela com os preços (tabela usada como base as tarifas em 27/11/2013 e usando como base o dólar a R$ 2,30) cobrados por mês:
 
TAMANHO DO BANCO DE DADOS(RATEADO POR DIA)
De 0 a 100 MB R$ 11,488  
100 MB a 1 GB R$ 22,977  
1 GB a 10 GB R$ 22,977
pelo primeiro GB
R$ 9,19
por cada GB adicional
10 GB a 50 GB R$ 105,708
pelos primeiros 10 GB
R$ 4,59
por cada GB adicional
50 GB a 150 GB R$ 289,524
pelos primeiros 50 GB
R$ 2,297
para cada GB adicional

 Uso e Importância:

Para empresas que utilizam um banco de dados relacional e desejam que o mesmo possa ser acessado pela internet e tenha uma alta disponibilidade é indicado que a empresa contrate um serviço em Nuvem pela alta disponibilidade que a mesma oferece e o SQL Azure é uma alternativa a essa necessidade. O SQL Azure possui uma alta disponibilidade, pode ser utilizado da mesma forma que um banco de dados local (SQL Server 2008 ou superior), possui toda a segurança e controle a falhas que a Nuvem oferece e possui um preço atrativo.
Um banco de dados local tem um custo alto se analisado o valor da licença, hardware necessário para o mesmo (incluindo a redundância do mesmo), a alta disponibilidade de conexão (o custo em se ter um link dedicado ainda é alto) e a preocupação com backups constantes e redundantes para garantir a consistência dos dados e a tolerância a falhas, para garantir que no caso de um problema o banco possa ser recuperado utilizando algum backup e ou utilizando o hardware redundante.
O SQL Azure já garante a alta disponibilidade e a redundância de hardware, garantindo que existam no mínimo 2 cópias do seu banco de dados nos servidores em nuvem (são, na verdade, 3 cópias, 1 principal e 2 secundárias, e o que é garantido é que pelo menos 2 das 3 cópias estão consistentes) e essas cópias ficam em servidores físicos diferentes para garantir que em caso de problemas em um servidor o outro seja ativado automaticamente. A Microsoft garante que no caso de uma manutenção preventiva em que seja necessário a inatividade do seu banco de dados, por algum motivo qualquer, ela se compromete a avisar com no mínimo 5 dias de antecedência.    

Fontes: http://msdn.microsoft.com/pt-br/library/hh147515.aspx#sqlazure
             http://www.windowsazure.com/pt-br/pricing/details/sql-database/#service-webandbusiness 
 

Nenhum comentário:

Postar um comentário