Pergunta

Livre e estável é o vencedor.

Meu plano é bastante trivial - basta colocar todos os dados na memória e usar o cluster sem alterar o código do aplicativo. Então, para persistência, eu poderia apenas despejar os dados de nós em um banco de dados regular de acesso ao disco.

A única coisa é que, como exijo o armazenamento na memória, não há possibilidade de replicação completa de dados. Eu gostaria de copiar apenas o esquema do banco de dados e esse banco de dados na memória gerencia todas as juntas de forma consistente para mim.

Agradeço antecipadamente!

ATUALIZAÇÃO: Encontrei um produto de código aberto que provavelmente atenda aos meus requisitos, é Voltdb

Foi útil?

Solução

Sem interesse, algum motivo específico para que você 'exija' o armazenamento na memória e não pode usar apenas um servidor de banco de dados normal?

Outras dicas

O banco de dados H2 também suporta algum tipo de cluster.

Que tal o Oracle's Times dezhttp://www.oracle.com/technetwork/database/timesten/overview/index.htmlOu talvez Berkeley DB

Sua pergunta não está clara para mim. Você pode dar uma olhada em Timesten (agora de propriedade da Oracle), ele é baseado no SHMDB e fornece uma interface SQL.

O cluster MySQL também é um tipo de banco de dados em memória como quando você se compromete, significa que os dados estão na memória de dois nós e não são gravados no disco. Mas é claro que o MySQL Cluster escreverá todos os dados sobre o disco assíncrono para poder fazer backup e recuperar dados após uma falha.

Este produto também faria o trabalho como um cluster na memória:http://terracotta.org

Ele também vem um adaptador para o Java Quartz Scheduler, se você quiser lidar com alguns empregos.

  • Memsql, seu fio compatível (ou queda na substituição) por MySQL.

  • H2 também é um bom candidato para esta competição. Ver aqui com
    comparações com outros bancos de dados

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top