Computer data storage: Difference between revisions

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
imported>Citation bot
Added date. | Use this bot. Report bugs. | Suggested by Dominic3203 | Category:Computer data storage | #UCB_Category 49/49
imported>Thenightaway
 
Line 1: Line 1:
{{short description|Storage of digital data readable by computers}}
{{short description|Storage of digital data readable by computers}}
{{Merge from|Data at rest|discuss=Talk:Computer data storage#Proposed merge of Data at rest into Computer data storage|date=March 2025}}
{{Use dmy dates|date=June 2020}}
{{Use dmy dates|date=June 2020}}
{{broader|Data storage}}
{{broader|Data storage}}


[[File:DDR2 ram mounted.jpg|thumb|1 [[Gibibyte|GiB]] of [[SDRAM]] mounted in a [[computer]]. An example of ''primary storage''.]]
[[File:DDR2 ram mounted.jpg|thumb|1 [[Gibibyte|GiB]] of [[SDRAM]] mounted in a [[computer]]. An example of ''primary storage''.]]
[[File:IBM DJNA-351520 Hard Disk A.jpg|thumb|15 [[Gigabyte|GB]] [[Parallel ATA|PATA]] hard disk drive (HDD) from 1999. When connected to a computer it serves as ''secondary'' storage.]]
[[File:IBM DJNA-351520 Hard Disk A.jpg|thumb|15 [[Gigabyte|GB]] [[Parallel ATA|PATA]] hard disk drive (HDD) from 1999. When connected to a computer it serves as ''secondary'' storage.]]{{Memory types}}
[[File:Super DLTtape I.jpg|thumb|160 [[Gigabyte|GB]] [[Digital Linear Tape|SDLT]] [[tape cartridge]], an example of ''off-line'' storage. When used within a robotic [[tape library]], it is classified as ''tertiary'' storage instead.]]
'''Computer data storage''' or '''digital data storage''' is the retention of [[digital data]] via [[technology]] consisting of [[computer]] components and [[Data storage|recording media]]. Digital data storage is a core function and fundamental component of computers.<ref name="Patterson">{{Cite book |title=Computer organization and design: The hardware/software interface |last1=Patterson |first1=David A. |last2=Hennessy |first2=John L. |date=2005 |publisher=[[Morgan Kaufmann Publishers]] |isbn=1-55860-604-1 |edition=3rd |location=[[Amsterdam]] |oclc=56213091 |url-access=registration |url=https://archive.org/details/isbn_9781558606043 }}</ref>{{rp|15–16}}
[[File:Sony_CRX310S-Internal-PC-DVD-Drive-Opened.jpg|thumb|Read/Write DVD drive with cradle for media extended]]


'''Computer data storage''' or '''digital data storage''' is a technology consisting of [[computer]] components and [[Data storage|recording media]] that are used to retain [[digital data]]. It is a core function and fundamental component of computers.<ref name="Patterson">{{Cite book |title=Computer organization and design: The hardware/software interface |last1=Patterson |first1=David A. |last2=Hennessy |first2=John L. |date=2005 |publisher=[[Morgan Kaufmann Publishers]] |isbn=1-55860-604-1 |edition=3rd |location=[[Amsterdam]] |oclc=56213091 |url-access=registration |url=https://archive.org/details/isbn_9781558606043 }}</ref>{{rp|15–16}}
Generally, the faster and volatile storage components are referred to as "[[Computer memory|memory]]", while slower persistent components are referred to as "storage". This distinction was extended in the [[Von Neumann architecture]], where the [[central processing unit]] (CPU) consists of two main parts: The [[control unit]] and the [[arithmetic logic unit]] (ALU). The former controls the flow of data between the CPU and memory, while the latter performs arithmetic and [[Bitwise operation|logical operations]] on data. In practice, almost all computers use a [[memory hierarchy]],<ref name="Patterson" />{{rp|468–473}} which puts memory close to the CPU and storage further away.


The [[central processing unit]] (CPU) of a computer is what manipulates data by performing computations. In practice, almost all computers use a [[storage hierarchy]],<ref name="Patterson"/>{{rp|468–473}} which puts fast but expensive and small storage options close to the CPU and slower but less expensive and larger options further away. Generally, the fast{{efn|Most contemporary computers use volatile technologies (which lose data when power is off); early computers used both volatile and persistent technologies.}} technologies are referred to as "memory", while slower persistent technologies are referred to as "storage".
In modern computers, [[hard disk drive]]s (HDDs) or [[solid-state drive]]s (SSDs) are usually used as storage.  


Even the first computer designs, [[Charles Babbage]]'s [[Analytical Engine]] and [[Percy Ludgate]]'s Analytical Machine, clearly distinguished between processing and memory (Babbage stored numbers as rotations of gears, while Ludgate stored numbers as displacements of rods in shuttles). This distinction was extended in the [[Von Neumann architecture]], where the CPU consists of two main parts: The [[control unit]] and the [[arithmetic logic unit]] (ALU). The former controls the flow of data between the CPU and memory, while the latter performs arithmetic and [[Bitwise operation|logical operations]] on data.
== Data ==
A modern [[Computer|digital computer]] represents [[data]] using the [[binary numeral system]]. The [[Memory cell (computing)|memory cell]] is the fundamental building block of [[computer memory]], storing stores one bit of binary information that can be set to store a 1, reset to store a 0, and accessed by reading the cell.<ref>{{cite book |last1=D. Tang |first1=Denny |url=https://books.google.com/books?id=xsMMWOjFXzAC&q=ferrite%20core%20memory%20magnetic%20bubble&pg=PA91 |title=Magnetic memory: Fundamentals and technology |last2=Lee |first2=Yuan-Jen |publisher=[[Cambridge University Press]] |year=2010 |isbn=978-1139484497 |page=91 |access-date=13 December 2015}}</ref><ref>{{cite book |last1=Fletcher |first1=William |url=https://archive.org/details/engineeringappro00fle_wur/page/283 |title=An engineering approach to digital design |publisher=Prentice-Hall |year=1980 |isbn=0-13-277699-5 |page=[https://archive.org/details/engineeringappro00fle_wur/page/283 283] |url-access=registration}}</ref>


== Functionality ==
Text, numbers, pictures, audio, and nearly any other form of information can be converted into a string of [[bit]]s, or binary digits, each of which has a value of 0&nbsp;or&nbsp;1. The most common unit of storage is the [[byte]], equal to 8 bits. [[Digital data]] comprises the binary representation of a piece of information, often being [[Code|encoded]] by assigning a bit pattern to each [[Character (computing)|character]], [[Numerical digit|digit]], or [[multimedia]] object. Many standards exist for encoding (e.g. [[character encoding]]s like [[ASCII]], image encodings like [[JPEG]], and video encodings like [[MPEG-4]]).  
Without a significant amount of memory, a computer would merely be able to perform fixed operations and immediately output the result. It would have to be reconfigured to change its behavior. This is acceptable for devices such as desk [[calculator]]s, [[digital signal processing|digital signal processors]], and other specialized devices. [[von Neumann architecture|Von Neumann]] machines differ in having a memory in which they store their operating [[Instruction set architecture#Instructions|instructions]] and data.<ref name="Patterson"/>{{rp|20}} Such computers are more versatile in that they do not need to have their hardware reconfigured for each new program, but can simply be [[computer programming|reprogrammed]] with new in-memory instructions; they also tend to be simpler to design, in that a relatively simple processor may keep [[State (computer science)|state]] between successive computations to build up complex procedural results. Most modern computers are von Neumann machines.


== Data organization and representation ==
=== Encryption ===
A modern [[Computer|digital computer]] represents [[data]] using the [[binary numeral system]]. Text, numbers, pictures, audio, and nearly any other form of information can be converted into a string of [[bit]]s, or binary digits, each of which has a value of 0&nbsp;or&nbsp;1. The most common unit of storage is the [[byte]], equal to 8 bits. A piece of information can be handled by any computer or device whose storage space is large enough to accommodate ''the binary representation of the piece of information'', or simply [[data (computing)|data]]. For example, the [[complete works of Shakespeare]], about 1250&nbsp;pages in print, can be stored in about five [[megabyte]]s (40&nbsp;million bits) with one byte per character.
For [[data security|security reasons]], certain types of data may be [[encrypted]] in storage to prevent the possibility of unauthorized information reconstruction from chunks of storage snapshots. Encryption in transit protects data as it is being transmitted.<ref name="MC_1">{{cite web |date=2023 |title=4 Ways: Transfer Files from One OneDrive Account to Another without Downloading |url=https://www.multcloud.com/tutorials/transfer-files-from-one-onedrive-account-to-another.html |url-status=live |archive-url=https://web.archive.org/web/20230616124728/https://www.multcloud.com/tutorials/transfer-files-from-one-onedrive-account-to-another.html |archive-date=16 June 2023 |access-date=5 December 2023 |publisher=MultCloud}}</ref>
 
Data are [[encoded]] by assigning a bit pattern to each [[Character (computing)|character]], [[Numerical digit|digit]], or [[multimedia]] object. Many standards exist for encoding (e.g. [[character encoding]]s like [[ASCII]], image encodings like [[JPEG]], and video encodings like [[MPEG-4]]).
 
By adding bits to each encoded unit, redundancy allows the computer to detect errors in coded data and correct them based on mathematical algorithms. Errors generally occur in low probabilities due to [[random]] bit value flipping, or "physical bit fatigue", loss of the physical bit in the storage of its ability to maintain a distinguishable value (0&nbsp;or&nbsp;1), or due to errors in inter or intra-computer communication. A random [[RAM parity|bit flip]] (e.g. due to random [[radiation]]) is typically corrected upon detection. A bit or a group of malfunctioning physical bits (the specific defective bit is not always known; group definition depends on the specific storage device) is typically automatically fenced out, taken out of use by the device, and replaced with another functioning equivalent group in the device, where the corrected bit values are restored (if possible). The [[cyclic redundancy check]] (CRC) method is typically used in communications and storage for [[error detection]]. A detected error is then retried.


=== Compression ===
[[Data compression]] methods allow in many cases (such as a database) to represent a string of bits by a shorter bit string ("compress") and reconstruct the original string ("decompress") when needed. This utilizes substantially less storage (tens of percent) for many types of data at the cost of more computation (compress and decompress when needed). Analysis of the trade-off between storage cost saving and costs of related computations and possible delays in data availability is done before deciding whether to keep certain data compressed or not.
[[Data compression]] methods allow in many cases (such as a database) to represent a string of bits by a shorter bit string ("compress") and reconstruct the original string ("decompress") when needed. This utilizes substantially less storage (tens of percent) for many types of data at the cost of more computation (compress and decompress when needed). Analysis of the trade-off between storage cost saving and costs of related computations and possible delays in data availability is done before deciding whether to keep certain data compressed or not.


For [[data security|security reasons]], certain types of data (e.g. [[credit card]] information) may be kept [[encrypted]] in storage to prevent the possibility of unauthorized information reconstruction from chunks of storage snapshots.
=== Vulnerability and reliability ===
Distinct types of data storage have different points of failure and various methods of [[predictive failure analysis]]. Vulnerabilities that can instantly lead to total loss are [[head crash]]ing on mechanical hard drives and [[failure of electronic components]] on flash storage.


== Hierarchy of storage ==
==== Redundancy ====
{{Main|Memory hierarchy}}
[[Redundancy (information theory)|Redundancy]] allows the computer to detect errors in coded data (for example, a random [[RAM parity|bit flip]] due to random [[radiation]]) and correct them based on mathematical algorithms. The [[cyclic redundancy check]] (CRC) method is typically used in communications and storage for [[error detection]]. Redundancy solutions include [[Replication (computing)|storage replication]], [[disk mirroring]] and RAID ([[RAID|Redundant Array of Independent Disks]]).
[[File:Computer storage types.svg|thumb|right|350px|Various forms of storage, divided according to their distance from the [[central processing unit]]. The fundamental components of a general-purpose computer are [[arithmetic and logic unit]], [[control unit|control circuitry]], storage space, and [[input/output]] devices. Technology and capacity as in common [[home computer]]s around 2005.]]


Generally, the lower a storage is in the hierarchy, the lesser its [[Bandwidth (computing)|bandwidth]] and the greater its access [[latency (engineering)|latency]] is from the CPU. This traditional division of storage to primary, secondary, tertiary, and off-line storage is also guided by cost per bit.
==== Error detection ====
[[File:QPxTool DVD error rate graph.png|thumb|[[Optical_disc#Surface_error_scanning|Error rate measurement]] on a [[DVD+R]]. The minor errors are correctable and within a healthy range.]]
Impending failure on [[hard disk drive]]s is estimable using [[S.M.A.R.T|S.M.A.R.T.]] diagnostic data that includes the [[power-on hours|hours of operation]] and the count of spin-ups, though its reliability is disputed.<ref>{{cite web |date=6 October 2016 |title=What S.M.A.R.T. hard disk errors actually tell us |url=https://www.backblaze.com/blog/what-smart-stats-indicate-hard-drive-failures/ |website=Backblaze}}</ref> The health of [[optical media]] can be determined by [[Optical disc#Surface error scanning|measuring correctable minor errors]], of which high counts signify deteriorating and/or low-quality media. Too many consecutive minor errors can lead to data corruption. Not all vendors and models of [[Optical disc drive|optical drives]] support error scanning.<ref>{{cite web |title=QPxTool - check the quality |url=https://qpxtool.sourceforge.io/faq.html |website=qpxtool.sourceforge.io}}</ref>


In contemporary usage, ''memory'' is usually fast but temporary [[semiconductor memory|semiconductor]] [[random-access memory|read-write memory]], typically [[DRAM]] (dynamic RAM) or other such devices. ''Storage'' consists of storage devices and their media not directly accessible by the [[CPU]] ([[Secondary storage|secondary]] or [[tertiary storage]]), typically [[hard disk drive]]s, [[optical disc]] drives, and other devices slower than RAM but [[non-volatile]] (retaining contents when powered down).<ref>''Storage'' as defined in Microsoft Computing Dictionary, 4th Ed. (c)1999 or in The Authoritative Dictionary of IEEE Standard Terms, 7th Ed., (c) 2000.</ref>
== Architecture ==
Without a significant amount of memory, a computer would only be able to perform fixed operations and immediately output the result, thus requiring hardware [[reconfiguration]] for a new program to be run. This is often used in devices such as desk [[calculator]]s, [[digital signal processing|digital signal processors]], and other specialized devices. [[von Neumann architecture|Von Neumann machines]] differ in having a memory in which operating [[Instruction set architecture#Instructions|instructions]] and data are stored,<ref name="Patterson"/>{{rp|20}} such that they do not need to have their hardware reconfigured for each new program, but can simply be [[computer programming|reprogrammed]] with new in-memory instructions. They also tend to be simpler to [[Computer architecture|design]], in that a relatively simple [[Processor (computing)|processor]] may keep [[State (computer science)|state]] between successive computations to build up complex procedural results. Most modern computers are von Neumann machines.


Historically, ''memory'' has, depending on technology, been called ''central memory'', ''core memory'', ''core storage'', ''drum'', ''main memory'', ''real storage'', or ''internal memory''. Meanwhile, slower persistent storage devices have been referred to as ''secondary storage'', ''external memory'', or ''auxiliary/peripheral storage''.
=== Storage and memory ===
In contemporary usage, the term "storage" typically refers to a subset of computer data storage that comprises storage devices and their media not directly accessible by the [[CPU]], that is, [[Secondary storage|secondary]] or [[tertiary storage]]. Common forms of storage include [[hard disk drive]]s, [[optical disc]] drives, and [[Non-volatile memory|non-volatile]] devices (i.e. devices that retain their contents when the computer is powered down).<ref>''Storage'' as defined in Microsoft Computing Dictionary, 4th Ed. (c)1999 or in The Authoritative Dictionary of IEEE Standard Terms, 7th Ed., (c) 2000.</ref> On the other hand, the term "[[Random-access memory|memory]]" is used to refer to [[semiconductor memory|semiconductor]] [[Read–write memory|read-write]] data storage, typically [[dynamic random-access memory]] (DRAM). [[Dynamic random-access memory]] is a form of volatile memory that also requires the stored information to be periodically reread and rewritten, or [[memory refresh|refreshed]]; [[Static random-access memory|static RAM]] (SRAM) is similar to DRAM, albeit it never needs to be refreshed as long as power is applied.  


=== Primary storage ===
In contemporary usage, the [[memory hierarchy]] of primary storage and secondary storage in some uses refer to what was historically called, respectively, ''secondary storage'' and ''tertiary storage''.<ref>{{cite web |title=Primary storage or storage hardware (shows usage of term "primary storage" meaning "hard disk storage") |url=http://searchstorage.techtarget.com/topics/0,295493,sid5_tax298620,00.html |url-status=dead |archive-url=https://web.archive.org/web/20080910151628/http://searchstorage.techtarget.com/topics/0,295493,sid5_tax298620,00.html |archive-date=10 September 2008 |access-date=18 June 2011 |website=searchstorage.techtarget.com}}</ref>
<!-- Additional DIRECT links point to this section by its name. -->
{{Main|Computer memory}}


''Primary storage'' (also known as ''main memory'', ''internal memory'', or ''prime memory''), often referred to simply as ''memory'', is the only one directly accessible to the CPU. The CPU continuously reads instructions stored there and executes them as required. Any data actively operated on is also stored there in a uniform manner.
==== Primary ====<!-- Note that additional direct links point to this section by its name. -->
 
[[File:Computer storage types.svg|thumb|right|350px|Various forms of storage, divided according to their distance from the [[central processing unit]]. The fundamental components of a general-purpose computer are [[arithmetic and logic unit]], [[control unit|control circuitry]], storage space, and [[input/output]] devices. Technology and capacity as in common [[home computer]]s around 2005.]]
Historically, [[History of computing hardware|early computers]] used [[delay-line memory|delay lines]], [[Williams tube]]s, or rotating [[drum memory|magnetic drums]] as primary storage. By 1954, those unreliable methods were mostly replaced by [[magnetic-core memory]]. Core memory remained dominant until the 1970s, when advances in [[integrated circuit]] technology allowed [[semiconductor memory]] to become economically competitive.<!-- Please do not expand above text! Change but no expand any further. Anyone desiring to know more types, let it be [[twistor memory]] or [[bubble memory]] etc, will click the History link. Do not confuse other readers. -->


This led to modern [[random-access memory]] (RAM). It is small-sized, light, but quite expensive at the same time. The particular types of RAM used for primary storage are [[volatile memory|volatile]], meaning that they lose the information when not powered. Besides storing opened programs, it serves as [[Page cache|disk cache]] and [[write buffer]] to improve both reading and writing performance. Operating systems borrow RAM capacity for caching so long as it's not needed by running software.<ref>{{cite web| url = https://www.kernel.org/doc/html/latest/admin-guide/sysctl/vm.html| title = Documentation for /proc/sys/vm/ — The Linux Kernel documentation}}</ref> Spare memory can be utilized as [[RAM drive]] for temporary high-speed data storage.
'''Primary storage''' (also known as ''main memory'', ''internal memory'', or ''prime memory''), often referred to simply as ''memory'', is storage directly accessible to the CPU. The CPU continuously reads instructions stored there and executes them as required. Any data actively operated on is also stored there in a uniform manner. Historically, [[History of computing hardware|early computers]] used [[delay-line memory|delay lines]], [[Williams tube]]s, or rotating [[drum memory|magnetic drums]] as primary storage. By 1954, those unreliable methods were mostly replaced by [[magnetic-core memory]]. Core memory remained dominant until the 1970s, when advances in [[integrated circuit]] technology allowed [[semiconductor memory]] to become economically competitive.<!-- Please do not expand above text! Change but no expand any further. Anyone desiring to know more types, let it be [[twistor memory]] or [[bubble memory]] etc, will click the History link. Do not confuse other readers. -->


As shown in the diagram, traditionally there are two more sub-layers of the primary storage, besides main large-capacity RAM:
This led to modern [[random-access memory]], which is small-sized, light, and relatively expensive. RAM used for primary storage is [[volatile memory|volatile]], meaning that it loses the information when not powered. Besides storing opened programs, it serves as [[Page cache|disk cache]] and [[write buffer]] to improve both reading and writing performance. Operating systems borrow RAM capacity for caching so long as it's not needed by running software.<ref>{{cite web| url = https://www.kernel.org/doc/html/latest/admin-guide/sysctl/vm.html| title = Documentation for /proc/sys/vm/ — The Linux Kernel documentation}}</ref> Spare memory can be utilized as [[RAM drive]] for temporary high-speed data storage. Besides main large-capacity RAM, there are two more sub-layers of primary storage:
* [[Processor register]]s are located inside the processor. Each register typically holds a [[Word (computer architecture)|word]] of data (often 32 or 64&nbsp;bits). CPU instructions instruct the [[arithmetic logic unit]] to perform various calculations or other operations on this data (or with the help of it). Registers are the fastest of all forms of computer data storage.  
* [[Processor register]]s are the fastest of all forms of data storage, being located inside the processor, with each register typically holding a [[Word (computer architecture)|word]] of data (often 32 or 64&nbsp;bits). CPU instructions instruct the [[arithmetic logic unit]] to perform various calculations or other operations on this data.
* [[Processor cache]] is an intermediate stage between ultra-fast registers and much slower main memory. It was introduced solely to improve the performance of computers. Most actively used information in the main memory is just duplicated in the cache memory, which is faster, but of much lesser capacity. On the other hand, main memory is much slower, but has a much greater storage capacity than processor registers. Multi-level [[Memory hierarchy|hierarchical cache]] setup is also commonly used—''primary cache'' being smallest, fastest and located inside the processor; ''secondary cache'' being somewhat larger and slower. <!-- Please DO NOT EXPAND above text, especially with L1/L2/etc variants - reader can always click the link. -->
* [[Processor cache]] is an intermediate stage between faster registers and slower main memory, being faster than main memory but with much less capacity. Multi-level [[Memory hierarchy|hierarchical cache]] setup is also commonly used, such that primary cache is the smallest and fastest, while secondary cache is larger and slower.<!-- Please DO NOT EXPAND above text, especially with L1/L2/etc variants - reader can always click the link. -->


Main memory is directly or indirectly connected to the central processing unit via a ''memory bus''. It is actually two buses (not on the diagram): an [[address bus]] and a [[data bus]]. The CPU firstly sends a number through an address bus, a number called [[memory address]], that indicates the desired location of data. Then it reads or writes the data in the [[Memory cell (computing)|memory cells]] using the data bus. Additionally, a [[memory management unit]] (MMU) is a small device between CPU and RAM recalculating the actual memory address, for example to provide an abstraction of [[virtual memory]] or other tasks.
Primary storage, including [[Read-only memory|ROM]], [[EEPROM]], [[NOR flash]], and [[Random access memory|RAM]],<ref>{{cite book |url=https://books.google.com/books?id=QGPHAl9GE-IC&dq=size+of+a+memory+address&pg=PA321 |title=The Essentials of Computer Organization and Architecture |date=2006 |publisher=Jones & Bartlett Learning |isbn=978-0-7637-3769-6}}</ref> is usually [[byte-addressable]]. Such memory is directly or indirectly connected to the central processing unit via a [[Bus (computing)|memory bus]], comprising an [[address bus]] and a [[data bus]]. The CPU firstly sends a number called the [[memory address]] through the address bus that indicates the desired location of data. Then it reads or writes the data in the [[Memory cell (computing)|memory cells]] using the data bus. Additionally, a [[memory management unit]] (MMU) is a small device between CPU and RAM recalculating the actual memory address. Memory management units allow for [[memory management]]; they may, for example, provide an [[Abstraction (computer science)|abstraction]] of [[virtual memory]] or other tasks.


As the RAM types used for primary storage are volatile (uninitialized at start up), a computer containing only such storage would not have a source to read instructions from, in order to start the computer. Hence, [[Non-volatile memory|non-volatile primary storage]] containing a small startup program ([[BIOS]]) is used to [[Bootstrapping#Computing|bootstrap]] the computer, that is, to read a larger program from non-volatile ''secondary'' storage to RAM and start to execute it. A non-volatile technology used for this purpose is called ROM, for [[read-only memory]] (the terminology may be somewhat confusing as most ROM types are also capable of ''[[random access]]'').
===== BIOS =====
[[Non-volatile memory|Non-volatile primary storage]] contains a small startup program ([[BIOS]]) is used to [[Bootstrapping#Computing|bootstrap]] the computer, that is, to read a larger program from non-volatile secondary storage to RAM and start to execute it. A non-volatile technology used for this purpose is called [[read-only memory]] (ROM). Most types of "ROM" are not literally read only but are difficult and slow to write to''.'' Some [[embedded system]]s run programs directly from ROM, because such programs are rarely changed. Standard computers largely do not store many programs in ROM, apart from [[firmware]], and use large capacities of secondary storage.


Many types of "ROM" are not literally ''read only'', as updates to them are possible; however it is slow and memory must be erased in large portions before it can be re-written. Some [[embedded system]]s run programs directly from ROM (or similar), because such programs are rarely changed. Standard computers do not store non-rudimentary programs in ROM, and rather, use large capacities of secondary storage, which is non-volatile as well, and not as costly.
==== Secondary ====<!-- Note that additional direct links point to this section by its name. -->
'''Secondary storage''' (also known as ''external memory'' or ''auxiliary storage'') differs from primary storage in that it is not directly accessible by the CPU. Computers use [[input/output]] channels to access secondary storage and transfer the desired data to primary storage. Secondary storage is non-volatile, retaining data when its power is shut off. Modern computer systems typically have two orders of magnitude more secondary storage than primary storage because secondary storage is less expensive.


Recently, ''primary storage'' and ''secondary storage'' in some uses refer to what was historically called, respectively, ''secondary storage'' and ''tertiary storage''.<ref>{{cite web|url=http://searchstorage.techtarget.com/topics/0,295493,sid5_tax298620,00.html|title=Primary storage or storage hardware (shows usage of term "primary storage" meaning "hard disk storage")|url-status=dead|archive-url=https://web.archive.org/web/20080910151628/http://searchstorage.techtarget.com/topics/0,295493,sid5_tax298620,00.html|archive-date=10 September 2008|website=searchstorage.techtarget.com|access-date=18 June 2011}}</ref>
In modern computers, [[hard disk drive]]s (HDDs) or [[solid-state drive]]s (SSDs) are usually used as secondary storage. The [[access time]] per byte for HDDs or SSDs is typically measured in [[millisecond]]s, while the access time per byte for primary storage is measured in [[nanosecond]]s. Rotating [[Optical disc drive|optical storage]] devices, such as [[CD]] and [[DVD]] drives, have even longer access times. Other examples of secondary storage technologies include [[USB flash drive]]s, [[floppy disk]]s, [[magnetic-tape data storage|magnetic tape]], [[paper tape]], [[punched card]]s, and [[RAM drive|RAM disks]].


The primary storage, including [[Read-only memory|ROM]], [[EEPROM]], [[NOR flash]], and [[Random access memory|RAM]],<ref>{{cite book | url=https://books.google.com/books?id=QGPHAl9GE-IC&dq=size+of+a+memory+address&pg=PA321 | isbn=978-0-7637-3769-6 | title=The Essentials of Computer Organization and Architecture | date=2006 | publisher=Jones & Bartlett Learning }}</ref> are usually [[byte-addressable]].
To reduce the seek time and rotational latency, secondary storage, including [[Hard disk drive|HDD]], [[optical disc drive|ODD]] and [[Solid state drive|SSD]], are transferred to and from [[Disk formatting|disks]] in large contiguous blocks. Secondary storage is [[Address space|addressable]] by block; once the [[disk read/write head]] on HDDs reaches the proper placement and the data, subsequent data on the track are very fast to access. Another way to reduce the I/O bottleneck is to use multiple disks in parallel to increase the bandwidth between primary and secondary memory, for example, using [[RAID]].<ref>{{cite book|author=[[J. S. Vitter]]|url=http://www.ittc.ku.edu/~jsv/Papers/Vit.IO_book.pdf|url-status=live|title=Algorithms and data structures for external memory|archive-url=https://web.archive.org/web/20110104233254/http://www.ittc.ku.edu/~jsv/Papers/Vit.IO_book.pdf |archive-date=4 January 2011|series=Series on foundations and trends in theoretical computer science|publisher=now Publishers|location=Hanover, MA|year=2008|isbn=978-1-60198-106-6}}</ref>


=== Secondary storage ===
Secondary storage is often formatted according to a [[file system]] format, which provides the abstraction necessary to organize data into [[Computer file|files]] and [[Directory (computing)|directories]], while also providing [[metadata]] describing the owner of a certain file, the access time, the access permissions, and other information. Most computer [[operating system]]s use the concept of [[virtual memory]], allowing the utilization of more primary storage capacity than is physically available in the system. As the primary memory fills up, the system moves the least-used chunks ([[Page (computer memory)|pages]]) to a swap file or page file on secondary storage, retrieving them later when needed.
<!-- Note that additional direct links point to this section by its name. -->''Secondary storage'' (also known as ''external memory'' or ''auxiliary storage'') differs from primary storage in that it is not directly accessible by the CPU. The computer usually uses its input/output channels to access secondary storage and transfer the desired data to primary storage. Secondary storage is non-volatile (retaining data when its power is shut off). Modern computer systems typically have two orders of magnitude more secondary storage than primary storage because secondary storage is less expensive.


In modern computers, [[hard disk drive]]s (HDDs) or [[solid-state drive]]s (SSDs) are usually used as secondary storage. The [[access time]] per byte for HDDs or SSDs is typically measured in [[millisecond]]s (thousandths of a second), while the access time per byte for primary storage is measured in [[nanosecond]]s (billionths of a second). Thus, secondary storage is significantly slower than primary storage. Rotating [[Optical disc drive|optical storage]] devices, such as [[CD]] and [[DVD]] drives, have even longer access times. Other examples of secondary storage technologies include [[USB flash drive]]s, [[floppy disk]]s, [[magnetic-tape data storage|magnetic tape]], [[paper tape]], [[punched card]]s, and [[RAM drive|RAM disks]].
==== Tertiary ====<!-- Note that additional direct links point to this section by its name. -->
 
Once the [[disk read/write head]] on HDDs reaches the proper placement and the data, subsequent data on the track are very fast to access. To reduce the seek time and rotational latency, data are transferred to and from disks in large contiguous blocks. Sequential or block access on disks is orders of magnitude faster than random access, and many sophisticated paradigms have been developed to design efficient algorithms based on sequential and block access. Another way to reduce the I/O bottleneck is to use multiple disks in parallel to increase the bandwidth between primary and secondary memory, for example, using [[RAID]].<ref>{{cite book|author=[[J. S. Vitter]]|url=http://www.ittc.ku.edu/~jsv/Papers/Vit.IO_book.pdf|url-status=live|title=Algorithms and data structures for external memory|archive-url=https://web.archive.org/web/20110104233254/http://www.ittc.ku.edu/~jsv/Papers/Vit.IO_book.pdf |archive-date=4 January 2011|series=Series on foundations and trends in theoretical computer science|publisher=now Publishers|location=Hanover, MA|year=2008|isbn=978-1-60198-106-6}}</ref>
 
Secondary storage is often formatted according to a [[file system]] format, which provides the abstraction necessary to organize data into [[Computer file|files]] and [[Directory (computing)|directories]], while also providing [[metadata]] describing the owner of a certain file, the access time, the access permissions, and other information.
 
Most computer [[operating system]]s use the concept of [[virtual memory]], allowing the utilization of more primary storage capacity than is physically available in the system. As the primary memory fills up, the system moves the least-used chunks ([[Page (computer memory)|pages]]) to a swap file or page file on secondary storage, retrieving them later when needed. If a lot of pages are moved to slower secondary storage, the system performance is degraded.
 
The secondary storage, including [[Hard disk drive|HDD]], [[optical disc drive|ODD]] and [[Solid state drive|SSD]], are usually block-addressable.
 
=== Tertiary storage ===
<!-- Note that additional direct links point to this section by its name. -->
{{See also|Nearline storage|Cloud storage}}
[[File:StorageTek Powderhorn tape library.jpg|thumb|A large [[tape library]], with tape cartridges placed on shelves in the front, and a robotic arm moving in the back. The visible height of the library is about 180&nbsp;cm.]]
[[File:StorageTek Powderhorn tape library.jpg|thumb|A large [[tape library]], with tape cartridges placed on shelves in the front, and a robotic arm moving in the back. The visible height of the library is about 180&nbsp;cm.]]


''Tertiary storage'' or ''tertiary memory''<ref>{{cite web|url=http://www.eecs.berkeley.edu/Pubs/TechRpts/1994/CSD-94-847.pdf|url-status=live|title=A thesis on tertiary storage|archive-url=https://web.archive.org/web/20070927233543/http://www.eecs.berkeley.edu/Pubs/TechRpts/1994/CSD-94-847.pdf |archive-date=27 September 2007|access-date=18 June 2011}}</ref> is a level below secondary storage. Typically, it involves a robotic mechanism which will ''mount'' (insert) and ''dismount'' removable mass storage media into a storage device according to the system's demands; such data are often copied to secondary storage before use. It is primarily used for archiving rarely accessed information since it is much slower than secondary storage (e.g. 5–60 seconds vs. 1–10 milliseconds). This is primarily useful for extraordinarily large data stores, accessed without human operators. Typical examples include [[tape libraries]] and [[optical jukebox]]es.
'''Tertiary storage''' or '''tertiary memory''' typically involves a [[industrial robot|robotic arm]] which mounts and dismount removable mass storage media from a catalog [[database]] into a storage device according to the system's demands. It is primarily used for archiving rarely accessed information, since it is much slower than secondary storage (e.g. 5–60 seconds vs. 1–10 milliseconds). This is primarily useful for extraordinarily large data stores, accessed without human operators. Typical examples include [[tape libraries]], [[optical jukebox]]es, and massive arrays of idle disks ([[Non-RAID drive architectures#MAID|MAID]]). Tertiary storage is also known as [[nearline storage]] because it is "near to online".<ref name="pearson2010">{{cite web |last=Pearson |first=Tony |year=2010 |url=https://www.ibm.com/developerworks/community/blogs/InsideSystemStorage/entry/the_correct_use_of_the_term_nearline2 |url-status=dead|title=Correct use of the term nearline|work=IBM developer-works, inside system storage|archive-url=https://web.archive.org/web/20151124110253/https://www.ibm.com/developerworks/community/blogs/InsideSystemStorage/entry/the_correct_use_of_the_term_nearline2?lang=en|archive-date=24 November 2015|access-date=16 August 2015}}</ref> [[Hierarchical storage management]] is an archiving strategy involving automatically migrating long-unused files from fast hard disk storage to libraries or jukeboxes.
 
When a computer needs to read information from the tertiary storage, it will first consult a catalog [[database]] to determine which tape or disc contains the information. Next, the computer will instruct a [[industrial robot|robotic arm]] to fetch the medium and place it in a drive. When the computer has finished reading the information, the robotic arm will return the medium to its place in the library.
 
Tertiary storage is also known as ''[[nearline storage]]'' because it is "near to online". The formal distinction between online, nearline, and offline storage is:<ref name="pearson2010">{{cite web |last=Pearson |first=Tony |year=2010 |url=https://www.ibm.com/developerworks/community/blogs/InsideSystemStorage/entry/the_correct_use_of_the_term_nearline2 |url-status=dead|title=Correct use of the term nearline|work=IBM developer-works, inside system storage|archive-url=https://web.archive.org/web/20151124110253/https://www.ibm.com/developerworks/community/blogs/InsideSystemStorage/entry/the_correct_use_of_the_term_nearline2?lang=en|archive-date=24 November 2015|access-date=16 August 2015}}</ref>
 
* Online storage is immediately available for I/O.
* Nearline storage is not immediately available, but can be made online quickly without human intervention.
* Offline storage is not immediately available, and requires some human intervention to become online.


For example, always-on spinning hard disk drives are online storage, while spinning drives that spin down automatically, such as in massive arrays of idle disks ([[Non-RAID drive architectures#MAID|MAID]]), are nearline storage. Removable media such as [[tape cartridge]]s that can be automatically loaded, as in [[tape libraries]], are nearline storage, while tape cartridges that must be manually loaded are offline storage.
==== Offline ====<!-- Additional direct links point to this section by name. -->
 
'''Offline storage''' is computer data storage on a medium or a device that is not under the control of a [[central processing unit|processing unit]].<ref>{{Cite tech report
=== Off-line storage ===
<!-- Additional direct links point to this section by name. -->
''Off-line storage'' is computer data storage on a medium or a device that is not under the control of a [[central processing unit|processing unit]].<ref>{{Cite tech report
  |last        = National Communications System
  |last        = National Communications System
  |author-link  = National Communications System
  |author-link  = National Communications System
Line 106: Line 80:
  |url-status  = dead
  |url-status  = dead
  |archive-url  = https://web.archive.org/web/20090302235918/http://www.its.bldrdoc.gov/fs-1037/fs-1037c.htm
  |archive-url  = https://web.archive.org/web/20090302235918/http://www.its.bldrdoc.gov/fs-1037/fs-1037c.htm
  |archive-date = 2 March 2009}} See also article [[Federal standard 1037C]].</ref> The medium is recorded, usually in a secondary or tertiary storage device, and then physically removed or disconnected. It must be inserted or connected by a human operator before a computer can access it again. Unlike tertiary storage, it cannot be accessed without human interaction.
  |archive-date = 2 March 2009}} See also article [[Federal standard 1037C]].</ref> The medium is recorded, usually in a secondary or tertiary storage device, and then physically removed or disconnected. Unlike tertiary storage, it cannot be accessed without human interaction. It is used to [[Data communication|transfer information]] since the detached medium can easily be physically transported. In modern personal computers, most secondary and tertiary storage media are also used for offline storage.


[[Off-line]] storage is used to [[Data communication|transfer information]] since the detached medium can easily be physically transported. Additionally, it is useful for cases of disaster, where, for example, a fire destroys the original data, a medium in a remote location will be unaffected, enabling [[IT disaster recovery|disaster recovery]]. Off-line storage increases general [[information security]] since it is physically inaccessible from a computer, and data confidentiality or integrity cannot be affected by computer-based attack techniques. Also, if the information stored for archival purposes is rarely accessed, off-line storage is less expensive than tertiary storage.
=== Network connectivity ===
A secondary or tertiary storage may connect to a computer utilizing [[computer network]]s. This concept does not pertain to the primary storage.
 
* [[Direct-attached storage]] (DAS) is a traditional mass storage, that does not use any network.
* [[Network-attached storage]] (NAS) is mass storage attached to a computer which another computer can access at file level over a [[local area network]], a private [[wide area network]], or in the case of [[File-hosting service|online file storage]], over the [[Internet]]. NAS is commonly associated with the [[Network File System|NFS]] and [[CIFS/SMB]] protocols.
* [[Storage area network]] (SAN) is a specialized network, that provides other computers with storage capacity. SAN is commonly associated with [[Fibre Channel]] networks.
 
== Cloud ==
[[Cloud storage]] is based on highly [[Virtualization|virtualized]] infrastructure.<ref>{{Cite web |date=18 August 2023 |title=Disaster Recovery on AWS Cloud |url=https://zenbit.tech/blog/disaster-recovery-on-aws-cloud/}}</ref> A subset of [[cloud computing]], it has particular cloud-native interfaces, near-instant elasticity and [[scalability]], [[multi-tenancy]], and [[metered]] resources. Cloud storage services can be used from an off-premises service or deployed on-premises.<ref>{{cite web |title=On-premises private cloud storage description, characteristics, and options |url=http://www.vion.com/capacity-services/vion-capacity-services.html |url-status=dead |archive-url=https://web.archive.org/web/20160322022215/http://www.vion.com/capacity-services/vion-capacity-services.html |archive-date=2016-03-22 |access-date=2012-12-10}}</ref>
 
=== Deployment models ===
Cloud deployment models define the interactions between cloud providers and customers.<ref name=":1">{{Cite journal |date=September 2023 |title=ISO/IEC 22123-2:2023(E) - Information technology — Cloud computing — Part 2: Concepts |journal=International Organization for Standardization}}</ref>
 
* [[Private cloud computing infrastructure|Private clouds]], for example, are used in [[cloud security]] to mitigate the increased [[Attack surface|attack surface area]] of [[outsourcing]] data storage.<ref>{{cite web |title=The Attack Surface Problem |url=http://www.sans.edu/research/security-laboratory/article/did-attack-surface |url-status=dead |archive-url=https://web.archive.org/web/20130921221257/http://www.sans.edu/research/security-laboratory/article/did-attack-surface |archive-date=2013-09-21 |access-date=2013-07-08 |publisher=Sans.edu}}</ref> A private cloud is cloud infrastructure operated solely for a single organization, whether managed internally or by a third party, or hosted internally or externally.<ref name="nist">{{cite tech report |title=The NIST Definition of Cloud Computing |author1=Mell, Peter |author2=Timothy Grance |date=September 2011 |number=Special publication 800-145 |institution=National Institute of Standards and Technology: U.S. Department of Commerce |doi=10.6028/NIST.SP.800-145}}</ref>
* [[Hybrid cloud storage]] are another cloud security solution, involving storage infrastructure that uses a combination of on-premises storage resources with cloud storage. The on-premises storage is usually managed by the organization, while the public cloud storage provider is responsible for the management and security of the data stored in the cloud.<ref name="jones1">{{cite web |last=Jones |first=Margaret |date=July 2019 |title=Hybrid Cloud Storage |url=https://www.techtarget.com/searchstorage/definition/hybrid-cloud-storage |url-status=live |archive-url=https://web.archive.org/web/20220621203942/https://www.techtarget.com/searchstorage/definition/hybrid-cloud-storage |archive-date=2022-06-21 |access-date=2022-06-22 |work=SearchStorage}}</ref><ref name="searchstorage12">{{cite web |last=Barrett |first=Mike |date=July 2014 |title=Definition: cloud storage gateway |url=https://www.techtarget.com/searchstorage/definition/cloud-storage-gateway |url-status=live |archive-url=https://web.archive.org/web/20220621201806/https://www.techtarget.com/searchstorage/definition/cloud-storage-gateway |archive-date=2022-06-21 |access-date=2022-06-22 |work=SearchStorage}}</ref> Using a hybrid model allows data to be ingested in an encrypted format where the key is held within the on-premise infrastructure and can limit access to the use of on-premise [[Cloud storage gateway|cloud storage gateways]], which may have options to encrypt the data prior to transfer.<ref name="searchstorage1">{{cite web |last=Barrett |first=Mike |date=July 2014 |title=Definition: cloud storage gateway |url=https://www.techtarget.com/searchstorage/definition/cloud-storage-gateway |url-status=live |archive-url=https://web.archive.org/web/20220621201806/https://www.techtarget.com/searchstorage/definition/cloud-storage-gateway |archive-date=2022-06-21 |access-date=2022-06-22 |work=SearchStorage}}</ref>
* Cloud services are considered "public" when they are delivered over the public Internet.<ref>{{cite web |last=Rouse |first=Margaret |title=What is public cloud? |url=http://searchcloudcomputing.techtarget.com/definition/public-cloud |url-status=live |archive-url=https://web.archive.org/web/20141016022343/http://searchcloudcomputing.techtarget.com/definition/public-cloud |archive-date=16 October 2014 |access-date=12 October 2014 |publisher=Definition from Whatis.com}}</ref>
** A [[virtual private cloud]] (VPC) is a pool of shared resources within a public cloud that provides a certain level of isolation between the different users using the resources. VPCs achieve user isolation through the allocation of a private IP [[subnet]] and a virtual communication construct (such as a [[VLAN]] or a set of [[encrypted communication]] channels) between users as welll as the use of a [[virtual private network]] (VPN) per VPC user, securing, by means of authentication and encryption, the remote access of the organization to its VPC resources.{{Citation needed|date=September 2025}}
 
=== Types ===
There are three types of cloud storage:


In modern personal computers, most secondary and tertiary storage media are also used for off-line storage. Optical discs and flash memory devices are the most popular, and to a much lesser extent removable hard disk drives; older examples include floppy disks and Zip disks. In enterprise uses, magnetic tape cartridges are predominant; older examples include open-reel magnetic tape and punched cards.
* [[Object storage]]<ref>{{cite book |last1=Kolodner |first1=Elliot K. |title=2011 IEEE Third International Conference on Cloud Computing Technology and Science |last2=Tal |first2=Sivan |last3=Kyriazis |first3=Dimosthenis |last4=Naor |first4=Dalit |last5=Allalouf |first5=Miriam |last6=Bonelli |first6=Lucia |last7=Brand |first7=Per |last8=Eckert |first8=Albert |last9=Elmroth |first9=Erik |year=2011 |isbn=978-1-4673-0090-2 |pages=357–366 |chapter=A Cloud Environment for Data-intensive Storage Services |citeseerx=10.1.1.302.151 |doi=10.1109/CloudCom.2011.55 |last10=Gogouvitis |first10=Spyridon V. |last11=Harnik |first11=Danny |last12=Hernandez |first12=Francisco |last13=Jaeger |first13=Michael C. |last14=Bayuh Lakew |first14=Ewnetu |last15=Manuel Lopez |first15=Jose |last16=Lorenz |first16=Mirko |last17=Messina |first17=Alberto |last18=Shulman-Peleg |first18=Alexandra |last19=Talyansky |first19=Roman |last20=Voulodimos |first20=Athanasios |last21=Wolfsthal |first21=Yaron |s2cid=96939}}</ref><ref name="oceanstore">S. Rhea, C. Wells, P. Eaton, D. Geels, B. Zhao, H. Weatherspoon, and J. Kubiatowicz, Maintenance-Free Global Data Storage. IEEE Internet Computing, Vol 5, No 5, September/October 2001, pp 40–49. [http://oceanstore.cs.berkeley.edu/publications/papers/pdf/ieeeic.pdf] {{Webarchive|url=https://web.archive.org/web/20120329061438/http://oceanstore.cs.berkeley.edu/publications/papers/pdf/ieeeic.pdf|date=2012-03-29}} [http://oceanstore.cs.berkeley.edu/info/overview.html] {{Webarchive|url=https://web.archive.org/web/20110623031932/http://oceanstore.cs.berkeley.edu/info/overview.html|date=2011-06-23}}</ref>
* [[File storage]]
* [[Block-level storage]] is a concept in cloud-hosted [[Persistent data structure|data persistence]] where [[Cloud computing|cloud services]] emulate the behaviour of a traditional [[Device file#Block devices|block device]], such as a physical [[Hard disk drive|hard drive]],<ref>{{Cite book |last1=Wittig |first1=Andreas |title=Amazon web services in action |last2=Wittig |first2=Michael |publisher=Manning press |year=2015 |isbn=978-1-61729-288-0 |pages=204–206}}</ref> where storage is organised as [[Block (data storage)|blocks]]. Block-level storage differs from [[Object storage|object stores]] or 'bucket stores' or to [[Cloud database|cloud databases]]. These operate at a higher level of abstraction and are able to work with entities such as files, documents, images, videos or database records.<ref>{{Cite web |last=Taneja |first=Arun |title=How an object store differs from file and block storage |url=http://searchcloudstorage.techtarget.com/feature/How-an-object-store-differs-from-file-and-block-storage |url-status=dead |archive-url=https://web.archive.org/web/20160213202025/http://searchcloudstorage.techtarget.com/feature/How-an-object-store-differs-from-file-and-block-storage |archive-date=2016-02-13 |access-date=2016-02-22 |website=TechTarget.com}}</ref> At one time, block-level storage was provided by [[Storage area network|SAN]], and NAS provided file-level storage.<ref>{{Cite web |title=What is file level storage versus block level storage? |url=http://www.iscsi.com/resources/File-Level-Storage-vs-Block-Level-Storage.asp |url-status=dead |archive-url=https://web.archive.org/web/20121015033321/https://stonefly.com/resources/File-Level-Storage-vs-Block-Level-Storage.asp |archive-date=15 October 2012 |website=Stonefly}}</ref> With the shift from on-premises hosting to cloud services, this distinction has shifted.{{Sfnp|Wittig|Wittig|2015|page=205}}
** Instance stores are a form of cloud-hosted block-level storage, being provided as part of a cloud [[Instance (computer science)|instance]].{{Sfnp|Wittig|Wittig|2015|pages=212-214}} Unlike other forms of block storage, instance store data will be lost the cloud instance is stopped.{{Sfnp|Wittig|Wittig|2015|page=212}}


== Characteristics of storage ==
== Characteristics ==
[[File:Samsung-1GB-DDR2-Laptop-RAM.jpg|thumb|250px|A 1&nbsp;GiB module of [[SO-DIMM|laptop]] [[DDR2 SDRAM|DDR2]] [[RAM]]]]
[[File:Samsung-1GB-DDR2-Laptop-RAM.jpg|thumb|250px|A 1&nbsp;GiB module of [[SO-DIMM|laptop]] [[DDR2 SDRAM|DDR2]] [[RAM]]]]


Storage technologies at all levels of the storage hierarchy can be differentiated by evaluating certain core characteristics as well as measuring characteristics specific to a particular implementation. These core characteristics are volatility, mutability, accessibility, and addressability. For any particular implementation of any storage technology, the characteristics worth measuring are capacity and performance.
Storage technologies at all levels of the storage hierarchy can be differentiated by evaluating certain core characteristics as well as measuring characteristics specific to a particular implementation. These core characteristics are:
 
* [[Volatile memory|Volatility]]
** An [[uninterruptible power supply]] (UPS) can be used to give a computer a brief window of time to move information from primary volatile storage into non-volatile storage before the batteries are exhausted. Some systems, for example [[EMC Symmetrix]], have integrated batteries that maintain volatile storage for several minutes.
* [[Immutable object|Mutability]]
** Storage can be classified into read/write, slow-write/fast-read (e.g. [[CD-RW]], [[Solid-state drive|SSD]]), [[Write once read many|write-once/read-many]] or WORM (e.g. [[programmable read-only memory]], [[CD-R]]), read-only storage (e.g. [[Read-only memory#Factory programmed|mask ROM ICs]], [[CD-ROM]]).
* Accessibility
** Types of access include [[random access]] and [[sequential access]]. In random access, any location in storage can be accessed at any moment in approximately the same amount of time. In sequential access, the accessing of pieces of information will be in a serial order, one after the other; therefore the time to access a particular piece of information depends upon which piece of information was last accessed.
* [[Addressing mode|Addressability]]
** Storage can be location accessible (i.e. selected with its numerical [[memory address]]), [[file system|file addressable]], or [[content-addressable memory|content-addressable]].
* Capacity and [[Density (computer storage)|density]]
* Performance
** Storage performance metrics include [[Latency (engineering)|latency]], [[Network throughput|throughput]], granularity and reliability.
* Energy
** Low capacity [[solid-state drive]]s have no moving parts and consume less power than hard disks.<ref>{{Cite web |date=12 July 2006 |title=Super Talent's 2.5" IDE flash hard drive |url=http://techreport.com/articles.x/10334/13 |archive-url=https://web.archive.org/web/20120126045422/http://techreport.com/articles.x/10334/13 |archive-date=26 January 2012 |access-date=18 June 2011 |website=The tech report |page=13}}</ref><ref>{{Cite web |date=20 September 2006 |title=Power consumption – Tom's hardware : Conventional hard drive obsoletism? Samsung's 32 GB flash drive previewed |url=https://www.tomshardware.com/reviews/conventional-hard-drive-obsoletism,1324-5.html |access-date=18 June 2011 |website=tomshardware.com}}</ref><ref name="xbitSSDvsHD">{{cite web |author=Aleksey Meyev |date=23 April 2008 |title=SSD, i-RAM and traditional hard disk drives |url=http://www.xbitlabs.com/articles/storage/display/ssd-iram.html |url-status=dead |archive-url=https://web.archive.org/web/20081218134355/http://www.xbitlabs.com/articles/storage/display/ssd-iram.html |archive-date=18 December 2008 |publisher=X-bit labs}}</ref> Also, memory may use more power than hard disks.<ref name="xbitSSDvsHD" /> Large caches, which are used to avoid hitting the [[memory wall]], may also consume a large amount of power.
* Security<ref>{{Cite web |author1=Karen Scarfone |author2=Murugiah Souppaya |author3=Matt Sexton |date=November 2007 |title=Guide to storage encryption technologies for end user devices |url=https://www.hhs.gov/sites/default/files/ocr/privacy/hipaa/administrative/securityrule/nist800111.pdf |publisher=National Institute of Standards and Technology}}</ref>


{| class=wikitable style="text-align:center;"
{| class=wikitable style="text-align:center;"
Line 197: Line 208:
|}
|}


=== Volatility ===
== Media ==
[[Non-volatile memory]] retains the stored information even if not constantly supplied with electric power. It is suitable for long-term storage of information. [[Volatile memory]] requires constant power to maintain the stored information. The fastest memory technologies are volatile ones, although that is not a universal rule. Since the primary storage is required to be very fast, it predominantly uses volatile memory.
 
[[Dynamic random-access memory]] is a form of volatile memory that also requires the stored information to be periodically reread and rewritten, or [[memory refresh|refreshed]], otherwise it would vanish. [[Static random-access memory]] is a form of volatile memory similar to DRAM with the exception that it never needs to be refreshed as long as power is applied; it loses its content when the power supply is lost.
 
An [[uninterruptible power supply]] (UPS) can be used to give a computer a brief window of time to move information from primary volatile storage into non-volatile storage before the batteries are exhausted. Some systems, for example [[EMC Symmetrix]], have integrated batteries that maintain volatile storage for several minutes.
 
=== Mutability ===
; Read/write storage or mutable storage : Allows information to be overwritten at any time. A computer without some amount of read/write storage for primary storage purposes would be useless for many tasks. Modern computers typically use read/write storage also for secondary storage.
; Slow write, fast read storage : Read/write storage which allows information to be overwritten multiple times, but with the write operation being much slower than the read operation. Examples include [[CD-RW]] and [[SSD]].
; Write once storage : [[Write once read many]] (WORM) allows the information to be written only once at some point after manufacture. Examples include semiconductor [[programmable read-only memory]] and [[CD-R]].
; Read only storage : Retains the information stored at the time of manufacture. Examples include [[Read-only memory#Factory programmed|mask ROM ICs]] and [[CD-ROM]].
 
=== Accessibility ===
; [[Random access]]: Any location in storage can be accessed at any moment in approximately the same amount of time. Such characteristic is well suited for primary and secondary storage. Most [[semiconductor memories]], [[Flash_memory|flash memories]] and [[hard disk drive]]s provide random access, though both semiconductor and flash memories have minimal [[latency_(engineering)|latency]] when compared to hard disk drives, as no mechanical parts need to be moved.
; [[Sequential access]]: The accessing of pieces of information will be in a serial order, one after the other; therefore the time to access a particular piece of information depends upon which piece of information was last accessed. Such characteristic is typical of off-line storage.
 
=== Addressability ===
; Location-addressable : Each individually accessible unit of information in storage is selected with its numerical [[memory address]]. In modern computers, location-addressable storage usually limits to primary storage, accessed internally by computer programs, since location-addressability is very efficient, but burdensome for humans.
; [[file system|File addressable]]: Information is divided into ''[[computer file|files]]'' of variable length, and a particular file is selected with [[human-readable]] directory and file names. The underlying device is still location-addressable, but the [[operating system]] of a computer provides the file system [[abstraction (computer science)|abstraction]] to make the operation more understandable. In modern computers, secondary, tertiary and off-line storage use file systems.
; [[content-addressable memory|Content-addressable]]: Each individually accessible unit of information is selected based on the basis of (part of) the contents stored there. [[Content-addressable storage]] can be implemented using [[software]] (computer program) or [[Computer hardware|hardware]] (computer device), with hardware being faster but more expensive option. Hardware content addressable memory is often used in a computer's [[CPU cache]].
 
=== Capacity ===
; Raw capacity: The total amount of stored information that a storage device or medium can hold. It is expressed as a quantity of [[bit]]s or [[byte]]s (e.g. 10.4 [[megabyte]]s).
; [[Memory storage density]]: The compactness of stored information. It is the storage capacity of a medium divided with a unit of length, area or volume (e.g. 1.2 megabytes per square inch).
 
=== Performance ===
; [[Latency (engineering)|Latency]]: The time it takes to access a particular location in storage. The relevant [[unit of measurement]] is typically [[nanosecond]] for primary storage, [[millisecond]] for secondary storage, and [[second]] for tertiary storage. It may make sense to separate read latency and write latency (especially for non-volatile memory) and in case of sequential access storage, minimum, maximum and average latency.
; [[Hard_ disk drive performance characteristics#Data transfer rate|Throughput]]: The rate at which information can be read from or written to the storage. In computer data storage, throughput is usually expressed in terms of megabytes per second (MB/s), though [[bit rate]] may also be used. As with latency, read rate and write rate may need to be differentiated. Also accessing media sequentially, as opposed to randomly, typically yields maximum throughput.
; Granularity: The size of the largest "chunk" of data that can be efficiently accessed as a single unit, e.g. without introducing additional latency.
;Reliability: The probability of spontaneous bit value change under various conditions, or overall [[failure rate]].
Utilities such as [[hdparm]] and [[sar (Unix)|sar]] can be used to measure IO performance in Linux.
 
=== Energy use ===
* Storage devices that reduce fan usage automatically shut-down during inactivity, and low power hard drives can reduce energy consumption by 90 percent.<ref>{{cite web|url=http://www.springlightcfl.com/consumer/energy_savings_calculator.aspx|title=Energy savings calculator|url-status=dead|archive-url=https://web.archive.org/web/20081221131054/http://springlightcfl.com/consumer/energy_savings_calculator.aspx|archive-date=21 December 2008}}</ref><ref>{{Cite web|url=http://www.simpletech.com/content/eco-friendly-redrive|url-status=dead|archive-url=https://web.archive.org/web/20080805092907/http://www.simpletech.com/content/eco-friendly-redrive|archive-date=5 August 2008|title=How much of the [re]drive is actually eco-friendly?|website=Simple tech}}</ref>
* 2.5-inch hard disk drives often consume less power than larger ones.<ref>{{cite web|title=IS the Silent PC Future 2.5-inches wide?|url=http://www.silentpcreview.com/article145-page1.html|access-date=2 August 2008|author=Mike Chin|date=8 March 2004|url-status=live|archive-url=https://web.archive.org/web/20080720000101/http://www.silentpcreview.com/article145-page1.html|archive-date=20 July 2008}}</ref><ref>{{cite web|url=http://www.silentpcreview.com/article29-page2.html|title=Recommended hard drives|access-date=2 August 2008|author=Mike Chin|date=18 September 2002|url-status=live|archive-url=https://web.archive.org/web/20080905085853/http://www.silentpcreview.com/article29-page2.html|archive-date=5 September 2008}}</ref> Low capacity [[solid-state drive]]s have no moving parts and consume less power than hard disks.<ref>{{Cite web|url=http://techreport.com/articles.x/10334/13|title=Super Talent's 2.5" IDE flash hard drive|website=The tech report|date=12 July 2006|page=13|archive-url=https://web.archive.org/web/20120126045422/http://techreport.com/articles.x/10334/13|archive-date=26 January 2012|access-date=18 June 2011}}</ref><ref>{{Cite web|url=http://www.tomshardware.com/reviews/conventional-hard-drive-obsoletism,1324-5.html|title=Power consumption – Tom's hardware : Conventional hard drive obsoletism? Samsung's 32 GB flash drive previewed|website=tomshardware.com|date=20 September 2006|access-date=18 June 2011}}</ref><ref name=xbitSSDvsHD/> Also, memory may use more power than hard disks.<ref name=xbitSSDvsHD>{{cite web|title=SSD, i-RAM and traditional hard disk drives|date=23 April 2008|url=http://www.xbitlabs.com/articles/storage/display/ssd-iram.html|author=Aleksey Meyev|publisher=X-bit labs|url-status=dead|archive-url=https://web.archive.org/web/20081218134355/http://www.xbitlabs.com/articles/storage/display/ssd-iram.html|archive-date=18 December 2008}}</ref> Large caches, which are used to avoid hitting the [[memory wall]], may also consume a large amount of power.
 
=== Security ===
[[Hardware-based full disk encryption|Full disk encryption]], [[Disk encryption software|volume and virtual disk encryption, andor file/folder encryption]] is readily available for most storage devices.<ref>{{Cite web|url=https://www.hhs.gov/sites/default/files/ocr/privacy/hipaa/administrative/securityrule/nist800111.pdf|title=Guide to storage encryption technologies for end user devices|publisher=National Institute of Standards and Technology|author1=Karen Scarfone|author2=Murugiah Souppaya |author3=Matt Sexton|date=November 2007}}</ref>
 
Hardware memory encryption is available in Intel Architecture, supporting Total Memory Encryption (TME) and page granular memory encryption with multiple keys (MKTME).<ref>{{cite web|url=https://software.intel.com/sites/default/files/managed/a5/16/Multi-Key-Total-Memory-Encryption-Spec.pdf |archive-url=https://ghostarchive.org/archive/20221009/https://software.intel.com/sites/default/files/managed/a5/16/Multi-Key-Total-Memory-Encryption-Spec.pdf |archive-date=2022-10-09 |url-status=live |title=Encryption specs |publisher=software.intel.com |access-date=28 December 2019}}</ref><ref>{{cite web|url=https://lwn.net/Articles/776688/ |title=A proposed API for full-memory encryption |publisher=Lwn.net |access-date=28 December 2019}}</ref> and in [[SPARC]] M7 generation since October 2015.<ref>{{cite web|url=https://swisdev.oracle.com/_files/What-Is-SSM.html |title=Introduction to SPARC M7 and silicon secured memory (SSM)|url-status=dead|publisher=swisdev.oracle.com|archive-url=https://web.archive.org/web/20190121180236/https://swisdev.oracle.com/_files/What-Is-SSM.html|archive-date=21 January 2019|access-date=28 December 2019}}</ref>
 
=== Vulnerability and reliability ===
[[File:S.M.A.R.T. warning.png|thumb|S.M.A.R.T. software warning suggests impending hard drive failure.]]
Distinct types of data storage have different points of failure and various methods of [[predictive failure analysis]].
 
Vulnerabilities that can instantly lead to total loss are [[head crash]]ing on mechanical hard drives and [[failure of electronic components]] on flash storage.
 
==== Error detection ====
[[File:QPxTool DVD error rate graph.png|thumb|[[Optical_disc#Surface_error_scanning|Error rate measurement]] on a [[DVD+R]]. The minor errors are correctable and within a healthy range.]]
Impending failure on [[hard disk drive]]s is estimable using S.M.A.R.T. diagnostic data that includes the [[power-on hours|hours of operation]] and the count of spin-ups, though its reliability is disputed.<ref>{{cite web|title=What S.M.A.R.T. hard disk errors actually tell us |url=https://www.backblaze.com/blog/what-smart-stats-indicate-hard-drive-failures/|website=Backblaze|date=6 October 2016}}</ref>
 
Flash storage may experience downspiking transfer rates as a result of accumulating errors, which the [[flash memory controller]] attempts to correct.
 
The health of [[optical media]] can be determined by [[Optical disc#Surface error scanning|measuring correctable minor errors]], of which high counts signify deteriorating and/or low-quality media. Too many consecutive minor errors can lead to data corruption. Not all vendors and models of [[Optical disc drive|optical drives]] support error scanning.<ref>{{cite web |title=QPxTool - check the quality|url=https://qpxtool.sourceforge.io/faq.html|website=qpxtool.sourceforge.io}}</ref>
 
== {{anchor|media}}Storage media ==
{{As of|2011}}, the most commonly used data storage media are semiconductor, magnetic, and optical, while paper still sees some limited usage. Some other fundamental storage technologies, such as all-flash arrays (AFAs) are proposed for development.


=== Semiconductor ===
=== Semiconductor ===
Line 266: Line 220:


=== Magnetic ===
=== Magnetic ===
{{Magnetic storage media}}
[[Magnetic storage]] uses different patterns of [[magnetization]] on a [[magnetically]] coated surface to store information. Magnetic storage is ''non-volatile''. The information is accessed using one or more read/write heads which may contain one or more recording transducers. A read/write head only covers a part of the surface so that the head or medium or both must be moved relative to another in order to access data. In modern computers, magnetic storage will take these forms:
[[Magnetic storage]] uses different patterns of [[magnetization]] on a [[magnetically]] coated surface to store information. Magnetic storage is ''non-volatile''. The information is accessed using one or more read/write heads which may contain one or more recording transducers. A read/write head only covers a part of the surface so that the head or medium or both must be moved relative to another in order to access data. In modern computers, magnetic storage will take these forms:


Line 278: Line 230:
In early computers, magnetic storage was also used as:
In early computers, magnetic storage was also used as:


* [[Microcode]] storage in [[transformer read-only storage]];
* Primary storage in a form of [[Drum memory|magnetic memory]], or [[core memory]], [[core rope memory]], [[thin-film memory]] and/or [[twistor memory]];
* Primary storage in a form of [[Drum memory|magnetic memory]], or [[core memory]], [[core rope memory]], [[thin-film memory]] and/or [[twistor memory]];
* Tertiary (e.g. [[NCR CRAM]]) or off line storage in the form of magnetic cards;
* Magnetic-tape was often used for secondary storage;
* Magnetic tape was then often used for secondary storage.
* Tertiary (e.g. [[NCR CRAM]]) or off line storage in the form of magnetic cards.


Magnetic storage does not have a definite limit of rewriting cycles like flash storage and re-writeable optical media, as altering magnetic fields causes no physical wear. Rather, their life span is limited by mechanical parts.<ref>{{cite web |title=Comparing SSD and HDD endurance in the age of QLC SSDs|url=https://www.micron.com/-/media/client/global/documents/products/white-paper/5210_ssd_vs_hdd_endurance_white_paper.pdf |archive-url=https://ghostarchive.org/archive/20221009/https://www.micron.com/-/media/client/global/documents/products/white-paper/5210_ssd_vs_hdd_endurance_white_paper.pdf |archive-date=2022-10-09 |url-status=live|publisher=Micron technology}}</ref><ref>{{cite web|title=Comparing SSD and HDD - A comprehensive comparison of the storage drives|url=https://www.stellarinfo.co.in/kb/ssd-vs-hdd.php |website=www.stellarinfo.co.in|date=28 February 2025 |language=en}}</ref>
Magnetic storage does not have a definite limit of rewriting cycles like flash storage and re-writeable optical media, as altering magnetic fields causes no physical wear. Rather, their life span is limited by mechanical parts.<ref>{{cite web |title=Comparing SSD and HDD endurance in the age of QLC SSDs|url=https://www.micron.com/-/media/client/global/documents/products/white-paper/5210_ssd_vs_hdd_endurance_white_paper.pdf |archive-url=https://ghostarchive.org/archive/20221009/https://www.micron.com/-/media/client/global/documents/products/white-paper/5210_ssd_vs_hdd_endurance_white_paper.pdf |archive-date=2022-10-09 |url-status=live|publisher=Micron technology}}</ref><ref>{{cite web|title=Comparing SSD and HDD - A comprehensive comparison of the storage drives|url=https://www.stellarinfo.co.in/kb/ssd-vs-hdd.php |website=www.stellarinfo.co.in|date=28 February 2025 |language=en}}</ref>


=== Optical ===
=== Optical ===
{{Optical storage media}}
[[Optical storage]], the typical [[optical disc]], stores information in deformities on the surface of a circular disc and reads this information by illuminating the surface with a [[laser diode]] and observing the reflection. Optical disc storage is ''non-volatile''. The deformities may be permanent (read only media), formed once (write once media) or reversible (recordable or read/write media). The following forms are in common use {{As of|2009|lc=true}}:<ref>{{Cite web|url=http://www.dvddemystified.com/dvdfaq.html|title=The DVD FAQ - A comprehensive reference of DVD technologies|archive-url=https://web.archive.org/web/20090822172353/http://www.dvddemystified.com/dvdfaq.html|archive-date=22 August 2009}}</ref>
[[Optical storage]], the typical [[optical disc]], stores information in deformities on the surface of a circular disc and reads this information by illuminating the surface with a [[laser diode]] and observing the reflection. Optical disc storage is ''non-volatile''. The deformities may be permanent (read only media), formed once (write once media) or reversible (recordable or read/write media). The following forms are in common use {{As of|2009|lc=true}}:<ref>{{Cite web|url=http://www.dvddemystified.com/dvdfaq.html|title=The DVD FAQ - A comprehensive reference of DVD technologies|archive-url=https://web.archive.org/web/20090822172353/http://www.dvddemystified.com/dvdfaq.html|archive-date=22 August 2009}}</ref>


Line 298: Line 249:
[[3D optical data storage]] has also been proposed.
[[3D optical data storage]] has also been proposed.


Light induced magnetization melting in magnetic photoconductors has also been proposed for high-speed low-energy consumption magneto-optical storage.<ref name="Náfrádi 2016">{{cite journal|last1=Náfrádi|first1=Bálint|title=Optically switched magnetism in photovoltaic perovskite CH3NH3(Mn:Pb)I3|journal=Nature Communications|date=24 November 2016|volume=7|page=13406|doi=10.1038/ncomms13406|pmc=5123013|pmid=27882917|bibcode=2016NatCo...713406N|arxiv=1611.08205}}</ref>
Light induced magnetization melting in magnetic photoconductors has also been proposed for high-speed low-energy consumption magneto-optical storage.<ref name="Náfrádi 2016">{{cite journal|last1=Náfrádi|first1=Bálint|title=Optically switched magnetism in photovoltaic perovskite CH3NH3(Mn:Pb)I3|journal=Nature Communications|date=24 November 2016|volume=7|article-number=13406|doi=10.1038/ncomms13406|pmc=5123013|pmid=27882917|bibcode=2016NatCo...713406N|arxiv=1611.08205}}</ref>


=== Paper ===
=== Paper ===
{{Paper data storage media}}
[[Paper data storage]], typically in the form of [[paper tape]] or [[punched card]]s, has long been used to store information for automatic processing, particularly before general-purpose computers existed. Information was recorded by punching holes into the paper or cardboard medium and was read mechanically (or later optically) to determine whether a particular location on the medium was solid or contained a hole. [[Barcode]]s make it possible for objects that are sold or transported to have some computer-readable information securely attached.
[[Paper data storage]], typically in the form of [[paper tape]] or [[punched card]]s, has long been used to store information for automatic processing, particularly before general-purpose computers existed. Information was recorded by punching holes into the paper or cardboard medium and was read mechanically (or later optically) to determine whether a particular location on the medium was solid or contained a hole. [[Barcode]]s make it possible for objects that are sold or transported to have some computer-readable information securely attached.


Relatively small amounts of digital data (compared to other digital data storage) may be backed up on paper as a [[matrix barcode]] for very long-term storage, as the longevity of paper typically exceeds even magnetic data storage.<ref>{{Cite web|url=https://www.extremetech.com/extreme/134427-a-paper-based-backup-solution-not-as-stupid-as-it-sounds|date=14 August 2012|title=A paper-based backup solution (not as stupid as it sounds)}}</ref><ref>{{Cite magazine|url=https://www.wired.com/2012/08/paperback-paper-backup/|date=16 August 2012|title=PaperBack paper backup|magazine=Wired|last1=Sterling|first1=Bruce}}</ref>
Relatively small amounts of digital data (compared to other digital data storage) may be backed up on paper as a [[matrix barcode]] for very long-term storage, as the longevity of paper typically exceeds even magnetic data storage.<ref>{{Cite web|url=https://www.extremetech.com/extreme/134427-a-paper-based-backup-solution-not-as-stupid-as-it-sounds|date=14 August 2012|title=A paper-based backup solution (not as stupid as it sounds)}}</ref><ref>{{Cite magazine|url=https://www.wired.com/2012/08/paperback-paper-backup/|date=16 August 2012|title=PaperBack paper backup|magazine=Wired|last1=Sterling|first1=Bruce}}</ref>


=== Other storage media or substrates ===
=== Other ===
; Vacuum-tube memory: A [[Williams tube]] used a [[cathode-ray tube]], and a [[Selectron tube]] used a large [[vacuum tube]] to store information. These primary storage devices were short-lived in the market, since the Williams tube was unreliable, and the Selectron tube was expensive.
* Vacuum-tube memory:  
 
** A [[Williams tube]] used a [[cathode-ray tube]], and a [[Selectron tube]] used a large [[vacuum tube]] to store information.
; Electro-acoustic memory: [[Delay-line memory]] used [[Longitudinal wave|sound waves]] in a substance such as [[mercury (element)|mercury]] to store information. Delay-line memory was dynamic volatile, cycle sequential read/write storage, and was used for primary storage.
* Electro-acoustic memory: [[Delay-line memory]] used [[Longitudinal wave|sound waves]] in a substance such as [[mercury (element)|mercury]] to store information.
 
* [[Optical tape]] is a medium for optical storage, generally consisting of a long and narrow strip of plastic, onto which patterns can be written and from which the patterns can be read back.
; [[Optical tape]]: is a medium for optical storage, generally consisting of a long and narrow strip of plastic, onto which patterns can be written and from which the patterns can be read back. It shares some technologies with cinema film stock and optical discs, but is compatible with neither. The motivation behind developing this technology was the possibility of far greater storage capacities than either magnetic tape or optical discs.
* [[Phase-change memory]] uses different mechanical phases of [[phase-change material]] to store information in an X–Y addressable matrix and reads the information by observing the varying [[electrical resistance]] of the material.
 
* [[Holographic data storage]] stores information optically inside [[crystal]]s or [[photopolymer]]s, for example, in HVDs ([[Holographic Versatile Disc|Holographic Versatile Discs]]). Holographic storage can utilize the whole volume of the storage medium, unlike optical disc storage, which is limited to a small number of surface layers.
; [[Phase-change memory]]: uses different mechanical phases of [[phase-change material]] to store information in an X–Y addressable matrix and reads the information by observing the varying [[electrical resistance]] of the material. Phase-change memory would be non-volatile, random-access read/write storage, and might be used for primary, secondary and off-line storage. Most rewritable and many write-once optical disks already use phase-change material to store information.
* Magnetic photoconductors store magnetic information, which can be modified by low-light illumination.<ref name="Náfrádi 2016" />
 
* [[Molecular memory]] stores information in [[polymer|polymers]] that can store electric charge.<ref>{{Cite web|url=https://www.sciencedaily.com/releases/2009/02/090219141438.htm|title=New method of self-assembling nanoscale elements could transform data storage industry|archive-url=https://web.archive.org/web/20090301235710/https://www.sciencedaily.com//releases//2009//02//090219141438.htm|archive-date=1 March 2009|website=sciencedaily.com|date=1 March 2009|access-date=18 June 2011}}</ref>
; [[Holographic data storage]]: stores information optically inside [[crystal]]s or [[photopolymer]]s. Holographic storage can utilize the whole volume of the storage medium, unlike optical disc storage, which is limited to a small number of surface layers. Holographic storage would be non-volatile, sequential-access, and either write-once or read/write storage. It might be used for secondary and off-line storage. See [[Holographic Versatile Disc]] (HVD).
* [[DNA digital data storage|DNA]] stores digital information in DNA [[nucleotide]]s.<ref>{{cite news|last1=Yong |first1=Ed|title=This speck of DNA contains a movie, a computer virus, and an Amazon gift card|url=https://www.theatlantic.com/science/archive/2017/03/this-speck-of-dna-contains-a-movie-a-computer-virus-and-an-amazon-gift-card/518373/|access-date=3 March 2017|work=The Atlantic|url-status=live|archive-url=https://web.archive.org/web/20170303010826/https://www.theatlantic.com/science/archive/2017/03/this-speck-of-dna-contains-a-movie-a-computer-virus-and-an-amazon-gift-card/518373/|archive-date=3 March 2017}}</ref><ref>{{cite web|title=Researchers store computer operating system and short movie on DNA|url=https://phys.org/news/2017-03-short-movie-dna.html|website=phys.org |access-date=3 March 2017|url-status=live|archive-url=https://web.archive.org/web/20170302221126/https://phys.org/news/2017-03-short-movie-dna.html|archive-date=2 March 2017}}</ref><ref>{{cite web|title=DNA could store all of the world's data in one room|url=https://www.science.org/content/article/dna-could-store-all-worlds-data-one-room|publisher=Science Magazine|access-date=3 March 2017|date=2 March 2017|url-status=live|archive-url=https://web.archive.org/web/20170302225525/http://www.sciencemag.org/news/2017/03/dna-could-store-all-worlds-data-one-room|archive-date=2 March 2017}}</ref><ref>{{cite journal|last1=Erlich|first1=Yaniv|last2=Zielinski|first2=Dina|title=DNA Fountain enables a robust and efficient storage architecture|journal=Science|date=2 March 2017|volume=355|issue=6328|pages=950–954|doi=10.1126/science.aaj2038|pmid=28254941|url=https://zenodo.org/record/889697|bibcode=2017Sci...355..950E|s2cid=13470340}}</ref>
 
; [[Molecular memory]]: stores information in [[polymer]] that can store electric charge. Molecular memory might be especially suited for primary storage. The theoretical storage capacity of molecular memory is 10&nbsp;terabits per square inch (16&nbsp;Gbit/mm<sup>2</sup>).<ref>{{Cite web|url=https://www.sciencedaily.com/releases/2009/02/090219141438.htm|title=New method of self-assembling nanoscale elements could transform data storage industry|archive-url=https://web.archive.org/web/20090301235710/https://www.sciencedaily.com//releases//2009//02//090219141438.htm|archive-date=1 March 2009|website=sciencedaily.com|date=1 March 2009|access-date=18 June 2011}}</ref>
 
; Magnetic photoconductors: store magnetic information, which can be modified by low-light illumination.<ref name="Náfrádi 2016"/>
 
; [[DNA digital data storage|DNA]]: stores information in DNA [[nucleotide]]s. It was first done in 2012, when researchers achieved a ratio of 1.28&nbsp;petabytes per gram of DNA. In March 2017 scientists reported that a new algorithm called a DNA fountain achieved 85% of the theoretical limit, at 215&nbsp;petabytes per gram of DNA.<ref>{{cite news|last1=Yong |first1=Ed|title=This speck of DNA contains a movie, a computer virus, and an Amazon gift card|url=https://www.theatlantic.com/science/archive/2017/03/this-speck-of-dna-contains-a-movie-a-computer-virus-and-an-amazon-gift-card/518373/|access-date=3 March 2017|work=The Atlantic|url-status=live|archive-url=https://web.archive.org/web/20170303010826/https://www.theatlantic.com/science/archive/2017/03/this-speck-of-dna-contains-a-movie-a-computer-virus-and-an-amazon-gift-card/518373/|archive-date=3 March 2017}}</ref><ref>{{cite web|title=Researchers store computer operating system and short movie on DNA|url=https://phys.org/news/2017-03-short-movie-dna.html|website=phys.org |access-date=3 March 2017|url-status=live|archive-url=https://web.archive.org/web/20170302221126/https://phys.org/news/2017-03-short-movie-dna.html|archive-date=2 March 2017}}</ref><ref>{{cite web|title=DNA could store all of the world's data in one room|url=https://www.science.org/content/article/dna-could-store-all-worlds-data-one-room|publisher=Science Magazine|access-date=3 March 2017|date=2 March 2017|url-status=live|archive-url=https://web.archive.org/web/20170302225525/http://www.sciencemag.org/news/2017/03/dna-could-store-all-worlds-data-one-room|archive-date=2 March 2017}}</ref><ref>{{cite journal|last1=Erlich|first1=Yaniv|last2=Zielinski|first2=Dina|title=DNA Fountain enables a robust and efficient storage architecture|journal=Science|date=2 March 2017|volume=355|issue=6328|pages=950–954|doi=10.1126/science.aaj2038|pmid=28254941|url=https://zenodo.org/record/889697|bibcode=2017Sci...355..950E|s2cid=13470340}}</ref>
 
== Related technologies ==
 
=== Redundancy ===
{{Main|Disk mirroring|RAID}}
{{See also|Replication (computing)#Disk storage replication|label 1=Storage replication}}
 
While a group of bits malfunction may be resolved by error detection and correction mechanisms (see above), storage device malfunction requires different solutions. The following solutions are commonly used and valid for most storage devices:
 
* '''Device [[Disk mirroring|mirroring]] (replication)''' – A common solution to the problem is constantly maintaining an identical copy of device content on another device (typically of the same type). The downside is that this doubles the storage, and both devices (copies) need to be updated simultaneously with some overhead and possibly some delays. The upside is the possible concurrent reading of the same data group by two independent processes, which increases performance. When one of the replicated devices is detected to be defective, the other copy is still operational and is being utilized to generate a new copy on another device (usually available operational in a pool of stand-by devices for this purpose).
* '''Redundant array of independent disks''' ('''[[RAID]]''') – This method generalizes the device mirroring above by allowing one device in a group of devices to fail and be replaced with the content restored (Device mirroring is RAID with ''n=2''). RAID groups of ''n=5'' or ''n=6'' are common. ''n>2'' saves storage, when compared with ''n=2'', at the cost of more processing during both regular operation (with often reduced performance) and defective device replacement.
 
Device mirroring and typical RAID are designed to handle a single device failure in the RAID group of devices. However, if a second failure occurs before the RAID group is completely repaired from the first failure, then data can be lost. The probability of a single failure is typically small. Thus the probability of two failures in the same RAID group in time proximity is much smaller (approximately the probability squared, i.e., multiplied by itself). If a database cannot tolerate even such a smaller probability of data loss, then the RAID group itself is replicated (mirrored). In many cases such mirroring is done geographically remotely, in a different storage array, to handle recovery from disasters (see disaster recovery above).
 
=== Network connectivity ===
A secondary or tertiary storage may connect to a computer utilizing [[computer network]]s. This concept does not pertain to the primary storage, which is shared between multiple processors to a lesser degree.
 
* [[Direct-attached storage]] (DAS) is a traditional mass storage, that does not use any network. This is still a most popular approach. This [[retronym]] was coined recently, together with NAS and SAN.
* [[Network-attached storage]] (NAS) is mass storage attached to a computer which another computer can access at file level over a [[local area network]], a private [[wide area network]], or in the case of [[online file storage]], over the [[Internet]]. NAS is commonly associated with the [[Network File System|NFS]] and [[CIFS/SMB]] protocols.
* [[Storage area network]] (SAN) is a specialized network, that provides other computers with storage capacity. The crucial difference between NAS and SAN, is that NAS presents and manages file systems to client computers, while SAN provides access at block-addressing (raw) level, leaving it to attaching systems to manage data or file systems within the provided capacity. SAN is commonly associated with [[Fibre Channel]] networks.
 
=== Robotic storage ===
Large quantities of individual magnetic tapes, and optical or magneto-optical discs may be stored in robotic tertiary storage devices. In tape storage field they are known as [[tape libraries]], and in optical storage field [[optical jukebox]]es, or optical disk libraries per analogy. The smallest forms of either technology containing just one drive device are referred to as [[Tape library#Autoloaders|autoloaders]] or [[Record changer|autochangers]].
 
Robotic-access storage devices may have a number of slots, each holding individual media, and usually one or more picking robots that traverse the slots and load media to built-in drives. The arrangement of the slots and picking devices affects performance. Important characteristics of such storage are possible expansion options: adding slots, modules, drives, robots. Tape libraries may have from 10 to more than 100,000 slots, and provide [[terabyte]]s or [[petabyte]]s of near-line information. Optical jukeboxes are somewhat smaller solutions, up to 1,000 slots.
 
Robotic storage is used for [[backup]]s, and for high-capacity archives in imaging, medical, and video industries. [[Hierarchical storage management]] is a most known archiving strategy of automatically ''migrating'' long-unused files from fast hard disk storage to libraries or jukeboxes. If the files are needed, they are ''retrieved'' back to disk.


== See also ==
== See also ==
{{Wikiversity | Computer data storage}}
{{Wikiversity | Computer data storage}}


=== Primary storage topics ===
*[[Aperture (computer memory)]]
* [[Aperture (computer memory)]]
* [[Dynamic random-access memory]] (DRAM)
* [[CAS latency|Memory latency]]
* [[Mass storage]]
* [[Mass storage]]
* [[Memory cell (disambiguation)]] <!-- Please, do not remove "disambiguation" of the redirect. -->
* [[Memory leak]]
* [[Memory management]]
** [[Memory leak]]
** [[Virtual memory]]
* [[Memory protection]]
* [[Memory protection]]
* [[Page address register]]
* [[Page address register]]
* [[Stable storage]]
* [[Stable storage]]
* [[Static random-access memory]] (SRAM)


=== Secondary, tertiary and off-line storage topics ===
=== Secondary, tertiary and off-line storage topics ===
* [[Cloud storage]]<ref>{{Cite web|url=https://zenbit.tech/blog/disaster-recovery-on-aws-cloud/|date=18 August 2023|title=Disaster Recovery on AWS Cloud}}</ref>
* [[Hybrid cloud storage]]
* [[Data deduplication]]
* [[Data deduplication]]
* [[Data proliferation]]
* [[Data proliferation]]
Line 376: Line 283:
* [[Disk utility]]
* [[Disk utility]]
* [[File system]]
* [[File system]]
** [[List of file formats]]
** [[Global filesystem]]
* [[Flash memory]]
* [[Flash memory]]
* [[Geoplexing]]
* [[Geoplexing]]
* [[Information repository]]
* [[Information repository]]
* [[Noise-predictive maximum-likelihood detection]]
* [[Noise-predictive maximum-likelihood detection]]
* [[Object storage|Object(-based) storage]]
* [[Removable media]]
* [[Removable media]]
* [[Solid-state drive]]
* [[Hard disk drive#Spindle|Spindle]]
* [[Hard disk drive#Spindle|Spindle]]
* [[Virtual tape library]]
* [[Virtual tape library]]
Line 391: Line 294:
* [[Write protection]]
* [[Write protection]]
* [[Cold data]]
* [[Cold data]]
=== Data storage conferences ===
* [[Storage Networking World]]
* [[Storage World Conference]]


== Notes ==
== Notes ==
Line 404: Line 303:


== Further reading ==
== Further reading ==
* Amelia Acker. 2025. ''[https://mitpress.mit.edu/9780262553247/archiving-machines/ Archiving Machines: From Punch Cards to Platforms]''. MIT Press.
* {{cite journal|title=The history of storage systems|journal=[[Proceedings of the IEEE]]|author1=Goda, K. |author2=Kitsuregawa, M. |year=2012|pages=1433–1440|volume=100|doi=10.1109/JPROC.2012.2189787|doi-access=free}}
* {{cite journal|title=The history of storage systems|journal=[[Proceedings of the IEEE]]|author1=Goda, K. |author2=Kitsuregawa, M. |year=2012|pages=1433–1440|volume=100|doi=10.1109/JPROC.2012.2189787|doi-access=free}}
* [http://www.computerhistory.org/revolution/memory-storage/8 Memory & storage], Computer history museum
* [https://www.computerhistory.org/revolution/memory-storage/8 Memory & storage], Computer history museum


{{Basic computer components}}
{{Basic computer components}}
{{Primary storage technologies}}
{{Primary storage technologies}}{{Magnetic storage media}}{{Optical storage media}}{{Paper data storage media}}


{{Authority control}}
{{Authority control}}

Latest revision as of 00:40, 12 November 2025

Template:Short description Template:Use dmy dates Template:Broader

File:DDR2 ram mounted.jpg
GiB of SDRAM mounted in a computer. An example of primary storage.
File:IBM DJNA-351520 Hard Disk A.jpg
15 GB PATA hard disk drive (HDD) from 1999. When connected to a computer it serves as secondary storage.

Template:Memory types

Computer data storage or digital data storage is the retention of digital data via technology consisting of computer components and recording media. Digital data storage is a core function and fundamental component of computers.[1]Template:Rp

Generally, the faster and volatile storage components are referred to as "memory", while slower persistent components are referred to as "storage". This distinction was extended in the Von Neumann architecture, where the central processing unit (CPU) consists of two main parts: The control unit and the arithmetic logic unit (ALU). The former controls the flow of data between the CPU and memory, while the latter performs arithmetic and logical operations on data. In practice, almost all computers use a memory hierarchy,[1]Template:Rp which puts memory close to the CPU and storage further away.

In modern computers, hard disk drives (HDDs) or solid-state drives (SSDs) are usually used as storage.

Data

A modern digital computer represents data using the binary numeral system. The memory cell is the fundamental building block of computer memory, storing stores one bit of binary information that can be set to store a 1, reset to store a 0, and accessed by reading the cell.[2][3]

Text, numbers, pictures, audio, and nearly any other form of information can be converted into a string of bits, or binary digits, each of which has a value of 0 or 1. The most common unit of storage is the byte, equal to 8 bits. Digital data comprises the binary representation of a piece of information, often being encoded by assigning a bit pattern to each character, digit, or multimedia object. Many standards exist for encoding (e.g. character encodings like ASCII, image encodings like JPEG, and video encodings like MPEG-4).

Encryption

For security reasons, certain types of data may be encrypted in storage to prevent the possibility of unauthorized information reconstruction from chunks of storage snapshots. Encryption in transit protects data as it is being transmitted.[4]

Compression

Data compression methods allow in many cases (such as a database) to represent a string of bits by a shorter bit string ("compress") and reconstruct the original string ("decompress") when needed. This utilizes substantially less storage (tens of percent) for many types of data at the cost of more computation (compress and decompress when needed). Analysis of the trade-off between storage cost saving and costs of related computations and possible delays in data availability is done before deciding whether to keep certain data compressed or not.

Vulnerability and reliability

Distinct types of data storage have different points of failure and various methods of predictive failure analysis. Vulnerabilities that can instantly lead to total loss are head crashing on mechanical hard drives and failure of electronic components on flash storage.

Redundancy

Redundancy allows the computer to detect errors in coded data (for example, a random bit flip due to random radiation) and correct them based on mathematical algorithms. The cyclic redundancy check (CRC) method is typically used in communications and storage for error detection. Redundancy solutions include storage replication, disk mirroring and RAID (Redundant Array of Independent Disks).

Error detection

File:QPxTool DVD error rate graph.png
Error rate measurement on a DVD+R. The minor errors are correctable and within a healthy range.

Impending failure on hard disk drives is estimable using S.M.A.R.T. diagnostic data that includes the hours of operation and the count of spin-ups, though its reliability is disputed.[5] The health of optical media can be determined by measuring correctable minor errors, of which high counts signify deteriorating and/or low-quality media. Too many consecutive minor errors can lead to data corruption. Not all vendors and models of optical drives support error scanning.[6]

Architecture

Without a significant amount of memory, a computer would only be able to perform fixed operations and immediately output the result, thus requiring hardware reconfiguration for a new program to be run. This is often used in devices such as desk calculators, digital signal processors, and other specialized devices. Von Neumann machines differ in having a memory in which operating instructions and data are stored,[1]Template:Rp such that they do not need to have their hardware reconfigured for each new program, but can simply be reprogrammed with new in-memory instructions. They also tend to be simpler to design, in that a relatively simple processor may keep state between successive computations to build up complex procedural results. Most modern computers are von Neumann machines.

Storage and memory

In contemporary usage, the term "storage" typically refers to a subset of computer data storage that comprises storage devices and their media not directly accessible by the CPU, that is, secondary or tertiary storage. Common forms of storage include hard disk drives, optical disc drives, and non-volatile devices (i.e. devices that retain their contents when the computer is powered down).[7] On the other hand, the term "memory" is used to refer to semiconductor read-write data storage, typically dynamic random-access memory (DRAM). Dynamic random-access memory is a form of volatile memory that also requires the stored information to be periodically reread and rewritten, or refreshed; static RAM (SRAM) is similar to DRAM, albeit it never needs to be refreshed as long as power is applied.

In contemporary usage, the memory hierarchy of primary storage and secondary storage in some uses refer to what was historically called, respectively, secondary storage and tertiary storage.[8]

Primary

File:Computer storage types.svg
Various forms of storage, divided according to their distance from the central processing unit. The fundamental components of a general-purpose computer are arithmetic and logic unit, control circuitry, storage space, and input/output devices. Technology and capacity as in common home computers around 2005.

Primary storage (also known as main memory, internal memory, or prime memory), often referred to simply as memory, is storage directly accessible to the CPU. The CPU continuously reads instructions stored there and executes them as required. Any data actively operated on is also stored there in a uniform manner. Historically, early computers used delay lines, Williams tubes, or rotating magnetic drums as primary storage. By 1954, those unreliable methods were mostly replaced by magnetic-core memory. Core memory remained dominant until the 1970s, when advances in integrated circuit technology allowed semiconductor memory to become economically competitive.

This led to modern random-access memory, which is small-sized, light, and relatively expensive. RAM used for primary storage is volatile, meaning that it loses the information when not powered. Besides storing opened programs, it serves as disk cache and write buffer to improve both reading and writing performance. Operating systems borrow RAM capacity for caching so long as it's not needed by running software.[9] Spare memory can be utilized as RAM drive for temporary high-speed data storage. Besides main large-capacity RAM, there are two more sub-layers of primary storage:

  • Processor registers are the fastest of all forms of data storage, being located inside the processor, with each register typically holding a word of data (often 32 or 64 bits). CPU instructions instruct the arithmetic logic unit to perform various calculations or other operations on this data.
  • Processor cache is an intermediate stage between faster registers and slower main memory, being faster than main memory but with much less capacity. Multi-level hierarchical cache setup is also commonly used, such that primary cache is the smallest and fastest, while secondary cache is larger and slower.

Primary storage, including ROM, EEPROM, NOR flash, and RAM,[10] is usually byte-addressable. Such memory is directly or indirectly connected to the central processing unit via a memory bus, comprising an address bus and a data bus. The CPU firstly sends a number called the memory address through the address bus that indicates the desired location of data. Then it reads or writes the data in the memory cells using the data bus. Additionally, a memory management unit (MMU) is a small device between CPU and RAM recalculating the actual memory address. Memory management units allow for memory management; they may, for example, provide an abstraction of virtual memory or other tasks.

BIOS

Non-volatile primary storage contains a small startup program (BIOS) is used to bootstrap the computer, that is, to read a larger program from non-volatile secondary storage to RAM and start to execute it. A non-volatile technology used for this purpose is called read-only memory (ROM). Most types of "ROM" are not literally read only but are difficult and slow to write to. Some embedded systems run programs directly from ROM, because such programs are rarely changed. Standard computers largely do not store many programs in ROM, apart from firmware, and use large capacities of secondary storage.

Secondary

Secondary storage (also known as external memory or auxiliary storage) differs from primary storage in that it is not directly accessible by the CPU. Computers use input/output channels to access secondary storage and transfer the desired data to primary storage. Secondary storage is non-volatile, retaining data when its power is shut off. Modern computer systems typically have two orders of magnitude more secondary storage than primary storage because secondary storage is less expensive.

In modern computers, hard disk drives (HDDs) or solid-state drives (SSDs) are usually used as secondary storage. The access time per byte for HDDs or SSDs is typically measured in milliseconds, while the access time per byte for primary storage is measured in nanoseconds. Rotating optical storage devices, such as CD and DVD drives, have even longer access times. Other examples of secondary storage technologies include USB flash drives, floppy disks, magnetic tape, paper tape, punched cards, and RAM disks.

To reduce the seek time and rotational latency, secondary storage, including HDD, ODD and SSD, are transferred to and from disks in large contiguous blocks. Secondary storage is addressable by block; once the disk read/write head on HDDs reaches the proper placement and the data, subsequent data on the track are very fast to access. Another way to reduce the I/O bottleneck is to use multiple disks in parallel to increase the bandwidth between primary and secondary memory, for example, using RAID.[11]

Secondary storage is often formatted according to a file system format, which provides the abstraction necessary to organize data into files and directories, while also providing metadata describing the owner of a certain file, the access time, the access permissions, and other information. Most computer operating systems use the concept of virtual memory, allowing the utilization of more primary storage capacity than is physically available in the system. As the primary memory fills up, the system moves the least-used chunks (pages) to a swap file or page file on secondary storage, retrieving them later when needed.

Tertiary

File:StorageTek Powderhorn tape library.jpg
A large tape library, with tape cartridges placed on shelves in the front, and a robotic arm moving in the back. The visible height of the library is about 180 cm.

Tertiary storage or tertiary memory typically involves a robotic arm which mounts and dismount removable mass storage media from a catalog database into a storage device according to the system's demands. It is primarily used for archiving rarely accessed information, since it is much slower than secondary storage (e.g. 5–60 seconds vs. 1–10 milliseconds). This is primarily useful for extraordinarily large data stores, accessed without human operators. Typical examples include tape libraries, optical jukeboxes, and massive arrays of idle disks (MAID). Tertiary storage is also known as nearline storage because it is "near to online".[12] Hierarchical storage management is an archiving strategy involving automatically migrating long-unused files from fast hard disk storage to libraries or jukeboxes.

Offline

Offline storage is computer data storage on a medium or a device that is not under the control of a processing unit.[13] The medium is recorded, usually in a secondary or tertiary storage device, and then physically removed or disconnected. Unlike tertiary storage, it cannot be accessed without human interaction. It is used to transfer information since the detached medium can easily be physically transported. In modern personal computers, most secondary and tertiary storage media are also used for offline storage.

Network connectivity

A secondary or tertiary storage may connect to a computer utilizing computer networks. This concept does not pertain to the primary storage.

Cloud

Cloud storage is based on highly virtualized infrastructure.[14] A subset of cloud computing, it has particular cloud-native interfaces, near-instant elasticity and scalability, multi-tenancy, and metered resources. Cloud storage services can be used from an off-premises service or deployed on-premises.[15]

Deployment models

Cloud deployment models define the interactions between cloud providers and customers.[16]

  • Private clouds, for example, are used in cloud security to mitigate the increased attack surface area of outsourcing data storage.[17] A private cloud is cloud infrastructure operated solely for a single organization, whether managed internally or by a third party, or hosted internally or externally.[18]
  • Hybrid cloud storage are another cloud security solution, involving storage infrastructure that uses a combination of on-premises storage resources with cloud storage. The on-premises storage is usually managed by the organization, while the public cloud storage provider is responsible for the management and security of the data stored in the cloud.[19][20] Using a hybrid model allows data to be ingested in an encrypted format where the key is held within the on-premise infrastructure and can limit access to the use of on-premise cloud storage gateways, which may have options to encrypt the data prior to transfer.[21]
  • Cloud services are considered "public" when they are delivered over the public Internet.[22]
    • A virtual private cloud (VPC) is a pool of shared resources within a public cloud that provides a certain level of isolation between the different users using the resources. VPCs achieve user isolation through the allocation of a private IP subnet and a virtual communication construct (such as a VLAN or a set of encrypted communication channels) between users as welll as the use of a virtual private network (VPN) per VPC user, securing, by means of authentication and encryption, the remote access of the organization to its VPC resources.Script error: No such module "Unsubst".

Types

There are three types of cloud storage:

Characteristics

File:Samsung-1GB-DDR2-Laptop-RAM.jpg
A 1 GiB module of laptop DDR2 RAM

Storage technologies at all levels of the storage hierarchy can be differentiated by evaluating certain core characteristics as well as measuring characteristics specific to a particular implementation. These core characteristics are:

Overview
Characteristic Hard disk drive Optical disc Flash memory Random-access memory Linear tape-open
Technology Magnetic disk Laser beam Semiconductor Magnetic tape
Volatility No No No Volatile No
Random access Yes Yes Yes Yes No
Latency (access time) ~15 ms (swift) ~150 ms (moderate) None (instant) None (instant) Lack of random access (very slow)
Controller Internal External Internal Internal External
Failure with imminent data loss Head crash Circuitry
Error detection Diagnostic (S.M.A.R.T.) Error rate measurement Indicated by downward spikes in transfer rates (Short-term storage) Unknown
Price per space Low Low High Very high Very low (but expensive drives)
Price per unit Moderate Low Moderate High Moderate (but expensive drives)
Main application Mid-term archival, routine backups, server, workstation storage expansion Long-term archival, hard copy distribution Portable electronics; operating system Real-time Long-term archival

Media

Semiconductor

Script error: No such module "Labelled list hatnote".

Semiconductor memory uses semiconductor-based integrated circuit (IC) chips to store information. Data are typically stored in metal–oxide–semiconductor (MOS) memory cells. A semiconductor memory chip may contain millions of memory cells, consisting of tiny MOS field-effect transistors (MOSFETs) and/or MOS capacitors. Both volatile and non-volatile forms of semiconductor memory exist, the former using standard MOSFETs and the latter using floating-gate MOSFETs.

In modern computers, primary storage almost exclusively consists of dynamic volatile semiconductor random-access memory (RAM), particularly dynamic random-access memory (DRAM). Since the turn of the century, a type of non-volatile floating-gate semiconductor memory known as flash memory has steadily gained share as off-line storage for home computers. Non-volatile semiconductor memory is also used for secondary storage in various advanced electronic devices and specialized computers that are designed for them.

As early as 2006, notebook and desktop computer manufacturers started using flash-based solid-state drives (SSDs) as default configuration options for the secondary storage either in addition to or instead of the more traditional HDD.[32][33][34][35][36]

Magnetic

Magnetic storage uses different patterns of magnetization on a magnetically coated surface to store information. Magnetic storage is non-volatile. The information is accessed using one or more read/write heads which may contain one or more recording transducers. A read/write head only covers a part of the surface so that the head or medium or both must be moved relative to another in order to access data. In modern computers, magnetic storage will take these forms:

In early computers, magnetic storage was also used as:

Magnetic storage does not have a definite limit of rewriting cycles like flash storage and re-writeable optical media, as altering magnetic fields causes no physical wear. Rather, their life span is limited by mechanical parts.[37][38]

Optical

Optical storage, the typical optical disc, stores information in deformities on the surface of a circular disc and reads this information by illuminating the surface with a laser diode and observing the reflection. Optical disc storage is non-volatile. The deformities may be permanent (read only media), formed once (write once media) or reversible (recordable or read/write media). The following forms are in common use Template:As of:[39]

Magneto-optical disc storage is optical disc storage where the magnetic state on a ferromagnetic surface stores information. The information is read optically and written by combining magnetic and optical methods. Magneto-optical disc storage is non-volatile, sequential access, slow write, fast read storage used for tertiary and off-line storage.

3D optical data storage has also been proposed.

Light induced magnetization melting in magnetic photoconductors has also been proposed for high-speed low-energy consumption magneto-optical storage.[40]

Paper

Paper data storage, typically in the form of paper tape or punched cards, has long been used to store information for automatic processing, particularly before general-purpose computers existed. Information was recorded by punching holes into the paper or cardboard medium and was read mechanically (or later optically) to determine whether a particular location on the medium was solid or contained a hole. Barcodes make it possible for objects that are sold or transported to have some computer-readable information securely attached.

Relatively small amounts of digital data (compared to other digital data storage) may be backed up on paper as a matrix barcode for very long-term storage, as the longevity of paper typically exceeds even magnetic data storage.[41][42]

Other

See also

Template:Sister project

Secondary, tertiary and off-line storage topics

Notes

Template:Notelist

References

<templatestyles src="Citation/styles.css"/>Script error: No such module "template wrapper". Template:Reflist

Further reading

Template:Basic computer components Template:Primary storage technologiesTemplate:Magnetic storage mediaScript error: No such module "Navbox".Template:Paper data storage media

Template:Authority control

  1. a b c Script error: No such module "citation/CS1".
  2. Script error: No such module "citation/CS1".
  3. Script error: No such module "citation/CS1".
  4. Script error: No such module "citation/CS1".
  5. Script error: No such module "citation/CS1".
  6. Script error: No such module "citation/CS1".
  7. Storage as defined in Microsoft Computing Dictionary, 4th Ed. (c)1999 or in The Authoritative Dictionary of IEEE Standard Terms, 7th Ed., (c) 2000.
  8. Script error: No such module "citation/CS1".
  9. Script error: No such module "citation/CS1".
  10. Script error: No such module "citation/CS1".
  11. Script error: No such module "citation/CS1".
  12. Script error: No such module "citation/CS1".
  13. Script error: No such module "citation/CS1". See also article Federal standard 1037C.
  14. Script error: No such module "citation/CS1".
  15. Script error: No such module "citation/CS1".
  16. Script error: No such module "Citation/CS1".
  17. Script error: No such module "citation/CS1".
  18. Script error: No such module "citation/CS1".
  19. Script error: No such module "citation/CS1".
  20. Script error: No such module "citation/CS1".
  21. Script error: No such module "citation/CS1".
  22. Script error: No such module "citation/CS1".
  23. Script error: No such module "citation/CS1".
  24. S. Rhea, C. Wells, P. Eaton, D. Geels, B. Zhao, H. Weatherspoon, and J. Kubiatowicz, Maintenance-Free Global Data Storage. IEEE Internet Computing, Vol 5, No 5, September/October 2001, pp 40–49. [1] Template:Webarchive [2] Template:Webarchive
  25. Script error: No such module "citation/CS1".
  26. Script error: No such module "citation/CS1".
  27. Script error: No such module "citation/CS1".
  28. Script error: No such module "citation/CS1".
  29. Script error: No such module "citation/CS1".
  30. a b Script error: No such module "citation/CS1".
  31. Script error: No such module "citation/CS1".
  32. Script error: No such module "citation/CS1".
  33. Script error: No such module "citation/CS1".
  34. Script error: No such module "citation/CS1".
  35. Script error: No such module "citation/CS1".
  36. Script error: No such module "citation/CS1".
  37. Script error: No such module "citation/CS1".
  38. Script error: No such module "citation/CS1".
  39. Script error: No such module "citation/CS1".
  40. a b Script error: No such module "Citation/CS1".
  41. Script error: No such module "citation/CS1".
  42. Template:Cite magazine
  43. Script error: No such module "citation/CS1".
  44. Script error: No such module "citation/CS1".
  45. Script error: No such module "citation/CS1".
  46. Script error: No such module "citation/CS1".
  47. Script error: No such module "Citation/CS1".