PAT.Raw Storage
This page has maturity level 4 (mature)
PAT | Raw Storage | Version: | 0.94 | ||
---|---|---|---|---|---|
Document type: | Pattern Type | Owner: |
Description
This Pattern Type belongs to "Infrastructure Sector Core". This facility offers data preservation and data retrieval functionality with the following characteristics:
- operates on data at the lowest abstraction level, i.e. "raw bits" level (e.g. bits and bytes),
- located at one logical location,
- access by general or dedicated storage network facilities (indicated by Data Transport),
- the ability to perform storage related "intelligent" tasks, such as replication, migration, encryption, compression and data deduplication. This intelligence is characterized as "back-end facing" intelligence; generally speaking the facility's users don't get (direct) access to it, only the administrators and back-end systems.
As examples: realizations of Raw Storage can include:
- SAN solutions,
- (the back-end of) NAS appliances,
- hard disk solutions.
Note: it's possible that the solution is to make use of Scheduling (e.g. for scheduling backups or snapshots) and/or Business Rules (e.g. for data deduplication or automatic migration of data to nearline/offline storage). If this is the case, then this pattern must be paired with facilities that deliver these functions.
Graphical Overview
This is the graphical representation of the infrastructure functions in this Pattern Type, plus their main relations:
(The source file of this picture can be downloaded here).
Pattern Type Composition
This pattern has the following mandatory and optional subfunctions, expressed in Building Block Types:
Icon | Function | WA | Inclusion | Rationale |
Raw Retention | ST | mandatory | This facility handles the actual low-level storing/retrieving of data. Physically this can be realized with devices containing (re)writeable media, such as Solid State Disks, hard disks, tape, optical media et cetera. | |
Retention Engine | ST | mandatory | This facility provides "intelligence" to the storage solution with respect to its handling of the stored data, with the aim of meeting the quality requirements, improving infrastructure management, and/or providing sufficient performance. It may handle migration/replication to other instances of itself, encryption, compression, and other "standard" storage-related processing. Note that for some types of functionality an implementation/realization of Retention Engine may need to invoke another implementation/realization (e.g. for replication/migration over longer distances, there likely is a separate realization in each physical location). | |
Caching | MW | optional | An intelligent storage facility may use caching to increase its capacity to receive and/or return data on request. | |
Control Interface | SE | optional | If implemented, this function can be used for several Management Tasks, among others:
Care must be taken to limit access to these management tasks to authorized systems and users. | |
Restore | ST | optional | Implementing a facility of this type may serve different goals:
To support these goals, Restore can support the following activities:
Note that the Restore function may or may not be under control of end users. | |
Backup | ST | optional | Implementing a facility of this type always serves to support the Restore function, and thus virtually always appears together with one or more Variants of the Restore function. Furthermore, the criteria that govern the Backup functionality must always be derived from the goals and needs of all of the Restore Variants that it supports. Note that the Backup function usually is under control of IT Operations, but may occasionally be offered to end users directly. | |
Scheduling | MW | optional | If the Pattern is to have automated backup functionality, then this function will govern the backup schedule and initiate separate backup jobs. |
Pattern Type Neighbors
This pattern has the following mandatory and optional relations with adjacent (sub)functions, expressed in Pattern Types (PAT). Note: if the table below is empty, then there are no architecturally prescribed relations with adjacent subfunctions:
Function | Adjacency | Description |
Data Transport | mandatory | Data must be able to travel from the storage consumers to storage and back. This often requires some sort of network, be it a SAN, a LAN or something alike. However, storage requirements usually pose stringent demands on the Data Transport capacity and reliability. |
Authentication & Authorization | optional | A&A will be required for one or more of the following uses:
|
File Storage | optional | One of the facilities that require use of raw storage is the File Storage facility, as it itself is required to store data on a higher abstraction level (loosely structured data). File Storage stores the loosely structured data as groups of bits/bytes, and also the meta-data it has on this data. This facility may make use of the Retention Engine's "storage intelligence" to offer its own users more functionality. |
Pattern Variants based on this type
Pattern Variant | Brief description | Owner | maturity |
---|---|---|---|
PAV.File Storage.Local | File Storage.Local | J.A.H. Schoonderbeek | 1 |