NewSQL - NewSQL

NewSQL é uma classe de sistemas de gerenciamento de banco de dados relacional que busca fornecer a escalabilidade de sistemas NoSQL para cargas de trabalho de processamento de transações online (OLTP) enquanto mantém as garantias ACID de um sistema de banco de dados tradicional.

Muitos sistemas corporativos que lidam com dados de alto perfil (por exemplo, sistemas financeiros e de processamento de pedidos) são muito grandes para bancos de dados relacionais convencionais, mas têm requisitos transacionais e de consistência que não são práticos para sistemas NoSQL. As únicas opções disponíveis anteriormente para essas organizações eram comprar computadores mais poderosos ou desenvolver middleware personalizado que distribuísse solicitações por DBMS convencional . Ambas as abordagens apresentam altos custos de infraestrutura e / ou custos de desenvolvimento. Os novos sistemas SQL tentam reconciliar os conflitos.

História

O termo foi usado pela primeira vez pelo analista do 451 Group , Matthew Aslett, em um artigo de pesquisa de 2011 que discutia o surgimento de uma nova geração de sistemas de gerenciamento de banco de dados. Um dos primeiros sistemas NewSQL foi o sistema de banco de dados paralelo H-Store .

Formulários

Os aplicativos típicos são caracterizados por grandes volumes de transações OLTP . Transações OLTP;

  • são de curta duração (ou seja, sem paradas do usuário)
  • toque em pequenas quantidades de dados por transação
  • use pesquisas indexadas (sem varreduras de tabela)
  • têm um pequeno número de formulários (um pequeno número de consultas com argumentos diferentes).

No entanto, alguns suportam aplicativos de processamento analítico / transacional híbrido (HTAP). Esses sistemas melhoram o desempenho e a escalabilidade, omitindo a recuperação pesada ou o controle de simultaneidade .

Lista de novos bancos de dados SQL

Recursos

Os dois recursos de distinção comuns das soluções de banco de dados NewSQL são que elas suportam escalabilidade online de bancos de dados NoSQL e o modelo de dados relacional (incluindo consistência ACID) usando SQL como sua interface primária.

Os novos sistemas SQL podem ser agrupados livremente em três categorias:

Novas arquiteturas

Os sistemas NewSQL adotam várias arquiteturas internas. Alguns sistemas empregam um cluster de nós sem compartilhamento , em que cada nó gerencia um subconjunto dos dados. Eles incluem componentes como controle de simultaneidade distribuída , controle de fluxo e processamento de consulta distribuída.

Motores SQL

A segunda categoria são os mecanismos de armazenamento otimizados para SQL . Esses sistemas fornecem a mesma interface de programação que o SQL, mas escalam melhor do que os motores integrados.

Fragmentação transparente

Esses sistemas dividem automaticamente os bancos de dados em vários nós usando o algoritmo de consenso Raft ou Paxos .

Veja também

Referências