CN111427511B - Data storage method and device - Google Patents

Data storage method and device Download PDF

Info

Publication number
CN111427511B
CN111427511B CN202010163595.8A CN202010163595A CN111427511B CN 111427511 B CN111427511 B CN 111427511B CN 202010163595 A CN202010163595 A CN 202010163595A CN 111427511 B CN111427511 B CN 111427511B
Authority
CN
China
Prior art keywords
data
page
attribute
data packet
packet
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
CN202010163595.8A
Other languages
Chinese (zh)
Other versions
CN111427511A (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.)
Qingdao Xiaoniao Kankan Technology Co Ltd
Original Assignee
Qingdao Xiaoniao Kankan Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Xiaoniao Kankan Technology Co Ltd filed Critical Qingdao Xiaoniao Kankan Technology Co Ltd
Priority to CN202010163595.8A priority Critical patent/CN111427511B/en
Publication of CN111427511A publication Critical patent/CN111427511A/en
Application granted granted Critical
Publication of CN111427511B publication Critical patent/CN111427511B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • 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/061Improving I/O performance
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a data storage method and a data storage device, which are applied to the data storage device, wherein the data storage device is provided with a data storage space comprising a plurality of pages, the pages comprise at least one data page, and the data storage method comprises the following steps: receiving a data updating instruction; searching the data packets needing to be updated in the data packets with the effective attributes of the data pages according to the data updating instruction; setting the attribute of the searched data packet needing to be updated as invalid; according to the data update instruction, a new data packet with the attribute of 'valid' is created in the data page.

Description

Data storage method and device
Technical Field
The present invention relates to the field of data processing technology, and more particularly, to a data storage method and a data storage device.
Background
A single-chip microcomputer plays an important role in various controllers as a low-cost, small-volume and programmable microcontroller.
The read-only memory integrated in the singlechip is generally a Nor Flash (non-volatile Flash memory) memory. However, the Nor Flash memory must be erased for data before a write operation can be performed. And, the Nor Flash memory erases data in data blocks or data pages. When the writing operation is repeatedly performed, data erasure is required to be repeatedly performed, and a large amount of time is required to be consumed in the data erasure process, so that the data writing speed is affected.
Therefore, it is necessary to provide a new data storage scheme.
Disclosure of Invention
The invention aims to provide a new technical scheme for data storage.
According to a first aspect of the present invention there is provided a data storage method, the data storage device being provided with a data storage space comprising a plurality of pages, the plurality of pages comprising at least one data page, the method comprising:
receiving a data updating instruction;
searching a data packet needing to be updated in a data packet with the effective attribute of a data page according to the data updating instruction;
setting the attribute of the searched data packet needing to be updated as invalid;
and creating a new data packet with the attribute of being valid in the data page according to the data updating instruction.
Optionally, the plurality of pages further includes a data sorting page, the page is provided with page attribute information, the page attribute information is used for distinguishing the data page from the data sorting page, and the method further includes:
judging whether a data packet with invalid attribute exists in the current data page under the condition that the preset data arrangement condition is met;
if a data packet with the attribute of invalid exists in the current data page, performing a data sorting operation on the current data page:
The data sort operation includes:
copying the data packet with the attribute of effective in the current data page into a data sorting page, and changing page attribute information of the data sorting page so as to convert the data sorting page into a new data page; the method comprises the steps of,
the current data page is emptied and the page attribute information of the current data page is changed so that the current data page is converted into a new data sort page.
Optionally, the preset data arrangement condition is any one or any combination of the following:
the residual space of at least one data page is smaller than or equal to a preset space threshold value;
the use time of the data storage device reaches a preset time threshold.
Optionally, the method further comprises:
receiving a data creation instruction;
according to the data creation instruction, a new data packet with the attribute of being valid is created in the data page.
Optionally, the method further comprises:
receiving a data deleting instruction;
searching the data packets needing to be deleted from the data packets with the effective attributes of the data pages according to the data deleting instruction;
and setting the attribute of the searched data packet needing to be deleted as invalid.
Optionally, the method further comprises:
receiving a data reading instruction;
According to the data reading instruction, searching the data packet to be read from the data packets with the data page attribute of effective;
acquiring a check value from the searched data packet to be read;
checking the data packet to be read by using the check value;
and copying the data packet to be read to a target address according to the data reading instruction under the condition that the verification result is that the verification is passed.
Optionally, before creating a new data packet with a "valid" attribute in the data page according to the data update instruction, the method further includes:
judging whether the residual space of the data page is larger than the space occupied by a new data packet to be created;
if the remaining space of the data page is larger than the space occupied by the new data packet to be created, creating a new data packet with the attribute of 'effective' in the data page according to the data updating instruction;
and if the residual space of the data page is not larger than the space occupied by the new data packet to be created, executing data sorting operation on the data page.
Optionally, the method is implemented in a single chip microcomputer provided with a nonvolatile flash memory.
According to a second aspect of the present invention, there is provided a data storage device provided with a data storage space comprising a plurality of pages, the plurality of pages comprising at least one data page, the data storage device further comprising:
the receiving module is used for receiving the data updating instruction;
the searching module is used for searching the data packet needing to be updated in the data packet with the effective attribute of the data page according to the data updating instruction;
the attribute setting module is used for setting the attribute of the searched data packet needing to be updated as invalid;
and the updating module is used for creating a new data packet with the attribute of 'valid' in the data page according to the data updating instruction.
Optionally, the plurality of pages further includes a data sorting page, the page is provided with page attribute information, the page attribute information is used for distinguishing the data page from the data sorting page, and the data storage device further includes:
the data packet attribute judging module is used for judging whether a data packet with invalid attribute exists in the current data page or not under the condition that the preset data arrangement condition is met;
the sorting module is used for executing data sorting operation on the current data page if the data packet with the attribute of invalid exists in the current data page:
The data sort operation includes:
copying the data packet with the attribute of effective in the current data page into a data sorting page, and changing page attribute information of the data sorting page so as to convert the data sorting page into a new data page; the method comprises the steps of,
the current data page is emptied and the page attribute information of the current data page is changed so that the current data page is converted into a new data sort page.
Optionally, the data storage device is a single chip microcomputer provided with a nonvolatile flash memory.
According to a third aspect of the present disclosure, there is provided a data storage device comprising:
a memory for storing computer instructions;
a processor for calling said computer instructions from said memory and executing a data storage method according to any of the first aspects of the invention under control of said computer instructions.
The method has the advantages that the attribute of the data packet is changed into invalid by changing the attribute of the data packet, so that the data packet to be updated is prevented from being erased each time when the data is updated, and the data which does not need to be updated is prevented from being written again due to the fact that the memory is erased in a data block or data page mode, and therefore the data writing speed is improved. In addition, in the data sorting process, the data packets which need to be updated after the attribute is changed can be directly cleared in a data page mode, so that the data processing speed is further improved.
Other features of the present invention and its advantages will become apparent from the following detailed description of exemplary embodiments of the invention, which proceeds with reference to the accompanying drawings.
Drawings
In order to more clearly illustrate the technical solution of the embodiments of the present invention, the drawings that are required to be used in the embodiments will be briefly described. It is appreciated that the following drawings depict only certain embodiments of the invention and are therefore not to be considered limiting of its scope. Other relevant drawings may be made by those of ordinary skill in the art without undue burden from these drawings.
FIG. 1 shows a flow diagram of a data storage method of one embodiment of the present description;
FIG. 2 is a flow chart of a data update process in a data storage method according to one embodiment of the present disclosure;
FIG. 3 illustrates a flow diagram of a data storage method of one embodiment of the present description;
FIG. 4 is a flow diagram of a data sort operation in a data storage method according to one embodiment of the present disclosure;
FIG. 5 is a flow diagram of a data creation process in a data storage method according to one embodiment of the present disclosure;
FIG. 6 is a flow chart of a data deletion process in a data storage method according to one embodiment of the present disclosure;
FIG. 7 is a flow chart of a data reading process in a data storage method according to one embodiment of the present disclosure;
FIG. 8 is a block diagram illustrating the structure of a data storage device according to one embodiment of the present disclosure;
fig. 9 is a block diagram showing the structure of a data storage device according to an embodiment of the present specification.
Detailed Description
Various exemplary embodiments of the present invention will now be described in detail with reference to the accompanying drawings. It should be noted that: the relative arrangement of the components and steps, numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present invention unless it is specifically stated otherwise.
The following description of at least one exemplary embodiment is merely exemplary in nature and is in no way intended to limit the invention, its application, or uses.
Techniques, methods, and apparatus known to one of ordinary skill in the relevant art may not be discussed in detail, but are intended to be part of the specification where appropriate.
In all examples shown and discussed herein, any specific values should be construed as merely illustrative, and not a limitation. Thus, other examples of exemplary embodiments may have different values.
It should be noted that: like reference numerals and letters denote like items in the following figures, and thus once an item is defined in one figure, no further discussion thereof is necessary in subsequent figures.
Currently, in the prior art, a singlechip is used as a controller when information interaction is performed between a head-mounted display device and a handle device, and interaction information needs to be stored in the communication process of the head-mounted display device and the handle. The interaction information may be, for example, public key information of the wireless communication, bluetooth address, special identification, etc. And the nonvolatile memory integrated in the singlechip is generally a Nor Flash memory. However, the Nor Flash memory must be erased for data before a write operation can be performed. And, the Nor Flash memory erases data in data blocks or data pages. When the writing operation is repeatedly performed, data erasure is required to be repeatedly performed, and a large amount of time is required to be consumed in the data erasure process, so that the data writing speed is affected.
Communication of the head mounted display device and the handle based on the aforementioned prior art is likely to cause the following problems. On the one hand, because the data writing speed of the Nor Flash memory is too slow, in the interaction process, under the condition that the current data packet is not written yet, the erasing operation is performed due to the occurrence of a new data packet needing to be updated, so that the problem that the whole page of data is lost easily and the equipment is abnormal is caused. On the other hand, because the Nor Flash memory must erase data before performing a write operation, a risk of sudden power failure due to the fact that the data erase operation is just performed occurs when a data packet is written, so that the whole data is easily lost, and the device is abnormal. In addition, because the information interaction between the head-mounted display device and the handle is frequently changed, the number of times of writing is more, and any one data operation can be written again only after the whole page of data is erased, so that the Nor Flash is disabled after the erasing service life is reached, the stability of the device is extremely poor, and the device can be recovered only by replacing the singlechip, thereby being unfavorable for mass production of products.
< data storage method >
Fig. 1 is a schematic diagram of a data storage method according to an embodiment of the present disclosure. The data storage method provided in this embodiment is implemented by computer technology and may be implemented by a data storage device.
The data storage device is provided with a data storage space comprising a plurality of pages, the plurality of pages comprising at least one data page. The data storage device may be, for example, a single chip microcomputer using Nor Flash (non-volatile Flash memory technology) as a memory.
As shown in fig. 1, the data storage method provided in this embodiment includes steps S1100-S1400.
In step S1100, a data update instruction is received.
In the embodiment of the present disclosure, the data update instruction is configured to trigger the data storage device to update the data packet stored in the data storage device. The data update instruction may be issued by a slave device in communication with a master device provided with data storage means. For example, the master device provided with the data storage device may be a head-mounted display device, the slave device may be a handle, and when the handle paired with the head-mounted display device is replaced, the head-mounted display device receives a data update instruction sent by the handle, and updates the bluetooth address stored in the data storage device.
After receiving the data update instruction, enter:
step S1200, according to the data updating instruction, the data packet needing to be updated is searched in the data packets with the data page attribute of being valid.
In one embodiment of the present description, data is stored in data pages in the form of data packets. The attributes of a packet may indicate whether the packet needs to be erased. The attributes of the data packet include "valid" and "invalid". When the attribute of a packet is "invalid", the packet needs to be erased.
In one embodiment of the present description, a data packet may include user data, a data header, a data index value, a data length, a check value.
The user data is target data which the user actually needs to store. The user data may be represented by binary numbers, the number of bytes of the user data being determined by the value of the data length.
The header may be used to represent the attributes of the data packet. The value of the header is a non-zero value, indicating that the packet has a "valid" attribute. The header of the data packet with the attribute "valid" may also be used to indicate the product category to which the user data corresponds. The data header may be set to different non-zero values to represent user data for different product categories. The corresponding data packet can be searched through the data head. The value of the header is zero, indicating that the attribute of the packet is "invalid". The data header may be represented by a binary number. The number of bytes of the header may be set based on engineering experience. For example, the header is 2 bytes, and the value of the header of the data packet with the attribute "valid" ranges from [1-65534], wherein different non-zero values may represent user data of different product types. The data header of the data packet with the attribute of "invalid" has a value of zero, and is represented by a binary number as "0000000000000000".
The data index value may be used to represent a data category of the user data. The data category may be, for example, public key information, private key information, bluetooth address information, special identification information, etc. The data index value may be represented by a binary number. The number of bytes of the data index value may be set according to engineering experience. For example, the data index value is 4 bytes, and the range of values of the data index value is [0-4294967295], wherein different values may represent user data of different data categories.
The data length may represent the length of stored user data. The data length may be represented by a binary number. The number of bytes of the data length may be set based on engineering experience. For example, the data length is 2 bytes and the data length has a value in the range of 0-65535, where different values may represent different lengths of stored user data.
The check value may be used to check the user data. The verification method may be, for example, CRC16 or CheckSum 16. The check value may be represented by a binary number. The number of bytes of the check value may be set based on engineering experience. For example, the check value is 2 bytes, and the range of check values is [0-65535].
In a more specific example of the present disclosure, according to a data update instruction, a header and a data index value of a data packet to be updated are obtained, a plurality of data packets of a certain product are searched according to a value of the header, and a data packet corresponding to a data category is further searched in the plurality of data packets of the certain product according to the data index value.
After finding the data packet that needs to be updated, entering:
in step S1300, the attribute of the found data packet to be updated is set to "invalid".
In this embodiment, the Nor Flash is utilized to directly write a data bit from "1" to "0", but the value of the data header cannot be directly changed from "0" to "1", so as to set the attribute of the data packet to be updated to "invalid", mark the data packet to be updated by changing the attribute of the data packet, erase the data packet to be updated when writing a new data packet, and avoid the need of writing data which does not need to be updated again when the memory performs erasing action in a data block or data page manner, thereby improving the speed of data storage.
In one embodiment of the present disclosure, the attribute of the found data packet to be updated is set to "invalid", and the value of the header of the found data packet to be updated may be changed to zero. For example, the header of the found data packet requiring updating is modified to "0000000000000000" as "0000110010100100".
After setting the attribute of the searched data packet needing to be updated as invalid, entering:
in step S1400, a new data packet with "valid" attribute is created in the data page according to the data update instruction.
In one embodiment of the present disclosure, before the step of creating the new data packet with the "valid" attribute in the data page according to the data update instruction, the data processing method further includes: steps S2100-S2300.
In step S2100, it is determined whether the remaining space of the data page is larger than the space occupied by the new data packet to be created.
Step S2200, if the remaining space of the data page is larger than the space occupied by the new data packet to be created, creating a new data packet with the attribute of "valid" in the data page according to the data updating instruction;
in step S2300, if the remaining space of the data page is not greater than the space occupied by the new data packet to be created, a data sort operation is performed on the data page.
< example >
As shown in fig. 2, the process of data update in the data storage method may include the following steps S201 to S211.
Step S201, receiving a data update instruction;
step S202, acquiring a target data head and a target data index value of a data packet to be updated according to a data updating instruction;
Step S203, searching the data packet needing to be updated in the data packet with the data page attribute of 'effective', judging whether the data head of the current data packet is consistent with the target data head, if so, proceeding to step S204, otherwise, proceeding to step S209.
Step S204, judging whether the data index value of the current data packet is consistent with the target data index value, if so, proceeding to step S205, otherwise, proceeding to step S209.
Step S205, the attribute of the searched data packet needing to be updated is set as invalid;
step S206, judging whether the residual space of the data page is larger than the space occupied by the new data packet to be created, if so, entering step S207, otherwise, entering step S208;
step S207, creating a new data packet with the attribute of "valid" in the data page according to the data update instruction;
step S208, data sorting operation is carried out on the data pages;
step S209, moving to the start address of the next data packet;
step S210, judging whether the initial address of the next data packet exceeds the maximum address of the data page, if so, entering step S211, otherwise, returning to step S203;
in step S211, no data packet with the attribute "valid" is found, and a new data packet is directly created.
According to one embodiment of the present disclosure, a data packet that needs to be updated is marked by changing a data packet attribute, so that the data packet that needs to be updated does not need to be erased when a new data packet is written, and the data that needs not to be updated needs to be written again when the memory performs an erasing operation in a data block or a data page manner can be avoided, thereby improving the speed of data storage. In addition, in the data sorting process, the data packets which need to be updated after the attribute is changed can be directly cleared in a data page mode, so that the data processing speed is further improved.
In one embodiment of the present description, the data storage device includes a data storage space provided with a plurality of pages including data pages and data sort pages. The data page is provided with a plurality of data pages for storing data packets. The data sorting page is provided with one for sorting the data packets with the attribute of "valid" of the data page. The pages of the data storage space are provided with page attribute information, and the page attribute information is used for distinguishing the data pages from the data sorting pages. The conversion between the data page and the data sort page can be achieved by higher page attribute information.
For example, the page attribute information may be represented using a non-zero, hexadecimal unsigned integer. For example, a data page is represented by page attribute information of "0x5A5 AEE", and a data sort page is represented by page attribute information of "0x5A5 AFF".
In one embodiment of the present description, the pages of the data storage space are also provided with magic words, which are used to facilitate the detection of the pages, and which may use easily identifiable fields, such as the hexadecimal number 0 xdelaaf.
In one embodiment of the present description, as shown in fig. 3, the data processing method further includes: steps S3100-S3300.
Step S3100, determining whether a data packet with an "invalid" attribute exists in the current data page if the preset data arrangement condition is satisfied.
In a more specific example of the present specification, a preset data sort condition is used to trigger a data sort operation. The preset data arrangement condition comprises that the residual space of at least one data page is smaller than or equal to a preset space threshold value.
The remaining space of the data page may include a remaining space of the current data page and a total remaining space of the plurality of data pages. The preset space threshold may represent a minimum space capable of storing one data packet, the remaining space of the data page is compared with the preset space threshold, if the remaining space of the data page is smaller than the preset space threshold, the data storage space cannot create a new data packet, a data sorting operation may be performed, the data packets in the data page may be sorted, so as to erase the data packet with the attribute of "invalid", and provide space for the new data packet to be created. The preset spatial threshold may be set based on engineering experience.
In another more specific example of the present specification, the preset data arrangement condition includes the use time of the data storage device reaching a preset time threshold.
The use time of the data storage device is the time of continuous use of the data storage device, and if the data sort operation is performed, the use time of the data storage device is reset to zero, and the use time of the data storage device is re-recorded. The preset time threshold may be set according to engineering experience. According to the method, the data storage device is subjected to data arrangement operation according to the preset time threshold, data packets with invalid attributes in the data pages can be cleared regularly, the memory utilization rate of the data storage device is improved, meanwhile, the data packets are prevented from being erased when data are updated every time, and the writing speed of the data storage device is improved.
Step S3200, if there is a data packet with an attribute of "invalid" in the current data page, performing a data sort operation on the current data page:
the data sort operation includes: copying the data packet with the attribute of effective in the current data page into a data sorting page, and changing page attribute information of the data sorting page so as to convert the data sorting page into a new data page; the method comprises the steps of,
The current data page is emptied and the page attribute information of the current data page is changed so that the current data page is converted into a new data sort page.
In this embodiment, after copying the data packet with the attribute "valid" in the current data page to the data sort page, the data sort page is converted to a new data page, so that the data packet with the attribute "valid" is still stored in the data page. And converting the emptied data page into a new data sorting page, so that the next data page can be conveniently sorted.
In step S3300, if there is no data packet with the attribute "invalid" in the current data page, the data sorting operation is finished on the current data page.
In this embodiment, if there is no data packet with the attribute of "invalid" in the current data page, that is, the data packets in the current data page are all data packets with the attribute of "valid", data copy and arrangement are not required, and the current data page is maintained.
< example >
As shown in fig. 4, the process of the data sort operation in the data storage method may include the following steps S401 to S407.
Step S401, judging whether a preset data arrangement condition is met, if so, entering step S402, otherwise, returning to start to perform the next judgment;
Step S402, judging whether a data packet with an invalid attribute exists in the current data page, if so, entering step S403, and if not, ending the flow;
step S403, judging whether the current data packet in the current data page is a data packet with the attribute of valid, if so, entering step S404, otherwise, ending the flow;
step S404, copying the current data packet with the attribute of effective in the current data page into a data sorting page;
step S405, judging whether the current data packet is the last data packet of the current data page, if so, entering step S406, otherwise, returning to step S403;
in this step, it may be determined whether the last packet of the current page is based on the value of the header of the packet. For example, using a Nor Flash memory, when the initial state of a data page is the data header of the read data packet is "0xFFFF", when the data packet with the attribute of "valid" is written, the data header is a non-zero, non-all 0xFFFF value, and when the data header of the read data packet is "0xFFFF", the current data packet is considered to be the last data packet of the current data page.
Step S406, changing the page attribute information of the data sorting page so that the data sorting page is converted into a new data page;
Step S407, the current data page is emptied, and the page attribute information of the current data page is changed so that the current data page is converted into a new data sort page.
According to this example, data sort operations may be performed sequentially on at least one data page in the data storage space.
According to one embodiment of the present disclosure, a data packet with an attribute of "valid" in a current data page is copied to a data sorting page, and page attribute information of the data sorting page is changed, so that the data sorting page is converted into a new data page, and the data packet with the attribute of "valid" in the current data page can be saved, which is convenient for reading and use. Meanwhile, the current data page is emptied, all data packets in the current data page can be emptied once during data arrangement operation, so that the data packets with invalid attributes are eliminated, and erasing operation on the data page required during updating and deleting operation of the data packets can be avoided, so that the writing speed of the data storage device is improved, the erasing times of the data storage device are reduced, and the service life of the data storage device can be prolonged.
In one embodiment of the present specification, the data processing method further includes: steps S4100 to S4200.
In step S4100, a data creation instruction is received.
In step S4200, a new data packet with a "valid" attribute is created in the data page according to the data creation instruction.
< example >
As shown in fig. 5, the process of data creation in the data storage method may include the following steps S501 to S503.
Step S501, receiving a data creation instruction;
step S502, creating a new data packet with the attribute of 'valid' in a data page according to a data creation instruction;
in this step, the created new data packet includes user data, a data header, a data index value, a data length, and a check value.
In step S503, the offset address of the created new packet is marked.
According to one embodiment of the present description, a data creation instruction is received, and a new data packet with a "valid" attribute may be created in a data page.
In one embodiment of the present specification, the data processing method further includes: steps S5100 to S5300.
In step S5100, a data deletion instruction is received.
In step S5200, according to the data deleting instruction, the data packet to be deleted is searched for in the data packets with the data page attribute of "valid".
The attributes of the data packet may be represented by the value of the data header. The value of the header is a non-zero value, indicating that the packet has a "valid" attribute. The header of the data packet with the attribute "valid" may also be used to indicate the product category to which the user data corresponds. The data header may be set to different non-zero values to represent user data for different product categories. The corresponding data packet can be searched through the data head. The value of the header is zero, indicating that the attribute of the packet is "invalid". The data header may be represented by a binary number. The number of bytes of the header may be set based on engineering experience. For example, the header is 2 bytes, and the value of the header of the data packet with the attribute "valid" ranges from [1-65534], wherein different non-zero values may represent user data of different product types. The data header of the data packet with the attribute of "invalid" has a value of zero, and is represented by a binary number as "0000000000000000".
In a more specific example of the present disclosure, according to a data deletion instruction, a header and a data index value of a data packet to be deleted are obtained, a plurality of data packets of a certain product are searched according to a value of the header, and a data packet corresponding to a data category is further searched in the plurality of data packets of the certain product according to the data index value.
In step S5300, the attribute of the searched data packet to be deleted is set to "invalid".
In this embodiment, the Nor Flash is utilized to directly write a data bit from "1" to "0", but the value of the data header cannot be directly changed from "0" to "1", so as to set the attribute of the data packet to be deleted to "invalid", mark the data packet to be deleted by changing the attribute of the data packet, and avoid erasing the data packet, and avoid the need of writing data which does not need to be deleted again when the memory erases in a data block or data page manner, thereby improving the speed of data storage.
< example >
As shown in fig. 6, the process of data deletion in the data storage method may include the following steps S601 to S607.
Step S601, receiving a data deleting instruction;
step S602, according to a data deleting instruction, acquiring a target data head and a target data index value of a data packet to be deleted;
step S603, searching the data packet to be deleted in the data packet with the data page attribute of 'effective', judging whether the data head of the current data packet is consistent with the target data head, if so, proceeding to step S604, otherwise, proceeding to step S606.
Step S604, judging whether the data index value of the current data packet is consistent with the target data index value, if so, proceeding to step S605, otherwise, proceeding to step S606.
Step S605, the attribute of the searched data packet to be deleted is set as invalid;
step S606, moving to the start address of the next data packet;
step S607, it is determined whether the start address of the next data packet exceeds the maximum address of the data page, if yes, the process is ended, otherwise, the process returns to step S603.
According to the embodiment of the invention, the data packets needing to be deleted are marked by changing the data packet attribute, so that the data packets do not need to be erased, and the data needing to be deleted are prevented from being written again when the memory erases in the form of data blocks or data pages, thereby improving the speed of data storage.
In one embodiment of the present specification, the data processing method further includes: steps S6100 to S6500.
In step S6100, a data reading instruction is received.
In step S6200, according to the data reading instruction, the data packet to be read is searched for in the data packets with the data page attribute of "valid".
Step S6300, obtaining the check value from the searched data packet to be read.
The check value may be used to check the user data. The verification method may be, for example, CRC16 or CheckSum 16. The check value may be represented by a binary number. The number of bytes of the check value may be set based on engineering experience. For example, the check value is 2 bytes, and the range of check values is [0-65535].
Step S6400, checking the data packet to be read by using the check value;
in step S6500, if the verification result is that the verification is passed, the data packet to be read is copied to the destination address according to the data reading instruction.
< example >
As shown in fig. 7, the process of data reading in the data storage method may include the following steps S701 to S711.
Step S701, receiving a data reading instruction;
step S702, according to a data reading instruction, acquiring a target data head and a target data index value of a data packet to be read;
Step S703, searching the data packet to be read in the data packet with the data page attribute of "valid", judging whether the data head of the current data packet is consistent with the target data head, if so, proceeding to step S704, otherwise, proceeding to step S708.
Step S704, judging whether the data index value of the current data packet is consistent with the target data index value, if so, proceeding to step S705, otherwise, proceeding to step S708.
Step S705, obtaining a check value from the searched data packet to be read;
step S706, checking the data packet to be read by using the check value, judging whether the check result is passing or not, if so, entering step S707, otherwise, entering step S708;
step S707, copying the data packet to be read to the target address according to the data reading instruction;
step S708, moving to the start address of the next data packet;
step S709, it is determined whether the start address of the next packet exceeds the maximum address of the data page, if yes, the process is ended, otherwise, the process returns to step S703.
According to one embodiment of the present disclosure, a data read command is received, a data packet may be read in a data page, and the data packet may be checked according to a check value in the data packet, so as to improve the accuracy of the reading.
< data storage device >
Fig. 8 is a schematic diagram of a data storage device according to an embodiment of the present disclosure. The data storage device may be a single chip microcomputer provided with a non-volatile flash memory.
The embodiment provides for the data storage device to have a plurality of pages of data storage space, the plurality of pages including at least one data page. As shown in fig. 8, the data storage device 800 includes a receiving module 801, a searching module 802, an attribute setting module 803, and an updating module 804.
The receiving module 801 may be configured to receive data update instructions.
The searching module 802 may be configured to search for a data packet that needs to be updated from the data packets with the attribute "valid" of the data page according to the data update instruction.
The attribute setting module 803 may be configured to set the attribute of the found data packet that needs to be updated to "invalid";
the update module 804 may be configured to create a new data packet with a "valid" attribute in a data page according to the data update instruction.
According to one embodiment of the present disclosure, a data packet that needs to be updated is marked by changing a data packet attribute, so that the data packet that needs to be updated does not need to be erased when a new data packet is written, and the data that needs not to be updated needs to be written again when the memory performs an erasing operation in a data block or a data page manner can be avoided, thereby improving the speed of data storage. In addition, in the data sorting process, the data packets which need to be updated after the attribute is changed can be directly cleared in a data page mode, so that the data processing speed is further improved.
In one embodiment of the present disclosure, the plurality of pages further includes a data sort page, the page is provided with page attribute information, the page attribute information is used to distinguish between the data page and the data sort page, and the data storage device 800 further includes a data packet attribute determining module 805 and a sort module 806.
The data packet attribute determining module 805 may be configured to determine whether a data packet with an attribute of "invalid" exists in the current data page when a preset data arrangement condition is satisfied;
the sort module 806 may be configured to perform a data sort operation on the current data page if there is a data packet with an attribute of "invalid" in the current data page:
a data sort operation, comprising:
copying the data packet with the attribute of effective in the current data page into a data sorting page, and changing page attribute information of the data sorting page so as to convert the data sorting page into a new data page; the method comprises the steps of,
the current data page is emptied and the page attribute information of the current data page is changed so that the current data page is converted into a new data sort page.
In a more specific example of the present disclosure, the preset data arrangement condition includes a remaining space of at least one data page being equal to or less than a preset space threshold.
In another more specific example of the present specification, the usage time of the data storage device reaches a preset time threshold.
According to one embodiment of the present disclosure, a data packet with an attribute of "valid" in a current data page is copied to a data sorting page, and page attribute information of the data sorting page is changed, so that the data sorting page is converted into a new data page, and the data packet with the attribute of "valid" in the current data page can be saved, which is convenient for reading and use. Meanwhile, the current data page is emptied, all data packets in the current data page can be emptied once during data arrangement operation, so that the data packets with invalid attributes are eliminated, and erasing operation on the data page required during updating and deleting operation of the data packets can be avoided, so that the writing speed of the data storage device is improved, the erasing times of the data storage device are reduced, and the service life of the data storage device can be prolonged.
In one embodiment of the present description, the data storage device 800 further includes a creation module 807.
In this example, the receiving module 801 may also be used to receive data creation instructions.
The creation module 807 may be configured to create a new data packet in the data page having a "valid" attribute in accordance with the data creation instruction.
According to one embodiment of the present description, a data creation instruction is received, and a new data packet with a "valid" attribute may be created in a data page.
In one embodiment of the present description, the data storage device 800 further includes a delete module 808.
In this example, the receiving module 801 may also be configured to receive a data deletion instruction.
The searching module 802 may be further configured to search for a data packet to be deleted from the data packets with the attribute "valid" of the data page according to the data deleting instruction.
The delete module 808 may be configured to set the attribute of the found data packet to be deleted to "invalid".
According to the embodiment of the invention, the data packets needing to be deleted are marked by changing the data packet attribute, so that the data packets do not need to be erased, and the data needing to be deleted are prevented from being written again when the memory erases in the form of data blocks or data pages, thereby improving the speed of data storage. In addition, in the data arrangement process, the data packets to be deleted can be directly cleared in a data page mode, so that the data processing speed is further improved.
In one embodiment of the present disclosure, the data storage device 800 further includes a check value acquisition module 809, a check module 810, and a reading module 811.
In this example, the receiving module 801 may also be used to receive data read instructions.
The searching module 802 may be further configured to search for a data packet to be read from among data packets having a data page attribute of "valid" according to a data reading instruction.
The check value obtaining module 809 may be configured to obtain a check value from the found data packet to be read.
The verification module 810 may be configured to use a verification value to verify the data packet to be read.
The reading module 811 may be configured to copy the data packet to be read to a target address according to a data reading instruction when the verification result is that the verification is passed.
According to one embodiment of the present disclosure, a data read command is received, a data packet may be read in a data page, and the data packet may be checked according to a check value in the data packet, so as to improve the accuracy of the reading.
< data storage device >
Fig. 9 is a schematic diagram of a data storage device according to an embodiment of the present disclosure. The data storage device may be a single chip microcomputer provided with a non-volatile flash memory. The embodiment provides for the data storage device to have a plurality of pages of data storage space, the plurality of pages including at least one data page.
As shown in fig. 9, the data storage device 900 includes a processor 901 and a memory 902, the memory 902 having stored therein computer instructions which, when executed by the processor 901, perform the data storage method of any of the foregoing embodiments.
According to one embodiment of the present disclosure, the attribute of the data packet to be updated is changed to "invalid" by changing the attribute of the data packet, so that an erasing operation is avoided for the data packet to be updated each time the data is updated, and the data which is not required to be updated and is brought about when the memory performs the erasing operation in the form of a data block or a data page is avoided, thereby improving the speed of writing the data. In addition, in the data sorting process, the data packets which need to be updated after the attribute is changed can be directly cleared in a data page mode, so that the data processing speed is further improved.
In this specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are referred to each other, and each embodiment is mainly described as different from other embodiments, but it should be apparent to those skilled in the art that the above embodiments may be used alone or in combination with each other as required. In addition, for the device embodiment, since it corresponds to the method embodiment, description is relatively simple, and reference should be made to the description of the corresponding part of the method embodiment for relevant points. The system embodiments described above are merely illustrative, in that the modules illustrated as separate components may or may not be physically separate.
The present invention may be a system, method, and/or computer program product. The computer program product may include a computer readable storage medium having computer readable program instructions embodied thereon for causing a processor to implement aspects of the present invention.
The computer readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: portable computer disks, hard disks, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static Random Access Memory (SRAM), portable compact disk read-only memory (CD-ROM), digital Versatile Disks (DVD), memory sticks, floppy disks, mechanical coding devices, punch cards or in-groove structures such as punch cards or grooves having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media, as used herein, are not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., optical pulses through fiber optic cables), or electrical signals transmitted through wires.
The computer readable program instructions described herein may be downloaded from a computer readable storage medium to a respective computing/processing device or to an external computer or external storage device over a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmissions, wireless transmissions, routers, firewalls, switches, gateway computers and/or edge servers. The network interface card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium in the respective computing/processing device.
Computer program instructions for carrying out operations of the present invention may be assembly instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, c++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present invention are implemented by personalizing electronic circuitry, such as programmable logic circuitry, field Programmable Gate Arrays (FPGAs), or Programmable Logic Arrays (PLAs), with state information for computer readable program instructions, which can execute the computer readable program instructions.
Various aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable medium having the instructions stored therein includes an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. It is well known to those skilled in the art that implementation by hardware, implementation by software, and implementation by a combination of software and hardware are all equivalent.
The foregoing description of embodiments of the invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the various embodiments described. The terminology used herein was chosen in order to best explain the principles of the embodiments, the practical application, or the technical improvements in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein. The scope of the invention is defined by the appended claims.

Claims (10)

1. A data storage method applied to a data storage device provided with a data storage space including a plurality of pages including at least one data page, the method comprising:
receiving a data updating instruction;
searching a data packet needing to be updated in a data packet with the effective attribute of a data page according to the data updating instruction;
setting the attribute of the searched data packet needing to be updated as invalid;
creating a new data packet with the attribute of 'valid' in a data page according to the data updating instruction; if the residual space of the data page is not more than the space occupied by the new data packet to be created, executing data sorting operation on the data page; wherein the finishing operation comprises: copying the data packet with the attribute of effective in the current data page into a data sorting page, and changing page attribute information of the data sorting page so as to convert the data sorting page into a new data page; and, clearing the current data page and altering the page attribute information of the current data page so that the current data page is converted into a new data sort page.
2. The method of claim 1, the plurality of pages further comprising a data sort page, the page provided with page attribute information for distinguishing between the data page and the data sort page, the method further comprising:
judging whether a data packet with invalid attribute exists in the current data page under the condition that the preset data arrangement condition is met;
if there is a data packet with an attribute of "invalid" in the current data page, a data sort operation is performed on the current data page.
3. The method of claim 2, wherein the preset data sort conditions are any one or any combination of the following:
the residual space of at least one data page is smaller than or equal to a preset space threshold value;
the use time of the data storage device reaches a preset time threshold.
4. The method of claim 1, further comprising:
receiving a data creation instruction;
according to the data creation instruction, a new data packet with the attribute of being valid is created in the data page.
5. The method of claim 1, further comprising:
receiving a data deleting instruction;
searching the data packets needing to be deleted from the data packets with the effective attributes of the data pages according to the data deleting instruction;
And setting the attribute of the searched data packet needing to be deleted as invalid.
6. The method of claim 1, further comprising:
receiving a data reading instruction;
according to the data reading instruction, searching the data packet to be read from the data packets with the data page attribute of effective;
acquiring a check value from the searched data packet to be read;
checking the data packet to be read by using the check value;
and copying the data packet to be read to a target address according to the data reading instruction under the condition that the verification result is that the verification is passed.
7. The method of claim 1, wherein the method further comprises, prior to creating a new data packet with a "valid" attribute in a data page according to the data update instruction:
judging whether the residual space of the data page is larger than the space occupied by a new data packet to be created;
if the remaining space of the data page is larger than the space occupied by the new data packet to be created, creating a new data packet with the attribute of being valid in the data page according to the data updating instruction.
8. The method of claim 1, wherein the method is implemented in a single-chip microcomputer having a nonvolatile flash memory.
9. A data storage device provided with a data storage space comprising a plurality of pages, the plurality of pages comprising at least one data page, the data storage device further comprising: a receiving module for receiving the data updating instruction,
a searching module for searching the data packet which needs to be updated in the data packet with the effective attribute of the data page according to the data updating instruction,
an attribute setting module, configured to set the attribute of the searched data packet to be updated to "invalid",
the updating module is used for creating a new data packet with the attribute of 'effective' in the data page according to the data updating instruction; if the residual space of the data page is not more than the space occupied by the new data packet to be created, executing data sorting operation on the data page; wherein the finishing operation comprises: copying the data packet with the attribute of effective in the current data page into a data sorting page, and changing page attribute information of the data sorting page so as to convert the data sorting page into a new data page; and, clearing the current data page and altering page attribute information of the current data page so that the current data page is converted into a new data sort page or,
The data storage device includes:
a memory for storing computer instructions,
a processor for invoking the computer instructions from the memory and performing the data storage method of any of claims 1-8 under control of the computer instructions.
10. The device of claim 9, wherein the data storage device is a single-chip microcomputer provided with a nonvolatile flash memory.
CN202010163595.8A 2020-03-10 2020-03-10 Data storage method and device Active CN111427511B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010163595.8A CN111427511B (en) 2020-03-10 2020-03-10 Data storage method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010163595.8A CN111427511B (en) 2020-03-10 2020-03-10 Data storage method and device

Publications (2)

Publication Number Publication Date
CN111427511A CN111427511A (en) 2020-07-17
CN111427511B true CN111427511B (en) 2023-10-27

Family

ID=71546316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010163595.8A Active CN111427511B (en) 2020-03-10 2020-03-10 Data storage method and device

Country Status (1)

Country Link
CN (1) CN111427511B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114257887A (en) * 2021-12-23 2022-03-29 广东迪奥技术有限公司 Data communication method, system, storage medium and electronic equipment
CN116661696B (en) * 2023-06-05 2024-03-22 深圳市航顺芯片技术研发有限公司 Storage method based on flash memory and related device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493794A (en) * 2009-01-19 2009-07-29 成都市华为赛门铁克科技有限公司 Flash memory data processing method and device
CN102866863A (en) * 2012-08-23 2013-01-09 深圳Tcl新技术有限公司 Embedded multimedia card data migration method, embedded equipment system layer and embedded equipment
CN103885889A (en) * 2014-03-19 2014-06-25 广州市泰斗软核信息科技有限公司 Data storage method and system based on NOR FLASH
CN104598540A (en) * 2014-12-31 2015-05-06 国家电网公司 Timing data migration device and using method thereof
CN110008141A (en) * 2019-03-28 2019-07-12 维沃移动通信有限公司 A kind of scrap cleaning method and electronic equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10496293B2 (en) * 2017-03-14 2019-12-03 International Business Machines Corporation Techniques for selecting storage blocks for garbage collection based on longevity information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493794A (en) * 2009-01-19 2009-07-29 成都市华为赛门铁克科技有限公司 Flash memory data processing method and device
CN102866863A (en) * 2012-08-23 2013-01-09 深圳Tcl新技术有限公司 Embedded multimedia card data migration method, embedded equipment system layer and embedded equipment
CN103885889A (en) * 2014-03-19 2014-06-25 广州市泰斗软核信息科技有限公司 Data storage method and system based on NOR FLASH
CN104598540A (en) * 2014-12-31 2015-05-06 国家电网公司 Timing data migration device and using method thereof
CN110008141A (en) * 2019-03-28 2019-07-12 维沃移动通信有限公司 A kind of scrap cleaning method and electronic equipment

Also Published As

Publication number Publication date
CN111427511A (en) 2020-07-17

Similar Documents

Publication Publication Date Title
CN113039547B (en) Key value storage memory system, method and related storage medium
CN108733507B (en) Method and device for file backup and recovery
EP3864519A1 (en) Key-value store tree data block spill with compaction
CN111427511B (en) Data storage method and device
KR102065563B1 (en) System and method for object deletion in persistent memory using bitmap windows
CN106547644B (en) Incremental backup method and equipment
CN108733312B (en) Storage management method and device
US10983718B2 (en) Method, device and computer program product for data backup
CN105446964A (en) File repeat data delete method and device
CN111858577B (en) Method, apparatus and computer program product for storage management
JPWO2015093026A1 (en) Write information storage device, method, and program
CN114579561A (en) Data processing method and device, and storage medium
CN111143113B (en) Method, electronic device and computer program product for copying metadata
CN110109867B (en) Method, apparatus and computer program product for improving online mode detection
EP2400446A1 (en) Equipment managing apparatus, equipment managing method, and equipment managing system
CN109101191B (en) Data storage method, data storage device, storage medium and electronic equipment
CN105930534B (en) A kind of fragmentation of data reduction method based on cloud storage service price
CN106484691A (en) The date storage method of mobile terminal and device
CN109840080B (en) Character attribute comparison method and device, storage medium and electronic equipment
CN104021142B (en) The storage of tamper resistant systems web page files fingerprint and querying method
CN110968649B (en) Method, apparatus and computer program product for managing data sets
CN115328922B (en) Data management method, device and system for one-way linked list
CN112241336A (en) Method, apparatus and computer program product for backing up data
CN105095015B (en) The method for building up and device of a kind of disk snapshot
CN105095197A (en) Method and device for processing data

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