If Random Access Memory (RAM) in computing systems was almost unlimited as it might be in the future, this would have a significant affect the way data or files are accessed, stored from a performance, structure, availability and longevity perspective.
RAM is available in two types, Dynamic (DRAM) and Static (SRAM). DRAM most common in computers today. DRAM is required to be refreshed with data every few milliseconds whereas SRAM is used as cache memory due to it begin a lot faster than DRAM, secondly SRAM does need the data refreshing like DRAM does. RAM is a volatile type of data storage effectively data is only available while the memory is powered.
File structure is the definition how data is structured, organised and stored in secondary memory. These file structures are usually created and organised to minimise the impact on I/O from disk access.
Benefits of a RAM in memory computing systems:
- RAM is very quick at reading and writing date to run applications. (Trivedi 2013).
- Accessing data with RAM is possible in any order thus the need for organising and structure data for time saving to increase I/O performance of external storage would no longer be required. (Paredes and Scoutapp 2011)
- The need for programs or algorithms to guess what data or files might be needed to be accessed ahead of time i.e. pre-reading or queuing (Brookshear, Smith and Brylow 2012) ahead information from disk to increase performance would also no longer be required instead all the data would be longed in to RAM at one time. (McQuain 2004)
- In memory computing becomes reality applications no longer load or query parts of data stored on secondary storage instead the application code access the data loaded as whole into memory. (Savitz 2013)
- There would be no need in a RAM only system to create data indexing caches or files that are periodically updated as files or data structure changes. Instead more complex querying algorithms and multiple dimensional complex analytics can used on large data or file sets in memory with near immediate responsiveness. (Janssen 2014) (Elliot 2013)
A drawback of a pure RAM based system would be relating directly to the fundamentals of RAM itself:
- Due to RAM’s defined volatility the system would have to have ways of loading an exporting data very quickly to secondary storage so not to be lost in case of restart or power loss. (Trivedi 2013)
Storage devices would be significantly be impacted by the change in methodology with the availability of more in memory type computing systems.
- Storage devices would have to continue to store more and more data and files but moreover the devices would have to be able to act as back up devices instead of tape type devices. With the volatility of RAM memory secondary storage devices to load from offload from will still be critical and needed. Where we have tape, CD-ROMS and hard drives with disk platters today (McQuain 2004) in the future these will be to slow and not big enough to store the data. New types of storage will have to store large amounts of data in smaller physical space such flash or crystal storage 360 TB/disc data capacity and read at light speed such. (University of Southampton 2013)
- Storage will change tape will relatively disappear, disk will become the archive method or old tape, flash Memory or new storage types will become the secondary storage and memory will become primary storage. (Candan 2011)
- In memory or RAM systems effectively that are not using the disk secondary storage types that are available today would have effect of reducing power and cooling requirements in a system environment. IBM showed that memory is 99% less power that spinning hard drives. (Elliot 2013)
In the future new storage methods or even more advanced technologies might be used to support the move to RAM based computing systems:
These technologies might include:
Memristors work by remembering a previously-applied charge in the form of a resistance when a charge in the circuit is reversed.
- Magneto-resistive random-access memory (MRAM)
Magneto-resistive random-access memory (MRAM) has been under development since the 1990s and uses magnetism to store data.
- Phase-change memory (PRAM)
Phase-change memory (PRAM) uses heat to exploit the unique behaviour of chalcogenide glass to switch between an amorphous and a crystalline state, thereby storing binary data.
- Racetrack memory or domain-wall memory (DWM)
Racetrack memory or domain-wall memory (DWM) offers higher densities than flash and performance similar to that of DRAM.
- Atomic memory
Atomic memory Atomic scale memory uses a scanning tunnelling microscope to perform this feat – and one would be needed in order to read the memory.
Summary / Conclusions
In memory computing will happen it is happening today but will become more prolific over the coming years as great performance for all types of data and file access is required. Significant rethinking and use of algorithms and complex querying will be enabled. Persistence of data and retrieving data in to memory is an issue today but is being overcome by the change of traditional storage devices to flash or new types of storage based devices and more this type of storage becomes mainstream and standard the more performance at the computing level will be require thus more in memory computing systems will be used.
BROOKSHEAR, J Gleen, SMITH, David T and BRYLOW, Dennis (2012). Chapter 8: Data Abstractions – Lists, Stacks and Queues. In: HORTON, Marcia (ed.). Computer Science – An Overview. 11th ed., Addison-Wesley – Pearson, 341-345.
BROOKSHER, J Gleen, SMITH, David T and BRYLOW, Dennis (2012). The Concept of an Algorithm. In: Computer Science – An Overview. 11th ed., Addison-Wesley – Pearson, 189-200.
CANDAN, Ugur (2011). Why SAP Hana. [online]. Last accessed 14 05 2014 at: http://www.slideshare.net/ugurcandan/why-sap-hana
ELLIOT, Timo (2013). Why In-Memory Computing Is Cheaper And Changes Everything. [online]. Last accessed 18 05 2014 at: http://timoelliott.com/blog/2013/04/why-in-memory-computing-is-cheaper-and-changes-everything.html
JANSSEN, Cory (2014). In-Memory Computing. [online]. Last accessed 18 05 2014 at: http://www.techopedia.com/definition/28539/in-memory-computing
MCQUAIN, Bill (2004). File Processing and External Sorting – CS2604: Data Structures and File Processing. [online]. Last accessed 18 05 2014 at: http://courses.cs.vt.edu/~cs2604/fall04/docs/C8.pdf
PAREDES, Christian and SCOUTAPP, Derek of (2011). Understanding Disk I/O – when should you be worried? [online]. Last accessed 18 05 2014 at: http://blog.scoutapp.com/articles/2011/02/10/understanding-disk-i-o-when-should-you-be-worried
SAVITZ, Eric (2013). IT Revolution: How In Memory Computing Changes Everything. [online]. Last accessed 18 05 2014 at: http://www.forbes.com/sites/ciocentral/2013/03/08/it-revolution-how-in-memory-computing-changes-everything/
TRIVEDI, Chintan (2013). Why does RAM have to be volatile? [online]. Last accessed 18 05 2014 at: http://www.computerhope.com/jargon/v/volamemo.htm
UNIVERSITY OF SOUTHAMPTON (2013). 5D ‘Superman memory’ crystal could lead to unlimited lifetime data storage. [online]. Last accessed 18 05 2014 at: http://www.ecs.soton.ac.uk/news/4282