São bancos de dados orientadas a objeto ainda em uso?

votos
16

Algum tempo atrás, eu ouvi sobre bancos de dados de objetos. conceito legal e tudo. Agora, com o caso de ORMs em toda parte, será que alguém ainda usar qualquer um dos sistemas de bancos de dados orientados objeto? eles são relevantes? eles são práticos?

Publicado 09/12/2008 em 17:00
fonte usuário
Em outras línguas...                            


10 respostas

votos
11

OO nunca mais bancos de dados ficou fora de um nicho de mercado. Eles são bons para algumas aplicações - onde a estrutura de dados se presta a ser representado por um gráfico de objeto - mas nunca realizada a vantagem atraente ao longo de um RDBMS para atravessar o fosso. A principal vantagem elogiado por produtos OODBMS é a forte integração com a língua de acolhimento - não há nenhum objeto / relacional diferença de impedância.

No entanto, ainda existem vários fornecedores OODBMS tais como pedras preciosas , Versant ou cardeal que estão fazendo muito bem com seus produtos. A tecnologia é útil para alguns tipos de estruturas de dados e pode ser mais eficiente do que um RDBMS, mas tende a ser fraco para consultas ad-hoc em comparação com dialetos SQL modernos.

Como vários outros notaram, Gema está ficando um pouco de atenção devido ao seu apoio à beira-mar e Maglev (uma porta de rubi ao Gemstone VM com Rails em execução). Podemos encontrar este recebe o pessoal agradáveis de Gemstone um pouco de imprensa e com ele um pouco mais atenção ao paradigma OODBMS.

Respondeu 09/12/2008 em 17:55
fonte usuário

votos
7

Na verdade, os sistemas de banco de dados é uma das áreas que mudanças fundamentais são realmente difíceis. Bilhões de dólares são gastos em sistemas de banco de dados relacionais e eles estão trabalhando muito bem.

Na vida real, isso simplesmente não é verdade. Uma das principais razões para os nossos problemas com os bancos de dados (eu vi uma reivindicação de 30% de todas as linhas do banco de dados contém erros) é o uso de digitação muito primitivo e validação em SQL. Além disso, mesmo que eles são nomeados relacional, eles são muito ruins em lidar com as relações. O resultado é datamodels desnormalizada e erros de atualização resultantes.

As empresas razão, como bancos de dados relacionais é porque eles são muito previsíveis. Eles tem que gastar um monte de dinheiro com eles, eles precisam de um monte de desenvolvedores e manutenção fazendo trabalhos principalmente de rotina. Eles não conseguem ver a quantidade de duplicação que poderiam ser eliminados como uma vantagem. A rotina de trabalho permite que os desenvolvedores para absorver os riscos do trabalho difícil. Mudar para um OODB iria manter o trabalho menos previsível.

Respondeu 11/12/2008 em 13:30
fonte usuário

votos
4

Comecei a usar Gemstone recentemente. VIDRO (Gemstone no Linux (ou OS-X) com Mar (Smalltalk framework web)) é provavelmente o melhor ambiente de desenvolvimento web para aplicações complexas. Smalltalk está fazendo um revival, sendo "o real ruby".

O suporte para alterações de esquema e consulta é muito superior ao de RDBMS.

Uma diferença importante é que desta vez eles são acessíveis.

Respondeu 09/12/2008 em 18:58
fonte usuário

votos
4

Na verdade, os sistemas de banco de dados é uma das áreas que mudanças fundamentais são realmente difíceis. Bilhões de dólares são gastos em sistemas de banco de dados relacionais e eles estão trabalhando muito bem. Eles são uma tecnologia comprovada e eles têm sido flexível o suficiente para satisfazer a maioria das necessidades (usando ORM por exemplo, como você disse). banco de dados orientado a objetos existem realmente, mesmo fora da academia. Mas não espere para ver qualquer coisa tão grande como SQL Server ou Oracle nessa área em breve. Eles existem como uma teoria e bancos de dados como pequenos, específicos do aplicativo e vários produtos. Basicamente, eu prevejo bancos de dados relacionais tornaram-se mais orientada a objeto no futuro para lidar com exigências melhor.

Respondeu 09/12/2008 em 17:10
fonte usuário

votos
4

Confira db4o .

Respondeu 09/12/2008 em 17:09
fonte usuário

votos
3

Porque o custo de seu software não é fácil o suficiente para descobrir.

I check-out Objetividade, db4o, versant, e nenhum deles tem o preço do software na frente em seu site.

Eu já quase perdeu o interesse só por causa disso.

Alguém sabe qualquer lugar onde há um preço e licença de comparação de todos esses diferentes oodbs?

Respondeu 03/09/2009 em 08:01
fonte usuário

votos
3

Usamos Versant Object Database no produto I trabalhar. (Anteriormente FastObjects, anteriormente banco de dados Poet). É um banco de dados objeto e descobrimos que ele funciona muito melhor do que um modelo relacional para alguns aspectos do nosso produto, armazenamento, principalmente objetos de configuração, interface com código Java.

Veja também esta pergunta anteriormente perguntou: https://stackoverflow.com/questions/52144/object-oriented-database-experiences

Respondeu 09/12/2008 em 17:04
fonte usuário

votos
2

Usando GemStone para um aplicativo grande negócio. É ótimo e é muito prático. Nós usamos isso por vários anos e durante esse tempo que nos permitiu fazer muito com poucos recursos. Infelizmente, existem e têm sido inúmeros equívocos sobre bancos de dados de objetos e eu acho que isso os torna menos relevante no mundo dos negócios. Esperemos que algo como VIDRO (GemStone, Linux e Mar Smalltalk) vai mudar isso indo para o futuro.

Respondeu 09/12/2008 em 23:39
fonte usuário

votos
1

Objeto de banco de dados é um conceito legal até agora. No entanto, as implementações são plaqueado com problemas de escalabilidade e estabilidade. Agora, com o encarnado direito que aborda estas duas bestas, a equação pode mudar.

O que eu pensei é um mecanismo de dados (não necessariamente objeto de banco) e RDBMS pode lado realmente vivo a lado, de fato, há um ótimo lugar para um motor de dados na camada intermediária, Aplicações embedded / sistemas, ... Também , uma correcta aplicação de um mecanismo de dados permitirá suporte para persistência de objetos em um nível baixo e de nível superior, construções RDBMS / SQL. Isso significa que seu aplicativo pode optar por trabalhar com objetos, use o mecanismo de dados para persistência de objetos e fazer os objetos disponíveis como linhas / colunas de uma tabela através de uma interface RDBMS.

Esta é a configuração ideal. Nós ponte entre as duas tecnologias e fornecer alternativas para desenvolvedores de programa em sua interface preferida. Pode-se argumentar que temos isso agora, por exemplo - SQL Server tem suporte para hospedagem de CLR objetos, mas as implementações atuais sofrem de desaceleração impedância. ie - no caminho de dados é um monte de conversões / traduções como objetos = dois dados dimensionais, assim quando o seu App que lida com objetos salva-los a DB, a solução tem de converter / traduzi-los para a linha de dados em uma tabela!.

Mas se reverter a situação, ou seja - o motor de dados opera em objetos, em seguida, não haverá diferença de impedância. Adicionando duas projeções de dados dimensionais é nada mais do que a implementação de interface de uma coleção Objecct, assim não há realmente nenhum mapeamento / tradução que ocorrem quando objetos são expostos como linhas de dados de uma tabela. Esta é a minha teoria.

Por isso, talvez a próxima onda de tecnologia nesta área é um mecanismo de dados que permitirá que objetos como interface de baixo nível e interface de RDBMS sentado em cima dela. E esta tecnologia está disponível agora!

B-Tree ouro versão 4.0 Scalable Persistência Objeto tem isso como seu principal objetivo do projeto. Ele alcança as seguintes características e, portanto, está bem adaptado para ser o motor de dados de escolha para a próxima RDBMS, que basicamente é uma camada em cima dela. Dois dos seus principais pontos-chave são: Escalabilidade: 100 milhões de inserções em 17 horas em um laptop equipado ordinária / avg. Estabilidade: transação força industrial que irá garantir a DB não está corrompido e pode reverter a um estado anteriormente comprometida.

Para que isso funcione, o motor de dados tem que atender a escalabilidade e estabilidade exigido por servidores RDBMS. Uma tarefa muito difícil, mas não impossível. B-Tree versão Gold 4.0 SOP tem atendido a essa exigência, portanto, nós estamos realmente prontos para implementar este tipo de solução, sem realmente empurrando-o sob nosso pescoço como SOP dá liberdade de escolha como você gostaria de usá-lo. Ele pode ser usado em um monte de maneiras, por exemplo - complementando RDBMS servidores como de camada intermediária estação de caching, incorporado DB no lado do cliente, etc ... para não mencionar a ser o motor de dados de baixo nível do servidor RDBMS si!

Respondeu 16/07/2010 em 08:24
fonte usuário

votos
0

Pelo menos do meu ponto de vista são praticamente morto. Mas, novamente eu estou trabalhando principalmente em software comercial. Talvez em áreas acadêmicas que ainda estão em uso em algum lugar.

Respondeu 09/12/2008 em 17:03
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more