Archive for March, 2004

I’m not happy with my Hippocampus.

March 3rd, 2004 No comments

I’m Todd Lefor and I work on the Microsoft Business Framework team. I’m interested in all sorts of technology, including (but not limited to) digital video–I’ve actually been able to convince my wife that we need a TiVo AND a Media Center PC–computer animation, human interface, well done design and high performing transaction based financial systems. My first post is some abstract thoughts on object database technology, which is my focus within the Business Framework.


I am not happy with my hippocampus. I’m content with the way it looks I’ve had a sufficient number of head X-ray’s in my life that it has a nice tan. I’m not happy with it because I fear that I’ve trained it to be really efficient. In fact, it filters much more than I’d like it to. Instead of filtering, I’d like it to do more long-term storing of data. 

I heard a quote the other day from a supposed industry expert. He said…  “I was literally drowning in a sea of data.” After I finished snorting soda out of my nose, I wondered what that person’s obituary would read had that event been fatal:

Industry veteran drowns in sea of data. Forensic database experts claim his data flotation device failed to inflate. 

I think what he meant was that he was figuratively drowning in a sea of data. Grammatical issues aside, I think he had a point. Data creation and data consumption are growing at a shocking rate. So much so that we’ve exceeded our ability to analyze and manage it. Part of the reason why it’s so hard to manage is that we have a fixed way of thinking about our data.

I recall a simpler time when reading a book or coming across information in a newspaper when I would be introduced to a historical event or scientific phenomena. Growing up, we didn’t own an encyclopedia. (Okay, my mom was a bit of a hypochondriac, and we had a set of medical encyclopedias – but none were applicable to my problem.  In those days, my experience or understanding was limited to my knowledge as of that time and place. My perception of the material was limited by my historical ability to relate it to some other event or logic known to me at the time. Today it’s different. The Internet has become a large part of my learning experience. I sat down over the weekend to finish reading Dan Brown‘s, “The DaVinci Code.” It took me much longer to read this book than it would have without the Internet. I found myself setting the book down and picking up my laptop to scan the Internet for information on the historical ramblings of the book. Dan Brown discusses different meanings (real or perceived) in several well known paintings. I had a more fulfilling adventure reading this book, given that I could stop and study the information presented, via the Internet. In the past, my perceptions and interpretations of the book would have been different – limited by my ability to relate the material to past experiences.

Human learning is constrained by our ability to remember facts and details. I was able to experience the book more richly because I had the ability to analyze and research detailed facts that the author outlined. Some of that information had certainly crossed my path before. For example, I’ve seen DaVinci’s “Last Supper,” yet I could not recall colors, placement of objects or people in the painting as described. Why is it that some people have “photographic memories.” I recently asked my friend Tim a question about Intel architecture. He went to his white board and drew a schematic that he had seen on a web site several months earlier. I went back to my computer and looked up the schematic and discovered that his drawing was perfect, including numeric details. Since I can’t recall what I had for supper last night, it’s clear to me that I could benefit from a supplemental digital memory.  I’ve heard futurists describe the next phase of human evolution as one that includes integration with machines. If you can get thoughts of Robocop and the Six Million Dollar Man out of your head, there’s room for real discussion here. The evolution of faster processing and larger data stores is historically charted and can be accurately predicted out into the future for several years, demonstrating that the growth of computational power and data store will eventually lead to the ability for a person to store virtually every experience that they have.  If this is so, how will we manage this? How will I interact with this data? In a Virtual Data Reality, does data have pre-determined categories and shape, like real world objects? Who defines this data DNA (self-describing properties and behavior), and how does it get defined? If data has DNA, is it then possible to create natural interaction and association between data?  What kind of software is necessary to manage and interact with self-describing data? Today’s relational models have strict and confined definitions of data and cryptic methods of retrieving that data. The gap between object oriented definition of data and relational storage hasn’t been bridged in a manner that makes natural association and interaction possible. Object data needs to be managed by the application developer and marshaled to and from a relational store.

To be able to bridge the object/relational gap, a set of tools is needed with which the developer is allowed to think of data in terms of objects. The objects should be defined in terms of not just behavior, but also descriptive attributes (read: metadata).  Storage systems should be able to recognize attributes and create natural association and composition between objects. In this world, the developer should be able to create a person object and that person object should be able to relate to other person objects with similar attributes. The first step in this evolution is to create a development infrastructure in which data can easily be described as objects and then persisted and retrieved as objects without restrictions or knowledge of a particular data repository.

We’re working on tools that may someday provide this world for developers. Given our current limitations in processor power and storage, the associations and compositions will be defined by the developer (read: hard wired) providing a limited, but functional set of data relationships.  Additionally, given the current state of object database technology and the need to integrate with existing relational data stores, the developer should be able to create mappings between object and relational data.  When we do indeed have processing and storage bandwidth, the object infrastructure and tools that we provide will be there to provide the fundamental building blocks for a Virtual Data Reality.

I’d like to ramble more and provide more details, but I can’t remember what they are… damn hippocampus.

 This posting is provided “AS IS” with no warranties, and confers no rights.

Categories: Uncategorized Tags: