CN105740303B - The method and device of improved object storage - Google Patents
The method and device of improved object storage Download PDFInfo
- Publication number
- CN105740303B CN105740303B CN201410772951.0A CN201410772951A CN105740303B CN 105740303 B CN105740303 B CN 105740303B CN 201410772951 A CN201410772951 A CN 201410772951A CN 105740303 B CN105740303 B CN 105740303B
- Authority
- CN
- China
- Prior art keywords
- metadata
- storage
- storage region
- index information
- location
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/235—Update request formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/289—Object oriented databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention discloses a kind of method and devices of improved object storage.In the method, metadata has only been updated in response to the object in object storage region, change record metadata object associated with the object in storage region in the metadata separated with the object storage region, the metadata object includes the metadata of the update of the object and the pointer information of the first storage location for being directed toward storage location of the expression object in the object storage region.Then, index information associated with the object is modified, so that modified index information indicates that the object has only been updated metadata and the second storage location for indicating storage location of the metadata object in metadata change storage region.In addition, also disclosing the method and device for retrieving the object in object storage device.
Description
Technical field
The present invention relates to object storage technology, more particularly, to a kind of improved object storage method and apparatus, with
And the method and apparatus of the object in retrieval object storage device.
Background technique
Object storage technology is increasingly becoming critical storage technology used in private clound and public cloud service provider,
It can provide the expansible data storage of the redundancy for being able to use the cluster of standardized server to store the data of thousand terabytes.
Object storage system take object as the basic unit of storage, and each object is the comprehensive of data and data property set
It closes.When creating object, the attribute of metadata table registration evidence, such as title, creation time, the owner, founder, size are used
With other user's Custom Attributes.In general, object is stored in object storage device.Object storage device can be managed at it
The object of upper storage and metadata relevant to these objects.
It can be used file system as bottom architecture in object storage device.In such object storage device, lead to
Often usable two ways is to handle a large amount of objects with a smaller size, thus optimization object storage performance.
A kind of mode is using log-structured type data storage file, and this file itself has larger size, wherein
It can store the object of multiple smaller sizes.Whenever creating new object, which will be affixed in this document
The last one object after, with realize object accesses continuous input/output (sequential I/O) operation, to improve
Input/input efficiency.
Another way is indexed using the memory of optimization, EMS memory occupation (about 10 word of each object with very little
Section), relatively large EMS memory occupation (the about several hundred bytes of each object that metadata is stored using inode and is generated can be reduced
To 1K byte).
In log-structured type data storage file, generally, the data (being alternatively referred to as content sometimes) and object of object
Metadata stored together as whole.Since new object can only be affixed to log-structured type data storage file
In, therefore, the update operation when object in file updates generally includes two steps: firstly, new object is added
Into log-structured type data storage file after the last one object, then, former object is deleted.This update operation will not be broken
Bad continuous input/output operations.However, metadata updates and content update are not distinguished in this update operation.Therefore, even only
Only have updated the metadata of object and the not situation of more new content, it is also desirable to replicate the raw content of object and new first number is set
According to.In general, the size of metadata is far smaller than the size of content, therefore, when using this update operation, to unchanged right
The content of elephant, which carries out duplication, will cause the waste of input/output operations and disk space.
Summary of the invention
The embodiment provides a kind of method and apparatus of improved object storage and one kind for retrieval pair
As the method and apparatus of the object in storage equipment.
According to an aspect of the invention, there is provided a kind of method of improved object storage comprising: in response to object
Object in storage region has only been updated metadata, changes memory block in the metadata separated with the object storage region
Metadata object associated with the object is recorded in domain, the metadata object includes the metadata of the update of the object
With the pointer information of the first storage location for being directed toward storage location of the expression object in the object storage region;
And modification index information associated with the object, so that modified index information indicates the object only by more
New metadata and indicate that the metadata object changes the second storage of the storage location in storage region in the metadata
Position.
According to another aspect of the present invention, a kind of method for retrieving the object in object storage device is provided,
Wherein, the object storage device carrys out storage object using the method that above-mentioned improved object stores, which comprises rings
Index information associated with the object should be searched in the request for obtaining object;In response to described in index information instruction
Object has only been updated metadata, and the storage of metadata object associated with the object is obtained from the index information
Position;Based on the storage location of the acquired metadata object, the metadata object is retrieved;From the metadata object
The metadata of the middle update for obtaining the object and the pointer information of the storage location for being directed toward the object;Based on the finger
Needle information retrieves the object.
According to a further aspect of the invention, a kind of device of improved object storage is provided comprising: record mould
Block, the object being configured to respond in object storage region have only been updated metadata, with the object memory block
The metadata of domain separation changes record metadata object associated with the object in storage region comprising the object
The metadata of update and for being directed toward the first storage position for indicating the storage location of the object in the object storage region
The pointer information set;And modified module, it is configured as modification index information associated with the object, so that modification
Index information afterwards indicates that the object has only been updated metadata and for indicating the metadata object in first number
According to the second storage location for changing the storage location in storage region.
According to a further aspect of the invention, provide it is a kind of for retrieving the device of the object in object storage device,
Wherein, for the device that the object storage device is stored by above-mentioned improved object come storage object, described device includes: to look into
Module is looked for, is configured to respond to obtain the request of object, searches index information associated with the object;Obtain mould
Block is configured to respond to the index information and indicates that the object has only been updated metadata, from the index information
The middle storage location for obtaining metadata object associated with the object;And retrieval module, it is configured as being based on being obtained
The storage location of the metadata object taken retrieves the metadata object;Wherein, the acquisition module is further configured
For obtained from the metadata object object update metadata and storage location for being directed toward the object
Pointer information;The retrieval module is configured to retrieve the object based on the pointer information.
First number of the method and apparatus of the improved object storage of embodiment according to the present invention mainly for only object
The case where according to changing, can be not necessarily to replicate the unchanged content of object, so that the efficiency for updating operation is effectively improved,
And the continuous input/output operations of keeping object access.
The method and apparatus for retrieving the object in object storage device of embodiment according to the present invention can be effective
The ground identification object that only metadata changes, and it is retrieved.
Detailed description of the invention
Disclosure illustrative embodiments are described in more detail in conjunction with the accompanying drawings, the disclosure above-mentioned and its
Its purpose, feature and advantage will be apparent, wherein in disclosure illustrative embodiments, identical reference label
Typically represent same parts.
Fig. 1 shows the block diagram for being suitable for the exemplary computer system/server 12 for being used to realize embodiment of the present invention;
Fig. 2 is the schematic flow chart of the method for the improved object storage of embodiment according to the present invention;
Fig. 3 is the exemplary schematic diagram for illustrating the method for embodiment illustrated in fig. 2;
Fig. 4 is the schematic stream of the method for retrieving the object in object storage device of embodiment according to the present invention
Cheng Tu;
Fig. 5 is the schematic block diagram of the device of the improved object storage of embodiment according to the present invention;
Fig. 6 is the schematic frame of the device for retrieving the object in object storage device of embodiment according to the present invention
Figure.
Specific embodiment
The preferred embodiment of the disclosure is more fully described below with reference to accompanying drawings.Although showing the disclosure in attached drawing
Preferred embodiment, however, it is to be appreciated that may be realized in various forms the disclosure without the embodiment party that should be illustrated here
Formula is limited.On the contrary, these embodiments are provided so that this disclosure will be more thorough and complete, and can be by the disclosure
Range is completely communicated to those skilled in the art.
Fig. 1 shows the block diagram for being suitable for the exemplary computer system/server 12 for being used to realize embodiment of the present invention.
The computer system/server 12 that Fig. 1 is shown is only an example, should not function and use scope to the embodiment of the present invention
Bring any restrictions.
As shown in Figure 1, computer system/server 12 is showed in the form of universal computing device.Computer system/service
The component of device 12 can include but is not limited to: one or more processor or processing unit 16, system storage 28, connection
The bus 18 of different system components (including system storage 28 and processing unit 16).
Bus 18 indicates one of a few class bus structures or a variety of, including memory bus or Memory Controller,
Peripheral bus, graphics acceleration port, processor or the local bus using any bus structures in a variety of bus structures.It lifts
For example, these architectures include but is not limited to industry standard architecture (ISA) bus, microchannel architecture (MAC)
Bus, enhanced isa bus, Video Electronics Standards Association (VESA) local bus and peripheral component interconnection (PCI) bus.
Computer system/server 12 typically comprises a variety of computer system readable media.These media, which can be, appoints
What usable medium that can be accessed by computer system/server 12, including volatile and non-volatile media, it is moveable and
Immovable medium.
System storage 28 may include the computer system readable media of form of volatile memory, such as arbitrary access
Memory (RAM) 30 and/or cache memory 32.Computer system/server 12 may further include other removable
Dynamic/immovable, volatile/non-volatile computer system storage medium.Only as an example, storage system 34 can be used for
Read and write immovable, non-volatile magnetic media (Fig. 1 do not show, commonly referred to as " hard disk drive ").Although not showing in Fig. 1
Out, the disc driver for reading and writing to removable non-volatile magnetic disk (such as " floppy disk ") can be provided, and to removable
The CD drive of anonvolatile optical disk (such as CD-ROM, DVD-ROM or other optical mediums) read-write.In these cases,
Each driver can be connected by one or more data media interfaces with bus 18.Memory 28 may include at least one
A program product, the program product have one group of (for example, at least one) program module, these program modules are configured to perform
The function of various embodiments of the present invention.
Program/utility 40 with one group of (at least one) program module 42 can store in such as memory 28
In, such program module 42 includes --- but being not limited to --- operating system, one or more application program, other programs
It may include the realization of network environment in module and program data, each of these examples or certain combination.Program mould
Block 42 usually executes function and/or method in embodiment described in the invention.
Computer system/server 12 can also be (such as keyboard, sensing equipment, aobvious with one or more external equipments 14
Show device 24 etc.) communication, it is logical that the equipment interacted with the computer system/server 12 can be also enabled a user to one or more
Letter, and/or with the computer system/server 12 any is set with what one or more of the other calculating equipment was communicated
Standby (such as network interface card, modem etc.) communicates.This communication can be carried out by input/output (I/O) interface 22.And
And computer system/server 12 can also pass through network adapter 20 and one or more network (such as local area network
(LAN), wide area network (WAN) and/or public network, such as internet) communication.As shown, network adapter 20 passes through bus
18 communicate with other modules of computer system/server 12.It should be understood that although not shown in the drawings, computer can be combined
Systems/servers 12 use other hardware and/or software module, including but not limited to: microcode, device driver, at redundancy
Manage unit, external disk drive array, RAID system, tape drive and data backup storage system etc..
Fig. 2 shows the schematic flow charts of the method for the improved object of embodiment according to the present invention storage.Now
Referring to Fig. 2, the present embodiment is described in detail.
The method of the present embodiment is mainly for only the metadata of object changes the feelings of (update) in object stores
Shape.
As previously mentioned, the data of object and showing that the metadata of the property set of object can deposit together in object storage
Storage.In the case where usage log structure data stores and realizes data storage, log-structured type data storage file can be created
To store each object wherein.Log-structured type data storage file can be saved object storage device disk it is a certain
In storage region with larger size, which is referred to alternatively as " object storage region " herein.In log-structured type number
According in storage file, object is sequentially stored, and newly created object is attached to the last of file.Object may include three portions
Point: head, data portion and the part filler (padding).Head may include the metadata of object.The metadata of usual object can
It is divided into two classes: system metadata and user-defined metadata.System metadata for example may include that key length, data are long
Degree, keyword, verification and timestamp, partition number etc..When title of the user-defined metadata for example including object, creation
Between, the owner, founder, size etc..Generally, only user-defined metadata can change.
For the ease of retrieving the object in log-structured type data storage file, the Kazakhstan for example, by using keyword can establish
Uncommon value is indexed as the memory of index value.It, can be using the cryptographic Hash of keyword as index in this memory index Hash table
Value, and associatedly storage location of the record object in object storage region, to facilitate the retrieval of object.
As shown in Fig. 2, it has only been updated metadata in response to the object in object storage region in step S210,
Metadata object associated with object is recorded in another storage region separated with object storage region.In the present embodiment,
When for some object in object storage region, when only metadata is updated, by the disk of object storage device with
The member of the object is individually stored in the different storage region of object storage region (hereinafter referred to as " metadata change storage region ")
Data update relevant information.
In one embodiment, can create a new log-structured type data file (can be described as " metadata change day
Will file ") to store metadata updates relevant information, and the metadata change for saving it in the disk of object storage device is deposited
In storage area domain.Change in journal file in metadata, the metadata object of object also will be stored sequentially.
In the present embodiment, metadata updates relevant information available metadata object indicates.Specifically, metadata object can
The metadata of update including object and for being directed toward storage location (hereinafter referred to as " of the object in object storage region
One storage location ") pointer information.By pointer information, metadata object can be directed toward to relevant object, thus in object
It establishes and is associated between metadata object.
In the present embodiment, the metadata only updated is included in metadata object.Alternatively it is also possible to will update
Metadata together with other metadata not updated included together in metadata object.
Then, it in step S220, modifies to index information associated with the object for being only updated metadata,
So that modified index information instruction object has only been updated metadata and metadata object associated with object exists
Metadata changes the storage location (hereinafter referred to as " the second storage location ") in storage region.
As previously mentioned, can record first storage location of the object in object storage region in the index information of object.
But for the object that only metadata is updated, the first storage location of the object recorded in index information will be modified to this
Second storage location of the metadata object of object, so as to retrieve later object update metadata.
Therefore, in the present embodiment, before the metadata of object is not updated, the index information of object may include object
Status information and be used to indicate the location information of the first storage location related with object.Status information may include instruction object
The second deleted state of existing first state, instruction object and instruction object have only been updated the third shape of metadata
State.Therefore, when only having updated the metadata of object, the status information of object will be revised as the third state from first state,
To indicate that object has only been updated metadata, and location information will be revised as metadata pair from the first storage location of object
The second storage location of elephant.In addition, status information will be modified from first state when object is deleted from object storage region
For the second state, location information correspondingly can be deleted or be maintained.
In the present embodiment, the first storage location and the second storage location can be indicated with initial address and length.Starting point
Location can be absolute address, be also possible to the offset of relative fiducial positions.In this way, the first storage location may be expressed as object
The original length of original initial address and object in object storage region, the second storage location may be expressed as metadata pair
Length as changing initial address and metadata object in storage region in metadata.Therefore, pointer information may include object
Initial address and object length, location information may include the initial address of metadata object and the length of metadata object.
Further, it is possible to use the index information of the form storage object of table, such as memory concordance list.In this case,
The index information of each object constitutes an entry of concordance list, and the Hash of the mark of such as object, keyword can be used
The index value of the recognizable object such as value is indexed.In the present embodiment, concordance list is stored in the memory of object storage device
In.
Although the method for the present embodiment is described mainly for the storage of log-structured type object above, this field
Technical staff is it is recognised that the method for the present embodiment could be applicable to other object storage sides for being capable of handling small sized objects
Formula, as long as object is sequentially stored in the object storage mode.
By above description as can be seen that the method that stores of the improved object of the present embodiment will be by will only metadata change
The metadata updates relevant information of the object of change is stored in the metadata separated in disk with object storage region and changes memory block
In domain and modifies the respective index information of object and the metadata of update can be individually stored, without deleting compared with prior art
Except original object, so as to be effectively saved disk input/output operations and memory space, so as to cause object storage
Better performance.
In addition, the free space in object storage region caused by after deleting for releasing object, can periodically press
Contracting object storage region, that is, recombinate the object in object storage region.It in one embodiment, can be in response to pressure
The request of contracting object storage region changes the metadata replacement in the metadata object stored in storage region used in metadata and exists
The correspondence metadata of the corresponding object stored in object storage region, so that these objects have the metadata updated.So
Afterwards, squeeze operation is executed to object storage region, and modifies the index information of object.It may cause pair due to executing squeeze operation
As the change of the storage location in object storage region, therefore, it is necessary to correspondingly modify the index information of object.
Fig. 3 shows the example for illustrating the method for embodiment shown in Fig. 2, before wherein Fig. 3 (a) shows update
Object stores situation, and Fig. 3 (b) shows updated object storage situation.As shown in figure 3, in this example embodiment, object is stored
In log-structured type data file on disk, the index information of object is stored in memory index Hash table, metadata
Object is stored in the metadata on disk and changes in journal file.It is assumed, for the sake of explanation, that in log-structured type data file
Store three objects 1,2,3.In Fig. 3 (a), in memory index Hash table, the value of the status information of three objects (by
" state " instruction) it is all " 0 ", show that object exists in log-structured type data file.At this point, in memory index Hash table
" offset " and " length " indicates storage location of the object 1,2,3 in log-structured type data file.At this point, changing in metadata
Become in journal file and does not record any metadata object.If object 2 is deleted, and only metadata is changed object 3,
Then in log-structured type data file, object 2 is deleted, and object 1 and 3 is kept.At this point, changing journal file in metadata
In, new metadata object is had recorded, it is associated with object 3, and the metadata of the update including object 3 and direction object
The pointer information of 3 storage location in log-structured type data file.The storage location is with the initial address of object 3 (at this
Example in be offset) and object 3 length expression.In addition, in memory index Hash table, the value quilt of the status information of object 2
It is revised as " 1 ", shows that object 2 is deleted in log-structured type data file, the value of the status information of object 3 is modified to
" 2 " show that object 3 only modified by metadata.In addition, the location information of object 3 is also modified in memory index Hash table
At the metadata object being directed toward in metadata change journal file, that is, metadata object changes in journal file in metadata
Storage location, the length table of initial address (being offset in this example embodiment) and metadata object of available metadata object
Show.
Fig. 4 is the schematic stream of the method for retrieving the object in object storage device of embodiment according to the present invention
Cheng Tu.Below in conjunction with attached drawing, the present embodiment is described in detail, wherein being fitted for part identical with front embodiment
When the description thereof will be omitted.
In the method for the present embodiment, object storage device is stored using the improved object of embodiment as shown in Figure 2
Method carry out storage object.
As shown in figure 4, in response to retrieving the request of object, being searched associated with requested object in step S410
Index information.It generally, may include the information of object for identification, such as mark, the pass of object in the request of retrieval object
Key word etc..Based on such identification information, relevant index information can get.
As previously mentioned, the index information of object may include status information and location information.If the state in index information
Information instruction object has only been updated metadata, then in the step s 420, the location information of object is obtained from index information.
In this case, location information indicates that metadata object associated with object changes the storage in storage region in metadata
Position.If status information indicates that object exists, storage of the location information instruction object of object in object storage region
Position.If status information indicates that object is deleted, ignore the object.
Then, in step S430, based on the storage location of acquired metadata object, the metadata object is retrieved.Such as
Preceding described, the storage location of metadata object can be indicated with initial address and length.In the feelings of initial address instruction absolute address
It, can be from initial address to acquisition metadata object in the address range of (initial address+length) under condition.It is indicated in initial address
It, can be in from (base position+offset) to (base position+offset+length) in the case where the offset of relative fiducial positions
Address range in obtain metadata object.
As previously mentioned, metadata object may include the metadata of the update of object and for being directed toward object in object memory block
The pointer information of storage location in domain.Therefore, in step S440, the update of object is obtained from the metadata object retrieved
Metadata and pointer information.Then, in step S450, it is based on the pointer information, retrieves corresponding object.As previously mentioned, referring to
Needle information may include the initial address of object and the length of object.Initial address indicate absolute address in the case where, can from
Object is obtained in initial address to the address range of (initial address+length).In the inclined of initial address instruction relative fiducial positions
In the case where shifting amount, it can be obtained in the address range from (base position+offset) to (base position+offset+length)
Object.
After the metadata for the update for obtaining object and object, retrieval can be returned to the client of request retrieval object
The metadata of the object and its update that arrive.It is further possible to corresponding original metadata is replaced with the metadata updated,
Then the object for having the metadata updated is provided.
By above description as can be seen that the method for retrieving the object in object storage device of the present embodiment can
The object that only metadata is updated is efficiently identified, and realizes the retrieval to this object.
In the example in figure 3, it after receiving the retrieval request for object 3, is found in memory index Hash table
Corresponding directory entry.Since the value of the status information in the directory entry is " 2 ", this shows that object 3 is only metadata quilt
The object of update, therefore, the storage location of the metadata object of " offset " and " length " instruction object 3 in directory entry.
Based on " offset " and " length ", it can change in journal file in metadata and retrieve the metadata object of object 3, and therefrom obtain
It takes the metadata of update and is directed toward the pointer information of the storage location of object 3.Then, it is based on the pointer information, it can be in log knot
Object 3 is retrieved in configuration data file.
Under identical inventive concept, Fig. 5 is the device 500 of the improved object storage of embodiment according to the present invention
Schematic block diagram.Below in conjunction with attached drawing, the present embodiment is described in detail, wherein for portion identical with preceding embodiment
Point, it suitably omits the description thereof.
As shown in figure 5, the device 500 that the improved object of the present embodiment stores can include: logging modle 501 is matched
It is set to and has only been updated metadata in response to the object in object storage region, in the metadata separated with object storage region
Change record metadata object associated with the object in storage region;And modified module 502, be configured as modification with
The associated index information of object, so that modified index information indicates that the object has only been updated metadata and has been used for
Indicate that recorded metadata object changes the second storage location of the storage location in storage region in metadata.
In the device 500 of the present embodiment, when some object in object storage region has only been updated metadata,
Logging modle 501 stores the metadata pair of the object by changing in the metadata different from object storage region in storage region
As indicating metadata updates relevant information, it may include the metadata and pointer information of the update of object, wherein pointer information is used
In the first storage location for being directed toward storage location of the expression object in object storage region.
In one embodiment, object storage region usage log structure data storage carries out object storage.Accordingly
Ground, metadata changes storage region, and also usage log structure data stores.
In the present embodiment, the metadata only updated is included in metadata object.Alternatively it is also possible to be to update
Metadata be included together in metadata object together with the metadata not updated.
Then, modified module 502 modifies to the index information for the object that only metadata is updated.As previously mentioned,
Before the metadata of object is not updated, index information may include the status information of object and be used to indicate the first of object and deposit
The location information that storage space is set.In the present embodiment, the status information of object may include first state existing for instruction object, instruction
The second deleted state of object and instruction object have only been updated the third state of metadata.For only metadata quilt
Status information in index information is revised as the third state from first state by the object of update, modified module 502, and by position
Information is revised as the second storage location of instruction.
In one embodiment, the first storage location and the second storage location can be indicated with initial address and length.Starting
Address can be absolute address, be also possible to the offset of relative fiducial positions.
Further, the device 500 of the present embodiment may also include that replacement module, be configured to respond to compressed object
The request of storage region, the metadata replacement for changing the update in the metadata object stored in storage region used in metadata exist
The correspondence metadata of the corresponding object stored in object storage region;And compression module, it is configured as storing object
Region carries out squeeze operation.In this case, modified module 501 is additionally configured to the object in modification object storage region
Index information.
It should be noted that the device 500 of the present embodiment can operationally realize the improved object of embodiment shown in Fig. 2
The method of storage.
Under identical inventive concept, Fig. 6 show embodiment according to the present invention for retrieving object storage device
In object device 600 schematic block diagram.Below in conjunction with attached drawing, the present embodiment is described in detail, wherein with front
The identical part of embodiment, suitably omits the description thereof.
The device 600 of the present embodiment can be adapted for storing using the device 500 of improved object storage shown in fig. 5
The object storage device of object.
As shown in fig. 6, the device 600 of the present embodiment can include: searching module 601 is configured to respond to retrieval pair
Index information associated with requested object is searched in the request of elephant;Module 602 is obtained, is configured to respond to be looked into
The index information instruction object found has only been updated metadata, and first number associated with the object is obtained from index information
According to the storage location of object;And retrieval module 603, it is configured as the storage location based on acquired metadata object,
Retrieve the metadata object.It is configured to obtain object from the metadata object retrieved in addition, obtaining module 602
Update metadata and the storage location for being directed toward object pointer information, retrieval module 603 is configured to base
In acquired pointer information, object is retrieved.
Further, the device 600 of the present embodiment may also include that replacement module, be configured as with acquired object
The metadata of update replace the correspondence metadata of retrieved object.
It should be noted that the device 600 of the present embodiment can operationally realize embodiment shown in Fig. 4 for retrieve pair
As the method for the object in storage equipment.
The present invention can be system, method and/or computer program product.Computer program product may include computer
Readable storage medium storing program for executing, containing for making processor realize the computer-readable program instructions of various aspects of the invention.
Computer readable storage medium, which can be, can keep and store the tangible of the instruction used by instruction execution equipment
Equipment.Computer readable storage medium for example can be-- but it is not limited to-- storage device electric, magnetic storage apparatus, optical storage
Equipment, electric magnetic storage apparatus, semiconductor memory apparatus or above-mentioned any appropriate combination.Computer readable storage medium
More specific example (non exhaustive list) includes: portable computer diskette, hard disk, random access memory (RAM), read-only deposits
It is reservoir (ROM), erasable programmable read only memory (EPROM or flash memory), static random access memory (SRAM), portable
Compact disk read-only memory (CD-ROM), digital versatile disc (DVD), memory stick, floppy disk, mechanical coding equipment, for example thereon
It is stored with punch card or groove internal projection structure and the above-mentioned any appropriate combination of instruction.Calculating used herein above
Machine readable storage medium storing program for executing is not interpreted that instantaneous signal itself, the electromagnetic wave of such as radio wave or other Free propagations lead to
It crosses the electromagnetic wave (for example, the light pulse for passing through fiber optic cables) of waveguide or the propagation of other transmission mediums or is transmitted by electric wire
Electric signal.
Computer-readable program instructions as described herein can be downloaded to from computer readable storage medium it is each calculate/
Processing equipment, or outer computer or outer is downloaded to by network, such as internet, local area network, wide area network and/or wireless network
Portion stores equipment.Network may include copper transmission cable, optical fiber transmission, wireless transmission, router, firewall, interchanger, gateway
Computer and/or Edge Server.Adapter or network interface in each calculating/processing equipment are received from network to be counted
Calculation machine readable program instructions, and the computer-readable program instructions are forwarded, for the meter being stored in each calculating/processing equipment
In calculation machine readable storage medium storing program for executing.
Computer program instructions for executing operation of the present invention can be assembly instruction, instruction set architecture (ISA) instructs,
Machine instruction, machine-dependent instructions, microcode, firmware instructions, condition setup data or with one or more programming languages
The source code or object code that any combination is write, the programming language include the programming language-of object-oriented such as
Smalltalk, C++ etc., and conventional procedural programming languages-such as " C " language or similar programming language.Computer
Readable program instructions can be executed fully on the user computer, partly execute on the user computer, be only as one
Vertical software package executes, part executes on the remote computer or completely in remote computer on the user computer for part
Or it is executed on server.In situations involving remote computers, remote computer can pass through network-packet of any kind
It includes local area network (LAN) or wide area network (WAN)-is connected to subscriber computer, or, it may be connected to outer computer (such as benefit
It is connected with ISP by internet).In some embodiments, by utilizing computer-readable program instructions
Status information carry out personalized customization electronic circuit, such as programmable logic circuit, field programmable gate array (FPGA) or can
Programmed logic array (PLA) (PLA), the electronic circuit can execute computer-readable program instructions, to realize each side of the invention
Face.
Referring herein to according to the method for the embodiment of the present invention, the flow chart of device (system) and computer program product and/
Or block diagram describes various aspects of the invention.It should be appreciated that flowchart and or block diagram each box and flow chart and/
Or in block diagram each box combination, can be realized by computer-readable program instructions.
These computer-readable program instructions can be supplied to general purpose computer, special purpose computer or other programmable datas
The processor of processing unit, so that a kind of machine is produced, so that these instructions are passing through computer or other programmable datas
When the processor of processing unit executes, function specified in one or more boxes in implementation flow chart and/or block diagram is produced
The device of energy/movement.These computer-readable program instructions can also be stored in a computer-readable storage medium, these refer to
It enables so that computer, programmable data processing unit and/or other equipment work in a specific way, thus, it is stored with instruction
Computer-readable medium then includes a manufacture comprising in one or more boxes in implementation flow chart and/or block diagram
The instruction of the various aspects of defined function action.
Computer-readable program instructions can also be loaded into computer, other programmable data processing units or other
In equipment, so that series of operation steps are executed in computer, other programmable data processing units or other equipment, to produce
Raw computer implemented process, so that executed in computer, other programmable data processing units or other equipment
Instruct function action specified in one or more boxes in implementation flow chart and/or block diagram.
The flow chart and block diagram in the drawings show the system of multiple embodiments according to the present invention, method and computer journeys
The architecture, function and operation in the cards of sequence product.In this regard, each box in flowchart or block diagram can generation
One module of table, program segment or a part of instruction, the module, program segment or a part of instruction include one or more use
The executable instruction of the logic function as defined in realizing.In some implementations as replacements, function marked in the box
It can occur in a different order than that indicated in the drawings.For example, two continuous boxes can actually be held substantially in parallel
Row, they can also be executed in the opposite order sometimes, and this depends on the function involved.It is also noted that block diagram and/or
The combination of each box in flow chart and the box in block diagram and or flow chart, can the function as defined in executing or dynamic
The dedicated hardware based system made is realized, or can be realized using a combination of dedicated hardware and computer instructions.
Various embodiments of the present invention are described above, above description is exemplary, and non-exclusive, and
It is not limited to disclosed each embodiment.Without departing from the scope and spirit of illustrated each embodiment, for this skill
Many modifications and changes are obvious for the those of ordinary skill in art field.The selection of term used herein, purport
In the principle, practical application or technological improvement to the technology in market for best explaining each embodiment, or lead this technology
Other those of ordinary skill in domain can understand each embodiment disclosed herein.
Claims (14)
1. a kind of method of improved object storage, comprising:
It is only updated metadata in response to the object in object storage region, in the member separated with the object storage region
Data change record metadata object associated with the object in storage region, and the metadata object includes the object
Update metadata and for being directed toward the first storage for indicating the storage location of the object in the object storage region
The pointer information of position;And
Index information associated with the object is modified, so that modified index information indicates the object only by more
New metadata and for indicating that the metadata object changes second of the storage location in storage region in the metadata
Storage location, wherein the index information includes the status information of the object and is used to indicate first storage location
Location information, wherein the status information of the object includes indicating first state existing for the object, the instruction object quilt
The second state and the instruction object deleted only have been updated the third state of metadata;
In response to compressing the request of the object storage region, change the metadata stored in storage region used in the metadata
The correspondence metadata for the corresponding object that the metadata replacement of update in object stores in the object storage region;And
Squeeze operation is carried out to the object storage region, and modifies the index information of the object in the object storage region.
2. according to the method described in claim 1, wherein, the object storage region usage log structure data storage come into
The storage of row object.
3. according to the method described in claim 1, wherein, metadata not the updating together with the object of the update of the object
Metadata be included together in the metadata object.
4. according to the method described in claim 1, wherein, first storage location and second storage location starting point
Location and length indicate.
5. according to the method described in claim 1, wherein, the object storage region and the metadata change storage region and exist
On the disk of object storage device, the index information is stored in the memory of the object storage device.
6. a kind of method for retrieving the object in object storage device, wherein the object storage device is wanted using right
The method for asking improved object storage described in 1 to 5 any one carrys out storage object, which comprises
In response to retrieving the request of object, index information associated with the object is searched;
Indicate that the object has only been updated metadata in response to the index information, acquisition and institute from the index information
State the storage location of the associated metadata object of object;
Based on the storage location of the acquired metadata object, the metadata object is retrieved;
The metadata of the update of the object and the storage location for being directed toward the object are obtained from the metadata object
Pointer information;
Based on the pointer information, the object is retrieved.
7. according to the method described in claim 6, further include:
With the correspondence metadata for the object that the metadata replacement of the update of the object is retrieved.
8. a kind of device of improved object storage, comprising:
Logging modle, the object being configured to respond in object storage region have only been updated metadata, with it is described
The metadata of object storage region separation changes record metadata object associated with the object, the member in storage region
Data object includes the metadata of the update of the object and indicates the object in the object storage region for being directed toward
Storage location the first storage location pointer information;And
Modified module is configured as modification index information associated with the object, so that modified index information
Indicate that the object has only been updated metadata and for indicating that the metadata object changes memory block in the metadata
Second storage location of the storage location in domain, wherein the index information includes the status information of the object and for referring to
Show the location information of first storage location, wherein the status information of the object includes indicating existing for the object the
The second deleted state of one state, the instruction object and the instruction object have only been updated the third shape of metadata
State;
Replacement module is configured to respond to compress the request of the object storage region, deposits used in metadata change
The metadata replacement of the update in metadata object stored in storage area domain stores corresponding in the object storage region
The correspondence metadata of object;And
Compression module is configured as carrying out squeeze operation to the object storage region;
Wherein, the modified module is additionally configured to modify the index information of the object in the object storage region.
9. device according to claim 8, wherein the object storage region usage log structure data storage come into
The storage of row object.
10. device according to claim 8, wherein the metadata of the update of the object together with the object not more
New metadata is included together in the metadata object.
11. device according to claim 8, wherein first storage location and second storage location starting
Address and length indicate.
12. device according to claim 8, wherein the object storage region and the metadata change storage region
On the disk of object storage device, the index information is stored in the memory of the object storage device.
13. a kind of for retrieving the device of the object in object storage device, wherein the object storage device is wanted by right
The device of improved object storage described in 8 to 12 any one is asked to carry out storage object, described device includes:
Searching module is configured to respond to the request of retrieval object, searches index information associated with the object;
Module is obtained, the index information is configured to respond to and indicates that the object has only been updated metadata, from institute
State the storage location that metadata object associated with the object is obtained in index information;And
Retrieval module is configured as retrieving the metadata pair based on the storage location of the acquired metadata object
As;
Wherein, the acquisition module is configured to obtain first number of the update of the object from the metadata object
According to the pointer information with the storage location for being directed toward the object;
The retrieval module is configured to retrieve the object based on the pointer information.
14. device according to claim 13, further includes:
Replacement module is configured as the corresponding element of the object retrieved with the metadata replacement of the update of the object
Data.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410772951.0A CN105740303B (en) | 2014-12-12 | 2014-12-12 | The method and device of improved object storage |
US14/941,932 US10089338B2 (en) | 2014-12-12 | 2015-11-16 | Method and apparatus for object storage |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410772951.0A CN105740303B (en) | 2014-12-12 | 2014-12-12 | The method and device of improved object storage |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105740303A CN105740303A (en) | 2016-07-06 |
CN105740303B true CN105740303B (en) | 2019-09-06 |
Family
ID=56111355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410772951.0A Active CN105740303B (en) | 2014-12-12 | 2014-12-12 | The method and device of improved object storage |
Country Status (2)
Country | Link |
---|---|
US (1) | US10089338B2 (en) |
CN (1) | CN105740303B (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170154050A1 (en) | 2015-11-30 | 2017-06-01 | International Business Machines Corporation | Optimized content object storage service for large scale content |
CN106294700A (en) * | 2016-08-08 | 2017-01-04 | 无锡天脉聚源传媒科技有限公司 | The storage of a kind of daily record and read method and device |
CN106503032A (en) * | 2016-09-09 | 2017-03-15 | 深圳大学 | A kind of method and device of data compression |
CN106484840A (en) * | 2016-09-30 | 2017-03-08 | 上海聚力传媒技术有限公司 | The method and apparatus automatically updating vertical search index |
WO2019071610A1 (en) * | 2017-10-13 | 2019-04-18 | 华为技术有限公司 | Method and apparatus for compressing and decompressing memory occupied by processor |
CN110413200B (en) * | 2018-04-28 | 2023-06-09 | 伊姆西Ip控股有限责任公司 | Method, apparatus and computer program product for data synchronization |
CN110674084A (en) * | 2018-06-15 | 2020-01-10 | 伊姆西Ip控股有限责任公司 | Method, apparatus, and computer-readable storage medium for data protection |
US10931640B2 (en) | 2018-06-22 | 2021-02-23 | International Business Machines Corporation | Tunneling network traffic using object storage |
CN111241097B (en) * | 2020-01-08 | 2024-03-12 | 北京小米松果电子有限公司 | Method for processing object, device for processing object and storage medium |
US11514016B2 (en) | 2020-01-15 | 2022-11-29 | International Business Machines Corporation | Paging row-based data stored as objects |
US11200158B1 (en) * | 2020-06-02 | 2021-12-14 | The Governing Council Of The University Of Toronto | Methods, devices, and media for hardware-supported object metadata retrieval |
US11934378B2 (en) * | 2021-03-11 | 2024-03-19 | International Business Machines Corporation | Recording changes to records whilst preserving record immutability |
CN113449155B (en) * | 2021-07-16 | 2024-02-27 | 百度在线网络技术(北京)有限公司 | Method, apparatus, device and medium for feature representation processing |
CN113688139B (en) * | 2021-08-30 | 2024-03-12 | 重庆紫光华山智安科技有限公司 | Object storage method, gateway, device and medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706805A (en) * | 2009-10-30 | 2010-05-12 | 中国科学院计算技术研究所 | Method and system for storing object |
US8131691B1 (en) * | 2002-12-30 | 2012-03-06 | Symantec Operating Corporation | System and method for updating a search engine index based on which files are identified in a file change log |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5873097A (en) | 1993-05-12 | 1999-02-16 | Apple Computer, Inc. | Update mechanism for computer storage container manager |
JP3585800B2 (en) * | 1999-01-13 | 2004-11-04 | 株式会社東芝 | Information processing equipment |
JP3763992B2 (en) | 1999-03-30 | 2006-04-05 | 富士通株式会社 | Data processing apparatus and recording medium |
US6779202B1 (en) * | 2003-02-20 | 2004-08-24 | Andrew L. Alldredge | Plunger appliance for toilets |
CN1705855A (en) * | 2003-06-27 | 2005-12-07 | Gac株式会社 | Duct system and receiving device |
US8223653B2 (en) * | 2004-04-05 | 2012-07-17 | Ixia | Broadcast capable file system |
FR2892274B1 (en) * | 2005-10-26 | 2008-02-01 | Promiles Sa | REUSABLE UTILITY OBJECT ON HIMSELF |
US7660800B2 (en) | 2005-11-28 | 2010-02-09 | Commvault Systems, Inc. | Systems and methods for classifying and transferring information in a storage network |
DE102008002228A1 (en) * | 2008-06-05 | 2009-12-10 | Biotronik Crm Patent Ag | Elongated implant with external energy input |
US8605976B2 (en) * | 2009-12-10 | 2013-12-10 | General Electric Corporation | System and method of detection of optimal angiography frames for quantitative coronary analysis using wavelet-based motion analysis |
US8244700B2 (en) | 2010-02-12 | 2012-08-14 | Microsoft Corporation | Rapid update of index metadata |
US8595237B1 (en) | 2010-02-17 | 2013-11-26 | Netapp, Inc. | Method and system for managing metadata in a storage environment |
WO2011150391A1 (en) * | 2010-05-28 | 2011-12-01 | Commvault Systems, Inc. | Systems and methods for performing data replication |
US20120143824A1 (en) | 2010-12-02 | 2012-06-07 | Microsoft Corporation | Protecting files that include editable metadata |
CN103516549B (en) | 2013-09-27 | 2018-03-27 | 浪潮电子信息产业股份有限公司 | A kind of file system metadata log mechanism based on shared object storage |
US10083082B2 (en) * | 2015-09-07 | 2018-09-25 | International Business Machines Corporation | Efficient index checkpointing in log-structured object stores |
-
2014
- 2014-12-12 CN CN201410772951.0A patent/CN105740303B/en active Active
-
2015
- 2015-11-16 US US14/941,932 patent/US10089338B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8131691B1 (en) * | 2002-12-30 | 2012-03-06 | Symantec Operating Corporation | System and method for updating a search engine index based on which files are identified in a file change log |
CN101706805A (en) * | 2009-10-30 | 2010-05-12 | 中国科学院计算技术研究所 | Method and system for storing object |
Also Published As
Publication number | Publication date |
---|---|
US10089338B2 (en) | 2018-10-02 |
US20160171025A1 (en) | 2016-06-16 |
CN105740303A (en) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105740303B (en) | The method and device of improved object storage | |
TWI702506B (en) | System, machine readable medium, and machine-implemenated method for merge tree garbage metrics | |
TWI682274B (en) | Key-value store tree | |
TWI702503B (en) | Systems, methods, and computer readable media to implement merge tree modifications for maintenance operations | |
TWI719281B (en) | A system, machine readable medium, and machine-implemented method for stream selection | |
TWI682285B (en) | Product, method, and machine readable medium for kvs tree database | |
US8706710B2 (en) | Methods for storing data streams in a distributed environment | |
CN105701098B (en) | The method and apparatus for generating index for the table in database | |
US8738572B2 (en) | System and method for storing data streams in a distributed environment | |
US9043540B2 (en) | Systems and methods for tracking block ownership | |
KR102128138B1 (en) | Hydration and dehydration with placeholders | |
US10140351B2 (en) | Method and apparatus for processing database data in distributed database system | |
CN113986873B (en) | Method for processing, storing and sharing data modeling of mass Internet of things | |
WO2018064962A1 (en) | Data storage method, electronic device and computer non-volatile storage medium | |
US10678857B2 (en) | Managing a distributed knowledge graph | |
CN107077483A (en) | The synchronization of Shared Folders and file | |
CN104408111A (en) | Method and device for deleting duplicate data | |
WO2018097846A1 (en) | Edge store designs for graph databases | |
CN108614837B (en) | File storage and retrieval method and device | |
CN104598550B (en) | A kind of update method and device of Internet video index | |
JP7408626B2 (en) | Tenant identifier replacement | |
US9430503B1 (en) | Coalescing transactional same-block writes for virtual block maps | |
CN110888837B (en) | Object storage small file merging method and device | |
US10515055B2 (en) | Mapping logical identifiers using multiple identifier spaces | |
US10936640B2 (en) | Intelligent visualization of unstructured data in column-oriented data tables |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |