Module 5 - Block, File, and Object-based Storage Systems - Participant Guide
Module 5 - Block, File, and Object-based Storage Systems - Participant Guide
AND OBJECT-BASED
STORAGE SYSTEMS
PARTICIPANT GUIDE
PARTICIPANT GUIDE
[email protected]
Table of Contents
Concepts in Practice................................................................................................ 49
Concepts in Practice .......................................................................................................... 50
Module Objectives
Block-based storage systems LUNs appear to the server as internal physical disks. (Click to
enlarge)
All block-storage systems are designed using four main storage system
components regardless of manufacturer or model. All storage components are
contained within or connected to the storage controllers.
Front-end Ports
The front-end ports connect hosts to the storage system and hosts connect only
through the front-end ports. They do not have direct access to any other devices of
the storage system. Front-end ports are attached to front-end controllers. Front-end
ports provide the connectivity protocol logic such as Fibre Channel or iSCSI, or for
mainframe hosts, the ESCON or FICON protocols. Depending on the host interface
connectivity configuration, front-end port block I/O is processed through either or
both storage controllers.
The image shows four hosts, each with one FC HBA port. Dual redundant
connections to both storage controllers are still achieved, as it is configured through
a Fibre Channel Storage Area Network (SAN). For complete, end-to-end
connection redundancy, each host should be equipped with at least two FC HBA
ports.
Cache
Storage system controllers contain high speed DRAM memory. Used as an active
cache, the DRAM buffers inbound data before writing to disk, and buffers outbound
data from disks to hosts. Placing DRAM memory between storage system disks
and front-end ports increases I/O performance.
Both storage controllers contain the same amount of embedded cache in the form
of DRAM memory modules. The cache in the path between the disk array back-end
ports and the host front-end ports. In this location, all read and write block I/O must
pass through the cache, increasing read and write I/O performance.
I/O performance acceleration can be increased and scaled further to benefit the
addition of hosts and storage by adding more cache memory to the controllers.
Back-end Ports
Back-end ports connect through the link control cards to the shelves of physical
disk and devices in each disk array enclosure (DAE). Dual redundant connections
between the controllers and all DAEs provide disk I/O reliability. Unused back-end
ports are available to connect additional DAEs to the system.
Disk Array
The disk array contains traditional hard disk drives or solid state drives. These
devices are only accessible by the storage system controllers.
The disk array provides physical block storage capacity to the storage system. The
devices are arranged in shelves within a DAE.
Scaling, increased storage capacity, and I/O performance are achieved by adding
DAEs.
Cache Operations
• Host sends a read request to the front-end port. If the requested data is in
cache, the data is quickly sent from its cache location to the front-end port back
to the host. Fetching requested data that is already in cache is known as a
Read hit2.
• Host sends a read request to the front-end port. If requested data is not in
cache, the request is forwarded through the back-end ports, and the link
controller to the disk devices. Data is fetched from the disks and takes the same
route back to the host. Fetching requested data that is not already in cache is
known as a Read miss3.
The image compares cache read hit and read miss operations (Click to enlarge).
2 The storage controller stores the requested data in cache to increase the chances
of a read hit when next requested.
3 A Read Miss requires read data to traverse the longer end-to-end I/O path to disk.
It must be and processed at each storage system component which adds latency.
Also, disk device access times are very slow compared to cache memory.
Intelligent storage systems provide support for a variety of disk devices of different
speeds and types, such as FC, SATA, SAS, and solid state (SSD) disk devices.
They also support using a mix of SSD, FC, or SATA within the same storage
system. Additionally, enterprise storage systems support disk devices that use the
NVM Express (NVMe) protocol.
FC
Fibre Channel is a high-speed block data transfer protocol. Along with high
performance, FC guarantees in-order delivery of data block data that is read from
the disk device. FC disk drives are design to provide high performance over
storage capacity.
SAS
Serial Attached SCSI is a block disk protocol that replaced parallel SCSI disk drive
connectivity. SAS disk drives are designed for midrange block I/O storage
applications, balancing performance with higher storage capacity requirements.
SATA
NVMe
Knowledge Check
Knowledge Check
Applications access data in the form of files. A file has metadata so an application
or user can correctly access, and use the raw, block file data. Metadata4 adds other
important information that is associated with the file datatype.
With file sharing enabled, folders virtually become a part of the hierarchy of another file system.
Shared folders appear as locally stored. (Click to enlarge)
4 In computer files, metadata is additional data that describes the raw data in the
file. For example, when a digital photo editor opens a file, it first reads the metadata
to ensure the raw data is a digital photo in the correct format, such as JPG or PNG.
The photo editor also reads the metadata to understand details about the image,
such as its height and width, pixel density, and the type of compression used to
store the raw data on disk.
• File names, extensions, and metadata are organized, and maintained by the
host operating system in the form of a file system5.
• Each server has its own file system. The file system is only accessible to that
server.
Clients
LAN
Application Servers
NAS
System
NAS provides the advantages of server consolidation by storing all file data from
the general-purpose servers into its own file systems. File server consolidation
makes it easier to manage the storage.
A NAS system is optimized for file-serving functions such as storing, retrieving, and
accessing files for applications and clients; as shown on the image:
NAS servers do not run user applications nor access user peripheral devices. (Click image to
enlarge)
NAS Components
NAS systems consist of NAS controllers and storage. For smaller applications,
NAS controllers can reside in the same physical unit as the storage controllers and
disk array.
The image on the left shows an integrated NAS system. The image on the right shows multiple NAS
Servers with external SAN storage. (Click image to enlarge).
Scale-Up NAS
Storage
Scale-Up NAS
NAS Head(s)
NAS systems have a fixed capacity ceiling, which limits their scalability. The
performance of these systems starts degrading when they approach the capacity
limit.
Scale-Out NAS
Scale-out NAS:
Different methods can be used to access files on a NAS system. The most
common methods are:
CIFS/SMB
The CIFS protocol enables remote clients to gain access to files on a server. CIFS
enables file sharing with other clients by using special locks. CIFS provides the
following features to ensure data integrity:
• Uses file and record locking to prevent users from overwriting the work of
another user on a file or a record.
• Supports fault tolerance and can automatically restore connections and reopen
files that were open prior to an interruption.
NFS
Network File System (NFS) is a client/server protocol for file sharing that is
commonly used on UNIX systems. NFS was originally based on the connectionless
User Datagram Protocol (UDP). It uses a machine-independent model to represent
user data. It also uses Remote Procedure Call (RPC) for interprocess
communication between two computers.
The NFS protocol provides a set of RPCs to access a remote file system for the
following operations:
• Searching files and directories.
• Opening, reading, writing to, and closing a file.
NFS creates a connection between the client and the remote system to transfer
data.
HDFS
This cluster has in-memory maps of every file, file locations as well as all the blocks
within the file and which DataNodes they reside on. The NameNode is responsible
for managing the file system namespace and controlling the access to the files by
clients. DataNodes act as slaves that serve read/write requests and perform block
creation, deletion, and replication as directed by the NameNode.
• A file system that spans multiple nodes in a cluster and enables user data to be
stored in files.
• Presents a traditional hierarchical file organization so that users or applications
can manipulate (create, rename, move, or remove) files and directories.
• Presents a streaming interface to run any application of choice using the
MapReduce framework.
FTP
Network file I/O operations differ between scale-up and scale-out NAS
configurations.
The figure illustrates an I/O operation in a scale-up NAS system. The process of
handling read/write requests in a scale-up NAS environment is as follows:
1. The requestor (client) packages an I/O request into TCP/IP and forwards it
through the network stack. The NAS system receives this request from the
network.
2. The NAS system converts the I/O request into an appropriate physical storage
request, which is a block-level I/O. This system then performs the operation on
the physical storage.
3. When the NAS system receives data from the storage, it processes and
repackages the data into an appropriate file protocol response.
4. The NAS system packages this response into TCP/IP again and forwards it to
the client through the network.
The figure illustrates an I/O operation in a scale-out NAS system. A scale-out NAS
consists of multiple NAS nodes and each of these nodes has the functionality
similar to a NameNode or a DataNode. In some proprietary scale-out NAS
implementations, each node may function as both a NameNode and DataNode,
typically to provide Hadoop integration. All the NAS nodes in scale-out NAS are
clustered.
The data lake represents a change from the linear data flow model. As data
increases in value, enterprise-wide data storage is transformed into a hub for data
ingestion and consumption systems. This data hub enables enterprises to bring
analytics to data and avoid the high cost of multiple systems, storage, and time for
ingestion and analysis.
To learn more about deploying scale-out NAS for data lakes, click here.
Knowledge Check
Knowledge Check
1. What is a problem with using general-purpose servers for network file sharing?
a. File system incompatibilities when sharing files with clients that use
different operating systems.
b. File system incompatibilities when sharing files with clients that are virtual
machines.
c. File system incompatibilities when sharing files with clients that also serve
files.
d. File system incompatibilities when sharing files with clients that use the S3
or HDFS protocols.
• Amount of data created annually is growing exponentially and more than 90% of
data generated is unstructured.
− Rapid adoption of third platform technologies leads to significant growth of
data.
− Longer data retention due to regulatory compliance also leads to data
growth.
• Data must be instantly accessible through a variety of devices from anywhere in
the world.
• Traditional storage solutions are inefficient in managing this data and in
handling the growth.
To learn more about NAS vs object-based storage systems in high growth and
access demand environments, click here.
• Objects contains user data, related metadata, and user defined attributes of
data, such as retention, access pattern, and others.
− Object metadata or attributes are used to optimize search, retention policies,
and automated deletion of objects.
• Each object is identified by a unique object ID. The object ID allows access to
objects without specifying the storage location.
− The object ID is generated applying specialized algorithms to the data. This
fingerprinting process guarantees unique object identification. Any changes
to the object data results in a new object ID.
• An object storage database is used to track where objects and metadata are
stored. For retrieval, the database uses the object ID to access the storage
location records for the object and its metadata.
Instead of storing data in a hierarchical structure of folders and files, object data is stored across a
logically flat data repository. (Click image to enlarge)
An object storage device (OSD) stores data using a flat address space where
objects exist at the same level, and one object cannot be placed inside another
object. Therefore, there is no hierarchy of directories and files, and billions of
objects can be stored in a single namespace.
The image on the left shows indexed data stored in a hierarchical file system. On the right is an
example of data stored in a flat, non-hierarchical address space. (Click image to enlarge)
An OSD consists of controllers that connect to each other, and dedicated disk devices through an
internal network. Client systems connect to the OSD over the IP network. (Click image to enlarge)
Features Description
Flexible data Supports REST/SOAP APIs for web/mobile access, and file
access method sharing protocols (CIFS and NFS) for file service access.
With the growing adoption of cloud computing, cloud service providers can
leverage OSD to offer storage-as-a-service, backup-as-a-service, and archive-as-
a-service to their consumers.
The lack of standardized cloud storage APIs has made the gateway a crucial
component for cloud adoption. Service providers offer cloud-based object storage
with interfaces such as REST or SOAP7. However, most business applications
access storage resources through block-based iSCSI or FC interfaces, or file-
based interfaces, such as NFS or CIFS.
OSD gateways provide a translation layer between iSCSI, FC, NFS, CIFS
interfaces, and the cloud provider’s REST API.
Application Server
Virtualization Server
Knowledge Check
Knowledge Check
Knowledge Check
Unified storage systems converge block, file, and object storage as well as
configuration and management into a single platform. Unified storage lowers the
administration and management impact of a growing storage infrastructure. Data
storage and storage access remain transparent for applications and users.
The image on the left shows separate block, file, and object storage systems. The image on the
right shows them converged into a unified storage system (Click to enlarge)
Concepts in Practice
Concepts in Practice
Dell PowerStore
Dell PowerStore is a unified storage platform that stores and serves block and file
data. Designed for growth, PowerStore can scale-up by adding storage capacity,
and scale-out by adding storage controllers. The PowerStore platform provides:
• A scalable, single platform for block and file data storage and services.
• Active/active storage controllers with end-to-end NVMe storage connectivity.
• Flash or Storage Class Memory (SCM) internal storage devices.
• Integrated data optimization and protection services.
Dell PowerMax is a unified storage platform that stores and serves block and file
data. Designed for growth, PowerMax can scale-up by adding storage capacity,
and scale-out by adding storage controllers.
• Up to 15M IOPS, 350 GB/s throughput (187 K IOPS per rack unit).
• Active/active storage controllers with end-to-end NVMe storage connectivity.
• Automated I/O recognition and data placement across NAND flash and SCM
media to maximize performance with no management overhead.
• End to end efficient data encryption, and FIPS 140-2 validated Data at Rest
Encryption.
• Integrated data optimization and protection services.
Dell PowerScale
PowerScale are scale-out NAS products that are based on the OneFS operating
environment. Available as all-flash, hybrid and archive models, they achieve high
scalability by pooling multiple nodes into a clustered NAS system that can store
petabytes of file data. OneFS creates a single file system that spans across all
nodes in a PowerScale cluster. These NAS products are optimized for file sharing
and object data storage.
OneFS creates a single file system that spans across all nodes in a PowerScale
cluster.
• Protocols: SMB (1, 2, 2.1, 3.x), NFS (v3, v4.0), FTP, SFTP, FTPS, S3, HDFS,
HTTP.
• Scalability per file system namespace is 66 PB.
Dell ECS
The Dell Cloud Tiering Appliance (CTA) is packaged in the form of a virtual
appliance. CTA is used to optimize primary file storage by automatically moving
inactive files to secondary storage based on policies. Secondary storage can be
lower-cost drives, such as SAS or SATA drives, or to other platforms, including
public and private clouds. CTA can also provide block-level LUN data archiving for
Dell EMC Unity storage systems.
Files that are moved, appear as if they are on primary storage. File tiering
dramatically improves storage efficiency, and backup and restore time. File
archiving onto storage with WORM functionality can support additional business
requirements such as compliance and retention.
A storage controller is the device within the storage system that operates and
manages all of the functional components of the system. Storage systems should
have a minimum of two storage controllers. This arrangement provides operational
redundancy and enhances I/O performance and scalability. Storage Controllers:
The benefits of network file sharing degrade as more general-purpose servers are
added to share file system data with each other, and client systems. The major
issues with network file serving are:
The scale-out NAS implementation pools multiple NAS nodes together in a cluster.
• A node may consist of either the NAS head or the storage or both. The cluster
performs the NAS operation as a single entity.
• Scale-out NAS has the capability to scale resources by adding nodes to a
cluster.
− Nodes can be added to the cluster for more performance or storage capacity
without causing any downtime.
• The cluster works as a single NAS device and is managed centrally.
• All information is shared among nodes, so the entire file system is accessible by
clients connecting to any node in the cluster.
− Scale-out NAS stripes data across all nodes in a cluster along with mirror or
parity protection. As nodes are added, the file system grows dynamically,
and data is evenly distributed across the nodes.
• As data is sent from clients to the cluster, the data is divided and allocated to
different nodes in parallel.
Scale-out NAS clusters use separate internal and external networks for back-end
and front-end connectivity respectively. An internal network provides connections
for intra-cluster communication, and an external network connection enables clients
to access and share file data.
Each node in the cluster connects to the internal network. The internal network
offers high throughput and low latency and uses high-speed networking
technology, such as InfiniBand or Gigabit Ethernet. To enable clients to access a
node, the node must be connected to the external Ethernet network. Redundant
internal or external networks may be used for high availability.
New nodes can be added as required. As new nodes are added, the file system
grows dynamically and is evenly distributed to each node. As the client sends a file
to store on the NAS system, the file is evenly striped across the nodes.
When a client writes data, even though that client is connected to only one node,
the write operation occurs in multiple nodes in the cluster. This operation is also
true for read operations.
A client is connected to only one node at a time. However, when that client
requests a file from the cluster, the node to which the client is connected does not
have the entire file locally on its drives. The connected node retrieves and rebuilds
the file using the back-end InfiniBand network.
By limiting the number of parallel, linear data flows, the enterprises can:
• Consolidate vast amounts of their data into a single store, or a data lake,
through a native and simple ingestion process.
• Perform analytics on the data to provide detailed insight.
− Actions can be taken based on this insight in an iterative manner.
• Eliminate the cost of having discrete silos or islands of information spread
across the enterprises.
Scale-out NAS has the ability to provide the storage platform to this data lake. The
scale-out NAS enhances this paradigm by providing scaling capabilities in terms of
capacity, performance, security, and protection.
In addition to increasing amounts of data, there has also been a significant shift in
how people want, and expect to access data. The rising adoption rate of
smartphones, tablets, and other mobile devices, combined with increasing
acceptance of them in enterprise workplaces, has resulted in an expectation for on-
demand access to data from anywhere, and on any type device.
Traditional storage solutions such as NAS, which is a dominant solution for storing
unstructured data, are limited:
− File systems require more management as they scale and are limited in size.
− Performance degrades as the NAS file system size increases. Increasing file
system metadata capacity, a requirement of many new applications, is also
limited.
Object-based storage systems meet these challenges, and can better help to
manage data growth at lower cost. Object-based storage provides extended
metadata capabilities, and is highly scalable to keep up with rapidly growing data
storage, and user access demands.
The OSD controllers connect to the storage via an internal network. The internal
network provides inter-controller, and controller-to-storage connectivity. The
application server accesses the controller to store and retrieve data over an
external network. OSD typically uses low-cost, high-density disk drives to store
objects. As more capacity is required, more disk drives can be added to the
system.