Quem guarda os seus dados? Gerenciadores de dados SQL ou ISAM?
Cada vez mais, os clientes estão exigindo que os dados de sua aplicação sejam mantidos em bases de dados SQL para fácil acesso. Como mais e mais empresas consolidam os seus dados em uma única base corporativa, data marts e data warehouses que buscam o benefício de ter dados facilmente acessíveis sobre os clientes, produtos, dados de produção e muito mais.
Bases de dados acessíveis permitem Inteligência de negócios, relatórios e integração, que não seriam possíveis de outra forma.
Esta procura de bancos de dados padronizados e de acesso centralizado requer servidores de gerenciamento de dados que sejam sensíveis e escaláveis, com latência quase zero de extração e manipulação de dados. Além disso, a preocupação com a alta disponibilidade de dados (24 por 7) coloca pressão sobre os departamentos de TI para insistirem em bancos de dados padronizados que cumpram o padrão da indústria quanto a recuperação de desastres e soluções de alta disponibilidade.
Um Sistema de Gerenciamento de Banco de Dados Relacional (RDBMS) com base em Structured Query Language (SQL) é considerado como o padrão da indústria para armazenamento de dados, enquanto o XML é muitas vezes visto como um padrão da indústria para o transporte de dados. A integração de aplicativos, inteligência de negócios e virtualização, são todos simplificados quando bancos de dados “padrão da indústria” são adotados.
Não por qualquer razão eminentemente técnica, mas simplesmente porque os vendedores de soluções podem desenvolver essas soluções necessárias com base em normas aceitas.
Isto pode parecer um argumento circular, SQL deve ser um padrão, porque é um padrão, mas isso é em essência a realidade.
Com ou sem razão, método de acesso seqüencial indexado (ISAM) de dados é muitas vezes visto como ultrapassado e não-conforme. Fornecedores independentes de softwares (ISV) que não conseguem oferecer produtos que atendam a essas percepções podem sofrer no mercado. Além disso, as empresas que executam aplicativos com bancos de dados ISAM, podem ser percebidas como “não-conformes” com as melhores práticas da indústria e ter este pré-conceito atribuído a si, seja pela TI, gestão de riscos ou auditorias de segurança.
Percepções do mercado à parte, a migração de um “flat file” ou um tipo de aplicação Btrieve para a plataforma de aplicativos Magic xpa usando um banco de dados SQL pode entregar à organização um grande número de benefícios. A maioria dos desenvolvedores concordam que bancos de dados SQL são os preferidos para aplicações de negócio “classe empresarial”, desenvolvidas sobre a Plataforma de Aplicações Magic xpa. Por quê?
SQL fornece: uma funcionalidade mais robusta de acesso e gerenciamento dados para suportar os requisitos de negócios, como OLTP e data-warehousing; níveis mais elevados de segurança para aplicações de missão crítica; a capacidade de aplicar as regras de negócios dentro do próprio banco de dados; e suporte para aumento dos níveis de atividade de transações.
Como o SQL é um conceito popular usado em bancos de dados como MS-SQL, DB2 e Oracle, é amplamente apoiado por uma variedade de gerenciamento de dados, aplicações de negócios, relatórios e ferramentas de inteligência de negócios. Além de simplificar a conectividade com outros sistemas, as aplicações construídas no SQL são mais “à prova de futuro” do que outras. Normalização em SQL torna mais fácil para uma organização gerenciar seus dados, independentemente do seu contexto de uso. Como o SQL pode incorporar as operações lógicas no nível de banco de dados, o uso de procedimentos armazenados, e uma metodologia orientada a objetos, muitas vezes é visto como uma escolha superior para todos os tamanhos e tipos de aplicações.
O banco de dados SQL também beneficia-se de uma grande variedade de soluções avançadas para a segurança dos dados que estão prontamente disponíveis, altamente sofisticadas e, finalmente, confiáveis. Gerenciamento de identidade, potência e, amplo controle sobre o acesso à informação são reforçados através de SQL em uma grande variedade de sistemas corporativos.
Em geral, o SQL é mais adequado para os tamanhos de banco de dados muito grandes e mantém um alto grau de integridade transacional e confiabilidade operacional. Em outras palavras, é menos suscetível a falhas. A integridade dos dados pode ser mantida no nível de banco de dados, e metadados são mais facilmente rastreados para, por exemplo, logs de auditoria.
Eu estou dizendo que as abordagens ISAM são inferiores em todos os sentidos? Não. Custo é um fator. Enquanto há custos associados com a maioria dos bancos de dados SQL, existem também versões “express” ou “enxutas” de bancos de dados SQL disponíveis para aplicações de custo-sensível. ISAM às vezes é mais rápido quando você sabe o que você está procurando. Dito isto, os tempos de processamento têm avançado, a latência do disco é reduzida, e armazenamento em memória (aka Big Data) é uma tendência crescente. Além disso, o que o ISAM economiza, geralmente retorna como novos custos, devido a maiores exigências de largura de banda.
Por estas e muitas outras razões, a maioria das instalações da Plataforma de Aplicações Magic xpa, dependem do SQL como seu banco de dados principal, em parte porque o SQL pode oferecer a funcionalidade de banco de dados a um nível não disponível em outras abordagens.
- Mecanismos de sequência e identidade estão disponíveis nas bases de dados SQL para uma melhor funcionalidade de aplicação multi-usuário.
- Declarações SQL fornecem a funcionalidade necessária para uma melhor manutenção da aplicação, como atualizações de versão, atualizações de definições de campo, conversões estruturais da tabela, e campos adicionados e índices.
- A cláusula “WHERE” é um poderoso recurso de bancos de dados SQL que permite a filtragem avançada.
Muitos acreditam que o modelo relacional para armazenamento de dados e recuperação provou ser superior em lidar com grandes quantidades de dados e transformar os dados em informações úteis sem a necessidade de técnicas especiais de programação. A razão para essa superioridade é a Structured Query Language (SQL).
Esta linguagem relativamente simples permite a manipulação de dados complexos usando apenas alguns poucos comandos.
Isto é particularmente verdadeiro, assim como as informações armazenadas em bancos de dados cada vez mais combinam informação estruturada e não estruturada, e pesquisas muitas vezes precisam ser feitas através de vários campos e tabelas, em vez de pesquisas dentro de um campo específico de uma tabela específica.
Migração de aplicações do ISAM para SQL não é uma atividade sem custos, mas os benefícios são inúmeros:
Novas Percepções. Aplicativos que são baseados em SQL são percebidos como padrão da indústria, compatível e confiável. A aceitação do cliente e o cumprimento de auditoria é muito melhor.
Desempenho de aplicações. Utilização de procedimentos armazenados pode tirar um pouco da carga de desempenho de seus servidores de aplicativos. Em aplicações grandes e complexas, pode melhorar a capacidade de resposta global e confiabilidade.
Pesquisas complexas. Pesquisas complexas desempenham melhor em bancos de dados SQL. Em geral, os bancos de dados SQL são mais rápidos para se beneficiar de melhorias de desempenho na arquitetura subjacente e processamento de melhorias, porque eles são apoiados por grandes players da indústria de software.
Segurança de Dados. Segurança de dados numerosos, ferramentas de recuperação de desastres e alta disponibilidade estão disponíveis para bancos de dados SQL para mais facilmente ajudar esses bancos de dados a atingir objetivos de segurança de dados de uma organização.
Uma vez migrado, a plataforma de aplicações xpa torna o trabalho muito mais fácil com o SQL, do que outras abordagens de programação:
Lógica declarativa. A capacidade de se utilizar lógicas declarativas na tecnologia da Magic, simplificam a implementação e manutenção de interfaces complexas e manipulação de dados dinâmicos.
Padrões lógicos declarativos permitem que os desenvolvedores possam definir o que eles querem atingir, em vez de como a tecnologia deve implementá-lo.
Desenvolvedores vinculam “características” à regras complexas, contendo as dependências de vários elementos de dados e propriedades.
O mecanismo de execução da aplicação mantém uma hierarquia de dependências e automaticamente recalcula essas propriedades quando as regras entram em vigor, de uma forma semelhante a uma planilha eletrônica.
Abordagem da Plataforma Potencializa os Metadados. A plataforma de aplicações Magic xpa permite que os desenvolvedores evitem complexidades tecnológicas e alcancem a maior agilidade possível e produtividade.
Com estruturas de metadados, a lógica da aplicação é definida usando-se propriedades, regras e configurações que são armazenados em um repositório central, que contém todas as definições de aplicativos, incluindo a lógica de negócio, formas e regras manipulação de dados para o banco de dados SQL (s).
Como os metadados são independente de plataforma, o mecanismo de metadados nativo, que está disponível em vários servidores e plataformas de clientes, pode executar a mesma aplicação, independentemente da tecnologia subjacente ou arquitetura.
Como o desenvolvimento de metadados é altamente estruturado e de sem codificação, isso reduz o esforço de desenvolvimento e implantação. Usando um repositório central, a governança do projeto é rigorosamente aplicada e enfatizada, independentemente da sua complexidade, permitindo que os aplicativos desenvolvidos por grandes equipes possam ser mantidos facilmente.
Meta-dados para Banco de dados podem ser definidos e mantidos no repositório de dados. Qualquer modificação ao repositório de dados pode ser sincronizada com o banco de dados subjacente (quando a configuração “Change Tables in Studio” está assinalada na folha de propriedades do banco de dados selecionado).
Transparência de DBMS. Os concetores nativos para vários bancos de dados SQL traduzem automaticamente toda definição visual da exibição de dados lógico em um script SQL adaptados para a especificação do banco de dados subjacente.
Isso permite que o desenvolvedor crie aplicações de negócios, utilizando um alto nível de definição de dados e, a qualquer momento, mudar automaticamente de um banco para o outro e ver o conector nativo que o Magic xpa fornece adaptar automaticamente a aplicação para o novo banco de dados.
Texto SQL Direto. Além da definição de alto nível visual para visualizações de dados específicos de cada tarefa, o programador pode escolher para recuperar dados diretamente pela definição de um texto explícito de SQL. Magic xpa auxilia o desenvolvedor, fornecendo um assistente para construir o texto SQL.
No momento de considerar os benefícios de sua migração de aplicativos, atualizar seu aplicativo para tirar proveito do SQL é sem dúvida um dos benefícios disponíveis para a modernização de aplicações.