MongoDB - Replica§£o

  • View
    16

  • Download
    0

Embed Size (px)

Text of MongoDB - Replica§£o

MongoDB

Central System22-04-20131AlternativasPonderados:Cassandra necessita de Java Runtime 7 e utiliza apenas map/reduce como forma de query;Redis dados totalmente em memria;Apache HBase mais orientado para sharding;Couchbase processo de replicao pouco automtico;Riak no tem verso oficial para Windows;AlternativasNo foi encontrado um sistema de gesto de bases de dados significativamente melhor que justificasse a sua adoo a este ponto do desenvolvimento.

Se possvel, deve-se manter MongoDB, uma vez que a escolha de outro sistema pode no implicar apenas um port/transio mas sim o redesenho e reimplementao completa da camada de acesso a dados.MongoDB ConsideraesDeve-se atualizar para a ltima verso (2.4.2);Possui um modo de replicao (replica sets), onde os dados so replicados por vrios ns;O modo de replicao suporta write concern, garantindo que os dados so replicados com sucesso para os outros ns;Apenas o n primary pode escrever na BD (master); possvel realizar operaes de leitura em qualquer n;A seleo do n primrio automtica, realizada por votao e tendo em considerao a prioridade de cada n (se desejado);MongoDB ConsideraesTem que estar sempre disponvel a maioria dos ns e existirem no mnimo dois ns e um arbiter; possvel adicionar/remover ns do cluster em run-time, influenciando o nmero de ns disponveis necessrios;O arbiter apenas necessrio caso o nmero de ns seja par, inclusive quando existem apenas dois; o driver que dever tratar de assegurar que as operaes de escrita so realizadas no master. Este deve ligar-se a um n, determinar qual o master e ligar-se a ele para essas operaes. O uso de replicao transparente para o programador no que diz respeito aos dados.MongoDB Consideraes sempre necessrio a aplicao monitorizar as instncias ativas para poder reconfigurar o cluster e no deixar que empatem na altura de eleger um novo n master.ArquiteturaModo de Replicao com MongoDBArquitetura Diagrama LgicoCentral SystemAppMongoDBMongoDBMongoDBMongoDBAppAppAppNNClusterAplicacionalClusterBase de DadosArquitetura Diagrama Fsico 1MongoDB SecondaryApp1MongoDB MasterApp2MongoDB SecondaryAppNRR\WRCentral SystemR\WWWMquina 1Mquina 2Mquina NArquitetura Diagrama Fsico 2MongoDB SecondaryApp1MongoDB MasterApp2MongoDB SecondaryAppNRR\WRCentral SystemR\WWWMquina 1Mquina 2Mquina NArquitetura Diagrama Fsico 31MongoDB MasterApp2MongoDB SecondaryAppNR\WRCentral SystemWMquina 1Mquina 2Mquina NR\WArquitetura Diagrama Fsico 41MongoDB SecondaryApp2MongoDB MasterAppNRR\WCentral SystemWMquina 1Mquina 2Mquina NR\WArquitetura Diagrama Fsico MnimoMongoDB MasterApp1MongoDB SecondaryApp2R\WRCentral SystemR\WWMquina 1Mquina 2MongoDB ArbiterArquitetura Diagrama Fsico MnimoMongoDB MasterApp1MongoDB SecondaryApp2R\WRCentral SystemR\WMquina 1Mquina 2MongoDB Arbiter