JP7378403B2 - データ処理方法、装置、およびコンピューティングデバイス - Google Patents
データ処理方法、装置、およびコンピューティングデバイス Download PDFInfo
- Publication number
- JP7378403B2 JP7378403B2 JP2020537757A JP2020537757A JP7378403B2 JP 7378403 B2 JP7378403 B2 JP 7378403B2 JP 2020537757 A JP2020537757 A JP 2020537757A JP 2020537757 A JP2020537757 A JP 2020537757A JP 7378403 B2 JP7378403 B2 JP 7378403B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- metadata
- target
- request
- memory
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims description 23
- 238000013500 data storage Methods 0.000 claims description 176
- 238000012545 processing Methods 0.000 claims description 47
- 230000005540 biological transmission Effects 0.000 claims description 33
- 238000000034 method Methods 0.000 claims description 27
- 238000010276 construction Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000003287 optical effect Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加することと、
ターゲットデータを格納エンドに送信することであって、予約済みフィールドは、格納エンドの対応するメモリロケーションに格納されるデータのデータメタデータを書き込むために使用され、その結果、格納されるデータおよびデータメタデータは、まとめてストレージデバイスに書き込まれる、送信することと、を含む。
ターゲットデータを取得することであって、ターゲットデータは、要求エンドによって格納されるデータに追加された予約済みフィールドを含む、取得することと、
ターゲットデータをキャッシュするための第2のメモリを割り当てることと、
ターゲットデータ内の格納されるデータのデータメタデータを生成することと、
第2のメモリ内の予約済みフィールドに対応するメモリロケーションにデータメタデータを書き込むことと、を含む。
ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加するように構成されたデータ構築モジュールと、
ターゲットデータを格納エンドに送信するように構成されたデータ送信モジュールであって、予約済みフィールドは、格納エンドの対応するメモリロケーションに格納されるデータのデータメタデータを書き込むために使用され、その結果、格納されるデータおよびデータメタデータは、まとめてストレージデバイスに書き込まれる、データ送信モジュールと、を含む。
ターゲットデータを取得するように構成されたデータ取得モジュールであって、ターゲットデータは、要求エンドによって格納されるデータに追加された予約済みフィールドを含む、データ取得モジュールと、
ターゲットデータをキャッシュするための第2のメモリを割り当てるように構成されたメモリ割り当てモジュールと、
ターゲットデータ内の格納されるデータのデータメタデータを生成するように構成されたデータ生成モジュールと、
第2のメモリ内の予約済みフィールドに対応するメモリロケーションにデータメタデータを書き込むように構成されたデータ書き込みモジュールと、を含む。
格納コンポーネントは、1つ以上のコンピュータ命令を格納するように構成されており、1つ以上のコンピュータ命令は、呼び出しおよび実行のために処理コンポーネントに提供され、
処理コンポーネントは、
ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加し、
ターゲットデータを格納エンドに送信する、ように構成されており、予約済みフィールドは、格納エンドの対応するメモリロケーションに格納されるデータのデータメタデータを書き込むために使用され、その結果、格納されるデータおよびデータメタデータは、まとめてストレージデバイスに書き込まれる。
格納コンポーネントは、1つ以上のコンピュータ命令を格納するように構成されており、1つ以上のコンピュータ命令は、呼び出しおよび実行のために処理コンポーネントに提供され、
処理コンポーネントは、
要求エンドによって格納されるデータに追加された予約済みフィールドを含むターゲットデータを取得し、
ターゲットデータをキャッシュするための第2のメモリを割り当て、
ターゲットデータ内の格納されるデータのデータメタデータを生成し、
第2のメモリ内の予約済みフィールドに対応するメモリロケーションにデータメタデータを書き込む、ように構成されている。
この方法は、以下のステップを含み得る。
101:ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加する。
ターゲットデータのデータサイズと一致する第1のメモリを割り当てることと、
ターゲットデータを第1のメモリに入れることと、
ターゲットデータを第1のメモリから格納エンドに送信することと、を含み得る。
ターゲットデータと要求メタデータとの合計データサイズを計算することと、
合計データサイズと一致する第1のメモリを割り当てることと、
ターゲットメモリおよび要求メタデータを第1のメモリに入れることと、
ターゲットデータを第1のメモリから格納エンドに送信することと、を含み得る。
複数のデータ格納ノードの送信順序に従って、複数のデータ格納ノードにそれぞれ対応する複数の要求メタデータをターゲットデータの最後に順次入れることを含む。
任意のデータ格納ノードについて、第1のメモリ内の、ターゲットデータ、任意のデータ格納ノードの送信順序に対応する1つの要求メタデータ、および任意のデータ格納ノードの送信順序に対応する1つの要求メタデータの前に位置する1つ以上の要求メタデータを任意の格納ノードに送信することを含み得る。
501:ターゲットデータを取得する。
予約済みフィールドのあらかじめ設定されたサイズに基づいて、ターゲットデータ内の格納されるデータおよび予約済みフィールドを決定することと、
格納されるデータのデータメタデータを生成することと、を含み得る。
要求エンドによって送信された書き込み要求を受信することであって、書き込み要求は、ターゲットデータおよび少なくとも1つの要求メタデータを含む、受信することと、
ターゲット要求メタデータを決定することと、を含み得る。
ターゲットデータ内の格納されるデータのデータメタデータを生成することは、
ターゲット要求メタデータに基づいて格納されるデータを読み取ることと、
ターゲット要求メタデータおよび格納されるデータに基づいてデータメタデータを生成することと、を含む。
要求メタデータのデータサイズに基づいて、書き込み要求のデータの最後からターゲット要求メタデータを読み取ることを含み得る。
ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加するように構成されたデータ構築モジュール701を含み得る。
ターゲットデータと要求メタデータとの合計データサイズを計算し、
合計データサイズと一致する第1のメモリを割り当て、
ターゲットメモリおよび要求メタデータを第1のメモリに入れ、
ターゲットデータを第1のメモリから格納エンドに送信する、ように構成され得る。
任意選択の方法として、データ送信モジュールは、具体的には、
格納されるデータに別々に対応する複数のデータ格納ノードの複数の要求メタデータを決定し、
ターゲットデータと複数の要求メタデータとの合計データサイズを計算し、
合計データサイズと一致する第1のメモリを割り当て、
ターゲットメモリおよび複数の要求メタデータを第1のメモリに入れ、
ターゲットデータおよび対応する1つの要求メタデータを複数のデータ格納ノードに別々に送信する、ように構成され得る。
格納されるデータに別々に対応する複数のデータ格納ノードの複数の要求メタデータを決定し、
ターゲットデータと複数の要求メタデータとの合計データサイズを計算し、
合計データサイズと一致する第1のメモリを割り当て、
ターゲットデータを第1のメモリに入れ、複数の要求メタデータをターゲットデータの最後に順次入れ、
任意のデータ格納ノードについて、第1のメモリ内の、ターゲットデータ、任意のデータ格納ノードに対応する1つの要求メタデータ、および任意のデータ格納ノードに対応する1つの要求メタデータの前に位置する1つ以上の要求メタデータを任意の格納ノードに送信する、ように構成されてもよく、任意のデータ格納ノードは、受信データの最後から対応する1つの要求メタデータを読み取るように構成されている。
ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加し、
ターゲットデータを格納エンドに送信する、ように構成され、予約済みフィールドは、格納エンドの対応するメモリロケーションに格納されるデータのデータメタデータを書き込むために使用される。
ターゲットデータを取得するように構成されたデータ取得モジュール901であって、ターゲットデータは、要求エンドによって格納されるデータに追加された予約済みフィールドを含む、データ取得モジュール901と、
ターゲットデータをキャッシュするための第2のメモリを割り当てるように構成されたメモリ割り当てモジュール902と、
ターゲットデータ内の格納されるデータのデータメタデータを生成するように構成されたデータ生成モジュール903と、
第2のメモリ内の予約済みフィールドに対応するメモリロケーションにデータメタデータを書き込むように構成されたデータ書き込みモジュール904と、を含み得る。
要求エンドによって送信された書き込み要求を受信するように構成され、書き込み要求は、ターゲットデータおよび少なくとも1つの要求メタデータを含み、
ターゲット要求メタデータを決定するように構成され得る。
要求エンドによって格納されるデータに追加された予約済みフィールドを含むターゲットデータを取得し、
格納コンポーネント1001に、ターゲットデータをキャッシュするための第2のメモリを割り当て、
ターゲットデータ内の格納されるデータのデータメタデータを生成し、
第2のメモリ内の予約済みフィールドに対応するメモリロケーションにデータメタデータを書き込む、ように構成されている。
Claims (14)
- ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加することと、
前記ターゲットデータを格納エンドに送信することであって、前記予約済みフィールドは、前記格納エンド内の対応するメモリロケーションに前記格納されるデータのデータメタデータを書き込むために使用され、その結果、前記格納されるデータおよび前記データメタデータは、まとめてストレージデバイスに書き込まれる、ことと、
を含むデータ処理方法であって、
前記格納エンドは、複数のデータ格納ノードを含み、前記ターゲットデータを前記格納エンドに送信することは、
前記格納されるデータに別々に対応する前記複数のデータ格納ノードの複数の要求メタデータを決定することと、
前記ターゲットデータと前記複数の要求メタデータとの合計データサイズを計算することと、
前記合計データサイズと一致するデータサイズを有し、前記ターゲットデータと前記複数の要求メタデータとを前記格納エンドに送信する前に一時的に格納する第1のメモリを割り当てることと、
を含む、方法。 - 前記ターゲットデータを前記格納エンドに前記送信することは、
前記ターゲットデータおよび前記複数の要求メタデータを前記第1のメモリに入れることと、
前記ターゲットデータおよび対応する1つの要求メタデータを前記複数のデータ格納ノードの各々に別々に送信することと、
をさらに含む、請求項1の方法。 - 前記ターゲットデータを前記格納エンドに前記送信することは、
前記ターゲットデータを前記第1のメモリに入れ、前記複数の要求メタデータを前記ターゲットデータの最後に順次入れることと、
任意のデータ格納ノードについて、前記第1のメモリ内の、前記ターゲットデータ、前記任意のデータ格納ノードに対応する1つの要求メタデータ、および前記任意のデータ格納ノードに対応する前記1つの要求メタデータの前に位置する1つ以上の要求メタデータを前記任意のデータ格納ノードに送信することであって、前記任意のデータ格納ノードは、受信データの最後から対応する1つの要求メタデータを読み取るように構成されている、ことと、
をさらに含む、請求項1の方法。 - 前記複数の要求メタデータを前記ターゲットデータの前記最後に順次入れることは、
前記複数のデータ格納ノードの送信順序に従って、前記複数のデータ格納ノードに対応するそれぞれの複数の要求メタデータを前記ターゲットデータの前記最後に順次入れることを含み、
前記任意のデータ格納ノードについて、前記第1のメモリ内の、前記ターゲットデータ、前記任意のデータ格納ノードに対応する前記1つの要求メタデータ、および前記任意のデータ格納ノードに対応する前記1つの要求メタデータの前に位置する前記1つ以上の要求メタデータを前記任意のデータ格納ノードに送信することは、
前記任意のデータ格納ノードについて、前記ターゲットデータ、前記1つの要求メタデータは、前記任意のデータ格納ノードの前記送信順序に対応し、および前記任意のデータ格納ノードの前記送信順序に対応する前記1つの要求メタデータの前に位置する前記1つ以上の要求メタデータを前記第1のメモリから前記任意のデータ格納ノードに送信することを含む、請求項3の方法。 - 前記ターゲットデータを取得するために、前記格納されるデータに前記予約済みフィールドを追加することは、
前記ターゲットデータを取得するために、前記格納されるデータの最後に、あらかじめ設定されたサイズの所定の文字列を前記予約済みフィールドとして追加することを含む、請求項1の方法。 - ターゲットデータを取得することであって、前記ターゲットデータは、要求エンドによって格納されるデータに追加された予約済みフィールドを含むことと、
前記ターゲットデータをキャッシュするための第2のメモリを割り当てることと、
前記ターゲットデータ内の前記格納されるデータのデータメタデータを生成することと、
前記第2のメモリ内の前記予約済みフィールドに対応するメモリロケーションに前記データメタデータを書き込むことと、
を含むデータ処理方法であって、
前記ターゲットデータを取得することは、
前記要求エンドによって送信された書き込み要求を受信することであって、前記書き込み要求は、前記ターゲットデータおよび少なくとも1つの要求メタデータを含む、ことと、
ターゲット要求メタデータを決定することと、を含み、
前記ターゲットデータ内の前記格納されるデータの前記データメタデータを生成することは、
前記ターゲット要求メタデータに基づいて前記格納されるデータを読み取ることと、
前記ターゲット要求メタデータおよび前記格納されるデータに基づいて前記データメタデータを生成することと、
を含み、
前記要求エンドの前記書き込み要求は、第1のメモリ内の、前記要求エンドによって送信されるように要求された前記ターゲットデータ、前記ターゲット要求メタデータ、および前記ターゲット要求メタデータの前に位置する要求メタデータを含み、前記ターゲット要求メタデータを決定することは、
前記要求メタデータのデータサイズに基づいて、前記書き込み要求の最後から前記ターゲット要求メタデータを読み取ることを含む、データ処理方法。 - ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加するように構成されたデータ構築モジュールと、
前記ターゲットデータを格納エンドに送信するように構成されたデータ送信モジュールであって、前記予約済みフィールドは、前記格納エンドの対応するメモリロケーションに前記格納されるデータのデータメタデータを書き込むために使用され、その結果、前記格納されるデータおよび前記データメタデータは、まとめてストレージデバイスに書き込まれ、
前記格納されるデータに別々に対応する複数のデータ格納ノードの複数の要求メタデータを決定し、
前記ターゲットデータと複数の要求メタデータとの合計データサイズを計算し、
前記合計データサイズと一致するデータサイズを有し、前記ターゲットデータと前記複数の要求メタデータとを前記格納エンドに送信する前に一時的に格納する第1のメモリを割り当てる、
ように構成される、
データ送信モジュールと、
を含むデータ処理装置。 - 前記データ送信モジュールは、
前記ターゲットデータおよび前記複数の要求メタデータを前記第1のメモリに入れ、
前記ターゲットデータおよび対応する1つの要求メタデータを前記複数のデータ格納ノードの各々に別々に送信する、
ようにさらに構成される、請求項7に記載のデータ処理装置。 - 前記データ送信モジュールは、
前記ターゲットデータを前記第1のメモリに入れることにおいて、前記複数の要求メタデータを前記ターゲットデータの最後に順次入れ、
任意のデータ格納ノードについて、前記第1のメモリ内の、前記ターゲットデータ、前記任意のデータ格納ノードに対応する1つの要求メタデータ、および前記任意のデータ格納ノードに対応する前記1つの要求メタデータの前に位置する1つ以上の要求メタデータを前記任意のデータ格納ノードに送信し、前記任意のデータ格納ノードは、受信データの最後から対応する1つの要求メタデータを読み取るように構成される、
ようにさらに構成される、請求項7に記載のデータ処理装置。 - ターゲットデータを取得するように構成されたデータ取得モジュールであって、前記ターゲットデータは、要求エンドによって格納されるデータに追加された予約済みフィールドを含む、データ取得モジュールと、
前記ターゲットデータをキャッシュするための第2のメモリを割り当てるように構成されたメモリ割り当てモジュールと、
前記ターゲットデータ内の前記格納されるデータのデータメタデータを生成するように構成されたデータ生成モジュールと、
前記第2のメモリ内の前記予約済みフィールドに対応するメモリロケーションに前記データメタデータを書き込むように構成されたデータ書き込みモジュールと、
を含むデータ処理装置であって、
前記データ取得モジュールは、前記要求エンドによって送信された書き込み要求を受信するように構成され、前記書き込み要求は、前記ターゲットデータおよび少なくとも1つの要求メタデータを含み、
ターゲット要求メタデータを決定するように構成され、
前記データ生成モジュールは、前記ターゲット要求メタデータに基づいて、送信されたデータから前記格納されるデータを読み取り、前記ターゲット要求メタデータおよび前記格納されるデータに基づいて前記データメタデータを生成するように構成され、
前記書き込み要求は、前記要求エンドが第1のメモリから送信することを要求する、前記ターゲットデータ、前記ターゲット要求メタデータ、および前記ターゲット要求メタデータの前の要求メタデータを含み、
前記ターゲット要求メタデータを決定する前記データ取得モジュールは、前記要求メタデータのデータサイズに基づいて、前記書き込み要求の最後から前記ターゲット要求メタデータを読み取るように構成される、データ処理装置。 - 格納コンポーネントおよび処理コンポーネントを含むコンピューティングデバイスであって、
前記格納コンポーネントは、1つ以上のコンピュータ命令を格納するように構成されており、前記1つ以上のコンピュータ命令は、呼び出しおよび実行のために前記処理コンポーネントに提供され、
前記処理コンポーネントは、
ターゲットデータを取得するために、格納されるデータに予約済みフィールドを追加し、
前記ターゲットデータを格納エンドに送信する、
ように構成されており、前記予約済みフィールドは、前記格納エンド内の対応するメモリロケーションに前記格納されるデータのデータメタデータを書き込むために使用され、その結果、前記格納されるデータおよび前記データメタデータは、まとめてストレージデバイスに書き込まれ、
前記格納されるデータに別々に対応する複数のデータ格納ノードの複数の要求メタデータを決定し、
前記ターゲットデータと複数の要求メタデータとの合計データサイズを計算し、
前記合計データサイズと一致するデータサイズを有し、前記ターゲットデータと前記複数の要求メタデータとを前記格納エンドに送信する前に一時的に格納する第1のメモリを割り当てる、
ように構成される、
コンピューティングデバイス。 - 前記処理コンポーネントは、
前記ターゲットデータおよび前記複数の要求メタデータを前記第1のメモリに入れ、
前記ターゲットデータおよび対応する1つの要求メタデータを前記複数のデータ格納ノードの各々に別々に送信する、
ようにさらに構成される、請求項11のコンピューティングデバイス。 - 前記処理コンポーネントは、
前記ターゲットデータを前記第1のメモリに入れることにおいて、前記複数の要求メタデータを前記ターゲットデータの最後に順次入れ、
任意のデータ格納ノードについて、前記第1のメモリ内の、前記ターゲットデータ、前記任意のデータ格納ノードに対応する1つの要求メタデータ、および前記任意のデータ格納ノードに対応する前記1つの要求メタデータの前に位置する1つ以上の要求メタデータを前記任意のデータ格納ノードに送信し、前記任意のデータ格納ノードは、受信データの最後から対応する1つの要求メタデータを読み取るように構成される、
ようにさらに構成される、請求項11のコンピューティングデバイス。 - 格納コンポーネントおよび処理コンポーネントを含むコンピューティングデバイスであって、
前記格納コンポーネントは、1つ以上のコンピュータ命令を格納するように構成されており、前記1つ以上のコンピュータ命令は、呼び出しおよび実行のために前記処理コンポーネントに提供され、
前記処理コンポーネントは、
要求エンドによって格納されるデータに追加された予約済みフィールドを含むターゲットデータを取得し、
前記ターゲットデータをキャッシュするための第2のメモリを割り当て、
前記ターゲットデータ内の前記格納されるデータのデータメタデータを生成し、
前記第2のメモリ内の前記予約済みフィールドに対応するメモリロケーションに前記データメタデータを書き込み、
前記ターゲットデータを取得することは、
前記要求エンドによって送信された書き込み要求を受信することであって、前記書き込み要求は、前記ターゲットデータおよび少なくとも1つの要求メタデータを含む、ことと、
ターゲット要求メタデータを決定することと、を含み、
前記ターゲットデータ内の前記格納されるデータの前記データメタデータを生成することは、
前記ターゲット要求メタデータに基づいて前記格納されるデータを読み取ることと、
前記ターゲット要求メタデータおよび前記格納されるデータに基づいて前記データメタデータを生成することと、
を含み、
前記要求エンドの前記書き込み要求は、第1のメモリ内の、前記要求エンドによって送信されるように要求された前記ターゲットデータ、前記ターゲット要求メタデータ、および前記ターゲット要求メタデータの前に位置する要求メタデータを含み、前記ターゲット要求メタデータを決定することは、
前記要求メタデータのデータサイズに基づいて、前記書き込み要求の最後から前記ターゲット要求メタデータを読み取ることを含む、コンピューティングデバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810020121.0 | 2018-01-09 | ||
CN201810020121.0A CN110018897B (zh) | 2018-01-09 | 2018-01-09 | 数据处理方法、装置及计算设备 |
PCT/CN2019/070580 WO2019137321A1 (zh) | 2018-01-09 | 2019-01-07 | 数据处理方法、装置及计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021510222A JP2021510222A (ja) | 2021-04-15 |
JP7378403B2 true JP7378403B2 (ja) | 2023-11-13 |
Family
ID=67187831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020537757A Active JP7378403B2 (ja) | 2018-01-09 | 2019-01-07 | データ処理方法、装置、およびコンピューティングデバイス |
Country Status (5)
Country | Link |
---|---|
US (1) | US11354050B2 (ja) |
EP (1) | EP3739450A4 (ja) |
JP (1) | JP7378403B2 (ja) |
CN (1) | CN110018897B (ja) |
WO (1) | WO2019137321A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3109862A1 (en) * | 2020-02-20 | 2021-08-20 | Comcast Cable Communications, Llc | Systems, methods, and apparatuses for storage management |
CN111800353B (zh) * | 2020-06-30 | 2022-04-12 | 翱捷科技股份有限公司 | 一种嵌入式系统内存零拷贝的方法及装置 |
CN113965627A (zh) * | 2020-07-02 | 2022-01-21 | 北京瀚海云星科技有限公司 | 一种发送数据的方法、低延时接收数据的方法及相关装置 |
CN113886294A (zh) * | 2020-07-02 | 2022-01-04 | 北京瀚海云星科技有限公司 | 一种基于rdma的低延时数据传输方法及相关装置 |
CN112148795B (zh) * | 2020-09-27 | 2021-06-15 | 上海依图网络科技有限公司 | 一种数据处理方法、装置、设备及介质 |
CN114546261B (zh) * | 2022-01-07 | 2023-08-08 | 苏州浪潮智能科技有限公司 | 一种分布式对象存储中对象移动优化方法与系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006164283A (ja) | 2004-12-03 | 2006-06-22 | Hewlett-Packard Development Co Lp | 取外し可能な記憶媒体のアドレス指定可能なユニットにデータ及び時間値を書き込むシステム及び方法 |
US20140325168A1 (en) | 2013-04-29 | 2014-10-30 | Samsung Electronics Co., Ltd. | Management of stored data based on corresponding attribute data |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6826650B1 (en) | 2000-08-22 | 2004-11-30 | Qlogic Corporation | Disk controller configured to perform out of order execution of write operations |
JP4186509B2 (ja) * | 2002-05-10 | 2008-11-26 | 株式会社日立製作所 | ディスクシステムとそのキャッシュ制御方法 |
KR101257848B1 (ko) | 2005-07-13 | 2013-04-24 | 삼성전자주식회사 | 복합 메모리를 구비하는 데이터 저장 시스템 및 그 동작방법 |
JP2008027383A (ja) | 2006-07-25 | 2008-02-07 | Toshiba Corp | 情報記録装置及びその制御方法 |
TWI326028B (en) | 2006-11-20 | 2010-06-11 | Silicon Motion Inc | Method for flash memory data management |
JP4282733B1 (ja) | 2007-12-13 | 2009-06-24 | 株式会社東芝 | ディスク記憶装置及びデータ書き込み方法 |
JP5023003B2 (ja) * | 2008-06-27 | 2012-09-12 | 株式会社東芝 | メタデータ管理方法及びデータ記録装置 |
US8732388B2 (en) * | 2008-09-16 | 2014-05-20 | Micron Technology, Inc. | Embedded mapping information for memory devices |
CN101382948A (zh) * | 2008-10-14 | 2009-03-11 | 成都市华为赛门铁克科技有限公司 | 一种文件存储方法、装置和系统 |
US8533397B2 (en) * | 2009-01-06 | 2013-09-10 | International Business Machines Corporation | Improving performance in a cache mechanism by way of destaging data in partial strides |
JP4706029B2 (ja) | 2009-03-19 | 2011-06-22 | 富士通株式会社 | ストレージ装置、データ書き込み方法、及びデータ書き込みプログラム |
US8327076B2 (en) | 2009-05-13 | 2012-12-04 | Seagate Technology Llc | Systems and methods of tiered caching |
JP4621794B1 (ja) | 2009-07-22 | 2011-01-26 | 株式会社東芝 | キャッシュメモリ制御方法およびキャッシュメモリを備えた情報記憶装置 |
KR101662827B1 (ko) | 2010-07-02 | 2016-10-06 | 삼성전자주식회사 | 쓰기 패턴에 따라 데이터 블록의 쓰기 모드를 선택하는 메모리 시스템 및 그것의 데이터 쓰기 방법 |
US8352685B2 (en) | 2010-08-20 | 2013-01-08 | Apple Inc. | Combining write buffer with dynamically adjustable flush metrics |
KR101739556B1 (ko) | 2010-11-15 | 2017-05-24 | 삼성전자주식회사 | 데이터 저장 장치, 사용자 장치 및 그것의 주소 맵핑 방법 |
US8484408B2 (en) | 2010-12-29 | 2013-07-09 | International Business Machines Corporation | Storage system cache with flash memory in a raid configuration that commits writes as full stripes |
JP5853899B2 (ja) | 2012-03-23 | 2016-02-09 | ソニー株式会社 | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 |
KR102074329B1 (ko) | 2013-09-06 | 2020-02-06 | 삼성전자주식회사 | 데이터 저장 장치 및 그것의 데이터 처리 방법 |
CN103559143A (zh) * | 2013-11-08 | 2014-02-05 | 华为技术有限公司 | 数据拷贝管理装置及其数据拷贝方法 |
US10423339B2 (en) * | 2015-02-02 | 2019-09-24 | Western Digital Technologies, Inc. | Logical block address mapping for hard disk drives |
CN106294193B (zh) * | 2015-06-03 | 2019-10-15 | 杭州海康威视系统技术有限公司 | 存储设备及基于该存储设备的分块存储方法 |
CN105159607A (zh) * | 2015-08-28 | 2015-12-16 | 浪潮(北京)电子信息产业有限公司 | 一种基于离散存储的高速写入的方法 |
US20170123991A1 (en) | 2015-10-28 | 2017-05-04 | Sandisk Technologies Inc. | System and method for utilization of a data buffer in a storage device |
CN105389128B (zh) * | 2015-11-06 | 2019-04-19 | 成都华为技术有限公司 | 一种固态硬盘数据存储方法及存储控制器 |
CN107656939A (zh) * | 2016-07-26 | 2018-02-02 | 南京中兴新软件有限责任公司 | 文件写入方法及装置 |
CN107122140A (zh) * | 2017-05-02 | 2017-09-01 | 郑州云海信息技术有限公司 | 一种基于元数据信息的文件智能存储方法 |
CN109582599B (zh) * | 2017-09-29 | 2023-12-22 | 上海宝存信息科技有限公司 | 数据储存装置以及非挥发式存储器操作方法 |
-
2018
- 2018-01-09 CN CN201810020121.0A patent/CN110018897B/zh active Active
-
2019
- 2019-01-07 WO PCT/CN2019/070580 patent/WO2019137321A1/zh unknown
- 2019-01-07 EP EP19738475.3A patent/EP3739450A4/en active Pending
- 2019-01-07 JP JP2020537757A patent/JP7378403B2/ja active Active
-
2020
- 2020-07-08 US US16/924,028 patent/US11354050B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006164283A (ja) | 2004-12-03 | 2006-06-22 | Hewlett-Packard Development Co Lp | 取外し可能な記憶媒体のアドレス指定可能なユニットにデータ及び時間値を書き込むシステム及び方法 |
US20140325168A1 (en) | 2013-04-29 | 2014-10-30 | Samsung Electronics Co., Ltd. | Management of stored data based on corresponding attribute data |
Also Published As
Publication number | Publication date |
---|---|
US11354050B2 (en) | 2022-06-07 |
CN110018897B (zh) | 2023-05-26 |
EP3739450A1 (en) | 2020-11-18 |
US20200341661A1 (en) | 2020-10-29 |
CN110018897A (zh) | 2019-07-16 |
JP2021510222A (ja) | 2021-04-15 |
EP3739450A4 (en) | 2021-10-27 |
WO2019137321A1 (zh) | 2019-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7378403B2 (ja) | データ処理方法、装置、およびコンピューティングデバイス | |
US9928250B2 (en) | System and method for managing deduplication using checkpoints in a file storage system | |
US10983955B2 (en) | Data unit cloning in memory-based file systems | |
US11314724B2 (en) | Data deduplication acceleration | |
CN107066498B (zh) | 键值kv存储方法和装置 | |
KR20120063926A (ko) | 비대칭 클러스터링 파일시스템에서의 패리티 산출 방법 | |
JP2020123041A (ja) | メモリシステムおよび制御方法 | |
CN104937564B (zh) | 组表格的数据冲洗 | |
US20190199794A1 (en) | Efficient replication of changes to a byte-addressable persistent memory over a network | |
EP3739440A1 (en) | Distributed storage system, data processing method and storage node | |
US10963177B2 (en) | Deduplication using fingerprint tries | |
US20200133773A1 (en) | Data and metadata storage in storage devices | |
CN110928803A (zh) | 一种内存管理方法及装置 | |
US10146466B1 (en) | Merging mapping metadata to promote reference counting efficiency | |
US11144243B2 (en) | Method and device for managing redundant array of independent disks and computer program product | |
EP4087212A1 (en) | Method and apparatus for cloning file system | |
CN114365109A (zh) | 启用rdma的键-值存储库 | |
CN111930315A (zh) | 数据访问方法、数据访问装置及存储介质 | |
US9563363B2 (en) | Flexible storage block for a solid state drive (SSD)-based file system | |
WO2012171363A1 (zh) | 分布式缓存系统中的数据操作方法和装置 | |
US20170344488A1 (en) | Sharing data structures between processes by semi-invasive hybrid approach | |
US20220188010A1 (en) | Method and system for a local storage engine collaborating with a solid state drive controller | |
US11514016B2 (en) | Paging row-based data stored as objects | |
US20200342065A1 (en) | Replicating user created snapshots | |
WO2022121385A1 (zh) | 一种文件访问方法、存储节点以及网卡 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221129 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230620 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230914 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20231003 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231031 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7378403 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |