Wednesday, October 27, 2010

Documentum's Future Architecture

I'll start my first serious blog with the a recap of yesterday's talk of the town: the architecture session by Jeroen van Rotterdam on Momentum 2010 in Lisbon. It started as a 45 minute session, but at the end Jeroen was not even half way through, so an extra session was scheduled at the end of the day and that also ran late. Jeroen can really speak with a passion about his life's work.

This was by far the most interresting session of the day. Not only did it give a deep technical perspective of what Documentum will be like in a few years, to me it also provided a link between all the Cloud hype I've been hearing and why that should interrest me as a Documentum architect.
All this new technology is cool:
- We can finally have a Documentum system on-line 24x7 out-of- the-box
- Add processing as-you-go, no down time
- Application and even object type definition updates as-you-go
- Types and apps are versioned; you can run your old application for old data and start using the new version on new data
- Multi-tenant possiblities

All this will be possible with the Next Generation Information Server (NGIS). It is a new product, built from the ground up to be used in multi-tenant cloud environments. It's called Information Server for a reason. It's usability goes beyond the ECM use case. It cannot manage just content, it will be used to handle any kind of information. It's got flexibility written all over it. Get some new data, or extra customers? Just add some processing nodes and they will be served. Have a defective node? Some other nodes will take over its work. This thing is like the Internet: some part may go down, but as a whole it will never fail.

The DataModel consists of objects with Traits. Objects of itself are just empty shells with an object ID. All the rest is added with Traits. A Trait consists of some data, services and events. This provides a powerfull model for combining object data and the associated logic. Gone is dm_sysobject with all it's 75 properties taking up your database space. If you want versioning, just add the Version trait. If you declare a record, add the Record trait (at run-time just like you do with Aspects today).
Data type definitions can be versioned, so you don't need to take your application off-line to upgrade the type definition or logic.

If you ignore all the multi-tenant cloud stuff, there's a lot there that my customers can use today (though mostly centered around availability and TCO). I've seen projects where a single deployment to production could take 2 weeks. With NGIS this will take minutes.
Application composition and deployment will be completely different from what we're doing today, so I am expecting a big migration effort for current installations. That's the kind of work I am expecting to be hired for.

A new day is dawning for Documentum and I like what I see on the cloudy horizon.

No comments:

Post a Comment