A block-based storage system is the traditional storage systems which provides hosts with block-level access to the storage volumes. In this type of storage system, the file system is created on the hosts and data is accessed on a network at the block level. 
 
After Cloud computing came into picture, to gain cost advantage, many organisations are moving their application to cloud. To ensure proper functioning of the application and provide acceptable performance, service providers offer block-based storage in cloud. The service providers enable the consumers to create a block-based storage volumes and attach them to the virtual machine instances. After the volumes are attached, the consumers can create the file system on these volumes and run applications the way they would on an on-premise data center. This is most commonly used storage system type in environment you work.

Block-based Storage System Architecture

The block-based storage system may consists of one or more controller(s) and number of storage disks.

Block based SAn

Lets walk through these block based storage system components briefly and understand how and what happens when you try to access data from any storage system.
 
Controller
A controller of a block-based storage system consists of three key components: front end, cache, and back end. An I/O request received from the hosts or compute systems at the front-end port is processed through cache and back end, to enable storage and retrieval of data from the storage. A read request can be serviced directly from cache if the requested data is found in the cache. In modern intelligent storage systems, front end, cache, and back end are typically integrated on a single board referred as a storage processor or storage controller.
 
For high data protection and high availability, storage systems are configured with dual controllers with multiple ports. Such configurations provide an alternative path to physical storage drives if a controller or port failure occurs. This reliability is further enhanced if the storage drives are also dual-ported. In that case, each drive port can connect to a separate controller. Multiple controllers also facilitate load balancing.
 
Front End
The front end provides the interface between the storage system and the hosts. It consists of two components: front-end ports and front-end controllers. Typically, a front end has redundant controllers for high availability, and each controller contains multiple ports that enable large numbers of hosts to connect to the intelligent storage system. Each front-end controller has processing logic that executes the appropriate transport protocol, such as Fibre Channel, iSCSI, FICON, or FCoE for storage connections. Front-end controllers route data to and from cache via the internal data bus. When the cache receives the write data, the controller sends an acknowledgement message back to the compute system.
 
Backend
The back end provides an interface between cache and the physical storage drives. It consists of two components: back-end ports and back-end controllers. The back-end controls data transfers between cache and the physical drives. From cache, data is sent to the back end and then routed to the destination storage drives. Physical drives are connected to ports on the back end. The back-end controller communicates with the storage drives when performing reads and writes and also provides additional, but limited, temporary data storage. The algorithms implemented on back-end controllers provide error detection and correction, along with RAID functionality.
 
Storage
Physical storage drives are connected to the back-end storage controller and provide persistent data storage. Modern intelligent storage systems provide support to a variety of storage drives with different speeds and types, such as FC, SATA, SAS, and solid state drives. They also support the use of a mix of SSD, FC, or SATA within the same storage system.
 
Workloads that have predictable access patterns typically work well with a combination of HDDs and SSDs. If the workload changes, or constant high performance is required for all the storage being presented, using a SSD can meet the desirable performance requirements.


Go To >> Index Page

Leave a Reply