Data processing device

The data processing apparatus addresses inefficiencies in large-scale storage by using a vertical air flow system and temperature-based access to optimize energy and security, achieving high density, reduced consumption, and robust redundancy.

JP7710992B2Active Publication Date: 2025-07-22SWISS VAULT SYST GMBH
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2021562140
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-04-18
Filing Date
2020-04-17
Publication Date
2025-07-22
Estimated Expiration
2040-04-17

AI Technical Summary

Technical Problem

Large-scale data storage systems face challenges with energy consumption, heat generation, physical volume, and potential for data loss or theft, particularly in data centers, due to the need for redundant storage and cooling mechanisms that are inefficient and costly.

Method used

A data processing apparatus with a vertical air flow system that cools data storage units by distributing data chunks across multiple units, using temperature-based access algorithms to optimize energy consumption and security, and implementing erasure coding for redundancy, allowing parallel access and reducing the need for active cooling.

Benefits of technology

The system achieves higher storage density, reduced energy consumption, improved data access speed, enhanced security against theft, and robust redundancy with minimal active cooling, ensuring efficient operation and resilience against failures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007710992000004
    Figure 0007710992000004
  • Figure 0007710992000005
    Figure 0007710992000005
  • Figure 0007710992000006
    Figure 0007710992000006
Patent Text Reader

Abstract

The present invention relates to a data processing apparatus, the data processing apparatus comprising: a plurality of data storages adapted for long-term redundant storage of data, generating heat during operation and mounted to allow cooling; and a data access circuit adapted to receive the data to be stored, determine the number of information chunks associated with the data to be stored such that a subset of the information chunks is sufficient for reproducing the data, select some of the plurality of data storage units for storing the information chunks, write the information chunks to the selected data storage units, and retrieve the information chunks from the selected subset of data storage units to recreate the data, wherein at least some of the plurality of subsets of data storage units are mounted to be cooled by a vertical air flow common to at least some of the selected subset of data storage units, and the data access circuit adapted to determine the selected subset of data storage units from which the information chunks should be retrieved depending on the temperature of the data storage units.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a data processing apparatus and a method of data processing.

[0002] Data processing is an indispensable technology in modern society. In some cases, an immediate response to the acquired data is indispensable, such as when the data is derived from sensors that control a process, but there is often a need to store data for a long period of time and later access and process the stored data.

[0003] However, when the amount of data to be stored is large, many problems occur. For example, the devices used to physically store data need to have a certain physical volume and weight, and usually consume a certain amount of energy even in an idle state.

[0004] With the general progress in state-of-the-art technology, the memory density can be increased, and the energy and volume of a certain amount of data storage units required to store a given amount of data can be reduced, but this hardly solves the general problems related to data storage. This is particularly due to the fact that as data processing becomes more effective and faster, and new methods of processing data such as those provided by artificial intelligence emerge, more data can be evaluated. As a result, more data generation and storage are occurring.

[0005] Furthermore, progress in fields other than pure data processing may result in the storage of larger amounts of data. For example, current progress in genomics has made it possible to determine the entire human genome at a cost that is several orders of magnitude lower than it was a decade ago. At the same time, methods of personalized medicine have been developed that enable the production of personalized vaccines against cancer or the determination of individual risk factors associated with specific diseases. As a result, there is a need in the current medical industry to store and process the personal genomic information of a large number of people in large quantities. As another example, in large industrial plants, more data is being generated by sensors that control machinery. Evaluating such data can prevent the failure of expensive machinery, but this may require complex data processing techniques.

[0006] Large amounts of data also pose a problem because accessing the data generates heat. This is the case, for example, in hard disk drives where it is necessary to physically rotate one or more disks and position the read / write heads, and similarly in solid state drives (SSDs) where it is necessary to charge / recharge the memory cells. Also, energy is consumed by the circuits that control the data storage unit. When the amount of data is particularly large, the energy consumption increases significantly even without data processing. It should be noted that in data processing centers, the overall energy consumption reaches a level that requires cooling, which may further increase the overall energy consumption.

[0007] As an example, regarding the energy consumption required for data storage and retrieval, a conventional hard disk with a storage capacity of several terabytes currently consumes approximately 7.5 watts even in an idle state. In the case of random read access, the power consumption increases to a level of approximately 9 watts, and the starting current for spinning up the rotating disk requires, for example, approximately 1.8 amperes at 12 volts (exemplary data for the 8TB Seagate Enterprise NAS HDD ST8000NE0001). In a conventional SSD, for example, 3 to 4.5 watts per disk unit may be required. This power consumption is not significant in a standard environment such as a desktop, computer, or laptop with one or two disks, but the overall heat generated in a data center that requires a petabyte data capacity and thus a large number of data storage units such as HDDs becomes significant. Note that when cooling is required, it is difficult to determine the exact amount of cooling needed, so it should be noted that the device is often cooled to a temperature lower than the absolutely necessary temperature. Also, several techniques have been proposed to improve the cooling of data storage devices.

[0008] U.S. Patent No. 9,232,683 discloses a data storage system including an enclosure and a plurality of drawer structures each including a plurality of storage media such as disk drives, wherein the storage media are arranged such that air passes vertically through at least two of the plurality of drawers and between them in the system, thereby cooling the disk drives in the system by the vertical air in the system, and air flow generating means for generating a vertical flow of air through the drawers. This is suggested to be more advantageous than a horizontal cooling system.

[0009] U.S. Patent No. 9,232,683 also suggests that by placing air flow generating means at the bottom of the memory system and blowing air vertically upward through two or more drawer parts, a simple and reliable means can be provided to realize the necessary vertical air flow within the memory system. This enables the use of fewer air flow generating means compared to the case where horizontal air flow is exclusively used within the rack to cool the disk drive. It is described that the conventionally provided intermediate structure can be removed to improve the package density. It is usually described that a rotating fan is used to generate the necessary air flow. The control of the fan can be internally realized by the rack control system via some external control means.

[0010] In U.S. Patent No. 6,480,380, a method and apparatus for cooling a disk drive are known. A disk drive assembly is suggested, which includes a disk drive for storing and retrieving computerized data, a connector coupled to the disk drive for connecting the disk drive to a computerized interface, and a support member for supporting the disk drive, the support member defining an input louver for redirecting air from an air flow to the disk drive, and a housing member configured to couple to the input louver and the disk drive, the input louver including a redirecting member configured to deflect air from an air flow passing through a hole defined by the housing member towards the disk drive.

[0011] The document suggests that it is advantageous when the redirected air impinges on the disk drive in a direction substantially perpendicular to the disk drive, directly penetrates into the boundary layer along the region of the disk drive, and generates a turbulent flow that increases the convective heat transfer coefficient of the disk drive configuration. It is described that the disk spindle of the hard disk is a substantial heat source and heat can be removed therefrom by the louver.

[0012] U.S. Patent No. 6,987,673 discloses a data storage subsystem configured to be mounted within a rack-mounted cabinet. The data storage subsystem includes a housing configured to mount to a set of vertical rails of the rack-mounted cabinet, a set of circuit boards vertically aligned within the housing and configured to define a set of vertical channels within a central space defined by the set of vertical rails of the rack-mounted cabinet, and a fan assembly mounted to a set of vertical rails located above the housing and configured to generate a vertical air flow through the set of vertical channels and discharge the vertical air flow to an external location above the rack-mounted cabinet. The vertical air flow enables reliable heat removal from the set of circuit boards even when the rack-mounted cabinet is not in a cold aisle environment.

[0013] Hot air tends to rise vertically, but it has been suggested that cooling subsystems often attempt to direct air in a lateral direction that is substantially perpendicular to the vertical direction. Thus, U.S. Patent No. 6,987,673 suggests a technique for mounting a data storage subsystem within a rack-mounted cabinet, where the data storage subsystem has a fan assembly configured to generate a vertical air flow through at least a portion of the rack-mounted cabinet and discharge the vertical air flow to an external location above the rack-mounted cabinet. For this purpose, a backplane is mounted within the housing and circuit boards are individually inserted into the housing. The circuit boards are connected to the backplane substantially perpendicular thereto, and the backplane has connectors on both sides. It has been suggested to reduce the operating temperature and improve reliability.

[0014] In US Patent Application Publication No. 2018 / 0192549, a vortex generation fan controller is known, and a variable speed vortex generation fan disposed on a server rack is used to generate a helical airflow within the server rack, and the helical airflow combines with cooled air entering the data center from an opening in the floor near the lower portion of the server rack. The speed of the variable speed vortex generation fan and the flow rate of the cooled air combined within the helical airflow rising through the server rack are adjusted in response to a change in the input air temperature of the air entering the variable speed vortex generation fan detected using a fan input air temperature sensor disposed on the server rack. A data center is referenced, and in the data center, cooled air is supplied by blowing the cooled air into perforated tiles of a subfloor of the data center. By forming a vertical vortex of air around the data servers within an individual server rack, the air enters the data center from the floor and contacts the servers in a layered manner until it is discharged through a vortex generation fan disposed above the individual server rack, preventing the generation of turbulent airflow in the data center due to factors such as the temperature gradient between two air masses.

[0015] A dedicated server temperature control system with a specified fan input air temperature range is suggested to “self - adjust” heat extraction from a dedicated server rack.

[0016] In US Patent Application Publication No. 2018 / 0376623, a server system is known, and the server system includes a frame including a support structure, a server supported by the support structure, and an actuator configured to move the server from a first position to a second position to increase the server's exposure to the airflow, transfer heat from the server via convection, and move from the second position to the first position to reduce the server's exposure to the airflow. It is suggested that the server can provide operating characteristics indicating a heat load, such as power consumption, operating speed and / or frequency and / or utilization rate. Such operating characteristics are suggested to be transmitted to a controller that generates an actuator control signal.

[0017] In International Publication No. 2010 / 144677, a cooling system for a computer server cabinet in a data center is known. The system includes a raised floor that defines a pressurized underfloor plenum, and a computer room air conditioning unit disposed above the raised floor and having a hot air inlet and a cold air outlet, wherein the cold air outlet is in fluid communication with the pressurized underfloor plenum, and a server cabinet that houses server equipment and includes a pressurized vertical plenum in fluid communication with the underfloor plenum via an inlet duct. The server cabinet is described as configured to receive a cold air flow from the underfloor plenum into the vertical plenum via the inlet duct, draw cold air throughout the server equipment, and provide cooling without using an external fan.

[0018] The document states that the energy wasted in moving air that does not contribute to cooling the equipment, i.e., excess air, can account for more than 10% of the total energy consumed in a data center. It is also stated that by dispersing equipment around the room, the heat load within the data center can be equalized. In particular, it is suggested to form a pressurized vertical plenum between the front door and the front of the server equipment within the server cabinet. It is also stated that server equipment overheating can lead to critical failures and data loss. The maximum power density when using a standard server cabinet and perforated floor tiles is described as being limited to approximately 5 kW per cabinet. It is stated that the operation of fans requires a large amount of energy and that there are failure points within the cooling system, so when local high-speed fans are not required, efficiency and reliability are improved while noise is reduced.

[0019] In US Patent Application Publication No. 2019 / 0037729, a cooling system for a data center is known, and the cooling system includes circulating using at least one cooling unit to cool an airflow passing through the open front of at least one server rack from a work space occupiable by humans in the data center. The server rack is configured to support a plurality of data center computing devices including at least one server rack positioned in a plurality of base bays of a server rack frame assembly defined along a longitudinal dimension of the frame assembly.

[0020] In US Patent Application Publication No. 2014 / 0137491, a multi - floor data center having a plurality of floors with a set of server racks arranged on each floor and having a common vertical airflow plenum is known.

[0021] In International Publication No. 2018 / 106355, a configuration is known in which an elongated storage module having a thin and long SSD form factor is used. A plurality of such elongated SSD memory cards are provided, and a fan blows air into these elongated memory cards. In International Publication No. 2017 / 160271, a parallel array of high - density memory cards and a data storage system connector for use with high airflow are known.

[0022] Furthermore, it should also be pointed out that a data processing device that stores a large amount of data not only has a large volume, generates a large amount of heat during operation, but may also be very heavy, and it is necessary to consider these when designing a data processing building. For example, it is well known to place data processing devices in racks. These racks can be standard 19-inch-wide racks and are usually very deep in the front-to-back direction to accommodate common long server chassis. To enable wiring to the power supply, Ethernet, and other interconnections at the back of the server, this generally 1-meter length is further extended. In many cases, multiple racks are arranged side by side, and passages are created on both the front and back to access the front and back of the racks as well as the devices placed there for maintenance or replacement. In this configuration, working passages are required at both the front and the back for maintenance, usually resulting in an overhead of more than 50% of the floor area and requiring more floor area compared to a more space-efficient configuration.

[0023] A typical chassis installed in a rack is wide and long but relatively thin in the vertical direction. The thicknesses of the two thinnest chassis are 1.75 (44.5 mm) and 3.5 inches (89 mm). Since the vertical movement of air for cooling is not possible due to the structure of the chassis, the diameter of the cooling fan is limited. To move the required amount of air, the fan needs to rotate at a very high speed, which not only generates a large amount of noise but also increases the wear of the fan bearing and shortens the life of the fan. This noise impairs the comfort of users working near the data storage unit and usually requires either protecting the ears or leaving the work area of the data storage unit, or both.

[0024] An additional problem that occurs when storing data for a long period of time is that the data storage unit may malfunction over time. Such malfunctions can occur for various reasons, such as head sticking or malfunctions of integrated circuits, capacitors, motors, bearings, etc. Next, the lost capacity needs to be restored by replacing the faulty unit (disk or SSD) used in the construction of the data storage unit. Also, it is necessary to consider that the data storage unit may be physically damaged by fires, earthquakes, etc.

[0025] For more passive components other than plugs and sockets, physical failures may occur, but due to their passive nature, the occurrence of failures is rare and the maintenance of the system's lifespan is expected. However, the fact that replacement is relatively easy should also be considered in the design.

[0026] Finally, an optimal system needs to be resistant to major disasters such as electrical surges, sprinkler failures, fires, and earthquakes.

[0027] When access to data is essential, it is necessary to consider the problems associated with potential losses of the data storage unit and other parts of the data storage server system. To prevent a small amount of data from being lost, it is reasonable to protect it only by creating two or more copies of the data on different physical media. As the data becomes large enough, the cost increases, so for storing large amounts of data safely and economically, the redundancy of the data is achieved at a lower cost than simple replication of storage by using the present invention and more advanced methods.

[0028] Due to the desire to improve redundant replication storage, techniques such as RAID (Redundant Array of Independent Disks), RAID1 (Full Disk Mirroring), and RAID5 (Block-Level Striping with Distributed Parity) have been introduced. However, when a data storage unit that is part of a RAID system fails, it is necessary to replace the unit within the RAID disk set in order to maintain (or re-establish) redundancy. Before starting this rebuild process, it is necessary to physically replace the specific failed drive. Once the failed storage unit is physically replaced, it is necessary to rebuild the RAID redundancy by regenerating the data lost from the remaining disks. After a non-trivial computational operation, the generated data is stored on the replacement disk. This typically takes several hours to several days, and the additional burden of thrashing the remaining drives to provide information for data regeneration increases the likelihood of a cascading failure. Furthermore, the additional competition for disk access can interfere with or prevent legitimate external access to that data.

[0029] From U.S. Patent No. 8,806,296, as well as from U.S. Patent Nos. 9,110,797 and 1,098,433, it is known that in the process of modern electronic communication, a large amount of data is generated, and much of the generated data exists in long-term memory array repositories and may not be frequently accessed. U.S. Patent No. 8,806,296 suggests a data storage system designed to take into account the gradual attenuation of access frequency. In U.S. Patent No. 8,806,296, it is recognized that the entropy effect on the data stored in the storage hardware and the anti-entropy correction routine can be considered. The entropy effect referred to here is the random possibility of hardware, such as magnetic media, data inaccessibility and / or data loss due to malfunction of the hardware, environmental factors, physical destruction of the hardware, and other causes. It is suggested to detect such effects and set anti-entropy correction routines and / or policies preemptively and reactively. The document particularly suggests using erasure coding to provide redundancy.

[0030] In U.S. Patent No. 9,336,102, a method is known that includes receiving an indication of whether a failure state exists with respect to the storage resources of each data node from a plurality of data nodes of a distributed file system. This method may also include receiving an input / output request for the storage resources of a specific data node from a host information processing system communicatively coupled to the distributed file system. This method may further include, in response to the input / output request, directing the input / output request to the specific data node if no failure state exists with respect to the storage resources of the specific data node, and directing the input / output request to another data node of the distributed file system if a failure state exists with respect to one or more storage resources of the specific data node.

[0031] In particular, U.S. Patent No. 9,336,102 describes that a distributed storage system can be used as a storage solution, and in a distributed file system, data can be distributed across multiple storage nodes, enabling improvements in redundancy and performance. It is also described that when a disk within a storage node of a distributed file system fails, the distributed file system is typically reconstructed to reconstruct or recover the data of the failed disk. Such a rebuild is enabled by redundant data stored in the distributed file system. It is described that during such a rebuild process, the input / output performance of an information processing system attempting to access the storage node may decrease.

[0032] U.S. Patent Application Publication No. 2019 / 0050302 describes a method and system for storing a plurality of data chunks in a set of disks such that the placement of the plurality of data chunks within the cluster optimizes the fault tolerance of the cluster and the performance of the storage system by identifying a set of disks within the cluster. The plurality of data chunks can be generated using data replication (e.g., using Reed-Solomon codes or low-density parity-check codes). A set of disks for storing the plurality of data chunks can be identified using the physical configuration of the nodes and disks within the cluster, as well as the topology of the cluster including status information of the nodes and disks within the cluster (e.g., information regarding the free capacity of the disks, the performance of the disks, the elapsed time of the disks).

[0033] More specifically, it has been suggested that each file stored in a distributed file system can be split into one or more chunks, and each of the one or more chunks can be stored within the distributed file system as a separate file. It has been suggested that the stored files are replicated or mirrored on multiple physical machines to create a distributed file system with load-balanced fault tolerance. Data chunks associated with files stored in the distributed file system may include parity data, for example, by erasure coding. The storage device may include a temperature sensor for sensing the temperature of the storage device or its internal components, and the data center or components within the data center may monitor the temperature associated with a room, rack, server box housing the server, or components of the server, such as semiconductor chips or processing cores used by the server, and may include a temperature monitoring circuit for detecting whether the temperature being monitored exceeds or falls below a specific threshold (for example, the temperature associated with the server box exceeds 85° C.). It has been suggested to use the topology and status information of the cluster to determine a subset of disks within the cluster that store a plurality of data chunks. It has been suggested to update component status information, such as disk performance, disk elapsed time, disk failure history, etc., each time a significant cluster event occurs, such as a node or disk failure, or the addition or deletion of a node or disk to the cluster.

[0034] In UK Patent No. 2436209, methods and systems for hierarchical management of distributed data are known. The document describes that in a distributed system, it is necessary to address issues related to sharing data and maintaining shared data in a consistent and robust state. It is described that in a data storage system, a memory that functions as a cache for data can be provided, as well as storage locations for various entities. It should also be noted that the m + n erasure coding redundancy scheme is described in some detail.

[0035] In Canadian Patent Invention No. 2089836, a high-availability disk array is known, and it is suggested that a method of processing data on a plurality of data storage disks is used when the disks are operating in a non-degraded mode or a degraded mode. It is described that extra time is required to reconstruct the data to reconstruct a system in which a disk has failed, and further, there is a possibility that a power outage may occur which can have an adverse effect on the entire system.

[0036] As seen in the prior art, it is not expected that the failure of a single data storage unit can be completely prevented. However, it is necessary to avoid hardware failures being fatal.

[0037] When replacing a disk, the lost capacity can be easily restored, but the problem of how to restore the lost data content arises. It is reasonable to create two or more copies of the data on different physical media to protect against the loss of a small amount of data. As the data becomes large enough, the cost increases, so in order to store a large amount of data safely and economically, the redundancy of the data is realized at a lower cost than simply replicating the storage by using the present invention and more advanced methods.

[0038] The entire data set can be mirrored and stored in physically separate locations away from each other. This improves the safety against data loss, but large-scale replication of data will again cause the problem of reduced economy. Furthermore, this does not solve the problems related to the storage size and overall energy consumption at a given site.

[0039] Another problem that needs to be addressed when storing data is security against data theft. In many applications, the systems used for data generation, data storage, data evaluation and processing, and output of results are connected to a wide-area network such as the Internet. Therefore, there is a risk that a third party may access the stored data and obtain information from it or manipulate the data. This is clearly unacceptable when dealing with highly confidential patient medical data or confidential business data. Even when not connected to the Internet or other wide-area networks, there is a risk that the data storage unit or at least a part of it may be physically removed.

[0040] Of course, this can be prevented by standard security measures such as installing surveillance cameras and human surveillance, but this significantly increases the complexity and cost of data storage. Also, data can be encrypted and decrypted, but encrypting data consumes a large amount of energy, and when the stored data is particularly valuable, it can be expected that a great deal of effort will be spent decrypting the data. Therefore, when the data is particularly valuable, it is necessary to use particularly strong encryption.

[0041] It may not be necessary to completely solve all of the above problems simultaneously, such as protection against theft, protection from third-party access via the Internet, protection from failures, and reduction of energy consumption, but for all applications, it is preferable to at least somewhat improve data processing with respect to at least some of the problems outlined above.

[0042] The object of the present invention is to provide novelty for industrial use.

[0043] The object of the present invention is achieved by what is described in the independent claims. Preferred embodiments are disclosed in the dependent claims.

[0044] According to a first aspect of the present invention, there is provided a data processing apparatus, the data processing apparatus being adapted for long term redundant storage of data, generating heat during operation and having a plurality of data storage units mounted to enable cooling, and receiving the data to be stored, determining the number of information chunks associated with the data to be stored such that a subset of information chunks having fewer elements than the total number of information chunks is sufficient for reproduction of the data, selecting some of the plurality of data storage units for storing the information chunks, writing the information chunks to the selected data storage units, and retrieving the information chunks from a subset of the selected data storage units and being adapted to reproduce the data, at least a part of a plurality of subsets of the data storage units being mounted such that they are cooled by a common vertical air flow at least in part of the subset of the selected data storage units, and the data access circuit being adapted to determine the subset of the selected data storage units from which the information chunks are to be retrieved according to the temperature of the data storage units. The adaptation of the data access circuit can be performed by dedicated electronic hard-wired circuitry and / or stored executable information implementing corresponding selections at run time.

[0045] Thus, a specific configuration is provided that not only enables mechanically increasing the density of components by directly attaching, for example, the data storage unit of a data processing device to a printed circuit board, but also enables utilizing this by significantly reducing energy consumption. Without reducing the energy consumption, it is difficult to increase the storage density because overheating is expected even if a vertical air flow path is provided between the data storage units. Therefore, the present invention not only proposes to provide a specific cooling method as performed in the prior art, but also guarantees that the system operates in a manner that maximally utilizes the vertical air flow. It should be noted that data center operators preferably want to use the disks at the upper part of the rack so that the temperatures of the multiple disks above the accessed disk do not rise, such as in the case of disks at the lower part of the rack. Therefore, in a preferred embodiment, it should be noted that the spatial dispersion and / or spatial position of the data storage units can also be considered. However, in particular, to make the temperature uniform, the disks arranged at a low position or the lower stage of the rack can also be operated.

[0046] More specifically, many advantages can be obtained by selecting an appropriate data storage unit for acquiring an information chunk, that is, considering the temperature of the data storage unit. It will be understood that other characteristics can be considered when selecting an appropriate data storage unit for acquiring an information chunk. For example, if all of the multiple data storage units that can be accessed to acquire information are at the same temperature, within the same temperature range, or at a sufficiently low temperature, the selection can be further based on parameters such as the instantaneous data bandwidth available at the node to which the data storage unit is assigned, and / or the bandwidth available for accessing a given data storage unit, and / or the current usage amount of the disk due to other acquisition requests. It should be noted that when multiple parameters are considered to select from which data storage unit to acquire data, such selection can be performed by a weighting method.

[0047] It should be noted that when operating a data processing center with an emphasis on performance rather than energy consumption, it is possible to consider not only or mainly bandwidth rather than temperature. Therefore, regardless of whether other disks are actively sharing the same channel as the CPU, elements such as the number of parallel accesses to a given disk or data storage unit (by considering this element, contention can be avoided or reduced) are assigned a higher weight. This is considered to be an invention in itself and can be claimed independently and / or in combination with other parts of this disclosure. Further, when multiple CPUs or other data processing units are provided, by considering whether a given CPU used for accessing data to the data storage unit is busy and avoiding passing through the busy CPU, other active processes can be prevented from being hindered. Note that among multiple disks, it should not be considered that each disk has the maximum bandwidth for the CPU, and in some cases, it should be noted that it is necessary to share channels among multiple disks. Also, in some cases, the CPU may become saturated with work and may not be able to read / write to another disk at the maximum speed.

[0048] Furthermore, it can be considered to use a data storage unit that can establish a communication path with no contention or with little impact of contention, considering the available bandwidth of the connection to a given node to which the data storage unit is connected. Further, in order to ensure contention-free communication, the entire Ethernet bandwidth through all switches can be considered.

[0049] To understand this, first note that in modern data storage (and thus modern data processing centers), due to the technical limitations of data storage units, the data to be stored is distributed across multiple data storage units. In a small laptop or computer, a single data storage unit is provided and needs to be constantly accessible, such as by rotating a disk. In contrast, in a large-scale data storage center, it is not necessary to always be able to access all the data. Also, previously, since the period required to provide results to the user was mostly determined by the time required for actual data processing, faster processors were needed. Today, although more data needs to be analyzed to obtain results, since processing can be executed almost in parallel, the speed of the processor has become less important than the time to access the data.

[0050] From this perspective, the present invention takes into account a paradigm shift. Since data can be processed more easily once access is obtained, it is considered more important to provide better access to data and to consider the energy for data access rather than the energy for actual processing.

[0051] In both accessing data in a fast and efficient manner and processing data at a high processing frequency, more energy than ever is required and it is necessary to meet the energy constraints, so that the overall energy balance available for data processing can be used appropriately. In this regard, it has been found that by improving data acquisition, not only can the energy balance be optimally utilized, but at the same time wear can be reduced, access can be actually improved, and the risk of data theft can be reduced if necessary.

[0052] By taking into account the temperature of the data storage unit in a vertical air flow, not only can overheating of a specific device be avoided, but also the fluctuations in the air flow leaving the data storage device can be equalized by using the heat capacity of the data storage unit in the vertical air flow. As a result, it has been found that data acquisition is improved, especially in terms of higher energy efficiency. When the data storage unit is used for a long time and reaches a higher temperature, it can be cooled slowly in the air flow passing through the data storage unit, reducing the mechanical stress caused by the different coefficients of thermal expansion of the materials used, rather than causing excessive wear due to overheating. Therefore, instead of strengthening the cooling to enable the operation of the unit close to the maximum safe operating temperature, the cooling is minimized and the heat load is equalized. This avoids excessive cooling, thus reducing the overall energy consumption of the data center.

[0053] At the same time, considering the situation where all data storage units operate with maximum energy consumption, it is necessary to determine the temperature of the incoming air flow. Therefore, despite generally reducing the necessary overcooling, the temperature change of the data storage unit can still be kept low.

[0054] Next, by dispersing a large number of information chunks across a large number of disks so that they can be selected later, it becomes more difficult for a third party to obtain data from unauthorized access and mere observation of the access pattern without additional knowledge about the temperature affecting the access pattern, and it becomes almost impossible to determine the correct data storage unit in which specific data is stored. Therefore, security is improved.

[0055] In contrast, within the data storage device itself, since a large number of data storage units are provided for selection, access is improved, and access to multiple data storage units can be performed in parallel. Therefore, despite reducing the consumption energy by paying attention to the overall heat balance, data access is speeded up. Note that since it is almost impossible to accurately predict future access patterns to a large number of data files, it should be noted that it is not easy to store data by a method that surely improves the future access speed. However, by providing parallel access, particularly the limitation due to overheating can be avoided, so that access can be speeded up regardless of the initial dispersion scheme.

[0056] In addition, when providing an air flow path, it is necessary to note that some space is secured between data storage units, for example, between hard disks used as data storage units. This seems to reduce the overall density of the realizable data storage units, but since an air flow path is formed there, additional individual forced air cooling is reduced or becomes unnecessary, and even when common forced air cooling is provided, the required space can be significantly reduced otherwise.

[0057] In a typical embodiment, a housing adapted to allow a passive flow of air through these flow paths is provided. Such a housing may include a plurality of data storage units and may be capable of "collectively" changing them as needed.

[0058] When only a passive flow of air is required, the walls of the housing can be at any distance from the housed components, but in the case of a data processing device having a plurality of stacked columns where the air flow path between a row of data storage units coincides with the air flow path between the upper and lower adjacent rows of data storage units and at least one side is restricted by the walls of the housing, a chimney effect is likely to occur, which helps to promote and increase the air flow and make the temperature gradient and fluctuations uniform.

[0059] When additional forced air cooling is provided, this is generally preferably achieved by providing an additional forced air flow common to a plurality of data storage units. To this end, it is necessary to forcibly send air along the air flow path provided between the data storage units. In order to improve efficiency, it is necessary to avoid situations where the forced air flow bypasses adjacent data storage units. Therefore, attention should be paid to the fact that the housing wall (or at least some of the inner walls) is close to the data storage unit. If the total cross-sectional area of the bypass air path formed between the data storage unit and the wall is three times or less the total cross-sectional area of the air path between the data storage units, the wall can be considered to be close to the data storage unit. Note that this number is preferably very small, particularly preferably two times or less, and in a particularly preferred embodiment, it should be noted that it is less than or equal to the total cross-sectional area of the air path between the data storage units. Note that this is basically related to the distance between the front cover of the data storage unit and the front. It is necessary to maintain a space between the side wall of the housing and the data storage unit on the outside of the row of data storage units to ensure a certain amount of air flow, otherwise, the heat dissipation of the data storage unit on the outside of the row may be impaired. Note that a certain distance can also be left between the front cover and the front of the data storage unit, but it should be noted that the overall accuracy required for the construction of the housing will decrease. However, although this can be mitigated by sensing the temperature, wear will still be uneven if the forced air flow paths through the device are too different.

[0060] As is common in rack units, instead of providing blank metal sheets as the upper cover and the lower cover respectively, it is possible to provide a housing with upper and lower inlet openings in each air flow path. It should be noted that filters can be arranged across all such openings to prevent dust and other contaminants from entering the housing without adversely affecting the air flow along the air flow path.

[0061] Also, during operation, warm air rises through the flow path due to the heat generated by the data storage unit or other parts of the data processing device, so in many cases, it should also be noted that no additional cooling is required.

[0062] The spacing of the data storage units can be such that laminar flow can be obtained even under full load of the data processing device. In other words, in many cases, a slow and quiet air movement with less noise is sufficient. This is due to the fact that by dispersing the read access, the possibility of overheating is reduced, and the overall ventilation volume can be decreased.

[0063] Note that general storage units such as hard disk drives (HDDs) or solid state drives (SSDs) have some control circuits that generate a certain amount of heat, and such circuits are usually attached to the SSD or HDD by attaching a printed circuit board (PCB) to the SSD or HDD housing, and it is necessary to note that this constitutes part of the air flow path wall. This is useful because this circuit generates heat and as a result, it is expected to receive a higher heat load, and the coupling to its heat cooling is improved without actively cooling each single data storage unit.

[0064] Furthermore, the PCB to which the memory unit is attached is usually provided with at least one integrated data access circuit and is usually soldered to the PCB.

[0065] In this way, the integrated data access circuit or circuit group is also cooled by the air passing through the air flow path. To access data, integrated circuits such as microprocessors like CPUs, GPUs, FPGAs, etc. can be used, but additional components such as capacitors, drivers, buffers, etc. may be required. It should be noted that these components typically generate heat and / or are heat-sensitive. Such components and / or integrated circuits are arranged on the PCB together with appropriate circuits between the data storage units and can be switched between different integrated circuits if these redundancies are considered equally important. It should be noted that such integrated data access circuits and / or circuit groups may fail. Therefore, even if they can be provided redundantly on the substrate, in most cases, it is the data storage units that fail. Thus, even when only one PCB mount is used, higher-than-average data security is achieved.

[0066] It should be pointed out that it is possible and preferable to use a double-sided PCB having at least one of the integrated data access circuits and a part of the data storage unit attached to the back side, with at least a part of the remaining data storage units connected to the opposite side of the substrate. In this way, it is possible to dissipate heat more efficiently. A data storage unit can be provided directly for the integrated circuit on the opposite side of the PCB. In this case, such a data storage unit can function as a heat sink for the integrated circuit. In other words, some of the heat generated by the integrated circuit on one side of the PCB may warm one or more data storage units. Since the data storage unit is cooled in the air flow, this reduces the size required for the heat sink directly attached to the integrated circuit. In other cases, an air flow path can be provided directly for the integrated circuit on the opposite side of the PCB to dissipate heat efficiently.

[0067] Furthermore, in a preferred embodiment, it is suggested that an integrated data access circuit adapted to access data redundantly (in a redundant manner) across a plurality of data storage units is provided.

[0068] It should be noted that the integrated circuit for accessing data may be a dedicated component or may also be part of a data processing circuit such as a GPU or CPU.

[0069] In one embodiment of the present invention, it is also suggested that at least one data processor for processing data stored in and / or obtained from a data storage unit is provided, and the data processor is preferably selected from the group of CPUs, DSPs, GPUs, and / or FPGAs and combinations thereof, particularly integrated combinations thereof, and the data processor preferably includes an integrated data access circuit. It should be noted that some of these data processors can directly access and address the data storage device itself. In many cases, this may be sufficient. In other cases, additional circuitry may be useful to enable the use of a larger number of data storage devices than originally intended by the manufacturer of the data processor that includes the integrated data access circuit. In such cases, additional circuitry may be provided to increase or expand the number of addressable data storage units. It should be noted that the additional functionality suggested in such an embodiment can also be advantageously implemented in any data processing device without an air flow path, particularly when only the security of the stored data rather than weight or energy consumption is considered the main concern.

[0070] By using a sufficient number of data storage units, even when data is divided into multiple parts and each part is stored in a different data storage unit, it is necessary to note that data can be stored in one (or more) data storage units in which some of the respective information related to the data is already stored, thereby avoiding a situation where it is necessary to reconstruct data redundancy after multiple data storage units fail. It should be noted that this can also be advantageous in the case of any data processing device not provided with an air flow path, particularly when only the security of the stored data rather than weight or energy consumption is considered to be the main concern.

[0071] Note that, generally, since the number of data storage units is very large, it is usually guaranteed that, even under adverse conditions such as multiple failures, a given data file is redundantly distributed across a targeted number of disks, and that even before physically replacing one or more failed data storage units, at the time of detection, on-the-fly rebuilding of one or more failed disks and / or re-establishment of redundancy can be initiated on available local or remote disks. For example, if information related to a given data block or data file is distributed across X+Y different data storage units and a maximum of Y data storage unit failures are tolerated, when aiming for on-the-fly reconstruction, it is necessary to make the total number of data storage units larger than X+Y. This also helps with the distribution of the heat load according to the present invention. In a particularly preferred embodiment, it is also possible to provide one or more additional disks that can be used, for example, in a cache when processing data locally. However, if complete data files that have not been decrypted should not be obtained due to theft of such a cache, it may be advantageous to use volatile memory instead of an additional disk as the local processing cache. In this case, the data is stored, for example, in a manner suitable for pending processing requests and is not encrypted, for example. It should be noted that providing a cache implemented as an additional disk and / or volatile memory can also be advantageous in any data processing device that does not have an air flow path, particularly when only the security of the stored data, rather than weight or energy consumption, is a major concern.

[0072] Note that it is not necessary for all data storage units, such as hard disks, to have the same data storage capacity. Rather, hard disks and SSDs with different sizes, specifications, and manufacturing can be mixed. It should also be noted that, in addition to the storage space for storing information related to the actual data, some additional data storage capacity is also required for storing META data, particularly for storing the locations where the data is written.

[0073] In order to have a function to re - establish full redundancy immediately after an acceptable number of failures, in addition to the data storage unit necessary to provide redundancy, it may be useful and sometimes preferable to have a plurality of data storage units. It should be noted that this can also be advantageous in the case of any data processing device without an air flow path, especially when only the security of the stored data rather than weight or energy consumption is considered the main concern.

[0074] Note that since only X out of X + Y disks are required for data reconstruction, by appropriately selecting a specific redundant data storage unit for reading, the thermal distortion of any given data storage unit can be significantly reduced, and / or the energy consumption of the configuration can be reduced.

[0075] Note that when read operations and write operations are executed simultaneously or in a temporally close relationship to each other, since new information needs to be written to all disks in the set, it may be necessary to activate some disks that are not currently rotating for writing. In such a case, the number of disks to which data is written can be selected according to criteria such as the overall data storage capacity that remains empty in a given data storage unit, the frequency of access to a given data storage unit by statistical evaluation, the number of past accesses to the data storage unit, and / or information related to errors in the data storage unit. Additionally, the disks that are additionally spun up can be selected so that disks that have not been accessed for a long time avoid sticking problems, and when access to multiple disks is required considering a large number of queued requests, disks that can acquire information on multiple requests can be selected. It should be noted that this can also be advantageous in the case of any data processing device without an air flow path, especially when only the security of the stored data rather than weight or energy consumption is considered the main concern, but note that if the thermal load of a single device is reduced, the need for forced air cooling will decrease.

[0076] Note that in a preferred embodiment, it should be noted that only a very small part of the capacity of a given data storage unit is initially used to store information chunks in order to tolerate simultaneous failures of multiple independent units. If the data storage unit of a data processing device fails, even before replacing the failed disk, the data originally stored on the failed disk can be quickly regenerated from other disks in the set. This is retained as long as there is sufficient spare storage space. Again, this is advantageous even if no air flow path is provided between the data storage units.

[0077] To ensure redundancy, a given data packet is not only simply written to multiple disks in a mirrored fashion, but is also mathematically hashed and distributed such that the information is written to T (total) data storage units, so it is necessary to obtain it only from D (data) storage units where T > D, and the rest are P (parity) disks. Thus, T = D + P. The quantity P represents the amount of disk failure tolerance and can be any integer greater than zero. Any combination of reads from an integral number of D storage units out of the D disks and P disks is sufficient, but the specific data storage units from which the data is read can be optimized in a way that maximizes bandwidth and system throughput and minimizes energy usage and disk wear.

[0078] An algorithm can be used that obtains redundancy by writing a certain amount of information as the original data in "plain text" and writing the encoded parity information to the remaining disks. However, in this case, if a single (not fully) data storage unit on which the original data was written is stolen, there is a possibility that a third party can access the complete set of data.

[0079] Therefore, in a particularly preferred embodiment, sufficient P is created such that P = T, there is no original data of "plain text" on the system, and all original data D needs to be synthesized from a subset number D of disks selected from P disks. Further, the thief needs to read or delete at least a certain amount D of disks from the selected P disks in order to regenerate the original data. This poses a problem for the thief because when there are dozens, hundreds, or thousands of disks, it is unclear which specific disks to access or delete.

[0080] Furthermore, even if the thief successfully overcomes these obstacles, since the related files are distributed across completely different disks, only one file can be obtained. This is done not only for security reasons but also to improve the parallel throughput when storing and retrieving related data across the entire system.

[0081] Again, this is advantageous regardless of providing an air flow path between units. However, as is generally understood, combining some features that can be implemented in a data processing device without a specially arranged air flow path can be advantageously used in combination with the air flow path.

[0082] Note that when selecting which data storage unit to obtain data reconstruction information from, it should be noted that additional parameters other than currently running or pending requests and temperature can be considered. For example, when a large number of accesses to a given hard disk have recently occurred and the local temperature has risen, it is recommended to access other units to be able to cool the unit whose current temperature is rising. This can be implemented by an access algorithm that takes into account the current temperature of a group of data storage units and the spatial distance from that group.

[0083] Due to pending accesses to a given disk or other data storage unit, the disk unit may be occupied or the network bandwidth to that node may be saturated, requiring queuing of the pending requests. Generally, if the length of time to process data is very long compared to the time to obtain the operands being processed and / or the time to store or transmit the resulting data, this may not be time-critical, but such access contention situations are avoided by appropriate algorithms. Thus, an access algorithm that takes into account the current access pattern and pending access requests can be implemented. Again, this is advantageous even if no air flow path is provided between data storage units.

[0084] Also, when storing or retrieving data, it may be preferable to consider that some storage units have disks that are already rotating, while other data storage units are in an idle state where the disk is not currently rotating. In this regard, the present invention emphasizes that a spin-down process can be used to stop the rotation of a data storage unit or a large-capacity disk forming part thereof when the disk has not been used for a specific time such as 1 second, 5 seconds, 10 seconds, 30 seconds, or 1 to 5 minutes. Such spin-down, that is, stopping the rotation of a large number of disks in a data storage center, helps to significantly reduce energy consumption and is made possible by using distributed information chunks in data storage units operating in parallel. It should be noted that this is particularly useful in large-scale data centers where there is no need to access some data and a sufficient number of data storage units consume energy without means to reduce energy consumption. It should be noted that when spin-down of a disk is performed, procedures such as "parking" the read / write head in a landing zone may be carried out in a preferred embodiment. When spin-down is used, usually, it is considered whether the disk is rotating and / or whether it is currently performing writing / reading while rotating. Also, it can be considered whether the spin-down timer of a given data storage unit is approaching the limit at which the spin-down process can be started. In such a case, a selection can be made so that more disks are spin-down.

[0085] Initiating the rotation of the disk causes excessive disk wear and a sharp increase in energy consumption. Therefore, it can be reasonable to preferentially reduce or avoid the use of disks that are not currently rotating. Data processing devices typically have more disks than necessary to redundantly store data according to algorithms that distribute data among the data processing devices. Implementing access patterns suitable for both reading and writing has a vast number of possibilities, and it is necessary to note that coding an algorithm that results in an optimal access strategy can be difficult or extremely complex. Therefore, it can be inferred that a dynamic algorithm using artificial intelligence is used to optimize disk access and its operation can be changed over time to handle unexpected situations. However, in a simpler implementation, the algorithm can also be a fixed algorithm. It will be understood that this is equally advantageous even without providing an air flow path between the data storage units. Therefore, other functions are not emphasized even if there are advantages.

[0086] Also, when filling the system, instead of storing the maximum amount of data that can be stored in each data storage unit and fully loading each disk with some empty disks remaining, all disks can be partially filled. In this way, when a data storage unit fails, the data stored in the previously failed data storage unit can be reconstructed and stored in the spare storage space that was not used in the still-operable data storage units in the past. The wear and temperature rise of the disks throughout the system are additional advantages of this access strategy.

[0087] Therefore, as can be seen from the above, in one embodiment of the present invention, the implementation form takes into account the current operating states of multiple or all data storage units when accessing the data storage unit, and in particular, the current rotation state of the hard disk (and its vicinity), as well as its current and / or predicted thermal and / or electrical loads (and the things in its vicinity), and it is suggested that it is adapted to access data redundantly distributed across multiple data storage units by distinguishing them. It should be noted that the thermal load caused by queued writes and / or scheduled acquisitions can be considered to prevent future overheating. It should also be pointed out that local overheating can be avoided by considering not only the temperature of the disk being accessed but also the temperature of one or more adjacent or neighboring disks when selecting the disk to access. It should also be noted that the disk history and / or general usage situation can be considered as an additional or alternative additional characteristic.

[0088] In a preferred embodiment of the present invention, the mount includes a PCB, connectors for multiple or all of the data storage units are mounted on the PCB, and it is suggested that the data storage units of a specific embodiment are directly inserted into the connectors in a particularly hot-pluggable manner.

[0089] By directly providing the connector for the data storage unit on the PCB, cable connectors and the like can be omitted, reducing cost, weight, size, and complexity, and improving air circulation. It should be pointed out that directly connecting the data storage unit to the PCB can help reduce the total number and weight of components without using additional cables, connector cable extensions, trays, carrier brackets, etc. Therefore, it is preferable to directly connect to the connector mounted on the PCB, especially without using a disk tray or carrier bracket.

[0090] Since sufficient cooling is performed by the air passing through the air flow path, even if the data storage unit is replaced during the operation of the system, as long as it is within the normal period for replacing the data storage unit in the hot plug method, heat transfer will not be significantly interrupted.

[0091] The distributedly stored data can be encrypted. First, it should be noted that redundantly distributing the data stored in the data storage unit can constitute a kind of encryption in that the information on the disk usually cannot be understood (or "decrypted") without accessing a specific set of other data storage units. Further, the information stored in each data storage unit (or "disk") can also be encrypted locally on the fly. Such encoding and corresponding decoding can also be performed locally.

[0092] In one embodiment of the present invention, it is also preferable that both sides of the PCB are used for holding fixed components and removable components. Most of these removable components are data storage units, but various CPUs, GPUs, FPGAs, Ethernet, caches, memories, or other pluggable components are attached.

[0093] In one embodiment of the present invention, it is also suggested that the data processing device is adapted to store information in an encrypted state and preferably encrypt at least one of the data written to the data storage unit in a distributed manner and / or the information related to the distribution of data across multiple data storage units. "Information" generally refers to the stored data information, the data information derived from the stored data, and perhaps other information (such as the position or date of the device, or other factors), and it is understood that the system can reconstruct the data from which such information is derived by the stored such information and can prevent the reconstruction of the data when it is deleted from the environment.

[0094] In a preferred embodiment, the data to be stored is not simply mirrored and / or stored in an unencrypted manner in any one data storage unit for the entire data set or large blocks of data, but rather is derived from data (e.g., a data file or data stream transmitted to a data processing device for storage) stored by a technique such as erasure coding. Such erasure coding can be improved by setting energy efficiency as a goal of the embodiment. Also, rather than in a manner where all information portions that are erasure coded are always stored in the same data storage unit in the same order, it is preferred to store information obtained from any one data file by erasure coding or the like in a manner where the data storage unit and / or the sequence of the data storage units themselves is changed after a certain period of time. This provides a number of advantages.

[0095] Meta information related to storing the dispersion of data across different data storage units can be provided on different data storage units, preferably redundantly, and it should be noted that such meta information can be compressed and / or encrypted. These two measures create additional difficulty in decoding even if a third party has access to all data storage units. It is also pointed out that it is possible to "fill" the disk with a random pattern before use to make decoding of stolen information more complex.

[0096] Next, data representing dispersion can be encrypted by different methods for each data storage unit, and the use of a simple pattern matching algorithm for identifying dispersion information that may be similar or identical on each disk can be prevented. For example, such encryption may depend on the individual serial number of a given data storage unit, the number of connectors into which the storage unit is plugged, etc. It should be noted that the actual data can be stored using corresponding encryption. Such encryption does not necessarily consume a large amount of energy. For example, it is possible to use cyclic bit shift operations or simple bit permutations, either of which may be determined individually for each data storage unit. The above describes encryption in terms of the energy problem of a standard system, that is, what are the differences for the inventors' system?

[0097] The data storage unit is usually an HDD or an SSD. Such data storage disks are commodity units that can be easily obtained at a competitive price and are particularly advantageous when redundancy of a large storage capacity is required. The form factor of a conventional HDD or SSD is 2.5 inches or 3.5 inches.

[0098] In one embodiment of the present invention, it is suggested that at least a part of the plurality of data storage units are HDDs and / or SSDs having a form factor of particularly 2.5 inches or 3.5 inches.

[0099] Of course, both form factors can be used, as well as any other form factor, present or future, not mentioned. However, in actual embodiments, it has been found that the 2.5-inch form factor is perfectly suitable. The air flow paths formed between such units preferably have a minimum spacing, which allows air flow for both, but also allows for a higher density of packing. The preferred spacing between the units ranges from 1 mm to 10 mm, depending on the amount and intensity of the fan-forced air provided. In a particularly preferred embodiment, 2 - 4 mm is particularly suitable for sufficient air cooling through the air flow path, depending on, among other things, the number of rows stacked on top of each other (and thus the length of the ducts or chimneys constructed by the air flow paths), the circuit design used, etc. It should be noted that the choice of appropriate spacing may vary depending on the situation and use case. Narrowing this spacing results in mostly non-laminar flow, which requires a greater fan force, while choosing a large spacing reduces the overall storage density, but also reduces the fan speed and may result in a completely passive cooling operation. Another consideration is to leave sufficient space so that individual disks can be easily extracted and replaced.

[0100] Note that in a preferred embodiment, it should be noted that the current status of the storage unit can be determined both remotely and locally. In the latter case, the status of the hardware within the column can be summarized on a display at the end of the cabinet and directly indicated by an LED on the PCB to show the status during operation or a status with a fault. In a preferred embodiment, the optical indicators can be turned off to save energy when a person is not accessing the location, for example, when the room lighting is off or when the passage is closed.

[0101] In one embodiment of the present invention, at least a part, preferably most, particularly preferably all of the data storage units are arranged parallel to each other and / or stacked at their small connector ends, with their largest planes facing each other, and / or it is suggested that at least 8, preferably more than 20 data storage units be provided according to the installation situation. It is highly preferable to have rows of a plurality of data storage units, whether each row is on a separate printed circuit board or some rows are provided on separate printed circuit boards, and each circuit board has a separate data access circuit. This helps to maintain general data access even if data access to a specific circuit on a given board fails.

[0102] In one embodiment of the present invention, it is also suggested that the data storage units be arranged in an array of columns and rows, especially such that the extended air flow paths formed between the data storage units extend vertically during operation. Note that it may be preferable to space the columns a few millimeters apart to avoid problems due to the transmission of shock or vibration and to facilitate the safe replacement or upgrade of the data storage units.

[0103] In a preferred embodiment of the data processing device, the data is stored or distributed in many horizontal columns of the data storage units, and one or more columns are provisioned for each separate printed circuit board. This can avoid a single point of failure and enhance overall reliability. One CPU is required for the operation of each board, and since the CPU is usually the most expensive component, depending on the difference in the number of rows of supported disks, the designer can reduce the overall cost by reducing the number of CPUs while keeping the total number of disks the same, or improve performance by increasing the number of CPUs. The individual boards can be interconnected to share and distribute power and / or enable an Ethernet connection between adjacent boards. In the latter case, additional system bandwidth and a certain amount of additional network robustness can be provided. Generally, communication between any boards is performed point-to-point directly or via switched Ethernet.

[0104] When data storage units are arranged in an array of columns and rows, the air flow paths formed between the data storage units usually extend vertically during operation, increasing heat circulation, generally removing excess heat, and equalizing the temperature between components. Note that the vertical distance between columns is usually made extremely small to promote chimney-like air flow and minimize physical size. It should be noted that a data processing device usually includes at least one data processor to manage a local storage array, and the extra computing power can be shared with other parts of the system.

[0105] The data processing device may be completely passively cooled, but it is also possible to implement a forced ventilation section. In such a case, the forced ventilation section can be common to a plurality of data storage units, preferably all the data storage units of the data processing device within a vertical column. Similarly, a separate chimney section with its own air circulation for cooling the processors can be shared by a plurality of processors within one vertical column. In this way, only a limited number of forced ventilation devices such as fans are required, and accordingly, it can be made significantly larger, so it operates at a lower rotational speed, reducing noise and energy consumption. Furthermore, it is possible to blow air through the air flow path, or draw air through the air flow path, or both.

[0106] In one embodiment of the present invention, the forced ventilation section, which is common to a plurality of data storage units and preferably also common to an integrated data access circuit and / or at least one data processor, is suggested to be provided for forcibly sending air through the flow path between the data storage units. It should be noted that such a forced ventilation section is preferably used only as an auxiliary ventilation section and operates only when necessary to maintain the system below the target temperature threshold. Operating the forced air ventilation section sporadically can avoid the concentration of local heat generation caused by a specific combination of accessed disks and is useful for avoiding imminent overheating. Using intermittent and / or variable speed cooling ventilation reduces noise and creates a more ergonomic environment for people working in the vicinity.

[0107] In a particularly highly reliable preferred embodiment, two separate fans can be used, especially alternately, and their redundancy improves reliability. In such an embodied invention, it is particularly preferred that the forced air ventilation section is arranged to use the same ventilation device to cool both a plurality of data storage units and an integrated data access circuit and at least one vertical chimney section including a single data processor and / or a plurality of data processors.

[0108] In one embodiment of the present invention, the data processing device includes a housing having a hinged door cover that can be swing - opened so that the data storage units are exposed and taken out substantially perpendicular to the PCB. When the door (or "cover") is closed, it is preferably fixed in the plug - in position for those data storage units. In this way, since the data storage units cannot move when the door is closed, additional components for fixing the data storage units in the plug - in position are not required even when intense vibrations or the like occur.

[0109] Furthermore, the present invention relates to a method of operating a data processing apparatus, which can provide a plurality of data storage units adapted to long-term storage of data and including a spare data storage unit, and in which data is redundantly distributed among the plurality of data storage units. The devised method includes testing at least some of the plurality of data storage units for malfunction and automatically responding to the detected malfunction by starting a rebuild on a spare disk or reserved data storage space.

[0110] It should be noted that the stored data remains accessible even when the redundancy of the data is re-established on the fly. This is because the lost parity disk can be reconstructed due to the accessibility of the stored data.

[0111] One of the typical tests of functionality relates to the response to an issued spin-up command. If the data storage unit does not start rotating properly, it can be considered faulty and will be replaced on a future maintenance schedule. However, it should be noted that an automatic rebuild process can be initiated when a unit is shown to be faulty. Although the number of faulty units may continue to increase, they do not have to be replaced immediately as long as there is sufficient free space in the system.

[0112] Accordingly, the present invention also seeks protection for a method of operating a data processing apparatus, which is adapted to long-term storage of data and includes spare data storage space on a data storage unit, and in which the data processing apparatus is adapted to access data redundantly distributed across a plurality of data storage units. The method includes testing at least some of the plurality of data storage units for malfunction and, in response to the detected malfunction, obtaining redundant distributed data from other data storage units to rebuild on the fly the data stored in the malfunctioning data storage unit before or during replacement of the malfunctioning data storage unit.

[0113] Regarding testing, multiple tests can be performed in various embodiments. At the time of this application, storing data on a hard disk with a rotating magnetic disk and a read / write head movable in proximity thereto remains one of the least expensive ways to store large amounts of data. However, in such disks, when the disk is instructed to start rotating (a "spin-up"), it may be found that one or more heads are attached to the disk, and a phenomenon may occur where the disk does not move or spin properly. This is referred to as "disk stiction". It is possible and useful to test whether disk stiction occurs in a given data storage unit. This test is basically performed each time a non-rotating hard disk is requested to spin up to acquire data. If stiction occurs, since it is usually after several months of inactivity, the spin-up serves as a kind of preventive maintenance. However, at low rotational speeds, the head does not float on the gas film, so the act of rotating the disk causes wear due to friction on the disk. Therefore, it is not preferable to spin up a stationary disk more frequently than necessary. Initially, a one-month period can be used during the spin-up test, but artificial intelligence can be incorporated into the system to determine the optimal time frame over time. Another useful strategy is to add disks whose spin-up tests are soon scheduled to a list. Since only D disks out of a total of T disks need to be read to obtain a file, the disks within the group of T disks and on this list are preferentially spun up to access the required data. Although wear occurs, since disk access is necessary to obtain data, two operations are completed in one action.

[0114] It should be noted that in some situations, such as genomics, seismic information, physics, archival records, data backup, etc., data may not be frequently accessible. For example, genomic data may be stored for over 50 years and is expected to be accessed very rarely for personalized health cards or censuses.

[0115] In such cases, it is recommended to spin up any given disk of the data processing device periodically, for example once a month, to prevent disk sticking, ensure the proper operation of the entire system, and enable the early replacement of a failed unit.

[0116] Other functional tests can also be performed. For example, during a standard process such as reading a given amount of data, it can be checked whether the heat generated by the data storage unit (or the energy consumption determined by the current or voltage drop across the device) is within a clearly defined range. In the case of standard data access, if a temperature rise significantly exceeding such a range is detected, or if inappropriate energy consumption is detected, the data storage unit is marked as malfunctioning or at least marked for further observation or additional tests.

[0117] It should also be noted that there are multiple tools available to check the "disk status". For example, the total number of read / write accesses to the cells of an SSD is limited. After a certain amount of read / write and / or erase accesses, the probability of failure increases. Therefore, it is a common practice to monitor the number of accesses and compare the usage of such data with the number of accesses guaranteed or expected without failure.

[0118] In a similar manner, parity errors can be recorded and the number thereof can be evaluated for both the SSD and the HDD. Also, the age of the data storage unit or the length of the rotation time since the first use is readily available, and this information can be evaluated in a malfunction test. From this, it can be seen that the malfunction test may be related to the detection of actual currently observable malfunctions or the determination of predictors of the likelihood of malfunctions in the near future.

[0119] It should be noted that predicting the likelihood of future malfunctions is particularly useful when the data processing device is maintained by a specialist who, for example, has to replace a malfunctioning data storage unit of a leased data processing device. It may be more cost-effective to replace a unit that is likely to malfunction in the near future rather than waiting until the system actually fails. This is particularly true when the data processing device is located in a remote area that is difficult or cumbersome for the system administrator to reach. Also, by replacing an old data storage unit with a small storage capacity with a data storage unit with a large data storage capacity, the overall storage capacity can be increased. When upgrading the system step by step, the disk with the lowest normality can be replaced first.

[0120] Also, preparing the data processing device for the future replacement of a data storage unit that is likely to fail soon or needs to be replaced soon is more useful than accessing redundant data distributed across multiple disks to re-determine the data stored on a disk that has already completely malfunctioned, if the data storage unit to be replaced soon is still operable and the data stored in this data storage unit can be accessed and re-distributed to other disks.

[0121] At that time, it should be noted that the lookup table or other META data information is also updated on the fly. In particular, information regarding the distribution of data on a specific disk can be deleted from the lookup table, file allocation table, and other META data files, thereby enabling an appropriate and intentional rebuild.

[0122] It should be noted that the same data processing device can be used with only SSDs, only HDDs, or a combination of SSDs and HDDs. If it is known in advance that certain data is accessed very frequently, for example, when it is necessary to compare all genomic data from a large number of patients with a specific set of genomic reference data, at least the more frequently accessed reference data should be stored on an SSD that generates significantly less noise when accessing the data, compared to the noise generated by a hard disk with less net energy consumption and mechanical moving parts. For such reasons, in a preferred embodiment, at least one SSD near the CPU can be used as a data cache.

[0123] In a preferred embodiment, it should be noted that at least one SSD is provided, and in particular, the SSD can function as a local cache for reconstructing data when rebuilding an array, or as an input cache and / or output cache. Considering maximizing speed, the data on the cache may not be encrypted. However, for the cache SSD, considerations for reducing data security issues are necessary. For example, such a caching SSD can be attached to a PCB on the back of a housing that is not easily accessible.

[0124] It should be noted that in current-generation data storage disks, the physical thicknesses of SSDs and HDDs are usually different. Therefore, it may be useful to alternate HDDs and SSDs to improve the airflow along the data storage unit.

[0125] The data processing device of the present invention provides a very high data storage capacity. Such a very high data storage capacity is used for data processed in a highly parallel manner in many embodiments. For example, in genomic analysis, many operations can be executed in parallel to compare two genomes with each other. This can be executed by a method of "streaming" data through an appropriate data processing device such as an FPGA or GPU. The advantage of streaming data through the aforementioned appropriate data flow architecture is that it is not necessary to fetch and decode instructions for each operand pair. Rather, once the processor is "configured", the configuration is maintained over many clock cycles even if dynamic reconfiguration is possible. Therefore, since energy is saved by using a (re)configurable device, the energy consumption of data processing when streaming the data normally stored in the large-capacity data processing device of the present invention is low. This makes it possible to provide local data processing within the data processing device. It should be noted that even when the overall processing speed may be slower compared to using a server equipped with an ultra-high-speed processor, the processing is still effective and competitive. This is because data processing can be significantly slowed down when a large amount of data needs to be transferred over a long distance, but there is no need to transfer data.

[0126] In this case, it is also understood that by processing the data locally and outputting only a specific result or summary result (for example, "The patient has an 81.2% probability of developing breast cancer considering the genomic data"), it becomes easy to protect privacy and ensure the security of the stored data. Also, depending on a specific task expected to be executed when processing the data, the number of data processing elements can be easily changed between data processing devices, and furthermore, it can be easily changed on the fly.

[0127] For this purpose, it is suggested that at least one data processor suitable for processing a data stream be provided together with a data processing device. In particular, the data processing device may include an FPGA and / or a GPU for processing data stored in and retrieved from a data storage unit. Since the data that is normally stored is processed in a highly parallelized manner, the FPGA, GPU, etc. can be provided directly on the PCB.

[0128] Furthermore, it should be pointed out that due to the high degree of parallelism in the data processing of the data that is normally stored, a large number of processing elements can be provided without particularly increasing the frequency of each data processing element, thus enabling high processing capabilities. This is useful because a large number of processing units can be provided to the data processing device, and in particular, the same (mechanical) interface as that used when connecting the data storage unit to the printed circuit board can be used.

[0129] In particular, it is possible to implement data processing array elements such as FPGAs or GPUs together with some additional control circuits, local cache memories, and local data storage such as a small SSD on a substrate having the same form factor as a 2.5-inch HDD or SSD. The data can be transferred to this unit using, for example, the same common SATA standard as the method by which data is transferred to the data storage unit implemented as a disk. When the data to be processed is stored in the local memory cache, data processing can be performed locally using a local SSD having a sufficient capacity such as 1 terabyte, which has a small form factor such as 1.8 inches and is sufficient to store the genomic data of several patients.

[0130] Next, the present invention will be described in more detail with reference to the drawings.

Brief Description of the Drawings

[0131]

Figure 1a

Figure 1b

Figure 1c

Figure 1d

Figure 1e

Figure 1f

Figure 2a

Figure 2b

Figure 2c

Figure 2d

Figure 3a

Figure 3b

[0132] According to FIG. 1a, reference numeral 1 generally indicates a data processing device 1, which is adapted for long-term redundant storage of data, generates heat during operation, and is provided with a plurality of data storage units 2 mounted to enable cooling, and receives the stored data, determines the number of information chunks related to the stored data such that a smaller subset of information chunks is sufficient for reproduction of the data, selects some of the plurality of data storage units for storing the information chunks, writes the information chunks to the selected data storage units, and acquires the information chunks from a subset of the selected data storage units to reproduce the data, and a data access circuit adapted to reproduce the data, wherein at least a part of the plurality of subsets of the data storage units is mounted such that it is cooled by a common vertical air flow that is at least partially common to the subset of the selected data storage units, and the data access circuit is adapted to determine the subset of the selected data storage units from which the information chunks are to be acquired according to the temperature of the data storage units. (A subset is "smaller" if it consists of fewer elements than the number of information chunks. That is, not all information chunks are required to reproduce the original data).

[0133] Physically, a common mounting printed circuit board 3 is provided for at least a plurality of data storage units 2 (in the embodiment shown in FIG. 1a, all data storage units 2 for long-term storage of data), and with respect to the mounting board 3, the data storage units 2 are mounted substantially vertically and spaced apart by a distance d, and an air flow path 4 is formed therebetween, enabling cooling to be provided by an air flow as indicated by arrow 5. Such an air flow path 4 is formed between all pairs of adjacent disks 2, but it will be understood that the line to reference numeral 4 is drawn from only some of the air flow paths. The same applies to arrow 5 which is shown only for a single air flow path between two rows of disks.

[0134] As shown in FIG. 1b, on the back side of the double-sided printed circuit board 3, there are provided a plurality of components including, in particular, an I / O interface 6, a local data processor GPU 7, data access circuits 8a, 8b, and a local data cache 9 for caching data obtained from the data storage unit 2 for local processing in the GPU 7 and for storing the data received before storing the information related to the data received in the data storage unit. Note that it should be noted that similar or identical components are provided in the data processing apparatuses shown in FIGS. 2 and 3.

[0135] The data processing apparatus 1 shown in FIG. 1a has a separate power supply (not shown) that can be connected to the PCB of the data processing apparatus 1 via a standard connector.

[0136] It should be noted that during normal operation, a housing (not shown) may be provided that firmly presses each data storage unit 2 into the corresponding pluggable connector when the front cover, such as a hinged front cover, is closed. Preferably, such a housing enables the data processing apparatus to be fixed to the wall with the back side shown in FIG. 1b facing the wall.

[0137] Another method of accommodating the data storage device is shown in FIGS. 1d to 1f. Here, a mounting case is shown into which the data storage device can be inserted into a larger frame. Thereby, the replacement of the entire case can be performed by a simple manual operation and only robust parts need to be handled, so that it is less necessary to dispatch a person who has received special training to replace a faulty device.

[0138] It should be noted that when such a system is adopted, it is usually pointed out that a very large-scale data storage system is constructed. This is also useful for equalizing the heat load related to data acquisition. It should be noted that usually, the number of units shown in FIGS. 1d to 1f connected to the frame needs to be larger than the number of information chunks into which the data file or a part thereof is divided. As a result, only one information chunk can be arranged for each data file or a part thereof in each storage device connected to a larger frame.

[0139] The I / O interface 6 can be any standard input / output interface such as a wireless interface circuit, or preferably, a wired LAN connector, for example, a glass fiber connector.

[0140] The data storage unit 2 in the example shown in FIG. 1a is arranged in 2 rows and 23 columns. The exact number of data storage units 2 of the data processing device shown is merely an example, and it will be understood that the total number of data storage units 2 can be changed, similar to both the number of rows and columns, for example, by comparing FIGS. 2 and 3. It should be noted that in FIG. 2, some columns are left empty to display the connectors. In some of the embodiments shown, a different number of data storage units per row are intentionally shown to indicate that the number of data storage units in a row is not limited to 23. However, it is useful to set a sufficient number so that the temperature rise due to the disk read load can be evenly distributed. For example, it should be noted that at least 10, 15, or 20 disks can be provided for this purpose.

[0141] On the other hand, consideration needs to be given to the fact that the device can be moved. The weight of a conventional (3.5-inch) hard disk is about 500 g to 850 g. If the number of hard disks provided on the PCB is too large, it becomes difficult to carry the data storage device or its components. Therefore, it is reasonable to limit the number of disks so that the total weight of the units that need to be lifted is maintained at 5 kg to 50 kg, preferably 10 to 40 kg, particularly 12 to 30 kg. Note that in some of the illustrated embodiments, particularly in the embodiment of FIG. 1, it should be noted that an additional metal or plastic frame can be attached to the PCB in a manner that allows for lifting of the PCB or at least insertion into the case. This makes it easier to handle the substrate, and since the frame is slightly separated from the PCB than the data storage unit, removal of a failed disk, etc. may also become easier. A metal case as shown in FIGS. 1d to 1f can also be useful for improving handling.

[0142] In a preferred embodiment, an LED can be lit to indicate the position of a failed disk. When a metal or plastic frame is provided, such an LED can be arranged within the frame or at an exact position in the frame using, for example, a transparent light conductor.

[0143] In the illustrated embodiments, all of the data storage units 2 are hard disks having a 2.5 - inch form factor and a thickness of about 15 mm. Note that the blocks shown in FIGS. 1 to 3 represent the outer envelopes rather than the actual casings of each data storage unit 2. Although the drawings are not to exact scale, since the air flow path 4 has a width of about 2 - 5 mm for d, it can be estimated that each data storage unit is about 2 - 5 mm apart from adjacent units.

[0144] The hard disk that constitutes the data storage unit 2 in the illustrated example has a SATA interface in which a pluggable connector is directly provided on the PCB board 3. The holding force of a standard SATA connector is sufficient to keep the hard disk connected to a predetermined position even considering internal vibrations of each data storage unit and vibrations that occur commonly in all data storage units without external vibrations of the entire data processing apparatus. However, when replacing the failed data storage unit 2 at the center of the array, it is possible to completely overcome the holding force without tools or with only simple tools such as pliers. In the embodiment shown in FIG. 1, each hard disk or other data storage unit has its own temperature sensor (not shown), and a temperature signal related to the temperature detected by each temperature sensor is transmitted to the data access circuit 8. This is preferable, but particularly in a large-scale data storage center, since data is written to disk storage units installed in remote locations, it is not necessary to provide temperature sensors for all disks, and it is necessary to note that several sensors are installed distributed throughout the system. However, of course, it is preferable for all hard disks or at least in all cases where a plurality of data storage units 2 are stored to have temperature sensors.

[0145] The interface 6 is adapted to provide a bandwidth and improve a speed suitable for a specific amount of data stream that needs to be stored. For example, in a production facility where a large-scale production machine equipped with a very large number of high-frequency sensors is installed, the I / O interface 6 may have a wider bandwidth than a medical research institute that needs to store genomic data from a limited number of patients every day. The I / O interface 6 is also adapted to receive a request to provide specific information that can be derived from the data stored in the data storage unit 2 by the data processor 7.

[0146] The data processor 7 is adapted to calculate from the received data with appropriate redundancy information distributed on the disks in order to redundantly store, according to an appropriate algorithm, the data coming in via the interface 6 onto the data storage unit 2. The data processor 7 is also adapted to obtain information from the disk 2 and to re-determine the underlying original data therefrom. The data processor 7 is also adapted to receive (sensor) information related to the current state of each data storage unit 2, in particular in the illustrated embodiment, the current rotational state, the current temperature, as well as the service life of each data storage unit, the remaining capacity and the used capacity of each data storage unit, the health check information of each data storage unit, in particular data regarding the number of previously observed disk errors. The data processor 7 is also adapted to encode (encrypt) the stored data and to decrypt the obtained data.

[0147] The data processor 7 is further adapted to generate meta-information related to the location where specific information is stored, i.e., on which of the data storage units 2 within the array of data storage units 2. Here, the hard disks constitute the data storage units 2 of the illustrated example, and information related to a given data file or a part of the data is stored on each block of the hard disks.

[0148] In the illustrated example, the data processor 7 is a graphics processing unit GPU having the function of addressing a limited number of data storage units 2 via the SATA interface by means of the access circuits 8a, 8b, and since more different data storage units 2 can be addressed, the total number of hard disks addressable in the data processing device 1 can be increased.

[0149] The data processor 7 is adapted to process data and generate results that can be output via the interface 6 in response to at least the number of permitted requests, while the data processor 7 is preferably adapted to reject prohibited requests or requests that have not been agreed upon in the past.

[0150] The cache 9 is shown as including a random access memory 9a and a solid state disk 9b of appropriate size. On the other hand, data is transferred to the data storage unit via the interface 6 for the purpose of processing data stored in the data storage unit 2 and data obtained from the data storage unit 2 for processing by the data processor 7. Note that no RAM module is inserted into the standard connector for the random access memory, and it should be noted that part of the installed RAM can also be used to store intermediate results when data is processed on the PCB by the data processor 7.

[0151] It is suggested above that the data processing device is attached to a housing suspended on a wall and air flows into the housing from below and rises due to the transfer of heat from the data processing device to the air, but it is necessary to note that other possibilities also exist.

[0152] For example, spacers can be provided under the housing to place the data processing device on a table or the floor. It should be understood that such spacers also allow air to flow under the housing and enable cooling of the data processing device.

[0153] Also, it will be understood that the spacers can be arranged so that the data processing device can be easily moved underground, such as under a table or floor. For example, wheels can be provided under the data processing device. This is particularly advantageous when a number of data processing devices are provided in close proximity to each other. The number of connectors that need to be provided for each data processing device is small. For example, since it is composed of only an appropriate power connection to a power source or power outlet and one high-bandwidth data connector, the necessary connectors can be easily made long enough so as not to impede the movement of the data processing device.

[0154] In this way, the data processing device can be made easily movable, and the storage density can be further increased. In particular, considering the fact that the weight of the data processing device is significantly lighter than that of the rack-type solution, the static constraints of the building are significantly relaxed compared to the rack-type solutions known in the prior art.

[0155] The algorithm is known to distribute information across disks, but at least in the preferred embodiments, it is emphasized that the array can be rebuilt on the fly, and thus redundancy can be maintained even if some disks have already failed and need to be replaced. This is illustrated below with respect to a table, assuming that three information parts a1, a2, a3; b1, b2, b3; c1, c2, c3; d1, d2, d3; e1, e2, e3; f1, f2, f3; g1, g2, g3; h1, h2, h3; k1, k2, k3; l1, l2, l3 are derived from each of the arbitrary data blocks A, B, C, D, E, F, G, H, K, L and stored on the disks. Note that in the preferred embodiments, it should be noted that the received data file is first split into a plurality of data parts, and then from these data parts, the respective redundant information to be stored on the disks is determined. For example, the first data file may include data blocks A, B, and C. The second data file may include data blocks D and E. The third data block may include data blocks F, G, H, and L. Thus, in this example, note that the information from each data file is distributed across more than three disks.

[0156] Note that in the actual embodiments, more than three information parts, for example 15 information parts, are generated, and in particularly secure embodiments, simultaneous failures of up to five data storage units are tolerated, but in this example, only one data storage unit is tolerated to fail.

[0157] Table 1 shows how the information part is stored in the six disks D1 to D6. This table indicates that the number of blocks on each disk remains empty, showing that the storage space of the disk remains unused. Overall, it can be seen that the data is somewhat randomly distributed among the six disks. Here, assume that Disk 3 has failed as shown in Table 2. To maintain redundancy, it is necessary to store the data that was previously stored on Disk D3 on the remaining non-failed disks. This can be implemented by a method that prevents the still-operating disks from receiving multiple information parts of each data packet a-1. The pattern of the results shown in Table 3 is as follows.

[0158] After D3 fails, what is done to rebuild the data from D3 is to obtain the META information file from the working disk and determine the location where the data necessary for redundancy reconstruction is stored. Thereby, a1, d2 are read from D1, b1, e2 are read from D2, b3, c2 are read from D4, a3, d3 are read from D5, c3, e3 are read from D6 can be determined.

[0159] Next, a2, b2, c1, d1, e1 that were previously stored on D3 can be reconstructed. In this case, it is necessary to determine where to store the reconstructed a2. a2 can be written to any disk other than D1 and D5. Similarly, b2 can be written to any disk other than D2 or D4. c1 can be written to any disk other than D4 and D6. d1 can be written to any disk other than D1 or D5. e1 can be written to any disk other than D2 and D6. In the sample given in Table 3, c1 is written to D1, a2 is written to D2, e1 is written to D4, b2 is written to D5, and d1 is written to D6. The meta file is META *It can be updated, and the META file can be replaced or deleted. Since this can be done before replacing D3, the system continues to function and redundancy is re-established as soon as possible.

[0160] It should be noted that although some implementation forms of the data processing device disclosed in this specification clearly benefit from using the air flow path between data storage units, it is pointed out that it is possible to implement an improved data device without providing an air flow path based on the ideas suggested in this specification. For example, when only the security of data against loss and / or theft is considered, in particular, all primary data is deleted, and only the corresponding redundant "parity" information is stored on a large number of disks x + y, where usually ∈[8…20], [y∈[2…10], z∈[2…10], and usually x + y≧15, y≧5, and disks z are added to the set of x. In some cases, it may be sufficient to implement the system using erasure coding based on the Mojette transform. In this way, the above access and test schemes can be easily used without an air flow path, but of course they can also be used when there is an air flow path.

[0161] It will be understood that to store a very large amount of data, it is necessary to use a very large number of data storage units. These are usually controlled by a plurality of different data access circuits such as local GPUs, CPUs, FPGAs, etc. To obtain data, a communication channel can be provided between such units using a known protocol, such as the Ethernet protocol. It is preferable to use Ethernet routers and / or switches and / or interfaces for other protocols mounted on a plurality of PCBs, preferably each PCB. The connection can be provided in a tree-like manner. In such a case, the latency and the energy of data transmission can be considered, taking into account the distance of the tree when obtaining data.

[0162] Also, it is preferable to use a tree-like topology, which allows the data storage units to be easily grouped into branches, twigs, leaves, etc., reducing the number of connections (edges) required at each node. This is advantageous for another reason. The data storage unit according to the present invention can be operated so that the heat density is kept low, making it possible to increase the packing density without causing overheating. In particular, by arranging a plurality of data storage units in a number of mobile racks, the packing density can be increased. More specifically, a plurality of PCBs, especially those housed in a housing equipped only with hot-pluggable data transmission / power connectors on the back surface, can be arranged in a shelf-like rack. Since the interconnection between such racks requires only a very limited number of power outlets, the racks can be moved without the risk of mutual disconnection or disconnection from the power supply. This allows the use of mobile racks that can be moved close to each other without physical access. Mobile shelves are well known, for example, for storing books in an archive. In a similar manner, data storage units can be arranged in such mobile racks. However, especially when the disks are rotating, care must be taken to ensure that the racks do not sway when moved. However, in such cases, the risk can be minimized by appropriately distributing access to the disks in the non-moving shelves or at least temporarily "parking" the disks during the acceleration of the shelves.

[0163]

Table 1

[0164]

Table 2

[0165]

Table 3

[0166] In this application, although it is disclosed that the connector of one embodiment is a SATA connector, other interfaces and standards, such as eSata, IDE, SAS, SCSI, NVMe, etc. can also be used.

Claims

1. A data processing apparatus (1), a plurality of data storage units (2), which generate heat during operation of the plurality of data storage units (2), a data access circuit, receiving data to be stored, determining the number of information chunks related to the data to be stored such that the data to be stored is reproducible based on a subset of the information chunks without requiring all of the information chunks, selecting some of the plurality of data storage units for storing the information chunks, writing the information chunks to the selected data storage units, determining a subset of the selected data storage units based on the temperature of each of the selected data storage units into which the information chunks are written, and retrieving the information chunks from the subset of the selected data storage units for reproduction of the data, retrieving the information chunks from the determined subset of the selected data storage units and reproducing the data a data access circuit adapted to perform, comprising, at least some of the subset of the selected data storage units, at least some of the subset of the selected data storage units are mounted such that they are cooled by a common vertical air flow and, the data access circuit, is configured to determine a subset of the selected data storage units for retrieving the information chunks from the subset of the selected data storage units based on a heat load determined to be caused by the retrieving and / or to equalize a temperature gradient by which the data storage units are cooled, a data processing apparatus (1) adapted as such.

2. The data access circuit, accesses data redundantly distributed across the plurality of data storage units, also considering the current temperature of the data storage units, to determine data storage units in which the data is distributed during writing. is adapted as such, The data processing apparatus (1) according to Claim 1.

3. The data access circuit, When accessing the data storage unit, taking into account the current operating states of multiple or all of the data storage units adapted to access data redundantly distributed across the plurality of data storage units as described, The data processing apparatus (1) according to claim 1 or 2.

4. Further including a PCB, On the PCB, connectors for multiple or all of the data storage units are attached, The data storage unit is plug-connected to the connector, The data processing apparatus (1) according to any one of claims 1 to 3.

5. The PCB is a double-sided PCB, On one side of the PCB, At least one of the data access circuit and a part of the data storage unit is attached, On the other side, at least a part of the remaining data storage units is detachably connected, The data processing apparatus (1) according to claim 4.

6. The data processing apparatus includes a housing having an openable cover such that the data storage unit can be taken out substantially perpendicular to the PCB. The data processing apparatus (1) according to claim 4 or 5.

7. The data processing apparatus is adapted to store data in an encrypted state, The data processing apparatus (1) according to any one of claims 1 to 6.

8. At least a part of the plurality of data storage units is an HDD and / or an SSD. The data processing apparatus (1) according to any one of claims 1 to 7.

9. At least a part of the data storage units are arranged parallel to each other and / or stacked, and / or at least eight data storage units are provided. The data processing apparatus (1) according to any one of claims 1 to 8.

10. The data storage unit is arranged in an array of columns and rows. The data processing apparatus (1) according to any one of claims 1 to 9.

11. The data processing apparatus (1) includes at least one data processor for processing data stored in and / or obtained from the data storage unit, The data processor is selected from the group of CPU, DSP, GPU and / or FPGA and / or a combination thereof, The data processing apparatus (1) according to any one of claims 1 to 10.

12. A forced ventilation unit common to a plurality of data storage units is provided to forcibly send air into an air flow path formed between the data storage units. The data processing apparatus (1) according to any one of claims 1 to 11.

13. The forced ventilation unit is configured to use the same ventilation device to cool both of the plurality of data storage units and at least one of a data access circuit and / or a data processor. The data processing apparatus (1) according to claim 12.

14. A method of operating the data processing apparatus (1) according to any one of claims 1 to 13, wherein a plurality of data storage units are provided, adapted for long-term storage of data and including spare data storage units, the data being redundantly distributed across the plurality of data storage units, the method including testing for malfunction of at least some of the plurality of data storage units and, in response to a detected malfunction, rebuilding data stored in the malfunctioning data storage unit on one or more spare data storage units. A method. ​

Citation Information

Patent Citations

  • A storage system and a method of cooling storage media within a data storage system

    EP2549847A2

  • Disk array device

    JP1996137631A

  • System and method for temperature control for direct-access storage device (DASD) array

    JP1996335143A

  • Disk array device

    JP2000187975A

  • Disk array device

    JP2001332078A