Madeleine
Posted on December 21, 2007
Eu acabei de falar sobre SimpleDB e bancos de dados não-relacionais. Este é um mundo estranho mas cheio de grandes possibilidades. Infelizmente a maioria dos programadores já cresceu num mundo dominado pelos RDBMS, as commodities da tecnologia.
Durante a RejectConf tive o prazer de conhecer o Carlos Villela, atual ThoughtWorker que palestrou no nosso evento. Agora uma curiosidade que eu não sabia: ele foi desenvolvedor do projeto Java Prevayler.
Prevayler é um sistema de persistência de objetos. Neste momento a maioria vai pensar “hmm, mais um ORM, mais um Hibernate” e aqui está o primeiro erro pois Prevayler nada tem a ver com RDBMS. Estamos falando de objetos, o segundo pensamento é “hmm, ODBMS, Zope Database”
Errado novamente. Como o próprio nome diz Prevayler é baseado no conceito de Object Prevalence que o próprio Carlos explica neste artigo no IBM developerWorks de 2002. A grosso modo você lida com persistência de objetos em memória, de maneira robusta suportado por um sistema de journaling (tipo transaction log) e um snapshot em disco. Desta forma, se o sistema cai, ele pode ser recuperado até exatamente o estado imediatamente anterior ao crash.
Uma das características mais marcantes: prevalence é algumas ordens de grandeza mais rápido do que um RDBMS.
Object Pravalence é um conceito, sendo a implementação mais importante o Prevayler em Java, mas outras linguagens também tem suas implementações, incluindo Ruby, que tem o projeto Madeleine, inspirado na arquitetura do Prevayler. Infelizmente não é um projeto com o mesmo nível de reconhecimento que o ActiveRecord e mereceria mais atenção para evoluir melhor.
Por outro lado, não estou dizendo que devemos jogar fora os RDBMS e usar Prevalence para tudo. Vamos parar com esse pensamento binário “ou um ou outro”. É apenas mais uma tecnologia que merece ser estudada e que pode ser muito útil em vários cenários. Quem sabe, talvez até seja possível usar Rails + Madeleine, Merb + Madeleine em alguns casos. Alguém se habilita?
blog comments powered by Disqus
Archives
- February 12(2)
- December 11(1)
- November 11(4)
- October 11(6)
- September 11(5)
- August 11(1)
- July 11(5)
- May 11(4)
- April 11(11)
- March 11(4)
- February 11(3)
- January 11(4)
- December 10(9)
- November 10(2)
- October 10(10)
- September 10(4)
- August 10(6)
- July 10(14)
- June 10(16)
- May 10(8)
- April 10(14)
- March 10(9)
- February 10(6)
- January 10(14)
- December 09(10)
- November 09(10)
- October 09(7)
- September 09(19)
- August 09(4)
- July 09(12)
- June 09(7)
- May 09(12)
- April 09(11)
- March 09(9)
- February 09(9)
- January 09(12)
- December 08(14)
- November 08(20)
- October 08(15)
- September 08(18)
- August 08(25)
- July 08(13)
- June 08(21)
- May 08(29)
- April 08(27)
- March 08(12)
- February 08(32)
- January 08(31)
- December 07(27)
- November 07(30)
- October 07(25)
- September 07(28)
- August 07(16)
- July 07(15)
- June 07(16)
- May 07(7)
- April 07(13)
- March 07(8)
- February 07(9)
- January 07(24)
- December 06(17)
- November 06(17)
- October 06(15)
- September 06(38)




