A bit about data storage and 1cloud experience



    The amount of data generated by humanity is increasing every year, and exponentially. This fact contributes to the development of new innovative technologies, due to which mini-revolutions periodically occur in the field of data storage.

    To keep up with the ever-increasing demands of local and other storage, the capacity of hard drives is gradually increasing. We had drives with a capacity of 320 MB and 1TB, 4 TB and 6 TB. Now we have access to industrial hard drives with a capacity of 8 TB, the rotation speed of which reaches 7200 rpm. HDDs of such capacity are also used in cloud technologies and corporate data centers.

    Note that hard drives must have high reliability, availability and performance. Perhaps when you read the specifications of various disk devices, you came across the phrase "Working height from -300 to +3,000 meters."

    This is due to the fact that all disk drives require air to work , and its pressure inside the disk depends on the height at which the device is located - this need is embedded in its design. Read / write heads should “float” above the surface of smooth magnetic disks, making 120 revolutions per second.

    In the book “PC Upgrade and Repair,” Scott Muller writes the following:

    “Imagine this head: with such an increase, its length will be about 410 m, width - 325 m, and height - 100 m (this is approximately the size of the Sears skyscraper, laid on its side). It moves at a speed of 9,187 km / s at a distance of only 5 mm above the ground (i.e., above the disk) and reads data bits, the intervals between which are 2.16 cm. These data bits are located on tracks with a distance between them of only 29.9 cm.

    The speed of movement of this hypothetical head is even hard to imagine, so I will give a specific example. The diameter of the Earth is 12 742 km, i.e. the length near the Earth’s orbit, which is one inch from the surface, will be approximately 40,000 km.

    Thus, developing a speed of 9,187 km / s, this head will make a revolution around the Earth in less than five seconds. In addition, in one turn around the equator, the head will be able to read 231.33 MB of data. "

    In such a situation, the properties of the air separating the rotating surface and the read head are very important. For this reason, the developers of the device lay a certain range of heights at which the HDD will work without breakdowns.

    Exceeding these standards significantly increases the likelihood of failure of the read / write head - due to vibration, it can touch the surface of the disk. If special openings for air circulation had not been made in the disk drives, the upper and lower plates of the disk would have to be heavier in order to compensate for the effect of pressure changes.



    Almost all disk drives have such ducts.

    However, there are exceptions to any rule - not all disk devices have “breathing holes”. For example, in 2013, HGST(Hitachi), a subsidiary of Western Digital, was able to fit seven 3.5-inch drives (6 TB) into one HDD using a sealed helium-filled camera.

    Since helium is 7 times lighter than air, when using it, a change in pressure is not a problem. To hold the gas inside the sealed chamber, laser welding of the seams was used.

    A helium hard drive at 7200 rpm is about 4-5 degrees colder than normal (since the thermal conductivity of helium is an order of magnitude higher than air), and consumes 33% less electricity. Thanks to this, data centers have the opportunity to increase disk density, which means lower operating costs and reduced space occupied by devices, compared with classical systems of similar capacity.



    A little later, HGST released a 10 TB hard drive, surpassing the performance of its competitor Seagate (8 TB drive). By 2017, the company plans to completely switch to the production of helium disks, abandoning the "air" hard drives (about other technologies that can revolutionize our idea of ​​storage can be read here and here , and here ).

    SSDs, which are non-mechanical storage devices, are also free from problems with pressure drops. Recently, solid state drives, mainly due to the high speed of operation, find applicationin data centers. Arrays built entirely on flash memory and hybrid arrays combining solid-state drives and hard drives appear.

    Here the user has to choose what is more important for him. SSDs offered breathtaking speeds and the very high cost of a gigabyte. On the other hand, multi-terabyte hard drives are much cheaper, but, with a speed of 75-100 IOPS, they can not cope with a large load.

    Hybrid arrays are a compromise. By adding flash memory in the amount of 2-5% of the total memory, you can almost double the number of IOPS, which will reduce the latency of the system to 3-5 ms (without flash technology, it is more than 10 ms). Thus, paying only 10-20% more, you can double the performance of the array.

    Users of 1cloud service can now also connect different disks to one virtual server. The simultaneous use of various types of storage devices allows you to make the overall infrastructure solution more flexible, efficient and cost-effective.

    The development of new functionality did not take much time and was accompanied by the standard process of making changes: finalizing the control panel interface and the external site. To add a new disk, the user only needs to go to the control panel of the virtual server and, following the tabs Settings -> Disks, add the necessary devices.



    Disk space is allocated from NetApp FAS6240 / FAS8040 arrays. At the vCloud Director level, separate Storage policies are organized for each type. Starting with vCloud Director version 5.6, a change in storage policy for specific disks was made available (but only through the API).

    To implement this functionality, we had to patch the .net SDK from VMware a bit due to a detected error when, when adding an additional disk, the SDK tried to create another bus with a zero identifier.

    The following code illustrates the correct settings for adding a virtual disk:

    VirtualDisk vDisk = new VirtualDisk(10240, BusType.SCSI, BusSubType.LSI_LOGIC_SAS);
    vDisk.GetItemResource().Address = null;
    vDisk.GetItemResource().AddressOnParent.Value = unit.ToString(); //unit number, надо вычислять
    vDisk.GetItemResource().Parent.Value = bus.ToString(); //это привязка нового диска к существующей шине  
    

    Despite the growing popularity of SSDs, it is too early to completely abandon the HDD. It is very reasonable to use different storage devices for different types of tasks.

    For example, an actively used database should be transferred to an SSD-drive - this will optimize its speed, but it’s logical to leave the operating system on slower SAS disks. For storing backups, you can generally connect an even slower, but larger SATA drive.

    PS Other interesting materials on the topic:


    Also popular now: