The S1 system overview
The S1 system is a general-purpose, single storage engine that can manage storage resources for all use cases. It is built into the S1 operating system, which is installed on node-servers that are configured and managed through a relay station.
The S1 storage platform
The S1 system provides a storage platform that is a software-only appliance solution that offers enterprise storage capabilities using off-the-shelf hardware components. It is a complete hardware-agnostic solution that is not bound to any hardware. The node servers in the S1 system can even be set up as virtual machines, since the S1 system has the capability to run in a virtualized environment.
The S1 storage engine software is able to fully utilize the potential of all-flash, hybrid, and hard-disk configurations, providing maximum efficiency with any combination of hardware components. With the S1 engine, you get maximum flexibility as it allows you to use hardware from a wide range of vendors.
Single storage engine
A storage engine is a software component that is responsible for managing the storage of data within a database management system (DBMS). A storage engine provides the interface between the DBMS and the underlying storage system, and is responsible for handling tasks such as data compression, indexing, and data retrieval. Different DBMSs may use different storage engines, and the choice of storage engine can have a significant impact on the performance and functionality of the database system.
There are many different storage engines available, each with its own
unique set of characteristics and capabilities. Some storage engines
are optimized for specific types of workloads, such as
high-concurrency transactional workloads or high-throughput read-only
workloads. Generally, each storage engine is designed for a
particular use case.
S1 is a single storage engine that manages all of the storage
resources for all use cases. A single storage engine refers to a type
of database management system (DBMS) that uses only one storage engine
to manage all of its data.
StorONE completely redesigned the storage software stack from top to bottom, creating a cutting-edge storage engine capable of driving a portfolio of powerful solutions:
- New efficient storage I/O engine
- New consistently performing auto-tiering
- New high-performance version of the erasure coding algorithm
- Storage provisioning via use-case specific Virtual Storage Containers (VSC)
StorONE provides a single storage-engine for all storage use cases, providing:
- Supports all storage media
- Simultaneous support for any storage protocol (SAN, NAS, and Object)
- Operates in any data center location or cloud
- Provides unmatched data resiliency
- Quality of Service (QoS) set per application
- Encryption per volume
Virtual Storage Containers (VSCs)
A Virtual Storage Container (VSC) is a self-contained environment supported by the S1 engine. A VSC adds an abstract layer on top of the physical drives that allows you to pool and manage physical storage resources in a flexible, efficient, and cost-effective way. VSCs allow you to allocate storage resources to specific applications, workloads, or users depending on performance, capacity, and availability requirements. This storage-resource allocation can be accomplished by creating multiple virtual storage pools, which can be composed of different types of physical storage devices, such as solid-state drives (SSDs), hard disk drives (HDDs), and flash storage devices. VSCs also provide data protection, data management, and data mobility features, such as snapshots, replication, and tiering.
The built-in virtual storage containers allow the S1 engine to dynamically provision storage. The S1 engine supports a mix of media types, storage capacities, and servers. As a result, the S1 engine can provide a one-storage solution that addresses all the storage needs of the data center. Using S1 engine you can adjust the following configurations:
- Grouping drives into pools
- Dynamically changing storage capacity
- Configuring data resiliency per use case
- Configuring disaster recovery (DR) per VSC
- Taking immutable snapshots
- Encrypting data on per VSC
Using different physical drives in the same pool
VSCs are hardware agnostic: drives of different capacities and manufacturers can be grouped together into the same pool. By providing an abstraction layer on top of physical hardware, VSCs allow maximum flexibility. You can increase the storage capacity of an existing pool simply by adding new drives to the pool. Data accessibility is maintained by vRAID, even when VSCs share different capacity drives. With VSCs, you can even incorporate new storage media types (a future designed media type) into a new pool and make this pool available for existing VSCs.
Dynamically changing of storage capacity
The StorONE engine provides a cutting-edge single storage-engine solution to get the most out of your hardware. For example, S1 can deliver hundreds of thousands of IOPS from fewer flash drives and petabytes of capacity from a few dozen hard disk drives (HDD). The StorONE engine, with its built-in Virtual Storage Containers (VSCs), offers more control in allocating resources for specific Quality of Service (QoS) needs. With StorONE VSCs, you can meet the growing demands of your organization storage without the expenses of over-provisioning or the risk of under-provisioning.
StorONE built-in VSC offers the highest level of flexibility in storage management at the volume level. Unlike other systems where storage is managed at the group or system level, StorONE allows you to customize storage options at the logical volume level. Hence, you can adjust the redundancy level, snapshot frequency, replication options, and more for each logical volume individually.
Data resiliency per use case
The S1 engine allows you to customize data resiliency per use case (per virtual storage container). The S1 engine allows you to configure the StorONE vRAID within each VSC to set drive redundancy settings per use case. To protect against potential data loss, you can control how many copies of your data are stored and on which drives. Additionally, the S1 engine allows you to use StorONE’s vSnap, an immutable snapshot technology, to set the frequency of snapshots and how long they will be retained. This means that you can specify how often snapshots of your data are taken and for how long they are stored.
Furthermore, the engine allows you to set Disaster Recovery requirements with StorONE vReplicate technology per VSC. vReplicate enables you to replicate data to a secondary location, so that in case of a disaster the data can be recovered quickly. vReplication allows you to have a disaster recovery plan that is tailored to your specific use case.
General scheme
The S1 system is made up of node servers, which can be either a single node server (NS) or two high-availability connected servers. These node servers manage and run the disk enclosure, and are operated by the S1 operating system. Users can access the S1 system through either a command-line interface or a graphical user interface. In cases where there are two nodes, clients and applications have a direct connection with both nodes, known as an optimized communication path. If the optimized connection to one node fails, communication can be routed through the other node via the high-availability interconnection between the two nodes. Once the direct connection to the first node is restored, communication will return to the optimized path.