Case Banco de dados
Por: Joao Manoel • 1/12/2016 • Artigo • 1.819 Palavras (8 Páginas) • 417 Visualizações
A união faz a força![1]
João Manoel Freitas Rolim[2]
Alessandro Miranda Gonçalves[3]
- Descrição do Caso
Para referência, BI (Business Inteligence) se refere às ferramentas que mineram, extraem e classificam informações relevantes para o negócio, a partir de uma ou mais base de dados. Desta forma, gera insumos para decisões estratégicas por parte da direção (reestruturação de processos, campanhas de marketing, promoções...) visando redução de custos, aumento de participação no mercado, etc.
Você é o analista de sistemas da empresa Pagebuk, que é um conglomerado de empresas com aplicações em diversas áreas: financeiras, hotéis dentre outros.
Antigamente os Bancos de Dados eram separados, sendo um feito em MS Sql Server e outro em Mysql. Mas como a empresa está querendo aumentar a integração de informações, decidiu unificar os bancos de dados em um só.
Os bancos de dados podem ser obtidos com o professor da disciplina.
O banco de dados deve ser normalizado e com performance adequada em um SGBD com relevância no mercado. A partir dele, identificar: quais as informações mais interessantes do negócio? Como gerá-las de maneira a ser manipulada facilmente e de maneira intuitiva?
- Descrição e Análise do Caso
Quando nos deparamos com um problema a melhor maneira de encontrar a solução para ele é conhecer bem o problema e analisa-lo. No que se refere a desenvolvimento de software, Administração de Banco de Dados existe sempre todo um processo envolvido, afinal qualquer erro se torna custoso.
Cada detalhe é essencial para poder termos uma visão melhor do que está acontecendo e como podemos intervir. Há alguns anos muitos profissionais de TI[4] saiam arregaçando as mangas, fazendo tudo sem um planejamento prévio sem ter nenhuma analise previa, nada mesmo projetado apenas a ideia em sua mente e essa é uma das razões do fracasso de muitos projetos. No entanto muitos, desenvolvedores, gerentes e a DBA’s[5] passaram adotar uma metodologia para obter maior resultado, sim elaboraram o chamamos de Engenharia de Requisitos. Processo onde conhecemos o problema, analisamos o problema de dentro disso verificamos uma estratégia de Designer Pattern [6] ideal para solucionar o problema.
No tocante ao projeto que nos é apresentado é muito delicado pois estamos tratando de dados muito relevantes para a empresa PageBuk, um dos ativos mais importantes de uma organização. Pois danos materiais como perda de hardware tendo um outro equipamento sobressalente, mas os dados uma vez que são perdidos são praticamente irreparáveis.
Temos uma tarefa que exige cuidado é atualizar um SGBD[7] para uma versão mais recente, quanto mais uma migração de uma SGBD para outro de um conglomerado de empresas, envolvendo várias regras de negócios e muitas minucias de sistemas financeiros e fiscais. Tendo em vista que temos 2 SGDB’s muito conhecidos no mercado o MySQL da Oracle[8] e SQL Server da Microsoft[9] nesta abordagem de migração vamos escolher um deles e listar todos os benefícios.
Também vamos propor algumas boas práticas para aumentar desempenho, criação de cubos e uma breve descrição de Mineração dados, quais as melhores técnicas para criar um cubo para usuário final.
- Proposta
Quando o assunto é tecnologia temos uma tarefa complicada para dizer qual é melhor dentre todas pois não é uma mera discussão de marcas de roupa ou um hobby qualquer que temos. São ferramentas legitimas que resolvem problemas do dia a dia de muitas empresas, e a discussão não qual é melhor dentre todas e sim qual é a melhor para aquela situação, para aquele problema, independente quem seja seu o desenvolvedor daquela ferramenta.
Para o nosso problema a solução ideal é o SQL Server, sendo mais especifico ainda utilizaremos a versão 2012 deste produto e a questão é porque esse SDBD? E não outro? Bem existem alguns motivos pelos quais ele é o mais adequado para a situação.
- Alta Disponibilidade é uma característica do SQL Server isso inclui maior disponibilidade para aplicações.
- Maior retorno sobre o investimento
- Simplicidade de implementação e gerenciamento.
- Suporte a Mais de uma instância do banco e Vários Sememas
- Recuperação contra desastres
- Clustering entre várias Subnets
- Alta disponibilidade Analytics Server
Segundo Ribeiro (2011)
O SQL Server 2012 vai revolucionar a forma como pensamos sobre disponibilidade e recuperação.
Hoje, quando pensamos sobre esses conceitos, consideramos um banco de dados individual log shipping, replicação, espelhamento) ou uma instância do servidor SQL inteira (clustering failover).
No SQL Server 2012, além de melhorias de Clustering Failover, nós seremos capazes de tratar um grupo de bases
de dados como uma entidade, que é chamada de Availability Groups.
O SQL Server AlwaysOn é uma solução de alta disponibilidade com uma abrangência bem maior que visa a fornecer:
Maior disponibilidade para as aplicações; Maior retorno sobre o investimento;Simplicidade para implementação e gerenciamento.
Atende a pequenos, médios e grandes ambientes e oferece um conjunto de novas capacidades:
SQL Server AlwaysOn Availability Groups: um novo recurso que aumenta significativamente a capacidade de Database Mirroring e ajuda a garantir a disponibilidade dos bancos de dados de aplicativos. Fornecem um conjunto integrado de opções, incluindo failover automático e manual de um grupo de bancos de dados, suporte para até quatro secundários, failover rápido de aplicativos e reparo automático de página;
SQL Server AlwaysOn Failover Cluster Instances: melhora o Clustering Failover do SQL Server, traz suporte nativo para configuração de cluster entre sites utilizando subnets e oferece um melhor controle sobre as condições para failover automático, entre outras melhorias;
SQL Server AlwaysOn Secondaries: habilita instâncias secundárias a serem utilizadas para a execução de relatórios e operações de backup.
...