# Sequential access

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/Sequential_access
> Markdown URL: https://mediated.wiki/source/Sequential_access.md
> Source: https://en.wikipedia.org/wiki/Sequential_access
> Source revision: 1334508493
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

{{Short description|Computer memory concept}}
{{Multiple issues|
{{More citations needed|date=June 2024}}
{{Original research|date=June 2024}}
}}
[[File:Random vs sequential access.svg|thumb|right|Sequential access compared to [random access](/source/random_access)]]

'''Sequential access''' is a term describing a group of elements (such as data in a memory array or a [disk](/source/Hard_disk_drive) file or on [magnetic-tape data storage](/source/magnetic-tape_data_storage)) being accessed in a predetermined, ordered [sequence](/source/sequence). It is the opposite of [random access](/source/random_access), the ability to access an arbitrary element of a sequence as easily and efficiently as any other at any time.

Sequential access is sometimes the only way of accessing the data, for example if it is on a tape. It may also be the access method of choice, for example if all that is wanted is to process a sequence of data elements in order.<ref>[https://technet.microsoft.com/en-us/library/cc938619.aspx Random and Sequential Data Access], Microsoft TechNet</ref>

==Definition==
There is no consistent definition in [computer science](/source/computer_science) of sequential access or sequentiality.<ref>''Irfan Ahmad'', [http://www.vmware.com/files/pdf/iiswc_2007_distribute.pdf Easy and Efficient Disk I/O Workload Characterization in VMware ESX Server] {{Webarchive|url=https://web.archive.org/web/20130908074625/http://www.vmware.com/files/pdf/iiswc_2007_distribute.pdf |date=2013-09-08 }}, IISWC, 2007.</ref><ref>''Eric Anderson'', [https://www.usenix.org/legacy/event/fast09/tech/full_papers/anderson/anderson.pdf Capture, Conversion, and Analysis of an Intense NFS Workload], FAST, 2009.</ref><ref>''Yanpei Chen et al.'' [http://dl.acm.org/citation.cfm?id=2043562 Design Implications for Enterprise Storage Systems via Multi-dimensional Trace Analysis]. SOSP. 2011</ref><ref>''Andrew Leung et al.'' [http://www.ssrc.ucsc.edu/Papers/leung-usenix08.pdf Measurement and Analysis of Large-scale Network File System Workloads] {{Webarchive|url=https://web.archive.org/web/20200709224824/http://www.ssrc.ucsc.edu/Papers/leung-usenix08.pdf |date=2020-07-09 }}. USENIX ATC. 2008</ref><ref>''Frank Schmuck and Roger Haskin'', [https://www.usenix.org/legacy/events/fast02/full_papers/schmuck/schmuck.pdf GPFS: A Shared-Disk File System for Large Computing Clusters], FAST. 2002</ref><ref>''Alan Smith''. [http://www-inst.eecs.berkeley.edu/~cs266/sp10/readings/smith78.pdf Sequentiality and Prefetching in Database Systems]. ACM TOS</ref><ref>''Hyong Shim et al.'' [http://0b4af6cdc2f0c5998459-c0245c5c937c5dedcca3f1764ecc9b2f.r43.cf2.rackcdn.com/11747-atc13-shim.pdf Characterization of Incremental Data Changes for Efficient Data Protection]. USENIX ATC. 2013.</ref><ref>''Avishay Traeger et al.'' [http://www.fsl.cs.sunysb.edu/docs/fsbench/fsbench.pdf A Nine Year Study of File System and Storage Benchmarking]. ACM TOS. 2007.</ref>{{Synthesis inline|date=June 2024}} In fact, different sequentiality definitions can lead to different sequentiality quantification results. In spatial dimension, request size, stride distance, backward accesses, re-accesses can affect sequentiality. For temporal sequentiality, characteristics such as multi-stream and inter-arrival time threshold has impact on the definition of sequentiality.<ref>''Cheng Li et al.'' [https://www.usenix.org/node/183622 Assert(!Defined(Sequential I/O))]. HotStorage. 2014</ref>

In [data structure](/source/data_structure)s, a data structure is said to have sequential access if one can only visit the values it contains in one particular order.<ref>{{Cite web |title=Sequential Access: A Comprehensive Overview |url=https://www.lenovo.com/us/en/glossary/sequential-access/ |url-status=live |access-date=2025-12-16 |website=Lenovo US}}</ref> The canonical example is the [linked list](/source/linked_list). Indexing into a list that has sequential access requires [O](/source/Big_O_notation)(''n'') time, where ''n'' is the index. As a result, many algorithms such as [quicksort](/source/quicksort) and [binary search](/source/Binary_search_algorithm) degenerate into bad algorithms that are even less efficient than their naive alternatives; these algorithms are impractical without [random access](/source/random_access). On the other hand, some algorithms, typically those that do not have index, require only sequential access, such as [mergesort](/source/mergesort), and face no penalty.

==See also==
* [Direct-access storage device](/source/Direct-access_storage_device)
* [Queued sequential access method](/source/Queued_Sequential_Access_Method)
* [Sequential data](/source/Sequential_data)

==References==
{{reflist}}

Category:Computer memory

---
Adapted from the Wikipedia article [Sequential access](https://en.wikipedia.org/wiki/Sequential_access) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/Sequential_access?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
