Kindly let me know whether there is any concept like inmemory DB, which stores the data from the DB in internal memory and later can access the data without db. I want this to be done at server level, so that the data can be stored into inmemory the moment the application is deployed. I should query the inmemory for retrieving the data.
Thanks in Advance
you can use Hypersonic SQL database. It is available at hsqldb.org.
Configuring this is a bit weird as the DDL's need to be written and fed to the database manager to create the schema.
There are several products that provide this capability. Data Fabric products like GemFire (lookup "data fabric" for additional vendors in the space) perform this function with the capability to also be the transactional and replicated (for HA) operational data store for your application. Your database can still be kept synchronized via out-of-band & batched updates. This works by replicating write-behind queues of data updates (between two processes, but also in-memory).
These products are generally object-focused to kepp you data in-memory data after O/R mapping so that O/R mapping overhead only needs to happen during your initial startup data load or when writing updates back. Query languages quite similar to SQL (see OQL at odmg.org) allow the "client" applications to still have query language based access. There is much much more . . . . PM me if you'd like more information.
gidoen.low AT gemstone.com