CN109656474B - Data storage method and device, computer equipment and storage medium - Google Patents

Data storage method and device, computer equipment and storage medium Download PDF

Info

Publication number
CN109656474B
CN109656474B CN201811361623.6A CN201811361623A CN109656474B CN 109656474 B CN109656474 B CN 109656474B CN 201811361623 A CN201811361623 A CN 201811361623A CN 109656474 B CN109656474 B CN 109656474B
Authority
CN
China
Prior art keywords
data
data segment
segment
stored
effective
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
CN201811361623.6A
Other languages
Chinese (zh)
Other versions
CN109656474A (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.)
Kingdee Software China Co Ltd
Original Assignee
Kingdee Software China 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 Kingdee Software China Co Ltd filed Critical Kingdee Software China Co Ltd
Priority to CN201811361623.6A priority Critical patent/CN109656474B/en
Publication of CN109656474A publication Critical patent/CN109656474A/en
Application granted granted Critical
Publication of CN109656474B publication Critical patent/CN109656474B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices

Abstract

The application relates to a data storage method, a data storage device, computer equipment and a storage medium. The method comprises the following steps: acquiring a file to be stored comprising a plurality of data segments; sequentially reading each data segment according to the sequence of the data segments in the file to be stored; when the effective data segment part exists in the data segment, counting the data quantity of the effective data segment part; storing effective data segment parts in the data segments, and recording storage offset corresponding to the stored effective data segment parts; generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read; and generating an index file corresponding to the file to be stored according to the generated index segment. When the method is used for storing data, only the effective data segment part in the data segment is stored, so that the storage space is saved.

Description

Data storage method and device, computer equipment and storage medium
Technical Field
The present application relates to the field of data processing technologies, and in particular, to a data storage method and apparatus, a computer device, and a storage medium.
Background
With the development of data processing technology, some data needs to be stored frequently, and bitmap technology has emerged. A large amount of data can be stored in the form of a bitmap by using a bitmap technology, and each bit in the bitmap can represent one piece of data.
However, conventional bitmap techniques store bitmaps corresponding to all data. When a large amount of invalid data exists in the data, the bitmaps corresponding to the large amount of invalid data are still stored, so that a large amount of storage space is occupied, and waste of the storage space is caused.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a data storage method, an apparatus, a computer device and a storage medium capable of saving storage space.
A method of data storage, the method comprising:
acquiring a file to be stored comprising a plurality of data segments;
sequentially reading each data segment according to the sequence of the data segments in the file to be stored;
when the effective data segment part exists in the read data segment, counting the data quantity of the effective data segment part;
storing the effective data segment part in the read data segment, and recording the storage offset corresponding to the stored effective data segment part;
generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read;
and generating an index file corresponding to the file to be stored according to the generated index segment.
A data storage device, characterized in that the device comprises:
the file acquisition module is used for acquiring a file to be stored comprising a plurality of data segments;
the data reading module is used for sequentially reading each data segment according to the sequence of the data segments in the file to be stored;
the quantity counting module is used for counting the data quantity of the effective data segment part when the effective data segment part exists in the read data segment;
the data storage module is used for storing the effective data segment part in the read data segment and recording the storage offset corresponding to the stored effective data segment part;
the index segment generation module is used for generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read;
and the index generation module is used for generating an index file corresponding to the file to be stored according to the generated index segment.
A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the following steps when executing the computer program:
acquiring a file to be stored comprising a plurality of data segments;
sequentially reading each data segment according to the sequence of the data segments in the file to be stored;
when the effective data segment part exists in the read data segment, counting the data quantity of the effective data segment part;
storing the effective data segment part in the read data segment, and recording the storage offset corresponding to the stored effective data segment part;
generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read;
and generating an index file corresponding to the file to be stored according to the generated index segment.
A computer-readable storage medium, on which a computer program is stored which, when executed by a processor, carries out the steps of:
acquiring a file to be stored comprising a plurality of data segments;
sequentially reading each data segment according to the sequence of the data segments in the file to be stored;
when the effective data segment part exists in the read data segment, counting the data quantity of the effective data segment part;
storing the effective data segment part in the read data segment, and recording the storage offset corresponding to the stored effective data segment part;
generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read;
and generating an index file corresponding to the file to be stored according to the generated index segment.
According to the data storage method, the data storage device, the computer equipment and the storage medium, the file to be stored comprising the plurality of data segments is obtained, each data segment is sequentially read according to the sequence of the data segments in the file to be stored, when the valid data segment part exists in the read data segment, the data quantity of the valid data segment part is counted, the identified valid data segment part is stored, the invalid data segment part is not stored, the corresponding index file is generated, the data quantity of the storage is reduced and the data storage space is saved by only storing the valid data segment part.
Drawings
FIG. 1 is a diagram of an exemplary data storage system;
FIG. 2 is a schematic flow chart diagram illustrating a data storage method according to one embodiment;
FIG. 3 is a flow chart illustrating the steps of counting the amount of data in one embodiment;
FIG. 4 is a flowchart illustrating steps for storing portions of valid data segments in one embodiment;
FIG. 5 is a flowchart illustrating the steps of generating index segments in one embodiment;
FIG. 6 is a flow diagram that illustrates the steps of querying data, in one embodiment;
FIG. 7 is a schematic diagram of data storage in one embodiment;
FIG. 8 is a block diagram of a data storage device in one embodiment;
FIG. 9 is a block diagram of a data storage device in another embodiment;
FIG. 10 is a diagram showing an internal structure of a computer device according to an embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
The data storage method provided by the application can be applied to the application environment shown in fig. 1. Wherein the terminal 102 communicates with the server 104 via a network. The terminal 102 may be, but not limited to, various personal computers, notebook computers, smart phones, tablet computers, and portable wearable devices, and the server 104 may be implemented by an independent server or a server cluster formed by a plurality of servers.
In one embodiment, as shown in fig. 2, a data storage method is provided, which is described by taking the application of the method to the server in fig. 1 as an example, and includes the following steps:
step 202, obtaining a file to be stored including a plurality of data segments.
Wherein the file to be stored may be a bitmap which needs to be stored. A data segment is a portion that logically divides a file to be stored into equal lengths. Each data segment contains the same preset number of integer data, and each integer data contains the same preset number of bitmap data.
Specifically, the terminal obtains a file storage instruction triggered by a user and a file to be stored input by the user, and sends the file storage instruction and the file to be stored to the server. And the server receives the file storage instruction and the file to be stored, and prepares to store the received file to be stored.
And step 204, sequentially reading each data segment according to the sequence of the data segments in the file to be stored.
Specifically, the server reads each data segment in sequence according to the arrangement sequence of the data segments in the file to be stored. And when the server reads each data segment, sequentially reading each integer data according to the arrangement sequence of the integer data in the data segment.
And step 206, counting the data quantity of the effective data segment part when the effective data segment part exists in the read data segment.
The effective data segment part is a partial data segment containing at least one effective integer data in the data segment, the first integer data at the head part and the first integer data at the tail part of the effective data segment part are effective integer data, and the effective data segment part does not contain effective integer data. The valid integer data refers to integer data having a value other than 0.
Specifically, the server reads each integer data in sequence according to the arrangement sequence of the integer data in the data segment, and determines that an effective data segment part exists in the data segment when effective integer data is read. The server obtains the position serial number of the first read effective integer data in the file to be stored, marks the position serial number as a first position serial number, obtains the position serial number of the second read effective integer data in the file to be stored when the effective integer data is read again, marks the position serial number as a second position serial number, and updates the numerical value of the second position serial number along with the reading of the effective integer data. And after the server finishes reading one data segment, determining the data quantity of the effective data segment part according to the second position sequence number and the first position sequence number, and determining that the data segment between the effective integer data corresponding to the first position sequence number and the effective integer data corresponding to the second position sequence number is the effective data segment part.
In one embodiment, the server reads only one valid integer in the data segment, and determines the data number of the valid data segment part to be 1.
In one embodiment, the portion of the data segment other than the portion of the valid data segment is a portion of the invalid data segment. The invalid data segment portion may be at least one of a head and a tail of the data segment. The entire data segment may be a valid data segment portion or an invalid data segment portion.
And step 208, storing the effective data segment part in the read data segment, and recording the storage offset corresponding to the stored effective data segment part.
Wherein the storage offset is the number of bytes from the header of the valid data segment portion being stored to the header of the storage file comprised of the valid data segment portion being stored.
Specifically, the server acquires an index segment corresponding to the valid data segment part stored last time, and extracts the data quantity and storage offset of the valid data segment part stored last time from the acquired index segment. And the server calculates the storage offset corresponding to the current effective data segment part according to the extracted data quantity and the storage offset of the effective data segment part. The server determines a stored initial address according to the storage offset corresponding to the current effective data segment part, inquires a storage space according to the initial address, stores the current effective data segment part into the inquired storage space, and records the storage offset corresponding to the stored effective data segment part.
In one embodiment, the server does not obtain the index segment corresponding to the valid data segment part stored last time, obtains a preset storage start address, queries the storage space according to the preset storage start address, stores the determined valid data segment part into the queried storage space, and records the storage offset as 0.
And step 210, generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read.
Wherein, the index segment is a data segment used for recording the data segment data structure of the stored effective data segment part.
Specifically, after the effective data segment part is stored by the server, the index segment corresponding to the stored effective data segment part is generated according to the storage offset corresponding to the effective data segment part and the counted data quantity of the effective data segment part. And after the effective data segment part in one data segment is stored by the server each time, generating an index segment corresponding to the stored effective data segment part until the data segment in the file to be stored is completely read, and obtaining the storage file.
In one embodiment, when the server does not recognize that the valid data segment part exists in the read data segment, the read data segment is not stored, and the corresponding index segment is not generated.
And 212, generating an index file corresponding to the file to be stored according to the generated index segment.
Wherein, the index file is a file composed of all index segments.
Specifically, after the server generates the index segment corresponding to the stored effective data segment portion, the head of the index segment is spliced to the tail of the index segment corresponding to the previously stored effective data segment portion. And after the server finishes reading all the data segments, generating an index file corresponding to the file to be stored.
In the embodiment, the file to be stored comprising a plurality of data segments is obtained, each data segment is sequentially read according to the sequence of the data segments in the file to be stored, when the valid data segment part exists in the read data segment, the data quantity of the valid data segment part is counted, the identified valid data segment part is stored, the invalid data segment part is not stored, a corresponding index file is generated, the data quantity of the storage is reduced by only storing the valid data segment part, and the data storage space is saved.
As shown in fig. 3, in an embodiment, the step 206 further includes a step of counting the amount of data, and the step includes the following steps:
and step 302, sequentially identifying integer data according to the data arrangement sequence in the read data segments.
Specifically, when the server reads each data segment, the numerical values of the integer data in the data segment are sequentially identified according to the arrangement sequence of the integer data in the data segment.
In one embodiment, the bitmap data in the data section is stored in rows, and the same predetermined number of bitmap data constitutes one integer data. The server identifies the value of each reshaped data from the head of the data segment from front to back in the order in which the reshaped data in the data segment are arranged.
And 304, when the identified integer data is valid integer data, acquiring the position serial number of the valid integer data in the file to be stored.
And the position serial number is the arrangement serial number of the effective integer data in the file to be stored.
Specifically, when the server identifies integer data with a numerical value not being 0, the identified integer data is determined to be valid integer data, the server triggers a position sequence number acquisition instruction, and the position sequence number of the identified valid integer data in the file to be stored is acquired according to the position sequence number acquisition instruction.
And step 306, when the identified integer data is the first valid integer data in the read data segment, determining the data quantity of the invalid data segment part in the read data segment according to the acquired position serial number.
The invalid data segment part is a partial data segment containing at least one invalid integer data in the data segment, and the invalid data segment part only contains the invalid integer data.
Specifically, the invalid data segment portion is a header invalid data segment portion in the data segment. And when the integer data identified by the server is the first effective integer data in the read data segment, triggering a position sequence number acquisition instruction, and acquiring the position sequence number of the identified first effective integer data in the file to be stored according to the position sequence number acquisition instruction. And the server calculates the segment number of the read data segment in the file to be stored and the data quantity of the head invalid data segment part in the data segment according to the position serial number of the identified first valid integer data in the file to be stored and the preset quantity numerical value of the integer data in the data segment. The header invalid data segment portion is the portion of the data segment that the server did not valid until the first valid integer data was read.
In an embodiment, after obtaining the position serial number of the identified first effective integer data in the file to be stored, the server calculates a quotient and a remainder of the position serial number of the first effective integer data in the file to be stored and a preset number value of integer data in the data segment, uses the calculated quotient value as a segment number of the read data segment in the file to be stored, and uses the remainder value as a data number of a head invalid data segment part in the data segment.
For example, the predetermined number of integer data in each data segment is 256. The server obtains the position number of the first identified valid integer data in the file to be stored as 4. And the server takes 4 as a divisor and 256 as a dividend, the quotient is calculated to be 0, the remainder is 4, the segment number of the read data segment in the file to be stored is 0, and the data quantity of the head invalid data segment part in the data segment is 4.
And 308, counting the data quantity of the effective data segment part according to the acquired position serial number and the data quantity of the ineffective data segment part.
Specifically, the server performs linear operation on the position serial number of the acquired effective integer data in the file to be stored and the data quantity of the head invalid data segment part in the data segment to obtain the data quantity of the effective data segment part.
For example, the position sequence number acquired by the server is 6, the data quantity of the invalid data segment part of the header is 4, and the data quantity of the valid data segment part in the data segment is 6-4+1 — 3.
In this embodiment, the integer data is sequentially identified according to the data arrangement sequence in the read data segment, when the identified integer data is valid integer data, the position number of the valid integer data in the file to be stored is acquired, when the identified integer data is the first valid integer data in the read data segment, the data quantity of the invalid data segment part in the read data segment is determined according to the acquired position number, the accuracy of acquiring the data quantity of the invalid data segment part is improved, the data quantity of the valid data segment part is counted according to the acquired position number and the data quantity of the invalid data segment part, and the accuracy of acquiring the data quantity of the valid data segment part is improved.
As shown in fig. 4, in an embodiment, the step 208 further includes a step of storing the valid data segment portion, and the step includes the following steps:
step 402, obtaining an index segment corresponding to the valid data segment part stored last time.
Specifically, before storing the valid data segment part in the read data segment, the server queries the index segment corresponding to the valid data segment part stored last time in the index file, and extracts the index segment corresponding to the valid data segment part stored last time.
In step 404, the data quantity and the storage offset corresponding to the valid data segment portion stored last time are extracted from the acquired index segment.
Specifically, after the server acquires the index segment corresponding to the valid data segment part stored last time, the server queries the data quantity and the storage offset corresponding to the recorded valid data segment part in the index segment corresponding to the valid data segment part stored last time, and extracts the data quantity and the storage offset corresponding to the queried valid data segment part stored last time.
And step 406, determining a storage offset corresponding to the current effective data segment part according to the extracted data quantity and the storage offset.
Specifically, after the server extracts the data quantity and the storage offset of the effective data segment part, the storage mode of the effective data segment part stored last time is determined according to the data quantity of the effective data segment part, and the storage offset corresponding to the effective data segment part stored currently is calculated according to the determined storage mode, the data quantity of the effective data segment part and the storage offset.
And step 408, storing the read effective data segment part in the data segment according to the storage offset corresponding to the current effective data segment part, and recording the storage offset corresponding to the stored effective data segment part.
Specifically, the server counts the number of effective integer data in the effective data segment part, and determines the storage mode according to the counted number of the effective integer data. The server determines an initial address when the current effective data segment part is stored according to the storage offset corresponding to the current effective data segment part, inquires a storage space according to the initial address, stores the read effective data segment part in the data segment according to the determined storage mode, and records the storage offset corresponding to the stored effective data segment part.
In one embodiment, when the number of valid integer data in the valid data segment part is less than or equal to a predetermined threshold, the server generates a storage unit of each valid integer data by using a sparse storage mode. The storage unit of the valid integer data includes an intra-segment position number of the valid integer data in the data segment and bitmap data of the valid integer data. The server stores the number of the effective integer data in the effective data segment part and the storage units of each effective integer data in sequence, wherein the storage units of each effective integer data are stored continuously according to the sequence of the position serial numbers in the middle segments of the storage units from small to large. In one memory cell, the position number in the segment is preceded and the bitmap data representing the integer data is followed.
In one embodiment, when the number of valid integer data in the valid data segment part is greater than a predetermined threshold, the server directly stores the valid data segment part in the data segment by using a bitmap storage mode.
In one embodiment, the integer data may be long integer data (long), containing 64 bitmap data. The data segment may contain 256 long integer data and the predetermined threshold may be 128. When the server adopts sparse storage, 1 byte is used for storing the effective integer data quantity in the effective data section part. One storage unit stores using 9 bytes, in which the intra-segment position number is stored using 1 byte, and the bitmap data of the long integer data is stored using 8 bytes. When the server uses the bitmap storage mode, each integer data in the effective data segment part is stored by using 8 bytes.
In this embodiment, an index segment corresponding to an effective data segment portion stored last time is acquired, the data quantity and the storage offset of the effective data segment portion stored last time are extracted from the acquired index segment, the storage offset corresponding to the effective data segment portion stored currently is determined according to the extracted data quantity and the storage offset of the effective data segment portion, the read effective data segment portion in the data segment is stored according to the storage offset corresponding to the effective data segment portion stored currently, and the storage offset corresponding to the stored effective data segment portion is recorded. The storage offset corresponding to the currently stored effective data segment part is determined, so that the effective data segment part can be accurately stored, only the effective data segment part is stored, and the storage space is saved.
As shown in fig. 5, in an embodiment, the step 210 further includes a step of generating an index segment, where the step includes the following steps:
step 502, obtaining the data quantity of the head invalid data segment part read into the data segment.
Specifically, after the server finishes reading one data segment, the server acquires the data quantity of the head invalid data segment part calculated in the process of reading the data segment.
Step 504, generating an index segment corresponding to the stored valid data segment part according to the acquired data number of the head invalid data segment part, the recorded storage offset and the counted data number of the valid data segment part until the data segment in the file to be stored is completely read.
Specifically, the server obtains the segment number of the read data segment in the file to be stored while calculating the data quantity of the head invalid data segment part in the data segment. And the server generates an index segment corresponding to the stored effective data segment part according to the segment number of the read data segment in the file to be stored, the acquired data quantity of the head ineffective data segment part, the recorded storage offset and the counted data quantity of the effective data segment part. And after the effective data segment part in one data segment is stored by the server each time, generating an index segment corresponding to the stored effective data segment part until the data segment in the file to be stored is completely read.
In this embodiment, the data quantity of the header invalid data segment part read into the data segment is acquired, and according to the acquired data quantity of the header invalid data segment part, the recorded storage offset, and the counted data quantity of the valid data segment part, an index segment corresponding to the stored valid data segment part is generated until the data segment in the file to be stored is completely read. After the effective data segment part is stored, the data structure of the data segment to which the stored effective data segment part belongs is recorded through the index segment, and the storage accuracy is guaranteed.
As shown in fig. 6, in an embodiment, the step 212 further includes a step of querying data, where the step includes the following steps:
step 602, a data query instruction is obtained.
The data query instruction is an instruction for querying the integer data in each effective data segment part stored.
Specifically, the server acquires a data query instruction sent by the terminal, and prepares to query specified integer data from each stored effective data segment part according to the data query instruction.
Step 604, determine the segment number corresponding to the position sequence number in the data query instruction.
Specifically, the server analyzes the data query instruction to obtain a position sequence number of the data to be queried in the data query instruction. And the server determines the segment number corresponding to the position serial number in the data query instruction according to the position serial number and the preset quantity numerical value of the integer data in the data segment.
In one embodiment, the server calculates a quotient and a remainder of the position serial number and a preset number value of integer data in the data segment, and takes the calculated quotient value as a corresponding segment number.
Step 606, extracting the index segment corresponding to the segment number from the index file.
Specifically, after determining the segment number corresponding to the position number in the data query instruction, the server triggers an index segment extraction instruction, queries an index segment corresponding to the segment number in the index file according to the index segment extraction instruction, and extracts the index segment corresponding to the queried segment number.
In one embodiment, after triggering the index segment extraction instruction, the server queries the index segment corresponding to the segment number in the index file by using a binary search method, and extracts the index segment corresponding to the queried segment number.
In one embodiment, the server does not inquire the index segment corresponding to the segment number in the index file, and returns a value of 0 to the terminal.
Step 608, detecting whether the data portion corresponding to the position sequence number is an invalid data segment portion according to the queried index segment.
Specifically, after extracting the index segment corresponding to the segment number, the server extracts the data quantity of the head invalid data segment part, the data quantity of the valid data segment part and the storage offset from the index segment. And the server takes the remainder obtained by comparing the position serial number with the preset number value of the integer data in the data segment as the intra-segment position serial number of the data to be inquired in the data segment. When the position sequence number in the segment is smaller than the data quantity numerical value of the invalid data segment part of the head, or the position sequence number in the segment is larger than the sum of the data quantity numerical value of the invalid data segment part of the head and the data quantity numerical value of the valid data segment part, the server determines that the data part corresponding to the position sequence number is the invalid data segment part, and the server returns the numerical value 0 to the terminal. And when the position sequence number in the segment is greater than or equal to the data quantity numerical value of the invalid data segment part of the head and is less than or equal to the sum of the data quantity numerical value of the invalid data segment part of the head and the data quantity numerical value of the valid data segment part, the server determines that the data part corresponding to the position sequence number is the valid data segment part.
And step 610, when the data part corresponding to the position sequence number is not the invalid data segment part, extracting the stored valid data segment part according to the inquired index segment and the position sequence number.
Specifically, when the server determines that the data portion corresponding to the position sequence number is not the invalid data segment portion, the server determines a storage mode of the valid data segment portion according to the data quantity of the valid data segment portion, queries the valid data segment portion from the stored valid data segment portion according to the determined storage mode, the data quantity of the head invalid data segment portion, the data quantity of the valid data segment portion, and the storage offset, and extracts the queried valid data segment portion.
In this embodiment, a data query instruction is obtained, a segment number corresponding to a position number in the data query instruction is determined, an index segment corresponding to the segment number is extracted from an index file, whether a data portion corresponding to the position number is an invalid data segment portion is detected according to the queried index segment, and when the data portion corresponding to the position number is not the invalid data segment portion, a stored valid data segment portion is extracted according to the queried index segment and the position number. When data query is carried out, data can be rapidly and accurately queried through the information recorded in the index file and the index segment, and the efficiency of data query is improved.
FIG. 7 is a schematic diagram of data storage in one embodiment. Referring to fig. 7, the server sequentially reads data segments 0, 1, 2, 3, 4, and 5 … according to the sequence of the data segments in the file to be stored, where there is no valid data segment portion in data segment 0 and data segment 3, and the server does not store data segment 0 and data segment 3 and does not generate a corresponding index segment. Valid data segment portions exist in the data segments 1, 2, 4 and 5, and invalid data segment portions of the data segments 1, 2, 4 and 5 may be at the head of the data segments or at the tail of the data segments. The server obtains the segment number of the data segment in the file to be stored, counts the data quantity of the head invalid data segment part and the data quantity of the effective data segment part in the data segment, and calculates the storage offset of the effective data segment part in the data segment. The server stores the effective data segment parts in the data segments 1, 2, 4 and 5 with the effective data segment parts, and generates the index segments corresponding to the stored effective data segment parts according to the segment number of each data segment, the data quantity of the head ineffective data segment part, the data quantity of the effective data segment part and the storage offset. And after the server reads the data segment, generating an index file corresponding to the file to be stored according to the generated index segment.
It should be understood that although the various steps in the flow charts of fig. 2-6 are shown in order as indicated by the arrows, the steps are not necessarily performed in order as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least some of the steps in fig. 2-6 may include multiple sub-steps or multiple stages that are not necessarily performed at the same time, but may be performed at different times, and the order of performance of the sub-steps or stages is not necessarily sequential, but may be performed in turn or alternating with other steps or at least some of the sub-steps or stages of other steps.
In one embodiment, as shown in FIG. 8, there is provided a data storage device 800 comprising: a file obtaining module 802, a data reading module 804, a quantity counting module 806, a data storage module 808, an index segment generating module 810 and an index generating module 812, wherein:
a file obtaining module 802, configured to obtain a file to be stored, where the file includes a plurality of data segments.
The data reading module 804 is configured to sequentially read each data segment according to the sequence of the data segments in the file to be stored.
And a quantity counting module 806, configured to count a data quantity of the valid data segment portion when the valid data segment portion is identified to exist in the read data segment.
And the data storage module 808 is configured to store the valid data segment part in the read data segment, and record a storage offset corresponding to the stored valid data segment part.
And the index segment generating module 810 is configured to generate an index segment corresponding to the stored valid data segment portion according to the recorded storage offset and the counted data number of the valid data segment portion until the data segment in the file to be stored is completely read.
And an index generating module 812, configured to generate an index file corresponding to the file to be stored according to the generated index segment.
In the embodiment, the file to be stored comprising a plurality of data segments is obtained, each data segment is sequentially read according to the sequence of the data segments in the file to be stored, when the valid data segment part exists in the read data segment, the data quantity of the valid data segment part is counted, the identified valid data segment part is stored, the invalid data segment part is not stored, a corresponding index file is generated, the data quantity of the storage is reduced by only storing the valid data segment part, and the data storage space is saved.
In one embodiment, the quantity statistics module 806 includes: data identification module, serial number acquisition module, invalid confirm module and effective statistical module, wherein:
and the data identification module is used for sequentially identifying the integer data according to the data arrangement sequence in the read data segments.
And the sequence number acquisition module is used for acquiring the position sequence number of the effective integer data in the file to be stored when the identified integer data is the effective integer data.
And the invalid determining module is used for determining the data quantity of the invalid data segment part in the read data segment according to the acquired position serial number when the identified integer data is the first valid integer data in the read data segment.
And the effective counting module is used for counting the data quantity of the effective data segment part according to the acquired position serial number and the data quantity of the invalid data segment part.
In this embodiment, the integer data is sequentially identified according to the data arrangement sequence in the read data segment, when the identified integer data is valid integer data, the position number of the valid integer data in the file to be stored is acquired, when the identified integer data is the first valid integer data in the read data segment, the data quantity of the invalid data segment part in the read data segment is determined according to the acquired position number, the accuracy of acquiring the data quantity of the invalid data segment part is improved, the data quantity of the valid data segment part is counted according to the acquired position number and the data quantity of the invalid data segment part, and the accuracy of acquiring the data quantity of the valid data segment part is improved.
In one embodiment, the data storage module 808 includes: the device comprises an index segment acquisition module, an extraction module, an offset determination module and an effective storage module, wherein:
and the index segment acquisition module is used for acquiring the index segment corresponding to the effective data segment part stored last time.
And the extraction module is used for extracting the data quantity and the storage offset corresponding to the effective data segment part stored last time from the acquired index segment.
And the offset determining module is used for determining the storage offset corresponding to the current effective data segment part according to the extracted data quantity and the storage offset.
And the effective storage module is used for storing the read effective data segment part in the data segment according to the storage offset corresponding to the current effective data segment part and recording the storage offset corresponding to the stored effective data segment part.
In this embodiment, an index segment corresponding to an effective data segment portion stored last time is acquired, the data quantity and the storage offset of the effective data segment portion stored last time are extracted from the acquired index segment, the storage offset corresponding to the effective data segment portion stored currently is determined according to the extracted data quantity and the storage offset of the effective data segment portion, the read effective data segment portion in the data segment is stored according to the storage offset corresponding to the effective data segment portion stored currently, and the storage offset corresponding to the stored effective data segment portion is recorded. The storage offset corresponding to the currently stored effective data segment part is determined, so that the effective data segment part can be accurately stored, only the effective data segment part is stored, and the storage space is saved.
In one embodiment, the index segment generation module 810 is further configured to obtain the amount of data read to the invalid data segment portion of the header in the data segment; and generating an index segment corresponding to the stored effective data segment part according to the acquired data quantity of the head invalid data segment part, the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is completely read.
In this embodiment, the data quantity of the header invalid data segment part read into the data segment is acquired, and according to the acquired data quantity of the header invalid data segment part, the recorded storage offset, and the counted data quantity of the valid data segment part, an index segment corresponding to the stored valid data segment part is generated until the data segment in the file to be stored is completely read. After the effective data segment part is stored, the data structure of the data segment to which the stored effective data segment part belongs is recorded through the index segment, and the storage accuracy is guaranteed.
As shown in fig. 9, in one embodiment, data storage device 800 further comprises an instruction fetch module 814, a number determination module 816, an index extraction module 818, a data detection module 820, and a data extraction module 822, wherein:
and an instruction obtaining module 814, configured to obtain the data query instruction.
The number determining module 816 is configured to determine a segment number corresponding to the position sequence number in the data query instruction.
An index extracting module 818, configured to extract an index segment corresponding to the segment number from the index file.
And a data detection module 820, configured to detect whether the data portion corresponding to the position sequence number is an invalid data segment portion according to the queried index segment.
And the data extraction module 822 is configured to extract the stored valid data segment part according to the queried index segment and location sequence number when the data part corresponding to the location sequence number is not the invalid data segment part.
In this embodiment, a data query instruction is obtained, a segment number corresponding to a position number in the data query instruction is determined, an index segment corresponding to the segment number is extracted from an index file, whether a data portion corresponding to the position number is an invalid data segment portion is detected according to the queried index segment, and when the data portion corresponding to the position number is not the invalid data segment portion, a stored valid data segment portion is extracted according to the queried index segment and the position number. When data query is carried out, data can be rapidly and accurately queried through the information recorded in the index file and the index segment, and the efficiency of data query is improved.
For specific limitations of the data storage device, reference may be made to the above limitations of the data storage method, which are not described herein again. The various modules in the data storage device described above may be implemented in whole or in part by software, hardware, and combinations thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as shown in fig. 10. The computer device includes a processor, a memory, a network interface, and a database connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The database of the computer device is used for storing the effective data segment part of each data segment and the index file. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a data storage method.
Those skilled in the art will appreciate that the architecture shown in fig. 10 is merely a block diagram of some of the structures associated with the disclosed aspects and is not intended to limit the computing devices to which the disclosed aspects apply, as particular computing devices may include more or less components than those shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the following steps when executing the computer program: acquiring a file to be stored comprising a plurality of data segments; sequentially reading each data segment according to the sequence of the data segments in the file to be stored; when the effective data segment part exists in the read data segment, counting the data quantity of the effective data segment part; storing the read effective data segment part in the data segment, and recording the storage offset corresponding to the stored effective data segment part; generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read; and generating an index file corresponding to the file to be stored according to the generated index segment.
In one embodiment, when it is recognized that there is a valid data segment portion in the read data segment, counting the data amount of the valid data segment portion includes: sequentially identifying integer data according to the read data arrangement sequence in the data segment; when the identified integer data is effective integer data, acquiring a position serial number of the effective integer data in a file to be stored; when the identified integer data is the first effective integer data in the read data segment, determining the data quantity of an ineffective data segment part in the read data segment according to the acquired position serial number; and counting the data quantity of the effective data segment part according to the acquired position serial number and the data quantity of the ineffective data segment part.
In one embodiment, storing the valid data segment portion of the read data segment, and recording the storage offset corresponding to the stored valid data segment portion comprises: acquiring an index segment corresponding to the effective data segment part stored last time; extracting the data quantity and the storage offset corresponding to the effective data segment part stored last time from the obtained index segment; determining the storage offset corresponding to the current effective data segment part according to the extracted data quantity and the storage offset; and storing the read effective data segment part in the data segment according to the storage offset corresponding to the current effective data segment part, and recording the storage offset corresponding to the stored effective data segment part.
In one embodiment, generating an index segment corresponding to the stored valid data segment portion according to the recorded storage offset and the counted data number of the valid data segment portion until the data segment in the file to be stored is read includes: acquiring the data quantity of the head invalid data segment read in the data segment; and generating an index segment corresponding to the stored effective data segment part according to the acquired data quantity of the head invalid data segment, the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is completely read.
In one embodiment, after generating the index file corresponding to the file to be stored according to the generated index segment, the processor executes the computer program to further implement the following steps: acquiring a data query instruction; determining a segment number corresponding to the position sequence number in the data query instruction; extracting an index segment corresponding to the segment number from the index file; detecting whether the data part corresponding to the position sequence number is an invalid data segment part or not according to the inquired index segment; and when the data part corresponding to the position sequence number is not the invalid data segment part, extracting the stored valid data segment part according to the inquired index segment and the position sequence number.
In the embodiment, the file to be stored comprising a plurality of data segments is obtained, each data segment is sequentially read according to the sequence of the data segments in the file to be stored, when the valid data segment part exists in the read data segment, the data quantity of the valid data segment part is counted, the identified valid data segment part is stored, the invalid data segment part is not stored, a corresponding index file is generated, the data quantity of the storage is reduced by only storing the valid data segment part, and the data storage space is saved.
In one embodiment, a computer-readable storage medium is provided, having a computer program stored thereon, which when executed by a processor, performs the steps of: acquiring a file to be stored comprising a plurality of data segments; sequentially reading each data segment according to the sequence of the data segments in the file to be stored; when the effective data segment part exists in the read data segment, counting the data quantity of the effective data segment part; storing the read effective data segment part in the data segment, and recording the storage offset corresponding to the stored effective data segment part; generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read; and generating an index file corresponding to the file to be stored according to the generated index segment.
In one embodiment, when it is recognized that there is a valid data segment portion in the read data segment, counting the data amount of the valid data segment portion includes: sequentially identifying integer data according to the read data arrangement sequence in the data segment; when the identified integer data is effective integer data, acquiring a position serial number of the effective integer data in a file to be stored; when the identified integer data is the first effective integer data in the read data segment, determining the data quantity of an ineffective data segment part in the read data segment according to the acquired position serial number; and counting the data quantity of the effective data segment part according to the acquired position serial number and the data quantity of the ineffective data segment part.
In one embodiment, storing the valid data segment portion of the read data segment, and recording the storage offset corresponding to the stored valid data segment portion comprises: acquiring an index segment corresponding to the effective data segment part stored last time; extracting the data quantity and the storage offset corresponding to the effective data segment part stored last time from the obtained index segment; determining the storage offset corresponding to the current effective data segment part according to the extracted data quantity and the storage offset; and storing the read effective data segment part in the data segment according to the storage offset corresponding to the current effective data segment part, and recording the storage offset corresponding to the stored effective data segment part.
In one embodiment, generating an index segment corresponding to the stored valid data segment portion according to the recorded storage offset and the counted data number of the valid data segment portion until the data segment in the file to be stored is read includes: acquiring the data quantity of the head invalid data segment part read in the data segment; and generating an index segment corresponding to the stored effective data segment part according to the acquired data quantity of the head invalid data segment part, the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is completely read.
In one embodiment, after generating the index file corresponding to the file to be stored according to the generated index segment, the computer program when executed by the processor further implements the following steps: acquiring a data query instruction; determining a segment number corresponding to the position sequence number in the data query instruction; extracting an index segment corresponding to the segment number from the index file; detecting whether the data part corresponding to the position sequence number is an invalid data segment part or not according to the inquired index segment; and when the data part corresponding to the position sequence number is not the invalid data segment part, extracting the stored valid data segment part according to the inquired index segment and the position sequence number.
In the embodiment, the file to be stored comprising a plurality of data segments is obtained, each data segment is sequentially read according to the sequence of the data segments in the file to be stored, when the valid data segment part exists in the read data segment, the data quantity of the valid data segment part is counted, the identified valid data segment part is stored, the invalid data segment part is not stored, a corresponding index file is generated, the data quantity of the storage is reduced by only storing the valid data segment part, and the data storage space is saved.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in the embodiments provided herein may include non-volatile and/or volatile memory, among others. Non-volatile memory can include read-only memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDRSDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus Direct RAM (RDRAM), direct bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. A method of data storage, the method comprising:
acquiring a file to be stored comprising a plurality of data segments;
sequentially reading each data segment according to the sequence of the data segments in the file to be stored; the data segment comprises a plurality of integer data; wherein; the way of reading any data segment is: sequentially reading the plurality of integer data in the data segment according to the arrangement sequence of the integer data in the data segment;
when effective integer data are read, determining that an effective data segment part exists in a data segment corresponding to the effective integer data;
when the effective data segment part exists in the read data segment, counting the data quantity of the effective data segment part;
storing the effective data segment part in the read data segment, and recording the storage offset corresponding to the stored effective data segment part;
generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read;
and generating an index file corresponding to the file to be stored according to the generated index segment.
2. The method according to claim 1, wherein when it is identified that a valid data segment portion exists in the read data segment, counting the data amount of the valid data segment portion comprises:
when the effective data segment part exists in the read data segment, acquiring a position serial number of the effective integer data in the file to be stored;
when the identified integer data is the first effective integer data in the read data segment, determining the data quantity of an invalid data segment part in the read data segment according to the acquired position serial number;
and counting the data quantity of the effective data segment part according to the acquired position serial number and the data quantity of the ineffective data segment part.
3. The method according to claim 1, wherein the storing the valid data segment portion of the read data segment, and recording the storage offset corresponding to the stored valid data segment portion comprises:
acquiring an index segment corresponding to the effective data segment part stored last time;
extracting the data quantity and the storage offset corresponding to the effective data segment part stored last time from the obtained index segment;
determining the storage offset corresponding to the current effective data segment part according to the extracted data quantity and the storage offset;
and storing the effective data segment part in the read data segment according to the storage offset corresponding to the current effective data segment part, and recording the storage offset corresponding to the stored effective data segment part.
4. The method according to claim 1, wherein the generating an index segment corresponding to the stored valid data segment portion according to the recorded storage offset and the counted data quantity of the valid data segment portion until the data segment in the file to be stored is read comprises:
acquiring the data quantity of the head invalid data segment part in the read data segment;
and generating an index segment corresponding to the stored effective data segment part according to the acquired data quantity of the head invalid data segment part, the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is completely read.
5. The method according to claim 1, wherein after generating the index file corresponding to the file to be stored according to the generated index segment, the method further comprises:
acquiring a data query instruction;
determining a segment number corresponding to the position sequence number in the data query instruction;
extracting an index segment corresponding to the segment number from the index file;
detecting whether the data part corresponding to the position sequence number is an invalid data segment part or not according to the inquired index segment;
and when the data part corresponding to the position sequence number is not the invalid data segment part, extracting the stored valid data segment part according to the inquired index segment and the position sequence number.
6. A data storage device, characterized in that the device comprises:
the file acquisition module is used for acquiring a file to be stored comprising a plurality of data segments;
the data reading module is used for sequentially reading each data segment according to the sequence of the data segments in the file to be stored; the data segment comprises a plurality of integer data; wherein; the way of reading any data segment is: sequentially reading the plurality of integer data in the data segment according to the arrangement sequence of the integer data in the data segment;
the device comprises a determining module, a judging module and a judging module, wherein the determining module is used for determining that an effective data segment part exists in a data segment corresponding to effective integer data when the effective integer data is read;
the quantity counting module is used for counting the data quantity of the effective data segment part when the effective data segment part exists in the read data segment;
the data storage module is used for storing the effective data segment part in the read data segment and recording the storage offset corresponding to the stored effective data segment part;
the index segment generation module is used for generating an index segment corresponding to the stored effective data segment part according to the recorded storage offset and the counted data quantity of the effective data segment part until the data segment in the file to be stored is read;
and the index generation module is used for generating an index file corresponding to the file to be stored according to the generated index segment.
7. The apparatus of claim 6, wherein the quantity statistics module comprises:
a sequence number obtaining module, configured to obtain a position sequence number of the valid integer data in the file to be stored when it is identified that a valid data segment portion exists in the read data segment;
an invalid determining module, configured to determine, according to the obtained position sequence number, a data quantity of an invalid data segment part in the read data segment when the identified integer data is a first valid integer data in the read data segment;
and the effective counting module is used for counting the data quantity of the effective data segment part according to the acquired position serial number and the data quantity of the invalid data segment part.
8. The apparatus of claim 6, wherein the data storage module comprises:
the index segment acquisition module is used for acquiring an index segment corresponding to the effective data segment part stored last time;
the extraction module is used for extracting the data quantity and the storage offset corresponding to the effective data segment part stored last time from the obtained index segment;
the offset determining module is used for determining the storage offset corresponding to the current effective data segment part according to the extracted data quantity and the storage offset;
and the effective storage module is used for storing the read effective data segment part in the data segment according to the storage offset corresponding to the current effective data segment part and recording the storage offset corresponding to the stored effective data segment part.
9. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the steps of the method of any of claims 1 to 5 are implemented when the computer program is executed by the processor.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 5.
CN201811361623.6A 2018-11-15 2018-11-15 Data storage method and device, computer equipment and storage medium Active CN109656474B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811361623.6A CN109656474B (en) 2018-11-15 2018-11-15 Data storage method and device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811361623.6A CN109656474B (en) 2018-11-15 2018-11-15 Data storage method and device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN109656474A CN109656474A (en) 2019-04-19
CN109656474B true CN109656474B (en) 2022-02-15

Family

ID=66111238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811361623.6A Active CN109656474B (en) 2018-11-15 2018-11-15 Data storage method and device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN109656474B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110262752B (en) * 2019-05-16 2020-08-11 罗普特科技集团股份有限公司 Method, device and storage medium for storing streaming media data
CN110297836B (en) * 2019-07-11 2021-07-20 杭州云梯科技有限公司 User label storage method and retrieval method based on compressed bitmap mode
CN112632077A (en) * 2020-12-28 2021-04-09 深圳壹账通智能科技有限公司 Data storage method, device, equipment and storage medium based on redis

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102084332A (en) * 2008-04-06 2011-06-01 弗森-艾奥公司 Apparatus, system, and method for converting a storage request into an append data storage command
CN103995887A (en) * 2014-05-30 2014-08-20 上海达梦数据库有限公司 Bitmap index compressing method and bitmap index decompressing method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298680B (en) * 2013-07-18 2019-01-11 腾讯科技(深圳)有限公司 Data statistical approach and data statistics device
US9934247B2 (en) * 2014-06-18 2018-04-03 International Business Machines Corporation Built-in search indexing for NAS systems
CN107015985B (en) * 2016-01-27 2021-03-30 创新先进技术有限公司 Data storage and acquisition method and device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102084332A (en) * 2008-04-06 2011-06-01 弗森-艾奥公司 Apparatus, system, and method for converting a storage request into an append data storage command
CN103995887A (en) * 2014-05-30 2014-08-20 上海达梦数据库有限公司 Bitmap index compressing method and bitmap index decompressing method

Also Published As

Publication number Publication date
CN109656474A (en) 2019-04-19

Similar Documents

Publication Publication Date Title
CN108377240B (en) Abnormal interface detection method and device, computer equipment and storage medium
CN109656474B (en) Data storage method and device, computer equipment and storage medium
CN109597571B (en) Data storage method, data reading method, data storage device, data reading device and computer equipment
CN108491450B (en) Data caching method, device, server and storage medium
CN109902272B (en) Electronic form data processing method, electronic form data processing device, computer equipment and storage medium
DK3059679T3 (en) CONTROL UNIT, FLASH MEMORY UNIT, PROCEDURE FOR IDENTIFICATION OF DATA BLOCK STABILITY, AND PROCEDURE FOR STORING DATA ON THE FLASH MEMORY UNIT
CN108924258B (en) Background information pushing method and device, computer equipment and storage medium
CN110245028B (en) Message storage method, device, computer equipment and storage medium of IoT-MQ
CN110659298A (en) Financial data processing method and device, computer equipment and storage medium
CN108306878A (en) Detection method for phishing site, device, computer equipment and storage medium
CN110555165B (en) Information identification method and device, computer equipment and storage medium
CN114139015A (en) Video storage method, device, equipment and medium based on key event identification
CN111723097A (en) Application program interface configuration method and device, computer equipment and storage medium
CN111046240B (en) Gateway traffic statistics method, device, computer equipment and storage medium
CN111147778B (en) Track recording method and device based on digital video recorder and storage medium
CN113032621A (en) Data sampling method and device, computer equipment and storage medium
CN109614399B (en) Bitmap data query method and device, computer equipment and storage medium
CN111913913A (en) Access request processing method and device
CN109271383B (en) Dynamic label processing method and device, computer equipment and storage medium
CN113157212B (en) Flash storage method and device, intelligent wearable device and storage medium
CN109284260B (en) Big data file reading method and device, computer equipment and storage medium
CN109471717A (en) Sample database method for splitting, device, computer equipment and storage medium
CN109656948B (en) Bitmap data processing method and device, computer equipment and storage medium
CN112463791A (en) Nuclear power station document data acquisition method and device, computer equipment and storage medium
CN112732819A (en) ETL-based data processing method, device, equipment and storage 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