ObjectStore
From Wikipedia, the free encyclopedia
ObjectStore is a commercial object database, which is a specialized type of database designed to handle data created by applications that use object-oriented programming techniques. It was inspired by the Statice database which was developed at Symbolics. ObjectStore was innovative in its use of the C++ language to make database access transparent. Objects could be created in a database by overloading of operator new(). In this way, one could store C++ objects directly in the database and these persistent objects would look just like normal C++ objects. By making use of signals, the implementation would trap pointer exceptions and transparently bring in objects from the database. Further, by use of a technique called swizzling, the database could be accessed from different platforms, with pages being 'swizzled' as they are brought into memory on page faults to correct big endian versus litte endian platform issues as well as virtual function table layout.
ObjectStore was created in 1988 by Object Design, Incorporated, which was based in Burlington, Massachusetts and founded by several former Symbolics employees. In 2002 the product was acquired by Progress Software, which continues to develop the technology, and has recently expanded its use beyond the object database market to target use as a database for real-time computing, specifically designed for RFID data management, and as a cache for relational databases. The ObjectStore product is used in many fields, including telecommunications, financial services, travel, GIS, and the government.
One of the early successful applications of the product was with Telstra to handle 13 and 1300 numbers in Australia - similar to 1800 numbers in the US. For example you could call a single toll-free number for all of Australia and get connected in real-time to the closest Dominos Pizza to you, which is open and has present capacity to take new orders.