CN114416029A - Data processing method, device, equipment, storage medium and computer program product - Google Patents

Data processing method, device, equipment, storage medium and computer program product Download PDF

Info

Publication number
CN114416029A
CN114416029A CN202111601053.5A CN202111601053A CN114416029A CN 114416029 A CN114416029 A CN 114416029A CN 202111601053 A CN202111601053 A CN 202111601053A CN 114416029 A CN114416029 A CN 114416029A
Authority
CN
China
Prior art keywords
data
component
determining
global
subscription
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.)
Pending
Application number
CN202111601053.5A
Other languages
Chinese (zh)
Inventor
魏嘉汛
董敏
王鹏翔
田泽润
覃耀辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202111601053.5A priority Critical patent/CN114416029A/en
Publication of CN114416029A publication Critical patent/CN114416029A/en
Priority to PCT/CN2022/113850 priority patent/WO2023116003A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • G06F8/433Dependency analysis; Data or control flow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The disclosure provides a data processing method, a data processing device, data processing equipment, a storage medium and a computer program product, and relates to the technical field of computer application, in particular to the technical field of data processing of web front-end application. The specific implementation scheme is as follows: determining target data to be processed and determining a data source of the target data; performing instrumentation processing between the target data and the data source to acquire global data in the process that the target data accesses the data source; and determining and outputting the dependency relationship among the data in the global data. By the method and the device, the dependency relationship among all data in the global data can be determined and output, and the dependency relationship among the global data is analyzed.

Description

Data processing method, device, equipment, storage medium and computer program product
Technical Field
The present disclosure relates to the field of computer application technologies, and in particular, to the field of data processing technologies for web front-end applications.
Background
For the web front-end application under an MVVM (Model-View-View Model), the details of View change can be hidden by adopting a data-driven method, so that a developer only needs to concentrate on processing related to data change, and does not need to concern about the details of View change updating.
In the related art, for code data of a web front-end application, a specific state management tool of a matching framework can be applied to perform global data state analysis and management so as to obtain data with changed data states, track and locate problems occurring in the application, and perform correctness analysis on the applied data in the process from a model to a view.
Disclosure of Invention
The present disclosure provides a method, apparatus, device, storage medium and computer program product for data processing.
According to an aspect of the present disclosure, there is provided a data processing method including:
determining target data to be processed and determining a data source of the target data; performing instrumentation processing between the target data and the data source to acquire global data in the process that the target data accesses the data source; and determining and outputting the dependency relationship among the data in the global data.
According to another aspect of the present disclosure, there is provided a data processing apparatus including:
the device comprises a determining unit, a processing unit and a processing unit, wherein the determining unit is used for determining target data to be processed and determining a data source of the target data; the processing unit is used for performing instrumentation processing between the target data and the data source so as to acquire global data in the process that the target data accesses the data source; and the output unit is used for determining and outputting the dependency relationship among the data in the global data.
According to yet another aspect of the present disclosure, there is provided an electronic device including:
at least one processor; and a memory communicatively coupled to the at least one processor; wherein,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method referred to above.
According to yet another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method referred to above.
According to yet another aspect of the disclosure, a computer program product is provided, comprising a computer program which, when executed by a processor, implements the method referred to above.
By the method and the device, the instrumentation is performed between the target data and the data source, and then the global data in the process of accessing the data source by the target data can be acquired, so that a data processing device with higher efficiency can be provided.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The drawings are included to provide a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
FIG. 1 is a flow chart of a method of data processing shown in an exemplary embodiment according to the present disclosure;
FIG. 2 illustrates a global data production consumption relationship diagram shown in an exemplary embodiment of the present disclosure;
FIG. 3 illustrates a schematic diagram of the staking between a producer and a consumer shown in an exemplary embodiment according to the present disclosure;
FIG. 4 is a flow chart of a method of data processing shown in an exemplary embodiment according to the present disclosure;
FIG. 5 is a block diagram of a data processing apparatus provided in accordance with the present disclosure;
FIG. 6 illustrates a schematic block diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
The data processing method provided by the disclosure is applied to a scene of analyzing and processing data applied to a web front end. For example, the method can be applied to data analysis processing of modern web front-end application based on MVVM framework.
In the related art, a front-end program analysis tool can be used for analyzing the global data of the web front-end application. In various analysis tools for analyzing the global data of the web front-end application, program analysis capability is mainly focused on a specific state management scheme, and data change tracking capability for a specific scheme is provided. The data change tracking capability is mainly started from the change of a single data state, and the data change relation involved in the data operation process is analyzed in a dynamic operation mode so as to be used for problem positioning of a program and program correctness analysis. However, this solution only focuses on tracking of data changes, and analysis on dependency between data and consumption characteristics is deficient, and particularly, for parts related to data subscription and data dependency, analysis capability is lacking, and thus problems encountered in business cannot be completely solved, thereby affecting research and development efficiency. In other words, in the scheme for managing the data state of the global data in the related art, only tracking of data change is supported, and the analysis of the dependency relationship between data is not involved, and the data is not involved in which view elements the data is consumed. In addition, in the related art, the output result of data state management is a log with a linear structure, and the association relationship between the output results of the components cannot be embodied, that is, the interaction relationship between the logs, the series relationship of the operations of the components, and the like cannot be embodied.
In view of this, the present disclosure provides a data processing method, in the method, global data involved in a process that data with consumption characteristics accesses a data source of the data is obtained through a instrumentation processing manner, and a dependency relationship between data in the global data is determined and output, so as to implement analysis of dependency and consumption characteristics between data in the global data.
Fig. 1 is a flow chart of a data processing method shown in an exemplary embodiment according to the present disclosure. Referring to fig. 1, the data processing method includes the following steps S101 to S103.
In step S101, target data to be processed is determined, and a data source of the target data is determined.
In step S102, instrumentation is performed between the target data and the data source to obtain global data in the process of accessing the data source by the target data.
In step S103, the dependency relationship between the data in the global data is determined and output.
The data referred to in this disclosure may be global data in producer-consumer mode. Wherein the data in the producer consumer model includes a producer and a consumer. There is only one producer of global data, but there will typically be multiple consumers. That is, one producer may correspond to multiple consumers, but one consumer may correspond to only one producer. Each producer and each consumer corresponds to an address, occupies a network node, and belongs to the predetermined data. FIG. 2 illustrates a global data production consumption relationship diagram shown in an exemplary embodiment according to the present disclosure. Referring to FIG. 2, producer data may be consumed by both Consumer 1 and Consumer 2. The target data to be processed related to the present disclosure may be a consumer in a producer consumer model, for example, may be data having a consumption characteristic such as a view element. The target data to be processed may also be referred to as a consumer. In the present disclosure, the data source of the target data may be a producer in a producer consumer model.
In the present disclosure, the instrumentation process between the target data and the data source may be understood as adding instrumentation code to the source code of the global data. The instrumentation code can acquire global data in the process of accessing the data source by the target data, and further can acquire content information with data dependency among the global data.
In an exemplary embodiment of the present disclosure, an agent may be inserted between a data source (producer) and target data to be processed (consumer). FIG. 3 illustrates a schematic diagram of the staking between a producer and a consumer shown in an exemplary embodiment according to the present disclosure. Referring to FIG. 3, an agent is inserted between the data and both Consumer 1 and Consumer 2, wherein for the data of the data source, the consumer needs to access and modify through the agent and save to the access library. Where the consumer cannot directly reach the real data in the data source, but rather access through the proxy.
In the disclosure, global data in the process of accessing a data source by target data can be acquired by acquiring the access of any consumer to the data through a proxy. In the present disclosure, each time a consumer accesses data, information such as a path of a component to which the consumer belongs, a component name, and data content of the current data is calculated, and a dependency relationship between data is determined.
According to the method and the device, the dependency relationship among the data in the global data is determined, and the dependency relationship among the data in the global data can be output, so that the dependency relationship among the data is monitored, and the incidence relationship among the data is reflected. For example, the dependency relationships between the data in the global data may be stored in a data access library in the present disclosure.
According to the data processing method provided by the disclosure, through the pile insertion processing between the target data to be processed and the data source, the global data in the process of accessing the data source by the target data can be obtained through the pile insertion, the content information with the dependency relationship among the data in the global data can be obtained, the dependency relationship among the data in the global data is output, and the analysis of the dependency relationship among the global data can be realized.
According to the method and the device, when the overall data is acquired through the instrumentation code added into the source code of the data source, the declaration of the data, the updating of the data, the subscription mode of the data to the component and the like can be acquired, so that the acquired dependency relationship of the overall data can cover the data state of the overall data.
Fig. 4 is a flow chart of a data processing method shown in an exemplary embodiment according to the present disclosure. Referring to fig. 4, the data processing method includes the following steps S201 to S203.
In step S201, a data structure returned by an Application Programming Interface (API) is obtained to obtain global data declaration information of the target data access data source.
In step S202, subscription information for calling the data subscription API to subscribe data is obtained, so as to obtain global data subscription information of the target data access data source.
In step S203, update information for calling the data update API to perform data update is obtained to obtain global data update information of the target data access data source.
It is to be understood that the present disclosure does not limit the execution sequence of step S201, step S202, and step S203, and may obtain the statement of the data, the update of the data, the subscription mode of the data to the component, and the like.
In the related art, although the API provided by the view layer framework applied to different front-end MVVMs is different in form, the functions provided by the API are the same in the dimensions of data declaration, update and subscription. For example, createStore in the Redox (read) framework, atom in the Recoil (read) framework, and Class @ overrideable in the Mobx (read/Vue) framework provide functions that are functions of the data declaration API. The functions provided by DispatchAction in the Redux (React) framework, useRecoiLState/getter in the Recoil (React) framework, and Property processor in the Mobx (React/Vue) framework are functions of the data update API. The functions provided by the useSelector in the Reux (React) framework, the useRecoiLState/setter in the Recoil (React) framework, and the Property setter in the Mobx (React/Vue) framework are all functions of the data subscription API. Therefore, in the present disclosure, the data declaration API, the data update API, and the data subscription API are obtained in an instrumentation manner, so that the relevant information of the application applied to different front-end MVVM frameworks during runtime can be obtained, and the data state of the relatively comprehensive global data is covered.
In an exemplary embodiment, the present disclosure takes the Redox framework as an example to illustrate the acquisition of global data and the determination of the dependency relationship between the global data.
In the present disclosure, when the related information of the global data declaration needs to be obtained, based on the instrumentation scheme according to the above embodiment, the data structure finally returned by the data declaration API of the framework is obtained. Under the Redux framework, a store object returned by the createStore is obtained in an instrumentation mode, and the object holds global data of the web front-end application, so that declaration information of all the global data can be obtained in an instrumented agent.
In this disclosure, under the condition that the subscription relationship of the data in the component needs to be acquired, the relevant call to the data subscription API in the component is hijacked based on the instrumentation scheme related to the above embodiment. Under the Redox framework, when the useSelector is called, the access information of the selecter function to the object attribute is acquired in an access library of the agent in an instrumentation mode, so that the relation between the global data state and the subscription state component can be established, and the object attribute specifically accessed in the component can be clearly determined.
In the present disclosure, in the case that an update relationship of data needs to be obtained, based on the instrumentation scheme according to the above embodiment, the update API is hijacked in an instrumentation manner. Under the Redux framework, the global data of component update is updated by calling the dispatch action of the dispatch action method, so that the change of any component to the global data can be obtained by obtaining the dispatch action through instrumentation, and then the update of which data is triggered by which components can be determined according to the change of the global data before and after the call, and then the data update state in the whole process is clearly recorded.
According to the method and the device, the data statement API, the data updating API and the data subscription API are hijacked in an instrumentation mode, so that the complete dependency relationship between the data and the components during the operation of the application can be constructed, the updating process of the components can be clearly described, and developers can be helped to know projects and make technical decisions.
Data dependencies involved in the present disclosure include at least one of: data state, data state change information, and subscription relationships between data and components.
According to the method and the system, when the global data is acquired based on the instrumentation mode, the access of the consumer to the data is acquired from the agent, and when the consumer accesses the data, the information such as the path of the component to which the current consumer belongs, the identifier of the component, the data content of the current data and the like is calculated. And storing the acquired component path, the component identifier, the data content and the like. Furthermore, in the disclosure, information such as component paths, component identifiers, data contents and the like corresponding to each time of consumer access data may be compared, content that is changed and updated is determined, the content that is changed and updated is stored, and reasons for generating the content that is changed and updated are generated, so that a data state, changed and updated data state, and a subscription relationship between data components may be determined.
According to the data dependency relationship determining method and device, when the dependency relationship among the data is determined, the component identification of the component to which each piece of data belongs in the obtained global data can be determined, the data dependency relationship associated with the component identification is assembled, and the data states of each component can be connected in series to obtain the dependency relationship among the data.
According to the data state analysis method and device, the data dependency relationship associated with the component identification is assembled, the data state is recorded, and the reason for the data state change is recorded.
Further, in the present disclosure, based on the data dependency relationship among the output data, a developer may use global data subscription analysis to conveniently know which components consume the global data, to obtain the dependency relationship of different components, and may package components having the same dependency relationship, and the packaged components may be reused.
In the present disclosure, components having the same data dependency may be determined, the same data dependency may be encapsulated, and the same dependency may include at least one of: the same component path, the same component identification, and the same data content. The same data dependency relationship is encapsulated in the method, so that a developer can reuse the encapsulated data dependency relationship conveniently, code reconstruction is carried out, and the code reuse degree is improved.
Further, in the present disclosure, based on the data dependency relationship between the output data, the developer may determine, by using global data subscription analysis, a component identifier corresponding to a relatively stable propagation link based on the recorded component identifiers and the propagation links between the component identifiers, and use the component identifier as cacheable data.
In the present disclosure, a component identifier having a cache property may be determined, and it may be determined that there is data on which the component depends based on the component identifier. The data on which the component depends may be data with the same component path, or may be understood as data with the same propagation link involved in the process of propagating data.
According to the data processing method and device, the component identification corresponding to the data with component dependence can be cached for the data with component dependence, and then the cached component identification can be directly utilized to determine the corresponding component path when performance optimization is carried out subsequently, so that the performance optimization of the component is improved. In other words, the method and the device can cache and quickly locate whether the data depended by the component has cacheability or not and the propagation link of the cacheable data, thereby improving the performance by means of increasing the cache.
Further, in the present disclosure, a subscription relationship distribution graph in which data is subscribed by the component is output based on data dependency relationships between the output data. The subscription relationship distribution diagram represents the subscription relationship between the data and the components, constructs a complete data-component dependency relationship diagram during the running period of the application, and can clearly describe the updating process of the components. Therefore, the subscription relationship distribution diagram provided by the disclosure can determine the object attributes and the nesting levels among the objects, and can judge whether module division is accurate or not based on the nesting levels so as to judge the maintainability of the code.
For example, through a subscription relationship distribution graph of data subscribed by the component, the developer can further observe the depth of data subscription, and further analyze whether the division of the current module is reasonable. For example, the subscription relationship distribution map relates to the writing of a global data model in a review area of global data. Because the comment area can only subscribe and cannot be divided, developers can give a conclusion that the module division of the comment area is unreasonable.
Based on the same conception, the embodiment of the disclosure also provides a data processing device.
It is understood that the data processing device provided by the embodiment of the present disclosure includes a hardware structure and/or a software module for performing each function in order to realize the functions. The disclosed embodiments can be implemented in hardware or a combination of hardware and computer software, in combination with the exemplary elements and algorithm steps disclosed in the disclosed embodiments. Whether a function is performed as hardware or computer software drives hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
As an exemplary embodiment, fig. 5 is a block diagram of a data processing apparatus provided according to the present disclosure. Referring to fig. 5, the data processing apparatus 500 provided by the present disclosure includes a determination unit 501, a processing unit 502, and an output unit 503.
A determining unit 501, configured to determine target data to be processed and determine a data source of the target data; the processing unit 502 is configured to perform instrumentation between the target data and the data source to obtain global data in a process that the target data accesses the data source; and an output unit 503, configured to determine and output a dependency relationship between data in the global data.
Wherein the processing unit 502 is configured to: acquiring a data structure returned by a data declaration application program interface to acquire global data declaration information of a target data access data source; acquiring subscription information for calling a data subscription application program interface to subscribe data so as to acquire global data subscription information of a target data access data source; and acquiring update information for calling a data update application program interface to update data so as to acquire global data update information of a target data access data source.
Wherein, the output unit 503 is configured to: determining the component identification of the component to which each datum in the global data belongs; determining a data dependency associated with the component identification, the data dependency comprising at least one of: data state, data state change information, and subscription relationships between data and components;
the assembly component identifies the associated data dependencies.
In an exemplary embodiment of the present disclosure, the output unit 503 is further configured to: determining identical data dependencies, the identical dependencies including at least one of: the same component path, the same component identification, and the same data content; the same data dependencies are encapsulated.
In an exemplary embodiment of the present disclosure, the output unit 503 is further configured to: determining that component-dependent data exists based on the component identification, wherein the component-dependent data comprises the same component path to which the data belongs; the cache stores component identifications corresponding to data on which the components depend.
In an exemplary embodiment of the present disclosure, the output unit 503 is further configured to: and outputting a subscription relation distribution graph, wherein the subscription relation distribution graph is used for representing the subscription relation between the data and the components.
The specific manner in which the various modules perform operations has been described in detail in relation to the apparatus of the present disclosure above, and will not be elaborated upon here.
In the technical scheme of the disclosure, the acquisition, storage, application and the like of the personal information of the related user all accord with the regulations of related laws and regulations, and do not violate the good customs of the public order.
The present disclosure also provides an electronic device, a readable storage medium, and a computer program product according to embodiments of the present disclosure.
FIG. 6 illustrates a schematic block diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 6, the apparatus 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM)602 or a computer program loaded from a storage unit 608 into a Random Access Memory (RAM) 603. In the RAM603, various programs and data required for the operation of the device 600 can also be stored. The calculation unit 601, the ROM 602, and the RAM603 are connected to each other via a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
A number of components in the device 600 are connected to the I/O interface 605, including: an input unit 606 such as a keyboard, a mouse, or the like; an output unit 607 such as various types of displays, speakers, and the like; a storage unit 608, such as a magnetic disk, optical disk, or the like; and a communication unit 609 such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows the device 600 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
The computing unit 601 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various dedicated Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The calculation unit 601 executes the respective methods and processes described above, such as the data processing method. For example, in some embodiments, the data processing method may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program may be loaded and/or installed onto the device 600 via the ROM 602 and/or the communication unit 609. When the computer program is loaded into the RAM603 and executed by the computing unit 601, one or more steps of the data processing method described above may be performed. Alternatively, in other embodiments, the computing unit 601 may be configured to perform the data processing method by any other suitable means (e.g. by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server with a combined blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be executed in parallel, sequentially, or in different orders, as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved, and the present disclosure is not limited herein.
The above detailed description should not be construed as limiting the scope of the disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may be made in accordance with design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present disclosure should be included in the scope of protection of the present disclosure.

Claims (15)

1. A method of data processing, comprising:
determining target data to be processed and determining a data source of the target data;
performing instrumentation processing between the target data and the data source to acquire global data in the process that the target data accesses the data source;
and determining and outputting the dependency relationship among the data in the global data.
2. The method of claim 1, wherein the obtaining global data in the process of the target data accessing the data source comprises:
acquiring a data structure returned by a data declaration application program interface to acquire global data declaration information of the target data accessing the data source;
acquiring subscription information for calling a data subscription application program interface to subscribe data so as to acquire global data subscription information of the target data accessing the data source;
and acquiring update information for calling a data update application program interface to update data so as to acquire global data update information of the target data accessing the data source.
3. The method according to claim 1 or 2, wherein the determining and outputting the dependency relationship between the data in the global data comprises:
determining the component identification of the component to which each datum in the global data belongs;
determining data dependencies associated with the component identification, the data dependencies including at least one of: data state, data state change information, and subscription relationships between data and components;
the assembly component identifies the associated data dependencies.
4. The method of claim 3, further comprising:
determining identical data dependencies, the identical dependencies including at least one of: the same component path, the same component identification, and the same data content;
and encapsulating the same data dependency relationship.
5. The method of claim 3, further comprising:
determining that component-dependent data exists based on the component identification, wherein the component-dependent data comprises the same component path to which the data belongs;
and caching the component identification corresponding to the data on which the component depends.
6. The method of claim 3, further comprising:
and outputting a subscription relation distribution graph, wherein the subscription relation distribution graph is used for representing the subscription relation between the data and the components.
7. A data processing apparatus comprising:
the device comprises a determining unit, a processing unit and a processing unit, wherein the determining unit is used for determining target data to be processed and determining a data source of the target data;
the processing unit is used for performing instrumentation processing between the target data and the data source so as to acquire global data in the process that the target data accesses the data source;
and the output unit is used for determining and outputting the dependency relationship among the data in the global data.
8. The apparatus of claim 7, wherein the processing unit is to:
acquiring a data structure returned by a data declaration application program interface to acquire global data declaration information of the target data accessing the data source;
acquiring subscription information for calling a data subscription application program interface to subscribe data so as to acquire global data subscription information of the target data accessing the data source;
and acquiring update information for calling a data update application program interface to update data so as to acquire global data update information of the target data accessing the data source.
9. The apparatus of claim 7 or 8, wherein the output unit is to:
determining the component identification of the component to which each datum in the global data belongs;
determining data dependencies associated with the component identification, the data dependencies including at least one of: data state, data state change information, and subscription relationships between data and components;
the assembly component identifies the associated data dependencies.
10. The apparatus of claim 9, the output unit further to:
determining identical data dependencies, the identical dependencies including at least one of: the same component path, the same component identification, and the same data content;
and encapsulating the same data dependency relationship.
11. The apparatus of claim 9, the output unit further to:
determining that component-dependent data exists based on the component identification, wherein the component-dependent data comprises the same component path to which the data belongs;
and caching the component identification corresponding to the data on which the component depends.
12. The apparatus of claim 9, the output unit further to:
and outputting a subscription relation distribution graph, wherein the subscription relation distribution graph is used for representing the subscription relation between the data and the components.
13. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-6.
14. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-6.
15. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any one of claims 1-6.
CN202111601053.5A 2021-12-24 2021-12-24 Data processing method, device, equipment, storage medium and computer program product Pending CN114416029A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111601053.5A CN114416029A (en) 2021-12-24 2021-12-24 Data processing method, device, equipment, storage medium and computer program product
PCT/CN2022/113850 WO2023116003A1 (en) 2021-12-24 2022-08-22 Data processing method and apparatus, device, storage medium and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111601053.5A CN114416029A (en) 2021-12-24 2021-12-24 Data processing method, device, equipment, storage medium and computer program product

Publications (1)

Publication Number Publication Date
CN114416029A true CN114416029A (en) 2022-04-29

Family

ID=81268898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111601053.5A Pending CN114416029A (en) 2021-12-24 2021-12-24 Data processing method, device, equipment, storage medium and computer program product

Country Status (2)

Country Link
CN (1) CN114416029A (en)
WO (1) WO2023116003A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023116003A1 (en) * 2021-12-24 2023-06-29 北京百度网讯科技有限公司 Data processing method and apparatus, device, storage medium and computer program product

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106155897B (en) * 2015-04-16 2020-12-08 腾讯科技(深圳)有限公司 Service processing method and device
US9690553B1 (en) * 2016-09-26 2017-06-27 International Business Machines Corporation Identifying software dependency relationships
CN110334302B (en) * 2019-05-24 2021-09-10 北京因特睿软件有限公司 Complex Web application front-end runtime analysis method
CN114416029A (en) * 2021-12-24 2022-04-29 北京百度网讯科技有限公司 Data processing method, device, equipment, storage medium and computer program product

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023116003A1 (en) * 2021-12-24 2023-06-29 北京百度网讯科技有限公司 Data processing method and apparatus, device, storage medium and computer program product

Also Published As

Publication number Publication date
WO2023116003A1 (en) 2023-06-29

Similar Documents

Publication Publication Date Title
CN107665228B (en) Associated information query method, terminal and equipment
US9372688B1 (en) Automatic discovery of a JavaScript API
TW201235943A (en) Unchanged object management
CN113778849A (en) Method, apparatus, device and storage medium for testing code
CN113127357A (en) Unit testing method, device, equipment, storage medium and program product
CN114816393A (en) Information generation method, device, equipment and storage medium
CN115509522A (en) Interface arranging method and system for low-code scene and electronic equipment
WO2023116003A1 (en) Data processing method and apparatus, device, storage medium and computer program product
CN112925522A (en) Dependency graph generation method, dependency graph generation device, dependency graph generation apparatus, storage medium, and program product
CN113032256A (en) Automatic test method, device, computer system and readable storage medium
CN112286802B (en) Method and device for testing program performance and electronic equipment
CN110554892A (en) Information acquisition method and device
CN115344786A (en) Cloud resource recommendation system, method, equipment and storage medium
CN115309730A (en) Data auditing method and device, electronic equipment and storage medium
CN114741294A (en) Page debugging method, device, equipment and storage medium
CN114138397A (en) Page display method and device, electronic equipment and storage medium
CN113762702A (en) Workflow deployment method, device, computer system and readable storage medium
CN113741887B (en) Model production method, system, device and electronic equipment
CN116431108B (en) Object type processing method and device, electronic equipment and storage medium
KR101997012B1 (en) Appratus and method for estimating resource of program based on automata state complexity
CN118069507A (en) Regression testing quality assessment method and device based on code knowledge graph
CN117234899A (en) Regression testing method, device, equipment and computer medium
CN118195028A (en) Symbol tracking method, device, equipment and storage medium of neural network
CN115437955A (en) Project testing method, device, equipment and storage medium
CN116302069A (en) Software development kit generation method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination