Data processing method and device, equipment and storage medium

By receiving and parsing the method of generating data files, the problems of complex data acquisition and large network overhead in the prior art are solved, and the effect of reducing data acquisition complexity and network overhead is achieved.

CN119848008APending Publication Date: 2025-04-18TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311356177.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-10-18
Publication Date
2025-04-18

AI Technical Summary

Technical Problem

In the process of data collection and reporting, the client's calculations are complex, and the reporting traffic is expensive, resulting in complex data collection and large network overhead.

Method used

By receiving the playback file sent by the first terminal, the playback parsing program generated based on the protocol file and the table file is called, and the playback file is parsed to generate data files, reducing the organization and reporting process during the data collection process.

Benefits of technology

It reduces the complexity of data collection and reduces the network overhead of data reporting, so that the playback parsing program can be applied to a variety of scenarios, increasing the practicality of the solution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119848008A_ABST
    Figure CN119848008A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a data processing method and device, equipment and a storage medium, which are used for reducing the complexity of data acquisition and reducing the network overhead of data reporting. Comprising the steps that a playback file sent by a first terminal is received, the playback file is generated by conducting data recording on operation data of an application program, and the application program is deployed in the first terminal; a playback analysis program is called to carry out playback analysis on the playback file to generate a data file, the playback analysis program is generated based on a protocol file and a table file, the protocol file is generated based on a business demand field, the table file is generated based on table configuration information of the operation data, the business demand field is used for indicating to-be-analyzed data, and the to-be-analyzed data is sent to a server; the table configuration information is used for indicating to-be-collected data; and storing the data file. The technical scheme provided by the invention can be applied to the fields of artificial intelligence, computers, cloud technologies, big data and the like.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computers, and in particular to a data processing method, device, equipment and storage medium. Background Art

[0002] With the rapid development of Internet technology, people have developed more and more applications to meet various activities. After the application is launched, in order to adjust or update the various functions of the application in a timely manner, data analysis, abnormal log reporting, and data review are required.

[0003] The premise of the above operations is to collect and analyze the log data and other data in the application. The current technical means usually involves reporting the running application, and setting the format or field of the reported data in a targeted manner according to the needs of the business end during the reporting process.

[0004] This means that the data collection, analysis and reporting processes are mainly run on the client where the application is deployed, which makes the client's calculations complex and the reporting traffic overhead large. Summary of the invention

[0005] The embodiments of the present application provide a data processing method, apparatus, device and storage medium for reducing the complexity of data collection and reducing the network overhead of data reporting.

[0006] In view of this, on the one hand, the present application provides a data processing method, including: receiving a playback file sent by a first terminal, the playback file is generated by recording the operation data of an application, and the application is deployed on the first terminal; calling a playback parsing program to play back and parse the playback file to generate a data file, the playback parsing program is generated based on a protocol file and a table file, the protocol file is generated based on a business requirement field, and the table file is generated based on the table configuration information of the operation data, the business requirement field is used to indicate the data to be parsed, and the table configuration information is used to indicate the data to be collected; storing the data file.

[0007] On the other hand, the present application provides a data processing device, including: a transceiver module, used to obtain a playback file, which is generated by recording the operation data of an application; a processing module, used to call a playback parsing program to play back and parse the playback file to generate a data file, the playback parsing program is generated based on a protocol file and a table file, the protocol file is generated based on a business requirement field, and the table file is generated based on the table configuration information of the operation data, the business requirement field is used to indicate the data to be parsed, and the table configuration information is used to indicate the data to be collected; a storage module, used to store the data file.

[0008] In one possible design, in another implementation of another aspect of the embodiment of the present application, the processing module is used to obtain the business requirement field and the configuration table information;

[0009] The processing module is used to generate the protocol file based on the business requirement field, and generate the table file based on the matching table information; generate a first code file based on the protocol file, and generate a second code file based on the table file; integrate the first code file with the second code file to obtain the playback parsing program.

[0010] In one possible design, in another implementation of another aspect of the embodiment of the present application, the business requirement field is a fixed field set based on the business requirement;

[0011] Alternatively, the business requirement field is a field that is called by a remote procedure call function based on business requirements.

[0012] In one possible design, in another implementation of another aspect of the embodiment of the present application, the protocol file is a protobuf protocol file, and the processing module is used to call a code generation program to generate the first code file based on the protobuf protocol file.

[0013] In one possible design, in another implementation of another aspect of the embodiment of the present application, the processing module is used to obtain a code template, and an object of the code template corresponds one-to-one to the table configuration information in the table file;

[0014] The objects in the code template are replaced based on the matching table information to generate the second code file.

[0015] In one possible design, in another implementation of another aspect of the embodiment of the present application, the processing module is used to call the playback parsing program to read the playback file to obtain network data information at the current moment;

[0016] When it is determined that the network data information at the current moment is not the end of the playback file, determining an object set and an attribute value of each object in the object set according to the network data information, the objects in the object set are included in the application, and the attribute value is used to indicate an attribute field of the object and a corresponding value thereof;

[0017] When the attribute field of the attribute value matches the business requirement field, generating the data file according to the attribute value;

[0018] Repeat the above operation until the network data information read is the end of the playback file, and then output the data file.

[0019] In one possible design, in another implementation of another aspect of the embodiment of the present application, the transceiver module is used to receive an access request from the second terminal, where the access request is used to indicate a service demand of the second terminal;

[0020] In response to the access request, the second terminal obtains target data from the data file, where the target data is determined from the data file based on the business requirement.

[0021] Another aspect of the present application provides a computer device, including: a memory, a processor, and a bus system;

[0022] Wherein, the memory is used to store programs;

[0023] The processor is used to execute the program in the memory, and the processor is used to execute the above-mentioned methods according to the instructions in the program code;

[0024] The bus system is used to connect the memory and the processor so that the memory and the processor can communicate with each other.

[0025] Another aspect of the present application provides a computer-readable storage medium, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer is enabled to execute the above-mentioned methods.

[0026] Another aspect of the present application provides a computer program product or a computer program, the computer program product or the computer program includes computer instructions, the computer instructions are 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 executes the computer instructions, so that the computer device executes the methods provided by the above aspects.

[0027] It can be seen from the above technical solutions that the embodiments of the present application have the following advantages: all the operation data of the application is recorded to generate a playback file, and then a third-party playback parsing program is enabled to parse the generated session file to obtain the statistical data corresponding to the playback file, that is, the data file, and the data file is stored for the convenience of the business end to read on demand. In this way, recording the operation data to generate a playback file can reduce the organization and reporting process in the data collection process, thereby reducing the complexity of data collection. At the same time, since the third-party playback file is generated based on the business demand field and the matching table information, and the business demand field and the matching table information can be configured according to the specific business, the playback parsing program can be applied to a variety of scenarios from the results, increasing the practicality of the solution. At the same time, the business demand field and the matching table information can be set to cover most of the business needs, so that the data file generated by the analysis can be applied to a variety of business scenarios, thereby reducing network resource overhead. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1 A flowchart for reporting data;

[0029] Figure 2 A schematic diagram of the architecture of the data processing method in the embodiment of the present application;

[0030] Figure 3 A schematic diagram of a flow chart of a data processing method in an embodiment of the present application;

[0031] Figure 4 This is a schematic diagram for explaining data playback in an embodiment of the present application;

[0032] Figure 5 A schematic diagram of a development process of a playback parsing program in an embodiment of the present application;

[0033] Figure 6 It is another development process diagram of the playback parsing program in the embodiment of the present application;

[0034] Figure 7 A schematic diagram of the protobuf protocol file in the embodiment of the present application;

[0035] Figure 8 A schematic diagram of a table file in an embodiment of the present application;

[0036] Fig. 9 A schematic diagram of a code template in an embodiment of the present application;

[0037] Fig.10 A schematic diagram of the second code file in the embodiment of the present application;

[0038] Fig.11 A replacement logic diagram of replacing objects in a code template according to a table file in an embodiment of the present application;

[0039] Fig.12 A schematic diagram of the processing logic of the playback parsing program in an embodiment of the present application;

[0040] Fig.13 This is a schematic diagram of an embodiment of a data processing method in an embodiment of the present application;

[0041] Fig.14 A schematic diagram of a flow chart of a playback parsing program parsing and generating a data file in an embodiment of the present application;

[0042] Fig.15 This is a schematic diagram of generating a code file based on a protobuf protocol file in a game scenario in an embodiment of the present application;

[0043] Fig.16This is a schematic diagram of marking the RPC function in the game scenario in the embodiment of the present application;

[0044] Fig.17 This is a schematic diagram of a table file generated according to demand in a game scenario in an embodiment of the present application;

[0045] Fig.18 This is a schematic diagram of a code file generated based on a table file in a game scenario in an embodiment of the present application;

[0046] Fig.19 In the game scenario in the embodiment of the present application, based on Fig.18 and Fig.15 The code file generates a code schematic diagram of the playback parsing program;

[0047] Fig. 20 This is a product schematic diagram of a playback parsing program in a game scenario in an embodiment of the present application;

[0048] Fig.21 This is a data input and output diagram of outputting elimination flow data based on playback files in a game scenario in an embodiment of the present application;

[0049] Fig. 22 This is a schematic diagram of the storage format of elimination flow data in a game scenario in an embodiment of the present application;

[0050] Fig.23 This is a schematic diagram showing the game review data of the business party in the game scenario in the embodiment of the present application;

[0051] Fig.24 This is a schematic diagram of an embodiment of a data processing device in an embodiment of the present application;

[0052] Fig.25 This is another schematic diagram of an embodiment of a data processing device in an embodiment of the present application;

[0053] Fig.26 FIG. 2 is a schematic diagram of another embodiment of a data processing device in an embodiment of the present application. DETAILED DESCRIPTION

[0054] The embodiments of the present application provide a data processing method, apparatus, device and storage medium for reducing the complexity of data collection and reducing the network overhead of the service provider.

[0055] The terms "first", "second", "third", "fourth", etc. (if any) in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein, for example. In addition, the terms "including" and "corresponding to" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0056] With the rapid development of Internet technology, people have developed more and more applications to meet various activities. After the application is launched, in order to adjust or update the various functions of the application in a timely manner, data analysis, abnormal log reporting, and data review are required. The premise of performing the above operations is that the log data and other data in the application need to be collected and then analyzed. The current technical means usually involves making point reports on running applications, and at the same time, in the process of making point reports, the format or field of the reported data is set in a targeted manner according to the needs of the business end. In an exemplary scheme, taking a game program as an example, the specific operation of the point report can be as follows: Figure 1 As shown, data points are organized at the key points of the game program code, and then when the client that has deployed the game program runs the game program, the corresponding data points can be reported to the server; the server stores the data in the database; and then the data is applied, such as behavioral analysis based on the data, abnormality reporting based on the data, or game replay based on the data. In this whole process, the data collection, analysis, and reporting processes are mainly run on the client that has deployed the application, which makes the client's calculation complex and the reporting traffic overhead large.

[0057] In order to solve this technical problem, the present application provides the following technical solutions: receiving a playback file sent by a first terminal, the playback file is generated by recording the operation data of an application, and the application is deployed on the first terminal; calling a playback parsing program to play back and parse the playback file to generate a data file, the playback parsing program is generated based on a protocol file and a table file, the protocol file is generated based on a business requirement field, the table file is generated based on the table information of the operation data, the business requirement field is used to indicate the data to be parsed, and the table information is used to indicate the data to be collected; storing the data file. In this way, all the operation data of the application are recorded to generate a playback file, and then a third-party playback parsing program is enabled to parse the generated session file to obtain the statistical data corresponding to the playback file, that is, the data file, and the data file is stored for the convenience of the business end to read on demand. In this way, recording the operation data to generate a playback file can reduce the organization and reporting process during the data collection process, thereby reducing the complexity of data collection. At the same time, since the third-party playback file is generated based on the business requirement field and the table information, and the business requirement field and the table information can be configured according to the specific business, the playback parsing program can be applied to a variety of scenarios, increasing the practicality of the solution. At the same time, the business requirement field and the table information can be set to cover most business requirements, so that the data file generated by the analysis can be applied to a variety of business scenarios, thereby reducing network resource overhead.

[0058] The data processing methods of the optional embodiments of the present application can be implemented based on artificial intelligence technology. Artificial intelligence is the theory, method, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can respond in a similar way to human intelligence. Artificial intelligence is to study the design principles and implementation methods of various intelligent machines so that the machines have the functions of perception, reasoning and decision-making.

[0059] Artificial intelligence technology is a comprehensive discipline that covers a wide range of fields, including both hardware-level and software-level technologies. Basic artificial intelligence technologies generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operating / interactive systems, mechatronics and other technologies. Artificial intelligence software technologies mainly include computer vision technology, speech processing technology, natural language processing technology, as well as machine learning / deep learning, autonomous driving, smart transportation and other major directions.

[0060] The present application also involves cloud technology, which refers to a hosting technology that unifies system resources such as hardware, software, and network in a wide area network or a local area network to achieve data computing, storage, processing, and sharing.

[0061] Cloud technology is a general term for network technology, information technology, integration technology, management platform technology, application technology, etc. based on the cloud computing business model. It can form a resource pool, which can be used on demand and is flexible and convenient. Cloud computing technology will become an important support. The background services of the technical network system require a large amount of computing and storage resources, such as video websites, picture websites and more portal websites. With the high development and application of Internet behavior, each item may have its own identification mark in the future, and all need to be transmitted to the background system for logical processing. Data of different levels will be processed separately, and all kinds of industry data require strong system backing support, which can only be achieved through cloud computing. The cloud technology involved in this application mainly refers to the transmission of data files and playback files between servers and terminal devices through the "cloud", etc.

[0062] For ease of understanding, some nouns in this application are explained below.

[0063] Remote Procedure Call (RPC) function: a protocol for requesting services from a remote computer over a network without having to understand the underlying network technology. The process is business processing and computing tasks. RPC can also be understood as a program that can call a remote process like calling a local method. In the OSI network seven-layer model, RPC spans the transport layer and the application layer. RPC makes it easier to develop applications including network distributed multi-programs. In an exemplary application scenario, the RPC can be used for communication and synchronous function calls between clients and servers in online games.

[0064] Protobuf (Protocol Buffers) protocol: is a data serialization format and protocol developed by Google for serializing and deserializing structured data. Specifically, Protobuf is a lightweight and efficient structured data storage format that can be used for structured data serialization and is suitable for data storage or RPC data exchange format. It can be used as a language-independent, platform-independent, and extensible serialized structured data format in the fields of communication protocols and data storage. Its main goal is efficient, flexible, and extensible data encoding.

[0065] Based on the above description, the server and terminal device can reduce the complexity of data collection and reduce the network overhead of the service provider by running the data processing solution provided by the embodiments of the present application.

[0066] The data processing solution provided in this application can be used to assist game users in analyzing game data.

[0067] When the data processing method provided in the embodiment of the present application is used to help a game service provider analyze game data, during the implementation of the method, the customer deploys a terminal with game software (such as a personal computer) as a terminal device, and the server of the game service provider that provides the game software (such as YY game) as a server. The personal computer and the server are connected via the Internet, so that the personal computer can obtain game data from the server of the game service provider, thereby replaying the game based on the game data.

[0068] In this scenario, the game service provider's server obtains the playback file recorded by the personal computer during the game player's game process (that is, the game player's operation data is recorded and then the playback file is generated), and then the server calls the playback parsing program to play back and parse the playback file to obtain the game data of the game player (at this time, the game data is the data required by the manufacturer), and then the personal computer reads the game data from the server and displays it to the game player, so that the game player can review the game according to the game data.

[0069] Of course, in addition to being applied to the above-mentioned scenarios, the method provided in the embodiments of the present application can also be applied to other scenarios that require operation data analysis, and the embodiments of the present application are not limited to specific application scenarios.

[0070] See also Figure 2 , Figure 2It is an optional architecture diagram under an application scenario of the data processing method provided in the embodiment of the present application. To implement and support a data processing method, the terminal device 100 is connected to the server 300 through the network 200, and the server 300 is connected to the database 400. The network 200 can be a wide area network or a local area network, or a combination of the two. The client for implementing the data processing method is deployed on the terminal device 100, wherein the client can be run on the terminal device 100 in the form of a browser, or can be run on the terminal device 100 in the form of an independent application (application, APP), etc. The specific presentation form of the client is not limited here. The server 300 involved in the present application can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (Content Delivery Network, CDN), and basic cloud computing services such as big data and artificial intelligence platforms. The terminal device 100 can be a smart phone, a tablet computer, a laptop, a PDA, a personal computer, a smart TV, a smart watch, a vehicle-mounted device, a wearable device, an intelligent voice interaction device, a smart home appliance, an aircraft, etc., but is not limited thereto. The terminal device 100 and the server 300 can be directly or indirectly connected through the network 200 by wired or wireless communication, and this application does not limit this. The number of servers 300 and terminal devices 100 is also not limited. The solution provided in this application can be completed independently by the terminal device 100, or by the server 300, or by the terminal device 100 and the server 300 in cooperation, and this application does not make specific limitations on this. Among them, the database 400, in short, can be regarded as an electronic file cabinet-a place for storing electronic files, and users can add, query, update, delete, and other operations on the data in the file. The so-called "database" is a collection of data that is stored together in a certain way, can be shared with multiple users, has as little redundancy as possible, and is independent of the application. Database Management System (DBMS) is a computer software system designed for managing databases. It generally has basic functions such as storage, interception, security, and backup.Database management systems can be classified according to the database models they support, such as relational, Extensible Markup Language (XML); or according to the types of computers they support, such as server clusters, mobile phones; or according to the query language used, such as Structured Query Language (SQL), XQuery; or according to performance impulse focus, such as maximum scale, maximum operating speed; or other classification methods. Regardless of the classification method used, some DBMSs can cross categories, for example, supporting multiple query languages ​​at the same time. In the present application, database 400 can be used to store data files. Of course, the storage location of data files is not limited to the database. For example, it can also be stored in the distributed file system of terminal device 100, blockchain or server 300, etc.

[0071] Based on the above description, the following game scenario illustrates the overall process of the technical solution provided by this application. Figure 3 As shown, a game program is deployed in the terminal device (wherein, the game program has a function of recording a playback file or a third-party application that can be used to record the operation data in the game program is deployed in the terminal device), so the terminal device records the game data in the game program to generate a playback file, and then reports the playback file to the server; the server calls a playback parsing program (wherein, the playback parsing program can be directly deployed on the server or on other devices) to perform playback parsing on the playback file, thereby performing data collection and data analysis on the game data in the game program, and then obtaining the data file; finally, the server stores the data file (it can be understood that when storing the data file, the server can directly store the data file on the disk of the server or store the data file in a third-party database, which is not limited here); finally, the second terminal can read data from the disk or the database on demand to implement operations such as abnormal reporting or game review.

[0072] In this embodiment, when recording the operation data in the application to generate a playback file, it can be understood that the information indicated by each frame is serialized. In an exemplary scheme, one section of the playback file can be as follows: Player name: Zhang San, Li Si, Wang Wu; Player health: (Zhang San health: 90), (Li Si health: 89), (Wang Wu health: 95); Player position: (Zhang San position: (250, 249)), (Li Si position: (115, 249)), (Wang Wu position: (250, 10)); Player current equipment props: (Zhang San current equipment props: dagger), (Li Si current equipment props: grenade), (Wang Wu current equipment props: blood recovery props). The program for recording the playback file in the game program can be the recording program that comes with the development engine of the game program, or it can be a third-party recording program, which is not limited here.

[0073] based on Figure 3 The flow chart shown in FIG. 1 illustrates the generation of the playback parsing program in this application:

[0074] In this application, when replaying a playback file, the main principle is to decode the network data in the playback file again to generate corresponding video data or audio data or image data, which is not limited here. In an exemplary scheme, the playback in the Unreal Engine is used for explanation: the playback file recorded and generated by the Unreal Engine actually records the continuous network data sent from the game server to the client. And playback is actually simulating the process of sending these network data to the client again. The overall process is similar to Figure 4 Just like pouring water as shown, while pouring water (network data stream) into the cup (client), the client will analyze the components (object values) contained in the water and display them, eventually allowing the client to restore the same performance as when the game was originally operated, thereby achieving the purpose of playback.

[0075] Based on the above playback principle, when developing the playback analysis program, the specific process can be as follows Figure 5 and Figure 6 As shown:

[0076] like Figure 5 As shown, the business demander provides the business demand to the data processing device; then the data processing device determines the business demand field according to the business demand, and generates a protocol file according to the business demand field; at the same time, the data processing device finds or adds corresponding fields according to the demand as matching table information, and then generates a table file according to the matching table information; the data processing device then generates a C++ file according to the protocol file, and at the same time generates another C++ file according to the table file; finally, the data processing device merges the two C++ files in the code compiler to generate the playback parsing program.

[0077] The following is the above Figure 5 The described process is explained in detail. Please refer to Figure 6 As shown:

[0078] 601. Obtain the business requirement field and the matching table information.

[0079] The data processing device determines the business requirement field and the matching table information according to the business requirement.

[0080] In this application, the business requirement can be set based on the specific operation events of the application, or it can be set according to the requirements of a third party. For example, in a game scenario, the business requirement can be set based on the game player's game operation events. Or if a third party requires only the wins and losses in the game scenario to be counted, the business requirement can be set as the game results.

[0081] After determining the business requirements, the corresponding business requirement fields can be set according to the business requirements. In an exemplary solution, in a game scenario, the business requirement can be set based on the game player's game operation events, and multiple business requirement fields can be set for the player's game operation events. For example, if the business requirement is to obtain the game operation events of the player using props, the business requirement field can decompose the game operation events of the player using props into several business requirement fields. For example, the business requirement fields such as the prop usage time, player ID, player location, prop ID, and prop quantity are decomposed.

[0082] It should be understood that the business requirement field can also be a field called by the RPC function based on business requirements. For example, if you need to obtain cheating players in a game, you need to analyze the corresponding data (for example, player location information, player health information, etc.). At this time, you can mark the corresponding RPC function, and then record the field called by the RPC function when recording and replaying the file; finally, when the RPC function is obtained during the playback analysis process, directly call the field called by the RPC function to perform cheating calculations.

[0083] At the same time, after determining the business needs, the corresponding table information can be set according to the business needs. In an exemplary scheme, in a game scenario, the business needs can be set based on the game player's game operation events, and multiple table information can be set for the player's game operation events. It should be understood that the table information is configured according to the code of the game program, so the table information will be used to indicate the code of the data to be collected. For example, in the specific collection process of collecting player usage, the code indicating the prop usage time in the game program can be used as the table information, the code indicating the player identifier can be used as the table information, the code indicating the player's position can be used as the table information, the code indicating the prop identifier can be used as the table information, and the code indicating the number of props can be used as the table information.

[0084] 602. Generate the protocol file based on the business requirement field, and generate the table file based on the table configuration information.

[0085] After obtaining the business requirement field, a corresponding protocol file can be generated based on the business requirement field (the protocol file can be understood as the protocol between the playback parsing program and the third-party business requirement terminal. For example, the playback parsing program and the third-party business requirement terminal negotiate on the player's use of props to confirm the need to report the prop usage time, player ID, player location, prop ID, and prop quantity). In an exemplary solution, the protocol file can be a protobuf protocol file. When the business requirement field is the prop usage time, player ID, player location, prop ID, and prop quantity, the protobuf protocol file can be as follows Figure 7 As shown, the event name is set and the business requirement field corresponding to the event is set at the same time.

[0086] At the same time, after determining the table information, a corresponding table file can be generated based on the table information and the application code (the table file can be understood as a data collection agreement between the playback parsing program and the application. For example, the playback parsing program and the application perform a data collection agreement on the player's use of props, confirming that the prop usage time, player ID, player location, prop ID, and prop quantity need to be collected). Based on the above description, in an exemplary copy, the table file can be set as follows Figure 8 As shown, the table file includes information such as code identification, event name indicated by the code, collection list, capture keyword, and parent object.

[0087] 603. Generate a first code file based on the protocol file, and generate a second code file based on the table file.

[0088] In this application, after obtaining the protocol file, a corresponding code generation program can be used to generate a first code file based on the protocol file. In an exemplary scheme, if the protocol file is a protobuf protocol file, the data processing device can download the corresponding code generation program (such as protoc.exe) from Google, and then execute the code generation program through the command line to implement the first code file based on the protobuf protocol file (the first code file can be C++ code, in which case the first code file can be named replay.pb.cc, which is not limited here).

[0089] At the same time, after obtaining the table file, a code template can be obtained, wherein the objects of the code template correspond one-to-one to the table information in the table file; then the objects in the code template are replaced with the table information in the table file, thereby obtaining the second code file. In an exemplary solution, the table file is as follows Figure 8 , and the code template can be Fig. 9 As shown. Figure 8 The table file shown includes code identifiers (i.e. Figure 8 The ID shown in , name, collection list, capture keyword and parent object. The name can be understood as the name of the operation event corresponding to the code identifier; the collection list can be understood as the information to be collected corresponding to the operation event; the capture keyword can be understood as the field identifier when collecting data during the playback analysis process; and the parent object is used to indicate the object corresponding to the data to be collected. Fig. 9 The code module shown includes code running information, in which the corresponding objects are replaced by keywords. Therefore, when generating a code file, Figure 8 The matching information shown is the same as Fig. 9 Replace the object in Fig.10 The code file shown in FIG. The logic for replacing the code template with the matching table information in the table file is as follows: Fig.11 As shown, you need to find the keywords in the code template and replace them with the corresponding table information in the table file. The code files generated by the replacement are named accordingly (such as AActor.h, ACharacter.h, ACharacter2.h, ACharacter3.h and APawn.h).

[0090] 604. Integrate the first code file and the second code file to obtain the playback parsing program.

[0091] After respectively obtaining the first code file and the second code file, the first code file and the second code file are input into the code compiler, and then the first code file and the second code file are integrated and compiled through the corresponding code to finally obtain the playback parsing program. In an exemplary scheme, the integration compilation process can be understood as follows: after the first code file and the second code file are input into the code compiler, a corresponding mapping code is created so that a one-to-one correspondence is established between the business requirement field in the first code file and the matching table information in the second code file, so that the generated code file can realize data collection and data analysis of the playback file. At the same time, the playback parsing tool finally generated can be named accordingly (such as ReplayParserForDataCollection.exe).

[0092] After the playback parsing program is generated, the processing logic of the playback parsing program can be as follows Fig.12 As shown:

[0093] After calling the playback parsing program, the playback file is read in a loop to obtain the corresponding network data; then the network data is sent to the client based on the network channel; then the client parses the received data packet and obtains a series of information corresponding to the network data, such as object creation, destruction, value change, RPC sending and receiving; then the corresponding image information or video information is restored based on the above information and the corresponding picture information; or data statistics are performed based on the above information.

[0094] It can be understood that in the specific implementation of the present application, related data such as playback files and data files are involved. When the above embodiments of the present application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.

[0095] Combined with the above introduction, the data processing method in this application will be introduced below. Please refer to Fig.13 , an embodiment of the data processing method in the embodiment of the present application includes:

[0096] 1301. Receive a playback file sent by a first terminal, where the playback file is generated by recording operation data of an application program deployed on the first terminal.

[0097] In the present application, when the application is running, the operation data of the application can be recorded by the recording program that comes with the application to generate the playback file; the operation data of the application can also be recorded by a third-party recording program to generate the playback file; then the terminal where the application is deployed reports the playback file to the data processing device through the network. In an exemplary scheme, in the game program developed using the Unreal Engine, when the game is running, the recording can be started through the UGameInstance::StartRecordingReplay, and then a series of game actions can be performed, and finally after the game is over, the recording can be stopped and the playback file can be generated through UGameInstance::StopRecordingReplay; then the first terminal where the game program is deployed sends the playback file to the system server.

[0098] It should be understood that the first terminal can be a terminal device running the game program, and can also be understood as a background server of the game program, that is, the playback file can be recorded by the terminal device running the game program, or by the background server of the game. When the terminal device running the game program records the playback file, only the playback file of a single perspective can be recorded, and then the playback files of multiple terminal devices are integrated in the background server of the game to generate an overall playback file. The system server is a data processing device in this embodiment, which can specifically be the background server of the game program or a server that performs data analysis independently, which is not limited here.

[0099] 1302. Call the playback parsing program to perform playback parsing on the playback file to generate a data file. The playback parsing program is generated based on the protocol file and the table file. The protocol file is generated based on the business requirement field. The table file is generated based on the table configuration information of the operation data. The business requirement field is used to indicate the data to be parsed, and the table configuration information is used to indicate the data to be collected.

[0100] After the data processing device receives the playback file, it can call the above Figure 6 The playback parsing program generated by the solution performs playback parsing on the playback file to generate a data file.

[0101] In this application, the specific process of the playback parsing program for playback parsing the playback file can be as follows: Fig.14 As shown:

[0102] 1. The playback parsing program reads the playback file. It should be understood that when the playback parsing program reads the playback file, it needs to read it in segments to obtain the network data information at the current moment.

[0103] 2. Determine whether the current network data information is the end of the playback file. If yes, execute 6; if no, execute 3.

[0104] 3. Parse the network data information at the current moment, and determine the object set at the current moment and the attribute values ​​of each object in the object set according to the network data information. In this embodiment, each object in the object set can be understood as an object that generates operation data in an application, such as a game player in a game application, a student in an educational application, a driver in a vehicle-mounted application, etc. The attribute values ​​of each object can be understood as the attribute fields of each object and the corresponding values. The attribute field is used to describe the operation event of the object. For example, in a game application, the attribute field of the game player may include the player name, the player's gender, blood volume, props used, the location, etc. In an educational application, the attribute field of the student may include the student's name, the student's age, the student's education, the student's progress, the student's course name, the practice progress, the practice results, etc. In a vehicle-mounted application, the attribute field of the driver may include the driver's action name, the current route status, the driver's gender, the driver's name, the driver's driving time, etc.

[0105] In an exemplary scenario, if in a game scenario, if the current network data information indicates the following information: the game players existing at the current moment include game player A and game player B, the health of game player A is 100, the prop currently used by game player A is prop A, the health of game player B is 40, and the prop currently used by game player B is prop B. The network data information at the previous moment indicates the following information: the game players existing at the current moment include game player C and game player B, the health of game player C is 20, the prop currently used by game player C is prop A, the health of game player B is 80, and the prop currently used by game player B is prop B. Then, the data processing device can create game player A, destroy game player C, and modify the health information of game player B according to the current network data information.

[0106] 4. Determine whether the attribute field matches the business requirement field. If yes, execute 5; if no, execute 1.

[0107] 5. Integrate the value corresponding to the attribute field and the attribute field to generate the data file. In this embodiment, when integrating and generating the data file, the integration can be performed according to specific business needs. For example, if the business needs require obtaining the number of deaths of game players, the number of deaths of game player C can be increased by one at the current moment.

[0108] 6. Output data file.

[0109] 1303. Store the data file.

[0110] The data processing device stores the data files outputted in the above process. In this embodiment, the data files can be stored in the disk of the data processing device, or in other third-party databases or distributed storage or cloud storage, which is not limited here.

[0111] After storing the data file, the data processing device can also receive an access request sent by the second terminal, and then respond to the access request, so that the second terminal can read the target data from the data file as needed. For example, the data file stores the output power, number of kills, number of deaths, props used in the game, information on eliminated players, and player rankings of the game players in the game battle, and the second terminal only needs the output power, number of kills, and number of deaths of the game players in the game battle, and can only read the corresponding data from the data file.

[0112] The data processing method of this application is described below using a game scenario:

[0113] The battle review function in Game A needs to know the detailed information of a player eliminating other players in the current game, such as the elimination time, the eliminated player ID, the positions of both players at the time of elimination, the props used at the time of elimination, etc.

[0114] The specific process can be as follows:

[0115] 1. When developing the playback parsing program, determine the fields to be counted together with the business demand side and add them to the protobuf protocol file. The protobuf protocol file can be as follows:

[0116] / / Elimination / Elimination Event

[0117] message KillFlow{

[0118] float time = 1; / / Kill time (starting from when the plane takes off)

[0119] int 64uid = 2; / / killer player ID

[0120] int 64tid=3; / / The player ID of the person being killed

[0121] int 64cid=4; / / The player ID of the person who caused the kill

[0122] int 32resid=5; / / Item ID

[0123] Vector src = 6; / / killer position

[0124] Vector dst = 7; / / The position of the person being killed

[0125] float distance = 8; / / kill distance

[0126] DamageType damagetype=9; / / Damage type

[0127] int 32bAced=10; / / whether the team is destroyed

[0128] }

[0129] It should be understood that the above-mentioned protobuf protocol file is only an exemplary solution, and the specific solution can be designed according to the actual situation, which is not limited here.

[0130] 2. Use the protobuf tool to automatically generate C++ code from the protobuf protocol file. The specific code file generated can be as follows Fig.15 shown.

[0131] 3. Since elimination-related events require the use of multiple data for calculation and processing, the corresponding code of the game program is marked with an RPC function to record the data of elimination-related events into the playback file. The specific code file can be designed as follows Fig.16 As shown in a and b in the figure, the specific details can be as follows:

[0132] First, Fig.16 As shown in a, a custom data structure is created for the kill elimination event. That is, the fields of the elimination-related events are defined as follows: FString UID; FString TID; FString CauserID; int64 resID; int32DamageType; bool bAced.

[0133] Then as Fig.16 As shown in b, the RPC function is marked in the game program so that when the game program runs to the RPC function, the corresponding elimination-related event data is recorded.

[0134] 4. Match the fields of the user in the RPC function to generate a corresponding table file. The specific table file can be as follows Fig.17 shown.

[0135] 5. Use the code template to generate the corresponding C++ code according to the table file. The specific code file can be as follows Fig.18 shown.

[0136] 6. Input the code files generated in 3 and 5 into the development compiler of the playback analysis program, and then write the data integration logic. The specific logic can be as follows: During the playback analysis process, when the RPC function with the elimination event is captured, call its attached value, combine it with other data, and record it in the data file. The specific code file can be as follows: Fig.19 shown.

[0137] 7. Compile the entire project to get the executable file of the playback parsing program. Its specific form can be as follows Fig. 20 shown.

[0138] 8. Use the playback parsing program to parse the playback file to get all the eliminated data flow. The input of the playback file and the output of the eliminated data flow can be as follows: Fig.21 The elimination data flow can be set as shown. Fig. 22 The business demand side can read the corresponding data from the eliminated data flow and store it in the format shown in the figure. Fig.23 The interface shown is displayed.

[0139] Based on the above scheme, in the technical scheme provided by the embodiment of the present application, all the operation data of the application are recorded to generate a playback file, and then a third-party playback parsing program is enabled to parse the generated session file to obtain the statistical data corresponding to the playback file, that is, the data file, and the data file is stored for the convenience of the business end to read on demand. In this way, recording the operation data to generate a playback file can reduce the organization and reporting process in the data collection process, thereby reducing the complexity of data collection. At the same time, since the third-party playback file is generated based on the business demand field and the matching table information, and the business demand field and the matching table information can be configured according to the specific business, the playback parsing program can be applied to a variety of scenarios from the results, increasing the practicality of the solution. At the same time, the business demand field and the matching table information can be set to cover most of the business needs, so that the data file generated by the analysis can be applied to a variety of business scenarios, thereby reducing network resource overhead.

[0140] The data processing device in this application is described in detail below. Fig.24 , Fig.24 This is a schematic diagram of an embodiment of a data processing device in an embodiment of the present application. The data processing device 20 includes:

[0141] The transceiver module 201 is used to receive a playback file sent by a first terminal, where the playback file is generated by recording the operation data of an application, where the application is deployed on the first terminal;

[0142] Processing module 202, used to call a playback parsing program to perform playback parsing on the playback file to generate a data file, the playback parsing program is generated based on a protocol file and a table file, the protocol file is generated based on a business requirement field, the table file is generated based on the table configuration information of the operation data, the business requirement field is used to indicate the data to be parsed, and the table configuration information is used to indicate the data to be collected;

[0143] Storage module 203 is used to store the data file. In an embodiment of the present application, a data processing device is provided. Using the above device, all the operation data of the application are recorded to generate a playback file, and then a third-party playback parsing program is enabled to parse the generated conversation file to obtain the statistical data corresponding to the playback file, that is, the data file, and the data file is stored for the convenience of the business end to read on demand. In this way, recording the operation data to generate a playback file can reduce the organization and reporting process in the data collection process, thereby reducing the complexity of data collection. At the same time, since the third-party playback file is generated based on the business demand field and the matching table information, and the business demand field and the matching table information can be configured according to the specific business, the playback parsing program can be applied to a variety of scenarios from the results, increasing the practicality of the solution. At the same time, the business demand field and the matching table information can be set to cover most of the business needs, so that the data file generated by the analysis can be applied to a variety of business scenarios, thereby reducing network resource overhead.

[0144] Optionally, in the above Fig.24 On the basis of the corresponding embodiment, in another embodiment of the data processing device 20 provided in the embodiment of the present application,

[0145] The processing module 202 is used to obtain the business requirement field and the matching table information; generate the protocol file based on the business requirement field, and generate the table file based on the matching table information; generate a first code file based on the protocol file, and generate a second code file based on the table file; integrate the first code file with the second code file to obtain the playback parsing program.

[0146] In an embodiment of the present application, a data processing device is provided. With the above device, since the third-party playback file is generated based on the business requirement field and the table information, and the business requirement field and the table information can be configured according to the specific business, the playback parsing program can be applied to a variety of scenarios, increasing the practicality of the solution. At the same time, the business requirement field and the table information can be set to cover most business requirements, so that the data file generated by the analysis can be applied to a variety of business scenarios, thereby reducing network resource overhead.

[0147] Optionally, in the above Fig.24On the basis of the corresponding embodiment, in another embodiment of the data processing device 20 provided in the embodiment of the present application, the business requirement field is a fixed field set based on the business requirement;

[0148] Alternatively, the business requirement field is a field that is called by a remote procedure call function based on business requirements.

[0149] In an embodiment of the present application, a data processing device is provided. Using the above device, fixed fields are set according to business requirements and specific operation scenarios, that is, data corresponding to the fields are directly obtained. In another way, the business requirement field is a call field that needs to be calculated and processed, so that a large amount of data calculation can be transferred from the terminal to a third-party playback parsing program for processing, thereby reducing the amount of business calculation.

[0150] Optionally, in the above Fig.24 On the basis of the corresponding embodiment, in another embodiment of the data processing device 20 provided in the embodiment of the present application,

[0151] The protocol file is a protobuf protocol file, and the processing module 202 is used to call a code generation program to generate the first code file based on the protobuf protocol file.

[0152] In an embodiment of the present application, a data processing device is provided. By using the above device, when the protocol file is a protobuf protocol file, the existing code generation program can be used to directly convert the protobuf protocol file into a code file, thereby reducing the process of manual code development and saving manpower.

[0153] Optionally, in the above Fig.24 On the basis of the corresponding embodiment, in another embodiment of the data processing device 20 provided in the embodiment of the present application,

[0154] The processing module 202 is used to obtain a code template, and the objects of the code template correspond one-to-one to the table configuration information in the table file;

[0155] The objects in the code template are replaced based on the matching table information to generate the second code file.

[0156] In an embodiment of the present application, a data processing device is provided. By using the device, a code template is used to automatically generate code for the table information indicated in the table file, which can save manpower.

[0157] Optionally, in the above Fig.24 On the basis of the corresponding embodiment, in another embodiment of the data processing device 20 provided in the embodiment of the present application, the trajectory data of each positioning point also includes positioning speed information;

[0158] The processing module 202 is used to call the playback parsing program to read the playback file to obtain the network data information at the current moment;

[0159] When it is determined that the network data information at the current moment is not the end of the playback file, determining an object set and an attribute value of each object in the object set according to the network data information, the objects in the object set are included in the application, and the attribute value is used to indicate an attribute field of the object and a corresponding value thereof;

[0160] When the attribute field of the attribute value matches the business requirement field, generating the data file according to the attribute value;

[0161] Repeat the above operation until the network data information read is the end of the playback file, and then output the data file.

[0162] In an embodiment of the present application, a data processing device is provided. The above device is used to play back the playback file, and at the same time, the network data information in the playback process is parsed, that is, the attribute fields in the attribute values ​​are matched one by one with the business requirement fields. If they are the same, the attribute values ​​need to be statistically generated to generate the data file. Since the third-party playback file is generated based on the business requirement field and the table information, and the business requirement field and the table information can be configured according to the specific business, the playback parsing program can be applied to a variety of scenarios, thereby increasing the practicality of the solution. At the same time, the business requirement field and the table information can be set to cover most of the business requirements, so that the data file generated by the analysis can be applied to a variety of business scenarios, thereby reducing network resource overhead.

[0163] Optionally, in the above Fig.24 On the basis of the corresponding embodiment, in another embodiment of the data processing device 20 provided in the embodiment of the present application, the transceiver module 201 is used to receive an access request from a second terminal, where the access request is used to indicate a service demand of the second terminal;

[0164] In response to the access request, the second terminal obtains target data from the data file, where the target data is determined from the data file based on the business requirement.

[0165] In an embodiment of the present application, a data processing device is provided. With the above device, the server storing the data file can receive data from each business terminal. Since the data file includes information on multiple business needs, each business terminal can read it on demand according to the needs, and the server storing the data file does not need to report data to the business terminal, thereby saving the network overhead of the server.

[0166] The data processing device provided in this application can be used in a server, see Fig.25 , Fig.25 : is a schematic diagram of a server structure provided in an embodiment of the present application. The server 300 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPU) 322 (for example, one or more processors) and memory 332, and one or more storage media 330 (for example, one or more mass storage devices) storing application programs 342 or data 344. Among them, the memory 332 and the storage medium 330 can be short-term storage or permanent storage. The program stored in the storage medium 330 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server. Furthermore, the central processing unit 322 can be configured to communicate with the storage medium 330 to execute a series of instruction operations in the storage medium 330 on the server 300.

[0167] The server 300 may also include one or more power supplies 326, one or more wired or wireless network interfaces 350, one or more input and output interfaces 358, and / or one or more operating systems 341, such as Windows Server 2000. TM , Mac OS X TM , Unix TM ,Linux TM , FreeBSD TM etc.

[0168] The steps performed by the data processing device in the above embodiment can be based on the Fig.25 The server structure shown.

[0169] The data processing device provided in this application can be used in terminal equipment. Fig.26 For the sake of convenience, only the parts related to the embodiments of the present application are shown. For specific technical details not disclosed, please refer to the method part of the embodiments of the present application. In the embodiments of the present application, the terminal device is a smart phone as an example for explanation:

[0170] Fig.26 The block diagram shows a partial structure of a smart phone related to the terminal device provided in the embodiment of the present application. Fig.26 The smart phone includes: a radio frequency (RF) circuit 410, a memory 420, an input unit 430, a display unit 440, a sensor 450, an audio circuit 460, a wireless fidelity (WiFi) module 470, a processor 480, and a power supply 490. Those skilled in the art will appreciate that Fig.26The structure of the smartphone shown in the figure does not constitute a limitation of the smartphone, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0171] Combine the following Fig.26 A detailed introduction to the various components of a smartphone:

[0172] The RF circuit 410 can be used for receiving and sending signals during the process of sending and receiving information or making calls. In particular, after receiving the downlink information of the base station, it is sent to the processor 480 for processing; in addition, the designed uplink data is sent to the base station. Generally, the RF circuit 410 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (LNA), a duplexer, etc. In addition, the RF circuit 410 can also communicate with the network and other devices through wireless communication. The above-mentioned wireless communication can use any communication standard or protocol, including but not limited to the global system of mobile communication (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), long term evolution (LTE), email, short messaging service (SMS), etc.

[0173] The memory 420 can be used to store software programs and modules. The processor 480 executes various functional applications and data processing of the smartphone by running the software programs and modules stored in the memory 420. The memory 420 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the smartphone (such as audio data, a phone book, etc.), etc. In addition, the memory 420 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.

[0174] The input unit 430 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the smart phone. Specifically, the input unit 430 may include a touch panel 431 and other input devices 432. The touch panel 431, also known as a touch screen, can collect the user's touch operation on or near it (such as the user's operation on the touch panel 431 or near the touch panel 431 using any suitable object or accessory such as a finger, stylus, etc.), and drive the corresponding connection device according to a pre-set program. Optionally, the touch panel 431 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into contact coordinates, and then sends it to the processor 480, and can receive and execute commands sent by the processor 480. In addition, the touch panel 431 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 431, the input unit 430 may also include other input devices 432. Specifically, other input devices 432 may include but are not limited to one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, etc.

[0175] The display unit 440 can be used to display information input by the user or information provided to the user and various menus of the smartphone. The display unit 440 may include a display panel 441. Optionally, the display panel 441 may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like. Further, the touch panel 431 may cover the display panel 441. When the touch panel 431 detects a touch operation on or near it, it is transmitted to the processor 480 to determine the type of touch event. Subsequently, the processor 480 provides a corresponding visual output on the display panel 441 according to the type of touch event. Although in Fig.26 In the embodiment, the touch panel 431 and the display panel 441 are used as two independent components to implement the input and output functions of the smartphone, but in some embodiments, the touch panel 431 and the display panel 441 can be integrated to implement the input and output functions of the smartphone.

[0176] The smartphone may also include at least one sensor 450, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 441 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 441 and / or the backlight when the smartphone is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that recognize the posture of the smartphone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.

[0177] The audio circuit 460, the speaker 461, and the microphone 462 can provide an audio interface between the user and the smartphone. The audio circuit 460 can transmit the received audio data to the speaker 461 after converting the received audio data into an electrical signal, which is converted into a sound signal for output; on the other hand, the microphone 462 converts the collected sound signal into an electrical signal, which is received by the audio circuit 460 and converted into audio data, and then the audio data is output to the processor 480 for processing, and then sent to another smartphone through the RF circuit 410, or the audio data is output to the memory 420 for further processing.

[0178] WiFi is a short-range wireless transmission technology. Smartphones can help users send and receive emails, browse web pages, and access streaming media through WiFi module 470, which provides users with wireless broadband Internet access. Fig.26 A WiFi module 470 is shown, but it is understandable that it is not an essential component of the smartphone and can be omitted as needed without changing the essence of the invention.

[0179] Processor 480 is the control center of the smartphone, which uses various interfaces and lines to connect various parts of the entire smartphone, and executes various functions of the smartphone and processes data by running or executing software programs and / or modules stored in memory 420, and calling data stored in memory 420, thereby monitoring the smartphone as a whole. Optionally, processor 480 may include one or more processing units; optionally, processor 480 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into processor 480.

[0180] The smart phone also includes a power source 490 (such as a battery) for supplying power to various components. Optionally, the power source can be logically connected to the processor 480 through a power management system, thereby managing functions such as charging, discharging, and power consumption management through the power management system.

[0181] Although not shown, the smartphone may also include a camera, a Bluetooth module, etc., which will not be described in detail here.

[0182] The steps performed by the data processing device in the above embodiment can be based on the Fig.26 The terminal device structure shown.

[0183] A computer-readable storage medium is also provided in an embodiment of the present application. The computer-readable storage medium stores a computer program, which, when executed on a computer, enables the computer to execute the methods described in the aforementioned embodiments.

[0184] The present application also provides a computer program product including a program, which, when executed on a computer, enables the computer to execute the methods described in the aforementioned embodiments.

[0185] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0186] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the unit is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0187] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0188] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0189] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method of each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.

[0190] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A data processing method, characterized in that: include: Receiving a playback file sent by a first terminal, wherein the playback file is generated by recording operation data of an application program deployed on the first terminal; Calling a playback parsing program to perform playback parsing on the playback file to generate a data file, wherein the playback parsing program is generated based on a protocol file and a table file, wherein the protocol file is generated based on a business requirement field, and the table file is generated based on table configuration information of the operation data, wherein the business requirement field is used to indicate data to be parsed, and the table configuration information is used to indicate data to be collected; The data file is stored.

2. The method according to claim 1, characterized in that: Before calling the playback parsing program to perform playback parsing on the playback file to generate reporting data, the method further includes: Obtaining the business requirement field and the table configuration information; Generate the protocol file based on the business requirement field, and generate the table file based on the table configuration information; Generate a first code file based on the protocol file, and generate a second code file based on the table file; The first code file and the second code file are integrated to obtain the playback parsing program.

3. The method according to claim 2, characterized in that The business requirement field is a fixed field set based on business requirements; Alternatively, the business requirement field is a field that is called by a remote procedure call function based on business requirements.

4. The method according to claim 2, characterized in that: The protocol file is a protobuf protocol file, and generating a first code file based on the protocol file includes: A code generation program is called to generate the first code file based on the protobuf protocol file.

5. The method according to claim 2, characterized in that: The generating a second code file based on the table file comprises: Obtain a code template, wherein objects of the code template correspond one-to-one to the table configuration information in the table file; The objects in the code template are replaced based on the matching table information to generate the second code file.

6. The method according to any one of claims 1 to 5, characterized in that The calling of the playback parsing program to perform playback parsing on the playback file to generate a data file comprises: Calling the playback parsing program to read the playback file to obtain network data information at the current moment; When it is determined that the network data information at the current moment is not the end of the playback file, determining an object set and an attribute value of each object in the object set according to the network data information, the objects in the object set are included in the application, and the attribute value is used to indicate an attribute field of the object and a corresponding value thereof; When the attribute field of the attribute value matches the business requirement field, generating the data file according to the attribute value; Repeat the above operation until the network data information read is the end of the playback file, and then output the data file.

7. The method according to any one of claims 1 to 4, characterized in that The method further comprises: receiving an access request from a second terminal, where the access request is used to indicate a service requirement of the second terminal; In response to the access request, the second terminal obtains target data from the data file, where the target data is determined from the data file based on the business requirement.

8. A data processing device, characterized in that: include: A transceiver module, configured to receive a playback file sent by a first terminal, wherein the playback file is generated by recording operation data of an application program, and the application program is deployed on the first terminal; A processing module, used for calling a playback parsing program to perform playback parsing on the playback file to generate a data file, wherein the playback parsing program is generated based on a protocol file and a table file, wherein the protocol file is generated based on a business requirement field, and the table file is generated based on the table configuration information of the operation data, wherein the business requirement field is used to indicate data to be parsed, and the table configuration information is used to indicate data to be collected; A storage module is used to store the data file.

9. A computer device, characterized in that: include: Memory, processor, and bus system; Wherein, the memory is used to store programs; The processor is used to execute the program in the memory, and the processor is used to execute the method according to any one of claims 1 to 7 according to the instructions in the program code; The bus system is used to connect the memory and the processor so that the memory and the processor can communicate with each other.

10. A computer-readable storage medium comprising instructions, which, when executed on a computer, causes the computer to perform the method according to any one of claims 1 to 7.