REPLICAÇÃO DE BD É ALGO RÁPIDO???

 Tópico anterior Próximo tópico Novo tópico

REPLICAÇÃO DE BD É ALGO RÁPIDO???

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#493148 - 19/03/2020 16:23:00

MARCOS

Cadast. em:Dezembro/2003


Boa tarde,pessoal!
Digamos que para atender a uma demanda interna,tenho que instalar 2(Dois) Bancos de
dados "MariaDB", em duas filiais da empresa (Cidades diferentes).
No projeto, é importante que cada um dos Bancos,tenha a capacidade de replicar seus dados para o outro em tempo real.
Ou seja, qualquer mudança em um BD, deve ser "replicado" para o outro.

Minhas dúvidas:

1.) Isto pode ser feito, com ferramentas do própio MariaDB, ou tem que ser via código?
2.) No contexto do projeto, é necessário que a replicação seja bem rápida. Pois os 2 Bancos tem que refletir as mesmas informações.
     A "replicação" entre BD, é algo que "na prática" leva quanto tempo??? (Milisegundos,segundos,minutos?????)

Agradeço qualquer ajuda



#493151 - 19/03/2020 22:56:48

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Aí é que entra o poder de uma aplicação que usa WebAPI. Você não quer dois bancos replicados, você quer um banco só, mas as duas aplicações consumindo. Faça isso via WebAPI e não precisa expor o banco de dados, fazer replicação alguma e ainda ganha possibilidade de fazer várias aplicações de tipos diferentes, incluindo mobile.

_______________________________________________________________________
Virei Oráculo!
The end is nigh, be ready for the nukes!


#493218 - 24/03/2020 16:39:57

MARCOS

Cadast. em:Dezembro/2003


Eu entendo o que o colega Kerplunk diz.
E concordo com o que ele diz totalmente.
No entanto, não me foi dada a opção de decidir sobre a arquitetura do projeto.
A reunião sobre este projeto deverá ser em breve.
Se algum colega,que já tiver feito replicação, ou souber como funciona na pratica puder me esclarecer estas dúvidas.fico grato:

1.) Isto pode ser feito(Replicação), com ferramentas do própio MariaDB, ou tem que ser via código?
2.) No contexto do projeto, é necessário que a replicação seja bem rápida. Pois os 2 Bancos tem que refletir as mesmas informações.
     A "replicação" entre BD, é algo que "na prática" leva quanto tempo??? (Milisegundos,segundos,minutos?????)






#493219 - 24/03/2020 18:12:03

MESTRE
GUARULHOS
Cadast. em:Novembro/2013


Se com um banco só ja tenho dor de cabeça imagina um replicado kkkkkkkkk...
Mas da sim pra fazer replicação utilizando Amazon RDS que inclusive tem MariaDB.. mas cara a replicação dele seria algo mais pra catastrofes acredito eu e me corrijam se eu estiver errado..

Mas também cobra-se por isso no caso voce paga 2 servidores ao invés de 1.. tem até o que eles chamam de MULTI AZ:


Citação:
As implantações Multi-AZ do Amazon RDS proporcionam disponibilidade e durabilidade melhores para instâncias de banco de dados (DB) do RDS, o que as torna a solução ideal para cargas de trabalho de banco de dados de produção. Quando você provisiona uma Instância de DB Multi-AZ, o Amazon RDS cria automaticamente uma Instância de DB principal e replica de forma síncrona os dados para uma instância de espera em uma Zona de disponibilidade (AZ) diferente. Cada AZ opera em sua própria infraestrutura fisicamente distinta e independente e é projetada para ser altamente confiável. Em caso de uma falha de infraestrutura, o Amazon RDS executa um failover automático para a espera (ou para uma réplica de leitura, no caso do Amazon Aurora) para que você possa reiniciar as operações de banco de dados assim que o failover for concluído. Como o endpoint da sua instância de DB permanece o mesmo após um failover, sua aplicação pode retomar as operações de banco de dados sem necessidade de intervenção administrativa manual.

Diversos mecanismos do Amazon RDS permitem que você adicione réplicas de leitura para maior escalabilidade e mantena a disponibilidade do banco de dados caso haja falha de uma AZ. As réplicas de leitura do Amazon RDS podem ser configuradas com suas próprias instâncias de espera em uma AZ diferente. No caso do Aurora, você pode escolher colocar a réplica de leitura entre diversas zonas de disponibilidade.


link:Aqui  

_______________________________________________
"A alegria está na luta, na tentativa, no sofrimento envolvido e não na vitória propriamente dita."
Gandhi.


#493232 - 25/03/2020 18:22:50

WEBMASTER
CURITIBA
Cadast. em:Janeiro/2001


Membro da equipe
Replicação é para cenários de desastres/backup, não para duplicar dados em produção.
Na boa, se tua reunião não te chamaram, fica tranquilo, ao começar a fazer isso, vão te chamar para dizer que você não fez certo (claro, coisas decididas por outros).
Como o kerp disse, o que voce precisa é de uma API, so isso, replicar banco so vai te trazer 2x o problema que voce ja deve ter em mãos.
So pensar que um simples campo smallint (1 - matriz, 2 filial) na tua api ja resolveria o problema...mas nao vai la o espertao que decidiu replicar banco....tenta corrigir antes que seja tarde para o teu bem

WebMaster - VBMania

Nao me mande e-mail com duvidas
Para isso e que existe o forum do VBMania !!!

#493252 - 27/03/2020 16:21:10

MESTRE
GUARULHOS
Cadast. em:Novembro/2013


Galera pesquisando mais afundo a Amazon tem algo que achei bem interessante, é uma réplica de leitura...


As Réplicas de leitura do Amazon RDS proporcionam desempenho e durabilidade melhores para instâncias de banco de dados (DB) do RDS. Elas facilitam a escalabilidade de maneira elástica além dos limites de capacidade de uma única instância de DB para cargas de trabalho de banco de dados com uso intenso de leitura. Você pode criar uma ou mais réplicas de uma determinada instância de banco de dados de origem e atender ao tráfego de leitura de aplicações de alto volume de várias cópias dos seus dados, aumentando portanto o processamento de leitura agregado. Quando necessário, as réplicas de leitura também podem ser promovidas para instâncias de banco de dados autônomas. As réplicas de leitura estão disponíveis no Amazon RDS for MySQL, MariaDB, PostgreSQL e Oracle, bem como no Amazon Aurora.

Para os mecanismos de banco de dados MySQL, MariaDB, PostgreSQL e Oracle, o Amazon RDS cria uma segunda instância de DB usando um snapshot da instância de DB de origem. Em seguida, o Amazon RDS usa a replicação assíncrona nativa dos mecanismos para atualizar a réplica de leitura sempre que a instância de banco de dados de origem é alterada. A réplica de leitura opera como uma instância de banco de dados que permite somente conexões para leitura. Os aplicativos podem conectar-se a uma réplica de leitura da mesma forma como fariam com qualquer outra instância de BD. O Amazon RDS replica todos os bancos de dados na instância de banco de dados de origem.


_______________________________________________
"A alegria está na luta, na tentativa, no sofrimento envolvido e não na vitória propriamente dita."
Gandhi.


#493276 - 30/03/2020 14:06:03

WEBMASTER
CURITIBA
Cadast. em:Janeiro/2001


Membro da equipe
Claro...vendendo um orgão (rim, pulmão) você consegue fazer o que quiser na AWS.
A questão é que tudo é maravilhoso, até você ver o tamanho da conta (que duvido que no caso contextualizado aqui se pague).

WebMaster - VBMania

Nao me mande e-mail com duvidas
Para isso e que existe o forum do VBMania !!!

#493298 - 01/04/2020 16:13:44

MESTRE
GUARULHOS
Cadast. em:Novembro/2013


Citação:
:
Claro...vendendo um orgão (rim, pulmão) você consegue fazer o que quiser na AWS.
A questão é que tudo é maravilhoso, até você ver o tamanho da conta (que duvido que no caso contextualizado aqui se pague).


Sim é caro, é bom e eles cobram muito bem por isso.. só que tudo lá é fantastico, em 2 cliques eu subo um servidor, pré-defino configurações ao meu gosto e etc etc...
Pagamos 200$ mensais em média no plano de DB, temos 1 servidor só, nesse caso do Replication seriam x2 o gasto, caro mas bem bacana...

E o melhor la o servidor é cobrado por hora, ou seja eu posso subir 2 servidores simultaneamente eu faço um backup do banco no bugado,subo o backup
no servidor 2 e dou um stop no bugado sem honerar o bolso do patrão ele pagaria uma merreca a mais..

Ex: quando tive problema com o meu banco de dados travando fui upando config do servidor até em 32GB RAM, 8CPU e continuou dando problema, (configuração carissima essa coisa de 1$ por hora
de uso), usei menos de 3h pra teste e vi que nao era problema de configuração de servidor Ram e CPU e sim de configuração do banco de dados e muitos registros antigos demais que nem usados sao, em 2 cliques voltei a configuração pra padrao
de 8GB RAM 2CPU e configurei certinho o MySQL e dei uma limpada no banco em coisa dos anos 2000 até 2016 (obvio que fiz um full backup antes de mexer em qualquer coisa).

Meu patrão gastou nem 3$ a mais na fatura por eu fazer todo esse teste.. Eu joguei o banco de dados com 4CPU 16GB RAM e fui podando até chegar nos
2CPU 8GB RAM que atendem perfeitamente a demanda, fui fazendo downgrade em 2 cliques e acompanhando performance insights e etc...


_______________________________________________
"A alegria está na luta, na tentativa, no sofrimento envolvido e não na vitória propriamente dita."
Gandhi.


 Tópico anterior Próximo tópico Novo tópico


Para responder este tópico o login é requerido
Se você já possui uma conta de usuário por favor faça seu login
Se você não possui uma conta de usuário use a opção Criar usuário