CN107291628A - The method and apparatus of accessing data storage devices - Google Patents
The method and apparatus of accessing data storage devices Download PDFInfo
- Publication number
- CN107291628A CN107291628A CN201710540110.0A CN201710540110A CN107291628A CN 107291628 A CN107291628 A CN 107291628A CN 201710540110 A CN201710540110 A CN 201710540110A CN 107291628 A CN107291628 A CN 107291628A
- Authority
- CN
- China
- Prior art keywords
- matrix
- node
- storage region
- row
- data storage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0207—Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (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
Present disclose provides a kind of method of accessing data storage devices and corresponding device.Wherein, the data storage device includes multiple storage regions, and the multiple storage region is corresponded with the node in N*M matrixes, wherein, N is the line number of the matrix, and M is the matrix column number, N and M are the positive integer more than or equal to 1, and the row and column of the matrix intersects to form the node.Methods described includes:By keyword and first at least one hash function corresponding with the row of the matrix determines a line in the matrix;The row in the matrix are determined by the keyword and corresponding with the matrix column second at least one hash function;A node in the matrix is determined by identified row and column;And a pair storage region corresponding with identified node conducts interviews.
Description
Technical field
This disclosure relates to field of computer technology, more particularly, to the method and dress of a kind of accessing data storage devices
Put.
Background technology
Data access rapidly and efficiently is most important for computer system backstage response speed.Data storage is set at present
The standby data access that carries out mainly stores instrument to realize by RBTree, Hash table or third party Key-Value.Wherein,
The operation time complexity of Hash table is O (1), and it is constant to take in theory, and computing is time-consuming compared with RBTree to be obviously reduced;
Meanwhile, Hash table need not be conducted interviews compared with third party Key-Value storage instruments by web socket, thus not deposited
Network is time-consuming and the problem of network failure risk.But, during disclosure design is realized, inventor has found existing
At least there are the following problems in technology:With the increase of data volume in big data application, breathed out when being conducted interviews by Hash table
The probability of uncommon value conflict can be increased, so that causing the speed of data access reduces.
The content of the invention
In view of this, cryptographic Hash when carrying out data access by Hash table can be effectively reduced present disclose provides one kind to rush
Prominent probability, while improving the method and apparatus of the accessing data storage devices of data access speed.
An aspect of this disclosure provides a kind of method of accessing data storage devices, and the data storage device includes
Multiple storage regions, the multiple storage region is corresponded with the node in N*M matrixes, wherein, N is the row of the matrix
Number, M is the matrix column number, and N and M are the positive integer more than or equal to 1, and the row and column of the matrix intersects to form the section
Point.Methods described includes:By keyword and described in first at least one hash function corresponding with the row of matrix determination
A line in matrix, is determined described by the keyword and corresponding with the matrix column second at least one hash function
A row in matrix, determine a node in the matrix by identified row and column, and pair with identified node
Corresponding storage region conducts interviews.
In accordance with an embodiment of the present disclosure, described first at least one hash function and described second at least one hash function
It is identical or different.
In accordance with an embodiment of the present disclosure, methods described also includes creating the N*M matrixes;And by the multiple memory block
The address of cache in domain is to the node in N*M matrixes, so that the multiple storage region and a pair of node 1 in the N*M matrixes
Should.
In accordance with an embodiment of the present disclosure, methods described is additionally included in each storage region of at least one storage region,
Pass through RBTree structure storing data.
In accordance with an embodiment of the present disclosure, methods described also includes setting Read-Write Locks at least one storage region.
In accordance with an embodiment of the present disclosure, the data storage device includes internal memory or caching.
Another aspect of the disclosure provides a kind of device of accessing data storage devices, the data storage device bag
Multiple storage regions are included, the multiple storage region is corresponded with the node in N*M matrixes, wherein, N is the row of the matrix
Number, M is the matrix column number, and N and M are the positive integer more than or equal to 1, and the row and column of the matrix intersects to form the section
Point.Described device includes row determining module, row determining module, node determining module and access modules.Row determining module, is used for
By keyword and first at least one hash function corresponding with the row of the matrix determines a line in the matrix.Row are true
Cover half block, for determining the square by the keyword and corresponding with the matrix column second at least one hash function
A row in battle array.Node determining module, for determining a node in the matrix by identified row and column.Access mould
Block, conducts interviews for a pair storage region corresponding with identified node.
In accordance with an embodiment of the present disclosure, described first at least one hash function and described second at least one hash function
It is identical or different.
In accordance with an embodiment of the present disclosure, described device also includes matrix creation module and mapping block.Wherein, matrix is created
Module, for creating the N*M matrixes.Mapping block, for by the address of cache of the multiple storage region into N*M matrixes
Node so that the node in the multiple storage region and the N*M matrixes is corresponded.
In accordance with an embodiment of the present disclosure, described device also includes RBTree memory module, at least one memory block
Pass through RBTree structure storing data in each storage region in domain.
In accordance with an embodiment of the present disclosure, described device also includes Read-Write Locks setup module, at least one memory block
Domain sets Read-Write Locks.
In accordance with an embodiment of the present disclosure, the data storage device in described device includes internal memory or caching.
Another aspect of the present disclosure provides a kind of device of accessing data storage devices, including one or more storages
Device, be stored with executable instruction;And one or more processors, the executable instruction is performed, to realize that the disclosure is implemented
The method of the accessing data storage devices of example.
Another aspect of the present disclosure provides a kind of computer-readable recording medium, is stored thereon with executable instruction, should
Instruction can realize the method for the accessing data storage devices of the embodiment of the present disclosure when being executed by processor.
In accordance with an embodiment of the present disclosure, cryptographic Hash when carrying out data access by Hash table can be reduced at least in part to rush
Prominent probability, and therefore can realize the technique effect of accurately and efficiently data access.
In accordance with an embodiment of the present disclosure, because can be to the storage corresponding to the node of at least one in data storage device
Region sets Read-Write Locks, so as to significantly reduce different reader and/or writer conducts interviews to the data storage device
When the probability fought at least one node.
In accordance with an embodiment of the present disclosure, because red and black can be passed through in each storage region of at least one storage region
Storage of data structure data, can when quickly navigating to any storage region of at least one storage region by keyword
Ensure the time-consuming harmony operated to the data in any storage region.
Brief description of the drawings
By description referring to the drawings to the embodiment of the present disclosure, the above-mentioned and other purposes of the disclosure, feature and
Advantage will be apparent from, in the accompanying drawings:
Fig. 1 diagrammatically illustrates the method and apparatus that can apply accessing data storage devices according to the embodiment of the present disclosure
Exemplary system architecture;
Fig. 2 diagrammatically illustrates the method flow diagram of the accessing data storage devices according to the embodiment of the present disclosure;
Fig. 3 diagrammatically illustrates the flow chart of the method for the accessing data storage devices according to another embodiment of the disclosure;
Fig. 4 diagrammatically illustrates the flow chart of the method for the accessing data storage devices according to disclosure another embodiment;
Fig. 5 diagrammatically illustrates the flow chart of the method for the accessing data storage devices according to the another embodiment of the disclosure;
Fig. 6 diagrammatically illustrates the application scenario figure of the method for the accessing data storage devices according to the embodiment of the present disclosure;
Fig. 7 diagrammatically illustrates the block diagram of the device of the accessing data storage devices according to the embodiment of the present disclosure;And
Fig. 8 diagrammatically illustrates the square frame of the computer system of the accessing data storage devices according to the embodiment of the present disclosure
Figure.
Embodiment
Hereinafter, it will be described with reference to the accompanying drawings embodiment of the disclosure.However, it should be understood that these descriptions are simply exemplary
, and it is not intended to limit the scope of the present disclosure.In addition, in the following description, the description to known features and technology is eliminated, with
Avoid unnecessarily obscuring the concept of the disclosure.
Term as used herein is not intended to limit the disclosure just for the sake of description specific embodiment.Used here as
Word " one ", " one (kind) " and "the" etc. should also include " multiple ", the meaning of " a variety of ", unless context clearly refers in addition
Go out.In addition, term " comprising " as used herein, "comprising" etc. indicate the presence of the feature, step, operation and/or part,
But it is not excluded that in the presence of or add one or more other features, step, operation or part.
All terms (including technology and scientific terminology) as used herein have what those skilled in the art were generally understood
Implication, unless otherwise defined.It should be noted that term used herein should be interpreted that with consistent with the context of this specification
Implication, without that should be explained with idealization or excessively mechanical mode.
Embodiment of the disclosure provides the method and corresponding device of a kind of accessing data storage devices.Wherein, originally
The data storage device that the method and apparatus of open embodiment are applied includes multiple storage regions, the plurality of storage region and N*
Node in Metzler matrix is corresponded, wherein, N is the line number of the matrix, and M is the matrix column number, and N and M are more than or equal to 1
Positive integer, the row and column of the matrix intersects to form the node.According to the side of the accessing data storage devices of the embodiment of the present disclosure
Method includes:By keyword and first at least one hash function corresponding with the row of the matrix determines a line in the matrix,
The row in the matrix are determined by the keyword and corresponding with the matrix column second at least one hash function, pass through institute
The row and column of determination determines that a node in the matrix, and a pair storage region corresponding with identified node are visited
Ask.
According to the method for the accessing data storage devices of the embodiment of the present disclosure and corresponding device true by keyword
It is enterprising to each dimension of the keyword in two-dimensional space in the fixed data storage device during corresponding storage region
The final position for determining to obtain correspondence storage region of the result of calculation in Hash operation at least one times, and two dimensions of joint of going,
And the Hash operation of each dimension in this process is separate, so as to significantly reduce in Hash table only in a dimension
The probability that cryptographic Hash conflicts when carrying out keyword mapping by Hash operation is spent, improves and storage region is determined by keyword
Efficiency, and then improve the speed that data access is carried out to the data storage device.
Fig. 1 diagrammatically illustrates the method and apparatus that can apply accessing data storage devices according to the embodiment of the present disclosure
Exemplary system architecture 100.
As shown in figure 1, terminal device 101,102,103, network can be included according to the system architecture 100 of the embodiment
104 and server 105.Network 104 between terminal device 101,102,103 and server 105 to provide communication link
Medium.Network 104 can include various connection types, such as wired, wireless communication link or fiber optic cables etc..
User can be interacted with using terminal equipment 101,102,103 by network 104 with server 105, to receive or send out
Send message etc..Various telecommunication customer end applications can be installed, class of for example doing shopping application, net on terminal device 101,102,103
(merely illustrative) such as the application of page browsing device, searching class application, JICQ, mailbox client, social platform softwares.
Terminal device 101,102,103 can be the various electronic equipments browsed with display screen and supported web page, bag
Include but be not limited to smart mobile phone, tablet personal computer, pocket computer on knee and desktop computer etc..
Server 105 can be to provide the server of various services, for example, utilize terminal device 101,102,103 to user
The website browsed provides the back-stage management server (merely illustrative) supported.Back-stage management server can be to the use that receives
The data such as family request carry out the processing such as analyzing, and by result (such as according to user's acquisition request or the webpage of generation, letter
Breath or data etc.) feed back to terminal device.
It should be noted that the method for the accessing data storage devices that the embodiment of the present disclosure is provided typically can be by servicing
Device 105 is performed.Correspondingly, the device for the accessing data storage devices that the embodiment of the present disclosure is provided can typically be arranged at service
In device 105.The method for the accessing data storage devices that the embodiment of the present disclosure is provided can also be by different from server 105 and energy
The enough server communicated with terminal device 101,102,103 and/or server 105 or server cluster are performed.Correspondingly, this public affairs
Opening the accessing data storage devices device that embodiment provided can also be arranged at different from server 105 and can be set with terminal
In the server or server cluster that are communicated for 101,102,103 and/or server 105.
In addition, the method for the accessing data storage devices that the embodiment of the present disclosure is provided can also terminal device 101,
Realized in 102, and/or 103, so as to improve terminal device 101,102, and/or 103 pairs of data storage devices for itself having
Access speed.Correspondingly, the accessing data storage devices device that the embodiment of the present disclosure is provided can also be arranged at terminal and set
In standby 101,102, and/or 103.
It should be understood that the number of the terminal device, network and server in Fig. 1 is only schematical.According to realizing need
Will, can have any number of terminal device, network and server.
Fig. 2 diagrammatically illustrates the method flow diagram of the accessing data storage devices according to the embodiment of the present disclosure.
As shown in Fig. 2 including operation S201~operation according to the method for the accessing data storage devices of the embodiment of the present disclosure
S204, wherein data storage device include a pair of node 1 in multiple storage regions, the plurality of storage region and N*M matrixes
Should, wherein, N is the line number of the matrix, and M is the matrix column number, and N and M are the positive integer more than or equal to 1, the row of the matrix
The node is intersected to form with row.
In accordance with an embodiment of the present disclosure, the data storage device includes internal memory or caching.
In operation S201, by keyword and first at least one hash function corresponding with the row of the matrix determines the square
A line in battle array.
According to the embodiment of the present disclosure, at least one hash function of the row corresponding first of the matrix can be a Hash letter
Several or multiple hash functions.
When first at least one hash function during one hash function, by the one one hash function to the key
Word carries out a Hash operation, and a line in the matrix is determined according to operation result.
When first at least one hash function is multiple hash functions, by more than first hash function successively to this
Keyword carries out Hash operation, and a line in the matrix is determined according to operation result.
In addition, above-mentioned a line determined according to operation result in the matrix can carry out Hash operation according to keyword
Obtained cryptographic Hash directly determines a line in the matrix or cryptographic Hash is further processed, and according to entering one
The result of step processing determines a line in the matrix.
, can be with for example, when being more than the line number N of matrix to the numerical value of cryptographic Hash that keyword obtained after Hash operation
The cryptographic Hash is allowed to N modulus, and the line number keyword being mapped in the matrix is used as using the value of modulo operation.
In operation S202, being determined by the keyword and corresponding with the matrix column second at least one hash function should
A row in matrix.
According to the embodiment of the present disclosure, at least one hash function of the matrix column corresponding second can be a Hash letter
Several or multiple hash functions.
When second at least one hash function during one hash function, by the 2nd 1 hash function to the key
Word carries out a Hash operation, and the row in the matrix are determined according to operation result.
When second at least one hash function is multiple hash functions, by more than second hash function successively to this
Keyword carries out Hash operation, and the row in the matrix are determined according to operation result.
In addition, the above-mentioned row determined according to operation result in the matrix can carry out Hash operation according to keyword
Obtained cryptographic Hash directly determines row in the matrix or cryptographic Hash is further processed, and according to entering one
The result of step processing determines the row in the matrix.
, can be with for example, when being more than matrix column number M to the numerical value of cryptographic Hash that keyword obtained after Hash operation
The cryptographic Hash is made to M modulus, and the columns keyword being mapped in the matrix is used as using the value of modulo operation.
In operation S203, a node in the matrix is determined by identified row and column.
In operation S204, a pair storage region corresponding with identified node conducts interviews.For example, with it is identified
Data are write in the corresponding storage region of node or data or from the storage region are read from the storage region
Delete data or thereto insertion data etc..
It is understood that operating S201 to be only example before operation S202 in Fig. 2.
In accordance with an embodiment of the present disclosure, operation S201 and operation S202 is separate, and the two can be carried out simultaneously,
Can successively it carry out.If successively carried out, there is not any restriction to its sequencing carried out.
According to the method for the accessing data storage devices of the embodiment of the present disclosure, pass through keyword and row corresponding first respectively
At least one hash function, corresponding second at least one hash function of row determine row and column in the matrix, then by really
Fixed row and column determines a node in the matrix, is visited so as to the corresponding storage region of the node to the determination
Ask.
In this way, during the corresponding storage region of data storage device is mapped a keyword to, to this
Keyword carries out Hash operation at least one times in each dimension in two-dimensional space, and combines the result of calculation in two dimensions
The final position for determining to obtain correspondence storage region, and the Hash operation of each dimension in this process is separate, from
And significantly reduce in Hash table that the cryptographic Hash only when a dimension carries out keyword mapping by Hash operation conflicts it is general
Rate.
Further, it will efficiently and accurately can be closed according to the method for the accessing data storage devices of the embodiment of the present disclosure
Key word is mapped to specific storage region, reduces invalid data processing time and consumption caused by cryptographic Hash conflict, so that
Improve the access speed to data storage device.
In accordance with an embodiment of the present disclosure, first at least one hash function and second at least one hash function can phases
Together, can also be different.
When first at least one hash function and different second at least one hash function, data are mapped a keyword to
The probability of cryptographic Hash conflict produced by the specific storage region of storage device will be substantially reduced.
In accordance with an embodiment of the present disclosure, first at least one hash function can include it is following in any one or it is many
Kind:MD5 functions, CRC16 functions, middle function and/or folding square is taken to be added function etc..
In accordance with an embodiment of the present disclosure, second at least one hash function can include it is following in any one or it is many
Kind:MD5 functions, CRC16 functions, middle function and/or folding square is taken to be added function etc..
Fig. 3 diagrammatically illustrates the flow chart of the method for the accessing data storage devices according to another embodiment of the disclosure.
As shown in figure 3, according to the method for the accessing data storage devices of another embodiment of the disclosure, in operation S201~behaviour
Before making S204, in addition to operation S301 and operation S302.
In operation S301, the N*M matrixes are created.
In operation S302, by the address of cache of the plurality of storage region to the node in N*M matrixes, so that the plurality of storage
Region is corresponded with the node in the N*M matrixes.
Redo S201~operation S204 afterwards, passes through row corresponding first at least one respectively in the N*M matrixes
Individual hash function, corresponding second at least one hash function of row carry out Hash operation to keyword, and the keyword is distinguished
Corresponding row and column is mapped to, so that it is determined that the corresponding node of the keyword, and the corresponding storage region of the node is visited
Ask.
In accordance with an embodiment of the present disclosure, by creating N*M matrixes in a data storage device, by the deposit data storage device
Multiple storage regions and the N*M matrixes in node correspond, on the one hand facilitate user and select N according to the need for oneself
With M specific data, correspondingly sized matrix is created so as to personalized.
Fig. 4 diagrammatically illustrates the flow chart of the method for the accessing data storage devices according to disclosure another embodiment.
As shown in figure 4, according in the method for the accessing data storage devices of disclosure another embodiment, except operation S201
Outside~operation S204, in addition to operation S405.
In operation S405, in each storage region of at least one storage region, pass through RBTree structure storing data.
At least one storage region, for example, can only have a storage region.Now pass through in a storage region
RBTree structure storing data.
Or, at least one storage region for example can be more than two storage regions.Now, in the two or more
Storage region in each storage region in pass through RBTree structure storing data.
A kind of self-balancing binary search data tree structure during red-black data tree structure, is carrying out data insertion and deletion action
When can efficiently keep the balance of binary search tree, with higher data search performance.
In accordance with an embodiment of the present disclosure, with red-black storage of data structure in each storage region of at least one storage region
Data, so as to when mapping a keyword to any one storage region of at least one storage region, ensure that to this
The time-consuming harmony that data in any one storage region are operated, improves the stability of data access.
Fig. 5 diagrammatically illustrates the flow chart of the method for the accessing data storage devices according to the another embodiment of the disclosure.
As shown in figure 5, according in the method for the accessing data storage devices of the another embodiment of the disclosure, operation S201~
Before operation S204, in addition to operation S501.
In operation S501, Read-Write Locks are set at least one storage region.
Specifically, at least one storage region, for example, can only include a storage region.Now, this is stored
Region sets Read-Write Locks.
Or, at least one storage region can for example include more than two storage regions.At this point it is possible to this two
Each storage region in storage region more than individual sets Read-Write Locks respectively, or, can be to more than two memory blocks
Several storage regions in domain set Read-Write Locks jointly.
Read-Write Locks are a kind of special spin locks, and the visitor to shared resource is divided into reader and writer, reader by it
Read access is only carried out to shared resource, writer then needs to carry out write operation to shared resource.Read-Write Locks for spin lock,
Concurrency can be improved, because in a multi-processor system, it allows there are multiple readers to access shared resource, maximum possible simultaneously
Reader's number be actual logic CPU numbers.Writer is exclusive, and a Read-Write Locks can only have a writer or multiple readings simultaneously
Person's (related to CPU numbers), but existing reader can not have writer again simultaneously.
In accordance with an embodiment of the present disclosure, at least one storage region set Read-Write Locks can be by this at least one
Constructed during individual storage region initialization and preserve a lock object to realize, the lock object is commonly referred to as sentence in windows systems
Handle, is referred to as descriptor in Linux system.
After at least one storage region Initialize installation Read-Write Locks, write when there is writer at least one storage region
When entering data, object can will be locked at least one storage region simultaneously and be set to write lock, so as to ensure other writers or reading
Person can not currently access at least one storage region.
Accordingly, when have reader need from least one storage region read data when, can simultaneously by this at least one
Object is locked in individual storage region and is set to read lock.The read lock will not prevent other readers to the number at least one storage region
According to reading, but access of other writers at least one storage region can be prevented.
When no reader or writer conduct interviews at least one storage region, the read lock set to the lock object
Or write lock and can automatically terminate.
It is understood that operating S501 to be only to illustrate before being located at operation S201 in Fig. 5.
In accordance with an embodiment of the present disclosure, operation S501 can be located at operation S204 before whenever.
In accordance with an embodiment of the present disclosure, to the storage region corresponding at least one storage region in data storage device
Read-Write Locks are set, significantly reduce different reader and/or when writer conducts interviews to the storage device at this at least one
The probability fought at storage region.
Compared with to whole storage device, one Read-Write Locks is set, by setting Read-Write Locks at least one storage region,
So that can be multiple readers or writer in the different memory areas of the data storage device to the access of the data storage device
Carried out simultaneously in domain, improve the efficiency conducted interviews to the data storage device.
Showing for Fig. 6 may be referred to according to the process that implements of the method for the accessing data storage devices of the embodiment of the present disclosure
The description of meaning property.
Fig. 6 diagrammatically illustrates the application scenario figure of the method for the accessing data storage devices according to the embodiment of the present disclosure.
As shown in fig. 6, data storage device 610 can be internal memory, or caching.
Data storage device 610 includes multiple storage regions, the plurality of storage region with the node in 6*4 matrixes one by one
Correspondence, wherein, the line number N of the matrix is 6, and columns M is 4, and the row and column of the matrix intersects to form each node.
Specifically, can be, according to operation S401 and operation S402, to create the 6* in the initialization of data storage device 610
4 matrixes, and by the address of cache of multiple storage regions in data storage device 610 to the node in the 6*4 matrixes.
Then, in operation S201, first at least one hash function corresponding with the row of the matrix of keyword 601 is passed through
Determine a line in matrix.
For example, obtaining a cryptographic Hash after carrying out computing to keyword 601 by first at least one hash function, then
Allow the cryptographic Hash to 6 carry out modulus, using the result of modulo operation as identified row line number.
For example, when the result of modulo operation is 6, illustrating to enter keyword 601 by first at least one hash function
The integral multiple that a cryptographic Hash is the matrix line number 6 in itself, also, the matrix determined by the keyword are obtained after row computing
Line number be the 6th row.
In operation S202, by keyword 601 corresponding with the matrix column second, at least one hash function is determined
A row in matrix.
For example, obtaining a cryptographic Hash after carrying out computing to keyword 601 by second at least one hash function, then
Allow the cryptographic Hash to 4 carry out modulus, using the result of modulo operation as identified row columns.
For example, when the result of modulo operation is 3, the matrix column number determined by the keyword is the 3rd row.
In operation S203, a node in the matrix is determined by identified row and column.
For example, when the identified row of behavior the 6th, being classified as the 3rd and listing, it is determined that a node in the obtained matrix is
(6,3) in Fig. 3.
In operation S204, a pair storage region corresponding with identified node conducts interviews.
For example, when determining after node (6,3) in Fig. 3, you can with to being carried out in the storage region corresponding to node (6,3)
Access.
It is possible to further lead in each storage region of at least one storage region in data storage device 610
Cross RBTree structure storing data.
For example, RBTree can be passed through to each storage region in all storage regions in data storage device 610
Data storage.
Specifically, can be when being mapped to corresponding storage region by each keyword (including keyword 601), with red
Black tree construction data storage into the storage region.For example, being mapped to the corresponding memory block of node (6.3) by keyword 601
Behind domain, with RBTree structure storing data in the corresponding storage region of node (6.3).
Furthermore it is also possible to set Read-Write Locks at least one storage region in data storage device 610.
For example, a lock object is set to each storage region when being initialized to data storage device 610, so
Afterwards reader or writer according to access each storage region, by the lock object in each storage region be correspondingly arranged for
Read lock writes lock.
So, when in multithreading operation, when being conducted interviews if any multiple logic CPU to data storage device 610 simultaneously,
, can be by the lock of the storage region when a writer writes data by keyword 601 to the corresponding storage region of node (6.3)
Object is set to write lock, so as to prevent the access of other writers or reader to the storage region.
Or, can be by when a reader reads data by keyword 601 from the corresponding storage region of node (6.3)
The lock object of the storage region is set to read lock, now, still allows other readers to read data from the storage region, but do not permit
Perhaps other writers write data to the storage region.
In this process, there can also be corresponding reader in other storage regions of data storage device 610 or write
Person conducts interviews, without influenceing the access to the corresponding storage region of node (6.3).
In this way, multiple logic CPU can be allowed while being conducted interviews to data storage device 610, and
The probability that lock contention occurs in the corresponding storage region of each node is substantially reduced.
After the writer or all readers that are conducted interviews to the corresponding storage region of node (6.3) exit, this is deposited
Read lock that lock object in storage area domain is set is write lock and automatically terminated.
In addition, when data storage device 610 be internal memory or caching when, can also by data storage device 610 with 6*4
The data of matrix structure storage correspond to the non-volatile memory mediums 620 such as write-in hard disk at regular intervals.So, when operation system
During system restarting, the data write in the non-volatile memory medium 620 are loaded directly into, so as to be reduced as far as abnormal feelings
Loss of data under condition.
Fig. 7 diagrammatically illustrates the block diagram of the device of the accessing data storage devices according to the embodiment of the present disclosure.
As shown in fig. 7, including row determining module according to the device 700 of the accessing data storage devices of the embodiment of the present disclosure
710th, row determining module 720, node determining module 730 and access modules 740.
According to the embodiment of the present disclosure, the data storage device that device 700 is accessed includes multiple storage regions, the multiple to deposit
Storage area domain is corresponded with the node in N*M matrixes, wherein, N is the line number of the matrix, and M is the matrix column number, N and M
It is the positive integer more than or equal to 1, the row and column of the matrix intersects to form the node.
According to the embodiment of the present disclosure, the data storage device includes internal memory or caching.
Row determining module 710 is used for true by keyword and first at least one hash function corresponding with the row of the matrix
A line in the fixed matrix.
Row determining module 720 is used to pass through the keyword and corresponding with the matrix column second at least one hash function
Determine the row in the matrix.
Node determining module 730 is used to determine a node in the matrix by identified row and column.
Access modules 740 conduct interviews for a pair storage region corresponding with identified node.
According to the embodiment of the present disclosure, the devices 700 of accessing data storage devices passes through keyword corresponding with row the respectively
One at least one hash function, corresponding second at least one hash function of row determine the row and column in the matrix, then by institute
The row and column of determination determines a node in the matrix, is carried out so as to the corresponding storage region of the node to the determination
Access.
The device 700 of accessing data storage devices is mapping a keyword to the corresponding storage region of data storage device
During, Hash operation at least one times is carried out in each dimension in two-dimensional space to the keyword, and combine two dimensions
On result of calculation finally determine to obtain the position of correspondence storage region, and the Hash operation of each dimension in this process
It is separate, so as to greatly reduce in Hash table the Hash only when a dimension carries out keyword mapping by Hash operation
It is worth the probability of conflict.
Further, the device 700 of accessing data storage devices can be mapped a keyword to efficiently and accurately specifically
Storage region, reduce invalid data processing time and the consumption caused by cryptographic Hash conflict, data deposited so as to improve
Store up the access speed of equipment.
In accordance with an embodiment of the present disclosure, first at least one hash function and second at least one hash function can phases
Together, can also be different.
When first at least one hash function and different second at least one hash function, data are mapped a keyword to
The probability of cryptographic Hash conflict produced by the specific storage region of storage device will be substantially reduced.
In accordance with an embodiment of the present disclosure, first at least one hash function can for MD5 functions, CRC16 functions, square take
Middle function and/or folding are added function.
In accordance with an embodiment of the present disclosure, second at least one hash function can for MD5 functions, CRC16 functions, square take
Middle function and/or folding are added function.
In accordance with an embodiment of the present disclosure, the device 700 of accessing data storage devices can also include matrix creation module 750
With mapping block 760.
Specifically, matrix creation module 750 is used to create the N*M matrixes.
Mapping block 760 is used for the address of cache of the plurality of storage region to the node in N*M matrixes, so that the plurality of
Storage region is corresponded with the node in the N*M matrixes.
In accordance with an embodiment of the present disclosure, the device 700 of accessing data storage devices by matrix creation module 750 in data
N*M matrixes are created in storage device, and by mapping block 760 by multiple storage regions of the deposit data storage device and the N*
Node in Metzler matrix is corresponded, and on the one hand facilitates user according to the specific data that N and M is selected the need for oneself, so as to
Correspondingly sized matrix is created with personalized.
In accordance with an embodiment of the present disclosure, the device 700 of accessing data storage devices can also include RBTree memory module
770。
RBTree memory module 770 is used in each storage region of at least one storage region, passes through RBTree knot
Structure data storage.
In accordance with an embodiment of the present disclosure, the device 700 of accessing data storage devices by RBTree memory module 770 extremely
With RBTree structure storing data in each storage region of a few storage region, so as to map a keyword to this
During any one storage region of at least one storage region, it is ensured that the data in any one storage region are operated
Time-consuming harmony, improve the stability of data access.
In accordance with an embodiment of the present disclosure, the device 700 of accessing data storage devices can also include Read-Write Locks setup module
780。
Read-Write Locks setup module 780 is used to set Read-Write Locks at least one storage region.
In accordance with an embodiment of the present disclosure, the device 700 of accessing data storage devices passes through the logarithm of Read-Write Locks setup module 780
According to the storage region corresponding at least one storage region in storage device, Read-Write Locks are set.In this way, greatly reduce
It is general that different readers and/or writer fights at least one storage region when being conducted interviews to the storage device
Rate, so as to allow multiple readers or writer to be carried out in the different storage zone of the data storage device simultaneously, is improved to this
The efficiency that data storage device conducts interviews.
Fig. 8 diagrammatically illustrates the square frame of the computer system of the accessing data storage devices according to the embodiment of the present disclosure
Figure.
Fig. 8 diagrammatically illustrates the computer system for being adapted for carrying out accessing data storage devices according to the embodiment of the present disclosure
Block diagram.Computer system shown in Fig. 8 is only an example, to the function of the embodiment of the present disclosure and should not use scope
Bring any limitation.
As shown in figure 8, including processor 801 according to the computer system 800 of the embodiment of the present disclosure, it can be according to storage
Program in read-only storage (ROM) 802 is loaded into random access storage device (RAM) 803 from storage part 808
Program and perform various appropriate actions and processing.Processor 801 can for example include general purpose microprocessor (such as CPU), refer to
Make set processor and/or related chip group and/or special microprocessor (for example, application specific integrated circuit (ASIC)), etc..Processing
Device 810 can also include the onboard storage device for being used to cache purposes.Processor 810 can include being used to perform referring to Fig. 2~Fig. 5
Single treatment unit either multiple processing units of the different actions of the method flow according to the embodiment of the present disclosure of description.
In RAM 803, the system that is stored with 800 operates required various programs and data.Processor 801, ROM 802 with
And RAM 803 is connected with each other by bus 804.Processor 801 is held by performing the program in ROM 802 and/or RAM 803
Various operations of the row above with reference to the method for Fig. 2~Fig. 5 accessing data storage devices described.It is noted that described program
It can be stored in one or more memories in addition to ROM 802 and RAM 803.Processor 801 can also be by performing
It is stored in the program in one or more of memories and is set to perform above with reference to Fig. 2~Fig. 5 access data storages described
The various operations of standby method.
In accordance with an embodiment of the present disclosure, system 800 can also include input/output (I/O) interface 805, input/output
(I/O) interface 805 is also connected to bus 804.System 800 can also include be connected to I/O interfaces 805 with one in lower component
Item is multinomial:Importation 806 including keyboard, mouse etc.;Including such as cathode-ray tube (CRT), liquid crystal display (LCD)
Deng and loudspeaker etc. output par, c 807;Storage part 808 including hard disk etc.;And including such as LAN card, modulatedemodulate
Adjust the communications portion 809 of the NIC of device etc..Communications portion 809 performs communication process via the network of such as internet.
Driver 810 is also according to needing to be connected to I/O interfaces 805.Detachable media 811, such as disk, CD, magneto-optic disk, semiconductor
Memory etc., is arranged on driver 810, in order to which the computer program read from it is pacified as needed as needed
Load storage part 808.
In accordance with an embodiment of the present disclosure, the method described above with reference to flow chart may be implemented as computer software journey
Sequence.For example, embodiment of the disclosure includes a kind of computer program product, it includes carrying meter on a computer-readable medium
Calculation machine program, the computer program, which is included, is used for the program code of the method shown in execution flow chart.In such embodiments,
The computer program can be downloaded and installed by communications portion 809 from network, and/or be pacified from detachable media 811
Dress.When the computer program is performed by processor 801, the above-mentioned functions limited in the system for performing the embodiment of the present disclosure.Root
According to embodiment of the disclosure, system as described above, unit, module, unit etc. can by computer program module come
Realize.
It should be noted that the computer-readable medium shown in the disclosure can be computer-readable signal media or meter
Calculation machine readable storage medium storing program for executing either the two any combination.Computer-readable recording medium for example can be --- but not
Be limited to --- electricity, magnetic, optical, electromagnetic, system, device or the device of infrared ray or semiconductor, or it is any more than combination.Meter
The more specifically example of calculation machine readable storage medium storing program for executing can include but is not limited to:Electrical connection with one or more wires, just
Take formula computer disk, hard disk, random access storage device (RAM), read-only storage (ROM), erasable type and may be programmed read-only storage
Device (EPROM or flash memory), optical fiber, portable compact disc read-only storage (CD-ROM), light storage device, magnetic memory device,
Or above-mentioned any appropriate combination.In the disclosure, computer-readable recording medium can any include or store journey
The tangible medium of sequence, the program can be commanded execution system, device or device and use or in connection.And at this
In open, computer-readable signal media can be included in a base band or as the data-signal of carrier wave part propagation,
Wherein carry computer-readable program code.The data-signal of this propagation can take various forms, including but not limit
In electromagnetic signal, optical signal or above-mentioned any appropriate combination.Computer-readable signal media can also be that computer can
Any computer-readable medium beyond storage medium is read, the computer-readable medium, which can send, propagates or transmit, to be used for
Used by instruction execution system, device or device or program in connection.Included on computer-readable medium
Program code can be transmitted with any appropriate medium, be included but is not limited to:Wirelessly, electric wire, optical cable, RF etc., or above-mentioned
Any appropriate combination.In accordance with an embodiment of the present disclosure, computer-readable medium can include above-described ROM 802
And/or one or more memories beyond RAM 803 and/or ROM 802 and RAM 803.
Flow chart and block diagram in accompanying drawing, it is illustrated that according to the system of the various embodiments of the disclosure, method and computer journey
Architectural framework in the cards, function and the operation of sequence product.At this point, each square frame in flow chart or block diagram can generation
The part of one module of table, program segment or code, a part for above-mentioned module, program segment or code is comprising one or more
Executable instruction for realizing defined logic function.It should also be noted that in some realizations as replacement, institute in square frame
The function of mark can also be with different from the order marked in accompanying drawing generation.For example, two square frames succeedingly represented are actual
On can perform substantially in parallel, they can also be performed in the opposite order sometimes, and this is depending on involved function.Also
It is noted that the combination of each square frame in block diagram or flow chart and the square frame in block diagram or flow chart, can use and perform rule
Fixed function or the special hardware based system of operation realize, or can use the group of specialized hardware and computer instruction
Close to realize.
As on the other hand, the disclosure additionally provides a kind of computer-readable medium, and the computer-readable medium can be
Included in equipment described in above-described embodiment;Can also be individualism, and without be incorporated the equipment in.Above-mentioned calculating
Machine computer-readable recording medium carries one or more program, when said one or multiple programs are performed by the equipment, makes
Obtain the equipment and perform the method set according to the access data storage of the embodiment of the present disclosure, the wherein data storage device includes multiple
Storage region, the plurality of storage region is corresponded with the node in N*M matrixes, wherein, N is the line number of the matrix, and M is the square
The columns of battle array, N and M are the positive integer more than or equal to 1, and the row and column of the matrix intersects to form the node.This method includes:It is logical
Cross keyword and first at least one hash function corresponding with the row of the matrix determines a line in the matrix, pass through the key
Word and corresponding with the matrix column second at least one hash function determine the row in the matrix, by identified row and
Row determine that a node in the matrix, and a pair storage region corresponding with identified node conduct interviews.
In accordance with an embodiment of the present disclosure, first at least one hash function is identical with second at least one hash function
Or it is different.
In accordance with an embodiment of the present disclosure, this method also includes creating the N*M matrixes;And by the ground of the plurality of storage region
Location is mapped to the node in N*M matrixes, so that the plurality of storage region is corresponded with the node in the N*M matrixes.
In accordance with an embodiment of the present disclosure, this method is additionally included in each storage region of at least one storage region, is led to
Cross RBTree structure storing data.
In accordance with an embodiment of the present disclosure, this method also includes setting Read-Write Locks at least one storage region.
In accordance with an embodiment of the present disclosure, the data storage device includes internal memory or caching.
Embodiment of this disclosure is described above.But, the purpose that these embodiments are merely to illustrate that, and
It is not intended to limit the scope of the present disclosure.Although respectively describing each embodiment more than, but it is not intended that each reality
Apply the measure in example and can not be advantageously combined and use.The scope of the present disclosure is defined by the appended claims and the equivalents thereof.Do not take off
From the scope of the present disclosure, those skilled in the art can make a variety of alternatives and modifications, and these alternatives and modifications should all fall at this
Within scope of disclosure.
Claims (14)
1. a kind of method of accessing data storage devices, the data storage device includes multiple storage regions, the multiple to deposit
Storage area domain is corresponded with the node in N*M matrixes, wherein, N is the line number of the matrix, and M is the matrix column number, N and M
It is the positive integer more than or equal to 1, the row and column of the matrix intersects to form the node, and methods described includes:
By keyword and first at least one hash function corresponding with the row of the matrix determines a line in the matrix;
Determined by the keyword and corresponding with the matrix column second at least one hash function in the matrix
One row;
A node in the matrix is determined by identified row and column;And
Pair storage region corresponding with identified node conducts interviews.
2. the method as described in claim 1, wherein:
At least one hash function is identical or different with described second for described first at least one hash function.
3. the method as described in claim 1, in addition to:
Create the N*M matrixes;And
By the address of cache of the multiple storage region to the node in N*M matrixes so that the multiple storage region with it is described
Node in N*M matrixes is corresponded.
4. the method as described in claim 1, in addition to:
In each storage region of at least one storage region, pass through RBTree structure storing data.
5. the method as described in claim 1, in addition to:
Read-Write Locks are set at least one storage region.
6. the method for claim 1, wherein the data storage device includes internal memory or caching.
7. a kind of device of accessing data storage devices, the data storage device includes multiple storage regions, the multiple to deposit
Storage area domain is corresponded with the node in N*M matrixes, wherein, N is the line number of the matrix, and M is the matrix column number, N and M
It is the positive integer more than or equal to 1, the row and column of the matrix intersects to form the node, and described device includes:
Row determining module, for by keyword and first at least one hash function corresponding with the row of the matrix determines institute
State a line in matrix;
Row determining module, for true by the keyword and corresponding with the matrix column second at least one hash function
A row in the fixed matrix;
Node determining module, for determining a node in the matrix by identified row and column;And
Access modules, conduct interviews for a pair storage region corresponding with identified node.
8. device as claimed in claim 7, wherein:
At least one hash function is identical or different with described second for described first at least one hash function.
9. device as claimed in claim 7, in addition to:
Matrix creation module, for creating the N*M matrixes;And
Mapping block, for by the address of cache of the multiple storage region to the node in N*M matrixes so that the multiple deposit
Storage area domain is corresponded with the node in the N*M matrixes.
10. device as claimed in claim 7, in addition to
RBTree memory module, in each storage region of at least one storage region, passing through red-black storage of data structure
Data.
11. device as claimed in claim 7, in addition to:
Read-Write Locks setup module, for setting Read-Write Locks at least one storage region.
12. device as claimed in claim 7, wherein, the data storage device includes internal memory or caching.
13. a kind of device of accessing data storage devices, including
One or more memories, be stored with executable instruction;And
One or more processors, perform the executable instruction, to realize according to according to any one of claims 1 to 6
Method.
14. a kind of computer-readable recording medium, is stored thereon with executable instruction, the instruction makes processing when being executed by processor
Method any one of device perform claim requirement 1~6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710540110.0A CN107291628B (en) | 2017-07-04 | 2017-07-04 | Method and apparatus for accessing data storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710540110.0A CN107291628B (en) | 2017-07-04 | 2017-07-04 | Method and apparatus for accessing data storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107291628A true CN107291628A (en) | 2017-10-24 |
CN107291628B CN107291628B (en) | 2020-09-01 |
Family
ID=60100184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710540110.0A Active CN107291628B (en) | 2017-07-04 | 2017-07-04 | Method and apparatus for accessing data storage device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107291628B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109522299A (en) * | 2018-10-23 | 2019-03-26 | 咪咕数字传媒有限公司 | Data processing method, device, system and storage medium |
CN111767152A (en) * | 2020-07-17 | 2020-10-13 | 腾讯科技(深圳)有限公司 | Method, apparatus and computer-readable storage medium for detecting resource idleness |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206912A (en) * | 2006-12-22 | 2008-06-25 | 富士通株式会社 | Memory device, memory controller and memory system |
CN101478608A (en) * | 2009-01-09 | 2009-07-08 | 南京联创科技股份有限公司 | Fast operating method for mass data based on two-dimensional hash |
CN104158744A (en) * | 2014-07-09 | 2014-11-19 | 中国电子科技集团公司第三十二研究所 | Method for building table and searching for network processor |
CN104572983A (en) * | 2014-12-31 | 2015-04-29 | 北京锐安科技有限公司 | Construction method based on hash table of memory, text searching method and corresponding device |
CN104809179A (en) * | 2015-04-16 | 2015-07-29 | 华为技术有限公司 | Device and method for accessing Hash table |
CN105335411A (en) * | 2014-07-31 | 2016-02-17 | 国际商业机器公司 | Method and system for data processing |
CN105389360A (en) * | 2015-11-05 | 2016-03-09 | 浪潮(北京)电子信息产业有限公司 | AVL tree-based data writing method and apparatus |
US9311359B2 (en) * | 2013-01-30 | 2016-04-12 | International Business Machines Corporation | Join operation partitioning |
-
2017
- 2017-07-04 CN CN201710540110.0A patent/CN107291628B/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206912A (en) * | 2006-12-22 | 2008-06-25 | 富士通株式会社 | Memory device, memory controller and memory system |
CN101478608A (en) * | 2009-01-09 | 2009-07-08 | 南京联创科技股份有限公司 | Fast operating method for mass data based on two-dimensional hash |
US9311359B2 (en) * | 2013-01-30 | 2016-04-12 | International Business Machines Corporation | Join operation partitioning |
CN104158744A (en) * | 2014-07-09 | 2014-11-19 | 中国电子科技集团公司第三十二研究所 | Method for building table and searching for network processor |
CN105335411A (en) * | 2014-07-31 | 2016-02-17 | 国际商业机器公司 | Method and system for data processing |
CN104572983A (en) * | 2014-12-31 | 2015-04-29 | 北京锐安科技有限公司 | Construction method based on hash table of memory, text searching method and corresponding device |
CN104809179A (en) * | 2015-04-16 | 2015-07-29 | 华为技术有限公司 | Device and method for accessing Hash table |
CN105389360A (en) * | 2015-11-05 | 2016-03-09 | 浪潮(北京)电子信息产业有限公司 | AVL tree-based data writing method and apparatus |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109522299A (en) * | 2018-10-23 | 2019-03-26 | 咪咕数字传媒有限公司 | Data processing method, device, system and storage medium |
CN109522299B (en) * | 2018-10-23 | 2020-12-18 | 咪咕数字传媒有限公司 | Data processing method, device, system and storage medium |
CN111767152A (en) * | 2020-07-17 | 2020-10-13 | 腾讯科技(深圳)有限公司 | Method, apparatus and computer-readable storage medium for detecting resource idleness |
Also Published As
Publication number | Publication date |
---|---|
CN107291628B (en) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10942708B2 (en) | Generating web API specification from online documentation | |
US10509772B1 (en) | Efficient locking of large data collections | |
CN108846753B (en) | Method and apparatus for processing data | |
CN106489141B (en) | Method and electronic device for classifying content | |
US10838963B2 (en) | Optimized access for hierarchical low cardinality value synopsis in analytical databases | |
CN107888659A (en) | The processing method and system of user's request | |
US20160205109A1 (en) | Website access control | |
CN108241689A (en) | Page resource acquisition methods, device and client device | |
CN110489971A (en) | The data set management of safety | |
US10177795B1 (en) | Cache index mapping | |
CN107291628A (en) | The method and apparatus of accessing data storage devices | |
US9858333B2 (en) | Efficient structured data exploration with a combination of bivariate metric and centrality measures | |
WO2022089235A1 (en) | Product demonstration method and apparatus, computer device, and storage medium | |
CN115525793A (en) | Computer-implemented method, system, and storage medium | |
US9947074B2 (en) | Memory-aware matrix factorization | |
CN110020373A (en) | The method and apparatus that static page is stored, browsed | |
CN112068781A (en) | Data reading and writing method of memory and related equipment | |
CN107895044A (en) | A kind of database data processing method, device and system | |
CN107729347B (en) | Method, device and equipment for acquiring synonym label and computer readable storage medium | |
US10922366B2 (en) | Self-adaptive web crawling and text extraction | |
Phillips et al. | Performance analysis of the high-performance conjugate gradient benchmark on GPUs | |
US11777959B2 (en) | Digital security violation system | |
US20230237186A1 (en) | Access Control Framework For Graph Entities | |
US20220318337A1 (en) | Classification of ordered data using cumulative sum encoding | |
US10896193B2 (en) | Cache fetching of OLAP based data using client to client relationships and data encoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |