CN107291628A - The method and apparatus of accessing data storage devices - Google Patents

The method and apparatus of accessing data storage devices Download PDF

Info

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
Application number
CN201710540110.0A
Other languages
Chinese (zh)
Other versions
CN107291628B (en
Inventor
陈贱辉
邵荣防
郝晖
李萧萧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201710540110.0A priority Critical patent/CN107291628B/en
Publication of CN107291628A publication Critical patent/CN107291628A/en
Application granted granted Critical
Publication of CN107291628B publication Critical patent/CN107291628B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency 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

The method and apparatus of accessing data storage devices
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.
CN201710540110.0A 2017-07-04 2017-07-04 Method and apparatus for accessing data storage device Active CN107291628B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (8)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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