CN115658730B - Sparse data query method, apparatus, device and computer readable storage medium - Google Patents

Sparse data query method, apparatus, device and computer readable storage medium Download PDF

Info

Publication number
CN115658730B
CN115658730B CN202211146454.0A CN202211146454A CN115658730B CN 115658730 B CN115658730 B CN 115658730B CN 202211146454 A CN202211146454 A CN 202211146454A CN 115658730 B CN115658730 B CN 115658730B
Authority
CN
China
Prior art keywords
data
target
primary
index
primary index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211146454.0A
Other languages
Chinese (zh)
Other versions
CN115658730A (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.)
Institute of Automation of Chinese Academy of Science
Original Assignee
Institute of Automation of Chinese Academy of Science
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 Institute of Automation of Chinese Academy of Science filed Critical Institute of Automation of Chinese Academy of Science
Priority to CN202211146454.0A priority Critical patent/CN115658730B/en
Publication of CN115658730A publication Critical patent/CN115658730A/en
Application granted granted Critical
Publication of CN115658730B publication Critical patent/CN115658730B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention provides a sparse data query method, a sparse data query device, sparse data query equipment and a computer readable storage medium, and relates to the technical field of electronic information, wherein the sparse data query method comprises the following steps: acquiring an index address of data to be queried and a primary index table and a secondary index table of original sparse data; the primary index table is used for storing primary index values of each number in the original sparse data, the primary index values are used for representing whether the corresponding numbers are zero, and the secondary index table is used for storing secondary index values; determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table; and acquiring target query data corresponding to the index address from the data memory based on the target storage address so as to solve the technical problems of saving the storage space and improving the query efficiency of the sparse data.

Description

Sparse data query method, apparatus, device and computer readable storage medium
Technical Field
The present invention relates to the field of electronic information technologies, and in particular, to a method, an apparatus, a device, and a computer readable storage medium for querying sparse data.
Background
The sparse table is an important representation method for compressing sparse data and is widely applied to the technical field of electronic information. Sparse tables have a wide variety of expressions, including compressed sparse rows, compressed sparse columns, and coordinate axis indexes.
The compressed sparse rows, the compressed sparse columns and the coordinate axis indexes need to directly store row coordinates or column coordinates, when the vector dimension is higher or the sparsity is lower, a larger storage space is needed, and meanwhile, the problem of excessive times of accessing a memory exists when searching data is solved, so that the data query efficiency is lower.
Therefore, how to save the storage space and improve the query efficiency of the sparse data is a technical problem to be solved by those skilled in the relevant art.
Disclosure of Invention
The invention provides a sparse data query method, device, equipment and a computer readable storage medium, which are used for solving the technical problems of saving storage space and improving sparse data query efficiency in the prior art.
The invention provides a sparse data query method, which comprises the following steps:
acquiring an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units, wherein the primary storage units are used for storing primary index values of each number in the original sparse data, and the primary index values are used for representing whether the corresponding number is zero or not;
Acquiring a secondary index table of the original sparse data, wherein the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of primary storage units corresponding to the secondary storage units;
determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table;
and acquiring target query data corresponding to the index address from a data memory based on the target storage address, wherein the data memory is used for storing non-zero numbers in the original sparse data.
According to the method for querying sparse data provided by the invention, the determining of the target primary index value corresponding to the data to be queried based on the index address and the primary index table comprises the following steps:
acquiring the storage capacity of a first-stage storage unit in the first-stage index table, wherein the storage capacity represents the number of first-stage storage bits contained in the first-stage storage unit, and the first-stage storage bits are used for storing a first-stage index value;
Determining a target storage unit number and a target storage bit number based on the index address and the storage capacity; determining a target primary storage unit corresponding to the data to be queried from the primary index table based on the target storage unit number;
and acquiring a first-level index value stored on a first-level storage bit corresponding to the target storage bit number in the target first-level storage unit, and determining the first-level index value as a target first-level index value corresponding to the data to be queried.
According to the method for querying sparse data provided by the invention, the determining of the target storage address based on the target primary index value, the primary index table and the secondary index table comprises the following steps:
judging whether the target primary index value is a first identification value or not, wherein the first identification value is used for representing that the number corresponding to the primary index value is a non-zero number;
under the condition that the target primary index value is the first identification value, acquiring all primary index values in a target primary storage unit corresponding to the target primary index value from the primary index table to obtain target primary index data;
determining a secondary storage unit with the same number as the target primary storage unit in the secondary index table as a target secondary storage unit corresponding to the data to be queried;
And determining a target storage address corresponding to the data to be queried based on the target primary index value, the target primary index data and the target secondary index value stored in the target secondary storage unit.
According to the method for querying sparse data provided by the invention, the determining the target storage address corresponding to the data to be queried based on the target primary index value, the target primary index data and the target secondary index value stored in the target secondary storage unit comprises the following steps:
generating mask data based on the target primary index value and the target primary index data, and acquiring a first nonzero number based on the target primary index data and the mask data;
obtaining a second non-zero number based on the target secondary index value, and obtaining a target non-zero number based on the first non-zero number and the second non-zero number;
and determining a target storage address of the data to be queried in a data memory based on the target non-zero number.
According to the method for querying sparse data provided by the invention, mask data is generated based on the target primary index value and the target primary index data, and a first nonzero number is acquired based on the target primary index data and the mask data, and the method comprises the following steps:
All primary index values positioned in front of the target primary index value in the target primary index data are assigned to be 1, and other primary index values are assigned to be 0, so that the mask data are obtained;
inputting the target primary index data and the mask data into an AND logic operator to obtain a logic operation result;
and inputting the logical operation result into an adder tree circuit to obtain the first nonzero number.
According to the query method of sparse data provided by the invention, the method further comprises the following steps:
and outputting the target query data corresponding to the index address to be zero under the condition that the target primary index value is a second identification value, wherein the second identification value is used for representing that the number corresponding to the primary index value is zero.
The invention also provides a query device of the sparse data, comprising:
the first acquisition module is used for acquiring an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units and is used for storing primary index values of each number in the original sparse data;
the second acquisition module is used for acquiring a secondary index table of the original sparse data, the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of one-level storage units corresponding to the secondary storage units;
The address query module is used for determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table;
and the data query module is used for acquiring target query data corresponding to the index address from a data memory based on the target storage address, and the data memory is used for storing non-zero numbers in the original sparse data.
The invention also provides sparse data query equipment, which comprises a controller, wherein the controller comprises a memory, a processor and a computer program stored on the memory and capable of running on the processor, and the processor realizes the sparse data query method when executing the program.
The present invention also provides a non-transitory computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements a method of querying sparse data as described in any of the above.
The invention also provides a computer program product comprising a computer program which when executed by a processor implements a method of querying sparse data as described in any of the above.
According to the sparse data query method, device, equipment and computer readable storage medium, the index value of each number in original sparse data is stored through the primary index table and the secondary index table, and only the non-zero number in the original sparse data is stored in the data memory, so that the storage space of the data memory can be greatly saved, the effect of saving storage resources is achieved, whether the data to be queried is zero or not is judged according to the numerical value of the target primary index value corresponding to the data to be queried, the target storage address corresponding to the query data is further determined according to the judgment result, the data memory is accessed based on the target storage address to acquire the target query data, the required target query data can be acquired through accessing the three-time memory at most in the whole sparse data query process, namely accessing the table memory at most twice and accessing the data memory at most once is required, the access times of the memory are greatly reduced, the sparse data query efficiency is effectively improved, and the technical problems of how to save the storage space and improve the query efficiency of the sparse data in the prior art are solved.
Drawings
In order to more clearly illustrate the invention or the technical solutions of the prior art, the drawings that are used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the description below are some embodiments of the invention, and other drawings can be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic flow chart of a sparse data query method according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of a correspondence relationship between a primary memory cell and a secondary memory cell according to an embodiment of the present invention;
FIG. 3 is a second flowchart of a sparse data query method according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a primary index table according to an embodiment of the present invention;
FIG. 5 is a third flow chart of a sparse data query method according to an embodiment of the present invention;
FIG. 6 is a flowchart of a sparse data query method according to an embodiment of the present invention;
FIG. 7 is a diagram illustrating a correspondence between a primary index value and a secondary index value according to an embodiment of the present invention;
FIG. 8 is a schematic diagram of a method for determining a target non-zero number in an embodiment of the invention;
FIG. 9 is a fifth flow chart of a sparse data query method according to an embodiment of the present invention;
fig. 10 is one of schematic structural diagrams of a sparse data query device according to an embodiment of the present invention;
fig. 11 is a schematic structural diagram of a controller in a sparse data query device according to an embodiment of the present invention;
FIG. 12 is a second schematic structural diagram of a sparse data query device according to an embodiment of the present invention;
fig. 13 is a schematic structural diagram of a first calculation unit in the sparse data query apparatus according to the embodiment of the present invention;
fig. 14 is a schematic structural diagram of a sparse data query device according to an embodiment of the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present invention more apparent, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is apparent that the described embodiments are some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The sparse data query method provided by the invention is described below with reference to fig. 1 to 9. As shown in fig. 1, the present invention provides a sparse data query method, including:
Step 101, obtaining an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units and is used for storing primary index values of each number in the original sparse data, and the primary index values are used for representing whether the corresponding number is zero or not.
The index address represents the address of the primary index value corresponding to the data to be queried in the primary index table. Each primary storage unit in the primary index table stores a plurality of primary index values, and each primary index value corresponds to one number in the original sparse data and is used for representing whether the corresponding number is zero or not.
Step 102, obtaining a secondary index table of original sparse data, wherein the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of primary storage units corresponding to the secondary storage units.
And step 103, determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table.
Specifically, a primary index value with the same address as the index address in the primary index table is obtained as a target primary index value corresponding to the data to be queried. Further, since the first-level index value is used for indicating whether the corresponding number is zero, whether the data to be queried is zero can be judged according to the value of the target first-level index value corresponding to the data to be queried, the query result is directly output under the condition that the data to be queried is zero according to the target first-level index value, and the target storage address of the query data in the data storage is queried according to the target first-level index value, the first-level index table and the second-level index table under the condition that the data to be queried is non-zero according to the target first-level index value.
Step 104, acquiring target query data corresponding to the index address from a data memory based on the target storage address, wherein the data memory is used for storing non-zero numbers in the original sparse data. The target query data corresponds to the data to be queried, the target query data is the searched data, and the data to be queried represents the data to be searched. The data memory is used for storing non-zero numbers in the original sparse data according to the original sequence, namely the sequence of the non-zero numbers in the original sparse data stored by the data memory is unchanged.
In the steps 101 to 104, the index value of each number in the original sparse data is stored through the first-level index table and the second-level index table, and only the non-zero number in the original sparse data is stored in the data memory, so that the storage space of the data memory can be greatly saved, the effect of saving storage resources is achieved, whether the data to be queried is zero or not is judged according to the numerical value of the target first-level index value corresponding to the data to be queried, and the target storage address corresponding to the query data is further determined according to the judging result, so that the data memory is accessed based on the target storage address to acquire the target query data, and the required target query data can be acquired by accessing the three-time memory at most in the whole sparse data query process, namely accessing the two-time-table memory at most and accessing the one-time-data memory at most, so that the access times of the memory are greatly reduced, the query efficiency of the sparse data is effectively improved, and the technical problems of how to save the storage space and improve the query efficiency of the sparse data in the prior art are solved.
In one embodiment, the plurality of primary storage units in the primary index table are sequentially arranged in a number order, and the plurality of secondary storage units in the secondary index table are sequentially arranged in a number order, with the numbers of the primary storage units and the secondary storage units corresponding. The "plurality of primary storage units corresponding to the secondary storage units" means all the primary storage units arranged in front of the primary storage units having the same number as the secondary storage units. The secondary index value is an accumulated value of one-level index values in a plurality of one-level memory cells corresponding to the secondary memory cells.
Fig. 2 illustrates a correspondence relationship between the primary storage unit and the secondary storage unit, and as shown in fig. 2, the primary index table includes a primary storage unit 0, a primary storage unit 1, a primary storage unit 2, and a primary storage unit 3, which are sequentially arranged. The secondary index table includes a secondary storage unit 0, a secondary storage unit 1, a secondary storage unit 2, and a secondary storage unit 3, which are sequentially arranged, wherein numerals 0 to 3 represent numbers of the primary storage unit or the secondary storage unit.
Since there is no other primary storage unit before the primary storage unit 0 having the same number as the secondary storage unit 0, no primary storage unit corresponds to the secondary storage unit 0, i.e., the secondary index value stored in the secondary storage unit 0 is zero or an invalid value. Since the first level memory cell preceding the first level memory cell 1 having the same number as the second level memory cell 1 is the first level memory cell 0, the second level memory cell 1 corresponds to the first level memory cell 0, i.e., the second level index value stored in the second level memory cell 1 is determined based on the first level index value stored in the first level memory cell 0.
By analogy, the secondary storage unit 2 corresponds to the primary storage unit 0 and the primary storage unit 1, i.e., the secondary index value stored by the secondary storage unit 2 is determined based on the primary index values stored in the primary storage unit 0 and the primary storage unit 1. And the secondary storage unit 3 corresponds to the primary storage unit 0, the primary storage unit 1 and the primary storage unit 2, that is, the secondary index value stored by the secondary storage unit 3 is determined based on the primary index values stored in the primary storage unit 0, the primary storage unit 1 and the primary storage unit 2.
In one embodiment, as shown in fig. 3, the step 103 includes steps 201 to 203, where:
step 201, obtaining a storage capacity of a primary storage unit in a primary index table, where the storage capacity represents a number of primary storage bits contained in the primary storage unit, and the primary storage bits are used to store a primary index value.
Step 202, determining a target storage unit number and a target storage bit number based on the index address and the storage capacity; and determining a target primary storage unit corresponding to the data to be queried from the primary index table based on the target storage unit number.
Further, the index address and the storage capacity are divided to obtain a quotient and a remainder, a target storage unit number is determined based on the quotient, and a target storage bit number is determined based on the remainder. Specifically, the index address is taken as a dividend, the storage capacity is taken as a divisor, and the index address and the storage capacity are divided to obtain a quotient and a remainder.
Step 203, obtaining a primary index value stored on a primary storage bit corresponding to a target storage bit number in a target primary storage unit, and determining the primary index value as a target primary index value corresponding to the data to be queried.
Fig. 4 illustrates the structure of a primary index table, which includes a primary storage unit 0, a primary storage unit 1, a primary storage unit 2, and a primary storage unit 3, which are sequentially arranged, as shown in fig. 4. The number of the first primary storage unit is 0, and the storage capacity of the primary storage unit is 16, namely, each primary storage unit stores 16 primary index values corresponding to the number. When the index address is 17, the quotient and remainder obtained by dividing the index address 17 by the storage capacity 16 are 1, and the target storage location number is 1 and the target storage bit number is 17. Namely, the target primary storage unit corresponding to the data to be queried is the primary storage unit 1, and the target primary index value corresponding to the data to be queried is the primary index value stored on the primary storage bit 17.
In one embodiment, the index address of the data to be queried is the same as the storage bit number of the primary storage bit where the primary index value corresponding to the data to be queried is located. The method comprises the steps of obtaining a storage bit number range of a first-level storage bit in each first-level storage unit stored in advance, comparing an index address with a storage bit number range corresponding to each first-level storage unit, and determining that the first-level storage unit is a target first-level storage unit corresponding to data to be queried under the condition that the index address is in the storage bit number range corresponding to a certain first-level storage unit.
Further, determining a target storage bit number based on the index address, and determining a first-level index value stored on a first-level storage bit corresponding to the target storage bit number in the target first-level storage unit as a target first-level index value corresponding to the data to be queried.
For example, in the case where the index address is 17, as shown in fig. 4, it can be determined that the index address 17 is within the storage bit number range [16,31] corresponding to the primary storage unit 1 by comparing the index address 17 with the storage bit number range corresponding to each primary storage unit, and thus, it is determined that the target primary storage unit corresponding to the data to be queried is the primary storage unit 1, and the primary index value stored on the primary storage bit of which the target storage bit number is 17 in the primary storage unit 1 is the target primary index value.
In one embodiment, as shown in fig. 5, the step 103 further includes steps 301 to 304, where:
step 301, determining whether the target primary index value is a first identification value, where the first identification value is used to represent that the number corresponding to the primary index value is a non-zero number.
Step 302, under the condition that the target primary index value is the first identification value, obtaining all primary index values in the target primary storage unit corresponding to the target primary index value from the primary index table, and obtaining target primary index data.
Further, setting the first identification value to be 1, and under the condition that the target primary index value is 1, determining that the data to be queried corresponding to the index address is a non-zero number, and further obtaining all primary index values in the target primary storage unit corresponding to the target primary index value from the primary index table to obtain target primary index data, wherein the target primary index data comprises a plurality of primary index values.
Step 303, determining the secondary storage unit with the same number as the target primary storage unit in the secondary index table as the target secondary storage unit corresponding to the data to be queried.
Further, the number of the primary storage units in the primary index table is the same as the number of the secondary storage units in the secondary index table, and the numbers of the primary storage units and the secondary storage units are in one-to-one correspondence, for example, the primary storage units and the secondary storage units shown in fig. 2.
Step 304, determining a target storage address corresponding to the data to be queried based on the target primary index value, the target primary index data and the target secondary index value stored in the target secondary storage unit.
In one embodiment, as shown in fig. 6, the step 304 includes steps 401 to 403, where:
Step 401, generating mask data based on the target primary index value and the target primary index data, and acquiring a first non-zero number based on the target primary index data and the mask data.
Wherein the first non-zero number represents the number of all non-zero index values in the target primary storage unit that precede the target primary index value. The number of data in the mask data is the same as the number of data in the target primary index data.
Step 402, obtaining a second non-zero number based on the target second level index value, and obtaining the target non-zero number based on the first non-zero number and the second non-zero number.
Wherein the second non-zero number indicates the number of all non-zero index values in the plurality of primary storage units corresponding to the target secondary storage unit. The target non-zero number represents the number of all non-zero index values in the primary index table that precede the target primary index value. The target secondary index value is an accumulated value of primary index values in a plurality of primary storage units corresponding to the target secondary storage unit.
Fig. 7 illustrates a correspondence relationship between the first-level index value and the second-level index value, as shown in fig. 7, the number of non-zero index values in the first-level storage unit 0 is a, the number of non-zero index values in the first-level storage unit 1 is B, the number of non-zero index values in the first-level storage unit 2 is C, the number of non-zero index values in the first-level storage unit 3 is D, the second-level index value stored in the second-level storage unit 0 is 0, the second-level index value stored in the second-level storage unit 1 is a, the second-level index value stored in the second-level storage unit 2 is a+b, the second-level index value stored in the second-level storage unit 3 is a sum of the numbers of non-zero index values in all the first-level storage units preceding the target first-level storage unit having the same number as the target second-level storage unit.
Fig. 8 illustrates a manner of determining the target non-zero number, as shown in fig. 8, where X represents the target storage bit number corresponding to the target primary index value, and Y represents the first non-zero number, i.e., the number of all non-zero index values located in the target primary storage unit preceding the target primary index value X. A+b represents a second non-zero number, i.e., the number of all non-zero index values in the plurality of primary storage units corresponding to the target secondary storage unit. A+b+y represents the target non-zero number, i.e., the number of all non-zero index values in the primary index table that precede the target primary index value X.
Step 403, determining a target storage address of the data to be queried in the data storage based on the target non-zero number.
It should be noted that, because each number in the original sparse data corresponds to one level index value in the level one storage unit, and each level index value is used to represent whether the corresponding number is zero, the target non-zero number is the number of all non-zero numbers located in front of the data to be queried in the original sparse data, and because the data storage stores all non-zero numbers in the original sparse data, the target non-zero number is the target storage address of the data to be queried in the data storage.
In the steps 401 to 403, the accumulated value of the first-level index values in the plurality of first-level storage units corresponding to each second-level storage unit is stored as the second-level index value in the second-level storage unit in advance, so that the number of all the non-zero index values positioned in front of the target first-level index value in the target first-level storage unit can be directly obtained based on the target second-level index value corresponding to the index address, and the number of all the non-zero index values positioned in front of the target first-level index value in the target first-level storage unit does not need to be counted during each query, thereby greatly reducing redundant calculation of data, saving data processing resources and further improving the query efficiency of sparse data.
In one embodiment, as shown in fig. 9, the step 401 includes steps 501 to 503, where:
in step 501, all primary index values located before the target primary index value in the target primary index data are assigned to 1, and other primary index values are assigned to 0, so as to obtain mask data.
Specifically, all the primary index values located in front of the target primary index value in the target primary index data are assigned to 1, and the target primary index value and the primary index value located behind the target primary index value are assigned to 0, so that the mask data are obtained. For example, the target primary index data is { a, b, x, c, d, e }, where x represents the target primary index value, a and b represent the primary index values preceding the target primary index value, and c, d, e represent the primary index values following the target primary index value, and thus the mask data is {1,1,0,0,0,0}.
Step 502, inputting the target primary index data and the mask data into an AND logic operator to obtain a logic operation result.
For example, the target primary index data { a, b, x, c, d, e } and the mask data {1,1,0,0,0,0} are input to an AND logic operator, and the result of the logic operation is { a, b, 0}.
In step 503, the logic operation result is input to the adder tree circuit to obtain the first non-zero number.
Further, the adder tree circuit includes a plurality of adder circuits each constituted by a plurality of adders operated in parallel, and two adjacent adders in the preceding-stage adder circuit are connected with one adder in the following-stage adder circuit to transmit the operation results obtained respectively to this adder in the following-stage adder circuit, and so on, the operation results of the adders in the last-stage adder circuit are output as the first non-zero number.
For example, the logical operation result { a, b,0} is inputted to the adder tree circuit, the first operation result of the adder in the first stage adder circuit is { a+b,0+0 }, the first operation result { a+b,0+0 } is inputted to the second stage adder circuit, the obtained second operation result is { a+b,0}, the second operation result { a+b,0} is inputted to the third stage adder circuit, and the obtained final operation result is { a+b }, i.e., the first non-zero number is a+b.
In the steps 501 to 503, by assigning 1 to all the primary index values located in front of the target primary index value in the target primary index data and assigning 0 to the other primary index values, mask data corresponding to the target primary index data is obtained, so that the number of all the non-zero index values located in front of the target primary index value in the target primary storage unit can be obtained very simply and conveniently, the calculation flow of the first non-zero number is simplified, the data processing efficiency is improved, and the query efficiency of sparse data can be further improved.
In one embodiment, when the target primary index value is the second identification value, the target query data corresponding to the output index address is zero, and the second identification value is used for representing that the number corresponding to the primary index value is zero.
Further, if the second identification value is set to 0, the target query data corresponding to the output index address is 0 when the target primary index value is 0.
According to the embodiment, under the condition that the target primary index value is the second identification value, the target query data corresponding to the index address can be directly determined to be zero without accessing the secondary index table, so that the data query flow is simplified, the data access times are reduced, and the query efficiency of sparse data can be improved.
As shown in fig. 10, the present invention provides a sparse data query apparatus, including: table memory, data memory, controller and output buffer module, wherein: the table memory is used for storing a primary index table and a secondary index table of original sparse data. The data memory is used for storing non-zero numbers in the original sparse data.
The controller is respectively connected with the table memory, the data memory and the output buffer module, and is used for executing the sparse data query method provided by any one of the embodiments, specifically, the controller is used for acquiring an index address corresponding to the data to be queried, acquiring two-stage index tables, namely a first-stage index table and a second-stage index table, from the table memory based on the index address, so as to acquire a target storage address corresponding to the data to be queried and a control signal based on the two-stage index table and the index address, acquiring the target query data from the data memory based on the target storage address, transmitting the target query data to the output buffer module, and controlling the output buffer module to output the target query data based on the control signal.
Fig. 11 illustrates a physical structure diagram of a controller, as shown in fig. 11, which may include: processor 810, communication interface (Communications Interface) 820, memory 830, and communication bus 840, wherein processor 810, communication interface 820, memory 830 accomplish communication with each other through communication bus 840. The processor 810 may invoke logic instructions in the memory 830 to perform the method of querying sparse data provided by the methods described above, the method comprising: acquiring an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units and is used for storing primary index values of each number in original sparse data, and the primary index values are used for representing whether the corresponding number is zero or not; acquiring a secondary index table of original sparse data, wherein the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of one-level storage units corresponding to the secondary storage units; determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table; and acquiring target query data corresponding to the index address from a data memory based on the target storage address, wherein the data memory is used for storing non-zero numbers in the original sparse data.
Further, the logic instructions in the memory 830 described above may be implemented in the form of software functional units and may be stored in a computer-readable storage medium when sold or used as a stand-alone product. Based on this understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method of the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
In one embodiment, the processor 810 is further configured to determine a target primary index value corresponding to the data to be queried based on the index address of the data to be queried and the primary index table of the original sparse data, determine whether the data to be queried is a non-zero number based on the target primary index value, output a high-level control signal if the data to be queried is determined to be a non-zero number based on the target primary index value, and obtain a secondary index table corresponding to the data to be queried from the table memory based on the high-level control signal, so as to determine a target storage address based on the target primary index value, the primary index table and the secondary index table; and under the condition that the data to be queried is judged to be zero based on the target primary index value, outputting a low-level control signal, and directly outputting the target query data corresponding to the index address to be zero based on the low-level control signal.
In the above embodiment, the second-level index table is accessed only when the data to be queried is determined to be a non-zero number based on the target first-level index value to determine the target storage address, and the target query data is directly output to be zero when the data to be queried is determined to be zero based on the target first-level index value, so that the waste of processing resources of the processor 810 caused by invalid access to the second-level index table can be avoided, the processing resources of the processor 810 are saved, and the processing efficiency of the processor 810 is improved.
In one embodiment, as shown in fig. 12, the processor 810 includes a first processing unit and a second processing unit connected to each other, wherein:
the first processing unit is used for acquiring an index address of data to be queried and a first-level index table of original sparse data, determining a target first-level index value corresponding to the data to be queried based on the index address and the first-level index table, judging whether the data to be queried is a nonzero number or not based on the target first-level index value, outputting a high-level control signal under the condition that the data to be queried is judged to be a nonzero number based on the target first-level index value, and acquiring a first nonzero number based on the target first-level index value; and under the condition that the data to be queried is judged to be zero based on the target primary index value, outputting a low-level control signal, and directly outputting the target query data corresponding to the index address to be zero based on the low-level control signal.
The second calculating unit is used for obtaining a second-level index table corresponding to the data to be queried from the table memory based on the high-level control signal, so as to obtain a second non-zero number based on the target first-level index value and the second-level index table, obtain a target non-zero number based on the second non-zero number and the first non-zero number calculated by the first processing unit, and determine a target storage address of the data to be queried in the data memory based on the target non-zero number.
Further, the second processing unit includes a multi-bit adder for adding the second non-zero number and the first non-zero number to obtain the target non-zero number.
In one embodiment, as shown in fig. 13, the first processing unit includes a selector, an encoder, an and logic operator, and an adder tree circuit, wherein:
the selector is connected with the first input port X1 and the second input port X2, and is used for acquiring an index address corresponding to data to be queried from the first input port X1 and acquiring a primary index table of original sparse data from the second input port X2, determining a target primary index value based on the index address and the primary index table, and judging whether the data to be queried is a nonzero number or not based on the target primary index value.
Further, the selector is used for judging mod (addr, 2 in the primary index table n ) Whether the primary index value is zero or not, when mod (addr, 2 n ) Under the condition that the first-level index value is 0, determining that the data to be queried is zero, and outputting a low-level control signal; after determining mod (addr, 2 n ) Under the condition that the first-level index value is 1, determining that the data to be queried is nonzero number and outputting a high-level control signal, wherein the target first-level index value is mod (addr, 2) in a first-level index table n ) A first level index value mod (addr, 2 n ) Represents addr divided by 2 n Taking remainder, addr represents index address, 2 n The storage capacity of the primary storage unit in the primary index table is expressed in bits. The first output port Y1 in fig. 13 is for outputting a control signal.
The encoder is connected with the first input port X1, the selector and the logic operator, and is used for acquiring a target primary index value corresponding to the index address and target primary index data, and encoding the target primary index data into the same bit number (i.e. 2 based on the target primary index value under the control of the high-level control signal n A number of bits) and transmits the mask data to the and logic operator.
The logic operator is connected with the selector, the encoder, the second input port X2 and the adder tree circuit, and is used for receiving the target primary index value transmitted by the selector and the high-level control signal, acquiring a primary index table based on the second input port X2, acquiring target primary index data corresponding to the target primary index value from the primary index table, receiving mask data transmitted by the encoder, acquiring a logic operation result based on the target primary index data and the mask data and transmitting the logic operation result to the adder tree circuit, so that the adder tree circuit acquires the first nonzero number based on the logic operation result. The second output port Y2 in fig. 13 is for outputting the first non-zero number.
According to the sparse data query device provided by the invention, the index value of each number in the original sparse data is stored by setting the first-level index table and the second-level index table, and only the non-zero number in the original sparse data is stored in the data memory, so that the storage space of the data memory can be greatly saved, the effect of saving storage resources is achieved, whether the data to be queried is zero or not is judged according to the numerical value of the target first-level index value corresponding to the data to be queried, and the target storage address corresponding to the query data is further determined according to the judgment result, so that the data memory is accessed based on the target storage address to acquire the target query data, and the required target query data can be acquired by accessing the three-time memory at most in the whole sparse data query process, namely accessing the two-time memory and accessing the one-time data memory at most, so that the access times of the memory are greatly reduced, and the query efficiency of the sparse data is effectively improved, and the technical problems of how to save the storage space and improve the query efficiency of the sparse data in the prior art are solved.
The sparse data query device provided by the invention is described below, and the sparse data query device described below and the sparse data query method described above can be referred to correspondingly.
As shown in fig. 14, the present invention provides a sparse data query apparatus, the sparse data query apparatus 100 including:
a first obtaining module 101, configured to obtain an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units and is used for storing primary index values of each number in original sparse data;
a second obtaining module 102, configured to obtain a secondary index table of original sparse data, where the secondary index table includes a plurality of secondary storage units, and is configured to store secondary index values, where the secondary index values are determined based on primary index values in a plurality of primary storage units corresponding to the secondary storage units;
the address query module 103 is configured to determine a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determine a target storage address based on the target primary index value, the primary index table and the secondary index table;
the data query module 104 is configured to obtain target query data corresponding to the index address from a data storage based on the target storage address, where the data storage is configured to store a non-zero number in the original sparse data.
In one embodiment, the address query module 103 includes a primary index determining unit, configured to obtain a storage capacity of a primary storage unit in a primary index table, where the storage capacity represents a number of primary storage bits included in the primary storage unit, and the primary storage bits are used to store a primary index value; determining a target storage unit number and a target storage bit number based on the index address and the storage capacity; determining a target primary storage unit corresponding to the data to be queried from a primary index table based on the number of the target storage unit; and acquiring a first-level index value stored on a first-level storage bit corresponding to the target storage bit number in the target first-level storage unit, and determining the first-level index value as a target first-level index value corresponding to the data to be queried.
In one embodiment, the address query module 103 further includes a storage address determining unit, configured to determine whether the target primary index value is a first identification value, where the first identification value is used to characterize that a number corresponding to the primary index value is a non-zero number; under the condition that the target primary index value is a first identification value, acquiring all primary index values in a target primary storage unit corresponding to the target primary index value from a primary index table to obtain target primary index data; determining that a secondary storage unit with the same number as a target primary storage unit in the secondary index table is a target secondary storage unit corresponding to data to be queried; and determining a target storage address corresponding to the data to be queried based on the target primary index value, the target primary index data and the target secondary index value stored in the target secondary storage unit.
In one embodiment, the storage address determining unit is further configured to generate mask data based on the target primary index value and the target primary index data, and obtain a first non-zero number based on the target primary index data and the mask data; obtaining a second non-zero number based on the target second-level index value, and obtaining a target non-zero number based on the first non-zero number and the second non-zero number; and determining a target storage address of the data to be queried in the data memory based on the target non-zero number.
In one embodiment, the storage address determining unit is further configured to assign 1 to all primary index values located before the target primary index value in the target primary index data and assign 0 to other primary index values, to obtain mask data; inputting the target primary index data and the mask data into an AND logic operator to obtain a logic operation result; and inputting the logic operation result into the adder tree circuit to obtain a first nonzero number.
In one embodiment, the storage address determining unit is further configured to output, when the target primary index value is a second identification value, that the target query data corresponding to the index address is zero, where the second identification value is used to indicate that the number corresponding to the primary index value is zero.
In another aspect, the present invention also provides a computer program product, where the computer program product includes a computer program, where the computer program can be stored on a non-transitory computer readable storage medium, and when the computer program is executed by a processor, the computer can perform a method for querying sparse data provided by the above methods, where the method includes: acquiring an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units and is used for storing primary index values of each number in original sparse data, and the primary index values are used for representing whether the corresponding number is zero or not; acquiring a secondary index table of original sparse data, wherein the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of one-level storage units corresponding to the secondary storage units; determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table; and acquiring target query data corresponding to the index address from a data memory based on the target storage address, wherein the data memory is used for storing non-zero numbers in the original sparse data.
In yet another aspect, the present invention also provides a non-transitory computer readable storage medium having stored thereon a computer program which, when executed by a processor, is implemented to perform a method of querying sparse data provided by the above methods, the method comprising: acquiring an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units and is used for storing primary index values of each number in original sparse data, and the primary index values are used for representing whether the corresponding number is zero or not; acquiring a secondary index table of original sparse data, wherein the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of one-level storage units corresponding to the secondary storage units; determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table; and acquiring target query data corresponding to the index address from a data memory based on the target storage address, wherein the data memory is used for storing non-zero numbers in the original sparse data.
The apparatus embodiments described above are merely illustrative, wherein elements illustrated as separate elements may or may not be physically separate, and elements shown as elements may or may not be physical elements, may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
From the above description of the embodiments, it will be apparent to those skilled in the art that the embodiments may be implemented by means of software plus necessary general hardware platforms, or of course may be implemented by means of hardware. Based on such understanding, the foregoing technical solutions may be embodied essentially or in part in the form of a software product, which may be stored in a computer-readable storage medium, such as a ROM/RAM, a magnetic disk, an optical disk, etc., including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to perform the various embodiments or methods of some parts of the embodiments.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present invention, and are not limiting; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims (10)

1. The query method of the sparse data is characterized by comprising the following steps:
acquiring an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units, wherein the primary storage units are used for storing primary index values of each number in the original sparse data, and the primary index values are used for representing whether the corresponding number is zero or not;
acquiring a secondary index table of the original sparse data, wherein the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of primary storage units corresponding to the secondary storage units;
Determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table;
and acquiring target query data corresponding to the index address from a data memory based on the target storage address, wherein the data memory is used for storing non-zero numbers in the original sparse data.
2. The method for querying sparse data according to claim 1, wherein determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table comprises:
acquiring the storage capacity of a first-stage storage unit in the first-stage index table, wherein the storage capacity represents the number of first-stage storage bits contained in the first-stage storage unit, and the first-stage storage bits are used for storing a first-stage index value;
determining a target storage unit number and a target storage bit number based on the index address and the storage capacity; determining a target primary storage unit corresponding to the data to be queried from the primary index table based on the target storage unit number;
And acquiring a first-level index value stored on a first-level storage bit corresponding to the target storage bit number in the target first-level storage unit, and determining the first-level index value as a target first-level index value corresponding to the data to be queried.
3. The method according to claim 1 or 2, wherein the determining a target storage address based on the target primary index value, the primary index table, and the secondary index table includes:
judging whether the target primary index value is a first identification value or not, wherein the first identification value is used for representing that the number corresponding to the primary index value is a non-zero number;
under the condition that the target primary index value is the first identification value, acquiring all primary index values in a target primary storage unit corresponding to the target primary index value from the primary index table to obtain target primary index data;
determining a secondary storage unit with the same number as the target primary storage unit in the secondary index table as a target secondary storage unit corresponding to the data to be queried;
and determining a target storage address corresponding to the data to be queried based on the target primary index value, the target primary index data and the target secondary index value stored in the target secondary storage unit.
4. The method for querying sparse data according to claim 3, wherein determining the target storage address corresponding to the data to be queried based on the target primary index value, the target primary index data, and the target secondary index value stored in the target secondary storage unit comprises:
generating mask data based on the target primary index value and the target primary index data, and acquiring a first nonzero number based on the target primary index data and the mask data;
obtaining a second non-zero number based on the target secondary index value, and obtaining a target non-zero number based on the first non-zero number and the second non-zero number;
and determining a target storage address of the data to be queried in a data memory based on the target non-zero number.
5. The method of claim 4, wherein generating mask data based on the target primary index value and the target primary index data and obtaining a first non-zero number based on the target primary index data and the mask data comprises:
all primary index values positioned in front of the target primary index value in the target primary index data are assigned to be 1, and other primary index values are assigned to be 0, so that the mask data are obtained;
Inputting the target primary index data and the mask data into an AND logic operator to obtain a logic operation result;
and inputting the logical operation result into an adder tree circuit to obtain the first nonzero number.
6. The method of querying sparse data according to claim 1, further comprising:
and outputting the target query data corresponding to the index address to be zero under the condition that the target primary index value is a second identification value, wherein the second identification value is used for representing that the number corresponding to the primary index value is zero.
7. A sparse data querying device, comprising:
the first acquisition module is used for acquiring an index address of data to be queried and a primary index table of original sparse data corresponding to the data to be queried; the primary index table comprises a plurality of primary storage units and is used for storing primary index values of each number in the original sparse data;
the second acquisition module is used for acquiring a secondary index table of the original sparse data, the secondary index table comprises a plurality of secondary storage units and is used for storing secondary index values, and the secondary index values are determined based on one-level index values in a plurality of one-level storage units corresponding to the secondary storage units;
The address query module is used for determining a target primary index value corresponding to the data to be queried based on the index address and the primary index table, and determining a target storage address based on the target primary index value, the primary index table and the secondary index table;
and the data query module is used for acquiring target query data corresponding to the index address from a data memory based on the target storage address, and the data memory is used for storing non-zero numbers in the original sparse data.
8. A sparse data querying device comprising a controller, the controller comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the sparse data querying method according to any one of claims 1 to 6 when executing the program.
9. A non-transitory computer readable storage medium having stored thereon a computer program, wherein the computer program when executed by a processor implements a sparse data query method according to any of claims 1 to 6.
10. A computer program product comprising a computer program which, when executed by a processor, implements a method of querying sparse data according to any one of claims 1 to 6.
CN202211146454.0A 2022-09-20 2022-09-20 Sparse data query method, apparatus, device and computer readable storage medium Active CN115658730B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211146454.0A CN115658730B (en) 2022-09-20 2022-09-20 Sparse data query method, apparatus, device and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211146454.0A CN115658730B (en) 2022-09-20 2022-09-20 Sparse data query method, apparatus, device and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN115658730A CN115658730A (en) 2023-01-31
CN115658730B true CN115658730B (en) 2024-02-13

Family

ID=84982869

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211146454.0A Active CN115658730B (en) 2022-09-20 2022-09-20 Sparse data query method, apparatus, device and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN115658730B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663090A (en) * 2012-04-10 2012-09-12 华为技术有限公司 Method and device for inquiry metadata
CN104408153A (en) * 2014-12-03 2015-03-11 中国科学院自动化研究所 Short text hash learning method based on multi-granularity topic models
CN105528367A (en) * 2014-09-30 2016-04-27 华东师范大学 A method for storage and near-real time query of time-sensitive data based on open source big data
CN107273483A (en) * 2017-06-06 2017-10-20 贵州易鲸捷信息技术有限公司 The access method and system of sparse data
CN108255958A (en) * 2017-12-21 2018-07-06 百度在线网络技术(北京)有限公司 Data query method, apparatus and storage medium
CN110018983A (en) * 2017-09-27 2019-07-16 华为技术有限公司 A kind of metadata query method and device
CN110929103A (en) * 2019-11-20 2020-03-27 车智互联(北京)科技有限公司 Method for constructing index for data set, data query method and computing equipment
CN114969036A (en) * 2022-05-24 2022-08-30 武汉虹旭信息技术有限责任公司 Data retrieval method and device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7587407B2 (en) * 2006-05-26 2009-09-08 International Business Machines Corporation System and method for creation, representation, and delivery of document corpus entity co-occurrence information
US20080114733A1 (en) * 2006-11-14 2008-05-15 Microsoft Corporation User-structured data table indexing
US8612723B2 (en) * 2008-05-06 2013-12-17 L-3 Communications Integrated Systems, L.P. System and method for storing a sparse matrix

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663090A (en) * 2012-04-10 2012-09-12 华为技术有限公司 Method and device for inquiry metadata
CN105528367A (en) * 2014-09-30 2016-04-27 华东师范大学 A method for storage and near-real time query of time-sensitive data based on open source big data
CN104408153A (en) * 2014-12-03 2015-03-11 中国科学院自动化研究所 Short text hash learning method based on multi-granularity topic models
CN107273483A (en) * 2017-06-06 2017-10-20 贵州易鲸捷信息技术有限公司 The access method and system of sparse data
CN110018983A (en) * 2017-09-27 2019-07-16 华为技术有限公司 A kind of metadata query method and device
CN108255958A (en) * 2017-12-21 2018-07-06 百度在线网络技术(北京)有限公司 Data query method, apparatus and storage medium
CN110929103A (en) * 2019-11-20 2020-03-27 车智互联(北京)科技有限公司 Method for constructing index for data set, data query method and computing equipment
CN114969036A (en) * 2022-05-24 2022-08-30 武汉虹旭信息技术有限责任公司 Data retrieval method and device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"MGTag: a Multi-Dimensional Graph Labeling Scheme for Fast Reachability Queries";S. Zhou 等;《 2018 IEEE 34th International Conference on Data Engineering (ICDE)》;20181231;第1372-1375页 *
"基于多级列式索引的海量数据高效查询设计";杨淙钧 等;《软 件》;20160331;第79-83页 *

Also Published As

Publication number Publication date
CN115658730A (en) 2023-01-31

Similar Documents

Publication Publication Date Title
CN104516921B (en) Automatic reply method and device
CN112181430B (en) Code change statistical method, device, electronic equipment and storage medium
CN102930004B (en) Hash value storage method, device and chip
CN114138231B (en) Method, circuit and SOC for executing matrix multiplication operation
CN112182021B (en) User data query method, device and system
CN115658730B (en) Sparse data query method, apparatus, device and computer readable storage medium
CN112380004B (en) Memory management method, memory management device, computer readable storage medium and electronic equipment
CN111384972A (en) Optimization method and device of multi-system LDPC decoding algorithm and decoder
CN112256691B (en) Data mapping method and device and electronic equipment
CN116186473A (en) Data conversion method, device and storage medium
CN107341113B (en) Cache compression method and device
CN116048868A (en) Code generation method, device, equipment and storage medium
CN111224674B (en) Decoding method, device and decoder for multi-system LDPC code
EP3144817A1 (en) Method and apparatus for multiple accesses in memory and storage system
CN114595486B (en) Zero data identification method and device, readable storage medium and electronic equipment
CN113220456B (en) Bill data processing method and related device
CN105468603A (en) Data selection method and apparatus
CN109165220B (en) Data matching calculation method
CN110096555B (en) Table matching processing method and device for distributed system
CN112395646B (en) Coding generation method, device, equipment and storage medium based on block chain
CN110046159B (en) Bank account storage method and device, computer equipment and storage medium
CN116382571A (en) Data searching method and device and electronic equipment
CN118819635A (en) Character sequence generation method, device, electronic equipment, chip and storage medium
CN113468179A (en) Method, device and equipment for estimating base number of database and storage medium
CN116910017A (en) Database migration method, device, electronic equipment and medium

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