WO2023160276A1 - 一种数据处理方法、装置、计算机设备以及可读存储介质 - Google Patents
一种数据处理方法、装置、计算机设备以及可读存储介质 Download PDFInfo
- Publication number
- WO2023160276A1 WO2023160276A1 PCT/CN2023/071183 CN2023071183W WO2023160276A1 WO 2023160276 A1 WO2023160276 A1 WO 2023160276A1 CN 2023071183 W CN2023071183 W CN 2023071183W WO 2023160276 A1 WO2023160276 A1 WO 2023160276A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- database
- uploaded
- data packets
- cache queue
- 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.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/31—Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Definitions
- the present application relates to the field of computer technology, and in particular to a data processing method, device, computer equipment and readable storage medium.
- the communication between the vehicle central control system and the outside world is limited by the network environment, memory, disk space, and processing power.
- the communication between the vehicle central control system and the outside world is limited by the network environment, memory, disk space, and processing power.
- the embodiments of the present application provide a data processing method, device, computer equipment, and readable storage medium, which can improve the utilization rate of network resources, and can increase the success rate of uploading data packets.
- the embodiment of the present application provides a data processing method, which is applied to a vehicle-mounted central control device, and a database and a cache queue are set in the vehicle-mounted central control device.
- the method includes:
- the second data packet is deleted from the database.
- An embodiment of the present application provides a data processing device, including:
- the database polling module is used to poll the data messages in the database to obtain the data message set to be added, and add the data message set to be added to the cache queue;
- the queue polling module is used to poll the buffer queue to obtain a set of data messages to be uploaded, and the wireless communication connection of the vehicle-mounted central control device will perform upload processing on the set of data messages to be uploaded;
- a data adding module configured to add the first data message to the database in response to the first data message in the set of data messages to be uploaded meeting the continuous upload failure condition;
- the data deletion module is configured to delete the second data message from the database in response to the second data message in the set of data messages to be uploaded is successfully uploaded to the server and the second data message exists in the database.
- An embodiment of the present application provides a computer device, including: a processor and a memory;
- the processor is connected to the memory, wherein the memory is used to store a computer program, and when the computer program is executed by the processor, the computer device executes the method provided by the embodiment of the present application.
- An embodiment of the present application provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and the computer program is suitable for being loaded and executed by a processor, so that a computer device having the processor executes the embodiment of the present application provided method.
- An embodiment of the present application provides a computer program product or computer program, where the computer program product or computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium.
- the processor of the computer device reads the computer instruction from the computer-readable storage medium, and the processor executes the computer instruction, so that the computer device executes the method provided by the embodiment of the present application.
- the computer device can poll the data packets in the database to obtain the set of data packets to be added, add the set of data packets to be added to the cache queue, and then poll the cache queue to obtain the set of data packets to be added.
- the computer device may add the first data message to the database; in response to the second data message in the set of data messages to be uploaded If the message is successfully uploaded to the server, and the second data message exists in the database, the computer device can delete the second data message from the database.
- the data packets to be uploaded in the data packet collection to be uploaded can be directly read from the memory, avoiding reading the data packets from the disk, thereby Improve the upload efficiency of data packets.
- the first data packet when the data packets in the data packet set to be uploaded are uploaded, in response to the first data packet in the data packet set to be uploaded meeting the continuous upload failure condition, the first data packet can be suspended , and instead store the first data message in the database, so as to avoid repeated occupation of network resources when the network environment is not good, thereby improving the utilization rate of network resources, and when the subsequent network environment improves, through By polling the database again, there is still a chance to successfully upload the first data message, thereby increasing the success rate of uploading the data message.
- FIG. 1 is a schematic structural diagram of a network architecture provided by an embodiment of the present application.
- FIG. 2 is a schematic diagram of a scenario for data interaction provided by an embodiment of the present application
- Fig. 3 is a schematic flow chart of a data processing method provided by an embodiment of the present application.
- FIG. 4 is a schematic flow diagram of data interaction provided by an embodiment of the present application.
- FIG. 5 is a schematic flow diagram of a data processing method provided in an embodiment of the present application.
- FIG. 6 is a schematic flow chart of data reporting provided by an embodiment of the present application.
- FIG. 7 is a schematic structural diagram of a data processing device provided in an embodiment of the present application.
- Fig. 8 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
- SDK Software Development Kit
- API Application Programming Interface
- FIG. 1 is a schematic structural diagram of a network architecture provided by an embodiment of the present application.
- the network architecture may include an access server 2000, a data server cluster and a terminal device cluster.
- the terminal device cluster may specifically include one or more terminal devices, and the number of terminal devices in the terminal device cluster will not be limited here.
- the plurality of terminal devices may specifically include terminal device 3000a, terminal device 3000b, terminal device 3000c, ..., terminal device 3000n; terminal device 3000a, terminal device 3000b, terminal device 3000c, ..., terminal device 3000n may be respectively
- a direct or indirect network connection is made with the access server 2000 through wired or wireless communication, so that each terminal device can perform data interaction with the access server 2000 through the network connection.
- Each terminal device in the terminal device cluster can include: smart phones, tablet computers, laptops, desktop computers, smart home appliances, wearable devices, vehicle-mounted terminals (such as vehicle-mounted central control equipment), workshop testing terminals, etc. with data processing functions smart terminal. It should be understood that each terminal device in the terminal device cluster as shown in Figure 1 can be integrated with an application client installed. Incoming server 2000 performs data exchange. Wherein, the application client may be an independent client, or an embedded sub-client integrated in a certain client, which is not limited in this application.
- the application clients may include browsers, vehicle clients, smart home clients, entertainment clients, multimedia clients (eg, video clients), social clients, information clients, and other clients with data processing functions.
- the vehicle-mounted terminal can be an intelligent terminal in a smart traffic scene
- the application client on the vehicle-mounted terminal can be the above-mentioned vehicle-mounted client
- the operating system (Operating System, OS for short) in the vehicle-mounted terminal can be a vehicle-mounted Linux OS
- the vehicle-mounted Android (Android) OS may also be used.
- the vehicle-mounted Linux OS is a Linux operating system running on a car
- the vehicle-mounted Android OS is a kind of Android operating system running on a car.
- the access server 2000 can be an independent physical server, or a server cluster or a distributed system composed of multiple physical servers, and can also provide cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud Cloud servers for basic cloud computing services such as communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.
- the data server cluster may include one or more data servers, and the number of data servers in the data server cluster is not limited here.
- a plurality of data servers specifically may include data server 4000a, data server 4000b, ..., data server 4000m, data server 4000a, data server 4000b, ..., data server 4000m can respectively communicate with access server 2000 through wired or
- the wireless communication mode is directly or indirectly connected to a network, so that each data server can perform data interaction with the access server 2000 through the network connection.
- the data server in the data server cluster shown in Figure 1 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or provide cloud services, cloud databases, cloud computing, cloud Cloud servers for basic cloud computing services such as functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.
- This application can provide information support for the intelligent transportation system by uploading the data message associated with the vehicle to the intelligent transportation system, so as to realize services such as transportation and automatic driving.
- Intelligent Traffic System Intelligent Traffic System
- Intelligent Transportation System Intelligent Transportation System
- advanced science and technology information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory , operations research, artificial intelligence, etc.
- advanced science and technology information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory , operations research, artificial intelligence, etc.
- Integrated transportation system for energy for energy.
- the terminal device described in this embodiment of the present application may be a terminal device selected from the multiple terminal devices shown in FIG. 1 .
- the embodiment of the present application may use the vehicle-mounted terminal device 3000a shown in FIG. 1 as the terminal device described in the embodiment of the present application.
- An application client with a data processing function may be integrated in the terminal device.
- the terminal device can perform data interaction with the access server 2000 through the application client.
- the terminal device may be a terminal device that needs to upload data packets.
- the terminal device can upload the data packets to the access server 2000, so that the access server 2000 distributes different data packets to different data servers.
- the data server also referred to as the target data server
- the data server described in the embodiment of the present application may be a data server selected from the multiple data servers described in FIG. 1 .
- the data server described in this embodiment of the present application may be the data server 4000a described in FIG. 1 .
- the data server can receive the data message uploaded by the terminal device through the access server 2000 .
- the number of application clients in the terminal device may be one or more, and one or more terminal devices may connect to one access server 2000 .
- the terminal device can forward data packets to different data servers, without adapting the terminal device according to the requirements of the data server, and accessing a new data server without updating the terminal device, so as to meet the Requirements of different terminal devices and different application clients for data servers.
- the access server 2000 may distribute multiple data packets corresponding to one application client to different data servers. For example, the access server 2000 may forward the data packet B11 to the data server F11, and forward the data packet B12 to the data server F12.
- the data packet B11 and the data packet B12 here may be data packets corresponding to the same application client.
- the access server 2000 may also distribute data packets corresponding to multiple application clients to different data servers. For example, the access server 2000 may forward the data packet B21 to the data server F21, and the access server 2000 may forward the data packet B22 to the data server F22.
- the data packet B21 and the data packet B22 may be data packets corresponding to different application clients.
- the access server 2000 may also distribute data packets corresponding to multiple terminal devices to different data servers. For example, the access server 2000 may forward the data packet B31 to the data server F31, and forward the data packet B32 to the data server F32.
- the data packet B31 and the data packet B32 may be data packets corresponding to different terminal devices.
- the embodiment of the present application provides a data reporting solution for an application client in a terminal device.
- the data reporting scheme can provide a caching mechanism.
- the database and the cache queue involved in the caching mechanism can store data packets. By polling the data packets in the database, a set of data packets to be added can be obtained. By polling the data packets in the cache queue, the set of data packets to be uploaded can be obtained.
- the upload processing of the data packets in the data packet set to be uploaded can be realized, that is, the data packets are uploaded to the access server 2000, so that the access server 2000 distributes the data packets In this way, whether the data packets in the data packet set to be uploaded are successfully uploaded or the data packets in the data packet set to be uploaded fail to be uploaded, the embodiment of the present application has a complete processing flow.
- the data uploaded by the application client may be collectively referred to as service data
- the data obtained after packetizing the service data may be collectively referred to as data packets.
- FIG. 2 is a schematic diagram of a data interaction scenario provided by an embodiment of the present application.
- the server 20a may be the access server 2000 in the above-mentioned embodiment corresponding to FIG. 1
- the terminal device 20b may be any terminal device in the terminal device cluster in the above-mentioned embodiment corresponding to FIG.
- the server 30b can be any data server in the data server cluster of the above-mentioned embodiment corresponding to FIG.
- the data server 4000a shown in 1 is used as the server 30a, and the data server 4000b shown in FIG. The specific process of interaction.
- the terminal device 20b may include a database 21a and a cache queue 22a.
- the same or different data packets may be stored in the database 21a and the cache queue 22a.
- the embodiment of the present application does not limit the number of data packets in the database 21a and the cache queue 22a.
- the implementation of this application does not limit the capacity of the database 21a and the cache queue 22a.
- the data packet X1, data packet B1, and data packet B2 are included in the database 21a as an example
- the data packet X1, data packet X2, and data packet X3 are included in the cache queue 22a as an example.
- the capacity of the buffer queue 22a is 6 as an example for illustration.
- the terminal device 20b can poll the database 21a and the cache queue 22a respectively.
- the polling periods corresponding to the database 21a and the cache queue 22a may be the same or different.
- the embodiment of the present application does not limit the duration of the polling cycles respectively corresponding to the database 21a and the cache queue 22a.
- Should be polled can mean that the terminal device regularly sends inquiries to the database or the cache queue, asking whether the database or the cache queue needs its services, and provides the service as soon as it is available, and then continues to repeat itself.
- the service here may mean that the terminal device reads a certain number of data packets from the database or cache queue according to a certain regulation, and then takes the read data packets as the polling result.
- the polling result corresponding to the database may be a set of data packets to be added, and the polling result corresponding to the cache queue may be a set of data packets to be uploaded.
- the terminal device 20b can poll the database 21a first, and then poll the cache queue 22a, and the terminal device 20b can also poll the cache queue 22a first. Perform polling, and then poll the database 21a, and the terminal device 20b may also poll the database 21a and the cache queue 22a at the same time.
- the terminal device 20b can poll the database 21a according to the polling period corresponding to the database 21a, and poll the cache queue 22a according to the polling period corresponding to the cache queue 22a. 22a performs polling, and the polling of the two does not interfere with each other.
- the terminal device 20b polls the database 21a first, and then polls the cache queue 22a as an example for illustration.
- the terminal device 20b may poll the database 21a to obtain a set of data packets to be added 21b, and add the set of data packets to be added 21b to the cache queue 22a.
- the embodiment of the present application does not limit the number of data packets in the data packet set 21b to be added.
- the message quantity of the data message in the data message set 21b to be added can be less than or equal to the position quantity of the idle position of cache queue 22a (that is, the capacity of cache queue 22a minus the message of the data message in cache queue 22a Quantity) and a positive integer less than or equal to the number of data packets in the database 21a.
- the number of data packets in the data packet set 21b to be added is 2 as an example for illustration, and the 2 data packets may specifically include data packets B1 and data packets B2.
- the terminal device 20b can use the cache queue 22a added with the data message B1 and the data message B2 as the cache queue 22b, that is, the cache queue 22b can include the data message X1, the data message X2, the data message X3, the data message B1 and data message B2 are further polled from the cache queue 22b to obtain the data message set 21c to be uploaded, and the data message set 21c to be uploaded is uploaded.
- the embodiment of the present application does not limit the number of data packets in the data packet set 21c to be uploaded.
- the data packets in the data packet set 21c to be uploaded can be a positive integer less than or equal to the number of packets of the data packets in the cache queue 22b.
- the number of data packets in the data packet set 21c to be uploaded is 2 as an example for illustration, and the 2 data packets may specifically include data packet X1 and data packet X2.
- the terminal device 20b can use the cache queue 22b polling the data message X1 and the data message X2 as the cache queue 22c (not shown in the figure), that is, the cache queue 22c can include the data message X3, the data message B1 and datagram B2.
- the terminal device 20b may add the data message X2 to the database 21a in response to determining that the data message X2 satisfies the continuous upload failure condition, so as to re-read the data message X2 in the database 21a into the cache queue in a subsequent step, so as to implement Upload processing of the data message X2; the terminal device 20b may respond to determining that the upload of the data message X1 is successful, upload the data message X1 to the server 20a, so that the server 20a distributes the data message X1 to different data servers, for example, The server 20a can distribute the data message X1 to the server 30a.
- the terminal device 20b may determine whether the data packet X1 exists in the database 21a, and delete the data packet X1 from the database 21a in response to the existence of the data packet X1 in the database 21a.
- the database 21a may include the data packet X2, the data packet B1 and the data packet B2.
- the terminal device 20b can poll the database 21a and the cache queue 22c respectively again. There is a fixed time interval (also referred to as a polling cycle duration) between this polling and the previous polling. The embodiment of the present application does not limit the duration of the time interval here, for example, the time interval here may be 5 seconds. Wherein, the terminal device 20b may poll the database 21a to obtain a new set of data packets to be added, and add the new set of data packets to be added to the cache queue 22c.
- a polling cycle duration also referred to as a polling cycle duration
- the new set of data messages to be added can include data message X2, and the cache queue 22c (which can be called the latest cache queue (not shown in the figure)) added with data message X2 can include data message X3, data Telegram B1, data telegram B2 and data telegram X2.
- the terminal device 20b can obtain a new set of data packets to be uploaded by polling from the latest cache queue.
- the new set of data packets to be uploaded may include data packet X3 and data packet B1, and at this time, the new set of data packets to be uploaded may be removed from the latest cache queue.
- the terminal device 20b in response to the successful upload of the data message X3, can upload the data message X3 to the access server 20a, so that the access server 20a distributes the data message X3 to different data servers.
- the access server 20a may distribute the data packet X3 to the data server 30b.
- the terminal device 20b can determine whether the data packet X3 exists in the database 21a, and in response to the absence of the data packet X3 in the database 21a, the terminal device 20b does not need to perform other operations.
- the embodiment of the present application can provide a caching mechanism, which can use the caching queue to store the data packets to be uploaded (that is, the data packets in the data packet collection to be uploaded), and then process the data packets to be uploaded.
- the data packets in the packet set are uploaded, different responses can be made to the success or failure of the upload.
- the data message uploaded successfully the data message uploaded successfully can be deleted from the database when the data message uploaded successfully exists in the database;
- the data packets that fail to be uploaded are added to the database. Therefore, the different responses made by the terminal device to the successfully uploaded data packets and the failedly uploaded data packets can improve the upload efficiency of the data packets while ensuring the upload success rate of the data packets.
- FIG. 3 is a schematic flowchart of a data processing method provided by an embodiment of the present application.
- the method may be executed by a server, may also be executed by a terminal device, and may also be executed jointly by the server and the terminal device.
- the server may be the server 20a in the implementation corresponding to FIG. 2 above
- the terminal device may be the terminal device 20b in the implementation corresponding to FIG. 2 above.
- the method is executed by a terminal device as an example for description.
- the terminal device may be a vehicle-mounted central control device.
- the vehicle central control device is provided with a database and a cache queue.
- the database can be set in the disk (for example, hard disk) of the vehicle-mounted central control device, and the cache queue can be set in the memory of the vehicle-mounted central control device.
- the data processing method may include the following steps S101-S104.
- Step S101 poll the data packets in the database to obtain a set of data packets to be added, and add the set of data packets to be added to a cache queue.
- the terminal device can call the database thread to poll the data packets in the database through the reporting component, and obtain the set of data packets to be added.
- the terminal device can send the set of data packets to be added to the reporting component through the database thread, and add the set of data packets to be added to the cache queue through the reporting component.
- the reporting component may also include a reporting thread, and the terminal device may send the set of data packets to be added to the reporting thread through the database thread, and then add the set of data packets to be added to the cache queue through the reporting thread.
- the reporting thread here can be used to store data packets in the cache queue and read data packets from the cache queue.
- the database thread here can be used It is used to store data packets into the database, read data packets from the database, and so on.
- the upload processing of data packets is realized through the inter-thread communication mechanism, which can improve the upload efficiency of data packets without affecting the operating performance of the system.
- the terminal device can call the database thread through the reporting component.
- the data packets are sorted to obtain the sorted data packets.
- the terminal device may poll K data packets from the sorted data packets, and determine the K data packets as the set of data packets to be added.
- K here may be a positive integer.
- the first warehousing timestamp can represent the timestamp when the data message in the database is written into the database (for example, T1 time), and can also represent the modification of the original time stamp of the data message in the database (such as T1 time)
- the time stamp after (for example, T2 time), where the T1 time may be the previous time of the T2 time, before the T2 time.
- the time stamp after modifying the original time stamp can refer to the moment when the data message meets the continuous upload failure condition (for the continuous upload failure condition, please refer to the description of step S202-step S203 below), that is, the time stamp is obtained by meeting the continuous upload failure condition. Update the timestamp when the data packet was originally written into the database.
- K here may be a positive integer less than or equal to the number of free positions in the cache queue.
- K may be a positive integer less than or equal to the number of packets in the database.
- K is a fixed value (for example, K is equal to 10).
- the terminal device may obtain K data packets from the database by polling.
- the terminal device can poll the database to obtain (K-1) data packets.
- the terminal device can poll the database to obtain (K-1) data packets.
- the terminal device can poll the database to obtain (K-1) data packets.
- the terminal device when there is no data message in the database, that is, when the database is empty, the terminal device does not need to perform the step of polling the data message in the database, so that the set of data messages to be added cannot be obtained. , so that there is no need to perform the step of adding the set of data packets to be added to the cache queue.
- K is equal to 0.
- Step S102 polling the cache queue to obtain a set of data packets to be uploaded, and performing upload processing on the set of data packets to be uploaded.
- the buffer queue may be polled to obtain a set of data packets to be uploaded, and the set of data packets to be uploaded is uploaded through the wireless communication connection of the vehicle-mounted central control device.
- the terminal device can obtain S data packets from the cache queue according to the queue positions of the data packets in the cache queue in the reporting component, and determine the S data packets A collection of data packets to be uploaded. Wherein, S here may be a positive integer.
- the terminal device can upload and process the set of data packets to be uploaded based on the network component (that is, the network SDK).
- the S data packets polled by the terminal device from the cache queue can be the first S data packets in the cache queue, that is, the polled S data packets
- the queue position of the file in the cache queue is higher.
- the front queue position means that the data packets enter the cache queue first.
- the data packets that enter the cache queue first can be reported first, which ensures the reporting fairness among data packets and can also reduce The situation that the data message with a long time is not reported for a long time occurs.
- FIG. 4 is a schematic flow chart of data interaction provided by an embodiment of the present application.
- the overall interaction process shown in Figure 4 may include a terminal system side and a server, the terminal system side may include a business layer, a reporting component, and a network component, and the server may include an access layer and multiple data backgrounds.
- the reporting components may have different reporting strategies, and the network components may have different network knowledge.
- the reporting component is a component used in the terminal device to upload the data of the business layer to the server.
- the reporting component may be a component of the operating system in the terminal device.
- the business layer includes applications, such as those installed and running on the operating system.
- the reporting component may be a component of a software platform running in the operating system of the terminal device.
- the business layer includes applications, such as applications running on the above-mentioned software platforms, applets (lightweight applications that can be used without installation).
- the reporting component provides various APIs for application programs and applets to call, thereby triggering the reporting component to execute the corresponding functions of each API.
- the application client can be used as the business layer.
- the business layer After the business layer is connected to the reporting component, it can use the API to report the data message, and the reporting component can store the data message in the database or cache queue.
- the network layer can read data packets from the database or cache queue, upload the data packets to the access layer of the server through the API provided by the internal network module, and the access layer can forward the data packets to different data backgrounds .
- the access layer can be an access server
- the data background can be a data server, that is, the terminal system can upload data packets to the access server through network components, so that the access server can distribute the data packets to different data servers, Therefore, the data message can be forwarded to any data server without modifying the application client.
- the embodiment of the present application does not limit the number of data servers.
- the data server includes the data background F1, the data background F2 and the data background F3 as an example for illustration.
- the terminal device may not need to perform the step of polling the data packets in the cache queue, so that no data to be uploaded can be obtained message collection, so that there is no need to perform the step of uploading the data message to be uploaded.
- S is equal to 0.
- S may be a positive integer less than or equal to the number of packets in the buffer queue.
- S is a fixed value (for example, S is equal to 5).
- the terminal device may obtain S data packets from the cache queue by polling.
- the terminal device can obtain all the data packets from the cache queue by polling.
- the terminal device can select from The (S-M) data packets are obtained by polling in the cache queue, and then the (S-M) data packets are determined as a set of data packets to be uploaded. In this way, it can be ensured that the maximum number of data packets uploaded by the terminal device at the same time is S, so as to prevent the uploading process of data packets from occupying too many network resources.
- M here may be a positive integer less than or equal to S.
- the terminal device may accumulate the number of consecutive upload failures of the first data packet. In response to the number of consecutive upload failures reaching the number threshold, the terminal device may determine that the first data packet satisfies the continuous upload failure condition. In response to the number of consecutive upload failures not reaching the number threshold, the terminal device may determine that the first data packet does not meet the continuous upload failure condition, and re-add the first data packet to the cache queue through the reporting component.
- the embodiment of the present application does not limit the specific value of the number of times threshold, and the embodiment of the present application takes the number of times threshold equal to 3 as an example for illustration.
- the first data packet may be data packet B, and when uploading data packet B for the first time, the terminal device may set the number of consecutive upload failures of data packet B to 0.
- the terminal device can accumulate the number of consecutive upload failures of the data message B to 1, and at this time, the number of consecutive upload failures is less than the threshold value, and the terminal device can re-add the data message to the cache queue. Wait for the next poll of the cache queue.
- the terminal device can obtain the above-mentioned data message B by polling from the cache queue at the next polling time, or can obtain the above-mentioned data message B from the cache queue at the next polling time or the next next polling time , the embodiment of the present application does not limit the time for polling to obtain the data packet B.
- the terminal device polls the data packet B again from the cache queue, it can upload the data packet B for the second time, and in response to the failure to upload the data packet B again, the terminal device can upload the The cumulative number of consecutive upload failures is 2, and so on, until the cumulative number of consecutive upload failures of data packet B is 3, and the terminal device can determine that data packet B meets the continuous upload failure condition.
- Step S103 in response to the first data packet in the set of data packets to be uploaded meeting the continuous upload failure condition, adding the first data packet to the database.
- step S103 "adding the first data packet to the database” refers to storing the first data packet in the database.
- step S101 the data message in the database is polled to obtain the set of data messages to be added, each data message to be added is deleted from the database, then in step S103, the first Datagrams are written to the database.
- step S101 the data packets in the database are polled in step S101 to obtain the set of data packets to be added
- each data packet to be added is still retained in the database, then in step S103, the The first data message is written into the database again.
- the terminal device may acquire the data type of the first data packet.
- the terminal device may determine the current timestamp as the first through the reporting component.
- the warehousing time stamp of the data message ie the second warehousing time stamp
- the first data message and the second warehousing time stamp are sent to the database thread
- the first data message and the second warehousing time stamp are sent by the database thread
- the timestamp association is stored in the database.
- the first data message is obtained by grouping multiple service data
- the data type of the first data message is determined by the data types of the multiple service data in the first data message. It can be understood that the data types of the multiple service data in the first data packet are the same, and the terminal device can obtain multiple service data with the same data type, and then group the multiple service data with the same data type is the first data packet. In this way, the data types of the multiple service data in the first data packet are all non-discardable types, or the data types of the multiple service data in the first data packet are all discardable types.
- the data types of multiple service data in the first data message are non-discardable types, and the data types of the first data message are non-discardable types; the data of multiple service data in the first data message The types are all discardable types, and the data type of the first data packet is a discardable type.
- the data types of the multiple service data in the first data packet may be different, and the terminal device may obtain multiple service data of different data types, and then group multiple service data with different data types is the first data packet.
- the data types of the multiple service data in the first data message are all non-discardable types, or the data types of the multiple service data in the first data message are all discardable types, or the data types of the multiple service data in the first data message are all discardable types.
- the data type of a part of the business data is a non-discardable type, and the data type of another part of the business data is a discardable type.
- the data type of the first data message is a non-discardable type;
- the data type of the first data packet is a discardable type;
- the data type of can be a discardable type.
- the service data of the discardable type may represent unimportant service data uploaded by the terminal device
- the service data of the non-discardable type may represent important service data uploaded by the terminal device.
- the embodiment of the present application can reduce the loss of data as much as possible. By setting the non-discardable type, the reporting integrity of important data can be ensured. By setting the discardable type, the storage resources of the system can be balanced, thereby improving the upload efficiency of data messages.
- the quantity threshold represents the maximum quantity of data packets that the database can hold.
- the number of data packets in the database is less than the number threshold, indicating that there is free capacity in the database. If there is free capacity in the database, the terminal device may add the first data packet to the database through the reporting thread in the reporting component.
- the embodiment of the present application does not limit the specific value of the quantity threshold. For ease of understanding, the embodiment of the present application takes the quantity threshold equal to 5000 as an example for description.
- the terminal device in response to the data type being a discardable type, may delete the first data packet through the reporting component. Wherein, the terminal device may delete the first data packet through the reporting thread in the reporting component. At this time, neither the database nor the cache queue contains the first data packet.
- the terminal device in response to the fact that the data type is a non-discardable type, and the number of data packets in the database is less than the quantity threshold, and there is a first data packet in the database, the terminal device can obtain the first data packet through the reporting component.
- the update warehousing timestamp of the message send the first data message and the updated warehousing timestamp to the database thread, and update the second warehousing timestamp of the first data message in the database to the updated warehousing time stamp through the database thread timestamp.
- updating the storage time stamp may represent the time stamp when the first data packet is rewritten into the database.
- the terminal device may send the first data packet and the updated storage time stamp to the database thread through the reporting thread in the reporting component.
- the terminal device in response to the fact that the data type is a non-discardable type, and the number of data packets in the database is greater than or equal to the quantity threshold, the terminal device can delete the first data packet through the reporting component, in other words, in response to the database The number of data packets in the data packet is greater than or equal to the quantity threshold, then the terminal device can delete the first data packet through the reporting thread in the reporting component.
- Step S104 in response to the second data packet in the set of data packets to be uploaded is successfully uploaded to the server, and the second data packet exists in the database, delete the second data packet from the database.
- the terminal device in response to the fact that the second data packet in the set of data packets to be uploaded is successfully uploaded to the server, and the second data packet does not exist in the database, the terminal device does not need to perform other steps. At this time, neither the database nor the cache queue contains the second data packet.
- the access layer In response to the successful upload of the second data message in the set of data messages to be uploaded to the access layer (that is, the access server), the access layer can be used to unpack the second data message, and obtain The business data is distributed to the server (that is, the data server).
- the access server may forward the service data in the second data message to the same data server, or may forward the service data in the second data message to a different data server.
- the set of data packets to be uploaded may also include data packets other than the first data packet and the second data packet.
- data packets other data packets by the terminal device please refer to the above description of the first data packet.
- the description of the process of uploading the file and the second data message will not be repeated here.
- the terminal device When the terminal device adds the first data message to the database or updates the second storage time stamp of the first data message in the database, it can poll the data message in the database in a subsequent step to obtain The above first data message, and then add the first data message obtained by polling to the cache queue, so that when the data message in the cache queue is polled in the subsequent steps, the first data message is obtained by polling, so that Realize re-uploading of the first data packet.
- the data packets to be uploaded in the data packet collection to be uploaded can be directly read from the memory, avoiding reading the data packets from the disk, thereby Improve the upload efficiency of data packets.
- the first data packet can be suspended
- the first data message is stored in the database instead, so as to avoid repeated occupation of network resources when the network environment is not good, thereby improving the utilization rate of network resources.
- FIG. 5 is a schematic flowchart of a data processing method provided by an embodiment of the present application.
- the method may be executed by a server, may also be executed by a terminal device, and may also be executed jointly by the server and the terminal device.
- the server may be the server 20a in the implementation corresponding to FIG. 2 above
- the terminal device may be the terminal device 20b in the implementation corresponding to FIG. 2 above.
- the method is executed by a terminal device as an example for description.
- the data processing method may include the following steps S201-S204.
- step S201 the service data uploaded by the service layer is obtained, and the service data is packaged to generate a third data packet.
- the terminal device can obtain the business data uploaded by the business layer in the business thread, and send the business data to the reporting component through the business thread. If the data volume of the service data satisfies the grouping condition, the terminal device may perform grouping processing on the service data based on the reporting component to generate a third data packet.
- the business reporting data will eventually be forwarded to the dedicated thread for reporting (that is, the reporting thread) through the inter-thread communication mechanism.
- different business data can be sent by different business threads in the business layer (that is, the application client).
- the terminal device may wait for a period of time, and then package the service data after the data volume of the acquired service data meets the grouping condition.
- the terminal device may determine that the data volume of the service data satisfies the grouping condition. In some embodiments, if the data volume of the service data does not reach the data volume threshold, the terminal device may determine that the data volume of the service data does not satisfy the grouping condition.
- the reporting component can provide background configuration capabilities. That is, the reporting component may receive an implementation solution configured by a server (hereinafter referred to as a configuration server) corresponding to the reporting component, and execute its function according to the configured implementation solution.
- the server corresponding to the reporting component may refer to a server for managing, configuring and updating the reporting component.
- the server may be a server set by the provider of the reporting component. For example, when the reporting component is a software platform running on an operating system, the corresponding server may be a cloud server provided by a provider of the software platform.
- the server can update the implementation scheme configured in the reporting component at any time, or according to instructions sent by the user of the reporting component through other means (for example, through the reporting component management program in the smart phone).
- the implementation plan of cloud configuration can be whether to report (that is, to determine whether to implement this plan), the size of the package (that is, the data volume of business data), the length of the cache queue (that is, the capacity of the cache queue), the capacity of the database, etc.
- the embodiment of the present application can configure the implementation plan of the reporting component without updating the terminal device, application program and reporting component, so as to achieve the purpose of controlling the reporting process and avoiding accidents caused by the reporting itself.
- the reporting component may receive the cache capacity configured by the configuration server, and determine whether there is an idle position in the cache queue by comparing the data volume of the data packet in the cache queue with the cache capacity. In response to the amount of data packets in the buffer queue being less than the buffer capacity, allowing data to be written into the buffer queue. Responding to the fact that the amount of data packets in the cache queue is not less than the cache capacity, refusing to write data into the cache queue.
- the reporting component may receive the database capacity configured by the configuration server, and determine whether there is an idle position in the database by comparing the data volume of the data packet in the database with the database capacity. In response to the amount of data packets in the database being less than the capacity of the database, allowing data to be written into the database. Responding to the fact that the amount of data packets in the database is not less than the capacity of the database, refusing to write data into the database.
- the reporting component may receive the amount of uploaded data configured by the configuration server.
- the reporting component may use the amount of uploaded data as a limiting condition to obtain the set of data packets to be uploaded.
- the data volume of the set of data packets to be uploaded is not greater than the uploaded data volume.
- Packetization refers to the merging and compression of business data. If the business data uploaded to the access server is not combined and compressed each time, the network utilization rate will be greatly reduced. Especially in the case of a poor network in the vehicle environment, merging and compressing business data can not only improve network utilization, but also improve the success rate of uploading and the timeliness of reporting.
- the service data may be a device log associated with an application client in the terminal device.
- the device log may include log records in the vehicle-mounted terminal.
- Log records may include abnormal problems recorded when the in-vehicle client encounters abnormal functions.
- the log records may also include vehicle speed information and mileage information of the vehicle-mounted terminal during driving.
- the log records may also include the driving track of the vehicle-mounted terminal during driving.
- the log records may also include driving video data captured by the driving recorder on the vehicle terminal. The data recorded in the log record is not listed here.
- the data server may be a server for performing data processing on log records.
- the data server can summarize the abnormal problems encountered by the in-vehicle client during use, and provide the in-vehicle client with solutions corresponding to the abnormal problems. If the abnormal problem cannot be uploaded to the data server in a timely and accurate manner, then there is no way to obtain enough information to deal with the problem, and if the problem cannot be dealt with in a timely manner, it will lead to the loss of users.
- the data server can analyze the vehicle speed information and mileage information of the vehicle terminal to determine whether the vehicle terminal has overspeed behavior, and then when the vehicle terminal has overspeed behavior, it will prompt the vehicle terminal with an overspeed warning to improve the safety of the vehicle terminal.
- the data server can analyze the driving trajectory of the vehicle-mounted terminal and combine it with the current road condition information to achieve accurate and timely car-machine services, or provide automatic driving services.
- the car-machine services here can provide avoidance The function of congested road sections.
- the data server can monitor the running status information of the vehicle in real time through the driving video data captured by the driving recorder, so that there is no need to copy the driving video data from the vehicle terminal, so as to achieve the purpose of remote control and emergency command.
- related data such as abnormal problems in equipment logs, vehicle speed information, mileage information, driving trajectory and driving video data, etc.
- vehicle speed information when the above embodiments of this application are applied to specific products or technologies, user permission is required Or agree, and the collection, use and processing of relevant data need to comply with the relevant laws, regulations and national standards of the country where you are located.
- the vehicle-mounted terminal can display a prompt message "whether to record the vehicle speed and mileage information, and send the recorded information to the server", and the vehicle-mounted terminal can use the vehicle speed and mileage information as business only after the corresponding user authorization of the vehicle-mounted terminal is passed. data, and then upload the business data.
- the terminal device may map the log file corresponding to the service layer to the virtual address space of the memory of the service layer.
- the terminal device may assign a service identifier (also referred to as a target service identifier) to the service data in an incremental manner, and write the target service identifier into a log file.
- the terminal device can obtain the maximum service identifier and the minimum service identifier within a certain period of time (also referred to as a target period of time) through the virtual address space.
- the terminal device can acquire the number of deduplication service identifiers collected by the server within the target time period.
- the terminal device can generate a report success rate according to the maximum service identifier, the minimum service identifier, and the number of deduplication service identifiers. Wherein, the monotonically increasing target service identifier can ensure the accuracy of the generated reporting success rate.
- the server can count the number of deduplication service identifiers received within the target time period, and then return the number of deduplication service identifiers to the terminal device, so that the terminal device can obtain the maximum service identifier and minimum service identifier within the target time period from the virtual address space.
- the service identifier and then the terminal device can generate a report success rate according to the maximum service identifier, the minimum service identifier, and the number of deduplication service identifiers.
- the terminal device can also send the maximum service identifier and minimum service identifier obtained from the virtual address space within the target time period to the server, so that the server can count the deduplication services received within the target time period The number of identifiers, and then the server can generate the reporting success rate according to the maximum service identifier, the minimum service identifier, and the number of deduplication service identifiers.
- the reporting success rate may be for one data server or for multiple data servers.
- the number of deduplication service identifiers may be counted for one data server, or may be counted for multiple data servers. In this way, when the number of deduplication service identifiers is counted for one data server, the reporting success rate is for one data server.
- the reporting success rate is for all data servers.
- the reporting success rate for all data servers may be equivalent to that for the access server, that is, the deduplication service identification data may be counted for the access server.
- the data server will inevitably receive repeated target service identifiers. In this way, the data server needs to deduplicate the received target service identifiers to obtain the deduplicated target service identifiers, and then The number of deduplicated target service identifiers is used as the number of deduplicated service identifiers.
- the target business identifier can be saved to a file (ie, a log file) mapped by mmap (memory mapping, a method for memory mapping files).
- mmap memory mapping, a method for memory mapping files.
- This piece of memory has the characteristics that it will be written back to the file system when the process crashes. It not only ensures that the target business ID can continue to grow after the process is restarted, but also prevents the target business ID from being too late to write to the file when the application crashes, causing the target business ID to not be monotonically continuous.
- the terminal device can map the log file of the application client on the disk into the virtual address space of the application client in the memory. This log file can be used to store the uniquely represented target business identifier.
- the terminal device When the process of the application client crashes, The terminal device will release the memory, and the target service identifier in the file in the memory will be written back to the disk, so as to ensure the uniqueness of the target service identifier. Similarly, when the process does not crash, the target business identifier will also be written back to the disk.
- the specific process for the terminal device to generate the reporting success rate according to the maximum service identifier, the minimum service identifier and the number of deduplication service identifiers can refer to the following formula (1):
- logid can represent the target business identifier
- distinct logid can represent deduplication of logids received by the access server within the target time period
- count(distinct logid) can represent the total number of deduplicated logids (that is, the number of deduplicated service identifiers );
- max(logid) may represent the maximum target service ID allocated within the target time period
- min(logid) may represent the minimum target service ID allocated within the target time period
- ((max(logid)-min(logid)) +1) may represent the number of target business tokens generated within the target time period (ie, the cumulative number of business tokens).
- the terminal device can generate a cumulative number of service IDs according to the maximum service ID and the minimum service ID, and then generate a reporting success rate according to a ratio between the number of deduplicated service IDs and the cumulative number of service IDs.
- the terminal device may determine whether there is an idle position in the device cache queue, and then execute step S202 if there is an idle position in the cache queue, or execute steps S203 to S204 when there is no idle position in the cache queue.
- Step S202 in response to an idle position in the cache queue, adding the third data packet to the cache queue through the reporting component.
- the terminal device may add the third data packet to the cache queue through the reporting thread.
- the business data reported by the business layer will not be uploaded to the access layer immediately, but will be stored in the cache queue first.
- the terminal environment especially in the vehicle environment
- system resources will be limited due to various reasons, and the network may enter an unstable state at any time, resulting in a low probability of successful data upload. Therefore, adding the packaged business data (that is, the third data message) to the cache queue can save the data on the one hand, and retry after failure to improve the success rate of data message reporting; on the other hand, it can reduce the frequency of disk access , thereby improving the upload efficiency of data packets.
- the terminal device will add the data packet and the third data packet in the data packet set to be added to the end of the cache queue, so as to read from the cache queue in subsequent polling the third data packet.
- the terminal device may read the third data packet when polling the cache queue for the first time in the subsequent period, or may read the third data message when polling the cache queue for the second time in the subsequent period.
- the third data message may also be read during other subsequent polling, which is not limited in this application.
- the terminal device may also add the third data packet to other positions in the cache queue according to the packet priority of the third data packet. For example, the header position, so that the terminal device can read the third data packet in the cache queue when it polls the cache queue for the first time.
- the packet priority here may indicate the importance of the data packets, so as to realize the purpose of uploading the data packets with higher importance in priority.
- Step S203 if there is no idle position in the cache queue, the current timestamp is determined as the third storage time stamp of the third data message through the reporting component, and the third data message and the third storage time stamp are sent to database thread.
- Step S204 associate and store the third data packet and the third storage time stamp in the database through the database thread.
- Fig. 6 is a schematic flow chart of data reporting provided by the embodiment of the present application.
- the business layer that is, the application program
- the business layer may execute step S61, perform initialization through step S61, and then start polling through step S62.
- Polling can include two parts, one part is to poll the database and cache queue, and the other part is to poll and send heartbeat business data every W seconds.
- the heartbeat business data refers to a piece of business data that is reported regularly, which can prove that the business end is still working normally, and is used to analyze the operation of the business end in the data background.
- the data type of the heartbeat service data may be a discardable type.
- the time interval of the first part of polling may be Y seconds.
- Y can be a positive number, for example, 5 seconds.
- W may represent the time interval of the second part of polling, where W may be a positive number, for example, 30 seconds.
- the terminal device may execute step S64, and poll and send heartbeat service data every W seconds through step S64.
- the terminal device when the terminal device is polling the database and the cache queue, it can first execute step S63, read the business data stored in the database in step S63, and then execute step S65, and pass step S65 to store in the database Polling for business data.
- Each polling can read K pieces of business data from the database, use the K pieces of business data as a set of data packets to be added, and add the set of data packets to be added to the cache queue.
- K here may be a positive integer.
- the terminal device can perform step S66, poll the cache queue through step S66, traverse the cache queue to obtain S data packets, use the S data packets as a set of data packets to be uploaded, and then under the condition of network connection , performing upload processing on the data message to be uploaded through step S67, that is, uploading the data message taken out of the cache queue through the network component, and uploading the data message taken out of the cache queue to the access server.
- S can be a positive integer.
- S may be the number of data packets to be uploaded and processed at the same time set by the reporting component. By setting the number of data packets to be uploaded and processed at the same time, network components can be prevented from occupying too many network resources.
- step S68 in response to the failure to upload the data message in the data message set to be uploaded, the terminal device can accumulate the number of consecutive upload failures of the data message that failed to upload, and then determine through step S70 Whether the number of consecutive upload failures exceeds the threshold.
- the terminal device may perform step S71 to write the failed data packet into the database, read and retry in subsequent polling.
- the terminal device may perform step S71 to re-add the failed upload data packet to the cache queue, and retry in subsequent polling.
- the data types of data packets can be divided into two types: discardable type and non-discardable type.
- the terminal device needs to determine the data type of the data message when writing the failed data message into the database through step S71, and then when the data type of the data message is a non-discardable type, the uploaded data message will be uploaded through step S71. Failed datagrams are written to the database.
- the terminal device when the data type of the data packet is a discardable type, the terminal device does not need to write the data packet that fails to be uploaded into the database through step S71, but directly discards the data packet that fails to be uploaded.
- step S72 it can determine whether the number of data packets in the database exceeds the threshold, and then write the failed data packets into the database when the number of packets does not exceed the threshold. In some embodiments, when the number of packets exceeds the threshold, the terminal device may execute step S73 to discard the data packets that failed to be uploaded.
- the terminal device When the terminal device writes the data message that fails to upload to the database, it will update a time stamp (that is, update the storage time stamp), so that every time it polls the database, it will read the latest time stamp from the database. If the data packet is too long, add it to the cache queue and continue to retry.
- the terminal device can poll the database through LRU (Least Recently Used, least recently used).
- the terminal device can also poll the database through algorithms such as FIFO (First Input First Output, first-in-first-out), which is not limited in this application.
- step S69 in response to the successful upload of the data message in the set of data messages to be uploaded, the terminal device can determine whether there is the data message successfully uploaded in the database, and then there is the data message in the database. When a successfully uploaded data message is uploaded, the successfully uploaded data message is deleted from the database. In some embodiments, when the successfully uploaded data packet does not exist in the database, the terminal device does not need to perform other operations.
- step S74 can be executed to upload new business data through step S74 , and then perform grouping processing on the business data through step S75 .
- the terminal device can determine whether the data volume (that is, the data size) of the business data meets the grouping condition through step S76, and then execute step S71 when the data size of the business data meets the grouping condition, and through step S71 the group The data packets obtained by the packet are added to the cache queue.
- the terminal device can perform step S77, and in step S77 wait for the service layer to upload new service data until the received service data to be packaged When the size of the data meets the grouping conditions, the grouping is completed.
- the terminal device When the terminal device adds the data message obtained by grouping into the cache queue through step S71, it needs to determine whether there is an idle position in the cache queue, and then when there is an idle position in the cache queue, add the data message obtained by grouping into the cache queue. cache queue. In some embodiments, when there is no idle position in the cache queue, the terminal device may execute step S72, and write the data packet obtained by grouping into the database through step S72.
- the terminal device executes step S72, it can determine whether the number of data packets in the database exceeds the threshold value, and then when the number of packets does not exceed the threshold value, write the data packets obtained by the group package to into the database. In some embodiments, when the number of packets exceeds the threshold, the terminal device may perform step S73 to discard the data packets obtained by the group of packets.
- the reporting thread When the buffer queue in the dedicated thread for reporting (ie, the reporting thread) is full, the reporting thread needs to directly forward the data message to the dedicated thread for the database (ie, the database thread). When the reporting thread fails to report (that is, the number of consecutive upload failures exceeds the number threshold), the reporting thread needs to indirectly forward the data packet to the database thread, so that the database thread executes step S72 to write the data packet into the database. Similarly, when reading data from the database during polling, the database thread needs to read the data message from the database, and then forward the data message to the reporting thread, so that the reporting thread executes step S71 to add the data message to the cache queue.
- the terminal device may execute the above steps S201-S204 at any time.
- the cache queue in the above embodiment corresponding to FIG. 3 may contain the third data packet.
- the database in the above embodiment corresponding to FIG. 3 may include the third data packet.
- the business data after obtaining the business data to be uploaded, the business data can be packaged, and then the third data packet obtained by the package can be added to the cache queue or database, and the cache can be subsequently processed.
- the third data packet is obtained by polling, so as to realize the upload processing of the service data in the third data packet. It can be understood that, by grouping and processing service data, the network utilization rate can be improved, and the success rate of uploading data packets and the timeliness of reporting can be improved.
- FIG. 7 is a schematic structural diagram of a data processing device provided by an embodiment of the present application.
- the data processing device 1 may include: a database polling module 11 , a queue polling module 12 , a data adding module 13 , and a data deleting module 14 .
- the data processing device 1 may further include: a count accumulation module 15 , a first comparison module 16 , a second comparison module 17 , a data generation module 18 , a first processing module 19 , and a second processing module 20 .
- the database polling module 11 is used for polling the data message in the database, obtains the set of data messages to be added, and adds the set of data messages to be added to the cache queue;
- the database polling module 11 includes: a database polling unit 111 and a collection adding unit 112 .
- the database polling unit 111 is configured to call the database thread through the reporting component to poll the data packets in the database in response to the idle position in the cache queue, so as to obtain a set of data packets to be added.
- the database polling unit 111 is configured to call the database thread through the reporting component in response to an idle position in the cache queue, and in the database thread, according to the first storage time stamp of the data message in the database, The data packets in the database are sorted to obtain the sorted data packets.
- the database polling unit 111 is configured to poll K data packets from the sorted data packets, and determine the K data packets as the set of data packets to be added; K is a positive integer.
- the set adding unit 112 is configured to send the set of data packets to be added to the reporting component through the database thread, and add the set of data packets to be added to the cache queue through the reporting component.
- step S101 for the specific implementation manners of the database polling unit 111 and the set adding unit 112, reference may be made to the description of step S101 in the above-mentioned embodiment corresponding to FIG. 3 , which will not be repeated here.
- the queue polling module 12 is configured to obtain a set of data packets to be uploaded by polling from the cache queue, and perform upload processing on the set of data packets to be uploaded.
- the queue polling module 12 is configured to respond to the presence of data packets in the cache queue, and then in the reporting component, according to the queue position of the data packets in the cache queue, obtain S data packets from the cache queue by polling.
- a data packet determining S data packets as a set of data packets to be uploaded. S is a positive integer.
- the queue polling module 12 is configured to perform upload processing on a set of data packets to be uploaded based on network components.
- the data adding module 13 is configured to add the first data packet to the database in response to the first data packet in the set of data packets to be uploaded meeting the continuous upload failure condition.
- the data adding module 13 is configured to obtain the data type of the first data message in response to the first data message in the set of data messages to be uploaded meeting the continuous upload failure condition;
- the data adding module 13 is configured to respond to the data type being a non-discardable type, and the number of data packets in the database is less than the quantity threshold, and there is no first data packet in the database, then by reporting The component determines the current timestamp as the second storage timestamp of the first data packet, sends the first data packet and the second storage timestamp to the database thread, and sends the first data packet and the second storage timestamp through the database thread.
- the inbound timestamp is associated and stored in the database.
- the data adding module 13 is further specifically configured to delete the first data packet through the reporting component in response to the data type being a discardable type.
- the data adding module 13 is also configured to respond to the data type being a non-discardable type, and the number of data packets in the database is less than the quantity threshold, and there is a first data packet in the database, then by reporting The component obtains the updated storage time stamp of the first data message, sends the first data message and the updated storage time stamp to the database thread, and sends the second storage time stamp of the first data message in the database through the database thread Update to update the storage time stamp.
- the data adding module 13 is further configured to delete the first data packet through the reporting component in response to the fact that the data type is non-discardable and the number of data packets in the database is greater than or equal to the quantity threshold.
- the data deletion module 14 is configured to delete the second data message from the database in response to the second data message in the set of data messages to be uploaded is successfully uploaded to the server and the second data message exists in the database.
- the times accumulation module 15 is configured to accumulate the number of consecutive upload failures of the first data message in response to the failure to upload the first data message in the set of data messages to be uploaded;
- the first comparison module 16 is configured to determine that the first data packet satisfies the continuous upload failure condition in response to the number of consecutive upload failures reaching the number threshold;
- the second comparison module 17 is configured to determine that the first data packet does not meet the continuous upload failure condition in response to the number of consecutive upload failures not reaching the number threshold, and re-add the first data packet to the cache queue through the reporting component.
- the data generation module 18 is configured to obtain the service data uploaded by the service layer, perform grouping processing on the service data, and generate a third data packet.
- the data generation module 18 is configured to acquire the business data uploaded by the business layer in the business thread, and send the business data to the reporting component through the business thread.
- the data generation module 18 is configured to, in response to the data volume of the business data satisfying the grouping condition, perform grouping processing on the business data based on the reporting component, and generate a third data message.
- the first processing module 19 is configured to add the third data packet to the buffer queue through the reporting component in response to an idle position in the buffer queue.
- the second processing module 20 is configured to use the reporting component to determine the current timestamp as the third storage timestamp of the third data packet in response to no idle position in the cache queue, and store the third data packet The message and the third storage timestamp are sent to the database thread.
- the second processing module 20 is configured to associate and store the third data message and the third storage time stamp in the database through the database thread.
- the data processing apparatus 1 is further configured to map the log file corresponding to the business layer to the virtual address space of the memory of the business layer.
- the data processing device 1 is further configured to assign a target service identifier to the service data in an incremental manner, and write the target service identifier into a log file.
- the data processing apparatus 1 is further configured to obtain the maximum service identifier and the minimum service identifier within the target time period through the virtual address space.
- the data processing device 1 is further configured to obtain the number of deduplication service identifiers counted by the server within the target time period.
- the data processing device 1 is further configured to generate a reporting success rate according to the maximum service identifier, the minimum service identifier, and the number of deduplication service identifiers.
- the data processing device 1 is further configured to respond to the successful upload of the second data message in the set of data messages to be uploaded to the access layer, and the access layer is used to unpack the second data message , and distribute the unpacked business data to the server.
- step S101-step S104 the concrete implementation manner of database polling module 11, queue polling module 12, data adding module 13 and data deleting module 14, can refer to the description to step S101-step S104 in the embodiment corresponding to above-mentioned Fig. 3, here will not Let me repeat.
- the specific implementation manners of the times accumulation module 15, the first comparison module 16, the second comparison module 17, the data generation module 18, the first processing module 19 and the second processing module 20 can be referred to in the above-mentioned embodiment corresponding to FIG. 5
- the description of step S201-step S204 will not be repeated here.
- the description of the beneficial effect of adopting the same method will not be repeated here.
- the data processing device 1 may also include a configuration receiving module, configured to receive configuration information of the configuration server, and the configuration information includes one of the following:
- Cache capacity used to specify the maximum amount of data that is allowed to be written in the cache queue
- Database capacity used to specify the maximum amount of data allowed to be written in the database
- Upload data volume which is used to specify the maximum data volume of data packets uploaded at the same time.
- the data processing device 1 may determine whether there is an idle position in the buffer queue by comparing the data amount of the data packet in the buffer queue with the buffer capacity. In response to the amount of data packets in the buffer queue being less than the buffer capacity, allowing data to be written into the buffer queue. Responding to the fact that the amount of data packets in the cache queue is not less than the cache capacity, refusing to write data into the cache queue.
- the data processing device 1 may determine whether there is an idle position in the database by comparing the data volume of the data packets in the database with the capacity of the database. In response to the amount of data packets in the database being less than the capacity of the database, allowing data to be written into the database. Responding to the fact that the data volume of the data message in the database is not less than the capacity of the database, refusing to write data to the database.
- the amount of uploaded data may be used as a limiting condition to obtain the set of data packets to be uploaded.
- the data volume of the set of data packets to be uploaded is not greater than the uploaded data volume.
- Fig. 8 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
- the computer device 1000 may include: a processor 1001 , a network interface 1004 and a memory 1005 .
- the above computer device 1000 may further include: a user interface 1003 and at least one communication bus 1002 .
- the communication bus 1002 is used to realize connection and communication between these components.
- the user interface 1003 may include a display screen (Display) and a keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface and a wireless interface.
- the network interface 1004 may include a standard wired interface and a wireless interface (such as a WI-FI interface).
- the memory 1005 can be a high-speed RAM memory, or a non-volatile memory, such as at least one disk memory. In some embodiments, the memory 1005 may also be at least one storage device located away from the aforementioned processor 1001 . As shown in FIG. 8 , the memory 1005 as a computer-readable storage medium may include an operating system, a network communication module, a user interface module, and a device control application program.
- the network interface 1004 can provide network communication functions; and the user interface 1003 is mainly used to provide an input interface for the user; and the processor 1001 can be used to call the device control stored in the memory 1005 application to:
- the second data packet is deleted from the database.
- the computer device 1000 described in the embodiment of the present application can execute the description of the data processing method in the embodiment corresponding to Figure 3 and Figure 5 above, and can also execute the data processing device 1 in the embodiment corresponding to Figure 7 above description and will not be repeated here. In addition, the description of the beneficial effect of adopting the same method will not be repeated here.
- the embodiment of the present application also provides a computer-readable storage medium, and the computer-readable storage medium stores the computer program executed by the aforementioned data processing device 1, and the computer program includes
- the program instructions when the processor executes the program instructions, can execute the description of the data processing method in the embodiment corresponding to FIG. 3 and FIG. 5 above, so details will not be repeated here.
- the description of the beneficial effect of adopting the same method will not be repeated here.
- the technical details not disclosed in the embodiments of the computer-readable storage medium involved in the present application please refer to the description of the method embodiments of the present application.
- the embodiment of the present application also provides a computer program product or computer program, where the computer program product or computer program may include computer instructions, and the computer instructions may be stored in a computer-readable storage medium.
- the processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor can execute the computer instructions, so that the computer device executes the description of the data processing method in the embodiment corresponding to Figure 3 and Figure 5 above, therefore, No further details will be given here.
- the description of the beneficial effect of adopting the same method will not be repeated here.
- the storage medium may be a magnetic disk, an optical disk, a read-only memory (Read-Only Memory, ROM) or a random access memory (Random Access Memory, RAM), etc.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims (20)
- 一种数据处理方法,应用于车载中控设备,所述车载中控设备中设置有数据库和缓存队列,所述方法包括:对所述数据库中的数据报文进行轮询,得到待添加数据报文集合,将所述待添加数据报文集合添加至所述缓存队列;对所述缓存队列进行轮询得到待上传数据报文集合,将所述待上传数据报文集合通过所述车载中控设备的无线通信连接进行上传;响应于所述待上传数据报文集合中的第一数据报文满足连续上传失败条件,则将所述第一数据报文存储在所述数据库中;响应于所述待上传数据报文集合中的第二数据报文成功上传至服务器,且所述数据库中存在所述第二数据报文,则从所述数据库中删除所述第二数据报文。
- 根据权利要求1所述的方法,进一步包括:接收配置服务器配置的缓存容量;通过将所述缓存队列中数据报文的数据量与所述缓存容量进行比较,确定所述缓存队列中是否存在空闲位置;响应于所述缓存队列中数据报文的数据量小于所述缓存容量,允许向所述缓存队列写入数据;响应于所述缓存队列中数据报文的数据量不小于所述缓存容量,拒绝向所述缓存队列写入数据。
- 根据权利要求1所述的方法,进一步包括:接收配置服务器配置的数据库容量;通过将所述数据库中数据报文的数据量与所述数据库容量进行比较,确定所述数据库中是否存在空闲位置;响应于所述数据库中数据报文的数据量小于所述数据库容量,允许向所述数据库写入数据;响应于所述数据库中数据报文的数据量不小于所述数据库容量,拒绝向所述数据库写入数据。
- 根据权利要求1所述的方法,进一步包括:接收配置服务器配置的上传数据量;其中,对所述缓存队列进行轮询得到待上传数据报文集合包括:将所述上传数据量作为限制条件,得到所述待上传数据报文集合,其中,所述待上传数据报文集合的数据量不大于所述上传数据量。
- 根据权利要求1所述的方法,其中,所述对数据库中的数据报文进行轮询,得到待添加数据报文集合,将所述待添加数据报文集合添加至缓存队列,包括:响应于缓存队列中存在空闲位置,则通过上报组件调用数据库线程对数据库中的数据 报文进行轮询,得到待添加数据报文集合;通过所述数据库线程将所述待添加数据报文集合发送至所述上报组件,通过所述上报组件将所述待添加数据报文集合添加至所述缓存队列。
- 根据权利要求5所述的方法,其中,所述响应于缓存队列中存在空闲位置,则通过上报组件调用数据库线程对数据库中的数据报文进行轮询,得到待添加数据报文集合,包括:响应于缓存队列中存在空闲位置,则通过上报组件调用数据库线程,在所述数据库线程中,根据数据库中的数据报文的第一入库时间戳,对所述数据库中的数据报文进行排序,得到排序后的数据报文;从所述排序后的数据报文中轮询得到K个数据报文,将所述K个数据报文确定为待添加数据报文集合;所述K为正整数。
- 根据权利要求1所述的方法,其中,所述从所述缓存队列中轮询得到待上传数据报文集合,对所述待上传数据报文集合进行上传处理,包括:响应于所述缓存队列中存在数据报文,则在上报组件中,根据所述缓存队列中的数据报文的队列位置,从所述缓存队列中轮询得到S个数据报文,将所述S个数据报文确定为待上传数据报文集合;所述S为正整数;基于网络组件对所述待上传数据报文集合进行上传处理。
- 根据权利要求1所述的方法,进一步包括:响应于所述待上传数据报文集合中的所述第一数据报文上传失败,则累计所述第一数据报文的连续上传失败次数;响应于所述连续上传失败次数达到次数阈值,则确定所述第一数据报文满足连续上传失败条件;响应于所述连续上传失败次数未达到所述次数阈值,则确定所述第一数据报文不满足所述连续上传失败条件,通过上报组件将所述第一数据报文重新添加至所述缓存队列。
- 根据权利要求1所述的方法,其中,所述响应于所述待上传数据报文集合中的第一数据报文满足连续上传失败条件,则将所述第一数据报文添加至所述数据库,包括:响应于所述待上传数据报文集合中的第一数据报文满足连续上传失败条件,则获取所述第一数据报文的数据类型;响应于所述数据类型为不可丢弃类型,且所述数据库中的数据报文的报文数量小于数量阈值,且所述数据库中不存在所述第一数据报文,则通过上报组件将当前时间戳确定为所述第一数据报文的第二入库时间戳,将所述第一数据报文和所述第二入库时间戳发送至数据库线程,通过所述数据库线程将所述第一数据报文和所述第二入库时间戳关联存储至所述数据库。
- 根据权利要求9所述的方法,进一步包括:响应于所述数据类型为可丢弃类型,则通过所述上报组件删除所述第一数据报文;响应于所述数据类型为所述不可丢弃类型,且所述数据库中的数据报文的所述报文数量小于所述数量阈值,且所述数据库中存在所述第一数据报文,则通过所述上报组件获取所述第一数据报文的更新入库时间戳,将所述第一数据报文和所述更新入库时间戳发送至所述数据库线程,通过所述数据库线程将所述第一数据报文在所述数据库中的所述第二入库时间戳更新为所述更新入库时间戳;响应于所述数据类型为所述不可丢弃类型,且所述数据库中的数据报文的所述报文数量大于或等于所述数量阈值,则通过所述上报组件删除所述第一数据报文。
- 根据权利要求1所述的方法,进一步包括:获取业务层上传的业务数据,对所述业务数据进行组包处理,生成第三数据报文;响应于所述缓存队列中存在空闲位置,则通过上报组件将所述第三数据报文添加至所述缓存队列。
- 根据权利要求11所述的方法,其中,所述获取业务层上传的业务数据,对所述业务数据进行组包处理,生成第三数据报文,包括:在业务线程中,获取业务层上传的业务数据,通过所述业务线程将所述业务数据发送至上报组件;响应于所述业务数据的数据量满足组包条件,则基于所述上报组件对所述业务数据进行组包处理,生成第三数据报文。
- 根据权利要求11所述的方法,进一步包括:响应于所述缓存队列中不存在所述空闲位置,则通过所述上报组件将当前时间戳确定为所述第三数据报文的第三入库时间戳,将所述第三数据报文和所述第三入库时间戳发送至数据库线程;通过所述数据库线程将所述第三数据报文和所述第三入库时间戳关联存储至所述数据库。
- 根据权利要求11所述的方法,进一步包括:将所述业务层对应的日志文件映射至所述业务层的内存的虚拟地址空间;根据递增的方式,为所述业务数据分配目标业务标识,将所述目标业务标识写入所述日志文件;通过所述虚拟地址空间获取在目标时间段内的最大业务标识和最小业务标识;获取所述服务器在所述目标时间段内所统计到的去重业务标识数量;根据所述最大业务标识、所述最小业务标识和所述去重业务标识数量,生成上报成功率。
- 根据权利要求1所述的方法,进一步包括:响应于所述待上传数据报文集合中的第二数据报文成功上传至接入层,则所述接入层用于对所述第二数据报文进行解包处理,将解包得到的业务数据分发至所述服务器。
- 一种数据处理装置,设置于车载中控设备中,所述车载中控设备中设置有数据库和缓存队列,所述装置包括:数据库轮询模块,用于对数据库中的数据报文进行轮询,得到待添加数据报文集合,将所述待添加数据报文集合添加至缓存队列;队列轮询模块,用于对所述缓存队列进行轮询得到待上传数据报文集合,通过所述车载中控设备的无线通信连接将所述待上传数据报文集合进行上传;数据添加模块,用于响应于所述待上传数据报文集合中的第一数据报文满足连续上传失败条件,则将所述第一数据报文添加至所述数据库;数据删除模块,用于响应于所述待上传数据报文集合中的第二数据报文成功上传至服务器,且所述数据库中存在所述第二数据报文,则从所述数据库中删除所述第二数据报文。
- 根据权利要求16所述的数据处理装置,进一步包括:配置接收模块,用于接收配置服务器的配置信息,所述配置信息包括以下之一:缓存容量,用于指定所述缓存队列允许写入数据量的最大值;数据库容量,用于指定所述数据库允许写入数据量的最大值;上传数据量,用于指定同时上传的数据报文的最大数据量。
- 一种计算机设备,其特征在于,包括:处理器和存储器;所述处理器与所述存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-15任一项所述的方法。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-15任一项所述的方法。
- 一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中,且适于由处理器读取并执行,以使得具有所述处理器的计算机设备执行权利要求1-15任一项所述的方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP23758901.5A EP4407957B1 (en) | 2022-02-25 | 2023-01-09 | Data processing method and apparatus, computer device and readable storage medium |
| US18/390,299 US20240129251A1 (en) | 2022-02-25 | 2023-12-20 | Data processing method and apparatus, computer device, and readable storage medium |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210180680.4A CN114567674B (zh) | 2022-02-25 | 2022-02-25 | 一种数据处理方法、装置、计算机设备以及可读存储介质 |
| CN202210180680.4 | 2022-02-25 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US18/390,299 Continuation US20240129251A1 (en) | 2022-02-25 | 2023-12-20 | Data processing method and apparatus, computer device, and readable storage medium |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023160276A1 true WO2023160276A1 (zh) | 2023-08-31 |
Family
ID=81716473
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/071183 Ceased WO2023160276A1 (zh) | 2022-02-25 | 2023-01-09 | 一种数据处理方法、装置、计算机设备以及可读存储介质 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20240129251A1 (zh) |
| EP (1) | EP4407957B1 (zh) |
| CN (1) | CN114567674B (zh) |
| WO (1) | WO2023160276A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119544825A (zh) * | 2024-11-07 | 2025-02-28 | 重庆赛力斯凤凰智创科技有限公司 | 车载数据采集上传方法、系统、电子设备及存储介质 |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114567674B (zh) * | 2022-02-25 | 2024-03-15 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、计算机设备以及可读存储介质 |
| CN117648288B (zh) * | 2022-09-05 | 2024-09-17 | 华为技术有限公司 | 文件处理方法及电子设备 |
| CN119618082A (zh) * | 2025-02-13 | 2025-03-14 | 华南农业大学 | 一种便携式动植物表型测定方法、系统及装置 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009284085A (ja) * | 2008-05-20 | 2009-12-03 | Autonetworks Technologies Ltd | 中継装置及び中継方法 |
| CN106878966A (zh) * | 2017-02-21 | 2017-06-20 | 中国联合网络通信集团有限公司 | 短信下发方法、短信中心和短信发送系统 |
| CN110493116A (zh) * | 2018-05-14 | 2019-11-22 | 广州小鹏汽车科技有限公司 | 一种车联网数据传输方法及装置 |
| CN110764936A (zh) * | 2019-10-28 | 2020-02-07 | 深圳前海微众银行股份有限公司 | 一种数据采集方法及装置 |
| CN113965482A (zh) * | 2021-10-19 | 2022-01-21 | 北京天融信网络安全技术有限公司 | 基于gRPC的数据传输方法、装置及存储介质 |
| CN114567674A (zh) * | 2022-02-25 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、计算机设备以及可读存储介质 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106970846B (zh) * | 2017-03-15 | 2019-08-16 | 银清科技(北京)有限公司 | 支付系统消息控制和处理方法、装置 |
| WO2020014954A1 (zh) * | 2018-07-20 | 2020-01-23 | 威富通科技有限公司 | 数据控制方法及终端设备 |
| CN109299120A (zh) * | 2018-08-31 | 2019-02-01 | 深圳市商汤科技有限公司 | 数据处理方法和装置、电子设备、计算机存储介质 |
| CN111355673A (zh) * | 2018-12-24 | 2020-06-30 | 深圳市中兴微电子技术有限公司 | 一种数据处理方法、装置、设备及存储介质 |
| CN111694766B (zh) * | 2020-06-16 | 2024-03-08 | 北京经纬恒润科技股份有限公司 | 一种can数据采集方法及装置 |
| CN113938258A (zh) * | 2020-06-29 | 2022-01-14 | 中兴通讯股份有限公司 | 数据传输方法、装置以及计算机存储介质 |
| CN112118167B (zh) * | 2020-08-17 | 2022-04-12 | 深圳市风云实业有限公司 | 一种跨网隧道数据快速传输方法 |
| CN113242165B (zh) * | 2021-03-31 | 2023-04-28 | 惠州市德赛西威汽车电子股份有限公司 | 一种新能源车辆国标数据处理及上传方法 |
-
2022
- 2022-02-25 CN CN202210180680.4A patent/CN114567674B/zh active Active
-
2023
- 2023-01-09 WO PCT/CN2023/071183 patent/WO2023160276A1/zh not_active Ceased
- 2023-01-09 EP EP23758901.5A patent/EP4407957B1/en active Active
- 2023-12-20 US US18/390,299 patent/US20240129251A1/en active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009284085A (ja) * | 2008-05-20 | 2009-12-03 | Autonetworks Technologies Ltd | 中継装置及び中継方法 |
| CN106878966A (zh) * | 2017-02-21 | 2017-06-20 | 中国联合网络通信集团有限公司 | 短信下发方法、短信中心和短信发送系统 |
| CN110493116A (zh) * | 2018-05-14 | 2019-11-22 | 广州小鹏汽车科技有限公司 | 一种车联网数据传输方法及装置 |
| CN110764936A (zh) * | 2019-10-28 | 2020-02-07 | 深圳前海微众银行股份有限公司 | 一种数据采集方法及装置 |
| CN113965482A (zh) * | 2021-10-19 | 2022-01-21 | 北京天融信网络安全技术有限公司 | 基于gRPC的数据传输方法、装置及存储介质 |
| CN114567674A (zh) * | 2022-02-25 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、计算机设备以及可读存储介质 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4407957A4 * |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119544825A (zh) * | 2024-11-07 | 2025-02-28 | 重庆赛力斯凤凰智创科技有限公司 | 车载数据采集上传方法、系统、电子设备及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4407957A1 (en) | 2024-07-31 |
| EP4407957A4 (en) | 2025-04-02 |
| US20240129251A1 (en) | 2024-04-18 |
| EP4407957B1 (en) | 2026-03-25 |
| CN114567674A (zh) | 2022-05-31 |
| CN114567674B (zh) | 2024-03-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2023160276A1 (zh) | 一种数据处理方法、装置、计算机设备以及可读存储介质 | |
| US11836533B2 (en) | Automated reconfiguration of real time data stream processing | |
| US9984013B2 (en) | Method, controller, and system for service flow control in object-based storage system | |
| US10761752B1 (en) | Memory pool configuration for allocating memory in a distributed network | |
| CN112433920B (zh) | 一种埋点数据上报方法、装置、设备及介质 | |
| CN104601696A (zh) | 服务处理方法、服务调用框架、装置和架构 | |
| CN110430142B (zh) | 用于控制流量的方法和装置 | |
| CN113342746A (zh) | 文件管理系统、文件管理方法、电子设备和存储介质 | |
| WO2023116438A1 (zh) | 一种数据访问方法、装置以及设备 | |
| WO2023142605A1 (zh) | 一种基于区块链的数据处理方法和相关装置 | |
| CN109298937A (zh) | 文件解析方法及网络设备 | |
| CN107615259B (zh) | 一种数据处理方法及系统 | |
| CN114048059A (zh) | 接口的超时时间调整方法、装置、计算机设备及存储介质 | |
| CN110650182B (zh) | 网络缓存方法、装置、计算机设备及存储介质 | |
| CN117978658A (zh) | Kubernetes集群的容器伸缩系统、方法和设备 | |
| CN118585404A (zh) | 数据采集方法、数据库服务器及存储介质 | |
| US9893972B1 (en) | Managing I/O requests | |
| CN111723115A (zh) | 基于多级缓存的数据统计方法、装置、终端及存储介质 | |
| CN115587390A (zh) | 一种公有云对象存储的实现方法 | |
| CN114500403A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
| JP2025540743A (ja) | データ伝送方法、装置、伝送機器、端末機器、及びコンピュータプログラム | |
| HK40071914B (zh) | 一种数据处理方法、装置、计算机设备以及可读存储介质 | |
| HK40071914A (zh) | 一种数据处理方法、装置、计算机设备以及可读存储介质 | |
| CN108121580B (zh) | 应用程序通知服务的实现方法及装置 | |
| CN115408363A (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: 23758901 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023758901 Country of ref document: EP |
|
| ENP | Entry into the national phase |
Ref document number: 2023758901 Country of ref document: EP Effective date: 20240422 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWG | Wipo information: grant in national office |
Ref document number: 2023758901 Country of ref document: EP |
