Saiba mais sobre bancos de dados distribuídos com ShardingSphere
Apache ShardingSphere é um banco de dados distribuído de código aberto, além de um ecossistema que usuários e desenvolvedores precisam para que seu banco de dados forneça uma experiência personalizada e nativa da nuvem.
Apache ShardingSphere é um banco de dados distribuído de código aberto, além de um ecossistema que usuários e desenvolvedores precisam para que seu banco de dados forneça uma experiência personalizada e nativa da nuvem. Nos três anos desde que ingressou na Apache Foundation, a equipe principal do ShardingSphere trabalhou duro com a comunidade para criar um banco de dados de código aberto, robusto e distribuído e um ecossistema de suporte.
O ShardingSphere não se enquadra no molde usual da indústria de uma solução simples de middleware de banco de dados distribuído. O ShardingSphere recria o sistema conectável distribuído, permitindo que cenários reais de implementação de usuários prosperem e contribuindo com soluções valiosas para a comunidade e o setor de banco de dados.
O objetivo do ShardingSphere é o conceito Database Plus.
Banco de dados mais
O Database Plus se propõe a construir uma camada padrão e uma camada de ecossistema acima dos serviços básicos do banco de dados fragmentado. Uma especificação de uso de banco de dados unificada e padronizada fornece aplicativos de nível superior, e os desafios enfrentados pelas empresas devido à fragmentação de bancos de dados subjacentes são minimizados tanto quanto possível. Para vincular bancos de dados e aplicativos, ele usa renderização e análise de tráfego e dados. Ele fornece aos usuários recursos básicos aprimorados, como banco de dados distribuído, segurança de dados, gateway de banco de dados e testes de estresse.
ShardingSphere usa uma arquitetura de kernel conectável para Database Plus. Isso significa que há modularidade, o que proporciona flexibilidade ao usuário. Existem algumas camadas diferentes:
- Camada de base: fornece uma variedade de terminais e formulários de acesso para atender às necessidades dos usuários em diferentes cenários.
- Camada de plug-in: fornece suporte de infraestrutura, permitindo extensibilidade.
- Camada de função: fornece uma variedade de plug-ins funcionais que atendem às necessidades dos usuários, permitindo aos usuários um alto grau de flexibilidade na escolha e combinação de plug-ins.
- Camada do produto: esta é a camada que os usuários finais veem. Isso lhes fornece produtos orientados para a indústria e para cenários específicos. Em outras palavras, dá aos usuários as ferramentas certas para qualquer trabalho que estejam realizando.
(Vernoica Xu, CC BY-SA 4.0)
Gerenciamento padronizado de cluster com DistSQL
Apache ShardingSphere apresenta o dialeto SQL exclusivo de DistSQL (SQL distribuído) para conectar todos os elementos do ecossistema ShardingSphere. Como linguagem de interação padrão do ecossistema de banco de dados distribuído ShardingSphere, DistSQL permite que os usuários usem um comando SQL para criar, modificar ou excluir uma tabela de banco de dados distribuído ou criptografá-la ou descriptografá-la. DistSQL também oferece suporte ao gerenciamento de agendamento distribuído.
(Vernoica Xu, CC BY-SA 4.0)
Terminal multiacesso
O ShardingSphere JDBC e o ShardingSphere Proxy foram aprimorados e testados por dois anos e agora estão disponíveis em produção. Muitos usuários da comunidade forneceram casos relevantes da comunidade de produção.
Graças à arquitetura central compartilhada e aos diferentes adaptadores ShardingSphere, os usuários podem escolher implantações de adaptadores híbridos se seu ambiente de produção exigir que isso seja feito (mostrado na figura abaixo).
(Vernoica Xu, CC BY-SA 4.0)
Governança distribuída
No ecossistema ShardingSphere, onde a computação e o armazenamento são separados, há a capacidade de governança distribuída de bancos de dados para que você possa manter muitos nós de armazenamento, nós de computação, implementar disjuntores e garantir alta disponibilidade.
(Vernoica Xu, CC BY-SA 4.0)
Monitoramento com Grafana
ShardingSphere também possui indicadores de status para monitorar sua infraestrutura. O mecanismo de carregamento dinâmico do agente fornece métricas e indicadores de rastreamento, tornando conveniente a integração do sistema APM com um painel Grafana.
(Vernoica Xu, CC BY-SA 4.0)
Banco de dados distribuído para uma comunidade distribuída
A comunidade continua a otimizar o ShardingSphere e a integrar novas ideias e cenários do setor. A comunidade o construiu e uma das principais forças motrizes do desenvolvimento é o feedback dos usuários. Essa é uma característica do código aberto, mas também é um método de prática para esta equipe. Os principais membros da equipe da comunidade ShardingSphere terão prazer em orientar qualquer pessoa interessada em código aberto e fornecer questões práticas para estudantes interessados em ajudar no desenvolvimento. A equipe também espera que novos amigos ou colaboradores se juntem à comunidade, promovam a troca aberta de ideias e criem uma comunidade de desenvolvedores verdadeiramente global.