I’m not happy with my Hippocampus.


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.


Comments (10)
  1. Dennis says:

    Actually, for the kind of business apps I get paid to do, what would help me more is moving the .Net code closer to the database (like Xen/X#/whatever works toward). Generally, we define the database first, then write the interface. Datasets help a lot, databinding too in most cases, but having direct .Net-language support for SQL-like operations would be a big plus.

    Hiding the data model behind an object model is exactly backwards from my ideal, for a database-centered application. (For one thing, we do a lot of adhoc reporting from the data, so we’re dealing with that side of it anyway.)

  2. Matt says:

    I wouldn’t worry too much about the size of your hippocampus. The hippocampus’ role is to help you acquire new memories; it’s kind of like an encoder that moves information from short term memory into long term memory. One school of thought is that ALL of your long term memories are still there, you never "forget" things in the sense that the memory is no longer in your mind. Rather, when you "forget" something, you are unable to chart the path to that memory in order to recall it. Mnemonic devices typically assist in this by associating new memories with memories that are very easy to recall, like the numbers between 1 and 30, so that it is easy to find the path to the memory.

    Personally, I think that through experience, people become adept at "encoding" certain memories, and it appears that they have some unique "super" memory because of it. Your friend who recalled the diagram, for example, almost certainly has a lot of experience with that particular area of expertise, and over time, he has probably become very adept at "encoding" memories that are related to that particular topic, but he might have a difficult time remembering all of the lyrics to a song, or its melody, while a concert musician might find this to be a simple task. I’m sure that you have areas of expertise and that your hippocampus is very good at encoding memories that fall within that area of expertise. To some of us, if we were talking to you about topics in your area of expertise, we would be amazed at your "super" memory – your ability to recall discussions, facts, etc. related to that topic.

  3. 英国留学 says:

    Personally, I think that through experience, people become adept at "encoding" certain memories, and it appears that they have some unique "super" memory because of it.

    yes, you are right.

  4. Chris Garty says:

    Excellent first shot 🙂

    I like the approach of ObjectSpaces towards the issue of transparent persistence. I believe that you should be able to use the data as objects, but that you should know that you are crossing that boundary. ObjectSpaces doesn’t try to make the persistence transparent, it just makes it easy. The explicitness of the persistence keeps you aware of when you are incurring the performance hit of retrieving or persisting some data.

    The combination of MBF and ObjectSpaces is going to create a compelling platform for business solutions providers.

    Keep up the good work and keep the posts coming. Any information about MBF will be greatly appreciated!

    – Chris

  5. chu says:

    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.

    yes

  6. woman says:

    I think that through experience, people become adept at "encoding" certain memories, and it appears that they have some unique "super" memory because of it.

  7. gas scooters says:

    I’m sure that you have areas of expertise and that your hippocampus is very good at encoding memories that fall within that area of expertise.

  8. The combination of MBF and ObjectSpaces is going to create a compelling platform for business solutions providers.

Comments are closed.

Skip to main content