WO2020113435A1 - 传输记录的方法和装置 - Google Patents

传输记录的方法和装置 Download PDF

Info

Publication number
WO2020113435A1
WO2020113435A1 PCT/CN2018/119222 CN2018119222W WO2020113435A1 WO 2020113435 A1 WO2020113435 A1 WO 2020113435A1 CN 2018119222 W CN2018119222 W CN 2018119222W WO 2020113435 A1 WO2020113435 A1 WO 2020113435A1
Authority
WO
WIPO (PCT)
Prior art keywords
record
time
target
records
current
Prior art date
Application number
PCT/CN2018/119222
Other languages
English (en)
French (fr)
Inventor
彭逸豪
Original Assignee
比特大陆科技有限公司
彭逸豪
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 比特大陆科技有限公司, 彭逸豪 filed Critical 比特大陆科技有限公司
Priority to PCT/CN2018/119222 priority Critical patent/WO2020113435A1/zh
Priority to CN201880099958.7A priority patent/CN113228595B/zh
Priority to EP18942182.9A priority patent/EP3962024A4/en
Publication of WO2020113435A1 publication Critical patent/WO2020113435A1/zh
Priority to US17/337,213 priority patent/US20210286801A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/22Arrangements for sorting or merging computer data on continuous record carriers, e.g. tape, drum, disc
    • G06F7/32Merging, i.e. combining data contained in ordered sequence on at least two record carriers to produce a single carrier or set of carriers having all the original data in the ordered sequence merging methods in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1744Redundancy elimination performed by the file system using compression, e.g. sparse files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/06Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
    • G06F7/14Merging, i.e. combining at least two sets of record carriers each arranged in the same ordered sequence to produce a single set having the same ordered sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Definitions

  • This application relates to the field of data transmission, for example, to a method and device for transmitting records.
  • the content of the record often changes with time. Therefore, the sending end (source) will update the history records stored on the receiving end (sink).
  • the sending end usually transmits the updated current record completely to the receiving end, and this way of transmitting the record is less flexible.
  • An embodiment of the present disclosure provides a method for transmitting a record, including: selecting a target record from the current record according to the difference between the corresponding record in the current record and the historical record; and transmitting the target record to the receiving end.
  • the target record to be transmitted is selected according to the difference between the corresponding record in the current record and the historical record, instead of directly transmitting the complete current record to the receiving end, the flexibility of transmission can be improved.
  • the selecting the target record from the current record according to the difference between the current record and the corresponding record in the historical record includes: according to the difference between the current record and the corresponding record in the historical record , Select the target record from the current records, so that the number of the target records is less than or equal to the first preset threshold.
  • the selecting the target record from the current record according to the difference between the current record and the corresponding record in the historical record includes: according to the difference between the current record and the corresponding record in the historical record Select the target record from the current records, so that the data amount of the target record is less than or equal to the second preset threshold.
  • the amount of data that needs to be transmitted at both ends of the transceiver remains basically stable (that is, it basically remains below the second preset threshold).
  • the target record includes a first record in which a specific data item is deleted, where the first record has the same value as the specific data item in the corresponding record in the history record.
  • the amount of data to be transferred can be reduced or the target record can accommodate more information.
  • the target record is a partial record in the current record
  • the current record also includes remaining records except the partial record
  • the partial record and the historical record The minimum value of the difference between corresponding records is greater than or equal to the maximum value of the difference between the remaining records and corresponding records in the history records.
  • the difference between the target record and the corresponding record in the historical record is large, so the target record may be more able to attract the user's attention. Transmitting the target record to the receiving end without transmitting the remaining records can reduce the amount of data to be transmitted, and may not affect the transmission quality.
  • the difference between the current record and the corresponding record in the historical record is determined based on the difference between the target data items of the current record and the corresponding record in the historical record.
  • the target data item includes multiple data items
  • the difference between the current record and the corresponding record in the historical record is the difference between the current record and the corresponding record in the historical record. Weighted sum of the differences of multiple data items.
  • the target record includes a record added to the history record and/or a deleted record.
  • the deleted record in the target record contains only the main field.
  • the amount of data to be transferred can be reduced or the target record can accommodate more information.
  • the transmitting the target record to the receiving end includes: compressing the target record to obtain compressed data; and transmitting the compressed data to the receiving end.
  • the method further includes: merging multiple original time records into one target time record, wherein different object identifiers in the multiple original time records correspond to different times, and the target time record Each object identifier in corresponds to the same time; the target time record is sent to the receiving end.
  • the combining of multiple original time records into one target time record includes: adjusting the time accuracy of the multiple original time records to obtain multiple intermediate time records with the same corresponding time.
  • the time accuracy of the original time record is the first time accuracy
  • the time accuracy of the intermediate time record is the second time accuracy, wherein the second time accuracy is less than the first time accuracy; the plurality of intermediate time records Merged into the target time record.
  • time records that could not be merged can be merged, which can greatly improve the compression performance of time records without losing some time accuracy.
  • adjusting the time accuracy of the multiple original time records to obtain multiple intermediate time records with the same corresponding time includes: according to the second time accuracy, the multiple original time records The time in the time record is rounded to obtain the multiple intermediate time records.
  • the duration corresponding to the second time precision is greater than the update period of the original time record.
  • the intermediate time record obtained after the accuracy adjustment is either the same as the time record before the update or is adjusted to the same time, so that most or all of the intermediate time records Time records can be merged into a target time record, greatly reducing the amount of data in time records.
  • the plurality of original time records are time records that are updated relative to the historical time record
  • the object identifier in the target time record is those that are not updated relative to the historical time record.
  • Object identifiers wherein the number of object identifiers in the time record updated relative to the historical time record is greater than the number of object identifiers in the time record not updated relative to the historical time record.
  • the relative history is recorded in the target time record
  • the object identifier in the time record that the time record is not updated can not only calculate the time record that is updated relative to the historical time record (equivalent to record the time record that is updated relative to the historical time record), but also reduce The amount of data recorded over time.
  • An embodiment of the present disclosure also provides an apparatus for transmitting records, including: a selection module configured to select a target record from the current record according to the difference between the corresponding record in the current record and the historical record; the first transmission module is configured to The receiving end transmits the target record.
  • the selection module is configured to select the target record from the current record according to the difference between the current record and the corresponding record in the historical record, so that the number of the target record is less than Or equal to the first preset threshold.
  • the selection module is configured to select the target record from the current record according to the difference between the current record and the corresponding record in the historical record, so that the data amount of the target record Less than or equal to the second preset threshold.
  • the target record includes a first record in which a specific data item is deleted, where the first record has the same value as the specific data item in the corresponding record in the history record.
  • the target record is a partial record in the current record
  • the current record also includes remaining records except the partial record
  • the partial record and the historical record The minimum value of the difference between corresponding records is greater than or equal to the maximum value of the difference between the remaining records and corresponding records in the history records.
  • the difference between the current record and the corresponding record in the historical record is determined based on the difference between the target data items of the current record and the corresponding record in the historical record.
  • the target data item includes multiple data items
  • the difference between the current record and the corresponding record in the historical record is the difference between the current record and the corresponding record in the historical record. Weighted sum of the differences of multiple data items.
  • the target record includes a record added to the history record and/or a deleted record.
  • the deleted record in the target record contains only the main field.
  • the first transmission module is configured to compress the target record to obtain compressed data; and transmit the compressed data to the receiving end.
  • the apparatus further includes: a processing module configured to merge multiple original time records into one target time record, wherein different object identifiers in the multiple original time records correspond to different times, Each object identifier in the target time record corresponds to the same time; the second transmission module is configured to send the target time record to the receiving end.
  • the processing module includes: an adjustment module configured to adjust the time accuracy of the multiple original time records to obtain multiple intermediate time records with the same corresponding time, the time of the original time record The accuracy is the first time accuracy, and the time accuracy of the intermediate time record is the second time accuracy, where the second time accuracy is less than the first time accuracy; the merging module is configured to merge the multiple intermediate time records Into the target time record.
  • the adjustment module is configured to round the time in the multiple original time records according to the second time accuracy to obtain the multiple intermediate time records.
  • the duration corresponding to the second time precision is greater than the update period of the original time record.
  • the plurality of original time records are time records that are updated relative to the historical time record
  • the object identifier in the target time record is those that are not updated relative to the historical time record.
  • Object identifiers wherein the number of object identifiers in the time record updated relative to the historical time record is greater than the number of object identifiers in the time record not updated relative to the historical time record.
  • An embodiment of the present disclosure also provides a computer (such as a server or a terminal) including the above-mentioned device for transmitting records.
  • An embodiment of the present disclosure also provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, When the instruction is executed by the at least one processor, the at least one processor is caused to execute the above-mentioned method of transferring records.
  • Embodiments of the present disclosure also provide a computer-readable storage medium that stores computer-executable instructions, and the computer-executable instructions are configured to perform the above-described transmission recording method.
  • An embodiment of the present disclosure also provides a computer program product, characterized in that the computer program product includes a computer program stored on a computer-readable storage medium, the computer program includes program instructions, and when the program instructions are executed by a computer , The computer is made to execute the above-mentioned method of transferring records.
  • FIG. 1 is an example diagram of an application scenario provided by an embodiment of the present disclosure
  • FIG. 2 is another exemplary diagram of an application scenario provided by an embodiment of the present disclosure.
  • FIG. 3 is a schematic flowchart of a method for transmitting records provided by an embodiment of the present disclosure
  • FIG. 4 is a schematic flowchart of a method for recording a transmission time according to an embodiment of the present disclosure
  • FIG. 5 is a schematic flowchart of a method for transmitting time recording according to another embodiment of the present disclosure.
  • FIG. 6 is a schematic flowchart of a method for recording a transmission time according to another embodiment of the present disclosure.
  • FIG. 7 is a schematic diagram of a processing flow of a sending end in a method for recording a transmission time according to another embodiment of the present disclosure
  • FIG. 8 is a schematic diagram of the processing flow of the receiving end corresponding to FIG. 7;
  • FIG. 9 is a schematic structural diagram of an apparatus for transmitting records provided by an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure.
  • Figure 1 shows a network system.
  • the network system includes a client 101 and a server 103.
  • the client 101 and the server 103 can be connected via a wired or wireless network 102.
  • the embodiments of the present disclosure do not limit the types of the client 101 and the server 103.
  • the client 101 may be a fixed terminal 101a or a mobile terminal 101b.
  • the client 101 may also refer to software running on the terminal 101, such as a browser, a webpage, or an APP running on the terminal 101.
  • software running on the terminal 101 such as a browser, a webpage, or an APP running on the terminal 101.
  • the embodiments of the present disclosure will It is uniformly called the client.
  • the embodiment of the present disclosure does not limit the type of the server 103, and may be an application server or a storage server.
  • the client 101 and the server 103 can use various network protocols to transfer data, such as a hypertext transfer protocol (HTTP), or a websocket protocol.
  • HTTP hypertext transfer protocol
  • websocket protocol a protocol that supports websockets.
  • the HTTP protocol is a network protocol that supports one-way communication.
  • the server 103 sends data to the client according to the client's request.
  • the websocket protocol is a network protocol that supports two-way communication. Based on the websocket protocol, the server 103 can send data to the client according to the client's request, or can actively send data (or push messages) to the client 101.
  • the back-end (or data source) 205 can obtain the operating status information (such as the CPU usage and memory usage of the device) of the monitored device (device 1-device n in FIG. 2) .
  • the backend 205 may write the operating status information of each device to the redis database 207 at a specific frequency (such as 15 seconds/time or 40 seconds/time).
  • the redis database 207 can record the running status information of the device in the form of a device list.
  • the redis database 207 is only an example, and the database 207 may also be other types of databases, such as a memcached storage system, NoSOL database, and so on.
  • a message can be pushed to the subscribers of the redis database (such as the server 103) to notify the subscribers that the information in the redis database has been updated.
  • the server 103 may establish a websocket service for listening to requests from the client 101.
  • the server 103 may subscribe to the operating state information of the device 1-device n from the redis database to obtain a device list recording the operating state information of each device.
  • the server 103 may transmit the device list to the client 101.
  • the server 103 may first transmit the initial device list to the client 101, and this process may be referred to as the first transmission.
  • the server 103 may transmit the updated device list to the client 101. This process may be referred to as retransmission or update transmission.
  • the transmission process can be repeated once or multiple times. Whether it is the first transmission or the second transmission, the server 103 may transmit the device list according to the request of the client 101, or may actively push the device list to the client 101.
  • the client 101 may display the device list on the client 101 page. In some embodiments, the client 101 may also perform operations such as searching information in the device list displayed on the page, or sorting the device list.
  • each row (or each column) of the list can be called a record.
  • Each column (or each row) of the list may be referred to as a field.
  • Each field in a record can be called a data item.
  • the list usually has a main field to distinguish different records in the list.
  • the main field may be a field in the list or a combination of multiple fields in the list. Records can also exist in other forms of data sets relatively independently, and are not limited to lists.
  • the embodiments of the present disclosure mainly use lists as an example for description.
  • Table 1 is an example of the equipment list of the equipment operating state monitoring system shown in FIG. 2:
  • Each row in Table 1 represents a record.
  • the device number is the main field and is used to distinguish records of different devices.
  • CPU usage and memory usage are all data items.
  • the content in the record may depend on the application and is not limited to information related to the recording device.
  • the recorded content may be stock information or remaining ticket information.
  • the sending end usually transmits the updated current record completely to the receiving end, so that the receiving end updates its stored historical records.
  • This method of transmitting records always selects to transmit the complete current record to the receiving End, the flexibility is poor.
  • FIG. 3 is a schematic flowchart of a method for transmitting records provided by an embodiment of the present disclosure.
  • the transceiver in FIG. 3 may be any transceiver device that has a record transmission requirement.
  • the sending end may be the server 103 mentioned above
  • the receiving end may be the client 101 mentioned above.
  • step S310 according to the difference between the current record and the corresponding record in the historical record, the target record is selected from the current record.
  • step S320 the target record is transmitted to the receiving end.
  • Selecting the target record to be transmitted according to the difference between the corresponding record in the current record and the historical record instead of directly transmitting the complete current record to the receiving end without selecting, can improve the transmission flexibility.
  • the difference between the current record and the corresponding record in the historical record is compared, it is considered that both the current record needs to be transmitted to the receiving end, and the complete current record may also be transmitted to the receiving end.
  • the target record can contain some or all of the current records.
  • the target record may include a record with a large difference in the current record or a record with a small difference in the current record.
  • some records may be selected for transmission according to the difference between the current record and the historical record to reduce the amount of data to be transmitted. The method for selecting the target record will be described in detail below in conjunction with the embodiments, and will not be described in detail here.
  • the historical record may be a record that has been transmitted to the receiving end.
  • the history record may be the latest record stored at the receiving end after the previous transmission, or the history record may also be an earlier version record stored at the receiving end.
  • the process of sending records from the sending end to the receiving end is divided into the first transmission, the first update transmission, and the nth update transmission.
  • the historical record may refer to the record of the first transmission.
  • the historical record may refer to the record stored at the receiving end after the previous n-1 transmissions.
  • the historical record may also refer to the record obtained after the first n-k transmissions (k is greater than 1), and the value of k may be pre-negotiated by both sending and receiving ends.
  • Both current and historical records can include multiple records.
  • the main fields are usually kept unchanged. Therefore, the corresponding record between the current record and the history record can be determined according to the main field in the current record and the history record. For example, the record with the same main field in the current record and the history record is the corresponding record. If the main field is changed, it can be understood that a record in the history record is deleted, and a new record is added to the current record.
  • Each record in the current record and the history record may contain one or more data items (the one or more data items may be one or more data items other than the main field).
  • the difference between the current record and the corresponding record in the historical record can be determined based on the difference between the target data item of the current record and the corresponding record in the historical record, or can be determined based on the ratio of the target data item of the current record and the corresponding record in the historical record This is not limited in the embodiments of the present disclosure.
  • the target data item may include any one or more data items in the record.
  • the difference between the current record and the corresponding record in the historical record may be a weighted sum of the differences between the multiple data items in the current record and the corresponding record in the historical record. For example, the difference between each record in the multiple data items corresponding to the current record and the historical record can be calculated; then, the multiple data items can be assigned their respective corresponding according to the importance of the data item or other indicators Weights, and use these weights to perform weighted summation on the multiple differences corresponding to the multiple data items as the corresponding recorded differences.
  • the difference between corresponding records may be represented by a numerical value, so as to facilitate comparison of the difference between corresponding records.
  • the calculation method of the difference between the two data items can be determined according to the data type of the data stored in the data item.
  • the difference between the two data items may be the difference between the numerical values in the two data items or the absolute value of the difference.
  • the data in the data items are real numbers and the data of their corresponding units can be regarded as numeric data.
  • the unit Before calculating the difference between two numeric data, the unit can be unified. In the process of calculating the difference between two numeric data, the difference between the values themselves can be directly calculated regardless of the unit.
  • the difference between the two data items may be the time difference between the two data items.
  • the time difference can be accurate to any of seconds, minutes, hours, or days.
  • the difference calculation method calculates the difference between the two data items.
  • the data type of the data stored in the two data items is a character string with an indefinite length
  • the length of the character string in a data item is shorter than the target length
  • the difference calculation method of the fixed-length character string type mentioned above can be used to calculate the difference between the two data items.
  • step S310 There are many ways to select the target record in step S310.
  • the target record may be selected from the current record according to the difference between the corresponding record in the current record and the historical record, so that the number of target records is less than or equal to the first preset threshold.
  • the first preset threshold may be the maximum number of records allowed to be transmitted (for example, 1000).
  • the first preset threshold may be set according to experience or actual conditions.
  • the first preset threshold may be set according to one or more of the following factors: the network status between the sending end and the receiving end, the traffic cost required for the transmission process, and so on.
  • the value of the first preset threshold may be flexibly adjusted according to actual conditions. If the number of records in the current record is less than the first preset threshold, all the current records can be transmitted to the receiving end.
  • the amount of data that needs to be transmitted at both ends of the transceiver remains basically stable (maintained below the first preset threshold).
  • the target record may be selected from the current record according to the difference between the current record and the corresponding record in the historical record, so that the data amount of the target record is less than or equal to the second preset threshold ( Or make the data volume of the target record within the preset range).
  • this implementation controls the number of target records to be transmitted from the perspective of the amount of data, which can better ensure the stability of the amount of data transmitted at both ends of the transceiver (maintained below the second preset threshold).
  • the first preset threshold and the second preset threshold mentioned above may also be determined according to the currently recorded update frequency. For example, the number of records or the amount of data that the user can process in the two previous update processes can be calculated according to the update frequency of the current record, so as to determine the values of the first preset threshold and the second preset threshold. For example, if the update frequency of the current record is 15 seconds, and the user can generally process 20 records in 15 seconds, the first preset threshold can be defined as 20; for another example, assuming that the update frequency of the current record is 45 seconds, the user is 45 seconds is generally capable of processing records corresponding to 100k of data, and the second preset threshold can be defined as 100k.
  • the target record can be a record with a large difference from the corresponding record in the current record, a record with a small difference, or a record with a difference that meets other preset conditions, such as the difference fluctuating repeatedly during several consecutive transmissions
  • the records in the disclosure are not limited in the embodiments of the present disclosure.
  • the target record is a partial record in the current record, and the current record also includes the remaining records except the partial record, and the minimum value of the difference between the corresponding record in the partial record and the historical record is greater than or equal to the remaining record and the historical record The maximum value of the corresponding recorded difference in.
  • the difference between the target record and the corresponding record in the historical record is large, so the target record may be more able to attract the user's attention. Transmitting the target record to the receiving end without transmitting the remaining records can reduce the amount of data to be transmitted, and may not affect the transmission quality.
  • the target record may include records corresponding to the historical records in the current record (such records may be referred to as update records), and may also include records added to the relative history records, and/or records deleted from the relative history records.
  • the newly added record refers to the record contained in the current record, but the record is not included in the historical record.
  • the deleted record refers to the record not included in the current record, but the record exists in the history record.
  • the above-mentioned newly added records and/or deleted records can also be taken into account, so that even if a large number of newly added records and/or deleted records are included, the amount of data to be transmitted at both the sending and receiving ends is also Can basically remain stable.
  • the first preset threshold may be the total number of updated records, newly added records, and deleted records.
  • the deleted record to be transmitted may contain only the main field to reduce the amount of data to be transmitted.
  • the current record may be sorted according to the difference between the corresponding record of the current record and the historical record in the order of the difference from large to small or from small to large.
  • the target record may include a first record in which a specific data item is deleted, where the first record has the same value as the specific data item in the corresponding record in the history record.
  • the first record has the same value as the specific data item of the record corresponding to the first record in the history record, which means that the specific data item in the first record has not been updated, so the specific data item may not be transmitted, so that the target record Can hold more information.
  • the sending end can use the target record to update the locally saved historical record for use in the next transmission.
  • the target record can be used to update the locally saved historical record for use in the next transmission.
  • the target record may be compressed (using a general compression method) to reduce the data volume of the target record.
  • the records to be sent often contain a large number of time records.
  • Table 1 the device number and submission time in the device list constitute the time records of each detected device, as follows:
  • time recording There are many forms of time recording, the above is just an example.
  • Common time records usually include two basic elements: time and the object identifier of the object to which the time belongs.
  • the meanings of time and object identifier in the time record will vary with different application occasions, which is not limited in the embodiments of the present disclosure.
  • the time in the time record may refer to the update time of the operating state of the monitored device
  • the object identifier in the time record may refer to the device number of the monitored device.
  • the server 103 Assuming that the update frequency of the device list is 15 seconds, the server 103 generates a large number of time records every day, and the transmission of thousands of time records consumes a large amount of network resources.
  • time records and other records in the same data set can be processed separately.
  • the other records can be sent directly to the receiving end (or sent to the receiving end after being compressed in other ways), and the time records can use the following figure 4- Compressed in the manner described in Figure 9 and then transmitted to the receiving end.
  • step S420 multiple original time records are merged into one target time record.
  • different object identifiers in multiple original time records correspond to different times
  • each object identifier in the target time record corresponds to the same time.
  • step S440 the target time record is transmitted to the receiving end.
  • the embodiment of the present disclosure is equivalent to modifying some or all of the time in the original records, so that the time in the modified time record becomes the same time, so that these modified time records can be merged together, Form a target time record.
  • the embodiments of the present disclosure can effectively reduce the consumption of network resources (such as network bandwidth) or data traffic during the transmission of time records, so that the time records can be quickly and accurately transmitted to the receiving end.
  • the original time record may be a single object time record (ie, the original time record may include an object identifier), and the combined target time record may be a multi-object time record (ie, the target time record may include multiple objects Identifier).
  • the object identifier in the target time record may be the object identifier in the multiple original time records, or may be another object identifier that can be indexed to the object identifier in the multiple original time records. This is not limited.
  • the object identifier in the target time record may be the object identifier of the multiple original time records, or it may be that the relative historical time records are not The object identifier of the time record being updated. For example, when the number of object identifiers in a time record whose relative historical time record is updated is greater than the number of object identifiers in a time record whose relative historical time record is not updated, the object identifier in the target time record may be set The object identifier in the time record that has not been updated for the relative historical time record.
  • the object identifier in the time record can be indexed to the object identifier of the time record updated relative to the historical time record in an inverse manner, or the data amount of the time record can be reduced.
  • the historical time record mentioned here may be a time record that has been previously obtained, or a time record that has been previously sent to the receiving end.
  • the historical time record may be the time record previously sent to the receiving end.
  • step S420 There may be multiple implementation manners of step S420, which is not limited in the embodiments of the present disclosure. As an example, you can select one time record from multiple original time records, and take the time of the selected time record as the reference time, and adjust the time of the remaining original time records in the multiple original time records to the reference time.
  • steps S422-S424 may be used to merge the multiple original time records into one target time record.
  • step S422 the time accuracy of multiple original time records is adjusted to obtain multiple intermediate time records with the same corresponding time.
  • the time accuracy of the original time record may be the first time accuracy
  • the time accuracy of the intermediate time record may be the second time accuracy.
  • the second time accuracy is less than the first time accuracy.
  • the embodiment of the present disclosure does not limit the setting method of the second time precision. For example, if the first time precision is “1 second", the second time precision may be set to "1 minute” or "30 seconds".
  • the duration corresponding to the second time accuracy may be set to be greater than the update period of the original time record.
  • the intermediate time record obtained after the accuracy adjustment is either the same as the time record before the update or is adjusted to the same time, so that most or all of the intermediate time records Time records can be merged into a target time record, greatly reducing the amount of data in time records.
  • the second time accuracy is greater than 40 seconds (for example, 1 minute)
  • the time of the adjusted intermediate time record will remain the same as the time record before the update, Either be adjusted to the next minute.
  • step S424 multiple intermediate time records are merged into a target time record.
  • time records to be processed include the following time records:
  • the time accuracy of the original time record to be processed is "second" (corresponding to the first time accuracy mentioned above).
  • the time accuracy of the original time record can be rounded off Into the processing, so that the time accuracy of all time records is retained to "minutes" (corresponding to the second time accuracy mentioned above), resulting in the following intermediate time records:
  • the first two intermediate time records correspond to the same time "2018-05-10 11:22:00", and the last two intermediate time records correspond to the same time "2018-05-10 11:20:00".
  • the intermediate time records corresponding to the same time can be combined into one target time record to obtain the following two target time records:
  • the embodiments of the present disclosure can reduce the amount of data recorded in time, thereby reducing the consumption of storage resources by time recording.
  • the sender can transmit in the same manner as the first transmission, that is, to transmit the complete time record to the receiver.
  • the sending end may transmit to the receiving end the time record in which the relative historical time record is updated, but not the time record in which the relative history record is not updated.
  • the sending end can also transmit one or more of the newly added time record and the deleted time record to the receiving end.
  • the deleted time record transmitted to the receiving end may include the object identifier, but not the time, to reduce the amount of data to be transmitted.
  • step S602 the time in the original time record to be transmitted is rounded.
  • the number of seconds in the time in the original time record can be rounded to the minute accuracy level.
  • the acceptable time error of the receiving end is 30 seconds
  • the number of seconds in the time in the original time record can be rounded to the 30-second accuracy level.
  • step S604 the intermediate time records with the same time are combined to obtain one or more target time records.
  • step S606 the target time record is sent to the receiving end. It can be seen that, compared with the original time record to be transmitted, the transmission target time record enables the data amount of the time record to be transmitted to be greatly reduced.
  • the target time record containing multiple object identifiers can be restored to a single object time record.
  • FIG. 7 is executed by the sending end
  • FIG. 8 is executed by the receiving end.
  • step S702 the original time record to be transmitted is rounded.
  • the original time records to be transmitted can be rounded to make the time in these time records accurate to minutes, and we get:
  • step S704 the time records after the rounding process are divided into 4 groups of A, B, C, and D.
  • the historical time record refers to the time record of the previous transmission, but the embodiment of the present disclosure is not limited to this.
  • the sending end may use any time record transmitted previously as the historical time record, as long as the sending and receiving ends have negotiated in advance That's it.
  • step S706 all object identifiers of the time records in B are extracted to constitute B'.
  • B' can be expressed in the form of "- ⁇ b1, b2, b3,... ⁇ ", where b1, b2, and b3 are object identifiers, and "-" indicates deletion. This way of representation omits the transmission of the time of the deleted time record, and can reduce the amount of data of the time record to be transmitted.
  • step S708 the time records of A and C are processed according to the steps shown in Fig. 6 to obtain A'and C'.
  • A’ (2018-05-1011:23:00,340).
  • step S710 if C'contains a time record, skip to step S712. If C'contains multiple time records, skip to step S720.
  • C’ (2018-05-1011:23:00, ⁇ 1568,1329,4560 ⁇ ), which contains a time record, and then jump to step S712.
  • step S712 the time in the time record in C'is extracted as T; and the object identifier included in the time record is extracted as O1.
  • O1 ⁇ 1568, 1329, 4560 ⁇ .
  • step S714 the object identifier included in the time record in D is extracted and recorded as O2.
  • step S7108 A', B', and R are transmitted to the receiving end.
  • step S718 the sending end transmits the following time record to the receiving end:
  • A’ (2018-05-1011:23:00,340);
  • step S720 A', B'and C'are transmitted to the receiving end.
  • FIG. 8 shows the processing flow of the receiving end during the retransmission process.
  • step S802 if B'is received, the time record corresponding to the object identifier it contains is removed from the historical time record.
  • time record ie historical time record
  • the time record received this time is as follows:
  • A’ (2018-05-1011:23:00,340);
  • step S802 (2018-05-10 11:30:00, 2356) can be removed from the time record, the remaining time record is as follows:
  • step S806 is executed, and the object identifier in the historical time record is not
  • the time recorded in "3421" is set to "2018-05-1011:23:00", and the following results are obtained:
  • step S808 if C'is received, the multi-object time record in C'is expanded into a single-object time record, and updated to the corresponding position of the historical time record.
  • step S810 if A'is received, the multi-object time record in A'is expanded into a single-object time record, and updated to the corresponding position of the currently existing time record.
  • the above mainly adopts the way of "year-month-day hour:minute:second" to represent time, and uses Arabic numerals to represent the object identifier, but the embodiments of the present disclosure are not limited thereto.
  • time and object identifiers can be represented in binary.
  • the embodiment of the present disclosure compresses the data amount of the time record to obtain the target time record.
  • a general compression algorithm may be used to compress the target time record again to reduce the amount of time record data to a greater extent.
  • the device 900 includes a selection module 910 and a first transmission module 920.
  • the selection module 910 is configured to select a target record from the current record according to the difference between the current record and the corresponding record in the historical record.
  • the first transmission module 920 is configured to transmit the target record to the receiving end.
  • the selection module 910 is configured to select the target record from the current record according to the difference between the current record and the corresponding record in the historical record, so that the number of the target record is less than or equal to The first preset threshold.
  • the selection module 910 is configured to select the target record from the current record according to the difference between the current record and the corresponding record in the historical record, so that the data amount of the target record is less than or Equal to the second preset threshold.
  • the target record includes a first record in which a specific data item is deleted, where the first record has the same value as the specific data item in the corresponding record in the history record.
  • the target record is a partial record in the current record
  • the current record also includes remaining records except the partial record
  • the partial record and the corresponding record in the history record The minimum value of the difference is greater than or equal to the maximum value of the difference between the remaining record and the corresponding record in the history record.
  • the difference between the current record and the corresponding record in the history record is determined based on the difference between the target data items of the current record and the corresponding record in the history record.
  • the target data item includes multiple data items
  • the difference between the current record and the corresponding record in the historical record is the multiple data of the corresponding record in the current record and the historical record The weighted sum of the differences of the terms.
  • the target record includes newly added records and/or deleted records relative to the historical records.
  • the deleted record in the target record contains only the main field.
  • the first transmission module 920 is configured to compress the target record to obtain compressed data; and transmit the compressed data to the receiving end.
  • the device 900 may further include: a processing module configured to merge multiple original time records into one target time record, where different object identifiers in the multiple original time records correspond to different times, so Each object identifier in the target time record corresponds to the same time; the second transmission module is configured to send the target time record to the receiving end.
  • a processing module configured to merge multiple original time records into one target time record, where different object identifiers in the multiple original time records correspond to different times, so Each object identifier in the target time record corresponds to the same time
  • the second transmission module is configured to send the target time record to the receiving end.
  • the processing module includes: an adjustment module configured to adjust the time accuracy of the multiple original time records to obtain multiple intermediate time records with the same corresponding time.
  • the time accuracy of the original time record is the first A time accuracy
  • the time accuracy of the intermediate time record is a second time accuracy, wherein the second time accuracy is less than the first time accuracy
  • the merging module is configured to merge the multiple intermediate time records into the Target time record.
  • the adjustment module is configured to perform rounding processing on the time in the plurality of original time records according to the second time accuracy to obtain the plurality of intermediate time records.
  • the duration corresponding to the second time accuracy is greater than the update period of the original time record.
  • the plurality of original time records are time records that are updated relative to historical time records
  • the object identifier in the target time record is an object identifier in time records that are not updated relative to the historical time record ,
  • the number of object identifiers in the time record that is updated relative to the historical time record is greater than the number of object identifiers in the time record that is not updated relative to the historical time record.
  • An embodiment of the present disclosure also provides a computer-readable storage medium that stores computer-executable instructions that are configured to perform the above-described transmission recording method.
  • An embodiment of the present disclosure also provides a computer program product.
  • the computer program product includes a computer program stored on a computer-readable storage medium.
  • the computer program includes program instructions. When the program instructions are executed by a computer, the The computer executes the above method of transferring records.
  • the aforementioned computer-readable storage medium may be a transient computer-readable storage medium or a non-transitory computer-readable storage medium.
  • An embodiment of the present disclosure also provides an electronic device, whose structure is shown in FIG. 10, the electronic device includes:
  • At least one processor (processor) 1010 one processor 1010 is taken as an example in FIG. 10; and a memory (memory) 1020 may further include a communication interface (Communication Interface) 1030 and a bus 1040. Among them, the processor 1010, the communication interface 1030, and the memory 1020 can complete communication with each other through the bus 1040.
  • the communication interface 1030 can be used for information transmission.
  • the processor 1010 may call logic instructions in the memory 1020 to execute the method for transferring records in the above embodiment.
  • the above logic instructions in the memory 1020 can be implemented in the form of software functional units and sold or used as an independent product, and can be stored in a computer-readable storage medium.
  • the memory 1020 is a computer-readable storage medium that can be used to store software programs and computer-executable programs, such as program instructions/modules corresponding to the methods in the embodiments of the present disclosure.
  • the processor 1010 executes functional applications and data processing by running software programs, instructions, and modules stored in the memory 1020, that is, the method of transmitting records in the foregoing method embodiments.
  • the memory 1020 may include a storage program area and a storage data area, where the storage program area may store an operating system and application programs required for at least one function; the storage data area may store data created according to the use of a terminal device and the like.
  • the memory 1020 may include a high-speed random access memory, and may also include a non-volatile memory.
  • the current record mentioned above may be a device list.
  • the device list may be a processing device of "digital credentials".
  • the digital voucher processing device may be a digital currency mining machine, and the digital currency may be an encrypted currency such as bitcoin.
  • the technical solutions of the embodiments of the present disclosure may be embodied in the form of software products, which are stored in a storage medium and include one or more instructions to make a computer device (which may be a personal computer, server, or network) Equipment, etc.) to perform all or part of the steps of the method described in the embodiments of the present disclosure.
  • the aforementioned storage medium may be a non-transitory storage medium, including: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk, etc.
  • a medium that can store program codes may also be a transient storage medium.
  • first, second, etc. may be used in this application to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another.
  • the first element can be called the second element, and likewise, the second element can be called the first element, as long as all occurrences of the "first element” are consistently renamed and all occurrences of The “second component” can be renamed consistently.
  • the first element and the second element are both elements, but they may not be the same element.
  • the various aspects, implementations, implementations or features in the described embodiments can be used alone or in any combination.
  • Various aspects in the described embodiments may be implemented by software, hardware, or a combination of software and hardware.
  • the described embodiments may also be embodied by a computer-readable medium having computer-readable codes stored thereon, the computer-readable codes including instructions executable by at least one computing device.
  • the computer-readable medium can be associated with any data storage device capable of storing data, which can be read by a computer system.
  • Computer-readable media used for examples may include read-only memory, random access memory, CD-ROM, HDD, DVD, magnetic tape, optical data storage devices, and the like.
  • the computer-readable medium may also be distributed in computer systems connected through a network, so that computer-readable codes can be stored and executed in a distributed manner.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种传输记录的方法和装置。该方法包括:根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录;向接收端传输所述目标记录。根据当前记录和历史记录中的对应记录的差异选取待传输的目标记录,而非将完整的当前记录直接传输至接收端,可以提高传输的灵活性。

Description

传输记录的方法和装置 技术领域
本申请涉及数据传输领域,例如涉及一种传输记录的方法和装置。
背景技术
记录是一种常见的数据形式,被广泛应用于互联网领域。
记录的内容经常随着时间的变化而变化,因此,发送端(信源)会对接收端(信宿)上存储的历史记录进行更新。
相关技术中,发送端通常将更新后的当前记录完整地传输至接收端,这种传输记录的方式灵活性较差。
发明内容
本公开实施例提供一种传输记录的方法,包括:根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录;向接收端传输所述目标记录。
根据当前记录和历史记录中的对应记录的差异选取待传输的目标记录,而非将完整的当前记录直接传输至接收端,可以提高传输的灵活性。
在某些实现方式中,所述根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录,包括:根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数量小于或等于第一预设阈值。
通过设置目标记录的数量的上限,使得无论当前记录中的记录的数量较多还是较少,收发两端需要传输的数据量基本保持稳定(即基本维持在第一预设阈值以下)。
在某些实现方式中,所述根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录,包括:根据所述当前记录与所述历史记录 中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数据量小于或等于第二预设阈值。
通过设置传输数据量的上限,使得无论当前记录的数据量较多还是较少,收发两端需要传输的数据量基本保持稳定(即基本维持在第二预设阈值以下)。
在某些实现方式中,所述目标记录包括删除了特定数据项的第一记录,其中所述第一记录与所述历史记录中的对应记录的所述特定数据项的取值相同。
通过删除目标记录中的未更新的特定数据项,可以降低待传输的数据量或使得目标记录可以容纳更多的信息量。
在某些实现方式中,所述目标记录为所述当前记录中的部分记录,所述当前记录还包括除所述部分记录之外的剩余记录,且所述部分记录与所述历史记录中的对应记录的差异的最小值大于或等于所述剩余记录与所述历史记录中的对应记录的差异的最大值。
与剩余记录相比,目标记录与历史记录中的对应记录的差异较大,因此,目标记录可能更能引起用户的注意。向接收端传输目标记录,而不传输剩余记录,可以降低待传输的数据量,且可能不会影响传输质量。
在某些实现方式中,所述当前记录与所述历史记录中的对应记录的差异是基于所述当前记录与所述历史记录中的对应记录的目标数据项的差值确定的。
在某些实现方式中,所述目标数据项包括多个数据项,所述当前记录与所述历史记录中的对应记录的差异为所述当前记录与所述历史记录中的对应记录的所述多个数据项的差值的加权和。
在某些实现方式中,所述目标记录包括相对所述历史记录新增的记录和/或被删除的记录。
在某些实现方式中,所述目标记录中的所述被删除的记录仅包含主字段。
通过省略被删除记录的除主字段之外的其他内容,可以降低待传输的数据量或使得目标记录可以容纳更多的信息量。
在某些实现方式中,所述向接收端传输所述目标记录,包括:对所述目 标记录进行压缩,得到压缩数据;向所述接收端传输所述压缩数据。
在某些实现方式中,所述方法还包括:将多条原始时间记录合并成一条目标时间记录,其中,所述多条原始时间记录中的不同对象标识符对应不同时间,所述目标时间记录中的各个对象标识符对应同一时间;向接收端发送所述目标时间记录。
通过将对应时间不同的时间记录合并成对应时间相同的一条目标时间记录,可以减少时间记录的数据量。
在某些实现方式中,所述将多条原始时间记录合并成一条目标时间记录,包括:对所述多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录,所述原始时间记录的时间精度为第一时间精度,所述中间时间记录的时间精度为第二时间精度,其中所述第二时间精度小于所述第一时间精度;将所述多条中间时间记录合并成所述目标时间记录。
通过调整原始时间记录的时间精度,使得原本无法合并的时间记录可以被合并,从而可以在损失一些时间精度的情况下大幅提升时间记录的压缩性能。
在某些实现方式中,所述对所述多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录,包括:按照所述第二时间精度,对所述多条原始时间记录中的时间进行舍入处理,得到所述多条中间时间记录。
在某些实现方式中,所述第二时间精度对应的时长大于所述原始时间记录的更新周期。
第二时间精度对应的时长大于原始时间记录的更新周期时,经过精度调整后得到的中间时间记录要么与更新前的时间记录保持不变,要么被调整至同一时间,从而使得大部分甚至全部中间时间记录可以被合并至一条目标时间记录,很大程度地降低时间记录的数据量。
在某些实现方式中,所述多条原始时间记录为相对历史时间记录被更新的时间记录,所述目标时间记录中的对象标识符为相对所述历史时间记录未被更新的时间记录中的对象标识符,其中相对所述历史时间记录被更新的时间记录中的对象标识符的数量大于相对所述历史时间记录未被更新的时间记 录中的对象标识符的数量。
由于相对所述历史时间记录被更新的时间记录中的对象标识符的数量大于相对所述历史时间记录未被更新的时间记录中的对象标识符的数量,在目标时间记录中记录相对所述历史时间记录未被更新的时间记录中的对象标识符,既可以反算出相对所述历史时间记录被更新的时间记录(相当于记录了相对所述历史时间记录被更新的时间记录),又可以降低时间记录的数据量。
本公开实施例还一种传输记录的装置,包括:选取模块,配置为根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录;第一传输模块,配置为向接收端传输所述目标记录。
在某些实现方式中,所述选取模块配置为根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数量小于或等于第一预设阈值。
在某些实现方式中,所述选取模块配置为根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数据量小于或等于第二预设阈值。
在某些实现方式中,所述目标记录包括删除了特定数据项的第一记录,其中所述第一记录与所述历史记录中的对应记录的所述特定数据项的取值相同。
在某些实现方式中,所述目标记录为所述当前记录中的部分记录,所述当前记录还包括除所述部分记录之外的剩余记录,且所述部分记录与所述历史记录中的对应记录的差异的最小值大于或等于所述剩余记录与所述历史记录中的对应记录的差异的最大值。
在某些实现方式中,所述当前记录与所述历史记录中的对应记录的差异是基于所述当前记录与所述历史记录中的对应记录的目标数据项的差值确定的。
在某些实现方式中,所述目标数据项包括多个数据项,所述当前记录与所述历史记录中的对应记录的差异为所述当前记录与所述历史记录中的对应记录的所述多个数据项的差值的加权和。
在某些实现方式中,所述目标记录包括相对所述历史记录新增的记录和/或被删除的记录。
在某些实现方式中,所述目标记录中的所述被删除的记录仅包含主字段。
在某些实现方式中,所述第一传输模块配置为对所述目标记录进行压缩,得到压缩数据;向所述接收端传输所述压缩数据。
在某些实现方式中,所述装置还包括:处理模块,配置为将多条原始时间记录合并成一条目标时间记录,其中,所述多条原始时间记录中的不同对象标识符对应不同时间,所述目标时间记录中的各个对象标识符对应同一时间;第二传输模块,配置为向接收端发送所述目标时间记录。
在某些实现方式中,所述处理模块包括:调整模块,配置为对所述多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录,所述原始时间记录的时间精度为第一时间精度,所述中间时间记录的时间精度为第二时间精度,其中所述第二时间精度小于所述第一时间精度;合并模块,配置为将所述多条中间时间记录合并成所述目标时间记录。
在某些实现方式中,所述调整模块配置为按照所述第二时间精度,对所述多条原始时间记录中的时间进行舍入处理,得到所述多条中间时间记录。
在某些实现方式中,所述第二时间精度对应的时长大于所述原始时间记录的更新周期。
在某些实现方式中,所述多条原始时间记录为相对历史时间记录被更新的时间记录,所述目标时间记录中的对象标识符为相对所述历史时间记录未被更新的时间记录中的对象标识符,其中相对所述历史时间记录被更新的时间记录中的对象标识符的数量大于相对所述历史时间记录未被更新的时间记录中的对象标识符的数量。
本公开实施例还提供了一种计算机(如服务器或终端),包含上述传输记录的装置。
本公开实施例还提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述 至少一个处理器执行上述传输记录的方法。
本公开实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述传输记录的方法。
本公开实施例还提供一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述传输记录的方法。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
图1为本公开实施例提供的应用场景的一个示例图;
图2为本公开实施例提供的应用场景的另一示例图;
图3为本公开实施例提供的传输记录的方法的流程示意图;
图4为本公开一个实施例提供的传输时间记录的方法的流程示意图;
图5为本公开另一实施例提供的传输时间记录的方法的流程示意图;
图6为本公开又一实施例提供的传输时间记录的方法的流程示意图;
图7为本公开又一实施例提供的传输时间记录的方法中的发送端的处理流程示意图;
图8是与图7对应的接收端的处理流程示意图;
图9为本公开实施例提供的传输记录的装置的结构示意图;以及
图10为本公开实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附 图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
下面结合图1,对本公开实施例的应用场景进行举例说明。
图1示出的是一个网络系统。该网络系统包括客户端101和服务器103。客户端101和服务器103之间可以通过有线的或无线的网络102通信连接。
本公开实施例对客户端101和服务器103的类型不做限定。例如,客户端101可以是固定的终端101a,也可以是移动终端101b。在某些实施例中,客户端101也可以指终端101上运行的软件,如终端101上运行的浏览器,网页,或者APP,为了便于描述,无论采用哪种实现方式,本公开实施例将其统一称为客户端。本公开实施例对服务器103的类型也不做限定,可以是应用服务器,也可以是存储服务器。
客户端101和服务器103可以采用各种网络协议传输数据,如超文本传输协议(hypertext transfer protocol,HTTP),或websocket协议。
HTTP协议是一种支持单向通信的网络协议,服务器103依客户端的请求向客户端发送数据。
websocket协议是一种支持双向通信的网络协议,基于websocket协议,服务器103可以依客户端的请求向客户端发送数据,也可以主动向客户端101发送数据(或推送消息)。
下面以图2为例,对记录的生成及传输过程进行举例说明。
如图2所示,后端(或称数据源)205可以获取到被监控设备(如图2中的设备1-设备n)的运行状态信息(如设备的CPU占用率、内存占用率等)。此外,后端205可以以特定频率(如15秒/次或40秒/次)将每台设备的运行状态信息写入redis数据库207。redis数据库207可以以设备列表的方式对设备的运行状态信息进行记录。redis数据库207仅是一个示例,该数据库207还可以是其他类型的数据库,如memcached存储系统、NoSOL数据库等。当 redis数据库中的设备列表被更新时,可以向redis数据库的订阅者(如服务器103)推送一条消息,通知订阅者redis数据库的信息已更新。
服务器103可以建立websocket服务,用于监听来自客户端101的请求。当客户端101与服务器103连接时,服务器103可以向redis数据库订阅设备1-设备n的运行状态信息,以获取记录有各个设备的运行状态信息的设备列表。接着,服务器103可以将设备列表传输至客户端101。例如,服务器103可以先将初始设备列表传输至客户端101,这一过程可以称为首次传输。每当设备列表被更新,服务器103可以将更新后的设备列表传输至客户端101,这一过程可以称为再次传输或更新传输。再次传输过程可以有1次,也可以有多次。无论是首次传输,还是再次传输,服务器103可以依客户端101的请求传输设备列表,也可以向客户端101主动推送设备列表。
客户端101(本例中,如果服务器103与客户端基于websocket协议通信,该客户端也可称为websocket客户端或websocket app)可以将设备列表显示在客户端101的页面上。在某些实施例中,客户端101还可以执行对页面上显示的设备列表中的信息进行搜索,或对设备列表进行排序等操作。
通常来讲,列表的每一行(或每一列)可以称为一条记录。列表的每一列(或每一行)可以称为一个字段。一个记录中的每个字段可以称为一个数据项。列表通常具有主字段,用于区分列表中的不同的记录。该主字段可以是列表中的一个字段,也可以是列表中的多个字段的组合。记录也可以相对独立地存在于其他形式的数据集中,而不限于列表,本公开实施例主要以列表为例进行说明。
表一为图2所示的设备运行状态监控系统的设备列表的一个示例:
表一
设备号 CPU占用率 内存占用量 设备温度 提交时间
1568 30% 0.5GB 40℃ 2018-05-10 11:21:42
1329 70% 1GB 60℃ 2018-05-10 11:22:01
3421 50% 0.7GB 50℃ 2018-05-10 11:20:01
4560 40% 0.6GB 45℃ 2018-05-10 11:20:23
表一的每一行代表一条记录。设备号为主字段,用于对不同设备的记录进行区分。CPU占用率、内存占用量等均为数据项。记录中的内容可以视应用而定,不限于记录设备相关的信息。例如,记录的内容可以是股票信息,也可以是剩余车票信息等。
在相关技术中,发送端通常将更新后的当前记录完整地传输至接收端,以便接收端更新其存储的历史记录,这种传输记录的方式总是不加选择即将完整的当前记录传输至接收端,灵活性较差。
在实际的网络传输过程中,收发两端无论使用的是宽带互联网,还是移动互联网,二者之间的信道总是受到各种各样的限制,比如信道带宽的限制,或数据流量的限制。无节制的传输大量数据会导致传输延时长,甚至导致传输失败。所以,对当前记录进行有选择的传输,就显得很重要。
有一个现象有助于从当前记录中选取待传输的目标记录,即在有限时间内,一个人能够处理的信息量往往是有限的。因此,其往往仅关注值得关注内容。例如,对于图2描述的设备运行状态监控系统,用户可能关心的是设备列表中的变化剧烈(或变化程度较大)的内容;对于其他场景,用户可能关心的是列表中的变化平缓(或变化程度较小)的内容。下面结合图3给出能够提高收发两端灵活性的一种可能的实施例。
图3是本公开实施例提供的传输记录的方法的流程示意图。图3中的收发端可以是存在记录传输需求的任意收发设备。例如,发送端可以是上文提及的服务器103,接收端可以是上文提及的客户端101。
在步骤S310,根据当前记录与历史记录中的对应记录的差异,从当前记录中选取目标记录。
在步骤S320,向接收端传输目标记录。
根据当前记录和历史记录中的对应记录的差异选取待传输的目标记录,而非将不加选择直接将完整的当前记录传输至接收端,可以提高传输的灵活性。当然,本公开实施例中,如果比较了当前记录与历史记录中的对应记录的差异之后,认为当前记录均需要传输至接收端,也可以将完整的当前记录传输至接收端。
目标记录可以包含当前记录中的部分或全部记录。例如,目标记录可以包含当前记录中的差异较大的记录,也可以包含当前记录中的差异较小的记录。换句话说,在某些实施例中,可以根据当前记录与历史记录的差异,选择部分记录进行传输,以降低待传输的数据量。下文会结合实施例对目标记录的选择方式进行详细描述,此处暂不详述。
历史记录可以是已经传输至接收端的记录。作为一个示例,历史记录可以是经过前一次传输后,接收端存储的最新记录,或者,历史记录也可以是接收端存储的较早版本的记录。例如,将发送端向接收端发送记录的过程分为首次传输、第1次更新传输…第n次更新传输,则对于第1次更新传输而言,历史记录可以指首次传输的记录。对于第n次更新传输而言,历史记录可以指经过前n-1次传输后接收端存储的记录。或者,在某些实施例中,对于第n次传输而言,历史记录也可以指经过前n-k次传输后得到的记录(k大于1),k的取值可以由收发两端预先协商。
当前记录和历史记录均可以包括多条记录。记录在更新过程中,主字段通常是保持不变的。因此,当前记录与历史记录之间的对应记录可以根据当前记录和历史记录中的主字段确定。例如,当前记录和历史记录中的主字段相同的记录为对应记录。如果主字段发生了变换,可以理解为历史记录中的某条记录被删除,并有新的记录添加至当前记录。
当前记录和历史记录中的每条记录可以包含一个或多个数据项(该一个或多个数据项可以是除主字段之外的一个或多个数据项)。当前记录与历史记录中的对应记录的差异可以基于当前记录与历史记录中的对应记录的目标数据项的差值确定,也可以基于当前记录与历史记录中的对应记录的目标数据项的比值确定,本公开实施例对此并不限定。该目标数据项可以包括记录中的任意一个或多个数据项。
假设目标数据项包括多个数据项,当前记录与历史记录中的对应记录的差异可以为当前记录与历史记录中的对应记录的该多个数据项的差值的加权和。例如,可以计算当前记录与历史记录中的对应记录在该多个数据项中的每个数据项的差异;然后,可以按照数据项的重要性或其他指标为该多个数据项分配各自对应的权值,并利用这些权值对该多个数据项对应的多个差异 进行加权求和,作为对应记录的差异。在某些实施例中,对应记录的差异可以通过数值表示,以便于对对应记录的差异进行比较。
两个数据项之间的差异的计算方式可以根据该数据项中存储的数据的数据类型而定。
例如,两个数据项中存储的数据的数据类型为数值型,则两个数据项之间的差异可以是两个数据项中的数值的差或差的绝对值。数据项中的数据为实数和其对应单位的数据都可以视为数值型数据。在计算两个数值型数据的差值之前,可以先统一单位。在计算两个数值型数据的差值的过程中,可以不考虑单位,直接计算数值本身之间的差值。
又如,两个数据项中存储的数据的数据类型为时间,则两个数据项之间的差异可以是两个数据项中的时间的时间差。该时间差可以精确到秒、分钟、小时或天中的任意一种。
又如,两个数据项中存储的数据的数据类型为长度固定的字符串,则可以将两个数据项中的字符串的二进制表示看成是整数,然后利用上文提及的数值型数据的差异计算方式计算该两个数据项的差异。
又如,两个数据项中存储的数据的数据类型为长度不固定的字符串,则可以先定义字符串的目标长度,当某个数据项中的字符串的长度比该目标长度短时,可以在该字符串后面补二进制的0字节(0x00),使其达到目标长度;当某个数据项中的字符串的长度比该目标长度长时,可以舍弃该字符串的部分末尾字符,使其达到目标长度。然后,可以利用上文提及的长度固定的字符串类型的差异计算方式计算两个数据项的差异。
步骤S310中的目标记录的选取方式可以有多种。
可选地,作为一种可能的实现方式,可以根据当前记录与历史记录中的对应记录的差异,从当前记录中选取目标记录,使得目标记录的数量小于或等于第一预设阈值。
第一预设阈值可以是允许传输的记录的最大条数(如1000条)。第一预设阈值可以根据经验或实际情况设定。例如,可以根据以下因素中的一种或多种设定第一预设阈值:发送端和接收端之间的网络状态,传输过程所需的 流量成本等。可选地,在某些实施例中,第一预设阈值的取值可以根据实际情况灵活调整。如果当前记录中的记录的条数小于第一预设阈值,可以将当前记录全部传输至接收端。
通过设置上述最大阈值,无论当前记录中的记录的数量很大还是很小,收发两端需要传输的数据量基本保持稳定(维持在第一预设阈值以下)。
可选地,作为另一种可能的实现方式,可以根据当前记录与历史记录中的对应记录的差异,从当前记录中选取目标记录,使得目标记录的数据量小于或等于第二预设阈值(或者使得目标记录的数据量在预设范围内)。
与前一实现方式不同,本实现方式从数据量的角度控制待传输的目标记录的数量,能够更好地保证收发两端传输的数据量的稳定(维持在第二预设阈值以下)。
上文提及的第一预设阈值和第二预设阈值还可以根据当前记录的更新频率确定。例如,可以根据当前记录的更新频率,计算出用户在前后两次更新过程能够处理的记录数量或数据量,从而确定第一预设阈值和第二预设阈值的取值。例如,假设当前记录的更新频率为15秒,用户在15秒一般能够处理20条记录,则可以将第一预设阈值定义为20;又如,假设当前记录的更新频率为45秒,用户在45秒一般能够处理100k数据量对应的记录,则可以将第二预设阈值定义为100k。
目标记录可以是当前记录中的与历史记录中的对应记录相比差异较大的记录,差异较小的记录,或者差异满足其他预设条件的记录,如在连续几次传输过程中差异反复波动的记录,本公开实施例对此并不限定。作为一个例子,目标记录为当前记录中的部分记录,当前记录还包括除部分记录之外的剩余记录,且部分记录与历史记录中的对应记录的差异的最小值大于或等于剩余记录与历史记录中的对应记录的差异的最大值。与剩余记录相比,目标记录与历史记录中的对应记录的差异较大,因此,目标记录可能更能引起用户的注意。向接收端传输目标记录,而不传输剩余记录,可以降低待传输的数据量,且可能不会影响传输质量。
目标记录除了可以包括当前记录中的与历史记录具有对应关系的记录(这样的记录可以称为更新记录),还可以包括相对历史记录新增的记录,和 /或相对历史记录被删除的记录。新增的记录指的是当前记录中包含的记录,但该记录未包含在历史记录中。被删除的记录指的是当前记录中未包含的记录,但该记录存在于历史记录中。
在选取目标记录时,也可以将上述新增的记录和/或被删除的记录考虑在内,使得即使包含大量的新增记录和/或被删除的记录,收发两端待传输的数据量也可以基本保持稳定。例如,第一预设阈值可以是更新记录、新增记录和删除记录的总条数。接收端接收到目标记录中的更新记录之后,可以利用更新记录替换历史记录中的对应记录。接收端接收到新增记录之后,可以将新增记录插入到本地记录中。接收端接收到删除记录之后,可以将历史记录中的对应记录删除。更新记录或删除记录与历史记录中的对应记录均可以基于记录的主字段进行查找。
可选地,待传输的被删除的记录可以仅包含主字段,以降低待传输的数据量。
为了方便目标记录的选取,可以先根据当前记录与历史记录的对应记录的差异,按照差异由大到小或由小到大的顺序对当前记录进行排序。
可选地,在某些实施例中,目标记录可以包括删除了特定数据项的第一记录,其中第一记录与历史记录中的对应记录的特定数据项的取值相同。第一记录与历史记录中的与第一记录对应的记录的特定数据项的取值相同,代表第一记录中的该特定数据项未被更新,则可以不传输该特定数据项,使得目标记录可以容纳更多的信息量。接收端在收到第一记录之后,如果判断第一记录缺少特定数据项,则默认该特定数据项中的数值没有更新,无需对其进行替换。
可选地,发送端可以利用目标记录对本地保存的历史记录进行更新,以便下次传输时使用。这样一来,如果当前记录中的某条记录没有被选入目标记录,则该记录下次被选入目标记录的概率就会增大,从而使得各个记录被传输的概率不至偏差过大。
可选地,在接收端传输目标记录之前,可以先对目标记录进行压缩(采用通用压缩方式),以降低目标记录的数据量。
待发送的记录中经常包含大量的时间记录。以表一为例,设备列表中的 设备号与提交时间构成各个被检测设备的时间记录,如下:
(2018-05-10 11:21:42,1568)
(2018-05-10 11:22:01,1329)
(2018-05-10 11:20:01,3421)
(2018-05-10 11:20:23,4560)
其中,“1568”,“1329”,“3421”,“4560”为不同设备的设备号;“2018-05-10 11:21:42”,“2018-05-10 11:22:01”,“2018-05-10 11:20:01”,“2018-05-10 11:20:23”分别为上述设备对应的时间(运行状态的更新时间)。
时间记录的形式有多种,以上仅是一个举例。常见的时间记录通常包括两个基本元素:时间以及该时间所属对象的对象标识符。时间记录中的时间和对象标识符的含义会随着应用场合的不同而有所不同,本公开实施例对此并不限定。例如,在设备运行状态的监控系统中,时间记录中的时间可以指被监控的设备的运行状态的更新时间,时间记录中的对象标识符可以指被监控设备的设备号。
在上述示例中,时间记录(2018-05-10 11:22:33,1568)中的“1568”即为该时间记录的对象标识符,“2018-05-10 11:22:33”即为该对象标识符对应的时间。
假设设备列表的更新频率为15秒,则服务器103每天会产生大量的时间记录,则成千上万条的时间记录的传输会占用大量的网络资源。
对于同一数据集(如列表)中的时间记录和其他记录,可以分开处理,其他记录可以直接发送至接收端(或者采用其他方式进行压缩后发送至接收端),时间记录可以采用下文中的图4-图9描述的方式进行压缩后,再传输至接收端。
如图4所示,在步骤S420,将多条原始时间记录合并成一条目标时间记录。其中,多条原始时间记录中的不同对象标识符对应不同时间,目标时间记录中的各个对象标识符对应同一时间。
在步骤S440,向接收端传输该目标时间记录。
由于多条原始时间记录中的对象标识符对应不同的时间,因此,采用相关技术对该多条原始时间记录压缩的效果有限。本公开实施例相当于修改了多条原始记录中的部分或全部原始记录中的时间,使得修改后的时间记录中的时间变成同一时间,从而可以将这些修改后的时间记录合并在一起,形成一条目标时间记录。本公开试实施例可以有效降低时间记录的传输过程对网络资源(如网络带宽)或数据流量的消耗,使得时间记录能够快速、准确地传输至接收端。
在一些实施例中,原始时间记录可以为单对象时间记录(即原始时间记录可以包括一个对象标识符),合并后的目标时间记录可以为多对象时间记录(即目标时间记录可以包括多个对象标识符)。
目标时间记录中的对象标识符可以是该多条原始时间记录中的对象标识符,也可以是能够索引到该多条原始时间记录中的对象标识符的其他对象标识符,本公开实施例对此并不限定。
举例说明,假设多条原始时间记录为相对历史时间记录被更新的时间记录,则目标时间记录中的对象标识符可以是该多条原始时间记录的对象标识符,也可以是相对历史时间记录未被更新的时间记录的对象标识符。例如,当相对历史时间记录被更新的时间记录中的对象标识符的数量大于相对历史时间记录未被更新的时间记录中的对象标识符的数量时,可以将目标时间记录中的对象标识符设置为相对历史时间记录未被更新的时间记录中的对象标识符。由于相对历史时间记录被更新的时间记录中的对象标识符的数量大于相对历史时间记录未被更新的时间记录中的对象标识符的数量,在目标时间记录中记录相对历史时间记录未被更新的时间记录中的对象标识符,既可以通过反算的方式索引到相对历史时间记录被更新的时间记录的对象标识符,也可以降低时间记录的数据量。这里提及的历史时间记录可以是之前已经获取到的时间记录,或者之前已经发送至接收端的时间记录。例如,历史时间记录可以是前一次发送给接收端的时间记录。
步骤S420的实现方式可以有多种,本公开实施例对此并不限定。作为一个示例,可以从多条原始时间记录中选取一条时间记录,并以选取出的时间记录的时间为基准时间,将该多条原始时间记录中的其余原始时间记录的时 间均调整成该基准时间。
作为另一个示例,如图5所示,可以利用步骤S422-S424将该多条原始时间记录合并成一条目标时间记录。
在步骤S422中,对多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录。
原始时间记录的时间精度可以为第一时间精度,中间时间记录的时间精度可以为第二时间精度。其中,第二时间精度小于第一时间精度。
本公开实施例对第二时间精度的设置方式不做限定。例如,第一时间精度为“1秒”,则可以将第二时间精度设置为“1分钟”或“30秒”。
可选地,在一些实施例中,假设原始时间记录是按照一定周期更新的时间记录,则第二时间精度对应的时长可以设置为大于原始时间记录的更新周期。
第二时间精度对应的时长大于原始时间记录的更新周期时,经过精度调整后得到的中间时间记录要么与更新前的时间记录保持不变,要么被调整至同一时间,从而使得大部分甚至全部中间时间记录可以被合并至一条目标时间记录,很大程度地降低时间记录的数据量。
例如,假设原始时间记录每隔40秒更新一次,如果第二时间精度大于40秒(比如为1分钟),则调整后的中间时间记录的时间与更新前的时间记录相比要么保持不变,要么被调整至下一分钟。
该调整可以是按照第二时间精度对原始时间记录的时间进行舍入处理,或者,可以是按照第二时间精度对原始时间记录的时间进行只舍不如处理,或者,可以是按照第二时间精度对原始时间记录的时间进行只入不舍处理,本公开实施例对此并不限定。
在步骤S424中,将多条中间时间记录合并成目标时间记录。
举例说明,假设待处理的原始时间记录包括如下时间记录:
(2018-05-10 11:21:42,1568)
(2018-05-10 11:22:01,1329)
(2018-05-10 11:20:01,3421)
(2018-05-10 11:20:23,4560)
上述待处理的原始时间记录的时间精度为“秒”(对应于上文提及的第一时间精度),为了使得更多的时间记录可以合并在一起,可以对原始时间记录的时间精度进行舍入处理,使得所有时间记录的时间精度保留至“分钟”(对应于上文提及的第二时间精度),得到如下中间时间记录:
(2018-05-10 11:22:00,1568)
(2018-05-10 11:22:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:20:00,4560)
上述中间时间记录中,前两条中间时间记录对应同一时间“2018-05-10 11:22:00”,后两条中间时间记录对应同一时间“2018-05-10 11:20:00”。
接着,可以将对应时间相同的中间时间记录合并成一条目标时间记录,得到如下两条目标时间记录:
(2018-05-10 11:22:00,{1329,1568});
(2018-05-10 11:20:00,{3421,4560})。
本公开实施例能够降低时间记录的数据量,从而减轻时间记录对存储资源的消耗。
在通过网络传输时间记录的场景中,如果时间记录会实时更新,发送端通常会先将初始的时间记录传输至接收端,这一过程可以称为时间记录的首次传输。然后,当时间记录被更新时,发送端会将更新后的时间记录再次传输至接收端,这一过程可以称为时间记录的再次传输或更新传输。前文中的图2以设备列表为例,给出时间记录的首次传输和再次传输的一个示例,详细描述可以参见前文。
无论是时间记录的首次传输,还是时间记录的再次传输,都可以按照图4所示的方式进行。对于再次传输,发送端可以按照与首次传输相同的方式传输,即向接收端传输完整的时间记录。或者,发送端可以向接收端传输相 对历史时间记录被更新的时间记录,而不传输相对历史记录未被更新的时间记录。此外,发送端还可以向接收端传输新增的时间记录和被删除的时间记录中的一种或多种。
可选地,向接收端传输的被删除的时间记录可以包括对象标识符,而不包括时间,以降低待传输的数据量。
下面结合图6,对时间记录的首次传输过程进行更为详细的举例说明。其中,图6的步骤由发送端执行。
在步骤S602,对待传输的原始时间记录中的时间进行舍入处理。
例如,假设接收端可接受的时间误差为一分钟,则可以对原始时间记录中的时间的秒数进行舍入处理,保留到分钟这一精度级别。或者,如果接收端可接受的时间误差为30秒,则可以对原始时间记录中的时间的秒数进行舍入处理,保留到30秒这一精度级别。
假设待传输的原始时间记录如下:
(2018-05-10 11:21:42,1568)
(2018-05-10 11:22:01,1329)
(2018-05-10 11:20:01,3421)
(2018-05-10 11:20:23,4560)
将原始时间记录中的时间保留至分钟这一精度级别之后,得到中间时间记录:
(2018-05-10 11:22:00,1568)
(2018-05-10 11:22:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:20:00,4560)
在步骤S604,将时间相同的中间时间记录合并,得到一条或多条目标时间记录。
例如,假设中间时间记录如下:
(2018-05-10 11:22:00,1568)
(2018-05-10 11:22:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:20:00,4560)
(2018-05-10 11:30:00,2356)
则合并后得到的目标时间记录如下:
(2018-05-10 11:22:00,{1329,1568})
(2018-05-10 11:20:00,{3421,4560})
(2018-05-10 11:30:00,2356)
在步骤S606,将目标时间记录发送给接收端。可以看出,与待传输的原始时间记录相比,传输目标时间记录使得待传输的时间记录的数据量被很大程度地缩减了。
对于接收端而言,将包含多个对象标识符的目标时间记录还原成单对象的时间记录即可。
下面结合图7至图8,对时间记录的再次传输过程进行更为详细的举例说明。其中,图7的流程由发送端执行,图8的流程由接收端执行。
在步骤S702,对待传输的原始时间记录进行舍入处理。
假设待传输的原始时间记录为:
(2018-05-10 11:23:15,340)
(2018-05-10 11:23:21,1568)
(2018-05-10 11:22:57,1329)
(2018-05-10 11:20:03,3421)
(2018-05-10 11:23:09,4560)
可以将待传输的原始时间记录进行舍入处理,使得这些时间记录中的时间精确到分钟,得到:
(2018-05-10 11:23:00,340)
(2018-05-10 11:23:00,1568)
(2018-05-10 11:23:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:23:00,4560)。
在步骤S704,将舍入处理后的时间记录分成A、B、C和D共4组。
A:相对历史时间记录新增的时间记录;
B:相对历史时间记录被删除的时间记录;
C:相对历史时间记录被更新的时间记录;
D:相对历史时间记录未更新的时间记录。
在本示例中,历史时间记录指的是前一次传输的时间记录,但本公开实施例不限于此,发送端可以将之前传输的任意一次时间记录作为历史时间记录,只要收发两端预先协商好即可。
假设历史时间记录为:
(2018-05-10 11:22:00,1568)
(2018-05-10 11:22:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:20:00,4560)
(2018-05-10 11:30:00,2356)
对比历史时间记录和经过步骤S702得到的舍入处理的时间记录,可以得到如下四组时间记录:
A=(2018-05-10 11:23:00,340);
B=(2018-05-10 11:30:00,2356);
C=(2018-05-10 11:23:00,1568),(2018-05-10 11:23:00,1329),(2018-05-10 11:23:00,4560);
D=(2018-05-10 11:20:00,3421)。
在步骤S706,提取B中的时间记录的所有对象标识符组成B’。B’例如可以采用“-{b1,b2,b3,...}”的形式表示,其中b1、b2、b3为对象标识符,“-”表示删除。这种表示方式省略了被删除的时间记录的时间的传输,可以降低待传输的时间记录的数据量。
例如,按照步骤S706对B=(2018-05-10 11:30:00,2356)处理,可以得到B’=-{2356}。
在步骤S708,对A和C的时间记录按照图6所示的步骤进行处理,得到A’和C’。
例如,按照步骤S708对A=(2018-05-10 11:23:00,340)和C=(2018-05-10 11:23:00,1568),(2018-05-10 11:23:00,1329),(2018-05-10 11:23:00,4560)处理,可以得到:
A’=(2018-05-10 11:23:00,340)。
C’=(2018-05-10 11:23:00,{1568,1329,4560})。
在步骤S710,若C’包含一条时间记录,则跳到步骤S712。若C’包含多条时间记录跳到步骤S720。
例如,C’=(2018-05-10 11:23:00,{1568,1329,4560}),其包含一条时间记录,接下来跳转到步骤S712。
在步骤S712,提取C’中时间记录中的时间,记为T;并提取该时间记录包含的对象标识符,记为O1。
例如,C’=(2018-05-10 11:23:00,{1568,1329,4560}),执行步骤S712之后,得到如下结果:
T=2018-05-10 11:23:00;
O1={1568,1329,4560}。
在步骤S714,提取D中的时间记录所包含的对象标识符,记为O2。
例如,D=(2018-05-10 11:20:00,3421),则经过步骤S714之后,得到:O2={3421}。
在步骤S716,通过比较O1和O2中的对象标识符的数量生成目标时间记录。若O1中的对象标识符的数量少于O2中的对象标识符的数量,则生成一条目标时间记录R=(T,O1);否则,生成目标时间记录R=(T,-O2)。
例如,对比O2={3421}和O1={1568,1329,4560}可知,O2中的对象标识符的数量小于O1中的对象标识符的数量,则经过步骤S716得到的目标时间记录R=(2018-05-10 11:23:00,-{3421})。
在步骤S718,将A’、B’、和R传输至接收端。
因此,经过步骤S718,发送端向接收端传输如下时间记录:
A’=(2018-05-10 11:23:00,340);
B’=-{2356};
R=(2018-05-10 11:23:00,-{3421})。
在步骤S720,将A’、B’和C’传输至接收端。
图8示出的是再次传输过程中的接收端的处理流程。
在步骤S802,若接受到B’,则将其包含的对象标识符对应的时间记录从历史时间记录中移除。
例如,假设前一次传输得到的时间记录(即历史时间记录)为:
(2018-05-10 11:22:00,1568)
(2018-05-10 11:22:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:20:00,4560)
(2018-05-10 11:30:00,2356)
本次接收到的时间记录如下:
A’=(2018-05-10 11:23:00,340);
B’=-{2356};
R=(2018-05-10 11:23:00,-{3421})。
经过步骤S802,可以将(2018-05-10 11:30:00,2356)从时间记录中移除,剩余的时间记录如下:
(2018-05-10 11:22:00,1568)
(2018-05-10 11:22:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:20:00,4560)。
在步骤S804,若接收到R,且R=(T,O1),则将O1包含的对象标识符对应的时间记录中的时间设为T。
在步骤S806,若接收到R,且R=(T,-O2),则将对象标识符不在O2内的时间记录的时间设为T。
例如,R=(2018-05-10 11:23:00,-{3421})的格式符合R=(T,-O2),因此,执行步骤S806,将历史时间记录中的对象标识符不为“3421”的时间记录的时间均设为“2018-05-10 11:23:00”,得到如下结果:
(2018-05-10 11:23:00,1568)
(2018-05-10 11:23:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:23:00,4560)
在步骤S808,若接收到C’,则将C’中的多对象时间记录展开为单对象时间记录,并更新到历史时间记录的对应位置。
在步骤S810,若接收到A’,则将A’中的多对象时间记录展开为单对象时间记录,并更新到目前已有的时间记录的对应位置。
例如,可以将A’=(2018-05-10 11:23:00,340)加入目前已有的时间记录中,得到如下结果:
(2018-05-10 11:23:00,1568)
(2018-05-10 11:23:00,1329)
(2018-05-10 11:20:00,3421)
(2018-05-10 11:23:00,4560)
(2018-05-10 11:23:00,340)。
上文主要采用“年-月-日小时:分钟:秒”的方式表示时间,并采用阿拉伯数字表示对象标识符,但本公开实施例不限于此。
例如,可以采用时间的数字表示法表示时间,如采用unix时间戳的方式表示时间。或者,可以采用二进制表示时间和对象标识符。
本公开实施例对时间记录的数据量进行了压缩,得到目标时间记录。在某些实施例中,还可以采用通用的压缩算法对目标时间记录再进行压缩,以更大程度地降低时间记录的数据量。
上文结合图1至图8,详细描述了本公开的方法实施例,下面结合图9至图10,详细描述本公开的装置实施例。方法实施例的描述与装置实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。
本公开实施例还提供一种传输记录的装置。如图9所示,所述装置900包括选取模块910和第一传输模块920。
选取模块910配置为根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录。
第一传输模块920配置为向接收端传输所述目标记录。
可选地,所述选取模块910配置为根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数量小于或等于第一预设阈值。
可选地,所述选取模块910配置为根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数据量小于或等于第二预设阈值。
可选地,所述目标记录包括删除了特定数据项的第一记录,其中所述第一记录与所述历史记录中的对应记录的所述特定数据项的取值相同。
可选地,所述目标记录为所述当前记录中的部分记录,所述当前记录还包括除所述部分记录之外的剩余记录,且所述部分记录与所述历史记录中的 对应记录的差异的最小值大于或等于所述剩余记录与所述历史记录中的对应记录的差异的最大值。
可选地,所述当前记录与所述历史记录中的对应记录的差异是基于所述当前记录与所述历史记录中的对应记录的目标数据项的差值确定的。
可选地,所述目标数据项包括多个数据项,所述当前记录与所述历史记录中的对应记录的差异为所述当前记录与所述历史记录中的对应记录的所述多个数据项的差值的加权和。
可选地,所述目标记录包括相对所述历史记录新增的记录和/或被删除的记录。
可选地,所述目标记录中的所述被删除的记录仅包含主字段。
可选地,所述第一传输模块920配置为对所述目标记录进行压缩,得到压缩数据;向所述接收端传输所述压缩数据。
可选地,所述装置900还可包括:处理模块,配置为将多条原始时间记录合并成一条目标时间记录,其中,所述多条原始时间记录中的不同对象标识符对应不同时间,所述目标时间记录中的各个对象标识符对应同一时间;第二传输模块,配置为向接收端发送所述目标时间记录。
可选地,所述处理模块包括:调整模块,配置为对所述多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录,所述原始时间记录的时间精度为第一时间精度,所述中间时间记录的时间精度为第二时间精度,其中所述第二时间精度小于所述第一时间精度;合并模块,配置为将所述多条中间时间记录合并成所述目标时间记录。
可选地,所述调整模块配置为按照所述第二时间精度,对所述多条原始时间记录中的时间进行舍入处理,得到所述多条中间时间记录。
可选地,所述第二时间精度对应的时长大于所述原始时间记录的更新周期。
可选地,所述多条原始时间记录为相对历史时间记录被更新的时间记录,所述目标时间记录中的对象标识符为相对所述历史时间记录未被更新的时间记录中的对象标识符,其中相对所述历史时间记录被更新的时间记录中的对 象标识符的数量大于相对所述历史时间记录未被更新的时间记录中的对象标识符的数量。
本公开实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述传输记录的方法。
本公开实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述传输记录的方法。
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
本公开实施例还提供了一种电子设备,其结构如图10所示,该电子设备包括:
至少一个处理器(processor)1010,图10中以一个处理器1010为例;和存储器(memory)1020,还可以包括通信接口(Communication Interface)1030和总线1040。其中,处理器1010、通信接口1030、存储器1020可以通过总线1040完成相互间的通信。通信接口1030可以用于信息传输。处理器1010可以调用存储器1020中的逻辑指令,以执行上述实施例的传输记录的方法。
此外,上述的存储器1020中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器1020作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器1010通过运行存储在存储器1020中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的传输记录的方法。
存储器1020可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器。
在一些实施例中,上文提及的当前记录可以是设备列表。该设备列表可以是“数字凭证”的处理设备。当所述数字凭证与数字货币相关或体现为数字货币时,所述数字凭证处理设备可以是数字货币挖矿机,所述数字货币可以是比特币等加密货币。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
当用于本申请中时,虽然术语“第一”、“第二”等可能会在本申请中使用以描述各元件,但这些元件不应受到这些术语的限制。这些术语仅用于将一个元件与另一个元件区别开。比如,在不改变描述的含义的情况下,第一元件可以叫做第二元件,并且同样第,第二元件可以叫做第一元件,只要所有出现的“第一元件”一致重命名并且所有出现的“第二元件”一致重命名即可。第一元件和第二元件都是元件,但可以不是相同的元件。
本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本公开实施例中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本公开实施例中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。
所描述的实施例中的各方面、实施方式、实现或特征能够单独使用或以任意组合的方式使用。所描述的实施例中的各方面可由软件、硬件或软硬件的结合实现。所描述的实施例也可以由存储有计算机可读代码的计算机可读 介质体现,该计算机可读代码包括可由至少一个计算装置执行的指令。所述计算机可读介质可与任何能够存储数据的数据存储装置相关联,该数据可由计算机系统读取。用于举例的计算机可读介质可以包括只读存储器、随机存取存储器、CD-ROM、HDD、DVD、磁带以及光数据存储装置等。所述计算机可读介质还可以分布于通过网络联接的计算机系统中,这样计算机可读代码就可以分布式存储并执行。
上述技术描述可参照附图,这些附图形成了本公开实施例的一部分,并且通过描述在附图中示出了依照所描述的实施例的实施方式。虽然这些实施例描述的足够详细以使本领域技术人员能够实现这些实施例,但这些实施例是非限制性的;这样就可以使用其它的实施例,并且在不脱离所描述的实施例的范围的情况下还可以做出变化。比如,流程图中所描述的操作顺序是非限制性的,因此在流程图中阐释并且根据流程图描述的两个或两个以上操作的顺序可以根据若干实施例进行改变。作为另一个例子,在若干实施例中,在流程图中阐释并且根据流程图描述的一个或一个以上操作是可选的,或是可删除的。另外,某些步骤或功能可以添加到所公开的实施例中,或两个以上的步骤顺序被置换。所有这些变化被认为包含在所公开的实施例以及权利要求中。
另外,上述技术描述中使用术语以提供所描述的实施例的透彻理解。然而,并不需要过于详细的细节以实现所描述的实施例。因此,实施例的上述描述是为了阐释和描述而呈现的。上述描述中所呈现的实施例以及根据这些实施例所公开的例子是单独提供的,以添加上下文并有助于理解所描述的实施例。上述说明书不用于做到无遗漏或将所描述的实施例限制到本公开的精确形式。根据上述教导,若干修改、选择适用以及变化是可行的。在某些情况下,没有详细描述为人所熟知的处理步骤以避免不必要地影响所描述的实施例。

Claims (33)

  1. 一种传输记录的方法,其特征在于,包括:
    根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录;
    向接收端传输所述目标记录。
  2. 根据权利要求1所述的方法,其特征在于,所述根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录,包括:
    根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数量小于或等于第一预设阈值。
  3. 根据权利要求1所述的方法,其特征在于,所述根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录,包括:
    根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数据量小于或等于第二预设阈值。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,所述目标记录包括删除了特定数据项的第一记录,其中所述第一记录与所述历史记录中的对应记录的所述特定数据项的取值相同。
  5. 根据权利要求1-4中任一项所述的方法,其特征在于,所述目标记录为所述当前记录中的部分记录,所述当前记录还包括除所述部分记录之外的剩余记录,且所述部分记录与所述历史记录中的对应记录的差异的最小值大于或等于所述剩余记录与所述历史记录中的对应记录的差异的最大值。
  6. 根据权利要求1-5中任一项所述的方法,其特征在于,所述当前记录与所述历史记录中的对应记录的差异是基于所述当前记录与所述历史记录中的对应记录的目标数据项的差值确定的。
  7. 根据权利要求6所述的方法,其特征在于,所述目标数据项包括多个数据项,所述当前记录与所述历史记录中的对应记录的差异为所述当前记录与所述历史记录中的对应记录的所述多个数据项的差值的加权和。
  8. 根据权利要求1-7中任一项所述的方法,其特征在于,所述目标记录 包括相对所述历史记录新增的记录和/或被删除的记录。
  9. 根据权利要求8所述的方法,其特征在于,所述目标记录中的所述被删除的记录仅包含主字段。
  10. 根据权利要求1-9中任一项所述的方法,其特征在于,所述向接收端传输所述目标记录,包括:
    对所述目标记录进行压缩,得到压缩数据;
    向所述接收端传输所述压缩数据。
  11. 根据权利要求1-10中任一项所述的方法,其特征在于,还包括:
    将多条原始时间记录合并成一条目标时间记录,其中,所述多条原始时间记录中的不同对象标识符对应不同时间,所述目标时间记录中的各个对象标识符对应同一时间;
    向接收端发送所述目标时间记录。
  12. 根据权利要求11所述的方法,其特征在于,所述将多条原始时间记录合并成一条目标时间记录,包括:
    对所述多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录,所述原始时间记录的时间精度为第一时间精度,所述中间时间记录的时间精度为第二时间精度,其中所述第二时间精度小于所述第一时间精度;
    将所述多条中间时间记录合并成所述目标时间记录。
  13. 根据权利要求12所述的方法,其特征在于,所述对所述多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录,包括:
    按照所述第二时间精度,对所述多条原始时间记录中的时间进行舍入处理,得到所述多条中间时间记录。
  14. 根据权利要求12或13所述的方法,其特征在于,所述第二时间精度对应的时长大于所述原始时间记录的更新周期。
  15. 根据权利要求11-14中任一项所述的方法,其特征在于,所述多条原始时间记录为相对历史时间记录被更新的时间记录,所述目标时间记录中的对象标识符为相对所述历史时间记录未被更新的时间记录中的对象标识符, 其中相对所述历史时间记录被更新的时间记录中的对象标识符的数量大于相对所述历史时间记录未被更新的时间记录中的对象标识符的数量。
  16. 一种传输记录的装置,其特征在于,包括:
    选取模块,配置为根据当前记录与历史记录中的对应记录的差异,从所述当前记录中选取目标记录;
    第一传输模块,配置为向接收端传输所述目标记录。
  17. 根据权利要求16所述的装置,其特征在于,所述选取模块配置为根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数量小于或等于第一预设阈值。
  18. 根据权利要求16所述的装置,其特征在于,所述选取模块配置为根据所述当前记录与所述历史记录中的对应记录的差异,从所述当前记录中选取所述目标记录,使得所述目标记录的数据量小于或等于第二预设阈值。
  19. 根据权利要求16-18中任一项所述的装置,其特征在于,所述目标记录包括删除了特定数据项的第一记录,其中所述第一记录与所述历史记录中的对应记录的所述特定数据项的取值相同。
  20. 根据权利要求16-19中任一项所述的装置,其特征在于,所述目标记录为所述当前记录中的部分记录,所述当前记录还包括除所述部分记录之外的剩余记录,且所述部分记录与所述历史记录中的对应记录的差异的最小值大于或等于所述剩余记录与所述历史记录中的对应记录的差异的最大值。
  21. 根据权利要求16-20中任一项所述的装置,其特征在于,所述当前记录与所述历史记录中的对应记录的差异是基于所述当前记录与所述历史记录中的对应记录的目标数据项的差值确定的。
  22. 根据权利要求21所述的装置,其特征在于,所述目标数据项包括多个数据项,所述当前记录与所述历史记录中的对应记录的差异为所述当前记录与所述历史记录中的对应记录的所述多个数据项的差值的加权和。
  23. 根据权利要求16-22中任一项所述的装置,其特征在于,所述目标记录包括相对所述历史记录新增的记录和/或被删除的记录。
  24. 根据权利要求23所述的装置,其特征在于,所述目标记录中的所述 被删除的记录仅包含主字段。
  25. 根据权利要求16-24中任一项所述的装置,其特征在于,所述第一传输模块配置为对所述目标记录进行压缩,得到压缩数据;向所述接收端传输所述压缩数据。
  26. 根据权利要求16-25中任一项所述的装置,其特征在于,还包括:
    处理模块,配置为将多条原始时间记录合并成一条目标时间记录,其中,所述多条原始时间记录中的不同对象标识符对应不同时间,所述目标时间记录中的各个对象标识符对应同一时间;
    第二传输模块,配置为向接收端发送所述目标时间记录。
  27. 根据权利要求26所述的装置,其特征在于,所述处理模块包括:
    调整模块,配置为对所述多条原始时间记录的时间精度进行调整,得到对应时间相同的多条中间时间记录,所述原始时间记录的时间精度为第一时间精度,所述中间时间记录的时间精度为第二时间精度,其中所述第二时间精度小于所述第一时间精度;
    合并模块,配置为将所述多条中间时间记录合并成所述目标时间记录。
  28. 根据权利要求27所述的装置,其特征在于,所述调整模块配置为按照所述第二时间精度,对所述多条原始时间记录中的时间进行舍入处理,得到所述多条中间时间记录。
  29. 根据权利要求27或28所述的装置,其特征在于,所述第二时间精度对应的时长大于所述原始时间记录的更新周期。
  30. 根据权利要求26-29中任一项所述的装置,其特征在于,所述多条原始时间记录为相对历史时间记录被更新的时间记录,所述目标时间记录中的对象标识符为相对所述历史时间记录未被更新的时间记录中的对象标识符,其中相对所述历史时间记录被更新的时间记录中的对象标识符的数量大于相对所述历史时间记录未被更新的时间记录中的对象标识符的数量。
  31. 一种电子设备,其特征在于,包括:
    至少一个处理器;以及
    与所述至少一个处理器通信连接的存储器;其中,
    所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器执行权利要求1-15任一项所述的方法。
  32. 一种计算机可读存储介质,其特征在于,存储有计算机可执行指令,所述计算机可执行指令设置为执行权利要求1-15任一项所述的方法。
  33. 一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行权利要求1-15任一项所述的方法。
PCT/CN2018/119222 2018-12-04 2018-12-04 传输记录的方法和装置 WO2020113435A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/CN2018/119222 WO2020113435A1 (zh) 2018-12-04 2018-12-04 传输记录的方法和装置
CN201880099958.7A CN113228595B (zh) 2018-12-04 2018-12-04 传输记录的方法和装置
EP18942182.9A EP3962024A4 (en) 2018-12-04 2018-12-04 RECORD TRANSMISSION METHOD AND DEVICE
US17/337,213 US20210286801A1 (en) 2018-12-04 2021-06-02 Record transmitting method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/119222 WO2020113435A1 (zh) 2018-12-04 2018-12-04 传输记录的方法和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/337,213 Continuation US20210286801A1 (en) 2018-12-04 2021-06-02 Record transmitting method and device

Publications (1)

Publication Number Publication Date
WO2020113435A1 true WO2020113435A1 (zh) 2020-06-11

Family

ID=70974879

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/119222 WO2020113435A1 (zh) 2018-12-04 2018-12-04 传输记录的方法和装置

Country Status (4)

Country Link
US (1) US20210286801A1 (zh)
EP (1) EP3962024A4 (zh)
CN (1) CN113228595B (zh)
WO (1) WO2020113435A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020113432A1 (zh) * 2018-12-04 2020-06-11 比特大陆科技有限公司 传输列表信息的方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061686A (en) * 1997-06-26 2000-05-09 Digital Equipment Corporation Updating a copy of a remote document stored in a local computer system
CN106453571A (zh) * 2016-10-19 2017-02-22 广东欧珀移动通信有限公司 一种数据迁移的方法及终端
CN107483631A (zh) * 2017-09-19 2017-12-15 山东大学 一种采用配置文件控制缓存实现移动互联网络服务访问的系统及方法
CN109104450A (zh) * 2017-06-21 2018-12-28 腾讯科技(北京)有限公司 文件发送、接收方法及其装置、计算机可读存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6460051B1 (en) * 1998-10-28 2002-10-01 Starfish Software, Inc. System and methods for synchronizing datasets in a communication environment having high-latency or other adverse characteristics
US7640363B2 (en) * 2005-02-16 2009-12-29 Microsoft Corporation Applications for remote differential compression
US7613739B2 (en) * 2005-11-17 2009-11-03 Research In Motion Limited Method and apparatus for synchronizing databases connected by wireless interface
US7747566B2 (en) * 2005-11-23 2010-06-29 Research In Motion Limited Method and apparatus for synchronizing databases connected by wireless interface
US8176475B2 (en) * 2006-10-31 2012-05-08 Oracle America, Inc. Method and apparatus for identifying instructions associated with execution events in a data space profiler
CN101193113A (zh) * 2006-11-29 2008-06-04 国际商业机器公司 内容响应和内容请求方法及内容响应器和内容请求器
CN101694392B (zh) * 2009-09-29 2015-03-18 北京四维图新科技股份有限公司 一种导航终端的地图更新方法、导航终端及系统
US8572022B2 (en) * 2010-03-02 2013-10-29 Microsoft Corporation Automatic synchronization conflict resolution
CN103631808B (zh) * 2012-08-24 2018-03-23 腾讯科技(深圳)有限公司 沟通记录排列方法和装置
US10019465B2 (en) * 2012-09-06 2018-07-10 Teradata Us, Inc. Compression of timing data of database systems and environments
CN103354560B (zh) * 2013-06-28 2017-05-17 广州市动景计算机科技有限公司 数据的分解同步方法及系统
CN103391442A (zh) * 2013-07-24 2013-11-13 佳都新太科技股份有限公司 一种基于区域划分、差异比较的视频图像快速传输压缩算法
WO2015100483A1 (en) * 2014-01-06 2015-07-09 Geodigital International Inc. Determining portions of a roadway model requiring updating
CN105530272B (zh) * 2014-09-29 2019-06-04 阿里巴巴集团控股有限公司 一种应用数据的同步方法和装置
US9509764B1 (en) * 2014-11-21 2016-11-29 Instart Logic, Inc. Updating cached web content
US10083203B2 (en) * 2015-08-11 2018-09-25 International Business Machines Corporation Reducing the cost of update, delete, and append-only insert operations in a database
GB201615748D0 (en) * 2016-09-15 2016-11-02 Gb Gas Holdings Ltd System for importing data into a data repository
CN106874403A (zh) * 2017-01-18 2017-06-20 武汉天喻教育科技有限公司 对压缩文件进行差异同步的系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061686A (en) * 1997-06-26 2000-05-09 Digital Equipment Corporation Updating a copy of a remote document stored in a local computer system
CN106453571A (zh) * 2016-10-19 2017-02-22 广东欧珀移动通信有限公司 一种数据迁移的方法及终端
CN109104450A (zh) * 2017-06-21 2018-12-28 腾讯科技(北京)有限公司 文件发送、接收方法及其装置、计算机可读存储介质
CN107483631A (zh) * 2017-09-19 2017-12-15 山东大学 一种采用配置文件控制缓存实现移动互联网络服务访问的系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3962024A4 *

Also Published As

Publication number Publication date
EP3962024A1 (en) 2022-03-02
CN113228595A (zh) 2021-08-06
US20210286801A1 (en) 2021-09-16
EP3962024A4 (en) 2022-06-15
CN113228595B (zh) 2024-05-14

Similar Documents

Publication Publication Date Title
US11962649B2 (en) Methods and systems for processing data requests
KR101871383B1 (ko) 계층적 데이터 구조의 노드 상에서 재귀적 이벤트 리스너를 사용하기 위한 방법 및 시스템
US20130318208A1 (en) Dynamic package creation for predictive page load optimization
US20160048430A1 (en) Method of operating a shared nothing cluster system
US11032161B2 (en) Determining optimum software update transmission parameters
CN110442762B (zh) 基于云平台大数据的大数据处理方法
US20180054470A1 (en) Streaming media resource downloading method and apparatus, and terminal device
US10997000B1 (en) Event publishing system for heterogeneous events
GB2572537A (en) Generating or obtaining an updated neural network
US10560515B2 (en) Method and apparatus for transmitting and receiving information between servers in contents transmission network system
WO2020113435A1 (zh) 传输记录的方法和装置
CN109274720B (zh) 一种传输数据的方法和系统
WO2020113434A1 (zh) 处理时间记录的方法和装置
US11838349B2 (en) Method and device for transmitting list information
CN112269726A (zh) 一种数据处理方法及装置
US20180074797A1 (en) Transform a data object in a meta model based on a generic type
WO2022257124A1 (en) Adaptive compression
US20180006895A1 (en) Constraint Based Controlled Seeding
CN113641909A (zh) 信息推送方法、装置、电子设备和计算机可读介质
CN111314407B (zh) 用于处理元数据的通信设备和通信方法
US11030174B1 (en) Quantized time range indexing for out of order event collections
CN114827159B (zh) 网络请求路径优化方法、装置、设备和存储介质
CN116561229B (zh) 一种基于图神经网络的数据同步方法、装置及存储介质
KR101973537B1 (ko) 하둡 분산 파일 시스템에서의 하트비트 교환 주기 관리 장치 및 방법
CN113726832B (zh) 分布式存储系统的数据存储方法、装置、系统及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18942182

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18942182

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018942182

Country of ref document: EP

Effective date: 20210705