WO2017185579A1 - Procédé et appareil de stockage de données - Google Patents

Procédé et appareil de stockage de données Download PDF

Info

Publication number
WO2017185579A1
WO2017185579A1 PCT/CN2016/097775 CN2016097775W WO2017185579A1 WO 2017185579 A1 WO2017185579 A1 WO 2017185579A1 CN 2016097775 W CN2016097775 W CN 2016097775W WO 2017185579 A1 WO2017185579 A1 WO 2017185579A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage
data
stored
segment
target
Prior art date
Application number
PCT/CN2016/097775
Other languages
English (en)
Chinese (zh)
Inventor
尹志新
Original Assignee
杭州海康威视数字技术股份有限公司
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 杭州海康威视数字技术股份有限公司 filed Critical 杭州海康威视数字技术股份有限公司
Publication of WO2017185579A1 publication Critical patent/WO2017185579A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes

Definitions

  • the present application relates to the field of computer technologies, and in particular, to a data storage method and apparatus.
  • computers read and write file data in the order of the physical address of the disk.
  • a large number of files are migrated and deleted, which causes the disk storage space to be fragmented.
  • the computer needs to perform data storage again, for example, when storing the target data, it is necessary to sequentially search for the free storage space in the order of the physical address on the disk, and determine whether the free storage space can store the target data, if not, Need to find the free storage space again to find the free storage space that can store the target data, and store the target data.
  • An object of the embodiments of the present application is to provide a data storage method and apparatus to reduce seek time and time.
  • the embodiment of the present application discloses a data storage method, which is applied to a terminal, where the terminal includes at least one disk, and the disk is divided into multiple virtual storage segments according to physical addresses, and corresponding to multiple virtual storage segments.
  • the physical address ranges do not coincide; the methods include:
  • Receiving a storage request for the data to be stored where the storage request includes: an identifier of the target file corresponding to the data to be stored;
  • a target virtual storage segment for storing the to-be-stored data, where the metadata storage segment is identified as a plurality of virtual storage segments.
  • Valued virtual storage segment for storing each virtual storage segment and stored files Correspondence between each other and the storage state of each virtual storage segment;
  • the data to be stored is stored starting from the initial storage location.
  • the determining, according to the identifier of the target file and the information stored in the metadata storage segment, the target virtual storage segment for storing the data to be stored including:
  • the determining, according to the first virtual storage segment, the target virtual storage segment for storing the to-be-stored data includes:
  • a virtual storage segment in which the data belonging to the target file is last stored in the first virtual storage segment is determined as a target virtual storage segment for the data to be stored.
  • the method further includes:
  • the determining, from the virtual storage segment that is closest to the physical address of the first virtual storage segment, the target virtual storage segment for storing the data to be stored including:
  • the storage mode is the first storage mode
  • the virtual storage segment that is closest to the physical address of the first virtual storage segment and does not store data is a target virtual storage segment for storing the data to be stored.
  • the first storage mode is: storing a text in a virtual storage segment Storage method of pieces;
  • the storage mode is the second storage mode
  • obtaining a second virtual storage segment that is closest to the physical address of the first virtual storage segment and the storage mode of the stored file is not the first storage mode
  • the second virtual storage segment is determined as a target virtual storage segment for storing the data to be stored, wherein the second storage manner is: a storage manner in which a plurality of files are stored in one virtual storage segment.
  • the method further includes:
  • the storage mode of the target file is determined as a first storage mode, where the first storage mode is: a storage mode in which one file is stored in one virtual storage segment;
  • the storage mode of the target file is determined to be a second storage mode, where the second storage mode is: a storage manner of storing multiple files in one virtual storage segment;
  • the method further includes:
  • the storage state of the target file is set to the stored state.
  • the method further includes:
  • the file to be created is created, and the storage state of the file to be created is set to an unstored state in the metadata storage segment, and the initial storage location of the data of the file to be created is rejected.
  • the disk includes multiple physical storage areas, where the physical storage area is The smallest physical storage unit of the disk;
  • the storing the data to be stored starting from the initial storage location includes:
  • the data to be stored is divided into data corresponding to each target physical storage area according to the determined available storage capacity of each target physical storage area and the amount of data, where the data to be stored is to be stored across regions. Piece;
  • the divided data blocks are respectively stored in corresponding target physical storage areas.
  • the embodiment of the present application further discloses a data storage device, which is applied to a terminal, where the terminal includes at least one disk, and the disk is divided into multiple virtual storage segments according to physical addresses, and multiple virtual storage segments are corresponding.
  • the physical address ranges do not coincide; the device includes:
  • a storage request receiving module configured to receive a storage request for the data to be stored, where the storage request includes: an identifier of the target file corresponding to the data to be stored;
  • a target virtual storage segment determining module configured to determine, according to the identifier of the target file and the information stored in the metadata storage segment, a target virtual storage segment for storing the to-be-stored data, where the metadata storage segment is A virtual storage segment that is identified as a preset value in the plurality of virtual storage segments, configured to store a correspondence between each virtual storage segment and the stored file and a storage state of each virtual storage segment;
  • a start storage location determining module configured to obtain a last storage location of data stored in the target virtual storage segment, and determine the obtained storage location as a starting storage location of the to-be-stored data
  • a data storage module configured to store the to-be-stored data from the initial storage location.
  • the target virtual storage segment determining module includes:
  • a first storage state determining submodule configured to determine, according to the identifier of the target file, whether the target file is in a stored state
  • a virtual storage segment obtaining submodule configured to determine a submodule determination result in the first storage state In the case of YES, according to the information stored in the metadata storage segment, obtaining a first virtual storage segment storing the target file;
  • a second storage state determining submodule configured to determine whether the first virtual storage segment is in a storable state
  • a first target virtual storage segment determining submodule configured to determine, according to the first virtual storage segment, a target virtuality for storing the to-be-stored data, in a case that the second storage state determining sub-module determining result is yes Storage segment.
  • the first target virtual storage segment determining submodule is specifically configured to determine, in the first virtual storage segment, a virtual storage segment that lastly stores data belonging to the target file, to be used for the waiting The target virtual bucket that stores the data.
  • the target virtual storage segment determining module further includes:
  • a second target virtual storage segment determining submodule configured to determine, from the virtual storage segment closest to the physical address of the first virtual storage segment, that the second storage state determination submodule determination result is negative a target virtual storage segment for storing the data to be stored.
  • the second target virtual storage segment determining submodule includes:
  • a storage mode obtaining unit configured to obtain a storage manner of the target file
  • a first target virtual storage segment determining unit configured to determine, in a case where the storage mode is the first storage mode, a virtual storage segment that is closest to a physical address of the first virtual storage segment and has no data stored for storage
  • the target virtual storage segment of the data to be stored wherein the first storage mode is: a storage manner in which a file is stored in one virtual storage segment;
  • a second target virtual storage segment determining unit configured to obtain, after the storage mode is the second storage mode, a physical address that is closest to the first virtual storage segment and a storage manner of the stored file is not the first a second virtual storage segment of the storage mode; the second virtual storage segment is determined as a target virtual storage segment for storing the data to be stored, wherein the second storage mode is: storing more in one virtual storage segment How files are stored.
  • the target virtual storage segment determining module further includes:
  • a first data amount obtaining submodule configured to determine a submodule judgment result in the first storage state In the case of NO, the amount of data of the data to be stored is obtained;
  • a data amount determining submodule configured to determine whether the obtained data amount is greater than a preset data amount
  • the first storage mode determining sub-module is configured to determine, according to the determination result of the data quantity determining sub-module, that the storage mode of the target file is the first storage mode, where the first storage mode is: A virtual storage segment stores a file storage manner;
  • a second storage mode determining submodule configured to determine, in the case that the data volume determining submodule determination result is negative, that the storage mode of the target file is a second storage mode, wherein the second storage mode is: A storage method in which a plurality of files are stored in one virtual storage segment;
  • a third target virtual storage segment determining submodule configured to determine, according to the determined storage manner, a target virtual storage segment for storing the to-be-stored data
  • the device also includes:
  • a storage status setting module configured to set a storage state of the target file to a stored state.
  • the device further includes:
  • Creating an instruction receiving module configured to receive a file creation instruction for the file to be created
  • a file creation module configured to create the file to be created, and set a storage state of the file to be created to an unstored state in the metadata storage segment, and refuse to determine a starting storage of data of the file to be created position.
  • the disk includes multiple physical storage areas, where the physical storage area is a minimum physical storage unit of the disk;
  • the data storage module includes:
  • a second data amount obtaining submodule configured to obtain the data amount of the data to be stored
  • a storage area determining submodule configured to determine, according to the amount of data, each target physical storage area where the data to be stored is to be stored;
  • a data block dividing sub-module configured to divide the data to be stored into and according to the determined available storage capacity of each target physical storage area and the amount of data, where the data to be stored is to be stored across regions a data block corresponding to each target physical storage area;
  • the data block storage sub-module is configured to store the divided data blocks into corresponding target physical storage areas.
  • an embodiment of the present application further discloses a terminal, the terminal comprising: a housing, a processor, a memory, a circuit board, and a power supply circuit, wherein the circuit board is disposed in the housing Inside the space, the processor and the memory are disposed on the circuit board; the power circuit is configured to supply power to each circuit or device of the terminal; the memory is configured to store executable program code; The processor executes the data storage method described above by running executable program code stored in the memory.
  • an embodiment of the present application further discloses an executable program code for executing the above data storage method at runtime.
  • the embodiment of the present application further discloses a storage medium for storing executable program code, and the executable program code is executed to execute the data storage method described above.
  • the terminal receives the storage request for the data to be stored, and determines, according to the identifier of the target file corresponding to the data to be stored and the information stored in the metadata storage segment, that the storage request is used to store the to-be-stored data. And storing a target virtual storage segment of the data, obtaining a storage location of the end of the data stored in the target virtual storage segment, and determining the obtained storage location as a starting storage location of the data to be stored, and storing the to-be-stored storage location from the initial storage location Storing data.
  • FIG. 1 is a schematic flowchart diagram of a data storage method according to an embodiment of the present application
  • FIG. 2 is a schematic structural diagram of a virtual storage segment according to an embodiment of the present disclosure
  • FIG. 3 is a schematic diagram of metadata arrangement in a metadata storage segment according to an embodiment of the present disclosure
  • FIG. 4 is a schematic flowchart diagram of another data storage method according to an embodiment of the present disclosure.
  • FIG. 5 is a schematic flowchart diagram of another data storage method according to an embodiment of the present disclosure.
  • FIG. 6 is a schematic flowchart of a method for allocating a virtual storage segment according to an implementation of the present application
  • FIG. 7 is a schematic structural diagram of a data storage device according to an embodiment of the present disclosure.
  • FIG. 8 is a schematic structural diagram of another data storage device according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic structural diagram of another data storage device according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of a terminal according to an embodiment of the present application.
  • FIG. 1 is a schematic flowchart of a data storage method according to an embodiment of the present disclosure.
  • the terminal is applied to a terminal, where the terminal includes at least one disk, and the disk can be divided into multiple virtual storage segments according to physical addresses, and multiple virtual storages.
  • the physical address ranges corresponding to the segments do not overlap; the method may include the following steps:
  • the storage request includes: an identifier of the target file corresponding to the data to be stored.
  • the storage request may further include information such as the amount of data to be stored, which is not limited in this application.
  • S102 Determine, according to the identifier of the target file corresponding to the data to be stored included in the storage request and the information stored in the metadata storage segment, a target virtual storage segment for storing the data to be stored;
  • the metadata storage segment is a virtual storage segment that is identified as a preset value in the plurality of virtual storage segments, and is used for storing a correspondence between each virtual storage segment and the stored file and a storage state of each virtual storage segment.
  • the storage state of the virtual storage segment includes a storable state and a non-storable state.
  • the above preset values may be 0, 1, 2, etc., and the application does not limit this.
  • the file system before storing any data in the disk, the file system needs to be formatted to determine the type of the disk, thereby determining the size of the physical address segment corresponding to each Vzone (virtual storage segment).
  • the disk is divided into multiple Vzones according to the physical address.
  • the file system uses these Vzones as the minimum storage management unit of the disk, and determines the storage location of the data to be stored according to the Vzone.
  • the size of the physical address segment corresponding to each Vzone is equal to the size of the actual physical storage area.
  • the Host Manage disk or the Host Aware disk is SMR (Shingled Magnetic Recording).
  • SMR Single Magnetic Recording
  • a type of disk, SMR disks are divided into Host Manage, Host Aware and Drive Manage.
  • Host Manage is a disk that is controlled by the host to read and write.
  • Host Aware is A disk that is controlled by the host to read and write, which supports random write operations, but write performance is degraded during random write operations;
  • Drive Manage is a disk that is read and written by disk control, which supports random write operations; the SMR disk The read and write object refers to the actual physical address of the disk;
  • the determined disk type is not Host Manage and Host Aware, you can determine the size of the physical address segment corresponding to each Vzone according to the actual data storage requirements. For example, when a large data file is frequently stored on the disk, the Vzone can be mapped. The size of the physical address segment is set larger. When a file with small data is often stored on the disk, the size of the physical address segment corresponding to the Vzone can be set smaller.
  • the file system divides the physical address of the disk into a plurality of num(X) to num(X+1) segments, as shown in FIG. 2, and FIG. 2 is a A schematic diagram of a virtual storage segment, wherein num(x) and num(x+1) each represent a different physical address, that is, num(x) to num(x+1) are one physical address segment; each physical address The segment corresponds to a Vzone.
  • the physical address segment corresponding to the Vzone0 can be different in size from the physical address segment corresponding to the other Vzones, and can be randomly written; Vzone1-Vzonex
  • the physical address segments are equal in size and can only be written sequentially in this area.
  • the correspondence between the file and the Vzone is: one-to-many, that is, the data of one file can be stored in multiple Vzones.
  • the correspondence between the file and the Vzone can also be: many-to-one, that is, a Vzone can also be stored. Multiple files.
  • Vzone0 stores metadata
  • Vzone1-Vzonex stores file data, which facilitates centralized allocation of metadata and data areas, and avoids fragmentation of data stored on the disk.
  • the metadata storage segment is used to store metadata.
  • the metadata may include: reserved space, super block, super block backup, file index, file index backup, file index bitmap, Vzone bitmap, Vzone bitmap. Backup, Vzone descriptor, Vzone descriptor backup and mapping table; other Vzones are used to store actual file data.
  • FIG. 3 is a schematic diagram of metadata arrangement in a metadata storage segment according to an embodiment of the present disclosure, where
  • Boot block reserved space for storing disk partition information, etc.
  • Super block The information about the file system, including the number of the Vzone to which the current file system is assigned, the total number of Vzones, the total number of idle Vzones, the threshold of multiple files for a single zone, and the file system.
  • the maximum number of files that is, the number of file index inodes), wherein one file index corresponds to one file; in addition, the super block back is a backup of the area;
  • Vzone bitmap Each bit represents a Vzone, 1 means used, 0 means unused; in addition, Vzone bitmap back is the backup of the area;
  • File index bitmap (Inode bitmap) : Each bit represents a file, 1 means used, 0 means unused; when the file is created, it will look up the bitmap, and assign the index number from small to large each time according to the bitmap;
  • File index (Inode): describes the file information, including the starting physical address of the mapping table.
  • the file index also records the corresponding way of the file and Vzone, that is, a Vzone corresponds to multiple files (multi) or a Vzone can only Owned by a file (only); contains the number of the Vzone used by the current file; in addition, the file index backup (Inode back) is a backup of the area;
  • Mapping table (hik map): records the correspondence between the logical address of each file and the physical address of the disk;
  • Vzone description describes the number of users (files) of the current Vzone; describes the location of the current Vzone write pointer; in addition, the Vzone description back is the backup of the zone.
  • the present application is only described by taking the above as an example, and does not limit the order of the above metadata and the size of the occupied space, and only indicates that the metadata is recorded in Vzone0; in addition, the super block stores the idle Vzone.
  • the number of idle Vzones recorded in the Vzone bitmap The number can be quickly obtained for the target Vzone.
  • the target Vzone for storing the data to be stored may be determined according to the foregoing information stored in the metadata storage segment.
  • S103 Obtain a last storage location of data stored in the target virtual storage segment, and determine the obtained storage location as a starting storage location of the data to be stored;
  • the target virtual storage segment is the number of the Vzone to which the current file system is recorded in the superblock
  • the initial storage location of the data to be stored may be determined according to the location of the Vzone write pointer recorded in the Vzone descriptor.
  • the location of the current Vzone write pointer is the end storage location of the data stored in the current Vzone.
  • S104 Store data to be stored starting from a starting storage location.
  • the disk of the terminal may contain multiple physical storage area zones.
  • the zone is the smallest physical storage unit of the disk, and the data storage algorithm of the zone of each disk is different. Therefore, the data to be stored is not allowed to cross. Zone storage.
  • step S104 may include:
  • S02. Determine, according to the amount of data of the data to be stored, each target physical storage area where the data to be stored is to be stored;
  • the target Vzone to be stored is determined, because the Vzone has a corresponding relationship with the zone, and then the target zones for storing the data to be stored are determined.
  • the data volume of the data to be stored a is 100 kB
  • the determined target Vzone is Vzone1.
  • the storage space of the Vzone1 corresponding to the data to be stored corresponds to zone1 and zone2, so that the target physical storage area is zone1 and zone2.
  • the data to be stored is to be stored across the area, the data to be stored is divided into data corresponding to each target physical storage area according to the determined available storage capacity of each target physical storage area and the amount of data to be stored. Piece;
  • step S02 it can be determined that the data to be stored a is to be stored across regions. It is assumed that the available storage capacity of zone1 is 30 kB, and the available storage capacity of zone 2 is 80 kB, and the physical of zone1 corresponds to The address segment is in the front, and the physical address segment corresponding to zone2 is behind. Therefore, the data to be stored a is divided into a data block with a data volume of 30 kB and a data block of 70 kB.
  • the data to be stored may be directly stored from the initial storage location.
  • the plurality mentioned in the present application is at least two.
  • the terminal receives the storage request for the data to be stored, and determines, according to the identifier of the target file corresponding to the to-be-stored data and the information stored in the metadata storage segment, that the storage request is used to store the to-be-stored data. And storing a target virtual storage segment of the data, obtaining a storage location of the end of the data stored in the target virtual storage segment, and determining the obtained storage location as a starting storage location of the data to be stored, and storing the to-be-stored storage location from the initial storage location Storing data.
  • FIG. 4 is a schematic flowchart of another data storage method according to an embodiment of the present disclosure.
  • the terminal is applied to a terminal, where the terminal includes at least one disk, and the disk can be divided into multiple virtual storage segments according to physical addresses, and multiple virtual disks.
  • the physical address ranges corresponding to the storage segments do not overlap.
  • step S102 may include the following steps:
  • the foregoing data storage method may further include:
  • a file for the data needs to be created first.
  • the process of copying a data a is: creating a file A for the data a and storing the data a into the file A.
  • a file index inode for each file is stored in the metadata storage segment, and the Inode includes a correspondence between the file and the Vzone corresponding to the file. If only the file A is created, the data is not stored in the file A. , only need to assign an index number to the file A, and there is no need to allocate a Vzone for the file A, that is, there is no need to allocate a physical address segment for the file A, and thus it is not determined to store the initial storage location of the file A, thereby reducing The file that does not store data occupies storage space and reduces the workload of the terminal.
  • the number of the Vzone corresponding to the file A in the Inode is set to indicate an unassigned value, such as -1.
  • the terminal when the terminal stores the data, if the identifier of the target file corresponding to the data to be stored is not the same as the number of the corresponding Vzone in the inode, it can be considered as being in the stored state and in the stored state.
  • the data a of the file A is preferably stored in the adjacent area of the other data belonging to the file A, so that the terminal can obtain the data of the file A; if the identifier of the target file corresponds to the Vzone number is -1 In the case of the data in the unstorage state, it is only necessary to obtain the area in which the data a can be stored. In order to quickly store the data, the current Vzone can be obtained in the metadata storage section.
  • Vzone corresponding to the number of the Vzone to which the current file system is located in the superblock mentioned in the above step S102
  • Vzone is fine.
  • S1022 Obtain a first virtual storage segment of the storage target file according to the information stored in the metadata storage segment;
  • the number of the first virtual storage segment corresponding to the identifier of the target file may be obtained from the inode stored in the metadata storage segment, thereby determining the first storage target file.
  • Virtual storage segment a mapping between the number of the first virtual storage segment corresponding to the identifier of the target file.
  • the first virtual storage segment may be determined to be in a non-storable state, and otherwise in a storable state.
  • the obtained first virtual storage segment may be one or multiple.
  • S1024 Determine, according to the first virtual storage segment, a target virtual storage segment for storing data to be stored;
  • the determining, by using the first virtual storage segment, the target virtual storage segment for storing data to be stored may include:
  • the virtual storage segment in which the data belonging to the target file is last stored in the first virtual storage segment is determined as the target virtual storage segment for the data to be stored.
  • Vzone2 is the virtual storage segment of the data of the last stored file A. Therefore, it is determined that Vzone2 is used for data to be stored.
  • the target virtual bucket ensures that the data of the same file is stored in the order of physical addresses, which is convenient for the terminal to quickly and accurately obtain the data of the same file.
  • Vzone1 and/or Vzone2 when Vzone1 and/or Vzone2 are in a storable state, the data of file A can be updated, and the data of file A stored in Vzone2 is updated to Vzone1. If Vzone1 is still in a storable state after updating, it indicates that file A is The data is stored in the Vzone1, and the Vzone1 is determined to be the target virtual storage segment for the data to be stored. If the Vzone1 is not in the storage state after the update, and the file A data is also stored in the Vzone2, it can be determined that the Vzone2 is used for The target virtual storage segment of the data to be stored. This ensures that the data of the same file can be stored in adjacent areas, and the fragmentation of data storage in the terminal can be effectively avoided.
  • S1025 Determine, from the virtual storage segment closest to the physical address of the first virtual storage segment, a target virtual storage segment for storing data to be stored.
  • the terminal searches according to the information stored in the metadata storage segment according to the Vzone number from the smallest to the largest, that is, according to the physical address from the front to the back, starting from the number of the first virtual storage segment and searching backward.
  • the target virtual storage segment is determined by storing the number of the virtual storage segment of the data to be stored.
  • the determining, from the virtual storage segment that is closest to the physical address of the first virtual storage segment, the target virtual storage segment for storing the data to be stored may include:
  • the storage manner of each file stored in the metadata storage segment of the terminal is stored. Only when the storage mode of the target file is determined, how to store the data to be stored in the target file, and then determine the data to be stored.
  • Target virtual storage segment includes: the first storage mode is: storing a file in a virtual storage segment; and the second storage mode is: storing a plurality of files in a virtual storage segment.
  • the storage mode is the first storage mode, determine that the virtual storage segment that is closest to the physical address of the first virtual storage segment and does not store data is a target virtual storage segment for storing data to be stored.
  • the Vzone bitmap marked as an unused Vzone in the metadata storage segment If the number of users of the free virtual storage segment A recorded in the Vzone descriptor is 0, the virtual storage segment A may be determined to be The target virtual storage segment; when the number of users in the virtual storage segment A is not 0, continue to look for the idle virtual storage segment B backward.
  • the Vzone bitmap in the metadata storage segment is marked as a used Vzone, and data not in the file is prevented from being written into the Vzone.
  • the data storage of the first storage mode can be divided into two types:
  • the number of the idle virtual storage segment A is the position of the number of the first virtual storage segment in the metadata storage segment, and it can be determined that the virtual storage segment A is the target virtual storage segment.
  • the number of users in the virtual storage segment A is increased by 1. If the number of users in the virtual storage segment A is greater than a threshold, the threshold is determined by a single zone in the superblock corresponding to a threshold of multiple files.
  • the Vzone bitmap of the metadata storage segment is marked as the used Vzone, and the same Vzone is prevented from being written to the data multiple times, resulting in abnormal data of the surrounding Vzone, for example, data of the surrounding Vzone. Being magnetized.
  • the target file is in the stored state, and the first virtual of the storage target file is obtained according to the information stored in the metadata storage segment.
  • the storage segment determines whether the first virtual storage segment is in a storable state, and if in the storable state, determines a target virtual storage segment for storing data to be stored according to the first virtual storage segment, and if it is in a non-storable state, In the virtual storage segment where the physical address of the virtual storage segment is closest, the target virtual storage segment for storing the data to be stored is determined. In this way, the data of the same file is stored in the most recent virtual storage segment that can be stored, which reduces the time required for seeking, and ensures that the terminal can quickly and accurately obtain the data of the same file.
  • FIG. 5 is a schematic flowchart of another data storage method according to an embodiment of the present disclosure.
  • the terminal is applied to a terminal, where the terminal includes at least one disk, and the disk may be divided into multiple virtual storage segments according to physical addresses, and multiple virtual disks.
  • the physical address range corresponding to the storage segment does not overlap; in the case that the target file is not stored, the method may further include the following steps:
  • the data amount of the data to be stored may be obtained according to the data to be stored; of course, the data amount of the data to be stored may be included in the storage request.
  • step S1027 may be directly performed according to the data amount.
  • step S1027 It is determined whether the obtained data amount is greater than the preset data amount, if it is greater than the preset data amount, step S1028 is performed, if it is not greater than the preset data amount, step S1029 is performed;
  • the target file corresponding to the data to be stored may be considered as a big data file.
  • the target file is stored.
  • the mode is determined as the first storage mode, and the big data file is stored in multiple Vzones, which affects the reading of the target file by the terminal.
  • the target file corresponding to the data to be stored may be considered as a small data file.
  • the storage mode of the target file is determined as the second storage mode. Avoid small data files occupying a Vzone, causing waste of storage space.
  • S10210 Determine, according to the determined storage manner, a target virtual storage segment for storing data to be stored.
  • the number of the current virtual storage segment (the number of the Vzone to which the current file system is assigned) is obtained in the metadata storage segment, and the number of the current virtual storage segment is The location starts, and the number of the virtual storage segment A that is idle and the number of users is 0 is searched backwards, and the virtual storage segment A is determined to be the target virtual storage segment.
  • the number of the Vzone1 to which the first storage mode is assigned is obtained in the metadata storage segment, and the number of users in the Vzone1 is 0 or the number of users in the Vzone1 exceeds the threshold.
  • the Vzone2 is the target virtual storage segment.
  • the number of users in Vzone1 is not If the number of users of 0 or Vzone1 does not exceed the threshold, the Vzone1 is directly determined as the target virtual storage segment. In this way, the Vzone with the number of users of 0 is occupied, which affects the data storage of the file in the first storage mode.
  • FIG. 6 is a schematic flowchart of a method for allocating a virtual storage segment according to an implementation of the present application, which may include the following steps:
  • the number of free Vzones is recorded in the super block. If the super block does not contain an idle Vzone, an error is returned.
  • the number of the Vzone to which the file system was last assigned is the number of the current Vzone recorded in the metadata storage segment.
  • the number of free Vzones is reduced by the number of allocated Vzones, and the Vzone number (the current Vzone number) that was last allocated by the file system is updated for use in the next allocation.
  • the method may further include:
  • the corresponding relationship between the identifier of the target file and the number of the Vzone is stored in the inode.
  • the terminal stores the data of the target file again, and the number of the corresponding Vzone is read, it can be determined that the target file is in the stored state.
  • the terminal obtains the data amount of the data to be stored, and determines whether the obtained data amount is greater than the preset data amount. If the data volume is greater than the preset data amount, determining that the storage method of the target file is the first storage mode, if The storage mode of the target file is determined to be the second storage mode, and the target virtual storage segment for storing the data to be stored is determined according to the determined storage manner. In this way, centralized storage of data of big data files is effectively ensured, and the problem that small data file storage wastes storage space is avoided.
  • FIG. 7 is a schematic structural diagram of a data storage device according to an embodiment of the present disclosure, which is applied to a terminal, where the terminal includes at least one disk, and the disk is divided into multiple virtual storage segments according to physical addresses, and multiple virtual storage segments.
  • the corresponding physical address ranges do not coincide; the device may include:
  • the storage request receiving module 701 is configured to receive a storage request for the data to be stored, where the storage request includes: an identifier of the target file corresponding to the data to be stored;
  • the target virtual storage segment determining module 702 is configured to determine, according to the identifier of the target file and the information stored in the metadata storage segment, a target virtual storage segment for storing data to be stored, where the metadata storage segment is a plurality of virtual storage segments.
  • a virtual storage segment that is identified as a preset value, and is used for storing a correspondence between each virtual storage segment and a stored file and a storage state of each virtual storage segment;
  • the initial storage location determining module 703 is configured to obtain a storage location of the end of the data stored in the target virtual storage segment, and determine the obtained storage location as a starting storage location of the data to be stored;
  • the data storage module 704 is configured to store data to be stored starting from a starting storage location.
  • the disk includes multiple physical storage areas, where the physical storage area is the smallest physical storage unit of the disk;
  • the data storage module 704 can include:
  • a second data amount obtaining submodule configured to obtain a data amount of data to be stored
  • a storage area determining submodule configured to determine, according to the amount of data, each target physical storage area where the data to be stored is to be stored;
  • a data block dividing sub-module configured to divide the data to be stored into corresponding physical storage areas of each target according to the determined available storage capacity and data amount of each target physical storage area, where the data to be stored is to be stored across regions Data block
  • the data block storage sub-module is configured to separately store the divided data blocks into corresponding target physical storage areas (not shown in FIG. 7).
  • the terminal receives the storage request for the data to be stored, and determines, according to the identifier of the target file corresponding to the data to be stored and the information stored in the metadata storage segment, that the storage request is used to store the to-be-stored data. And storing a target virtual storage segment of the data, obtaining a storage location of the end of the data stored in the target virtual storage segment, and determining the obtained storage location as a starting storage location of the data to be stored, and storing the to-be-stored storage location from the initial storage location Storing data.
  • FIG. 8 is a schematic structural diagram of another data storage device according to an embodiment of the present application.
  • the device is applied to the terminal, the terminal includes at least one disk, and the disk is divided into multiple virtual storage segments according to the physical address, and the physical address ranges corresponding to the multiple virtual storage segments are not coincident;
  • the target virtual storage segment determining module 702 includes:
  • the first storage state determining sub-module 7021 is configured to determine, according to the identifier of the target file, whether the target file is in a stored state;
  • the virtual storage segment obtaining sub-module 7022 is configured to obtain, according to the information stored in the metadata storage segment, the first virtual storage segment of the storage target file, if the first storage state determination sub-module determines that the result is YES;
  • the second storage state determining sub-module 7023 is configured to determine whether the first virtual storage segment is in a storable state
  • a first target virtual storage segment determining sub-module 7024 configured to determine, according to the first virtual storage segment, a target virtual storage segment for storing data to be stored, if the second storage state determining sub-module determines that the result is YES;
  • the second target virtual storage segment determining sub-module 7025 is configured to determine, from the virtual storage segment closest to the physical address of the first virtual storage segment, that the second storage state determination sub-module determines that the result is negative.
  • the first target virtual storage segment determining sub-module 7024 is specifically configured to determine, in the first virtual storage segment, the virtual storage segment of the data that belongs to the target file for the last time, to be used for storage.
  • the target virtual storage segment of the data is specifically configured to determine, in the first virtual storage segment, the virtual storage segment of the data that belongs to the target file for the last time, to be used for storage.
  • the second target virtual storage segment determining submodule 7025 may include:
  • a storage mode obtaining unit for obtaining a storage method of the target file
  • a first target virtual storage segment determining unit configured to determine, in a storage mode that is the first storage mode, that the virtual storage segment that is closest to the physical address of the first virtual storage segment and that does not store data is used to store data to be stored.
  • a target virtual storage segment wherein the first storage mode is: storing a file in a virtual storage segment;
  • a second target virtual storage segment determining unit configured to be in a storage mode of the second storage mode And obtaining a second virtual storage segment that is closest to the physical address of the first virtual storage segment and the storage manner of the stored file is not the first storage manner; determining the second virtual storage segment as the target virtual storage for storing the data to be stored A segment, wherein the second storage mode is: storing a plurality of files in a virtual storage segment.
  • the data storage device may further include:
  • Creating an instruction receiving module configured to receive a file creation instruction for the file to be created
  • a file creation module configured to create a file to be created, and set a storage state of the file to be created to an unstored state in the metadata storage segment, and reject a starting storage location of the data of the file to be created (not shown in FIG. 8) ).
  • the target file is in the stored state, and the first virtual of the storage target file is obtained according to the information stored in the metadata storage segment.
  • the storage segment determines whether the first virtual storage segment is in a storable state, and if in the storable state, determines a target virtual storage segment for storing data to be stored according to the first virtual storage segment, and if it is in a non-storable state, In the virtual storage segment where the physical address of the virtual storage segment is closest, the target virtual storage segment for storing the data to be stored is determined. In this way, the data of the same file is stored in the most recent virtual storage segment that can be stored, which reduces the time required for seeking, and ensures that the terminal can quickly and accurately obtain the data of the same file.
  • FIG. 9 is a schematic structural diagram of another data storage device according to an embodiment of the present disclosure.
  • the terminal is applied to a terminal, where the terminal includes at least one disk, and the disk is divided into multiple virtual storage segments according to physical addresses, and multiple virtual storages are used.
  • the physical address range corresponding to the segment does not overlap; in the device, the target virtual storage segment determining module 702 may include:
  • a first data amount obtaining sub-module 7026 configured to obtain a data amount of data to be stored if the first storage state determining sub-module determining result is negative;
  • the data amount determining sub-module 7027 is configured to determine whether the obtained data amount is greater than a preset data amount
  • the first storage mode determining sub-module 7028 is configured to determine, according to the determination result of the data quantity determining sub-module, that the storage mode of the target file is the first storage mode, where the first storage mode is: in a virtual storage segment Store how a file is stored;
  • the second storage mode determining sub-module 7029 is configured to determine that the storage mode of the target file is the second storage mode, where the second storage mode is: in a virtual storage segment. Store how multiple files are stored;
  • the third target virtual storage segment determining sub-module 70210 is configured to determine, according to the determined storage manner, a target virtual storage segment for storing data to be stored.
  • the data storage device may further include:
  • a storage status setting module is configured to set a storage state of the target file to a stored state (not shown in FIG. 9).
  • the terminal obtains the data amount of the data to be stored, and determines whether the obtained data amount is greater than the preset data amount. If the data volume is greater than the preset data amount, determining that the target file is stored in the first storage mode.
  • the storage mode of the target file is determined to be the second storage mode, and the target virtual storage segment for storing the data to be stored is determined according to the determined storage manner. In this way, centralized storage of data of big data files is effectively ensured, and the problem that small data file storage wastes storage space is avoided.
  • the embodiment of the present application provides a terminal, where the terminal includes: a housing 1001, a processor 1002, a memory 1003, a circuit board 1004, and a power circuit 1005, wherein the circuit board 1004 is disposed at the Inside the space enclosed by the housing 1001, the processor 1002 and the memory 1003 are disposed on the circuit board 1004; the power circuit 1005 is configured to supply power to each circuit or device of the terminal;
  • the memory 1003 is configured to store executable program code; the processor 1002 performs the following steps by running executable program code stored in the memory 1003:
  • Receiving a storage request for the data to be stored where the storage request includes: an identifier of the target file corresponding to the data to be stored;
  • a target virtual storage segment for storing the to-be-stored data, where the metadata storage segment is identified as a plurality of virtual storage segments.
  • the virtual storage segment of the value is used to store the correspondence between each virtual storage segment and the stored file and the storage state of each virtual storage segment;
  • the data to be stored is stored starting from the initial storage location.
  • the terminal receives the storage request for the data to be stored, and determines, according to the identifier of the target file corresponding to the data to be stored and the information stored in the metadata storage segment, that the storage request is used for storage.
  • the target virtual storage segment of the data to be stored obtains the end storage location of the data stored in the target virtual storage segment, and determines the obtained storage location as the initial storage location of the data to be stored, and stores the storage location from the initial storage location.
  • the data to be stored In this way, it is not necessary to find the free storage space in the order of the physical address of the storage space, and it is not necessary to judge the found free storage space every time to determine whether it can store the target data, only in the metadata storage segment. Find the corresponding target storage segment, which effectively reduces the time spent searching.
  • the terminal exists in many forms, including but not limited to:
  • Mobile communication devices These devices are characterized by mobile communication functions and are mainly aimed at providing voice and data communication.
  • Such terminals include: smart phones (such as iPhone), multimedia phones, functional phones, and low-end phones.
  • Ultra-mobile personal computer equipment This type of equipment belongs to the category of personal computers, has computing and processing functions, and generally has mobile Internet access.
  • Such terminals include: PDAs, MIDs, and UMPC devices, such as the iPad.
  • Portable entertainment devices These devices can display and play multimedia content. Such devices include: audio, video players (such as iPod), handheld game consoles, e-books, and smart toys and portable car navigation devices.
  • the server consists of a processor, a hard disk, a memory, a system bus, etc.
  • the server is similar to a general-purpose computer architecture, but because of the need to provide highly reliable services, processing power and stability High reliability in terms of reliability, security, scalability, and manageability.
  • the embodiment of the present application provides an executable program code, where the executable program code is used to execute the data storage method provided by the embodiment of the present application at a runtime, where the data storage method includes:
  • Receiving a storage request for the data to be stored where the storage request includes: an identifier of the target file corresponding to the data to be stored;
  • a target virtual storage segment for storing the to-be-stored data, where the metadata storage segment is identified as a plurality of virtual storage segments.
  • the virtual storage segment of the value is used to store the correspondence between each virtual storage segment and the stored file and the storage state of each virtual storage segment;
  • the data to be stored is stored starting from the initial storage location.
  • the terminal receives the storage request for the data to be stored, and determines, according to the identifier of the target file corresponding to the data to be stored and the information stored in the metadata storage segment, that the storage request is used to store the data to be stored.
  • the target virtual storage segment obtains the end storage location of the data stored in the target virtual storage segment, and determines the obtained storage location as the initial storage location of the data to be stored, and stores the to-be-stored data from the initial storage location. .
  • the embodiment of the present application provides a storage medium for storing executable program code, the executable program code is executed to execute the data storage method provided by the embodiment of the present application, where the data storage method includes:
  • Receiving a storage request for the data to be stored where the storage request includes: an identifier of the target file corresponding to the data to be stored;
  • a target virtual storage segment for storing the to-be-stored data, where the metadata storage segment is identified as a plurality of virtual storage segments.
  • the virtual storage segment of the value is used to store the correspondence between each virtual storage segment and the stored file and the storage state of each virtual storage segment;
  • the data to be stored is stored starting from the initial storage location.
  • the terminal receives the storage request for the data to be stored, and determines, according to the identifier of the target file corresponding to the data to be stored and the information stored in the metadata storage segment, that the storage request is used to store the data to be stored.
  • the target virtual storage segment obtains the end storage location of the data stored in the target virtual storage segment, and determines the obtained storage location as the initial storage location of the data to be stored, and stores the to-be-stored data from the initial storage location. .
  • the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Selon l'invention, un procédé et un appareil de stockage de données sont appliqués à un terminal. Le terminal comprend au moins un disque magnétique, le disque magnétique étant divisé en une pluralité de segments de stockage virtuels en fonction d'adresses physiques, et les plages des adresses physiques correspondant à la pluralité de segments de stockage virtuels ne se chevauchent pas. Le procédé comprend les étapes suivantes : recevoir une demande de stockage pour des données à stocker (S101) ; déterminer, selon un identifiant d'un fichier cible correspondant aux données à stocker présent dans la demande de stockage et des informations stockées dans un segment de stockage de métadonnées, un segment de stockage virtuel cible permettant de stocker les données à stocker (S102) ; acquérir une position de stockage finale des données stockées dans le segment de stockage virtuel cible, et déterminer la position de stockage acquise en tant que position de stockage initiale des données à stocker (S103) ; et stocker les données à stocker à partir de la position de stockage initiale (S104). Le procédé est utilisé pour stocker des données et réduire le temps de recherche.
PCT/CN2016/097775 2016-04-26 2016-09-01 Procédé et appareil de stockage de données WO2017185579A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610269953.7A CN107315533A (zh) 2016-04-26 2016-04-26 一种数据存储方法及装置
CN201610269953.7 2016-04-26

Publications (1)

Publication Number Publication Date
WO2017185579A1 true WO2017185579A1 (fr) 2017-11-02

Family

ID=60161850

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/097775 WO2017185579A1 (fr) 2016-04-26 2016-09-01 Procédé et appareil de stockage de données

Country Status (2)

Country Link
CN (1) CN107315533A (fr)
WO (1) WO2017185579A1 (fr)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109508143A (zh) * 2018-08-17 2019-03-22 郑州云海信息技术有限公司 一种数据存储方法及装置
CN110188903A (zh) * 2019-04-09 2019-08-30 口碑(上海)信息技术有限公司 预点单信息的处理方法及装置
CN111240843A (zh) * 2020-01-10 2020-06-05 北京猎豹移动科技有限公司 一种数据获取方法、装置、电子设备及存储介质
CN111666330A (zh) * 2019-03-06 2020-09-15 阿里巴巴集团控股有限公司 数据的读写方法和装置
US20230099290A1 (en) * 2017-08-07 2023-03-30 Weka.IO LTD Metadata control in a load-balanced distributed storage system

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108021513B (zh) * 2016-11-02 2021-09-10 杭州海康威视数字技术股份有限公司 一种数据存储方法及装置
CN108255742A (zh) * 2017-11-29 2018-07-06 深圳忆联信息系统有限公司 一种大容量固态硬盘映射方法
CN110502184B (zh) * 2018-05-17 2021-01-05 杭州海康威视系统技术有限公司 一种存储数据的方法、读取数据的方法、装置及系统
CN109683825B (zh) * 2018-12-24 2022-05-24 广东浪潮大数据研究有限公司 一种存储系统在线数据压缩方法、装置及设备
CN111506251B (zh) * 2019-01-30 2023-06-02 杭州海康威视系统技术有限公司 数据处理方法、装置、smr存储系统及存储介质
CN111400322B (zh) * 2020-03-25 2023-10-03 抖音视界有限公司 用于存储数据的方法、装置、电子设备和介质
CN113741796B (zh) * 2020-07-16 2024-04-16 北京沃东天骏信息技术有限公司 一种终端应用的数据持久化方法和装置
CN112214169B (zh) * 2020-09-28 2021-08-10 深圳大学 一种数据存储装置及存储数据的迁移方法
CN112199050A (zh) * 2020-10-22 2021-01-08 Tcl通讯(宁波)有限公司 存储方法、装置、存储介质及终端设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252070A1 (en) * 2010-04-09 2011-10-13 Dell Products L.P. System and Method for Appending Metadata to Objects
CN102253898A (zh) * 2011-07-22 2011-11-23 杭州海康威视数字技术股份有限公司 一种图像数据的内存管理方法及装置
CN102622350A (zh) * 2011-01-26 2012-08-01 腾讯科技(深圳)有限公司 一种写数据的方法、装置及系统
CN103761053A (zh) * 2013-12-30 2014-04-30 华为技术有限公司 一种数据处理方法和装置
CN105446664A (zh) * 2015-12-03 2016-03-30 深圳国微技术有限公司 一种对存储器进行文件存储方法和存储装置
CN105468642A (zh) * 2014-09-09 2016-04-06 杭州海康威视数字技术股份有限公司 数据的存储方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346357B (zh) * 2013-07-29 2018-02-13 中国科学院声学研究所 一种嵌入式终端的文件存取方法及系统
CN103955433A (zh) * 2014-05-09 2014-07-30 华为技术有限公司 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置
US20160103621A1 (en) * 2014-10-10 2016-04-14 Seagate Technology Llc Multi-Block Data Storage Using Data Compression
CN104461390B (zh) * 2014-12-05 2017-10-24 华为技术有限公司 将数据写入叠瓦状磁记录smr硬盘的方法及装置
CN105094695B (zh) * 2015-06-29 2018-09-04 浪潮(北京)电子信息产业有限公司 一种存储方法和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110252070A1 (en) * 2010-04-09 2011-10-13 Dell Products L.P. System and Method for Appending Metadata to Objects
CN102622350A (zh) * 2011-01-26 2012-08-01 腾讯科技(深圳)有限公司 一种写数据的方法、装置及系统
CN102253898A (zh) * 2011-07-22 2011-11-23 杭州海康威视数字技术股份有限公司 一种图像数据的内存管理方法及装置
CN103761053A (zh) * 2013-12-30 2014-04-30 华为技术有限公司 一种数据处理方法和装置
CN105468642A (zh) * 2014-09-09 2016-04-06 杭州海康威视数字技术股份有限公司 数据的存储方法及装置
CN105446664A (zh) * 2015-12-03 2016-03-30 深圳国微技术有限公司 一种对存储器进行文件存储方法和存储装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230099290A1 (en) * 2017-08-07 2023-03-30 Weka.IO LTD Metadata control in a load-balanced distributed storage system
US11847098B2 (en) * 2017-08-07 2023-12-19 Weka.IO Ltd. Metadata control in a load-balanced distributed storage system
CN109508143A (zh) * 2018-08-17 2019-03-22 郑州云海信息技术有限公司 一种数据存储方法及装置
CN111666330A (zh) * 2019-03-06 2020-09-15 阿里巴巴集团控股有限公司 数据的读写方法和装置
CN111666330B (zh) * 2019-03-06 2023-05-02 阿里巴巴集团控股有限公司 数据的读写方法和装置
CN110188903A (zh) * 2019-04-09 2019-08-30 口碑(上海)信息技术有限公司 预点单信息的处理方法及装置
CN111240843A (zh) * 2020-01-10 2020-06-05 北京猎豹移动科技有限公司 一种数据获取方法、装置、电子设备及存储介质
CN111240843B (zh) * 2020-01-10 2024-05-14 北京聚云立方科技有限公司 一种数据获取方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN107315533A (zh) 2017-11-03

Similar Documents

Publication Publication Date Title
WO2017185579A1 (fr) Procédé et appareil de stockage de données
US11068455B2 (en) Mapper tree with super leaf nodes
US11461027B2 (en) Deduplication-aware load balancing in distributed storage systems
CN108647151B (zh) 一种全闪系统元数据落盘方法、装置、设备及存储介质
US9229826B2 (en) Volatile memory representation of nonvolatile storage device set
WO2017201977A1 (fr) Procédé et appareil d'écriture et de lecture de données, et grappe de stockage d'objet distribuée
KR102569545B1 (ko) 키-밸류 스토리지 장치 및 상기 키-밸류 스토리지 장치의 동작 방법
EP2863310B1 (fr) Procédé et appareil de traitement de données, ainsi que dispositif de stockage partagé
US10162746B2 (en) Allocating additional requested storage space for a data set in a first managed space in a second managed space
US9665485B2 (en) Logical and physical block addressing for efficiently storing data to improve access speed in a data deduplication system
US9201787B2 (en) Storage device file system and block allocation
US8751547B2 (en) Multiple file system and/or multi-host single instance store techniques
US9430492B1 (en) Efficient scavenging of data and metadata file system blocks
WO2021098267A1 (fr) Procédé, système et dispositif de traitement de disque magnétique, et support de stockage lisible
CN109240607B (zh) 一种文件读取方法和装置
CN103064639A (zh) 数据存储方法及装置
WO2018171296A1 (fr) Procédé et contrôleur de fusion de fichiers
CN111506269A (zh) 一种磁盘存储空间分配方法、装置、设备及存储介质
WO2019000949A1 (fr) Procédé et système de stockage de métadonées dans un système de stockage distribué, et support de stockage
US20150088858A1 (en) Data storage device deferred secure delete
WO2020192710A1 (fr) Procédé de traitement des objets inutilisés au moyen d'une base de données lsm, d'un disque dur à semi-conducteurs et d'un appareil de stockage
WO2019072250A1 (fr) Système et procédé de gestion de documents, dispositif électronique et support de stockage
US9009204B2 (en) Storage system
WO2017054636A1 (fr) Procédé et appareil pour traiter des instantanés de machine virtuelle
US10482012B1 (en) Storage system and method of operating thereof

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16900088

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16900088

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16900088

Country of ref document: EP

Kind code of ref document: A1