[go: up one dir, main page]

CN109144409A - Data processing method and device, storage medium, data system - Google Patents

Data processing method and device, storage medium, data system Download PDF

Info

Publication number
CN109144409A
CN109144409A CN201810759961.9A CN201810759961A CN109144409A CN 109144409 A CN109144409 A CN 109144409A CN 201810759961 A CN201810759961 A CN 201810759961A CN 109144409 A CN109144409 A CN 109144409A
Authority
CN
China
Prior art keywords
data
offset address
background logic
logic offset
control unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810759961.9A
Other languages
Chinese (zh)
Other versions
CN109144409B (en
Inventor
许勇
陈虎
仇幼成
苏龙成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201810759961.9A priority Critical patent/CN109144409B/en
Publication of CN109144409A publication Critical patent/CN109144409A/en
Application granted granted Critical
Publication of CN109144409B publication Critical patent/CN109144409B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本申请公开了一种数据处理方法及装置、存储介质、数据系统,涉及数据处理技术领域。该数据处理方法包括:向磁盘阵列中的目标磁盘发送读请求,该读请求用于请求读取第一数据;接收目标磁盘发送的读响应,读响应包括第二数据,第二数据包括第二数据本体和第二后台逻辑偏移地址;将第二后台逻辑偏移地址和预先记录的第一数据的第一后台逻辑偏移地址进行比较;当第二后台逻辑偏移地址和第一后台逻辑偏移地址不一致时,确定第一数据的后台数据引用错误。有效的解决了目前无法感知后台的读写偏移,导致数据出现错误的问题。

The present application discloses a data processing method and device, a storage medium and a data system, and relates to the technical field of data processing. The data processing method includes: sending a read request to a target disk in a disk array, where the read request is used to request to read first data; receiving a read response sent by the target disk, where the read response includes second data, and the second data includes second data The data body and the second background logic offset address; compare the second background logic offset address with the pre-recorded first background logic offset address of the first data; when the second background logic offset address and the first background logic offset address are compared; When the offset addresses are inconsistent, it is determined that the background data reference of the first data is incorrect. It effectively solves the problem that the read and write offset in the background cannot be sensed at present, resulting in data errors.

Description

Data processing method and device, storage medium, data system
Technical field
This application involves technical field of data processing, in particular to a kind of data processing method and device, storage medium, number According to system.
Background technique
Current data system generally includes one or more hosts (host), and the disk array connecting with host. Wherein, disk array includes the array control unit (also referred to as storage array) connecting with each host, and with the array control unit One or more disks of connection.
In order to guarantee the integrality of the data in disk array, it is currently suggested data completeness guarantee region (Data Integrity Field, DIF) technology.The DIF technology generally meets T10 standard, T10 standard regulation, the number of every 512 bytes According to the region DIF for especially increasing by 8 bytes behind storage region, which also referred to as protects information (Protection Information, PI) region.In the region PI can with filling circulation redundancy check (Cyclical Redundancy Check, CRC) value and logical block addresses (Logical Block Address, LBA).Array control unit in Array Disk receives When the reading order sent to host is read out the operation of data, array control unit can determine data itself by crc value Whether correct, array control unit can also determine whether data are correctly quoted by LBA.
When array control unit carries out the read-write operation on disk array backstage, it is easy to produce the read-write offset on backstage, is caused The misquotation of subsequent back-end data, and data-bias caused by read-write operation of the current T10 standard just for host into Therefore row verification, the read-write offset (namely the misquotation that can not perceive back-end data) that can not perceive backstage need a kind of sense Know the data processing method of backstage read-write offset.
Summary of the invention
The embodiment of the present application provides a kind of data processing method and device, storage medium, data system, is able to solve mesh Preceding array control unit can not perceive the problem of read-write offset on backstage.The technical solution is as follows:
In a first aspect, providing a kind of data processing method, the method is applied to the array control unit in disk array, The described method includes:
Target disk into the disk array sends read request, and the read request reads the first data for requesting;
The reading response that the target disk is sent is received, the reading response includes the second data, and second data include Second body of data and the second background logic offset address, the second background logic offset address are second body of data It is determined by the array control unit based on second body of data before being written into the target disk;
First background logic of the second background logic offset address and pre-recorded first data is deviated Address is compared, and the first background logic offset address is the first body of data determination based on first data;
When the second background logic offset address and inconsistent the first background logic offset address, described in determination The back-end data misquotation of first data.
In this application, when array control unit is when carrying out the read operation on disk array backstage, array control unit is first Available second data include the second body of data and the second background logic offset address to the second data, then by second Background logic offset address is compared with the first background logic offset address of the first pre-recorded data, when the second backstage When logical offset address and inconsistent the first background logic offset address, determines the back-end data application error of the first data, have Effect solves the read-write offset that can not perceive backstage at present, and data is caused the problem of mistake occur.
Optionally, before the target disk described into the disk array sends read request, the method also includes:
The first background logic offset address is determined based on the first body of data to be stored;
Generate write request, for the write request for requesting to be written first data, said write request includes described the One data, first data include first body of data and the first background logic offset address;
The write request is sent to the target disk.
In this application, when array control unit is when carrying out the write operation on disk array backstage, array control unit can be with The first background logic offset address is determined based on the first body of data to be stored, first body of data and the first background logic Offset address may be constructed the first data, which can be sent to target disk by array control unit, so as to target magnetic Disk can store first data.In this application, the first body of data is based in array control unit determine that the first backstage is patrolled After collecting offset address, which can be recorded, read again first number convenient for subsequent According to when, backstage that array control unit can carry in the first background logic offset address based on record and the data that read Logical offset address is compared.
Optionally, the array control unit stores the data of read-write in the form of sector, and each data read and write include Body of data and protection information PI, the PI includes aiming field, and the aiming field is for carrying based on the data originally The background logic offset address that body determines.In this application, based on data (namely the data being read or the number being written into According to) ontology determine background logic offset address can recorde, in the aiming field in PI corresponding with the body of data.
Optionally, the array control unit stores the data of read-write in the form of sector, and each data read and write include Body of data and PI, each PI includes indicating bit, and the indicating bit is used to indicate whether the data support metadata Customized, when the data support that metadata is customized, the PI further includes aiming field, and the aiming field is for carrying The background logic offset address that ontology determines based on the data.
By adding indicating bit in PI, when the indicating bit designation date in PI supports that metadata is customized, the data In the corresponding background logic offset address of body of data just can recorde in the PI in the data.When the indicating bit in PI not When supporting that metadata is customized, array control unit avoids unnecessary accessing cost for data without searching aiming field.
Optionally, after the reading response for receiving the target disk transmission, the method also includes:
The indicating bit for detecting the PI in second data, when the indicating bit of the PI indicates that second data support member When data self, the aiming field of the PI in second data reads the second background logic offset address.
Optionally, the generation write request, comprising:
Detect whether the array control unit supports the metadata of data customized;
When the metadata of array control unit support data is customized, first data, first number are generated According to including first body of data and PI, the PI in first data includes indicating bit and aiming field, the indicating bit Being used to indicate first data supports metadata customized, and the aiming field is for carrying the first background logic offset Address.
Optionally, the PI includes verification and GRD field, using label A PP field and reference label REF field, described Aiming field is the either field in the PI.
Optionally, the background logic offset address is stored in the reserved bit position in the APP field of the PI.
Optionally, the background logic offset address is stored in unused data or sky in the REF field of the PI In white bit.
The application is to have adjusted PI format on the basis of current T10 standard, not only be may be implemented to current PI lattice Formula it is backward compatible, it is also possible that array control unit can perceive the read-write offset on backstage, the read-write behaviour in following embodiment It is the read-write operation that array control unit carries out disk array backstage.
Optionally, the background logic offset address is the offset address of disk offset address or data block.
Optionally, the method also includes:
After the back-end data misquotation for determining first data, using the redundancy or error correcting code of disk array EC redundancy carries out data reparation.The data effectively avoided mistake are diffused in disk array.
Second aspect provides a kind of data processing equipment, and described device is applied to the array control unit in disk array, Described device includes:
First sending module sends read request for the target disk into the disk array, and the read request is used for The first data are read in request;
Receiving module, the reading response sent for receiving the target disk, the reading response includes the second data, described Second data include the second body of data and the second background logic offset address, and the second background logic offset address is described What the second body of data was determined by the array control unit based on second body of data before being written into the target disk;
Comparison module, for by the first of the second background logic offset address and pre-recorded first data Background logic offset address is compared, and the first background logic offset address is the first data based on first data What ontology determined;
First determining module, for working as the second background logic offset address and the first background logic offset address When inconsistent, the back-end data misquotation of first data is determined.
Optionally, described device further include:
Second determining module, for determining the first background logic offset ground based on the first body of data to be stored Location;
Generation module, for generating write request, first data are written for requesting in the write request, and said write is asked It asks including first data, first data include first body of data and first background logic offset ground Location;
Second sending module, for sending the write request to the target disk.
Optionally, the array control unit stores the data of read-write in the form of sector, and each data read and write include Body of data and protection information PI, the PI includes aiming field, and the aiming field is for carrying based on the data originally The background logic offset address that body determines.
Optionally, the array control unit stores the data of read-write in the form of sector, and each data read and write include Body of data and PI, each PI includes indicating bit, and the indicating bit is used to indicate whether the data support metadata Customized, when the data support that metadata is customized, the PI further includes aiming field, and the aiming field is for carrying The background logic offset address that ontology determines based on the data.
Optionally, described device further include:
Detection module, for detecting the indicating bit of the PI in second data, described in the indicating bit instruction of the PI When second data support that metadata is customized, the aiming field of the PI in second data reads second background logic Offset address.
Optionally, the generation module, is used for:
Detect whether the array control unit supports the metadata of data customized;
When the metadata of array control unit support data is customized, first data, first number are generated According to including first body of data and PI, the PI in first data includes indicating bit and aiming field, the indicating bit Being used to indicate first data supports metadata customized, and the aiming field is for carrying the first background logic offset Address.
Optionally, the PI includes verification and GRD field, using label A PP field and reference label REF field, described Aiming field is the either field in the PI.
Optionally, the background logic offset address is stored in the reserved bit position in the APP field of the PI.
Optionally, the background logic offset address is stored in unused data or sky in the REF field of the PI In white bit.
Optionally, the background logic offset address is the offset address of disk offset address or data block.
Optionally, described device further include:
Repair module, for after the back-end data misquotation for determining first data, using the superfluous of disk array Remaining technology or error correcting code EC redundancy carry out data reparation.
The third aspect provides a kind of data system, comprising:
One or more hosts, and the disk array connecting with the host, the disk array include antenna array control Device and at least one disk, the array control unit include any data processing equipment of second aspect.
Fourth aspect provides a kind of computer readable storage medium, is stored on the computer readable storage medium Instruction realizes the data processing as described in first aspect is any when described instruction is executed by the processor in array control unit Method.
Technical solution bring beneficial effect provided by the embodiments of the present application includes at least:
When write operation of the array control unit on progress disk array backstage, target disk can be write first data into In, which includes the first body of data and the first background logic offset address.When array control unit is carrying out disk battle array When arranging the read operation on backstage, array control unit is available first to the second data, which includes the second data sheet Body and the second background logic offset address, then will be after the second background logic offset address and the first of the first pre-recorded data Platform logical offset address is compared, when the second background logic offset address and inconsistent the first background logic offset address, Determine the back-end data application error of the first data, effective solution can not perceive the read-write offset on backstage at present, cause to count According to the problem for mistake occur.Also, the first data of back-end data application error can also be repaired, effectively be avoided The data of error are diffused in disk array.
Detailed description of the invention
Fig. 1 is a kind of structural schematic diagram of data system;
Fig. 2 is the schematic diagram of the data storage areas and the region PI in a kind of data;
Fig. 3 is the data format schematic diagram in a kind of region PI;
Fig. 4 is a kind of flow chart of data processing method provided by the embodiments of the present application;
Fig. 5 is the schematic diagram of the aiming field in a kind of region PI provided by the embodiments of the present application;
Fig. 6 is a kind of block diagram of data processing equipment provided by the embodiments of the present application;
Fig. 7 is the block diagram of another data processing equipment provided by the embodiments of the present application;
Fig. 8 is the block diagram of another data processing equipment provided by the embodiments of the present application;
Fig. 9 is the structural schematic diagram of another data processing equipment provided by the embodiments of the present application.
Specific embodiment
To keep the purposes, technical schemes and advantages of the application clearer, below in conjunction with attached drawing to the application embodiment party Formula is described in further detail.
Referring to FIG. 1, Fig. 1 is a kind of structural schematic diagram of data system, which may include: one or more Host 200, and the redundant array of inexpensive disks 1 00 being connect with host 200.The redundant array of inexpensive disks 1 00 may include array control unit 101 and One or more disks 102 of connection are established with the array control unit 101.
In data system, array control unit 101 stores the data of read-write in the form of sector, and each sector may include The data of 512 bytes.It is provided according to T10 standard, the data of read-write can be divided into data storage areas and the region PI, example Such as, as shown in Fig. 2, can store the data of 512 bytes namely the data of a sector, the region PI in data storage areas The PI that can store 8 bytes can guarantee the integrality of the data in disk array by the PI.
The PI is mainly used to prevent and detect static data destruction, which destroys including the hardware in data channel Data corruption caused by failure and software vulnerability (bug) and disk is undetectable and the error in data etc. corrected.Such as Fig. 3 institute Show, Fig. 3 is the data format schematic diagram in a kind of region PI, and the first two byte is verification and (Guard, GRD) field, in GRD Crc value is filled in field, for protecting the integrality of data itself;Followed by 2 byte apply label (Application Tag, APP) field, usually saved in APP field user it is customized and apply relevant information;It is finally the ginseng of 4 bytes Examine label (Reference Tag, REF) field, the LBA in Ref field, for protecting the correctness of data storage location.
But (this is a relative concept from the background, refers to data on the progress of array control unit 200 redundant array of inexpensive disks 1 00 backstage Inside the region that host can not perceive in system, such as redundant array of inexpensive disks 1 00) read-write operation when, for example, array control unit 200 It is reconstructed and writes, capitalizes, small letter or degrading when the operation such as writing, be easy to produce the read-write offset on backstage.Due to the number in Ref field It is that host 200 generates according to (for example, LBA), in T10 standard, array control unit 101, which haves no right to rewrite in the Ref field, to be had Data, therefore data-bias caused by read-write operation of the current T10 standard just for host 100 is verified, can not Perceive the read-write offset on backstage.
In data processing method provided by the embodiments of the present application, by carrying the data sheet based on read-write in read-write requests Background logic offset address determined by body, with verify data whether backstage misquotation, thus realize perception backstage read-write Offset.Wherein, the format of read-write requests can there are many, as long as guaranteeing effectively carry the data institute of read-write in read-write requests Corresponding background logic offset address.
Exemplary, in the embodiment of the present application, array control unit stores the data of read-write in the form of sector, each to be read and write Data (namely the data being read or the data being written into) include body of data and PI, which can recorde In data storage areas as shown in Figure 2, PI be can recorde in the region PI as shown in Figure 2.
In the embodiment of the present application, which may include aiming field, the aiming field for carry based on data (namely by The data of reading or the data being written into) the determining background logic offset address of ontology.Optionally, background logic offset ground Location can be disk offset address or the offset address of data block.In the embodiment of the present application, when array control unit carries out backstage Read-write operation when, whether which can determine backstage based on the background logic offset address that carries in aiming field There is the problem of read-write offset.
It should be noted that please refer to the PI in T10, PI provided by the embodiments of the present application also may include GRD field, The format of APP field and REF field, the PI can refer to Fig. 3.Wherein, aiming field can for GRD field, APP field and Either field in REF field.
For example, aiming field is APP field, reserved bit position is provided in APP field, the background logic of data deviates ground Location can store in the reserved bit position.In another example aiming field is REF field, the background logic offset address of data can To be stored in the unused data (for example, compressed data or metadata) or dummy bit position of the REF field.
In this way, the embodiment of the present application has adjusted PI format on the basis of current T10 standard, not only may be implemented pair Current PI format it is backward compatible, it is also possible that array control unit can perceive backstage read-write offset, following embodiment In read-write operation be array control unit carry out disk array backstage read-write operation.
The embodiment of the present application is by taking backstage logical offset address carries in PI as an example, and following embodiment is to the number in the application It is schematically illustrated according to processing method:
Referring to FIG. 4, Fig. 4 is a kind of flow chart of data processing method provided by the embodiments of the present application, this method is used for Array control unit in disk array, this method comprises:
Step 401 determines the first background logic offset address based on the first body of data to be stored.
In the embodiment of the present application, when needing the first body of data (data i.e. to be written) to be written in target disk, It needs first to determine the target disk for needing to need to be written by first body of data according to first body of data, and in mesh magnetic The destination address for needing to be written in disk, the destination address include physical address and the first background logic offset address, antenna array control Device is subsequent the first body of data can be written in target disk according to the destination address.
Step 402 generates write request.
After array control unit determines the first background logic offset address based on the first body of data, which can To generate write request, for the write request for requesting the first data of write-in, which includes by the first body of data and first First data composed by background logic offset address.In first data, as shown in figure 5, the first body of data can be remembered Record is in data storage areas, and the first background logic offset address can recorde in PI, in the embodiment of the present application, after first Platform logical offset address is recorded in the aiming field in PI, for example, the aiming field can be APP field.
It should be noted that the request further includes above-mentioned destination address, which is used to carry out for target disk The write-in of one data.
Step 403 sends the write request to target disk.
In the embodiment of the present application, after write request is sent to target disk by array control unit, target disk can basis The destination address carried in the write request writes first data into the destination address corresponding position in target disk.Optionally, exist After target disk is written with the first data, write response can be generated, and be sent to array control unit, to inform array control unit number According to being written successfully.
It should be noted that array control unit can also generate crc value corresponding with the first body of data, writes and ask in generation When asking, which is written in PI.Before the write-in that target disk carries out the first data, target disk can be based on first Body of data generates crc value, and carries out completeness check with the crc value being stored in PI, if verification passes through, illustrates to be written The first data be complete data, then target disk can be written into first data.
Step 404 receives the write response that target disk is sent.
The write response may include the instruction information for being used to indicate the first data and having been written into target disk.In array control After device processed receives the write response of target disk transmission, the write-in success of the first data can be determined.
It should be noted that it is that the first data carry out write operation that above-mentioned steps 401 to step 404, which is with data to be written, Process for be illustrated, in an optional implementation manner, through the above steps 401 to step 404 can with complete The write operation of other pairs of data, writing process can refer to the writing process of above-mentioned first data.
Step 405, the target disk into disk array send read request.
When array control unit has determined the target disk that the first body of data needs are written and needs to write in mesh disk After the destination address entered, the mark and destination address of the target disk, when needing to read the first data, array can recorde Controller can the mark based on the target disk to target disk send read request, the read request for request read first number According to the read request carries the destination address.
Step 406 receives the reading response that target disk is sent.
Since array control unit is when carrying out data write operation, it is written into data and is integrally written in disk, it should Data to be written include therefore body of data and the corresponding background logic offset address of the body of data are read from disk Data also include body of data and corresponding background logic offset address, it is upper that the embodiment of the present application assumes that target disk is based on The data for stating read request reading are the second data, which includes the second body of data and the second background logic offset ground Location, then the target disk generates the reading including second data based on second data and responds, and is sent to array control unit.It should Second background logic offset address be second body of data before being written into target disk by array control unit be based on this second What body of data determined, determination process can refer to above-mentioned steps 401.
It is step 407, the second background logic offset address and the first background logic of the first pre-recorded data is inclined Address is moved to be compared.
Be based on after the first body of data determines the first background logic offset address in array control unit, can to this first Background logic offset address is recorded.When the array control unit receives the reading response of target disk transmission, antenna array control Device can read the second background logic offset address from the aiming field in the PI of the second data, and it is pre-recorded to read its First background logic offset address.Then the first background logic offset address and the second background logic offset address are compared Compared with.
Step 408, when the second background logic offset address and consistent the first background logic offset address, determine first The back-end data of data is without misquotation.
When the second background logic offset address and consistent the first background logic offset address, illustrate the first data and The backstage offset of two data is consistent, read-write offset does not occur, and Data Position cited in read request is correct.
It should be noted that array control unit also needs to carry out integrity verification to the second data using crc value, verifying By rear, illustrate that the second data for reading to carry in response are a partial datas, when the verifying to read-write offset and to data it is complete When the verifying of whole property passes through, illustrate that the second data are identical as the first data, then reading data success, the reading behaviour of the first data It completes.
Step 409, when the second background logic offset address and inconsistent the first background logic offset address, determine The back-end data misquotation of one data.
When the second background logic offset address and inconsistent the first background logic offset address, array control unit can be true The back-end data misquotation of fixed first data.For example, data write error may occur for the first data;Or;To first When data are read out, data read errors occur.The back-end data misquotation of the first data is determined in array control unit Afterwards, step 410 can be executed.
Step 410, after determining the back-end data misquotation of the first data, using disk array redundancy or entangle Error code (Erasure Code, EC) redundancy carries out data reparation.
In the embodiment of the present application, when determining the back-end data misquotation of the first data, disk battle array can be used The redundancy or EC redundancy of column carry out degradation reparation to first data, and the data effectively avoided mistake are in magnetic It is diffused in disk array.
Above-described embodiment is schematically illustrated so that PI defaults and carries aiming field as an example, another optional real In existing mode, each PI includes indicating bit, which is used to indicate data (such as above-mentioned first data for carrying the read-write of the PI Or second data) whether support metadata (describing the data of data) customized, when the data support that metadata is customized, Illustrate that the PI in data that array control unit is read and write can define new parameter, at this point, the PI further includes aiming field, the mesh Marking-up section can be located at after indicating bit, and the aiming field is identical as the aiming field in above-described embodiment, the embodiment of the present application Details are not described herein.If data do not support that metadata is customized, aiming field can not be carried in PI.
At this point, when executing above-mentioned steps 401, which may include following step in a kind of achievable mode It is rapid:
Step A1, whether detection array control unit supports that metadata is customized.
Step B1, when array control unit supports that metadata is customized, the first data are generated.
First data include the first body of data and PI, and the PI in first data includes indicating bit and aiming field, The indicating bit is used to indicate the first data and supports metadata customized, and the aiming field is for carrying the first background logic offset ground Location.
A1 and step B1 through the above steps can add the first background logic offset ground in the PI in the first data Location.
In this kind of achievable mode, correspondingly, executing above-mentioned steps 406 if carrying out the read operation of the first data Afterwards, the data processing method is further comprising the steps of:
Step A3, the indicating bit for detecting the PI in the second data, when the indicating bit of the PI indicates that the second data support first number According to it is customized when, the aiming field of the PI in second data reads the second background logic offset address.
A3 through the above steps can read and add the second background logic offset address in the PI in the second data.
In this kind of implementation, by adding indicating bit in PI, it can indicate whether the data of read-write support first number According to customized, when it does not support that metadata is customized, array control unit avoids unnecessary data without searching aiming field Expense.
In conclusion data processing method provided by the embodiments of the present application, when array control unit is after carrying out disk array It when the write operation of platform, can write first data into target disk, which includes the first body of data and first Background logic offset address.When array control unit is when carrying out the read operation on disk array backstage, array control unit first may be used To get the second data, which includes the second body of data and the second background logic offset address, then will be after second Platform logical offset address is compared with the first background logic offset address of the first pre-recorded data, when the second backstage is patrolled When collecting offset address and inconsistent the first background logic offset address, the back-end data application error of the first data is determined, effectively Solve can not perceive at present backstage read-write offset, cause data occur mistake problem.Also, it can also be to rear number of units It is repaired according to the first data of application error, the data effectively avoided mistake are diffused in disk array.
It should be noted that the sequencing of data processing method steps provided by the embodiments of the present application can carry out suitably Adjustment, step according to circumstances can also accordingly be increased and decreased, and anyone skilled in the art discloses in the application Technical scope in, the method that can readily occur in variation should all cover within the scope of protection of this application, therefore no longer superfluous It states.
The embodiment of the present application also provides a kind of data processing equipments, referring to FIG. 6, Fig. 6 is that the embodiment of the present application provides A kind of data processing equipment block diagram, which includes:
First sending module 601 sends read request for the target disk into disk array, and read request is read for requesting Take the first data.
Receiving module 602, for receiving the reading response of target disk transmission, reading response includes the second data, the second data Including the second body of data and the second background logic offset address, the second background logic offset address is the second body of data in quilt It is determined by array control unit based on the second body of data before write-in target disk.
Comparison module 603, for by the first of the second background logic offset address and the first pre-recorded data the backstage Logical offset address is compared, and the first background logic offset address is the first body of data determination based on the first data.
First determining module 604, it is different for working as the second background logic offset address and the first background logic offset address When cause, the back-end data misquotation of the first data is determined.
Optionally, referring to FIG. 7, Fig. 7 is the block diagram of another data processing equipment provided by the embodiments of the present application, the number According to processing unit 600 further include:
Second determining module 605, for determining the first background logic offset address based on the first body of data to be stored.
Generation module 606, for generating write request, for write request for requesting the first data of write-in, write request includes the One data, the first data include the first body of data and the first background logic offset address.
Second sending module 607, for sending write request to target disk.
Optionally, array control unit stores the data of read-write in the form of sector, and each data read and write include data Ontology and PI, PI include aiming field, and aiming field is used to carry the background logic offset address determined based on body of data.
Optionally, array control unit stores the data of read-write in the form of sector, and each data read and write include data Ontology and PI, each PI include indicating bit, and indicating bit is used to indicate whether data support that metadata is customized, when data are supported When metadata is customized, PI further includes aiming field, and aiming field is used to carry the background logic determined based on body of data inclined Move address.
Optionally, the data processing equipment further include:
Detection module, for detecting the indicating bit of the PI in the second data, when the indicating bit of PI indicates that the second data are supported When metadata is customized, the aiming field of the PI in the second data reads the second background logic offset address.
Optionally, generation module 606 are used for: whether detection array control unit supports the metadata of data customized;Work as battle array When column controller supports that the metadata of data is customized, the first data are generated, the first data include the first body of data and PI, the PI in one data includes indicating bit and aiming field, and indicating bit is used to indicate the first data and supports metadata customized, target Field is for carrying the first background logic offset address.
Optionally, PI includes GRD field, APP field and REF field, and aiming field is the either field in PI.
Optionally, background logic offset address is stored in the reserved bit position in the APP field of PI.
Optionally, background logic offset address is stored in the unused data in the REF field of PI or dummy bit position In.
Optionally, background logic offset address is the offset address of disk offset address or data block.
Optionally, referring to FIG. 8, Fig. 8 is the block diagram of another data processing equipment provided by the embodiments of the present application, the number According to processing unit 600 further include:
Repair module 608, for after determining the back-end data misquotation of the first data, using the redundancy of disk array Technology or EC redundancy carry out data reparation.
In conclusion data processing equipment provided by the embodiments of the present application, when array control unit is after carrying out disk array It when the write operation of platform, can write first data into target disk, which includes the first body of data and first Background logic offset address.When array control unit is when carrying out the read operation on disk array backstage, array control unit first may be used To get the second data, which includes the second body of data and the second background logic offset address, then will be after second Platform logical offset address is compared with the first background logic offset address of the first pre-recorded data, when the second backstage is patrolled When collecting offset address and inconsistent the first background logic offset address, the back-end data application error of the first data is determined, effectively Solve can not perceive at present backstage read-write offset, cause data occur mistake problem.Also, it can also be to rear number of units It is repaired according to the first data of application error, the data effectively avoided mistake are diffused in disk array.
It is apparent to those skilled in the art that for convenience and simplicity of description, the device of foregoing description It with the specific work process of module, can refer to corresponding processes in the foregoing method embodiment, details are not described herein.
Fig. 9 is the structural schematic diagram of another data processing equipment provided by the embodiments of the present application, with reference to Fig. 9, the data Processing unit 700 may include: processor 710, communication interface 720 and memory 730, and communication interface 720 and memory 730 divide It is not connected with processor 710, illustratively, as shown in figure 9, communication interface 720 and memory 730 pass through bus 740 and processor 710 are connected.
Wherein, processor 710 can be central processing unit (CPU), and processor 710 includes one or more than one processing Core.Processor 710 is by runs software program, thereby executing various function application and data processing.
Wherein, communication interface 720 can be multiple, which is used for data processing equipment 700 and external equipment It is communicated, the external equipment such as host or disk etc..
Wherein, memory 730 is stored with the computer program that can be run on the processor 710, which can be with Including but not limited to: random access memory (RAM), read-only memory (ROM), Erasable Programmable Read Only Memory EPROM (EPROM), flash memory, optical memory.The memory 730 is responsible for information storage, for example, the memory 730 is for storing Software program.
Optionally, which can also include: input/output (I/O) interface (being not shown in Fig. 9).I/ O Interface is connect with processor 710, communication interface 720 and memory 730.I/O interface for example can be universal serial bus (USB)。
Processor 710 is configured as executing the computer program stored in memory 730, and processor 730 should by executing Computer program realizes in embodiment as shown in Figure 4 above the step 401 to the method for step 410.
The application exemplary embodiment additionally provides a kind of data system, which includes: one or more hosts, And the disk array connecting with host, the disk array include array control unit and at least one disk.The data system Structure can refer to data system shown in fig. 1.The array control unit may include such as Fig. 6, Fig. 7, Fig. 8 or shown in Fig. 9 Data processing equipment.
The application exemplary embodiment additionally provides a kind of computer readable storage medium, the computer readable storage medium On be stored with instruction, when the instruction by array control unit processor execute when, realize and walked in embodiment as shown in Figure 4 above Rapid 401 to step 410 method.
The application exemplary embodiment additionally provides a kind of computer program product comprising instruction, when computer program produces When product are run on computers, so that computer executes the data processing method of the application exemplary embodiment offer.
Those of ordinary skill in the art will appreciate that realizing that all or part of the steps of above-described embodiment can pass through hardware It completes, relevant hardware can also be instructed to complete by program, the program can store in a kind of computer-readable In storage medium, storage medium mentioned above can be read-only memory, disk or CD etc..
The foregoing is merely the alternative embodiments of the application, not to limit the application, it is all in spirit herein and Within principle, any modification, equivalent replacement, improvement and so on be should be included within the scope of protection of this application.

Claims (24)

1. a kind of data processing method, which is characterized in that the method is applied to the array control unit in disk array, the side Method includes:
Target disk into the disk array sends read request, and the read request reads the first data for requesting;
The reading response that the target disk is sent is received, the reading response includes the second data, and second data include second Body of data and the second background logic offset address, the second background logic offset address are second body of data in quilt It is written before the target disk and to be determined by the array control unit based on second body of data;
By the first background logic offset address of the second background logic offset address and pre-recorded first data It is compared, the first background logic offset address is the first body of data determination based on first data;
When the second background logic offset address and inconsistent the first background logic offset address, described first is determined The back-end data misquotation of data.
2. the method according to claim 1, wherein being sent in the target disk into the disk array Before read request, the method also includes:
The first background logic offset address is determined based on the first body of data to be stored;
Write request is generated, first data are written for requesting in the write request, and said write request includes first number According to first data include first body of data and the first background logic offset address;
The write request is sent to the target disk.
3. according to the method described in claim 2, it is characterized in that, the array control unit stores read-write in the form of sector Data, each data read and write include body of data and protection information PI, and the PI includes aiming field, the target word Section is for carrying the background logic offset address that ontology determines based on the data.
4. according to the method described in claim 2, it is characterized in that, the array control unit stores read-write in the form of sector Data, each data read and write include body of data and PI, and each PI includes indicating bit, and the indicating bit is for referring to Show whether the data support that metadata is customized, when the data support that metadata is customized, the PI further includes target Field, the aiming field are used to carry the background logic offset address that ontology determines based on the data.
5. according to the method described in claim 4, it is characterized in that,
After the reading response for receiving the target disk transmission, the method also includes:
The indicating bit for detecting the PI in second data, when the indicating bit of the PI indicates that second data support metadata When customized, the aiming field of the PI in second data reads the second background logic offset address.
6. according to the method described in claim 4, it is characterized in that,
The generation write request, comprising:
Detect whether the array control unit supports the metadata of data customized;
When the metadata of array control unit support data is customized, first data, first data packet are generated First body of data and PI are included, the PI in first data includes indicating bit and aiming field, and the indicating bit is used for Indicate that first data support metadata customized, the aiming field is for carrying the first background logic offset ground Location.
7. according to any method of claim 3 to 6, which is characterized in that
The PI includes verification and GRD field, using label A PP field and reference label REF field, and the aiming field is institute State the either field in PI.
8. the method according to the description of claim 7 is characterized in that
The background logic offset address is stored in the reserved bit position in the APP field of the PI.
9. the method according to the description of claim 7 is characterized in that
The background logic offset address is stored in the unused data in the REF field of the PI or dummy bit position.
10. according to any method of claim 3 to 6, which is characterized in that the background logic offset address is that disk is inclined Move the offset address of address or data block.
11. the method according to claim 1, wherein the method also includes:
It is superfluous using the redundancy or error correcting code EC of disk array after the back-end data misquotation for determining first data Remaining technology carries out data reparation.
12. a kind of data processing equipment, which is characterized in that described device is applied to the array control unit in disk array, described Device includes:
First sending module sends read request for the target disk into the disk array, and the read request is for requesting Read the first data;
Receiving module, the reading response sent for receiving the target disk, the readings response include the second data, and described second Data include the second body of data and the second background logic offset address, and the second background logic offset address is described second What body of data was determined by the array control unit based on second body of data before being written into the target disk;
Comparison module, for by the first of the second background logic offset address and pre-recorded first data the backstage Logical offset address is compared, and the first background logic offset address is the first body of data based on first data Determining;
First determining module, it is different for working as the second background logic offset address and the first background logic offset address When cause, the back-end data misquotation of first data is determined.
13. device according to claim 12, which is characterized in that described device further include:
Second determining module, for determining the first background logic offset address based on the first body of data to be stored;
Generation module, for generating write request, first data, said write request packet is written for requesting in the write request First data are included, first data include first body of data and the first background logic offset address;
Second sending module, for sending the write request to the target disk.
14. device according to claim 13, which is characterized in that the array control unit stores read-write in the form of sector Data, each data read and write include body of data and protection information PI, the PI includes aiming field, the target Field is used to carry the background logic offset address that ontology determines based on the data.
15. device according to claim 13, which is characterized in that the array control unit stores read-write in the form of sector Data, each data read and write include body of data and PI, and each PI includes indicating bit, and the indicating bit is used for Indicate whether the data support that metadata is customized, when the data support that metadata is customized, the PI further includes mesh Marking-up section, the aiming field are used to carry the background logic offset address that ontology determines based on the data.
16. device according to claim 15, which is characterized in that described device further include:
Detection module, for detecting the indicating bit of the PI in second data, when the indicating bit of the PI indicates described second When data support that metadata is customized, the aiming field of the PI in second data reads the second background logic offset Address.
17. device according to claim 15, which is characterized in that
The generation module, is used for:
Detect whether the array control unit supports the metadata of data customized;
When the metadata of array control unit support data is customized, first data, first data packet are generated First body of data and PI are included, the PI in first data includes indicating bit and aiming field, and the indicating bit is used for Indicate that first data support metadata customized, the aiming field is for carrying the first background logic offset ground Location.
18. 4 to 17 any device according to claim 1, which is characterized in that
The PI includes verification and GRD field, using label A PP field and reference label REF field, and the aiming field is institute State the either field in PI.
19. device according to claim 18, which is characterized in that
The background logic offset address is stored in the reserved bit position in the APP field of the PI.
20. device according to claim 18, which is characterized in that
The background logic offset address is stored in the unused data in the REF field of the PI or dummy bit position.
21. 4 to 17 any device according to claim 1, which is characterized in that the background logic offset address is disk The offset address of offset address or data block.
22. device according to claim 12, which is characterized in that described device further include:
Repair module, for after the back-end data misquotation for determining first data, using the redundancy skill of disk array Art or error correcting code EC redundancy carry out data reparation.
23. a kind of data system characterized by comprising
One or more hosts, and the disk array being connect with the host, the disk array include array control unit and At least one disk, the array control unit include any data processing equipment of claim 12 to 22.
24. a kind of computer readable storage medium, which is characterized in that instruction is stored on the computer readable storage medium, When described instruction is executed by the processor in array control unit, the data processing as described in claim 1 to 11 is any is realized Method.
CN201810759961.9A 2018-07-11 2018-07-11 Data processing method and device, storage medium, data system Active CN109144409B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810759961.9A CN109144409B (en) 2018-07-11 2018-07-11 Data processing method and device, storage medium, data system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810759961.9A CN109144409B (en) 2018-07-11 2018-07-11 Data processing method and device, storage medium, data system

Publications (2)

Publication Number Publication Date
CN109144409A true CN109144409A (en) 2019-01-04
CN109144409B CN109144409B (en) 2020-02-21

Family

ID=64800206

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810759961.9A Active CN109144409B (en) 2018-07-11 2018-07-11 Data processing method and device, storage medium, data system

Country Status (1)

Country Link
CN (1) CN109144409B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024087877A1 (en) * 2022-10-27 2024-05-02 华为技术有限公司 Storage device, data search method and system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775090B2 (en) * 2001-03-09 2004-08-10 Seagate Technology Llc Adapting logical track addresses in relation to head offsets
CN101238431A (en) * 2005-08-03 2008-08-06 桑迪士克股份有限公司 Mass Data Storage System
CN103413569A (en) * 2013-07-22 2013-11-27 华为技术有限公司 1 read and 1 write static random access memory
CN104182701A (en) * 2014-08-15 2014-12-03 华为技术有限公司 Array control unit, array and data processing method
CN104346298A (en) * 2013-08-06 2015-02-11 北京数码视讯软件技术发展有限公司 Device and method for data processing based on smart card and smart card
CN106021147A (en) * 2011-09-30 2016-10-12 英特尔公司 Storage device for presenting direct access under logical drive model

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775090B2 (en) * 2001-03-09 2004-08-10 Seagate Technology Llc Adapting logical track addresses in relation to head offsets
CN101238431A (en) * 2005-08-03 2008-08-06 桑迪士克股份有限公司 Mass Data Storage System
CN106021147A (en) * 2011-09-30 2016-10-12 英特尔公司 Storage device for presenting direct access under logical drive model
CN103413569A (en) * 2013-07-22 2013-11-27 华为技术有限公司 1 read and 1 write static random access memory
CN104346298A (en) * 2013-08-06 2015-02-11 北京数码视讯软件技术发展有限公司 Device and method for data processing based on smart card and smart card
CN104182701A (en) * 2014-08-15 2014-12-03 华为技术有限公司 Array control unit, array and data processing method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024087877A1 (en) * 2022-10-27 2024-05-02 华为技术有限公司 Storage device, data search method and system

Also Published As

Publication number Publication date
CN109144409B (en) 2020-02-21

Similar Documents

Publication Publication Date Title
US8812901B2 (en) Methods and apparatus for marking writes on a write-protected failed device to avoid reading stale data in a RAID storage system
US8086919B2 (en) Controller having flash memory testing functions, and storage system and testing method thereof
US7546436B2 (en) Storage device with SCSI formatting
KR20160066019A (en) Data memory device and controller with interface error detection and handling logic
CN111124742B (en) Flash data verification method, flash controller, storage medium and device
US10108481B1 (en) Early termination error recovery
CN104182701B (en) Array control unit, array and data processing method
CN104216791A (en) Flash stored data verifying method
CN103019880B (en) A kind of data verification method and storage device, storage system
US20160179609A1 (en) Bad Sector Repair Method and Apparatus
US10229742B2 (en) Flash memory device
KR20230007041A (en) Method of managing debugging log in storage device
JP2005004753A (en) Method and device of performing data version checking
US8418029B2 (en) Storage control device and storage control method
CN109144409A (en) Data processing method and device, storage medium, data system
JP6052288B2 (en) Disk array control device, disk array control method, and disk array control program
US10014983B2 (en) System, receiving device, and method
CN107168650B (en) Method and device for processing data in memory of BIOS
US9043544B2 (en) Writing of new data of a first block size in a raid array that stores both parity and data in a second block size
US20120254537A1 (en) Memory configuring method, memory controller and memory storage apparatus
CN113936728A (en) Data processing method, system, computer equipment and readable storage medium
US20080155193A1 (en) Staging method for disk array apparatus
KR20190037659A (en) Nonvolatile memory device, operating method thereof and data storage device having the same
JP6318769B2 (en) Storage control device, control program, and control method
JP4580743B2 (en) Disk array controller, computer system, and disk array consistency check error logging method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant