Estou embarcando em um projeto de inteligência de negócios que exigirá abstrair o acesso a dois data warehouses existentes. Preciso projetar uma arquitetura de aplicativo para permitir que a inteligência de negócios de autoatendimento junte os dados e forneça uma visão única dos dois armazéns existentes. Eu vim com algo assim:
Estou lutando com a parte de virtualização / cache e me perguntando se há algum padrão de design corporativo para resolver meu problema. Uma arquitetura como essa funcionaria para abstrair esquemas em estrela em data warehouses? Estou analisando produtos como o Red Hat JBoss Data Virtualization e o Red Hat JBoss Data Grid (entre outros).
No momento, não estamos usando o Hibernate e meu entendimento das grades de dados é que elas são armazenamentos de valores-chave ou objetos e, portanto, inadequados para armazenar em cache um modelo relacional. Devo também mencionar que estamos interessados em usar produtos de fornecedores para a parte do painel de autoatendimento, mas podemos acabar fazendo uma construção personalizada nessa área se os fornecedores não puderem nos oferecer tudo o que queremos.
{key: pk, value: the_rest_of_the_row}
? Você provavelmente também desejará armazenar em cache os metadados das tabelas.