CN113138771A - Data processing method, device, equipment and storage medium - Google Patents

Data processing method, device, equipment and storage medium Download PDF

Info

Publication number
CN113138771A
CN113138771A CN202010055729.4A CN202010055729A CN113138771A CN 113138771 A CN113138771 A CN 113138771A CN 202010055729 A CN202010055729 A CN 202010055729A CN 113138771 A CN113138771 A CN 113138771A
Authority
CN
China
Prior art keywords
data
algorithm
module
attribution analysis
index
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.)
Granted
Application number
CN202010055729.4A
Other languages
Chinese (zh)
Other versions
CN113138771B (en
Inventor
宋源
王方舟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information 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 Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202010055729.4A priority Critical patent/CN113138771B/en
Publication of CN113138771A publication Critical patent/CN113138771A/en
Application granted granted Critical
Publication of CN113138771B publication Critical patent/CN113138771B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/51Source to source
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The disclosure relates to a data processing method, a data processing device, data processing equipment and a storage medium, and belongs to the technical field of computers. In the embodiment, the attribution analysis algorithm realized by the second computer language is packaged by the algorithm module, the attribution analysis module provides an interface called based on the first computer language for the external service, the attribution analysis module can serve as a communication medium between the external service and the algorithm module, and the external service can trigger the algorithm module to perform data processing by calling the attribution analysis module based on the first computer language. The method omits the process of translating the program code attributed to the analysis algorithm from the second computer language to the first computer language, saves the time consumed by the translation process, saves the human cost and the material cost brought by the translation process, improves the data processing efficiency, enables the data processing to be more convenient and faster, and is beneficial to the on-line service of the algorithm engineering conveniently and efficiently.

Description

Data processing method, device, equipment and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a data processing method, apparatus, device, and storage medium.
Background
Attribution analysis is to analyze how much each factor plays a role when a result is caused by the combined action of a plurality of factors, so as to determine which factor or factors cause the result, and thus to provide explanation for the occurrence of the result.
In the related art, algorithm engineers and back-end engineers usually use different computer languages when programming. For example, an algorithm engineer may develop an attribution analysis algorithm based on the python language and a back-end engineer may develop a back-end project based on the java language. Among them, the python language is an interactive computer programming language with rich third party plug-ins. The java language is an object-oriented programming language. In the attribution analysis process, program codes of attribution analysis algorithms are translated manually, the program codes of attribution analysis algorithms are translated from python language to java language, and then the attribution analysis algorithms are operated through back-end engineering, so that the attribution analysis algorithms are applied to process business data.
When the method is adopted, a large amount of time is consumed in the translation process, and great labor cost is brought, so that the data processing efficiency is low.
Disclosure of Invention
The present disclosure provides a data processing method, apparatus, device and storage medium to at least solve the problem of inefficient data processing in the related art. The technical scheme of the disclosure is as follows:
according to a first aspect of the embodiments of the present disclosure, there is provided a data processing method, including:
receiving, by an attribution analysis module, a call instruction based on a first computer language from a server;
in response to the call instruction, calling an algorithm module, the algorithm module encapsulating an attribution analysis algorithm based on a second computer language;
and in the process of operating the algorithm module, processing the service data through the attribution analysis algorithm to obtain a processing result.
Optionally, the attribution analysis module is implemented based on a process, and the algorithm module is implemented based on a sub-process embedded in the process.
Optionally, the invoking algorithm module includes:
transmitting the address of the business data into the subprocess;
after the algorithm module is called, the method further comprises:
and accessing the address through the subprocess to obtain the service data stored by the address.
Optionally, the attribution analysis module is implemented based on a remote procedure call Stub (RPC) Stub, and the algorithm module is implemented based on an RPC server corresponding to the RPC Stub.
Optionally, the data structure of the service data is a target data structure, the index of the target data structure includes an index identifier, a dimension identifier, and a dimension value, the value of the target data structure includes an index value corresponding to each time point in at least one time point, and the index value is a value of an index corresponding to the index identifier at the corresponding time point.
Optionally, the target data structure is obtained by processing an original data structure according to a time point, the index of the original data structure includes the time point, an index identifier, a dimension identifier, and a dimension value, and the value of the original data structure includes an index value.
Optionally, before the receiving, by the attribution analysis module, the call instruction based on the first computer language from the server, the method further includes:
performing association query according to basic data to obtain user portrait data corresponding to the basic data, wherein the basic data comprises a dimension value of a client corresponding to the server in at least one dimension;
and generating the service data according to the basic data and the user portrait data, wherein the service data comprises the basic data and the user portrait data.
According to a second aspect of the embodiments of the present disclosure, there is provided a data processing apparatus including:
a receiving unit configured to execute receiving, by the attribution analysis module, a call instruction based on a first computer language from a server;
a calling unit configured to execute calling an algorithm module in response to the calling instruction, the algorithm module encapsulating an attribution analysis algorithm based on a second computer language;
and the processing unit is configured to process the service data through the attribution analysis algorithm in the process of operating the algorithm module to obtain a processing result.
Optionally, the attribution analysis module is implemented based on a process, and the algorithm module is implemented based on a sub-process embedded in the process.
Optionally, the invoking unit is configured to perform: transmitting the address of the business data into the subprocess;
the device further comprises: and the access unit is configured to execute the sub-process to access the address to obtain the service data stored by the address.
Optionally, the attribution analysis module is implemented based on a remote procedure call Stub (RPC) Stub, and the algorithm module is implemented based on an RPC server corresponding to the RPC Stub.
Optionally, the data structure of the service data is a target data structure, the index of the target data structure includes an index identifier, a dimension identifier, and a dimension value, the value of the target data structure includes an index value corresponding to each time point in at least one time point, and the index value is a value of an index corresponding to the index identifier at the corresponding time point.
Optionally, the target data structure is obtained by processing an original data structure according to a time point, the index of the original data structure includes the time point, an index identifier, a dimension identifier, and a dimension value, and the value of the original data structure includes an index value.
Optionally, the apparatus further comprises:
the query unit is configured to perform correlation query according to basic data to obtain user portrait data corresponding to the basic data, wherein the basic data comprises a dimension value of a client corresponding to the server in at least one dimension;
a generating unit configured to perform generating the service data from the base data and the user portrait data, the service data including the base data and the user portrait data.
According to a third aspect of the embodiments of the present disclosure, there is provided an electronic apparatus including:
one or more processors;
one or more memories for storing the processor-executable instructions;
wherein the one or more processors are configured to execute the instructions to implement the data processing method described above.
According to a fourth aspect of the embodiments of the present disclosure, there is provided a storage medium, wherein instructions of the storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the above-mentioned data processing method.
According to a fifth aspect of embodiments of the present disclosure, there is provided a computer program product comprising one or more instructions which, when executed by a processor of an electronic device, enables the electronic device to perform the above-mentioned data processing method.
The technical scheme provided by the embodiment of the disclosure at least brings the following beneficial effects:
in the method provided by the embodiment, the attribution analysis algorithm realized by the second computer language is packaged through the algorithm module, the attribution analysis module provides an interface called based on the first computer language for the external service, the attribution analysis module can serve as a communication medium between the external service and the algorithm module in the attribution analysis process, and the external service can trigger the algorithm module to process the business data by calling the attribution analysis module based on the first computer language to obtain a processing result. According to the method, the process of translating the program code of the attribution analysis algorithm from the second computer language to the first computer language is omitted, so that the time consumed by the translation process is saved, the labor cost and the material resource cost brought by the translation process are saved, the data processing efficiency in the attribution analysis process is improved, the data processing is more convenient and faster, and the method is favorable for conveniently and efficiently carrying out online service on the algorithm engineering.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure and are not to be construed as limiting the disclosure.
FIG. 1 is a schematic diagram illustrating an embodiment environment for attribution analysis, according to an example embodiment;
FIG. 2 is a system architecture diagram illustrating a method of data processing in accordance with an exemplary embodiment;
FIG. 3 is a flow chart illustrating a method of data processing according to an exemplary embodiment;
FIG. 4 is a flow chart illustrating a method of data processing in accordance with an exemplary embodiment;
FIG. 5 is a diagram illustrating a target data structure in accordance with an illustrative embodiment;
FIG. 6 is a diagram illustrating an original data structure in accordance with an illustrative embodiment;
FIG. 7 is a schematic diagram illustrating a data processing method in accordance with an exemplary embodiment;
FIG. 8 is a schematic diagram illustrating a data processing method in accordance with an exemplary embodiment;
FIG. 9 is a block diagram illustrating a data processing apparatus in accordance with an exemplary embodiment;
FIG. 10 is a block diagram illustrating a terminal in accordance with an exemplary embodiment;
FIG. 11 is a block diagram illustrating a server in accordance with an example embodiment.
Detailed Description
In order to make the technical solutions of the present disclosure better understood by those of ordinary skill in the art, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
The user information to which the present disclosure relates may be information authorized by the user or sufficiently authorized by each party.
Several terms related to the present disclosure are described below.
Attribution analysis is a technical field of data analysis and operation technology in the technical field of big data. When a result is caused by the combined action of a plurality of factors, it is possible to find out how much the various factors should take the effect of the result, namely, how the work should be distributed and to whom the work should be attributed, by attribution analysis. At present, due analysis data products are scarce, one of the main reasons is that complete due analysis algorithms are relatively few, the service difficulty is high, and no mature solution for due analysis data products can provide references in the two industries. Most applications due to analysis still stay in the case by case (problem-specific analysis) mode, which is high in threshold and consumes a lot of manpower. In summary, there are several problems to be solved by attribution analysis: first, the problem is pre-investigated due to the algorithm; secondly, the algorithm is used for on-line service; third, link problems are computed due to the underlying data. In many cases, even with the capability of algorithm pre-research, due to the lack of a scheme for efficiently servicing the algorithm, it is difficult to produce attribution analysis, and it is difficult to develop a higher value. Through the following embodiment, an attribution analysis data product can be provided, the attribution analysis data product can be an automatic analysis tool, and the indexes can be more reasonably explained through fluctuation mining of a series of index values, so that the analysis threshold is greatly reduced, and the labor cost and the material resource cost are greatly saved.
The algorithm service is a micro-service idea, and the distributed service architecture is mainly used for decoupling and splitting through service and layering. The system can be degraded into strategies and layers, and the architecture design is to divide the same strategy into the same component. Therefore, the architecture design can realize the decoupling between systems by calling low-level services through high-level services and providing the services through interfaces through layered design. The low-level service is a service split from the high-level service, and the low-level service is a sub-service of the high-level service, that is, a micro-service. For example, a high-level service may be an attribution analysis service, which may provide sub-services corresponding to one or more attribution analysis algorithms, each sub-service being a low-level service.
Hereinafter, a hardware environment of the embodiments of the present disclosure is exemplified.
FIG. 1 is a schematic diagram illustrating an environment for implementing a data processing method in accordance with an exemplary embodiment. The implementation environment includes: a terminal 101 and an attribution analysis platform 110.
The terminal 101 is connected to the attribution analysis platform 110 through a wireless network or a wired network. The terminal 101 may be at least one of a smart phone, a game console, a desktop computer, a tablet computer, an e-book reader, an MP3(Moving Picture Experts Group Audio Layer III, motion Picture Experts compression standard Audio Layer 3) player, an MP4(Moving Picture Experts Group Audio Layer IV, motion Picture Experts compression standard Audio Layer 4) player, and a laptop computer. The terminal 101 is installed and operated with a supporting application. The application may be a live application, a multimedia application, a short video application, and the like. Illustratively, the terminal 101 is a terminal used by a user, and a user account is registered in an application running in the terminal 101.
The terminal 101 is connected to the attribution analysis platform 110 through a wireless network or a wired network.
The attribution analysis platform 110 includes at least one of a server, a plurality of servers, a cloud computing platform, and a virtualization center. The attribution analysis platform 110 is used to provide background services for applications. By way of example, the attribution analysis platform 110 may have the logical functional architecture shown in FIG. 2, and the attribution analysis platform 110 may perform either the FIG. 3 embodiment or the FIG. 4 embodiment described below.
Optionally, the attribution analysis platform 110 comprises: server 1101, server 1102, and database 1103. Server 1101 is used for conducting business processes and server 1102 is used for providing attribution analysis services. Server 1101 may send a call instruction to server 1102 instructing server 1102 to perform a cause analysis. The database 1103 may be used to store business data, and the database 1103 may provide the stored business data to the server 1101 or the server 1102 when needed.
Those skilled in the art will appreciate that the number of terminals 101, servers 1101, and servers 1102 may be greater or fewer. For example, the number of the terminal 101, the server 1101, and the server 1102 may be only one, or the number of the terminal 101, the server 1101, or the server 1102 may be several tens or hundreds, or more, in which case the attribution analysis system may further include other terminals or other servers. The number and the device type of the terminals or the servers are not limited in the embodiments of the present disclosure.
The above exemplary description is directed to the hardware architecture of the present application, which may serve as the infrastructure for the method embodiments described below. The logical functional architecture provided by the present application is exemplarily described below with reference to fig. 2.
Referring to fig. 2, fig. 2 is a diagram illustrating a system architecture of a data processing method that may be provided as a solution to attribution analysis engineering, the architecture including a number of software logic modules, the architecture consisting essentially of: the system comprises a data source, a data acquisition layer, a calculation analysis layer, a result storage layer and an application layer. The main functions of each layer are as follows:
a data source: for storing data and providing data to the upper layer. In the field of attribution analysis, the data stored by the data source can be business data. The service data may be a dimension value applied to each of one or more dimensions, and specifically may be index values of various indexes, for example, index values of a management bulletin board index, index values of a core daily newspaper, index values of a monitoring panel index of various services, and the like. Due to the fact that the business data comprise rich dimension information, attribution analysis of the business data is facilitated by means of the dimension information. The data stored by the data source can be basic data or data obtained by aggregation from the basic data. Wherein the underlying data may be in a formatted, semi-formatted form.
The data source may include one or more databases. For example, the data sources may include a hive database as well as a clickhouse database. The hive database is a data warehouse tool based on Hadoop, and is used for data extraction (extract) and conversion (transform) and loading (load), and the hive database is a mechanism capable of storing, querying and analyzing large-scale data stored in the Hadoop. The hive database can map the Structured data file into a database table, provide a Structured Query Language (SQL) Query function, and convert an SQL statement into a MapReduce task for execution. The clickhouse database is a columnar database management system for online analytical processing. The hive database and the HBase database in the data acquisition layer can be communicated off-line, and in addition, the clickhouse database and the attribution center control module in the calculation analysis layer can be communicated on-line.
Of course, the hive database and the clickhouse database are examples of the data source, and the data source may be other types of databases, which is not limited in this embodiment.
The data acquisition layer is used for acquiring data stored by a data source, such as index raw data. The data collection layer may include an HBase database. The HBase database is a distributed, column-oriented open source database. Additionally, the data collection layer may perform portrait data association. The attribution central control modules in the data collection layer and the computational analysis layer can communicate offline.
The computational analysis layer may be an attribution analysis module in the method embodiments described below, and the computational analysis layer includes an attribution central control module and an algorithm module. The attribution central module is used for receiving calling instructions based on a first computer language (such as java language), the attribution central module can communicate with the data acquisition layer, and the attribution central module can communicate with the result storage layer. The algorithm module comprises a mathematical statistics submodule and a data mining submodule, wherein the mathematical statistics submodule comprises a hypothesis verification unit, a root cause analysis unit, an abnormality detection unit and a depression detection unit. The data mining submodule comprises a time sequence prediction unit, a cluster analysis unit, an association analysis unit and a trend analysis unit. The algorithm module can communicate with modules in other layers through the cause central control module.
The resulting storage layer may include the HBase database as well as the mysql database. As a result, the HBase database in the storage layer can communicate with the attribution central control module offline, and as a result, the HBase database in the storage layer can communicate with the application layer offline. And as a result, the mysql database in the storage layer can be communicated with the factor central control module online, and the mysql database in the storage layer can be communicated with the application layer online.
The application layer includes an algorithmic online analysis service and an attribution analysis service. The algorithm online analysis service can comprise a time sequence prediction module, an abnormity detection module, a root cause analysis module and a trend analysis module, the attribution analysis service can comprise a time sequence interpretation module, an attribution analysis module, an abnormity discovery module and a management module, and the time sequence interpretation module comprises a prediction analysis submodule, a trend analysis submodule, a period analysis submodule and a holiday analysis submodule. The attribution analysis module comprises a mean index analysis submodule, an atomic index analysis submodule and an index tree theme analysis submodule. The abnormity discovery module comprises a custom alarm submodule, an abnormity prompt submodule and an automatic abnormity detection submodule. The management module comprises an index management submodule and an index relation management submodule.
The foregoing provides a system architecture for attribution analysis that may serve as a solution for attribution analysis products. At present, the industry has not provided a similar framework, on the one hand due to the high threshold of attributing analytical products, and on the other hand due to the complex engineering implementation, so that an effective solution is lacking. Through the architecture, efficient architecture design is realized, the spanning development from 0 to 1 is realized, and a large amount of human resources can be saved for algorithms, data and rear ends. The solution of attribution analysis accumulates a great deal of practical experience and continuously outputs the practical experience to the outside, thereby generating great value. The analysis project can interface with multiple business systems of application including, without limitation, a daily report system, a live broadcast system, a search system, a overseas system, a multimedia content understanding system, a mini-game system, a growth system, and the like. The framework can analyze thousands of indexes, save a large amount of analyzed human resources, improve the efficiency and save the cost.
The system architecture is described above by way of example, and the method flows are described below by way of example.
Fig. 3 is a flow chart illustrating a data processing method, as shown in fig. 3, for use in an electronic device, according to an exemplary embodiment, including the following steps.
In S301, receiving, by an attribution analysis module, a call instruction based on a first computer language from a server;
in S302, in response to the call instruction, calling an algorithm module that encapsulates an attribution analysis algorithm based on the second computer language;
in S303, in the process of running the algorithm module, the service data is processed through the attribution analysis algorithm to obtain a processing result.
In the method provided by the embodiment, the attribution analysis algorithm realized by the second computer language is packaged through the algorithm module, the attribution analysis module provides an interface called based on the first computer language for the external service, the attribution analysis module can serve as a communication medium between the external service and the algorithm module in the attribution analysis process, and the external service can trigger the algorithm module to process the business data by calling the attribution analysis module based on the first computer language to obtain a processing result. According to the method, the process of translating the program code of the attribution analysis algorithm from the second computer language to the first computer language is omitted, so that the time consumed by the translation process is saved, the labor cost and the material resource cost brought by the translation process are saved, the data processing efficiency in the attribution analysis process is improved, the data processing is more convenient and faster, and the method is favorable for conveniently and efficiently carrying out online service on the algorithm engineering.
Optionally, the attribution analysis module is implemented based on a process, and the algorithm module is implemented based on a sub-process embedded in the process.
Optionally, the invoking algorithm module includes:
transmitting the address of the service data into the subprocess;
after the calling the algorithm module, the method further comprises:
and accessing the address through the sub-process to obtain the service data stored by the address.
Optionally, the attribution analysis module is implemented based on a remote procedure call Stub (RPC) Stub, and the algorithm module is implemented based on an RPC server corresponding to the RPC Stub.
Optionally, the data structure of the service data is a target data structure, the index of the target data structure includes an index identifier, a dimension identifier, and a dimension value, the value of the target data structure includes an index value corresponding to each time point in at least one time point, and the index value is a value of an index corresponding to the index identifier at the corresponding time point.
Optionally, the target data structure is obtained by processing an original data structure according to a time point, where an index of the original data structure includes the time point, an index identifier, a dimension identifier, and a dimension value, and a value of the original data structure includes an index value.
Optionally, before the receiving, by the attribution analysis module, the call instruction based on the first computer language from the server, the method further comprises:
performing association query according to basic data to obtain user portrait data corresponding to the basic data, wherein the basic data comprises a dimension value of a client corresponding to the server in at least one dimension;
generating the service data according to the basic data and the user portrait data, wherein the service data comprises the basic data and the user portrait data.
Fig. 4 is a flow chart illustrating a data processing method, as shown in fig. 4, for use in an electronic device, according to an example embodiment, including the following steps.
In step S401, the electronic device collects basic data.
The basic data may be index detail data of different dimensions, and may include, for example, a dimension value of a client corresponding to the server in at least one dimension. For example, the underlying data may include daily activity indicators. The basic data can be aggregated according to the dimensionality to obtain the statistical result of the index. The underlying data may be in a formatted, semi-formatted form. The underlying data may be background log data. The electronic equipment can comprise a hive component, and basic data can be collected through the hive component.
In step S402, the electronic device performs a correlation query based on the basic data to obtain user portrait data corresponding to the basic data.
The user representation data may be a feature value for each of the at least one dimension of the user, and may include, for example, feature values of an appearance, feature values of a geographic location, feature values of an underlying feature, and the like. Regarding the technical details of the association query, the basic data and the user portrait data may be associated with each other by a Primary Key (Primary Key), and the association query may be performed according to the Primary Key of the basic data to obtain the user portrait data corresponding to the Primary Key of the basic data. The primary key is used for identifying a data table where the data is located. Wherein, the electronic equipment can perform the association query through the hive component.
In step S403, the electronic device generates service data according to the basic data and the user portrait data, where the service data includes the basic data and the user portrait data.
Through the above embodiment, the effects achieved at least may include:
for many basic data, although the basic data itself has rich dimensionality and dimensionality values, many data without user portrait dimensionality are available, and then through steps S402 to S403, corresponding user portrait data can be expanded on the basis of the acquired basic data, so that the function of dimensionality expansion is realized. The service data including the basic data and the user portrait data are used for analysis, and the analysis dimensionality increases the user portrait dimensionality and considers more dimensionalities, so that the accuracy of an analysis result can be improved.
In step S404, the electronic device processes the data structure of the service data.
By processing the data structure of the service data, the data structure of the service data can be converted from an original data structure to a target data structure.
The target data structure is a unified data structure defined for the attribution analysis algorithm in the present embodiment, and the business data of the target data structure may be input data of the attribution analysis algorithm. The index of the target data structure includes an index identifier, a dimension identifier, and a dimension value, see fig. 5, where fig. 5 is an illustration of the target data structure. The first three columns of fig. 5 are indices, which are index identification, dimension, and dimension values, respectively. The index structure of the target data structure may be a three-level index, and the form of the index structure may be < index identification, dimension, and dimension value >.
The index identifier may be denoted as a quota key for uniquely identifying the corresponding index, for example, in fig. 5, the index identifier may be 144. The index identification may be an index name. The index identification may also be referred to as index coding. Different service systems of the same platform can configure uniform index identifiers for the same index.
The dimensions may be denoted as dimensions, which may include city, gender, age, and the like. For example, referring to fig. 5, a dimension may be an age range (age _ range), and a dimension may be represented by a dimension name.
Dimension values refer to the value of a dimension. For example, if the dimension is a city, the dimension value may be Beijing, Shanghai, etc. If the dimension is gender, the dimension value may be male, female, etc. The dimension value may be denoted as dimension value, and may also be referred to as a factor or factor name. For example, in fig. 5, the dimensions may be 2988783, 11208292.
The value of the target data structure comprises an index value corresponding to each time point in at least one time point, wherein the index value in the target data structure is a value of the index corresponding to the index identifier at the corresponding time point. Wherein the time point may use the date as a time unit, for example, referring to fig. 5, the values of the target data structure may include an index value of 12/1/2018, an index value of 24/2018/11/2018, and an index value of 17/2018/11/17. Taking the time point of 12 month and 1 day as an example, the values of the target data structure may include an index value 2988783 of users whose age range is 0 to 12 years in 12 month and 1 day in 2018, an index value 11208292 of users whose age range is 12 to 17 years in 12 month and 1 day in 2018, an index value 1277554301 of users whose age range is 18 to 23 years in 12 month and 1 day in 2018, an index value 2032407443 of users whose age range is 24 to 30 years in 12 month and 1 day in 2018, and an index value 1553851456 of users whose age range is 31 to 40 years in 12 month and 1 day in 2018.
Through the above embodiment, the effects achieved at least may include: the process of attribution analysis generally comprises a series of algorithm processing procedures, and the data structure is defined through abstraction, so that a uniform standard format can be provided for attribution analysis algorithms. In particular, since the index of the target data structure includes time points, when performing attribution analysis on the service data based on the target data structure, analysis according to the time points is facilitated, such as performing a same-ratio analysis, a ring-ratio analysis, and the like on index values at different times. For example, referring to fig. 5, each business data can form a time sequence, for example, 3 2988783 in the first row are respectively business data of 12 months and 1 day in 2018, business data of 24 months and 11 months in 2018, and business data of 17 days in 11 months and 11 months in 2018, so that the fluctuation rule of the index along with the change of time can be conveniently seen. Therefore, through the data structure, powerful support can be provided for the development and iteration of the attribution analysis algorithm.
In some embodiments, the target data structure may be obtained by processing the original data structure according to the time point. The index of the original data structure comprises a time point, an index identifier, a dimension identifier and a dimension value, and the value of the original data structure comprises an index value. The time point in the index of the original data structure may have a date as a time unit, and may be, for example, a year, month, and day. The raw data structure may be stored in a Key-value (KV) storage format. The original data structure may be defined as follows:
key: < date | index encoding | dimension name | factor name >; value: < index value >.
Where key represents a key, i.e., an index. And | is a spacer between different fields. value represents a value.
For example, referring to fig. 6, each row in fig. 6 represents traffic data of one original data structure. Xx in fig. 6 denotes a value in the original data structure, and a character string before xx denotes an index in the original data structure. For example, the index of the original data structure shown in the first row of FIG. 6 may include 20190616little title game #296| user _ type |1-7 days new users. Wherein 20190616 is a time point, and a little game is an index identifier, which is a service line. 296 is dimension identification, and 1-7 days of new users are dimension values. The original data structure may be a data structure of pre-aggregated base data. The service data of the original data structure can be stored by adopting an HBase real-time database with column type storage.
Regarding the specific way of processing to obtain the target data structure, the target value in the original data structure may be subjected to a horizontal processing at time points (for example, dates) to obtain the target data structure. The traversing process is to convert the column-type storage structure into the line-type storage structure by taking the time point as one dimension.
Through the above embodiment, the effects achieved at least may include: for the field of attribution analysis, in order to realize real-time analysis, not only the algorithm engineering service capability but also the preparation work of a data link can be relied on. Through the mode, a preparation flow of the data link is provided, so that a series of format definitions and conversion work are provided for the index detail data to the online real-time calculation, the efficient and extensible characteristic of the attribution analysis algorithm calculation is met, and the requirement of convenient storage is also considered. The preparation of the data link refers to a process of generating required data for the attribution analysis algorithm.
In step S405, the electronic device receives a call instruction based on the first computer language from the server through the attribution analysis module.
The first computer language may be a computer language used by the back-end engineering. For example, the first computer language may be java language and the call instruction may be implemented by a java program.
The attribution analysis module is a software logic unit, and can be realized by program codes written based on the first computer language, so that the attribution analysis module can analyze calling instructions based on the first computer language. The attribution analysis module may also be referred to as an attribution framework module, an attribution wrapper module, or an attribution module. The attribution analysis module may provide a generic interface for external communications based on a first computer language and may be invoked to interact with the python algorithm. The attribution analysis module plays a role of a manager and a communication bridge, on one hand, the attribution analysis module can manage the algorithm module, and on the other hand, communication between the background service and the algorithm module can be realized. Any background service to be attributed and analyzed can be used as a caller of the attribution analysis module, and based on the first computer language, the background service calls an interface provided by the attribution analysis module so that the attribution analysis module calls an algorithm module to perform attribution analysis. Referring to fig. 2, the attribution analysis module may be the computational analysis layer of fig. 2, and may include an algorithm module and an attribution center control module.
By the attribution analysis module, a first computer language can be used, a uniform interface is exposed to the outside, and program codes of the attribution analysis algorithm can be still written based on a second computer language, so that the advantages of python and the speciality in the algorithm field are fully utilized, meanwhile, the attribution algorithm is convenient to carry out online iterative development, and compared with a mode of translating different languages, the method can greatly save labor cost and time overhead.
In step S406, the electronic device calls an algorithm module in response to the call instruction.
The algorithm module encapsulates the attribution analysis algorithm based on the second computer language. The algorithm module may be implemented by program code written based on a second computer language. The attribution analysis algorithm encapsulated by the algorithm module may include one or more. For example, the algorithm module may package a hypothesis verification algorithm, a root cause analysis algorithm, an anomaly detection algorithm, a hole detection algorithm, a timing prediction algorithm, a cluster analysis algorithm, an association analysis algorithm, a trend analysis algorithm. By encapsulating different attribution analysis algorithms into algorithm modules, different attribution analysis algorithms may be invoked for different application scenarios. In addition, the algorithm module can provide an interface for the attribution analysis module, and input parameters of the interface are defined as scene parameters so as to select the algorithm, so that attribution calculation can be flexibly performed according to the selected algorithm.
The second computer language is a computer language for implementing attribution analysis algorithms, for example, the second computer language may be a python language and the algorithm module may be implemented by python code.
Wherein the functions of the attribution analysis module and the algorithm module may be differentiated. The algorithm module focuses on algorithm calculation, and the attribution analysis module focuses on packaging of an external interface, that is, the attribution analysis module not only completes interactive calling with the python algorithm, but also provides a general interface for external connection.
Since python is an interactive language and has rich third party plug-ins, in the field of data analysis and algorithms, the algorithm module is typically implemented based on a second computer language. Whereas in the big data domain, back-end engineering is typically implemented based on a first computer language. When a module of the second computer language reads data from a big data component such as HBase, a special client needs to be additionally deployed to support the data reading function, and the client is low in efficiency and difficult to provide high availability guarantee. Therefore, from the whole engineering implementation perspective, the advantages of the second computer language and the advantages of the first computer language can be combined to be compatible with the big data framework and reduce the development cost. In view of this, the attribution analysis framework built by the embodiment provides the following two implementation ways, which can combine the second computer language with the first computer language.
The first implementation mode is to embed the algorithm module into the cause analysis module, and the algorithm module is a sub-module of the cause analysis module.
In particular, the attribution analysis module may be implemented based on a process and the algorithm module may be implemented based on a sub-process embedded into the process. For example, referring to FIG. 7, the attribution analysis module may be implemented based on the java process of FIG. 7 and the algorithm module may be implemented based on the python sub-process embedded in the java process. The java process is a main process and can be used for packing the algorithm and managing the life cycle of the algorithm. The java process can provide a uniform algorithm interface externally, and when the background service calls the interface, the java process can call an internal python sub-process for input and output based on the standardized input and output technology of the computer system. Similarly, after the Python subprocess obtains the calculation result through the algorithm module, the calculation result can also be returned to the Java process through the standardized input and output of the computer. The communication flow between the java process and the python sub-process can be communication inside the process, the communication flow is transparent to the outside, and the outside can not sense the internal logic. The java process may also be referred to as an attribution framework process, an attribution wrapper process, or an attribution process. The standardized input and output of the computer system is a communication mode independent of language.
Through the above embodiment, the effects achieved at least may include: a unified algorithm interface can be provided for the outside through the java process, any background service can use the attribution analysis algorithm by calling the java process, and therefore the big data framework is compatible. In addition, the advantages of the second computer language and the speciality in the algorithm field are utilized, and meanwhile, the online iterative development of the algorithm is conveniently attributed, so that the algorithm service can be realized, the development cost is low, the online deployment can be rapidly realized, and the pseudo-real-time requirement can be met.
In one possible implementation, the address of the business data may be passed into the sub-process during the invocation of the algorithm module. After the algorithm module is called, the address can be accessed through the subprocess, and the service data stored by the address is obtained. Wherein, the address of the service data may be a path of the service data. For example, referring to FIG. 7, the communication flow between the java process and the python sub-process may include: and the java process reads the service data to be analyzed from the HBase, executes scanning operation to obtain raw.csv, and transmits the raw.csv to an algorithm module in the python subprocess. And the algorithm module acquires res.json according to raw.csv, the res.json is analyzed, the analysis result is returned to the HBase client, and the result is returned to the HBase database after the HBase client processes the result. The raw.csv includes the address of the service data, and the raw.csv may be in the form of a file. The scanning operation may be a scan operation of the HBase database, where the scan operation is used to read all data of the index to be analyzed according to the regular expression matching. Json includes the address to which the analysis result is attributed, and may be in the form of a file.
Through the above embodiment, the effects achieved at least may include: the data volume of the service data transmitted by each communication of the Java process and the Python sub-process is limited because the data volume is generally limited when the processes communicate internally. In the mode, the Java process transmits the address of the service data to the Python subprocess instead of directly transmitting the service data to the Python subprocess, and the data volume of the address is far smaller than that of the service data, so that the problem of limited communication data volume is solved. In addition, as the Python subprocess can find data according to the address and carry out algorithm processing according to the data, the function of attribution analysis is also realized.
And the second implementation mode is to serve the algorithm module.
In the second implementation manner, the attribution analysis module may be implemented based on a Remote Procedure Call Protocol (RPC) Stub (Stub), for example, referring to fig. 8, the attribution analysis module may be a Java client running an RPC Stub associated with attribution analysis. Among other things, RPC is a protocol that requests services from a remote computer program over a network without knowledge of the underlying network technology. RPC converts the original local calling method into a method for calling a remote server, thereby improving the processing capacity and throughput of the system. The RPC client stub is one of core components of an RPC architecture, is used for storing address messages of a server, packaging request parameters of the client into network messages, and remotely sending the network messages to the server through a network. Among them, the attribution analysis module may be a gRPC Stub, which is a set of rpc frameworks for Google (Google) open source.
In the second implementation manner, the algorithm module may be implemented based on the RPC server corresponding to the RPC Stub, and may be configured to provide an attribution analysis algorithm service. For example, referring to fig. 8, the algorithm module may be a gRPC server running RPC Stub for executing attribution analysis algorithms, and the algorithm module may be denoted as an algorithm engineering servization module.
In one possible implementation, referring to fig. 8, the process of attribution analysis may include: the Java client sends an original request (proto request) to the gRPC server through the gRPC Stub based on a communication protocol serialization protocol (proto protocol), and the proto request is used for requesting to invoke an attribution analysis algorithm for attribution analysis. The proto request may carry an indicator identification to be analyzed by an attribution analysis algorithm. The gPC server receives the proto request through the algorithm engineering service module, responds to the proto request, and sends an HTTP request to a Click House database based on a hypertext transfer protocol (HTTP) protocol, wherein the HTTP request is used for requesting to acquire service data. The Click House database receives the HTTP request through the multidimensional analysis engine, responds to the HTTP request, returns the business data to the gPC server through the HTTP response, an algorithm engineering service module in the gPC server receives the HTTP response, obtains the business data from the HTTP response, obtains an attribution analysis result after attribution analysis, carries the attribution analysis result in an original response (proto response), and returns the attribution analysis result to the Java client.
Similarly, the Python client sends a proto request to the gRPC server through the gRPC Stub based on a communication protocol serialization protocol (proto protocol). The gPC server receives the proto request through the algorithm engineering service module, responds to the proto request, and sends an HTTP request to the Click House database based on the HTTP protocol. The Click House database receives the HTTP request through the multidimensional analysis engine, responds to the HTTP request, returns the business data to the gPC server through the HTTP response, an algorithm engineering service module in the gPC server receives the HTTP response, obtains the business data from the HTTP response, obtains attribution analysis results after attribution analysis is carried out, carries the attribution analysis results on proto response, and returns the attribution analysis results to the Python client.
Currently, the mainstream big data platform is realized by JAVA, and depends on many third-party components without components in the second computer language. Through the implementation mode, the algorithm module can serve as an RPC service end to provide services to the outside, and any background service needing attribution analysis can call the algorithm module through the RPC Stub, so that algorithm servization is realized, the execution of the algorithm can be completely separated from the use of the client, the algorithm is decoupled from the back-end engineering, the structure is clearer, the algorithm capacity can be opened, more services can be flexibly docked, and the algorithm value is released.
In step S407, the electronic device processes the service data through the attribution analysis algorithm in the process of running the algorithm module, so as to obtain a processing result.
The processing result may be referred to as an attribution analysis result, and the processing result may indicate a cause of causing an index abnormality in the traffic data.
In the related art, algorithm development is mainly based on the second computer language, and the back-end engineering mainly uses the first computer language, the traditional method is to translate python engineering into the first computer language, and the process consumes a lot of time and labor cost and causes that the attribution analysis algorithm is difficult to service online.
In the method provided by the embodiment, the attribution analysis algorithm realized by the second computer language is packaged through the algorithm module, the attribution analysis module provides an interface called based on the first computer language for the external service, the attribution analysis module can serve as a communication medium between the external service and the algorithm module in the attribution analysis process, and the external service can trigger the algorithm module to process the business data by calling the attribution analysis module based on the first computer language to obtain a processing result. According to the method, the process of translating the program code of the attribution analysis algorithm from the second computer language to the first computer language is omitted, so that the time consumed by the translation process is saved, the labor cost and the material resource cost brought by the translation process are saved, the data processing efficiency in the attribution analysis process is improved, the data processing is more convenient and faster, and the method is favorable for conveniently and efficiently carrying out online service on the algorithm engineering.
FIG. 9 is a block diagram illustrating a data processing apparatus according to an example embodiment. Referring to fig. 9, the apparatus includes a receiving unit 901, a calling unit 902, and a processing unit 903.
A receiving unit 901 configured to execute receiving, by the attribution analysis module, a call instruction based on a first computer language from a server;
a calling unit 902 configured to execute calling an algorithm module, which encapsulates the attribution analysis algorithm based on the second computer language, in response to the calling instruction;
and the processing unit 903 is configured to execute processing on the service data through the attribution analysis algorithm in the process of running the algorithm module, so as to obtain a processing result.
In the device provided by this embodiment, the attribution analysis algorithm implemented by the second computer language is encapsulated by the algorithm module, the attribution analysis module provides an interface called based on the first computer language for the external service, the attribution analysis module can serve as a communication medium between the external service and the algorithm module in the attribution analysis process, and the external service can trigger the algorithm module to process the service data by calling the attribution analysis module based on the first computer language, so as to obtain a processing result. According to the method, the process of translating the program code of the attribution analysis algorithm from the second computer language to the first computer language is omitted, so that the time consumed by the translation process is saved, the labor cost and the material resource cost brought by the translation process are saved, the data processing efficiency in the attribution analysis process is improved, the data processing is more convenient and faster, and the method is favorable for conveniently and efficiently carrying out online service on the algorithm engineering.
Optionally, the attribution analysis module is implemented based on a process, and the algorithm module is implemented based on a sub-process embedded in the process.
Optionally, the invoking unit 902 is configured to perform: transmitting the address of the service data into the subprocess;
the device also includes: and the access unit is configured to execute the sub-process to access the address and obtain the service data stored by the address.
Optionally, the attribution analysis module is implemented based on a remote procedure call Stub (RPC) Stub, and the algorithm module is implemented based on an RPC server corresponding to the RPC Stub.
Optionally, the data structure of the service data is a target data structure, the index of the target data structure includes an index identifier, a dimension identifier, and a dimension value, the value of the target data structure includes an index value corresponding to each time point in at least one time point, and the index value is a value of an index corresponding to the index identifier at the corresponding time point.
Optionally, the target data structure is obtained by processing an original data structure according to a time point, where an index of the original data structure includes the time point, an index identifier, a dimension identifier, and a dimension value, and a value of the original data structure includes an index value.
Optionally, the apparatus further comprises:
the query unit is configured to perform correlation query according to basic data to obtain user portrait data corresponding to the basic data, wherein the basic data comprises a dimension value of a client corresponding to the server in at least one dimension;
a generating unit configured to perform generating the service data according to the base data and the user portrait data, the service data including the base data and the user portrait data.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
The electronic device in the above method embodiment may be implemented as a terminal, for example, fig. 10 shows a block diagram of a terminal 1000 provided in an exemplary embodiment of the present disclosure. The terminal 1000 can be: a smart phone, a tablet computer, an MP3(Moving Picture Experts Group Audio Layer III, motion video Experts compression standard Audio Layer 3) player, an MP4(Moving Picture Experts Group Audio Layer IV, motion video Experts compression standard Audio Layer 4) player, a notebook computer or a desktop computer. Terminal 1000 can also be referred to as user equipment, portable terminal, laptop terminal, desktop terminal, or the like by other names.
In general, terminal 1000 can include: one or more processors 1001 and one or more memories 1002.
Processor 1001 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and so forth. The processor 1001 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), and a PLA (Programmable Logic Array). The processor 1001 may also include a main processor and a coprocessor, where the main processor is a processor for Processing data in an awake state, and is also referred to as a Central Processing Unit (CPU); a coprocessor is a low power processor for processing data in a standby state. In some embodiments, the processor 1001 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the display screen. In some embodiments, the processor 1001 may further include an AI (Artificial Intelligence) processor for processing a computing operation related to machine learning.
Memory 1002 may include one or more computer-readable storage media, which may be non-transitory. The memory 1002 may also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in the memory 1002 is used to store at least one instruction for execution by the processor 1001 to implement the data processing methods provided by the method embodiments of the present disclosure.
In some embodiments, terminal 1000 can also optionally include: a peripheral interface 1003 and at least one peripheral. The processor 1001, memory 1002 and peripheral interface 1003 may be connected by a bus or signal line. Various peripheral devices may be connected to peripheral interface 1003 via a bus, signal line, or circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 1004, touch screen display 1005, camera assembly 1006, audio circuitry 1007, positioning assembly 1008, and power supply 1009.
The peripheral interface 1003 may be used to connect at least one peripheral related to I/O (Input/Output) to the processor 1001 and the memory 1002. In some embodiments, processor 1001, memory 1002, and peripheral interface 1003 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 1001, the memory 1002, and the peripheral interface 1003 may be implemented on separate chips or circuit boards, which are not limited by this embodiment.
The Radio Frequency circuit 1004 is used for receiving and transmitting RF (Radio Frequency) signals, also called electromagnetic signals. The radio frequency circuitry 1004 communicates with communication networks and other communication devices via electromagnetic signals. The radio frequency circuit 1004 converts an electrical signal into an electromagnetic signal to transmit, or converts a received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 1004 comprises: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and so forth. The radio frequency circuit 1004 may communicate with other terminals via at least one wireless communication protocol. The wireless communication protocols include, but are not limited to: the world wide web, metropolitan area networks, intranets, generations of mobile communication networks (2G, 3G, 4G, and 5G), Wireless local area networks, and/or WiFi (Wireless Fidelity) networks. In some embodiments, the radio frequency circuit 1004 may also include NFC (Near Field Communication) related circuits, which are not limited by this disclosure.
The display screen 1005 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display screen 1005 is a touch display screen, the display screen 1005 also has the ability to capture touch signals on or over the surface of the display screen 1005. The touch signal may be input to the processor 1001 as a control signal for processing. At this point, the display screen 1005 may also be used to provide virtual buttons and/or a virtual keyboard, also referred to as soft buttons and/or a soft keyboard. In some embodiments, display screen 1005 can be one, providing a front panel of terminal 1000; in other embodiments, display 1005 can be at least two, respectively disposed on different surfaces of terminal 1000 or in a folded design; in still other embodiments, display 1005 can be a flexible display disposed on a curved surface or on a folded surface of terminal 1000. Even more, the display screen 1005 may be arranged in a non-rectangular irregular figure, i.e., a shaped screen. The Display screen 1005 may be made of LCD (Liquid Crystal Display), OLED (Organic Light-Emitting Diode), and the like.
The camera assembly 1006 is used to capture images or video. Optionally, the camera assembly 1006 includes a front camera and a rear camera. Generally, a front camera is disposed at a front panel of the terminal, and a rear camera is disposed at a rear surface of the terminal. In some embodiments, the number of the rear cameras is at least two, and each rear camera is any one of a main camera, a depth-of-field camera, a wide-angle camera and a telephoto camera, so that the main camera and the depth-of-field camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize panoramic shooting and VR (Virtual Reality) shooting functions or other fusion shooting functions. In some embodiments, camera assembly 1006 may also include a flash. The flash lamp can be a monochrome temperature flash lamp or a bicolor temperature flash lamp. The double-color-temperature flash lamp is a combination of a warm-light flash lamp and a cold-light flash lamp, and can be used for light compensation at different color temperatures.
The audio circuit 1007 may include a microphone and a speaker. The microphone is used for collecting sound waves of a user and the environment, converting the sound waves into electric signals, and inputting the electric signals to the processor 1001 for processing or inputting the electric signals to the radio frequency circuit 1004 for realizing voice communication. For stereo sound collection or noise reduction purposes, multiple microphones can be provided, each at a different location of terminal 1000. The microphone may also be an array microphone or an omni-directional pick-up microphone. The speaker is used to convert electrical signals from the processor 1001 or the radio frequency circuit 1004 into sound waves. The loudspeaker can be a traditional film loudspeaker or a piezoelectric ceramic loudspeaker. When the speaker is a piezoelectric ceramic speaker, the speaker can be used for purposes such as converting an electric signal into a sound wave audible to a human being, or converting an electric signal into a sound wave inaudible to a human being to measure a distance. In some embodiments, the audio circuit 1007 may also include a headphone jack.
A Location component 1008 is employed to locate a current geographic Location of terminal 1000 for purposes of navigation or LBS (Location Based Service). The Positioning component 1008 can be a Positioning component based on the Global Positioning System (GPS) in the united states, the beidou System in china, or the galileo System in russia.
Power supply 1009 is used to supply power to various components in terminal 1000. The power source 1009 may be alternating current, direct current, disposable batteries, or rechargeable batteries. When the power source 1009 includes a rechargeable battery, the rechargeable battery may be a wired rechargeable battery or a wireless rechargeable battery. The wired rechargeable battery is a battery charged through a wired line, and the wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, terminal 1000 can also include one or more sensors 1010. The one or more sensors 1010 include, but are not limited to: acceleration sensor 1011, gyro sensor 1012, pressure sensor 1013, fingerprint sensor 1014, optical sensor 1015, and proximity sensor 1016.
Acceleration sensor 1011 can detect acceleration magnitudes on three coordinate axes of a coordinate system established with terminal 1000. For example, the acceleration sensor 1011 may be used to detect components of the gravitational acceleration in three coordinate axes. The processor 1001 may control the touch display screen 1005 to display a user interface in a landscape view or a portrait view according to the gravitational acceleration signal collected by the acceleration sensor 1011. The acceleration sensor 1011 may also be used for acquisition of motion data of a game or a user.
The gyro sensor 1012 may detect a body direction and a rotation angle of the terminal 1000, and the gyro sensor 1012 and the acceleration sensor 1011 may cooperate to acquire a 3D motion of the user on the terminal 1000. From the data collected by the gyro sensor 1012, the processor 1001 may implement the following functions: motion sensing (such as changing the UI according to a user's tilting operation), image stabilization at the time of photographing, game control, and inertial navigation.
Pressure sensor 1013 may be disposed on a side frame of terminal 1000 and/or on a lower layer of touch display 1005. When pressure sensor 1013 is disposed on a side frame of terminal 1000, a user's grip signal on terminal 1000 can be detected, and processor 1001 performs left-right hand recognition or shortcut operation according to the grip signal collected by pressure sensor 1013. When the pressure sensor 1013 is disposed at a lower layer of the touch display screen 1005, the processor 1001 controls the operability control on the UI interface according to the pressure operation of the user on the touch display screen 1005. The operability control comprises at least one of a button control, a scroll bar control, an icon control and a menu control.
The fingerprint sensor 1014 is used to collect a fingerprint of the user, and the processor 1001 identifies the user according to the fingerprint collected by the fingerprint sensor 1014, or the fingerprint sensor 1014 identifies the user according to the collected fingerprint. Upon identifying that the user's identity is a trusted identity, the processor 1001 authorizes the user to perform relevant sensitive operations including unlocking a screen, viewing encrypted information, downloading software, paying, and changing settings, etc. Fingerprint sensor 1014 can be disposed on the front, back, or side of terminal 1000. When a physical key or vendor Logo is provided on terminal 1000, fingerprint sensor 1014 can be integrated with the physical key or vendor Logo.
The optical sensor 1015 is used to collect the ambient light intensity. In one embodiment, the processor 1001 may control the display brightness of the touch display screen 1005 according to the intensity of the ambient light collected by the optical sensor 1015. Specifically, when the ambient light intensity is high, the display brightness of the touch display screen 1005 is increased; when the ambient light intensity is low, the display brightness of the touch display screen 1005 is turned down. In another embodiment, the processor 1001 may also dynamically adjust the shooting parameters of the camera assembly 1006 according to the intensity of the ambient light collected by the optical sensor 1015.
Proximity sensor 1016, also known as a distance sensor, is typically disposed on a front panel of terminal 1000. Proximity sensor 1016 is used to gather the distance between the user and the front face of terminal 1000. In one embodiment, when proximity sensor 1016 detects that the distance between the user and the front surface of terminal 1000 gradually decreases, processor 1001 controls touch display 1005 to switch from a bright screen state to a dark screen state; when proximity sensor 1016 detects that the distance between the user and the front of terminal 1000 is gradually increased, touch display screen 1005 is controlled by processor 1001 to switch from a breath-screen state to a bright-screen state.
Those skilled in the art will appreciate that the configuration shown in FIG. 10 is not intended to be limiting and that terminal 1000 can include more or fewer components than shown, or some components can be combined, or a different arrangement of components can be employed.
The electronic device in the foregoing method embodiment may be implemented as a server, for example, fig. 11 is a schematic structural diagram of a server provided in the present disclosure, where the server 1100 may generate a relatively large difference due to different configurations or performances, and may include one or more processors (CPUs) 1101 and one or more memories 1102, where the memory 1102 stores at least one instruction, and the at least one instruction is loaded and executed by the processor 1101 to implement the data processing method provided by each of the foregoing method embodiments. Of course, the server may also have a wired or wireless network interface, an input/output interface, and other components to facilitate input and output, and the server may also include other components for implementing the functions of the device, which are not described herein again.
In an exemplary embodiment, there is also provided a storage medium comprising instructions, such as a memory comprising instructions, executable by a processor of an electronic device to perform the data processing method described above. Alternatively, the storage medium may be a non-transitory computer readable storage medium, such as a Read-Only Memory (ROM), a Random Access Memory (RAM), a Compact Disc Read-Only Memory (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, and the like.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (10)

1. A data processing method, comprising:
receiving, by an attribution analysis module, a call instruction based on a first computer language from a server;
in response to the call instruction, calling an algorithm module, the algorithm module encapsulating an attribution analysis algorithm based on a second computer language;
and in the process of operating the algorithm module, processing the service data through the attribution analysis algorithm to obtain a processing result.
2. The data processing method of claim 1, wherein the attribution analysis module is implemented based on a process and the algorithm module is implemented based on a sub-process embedded in the process.
3. The data processing method of claim 2, wherein the invoking an algorithm module comprises:
transmitting the address of the business data into the sub-process;
after the algorithm module is called, the method further comprises:
and accessing the address through the subprocess to obtain the service data stored by the address.
4. The data processing method of claim 1, wherein the attribution analysis module is implemented based on a remote procedure call Stub (RPC) Stub, and the algorithm module is implemented based on a Remote Procedure Call (RPC) server corresponding to the RPC Stub.
5. The data processing method according to claim 1, wherein the data structure of the service data is a target data structure, the index of the target data structure includes an index identifier, a dimension identifier, and a dimension value, the value of the target data structure includes an index value corresponding to each time point in at least one time point, and the index value is a value of an index corresponding to the index identifier at the corresponding time point.
6. The data processing method of claim 5, wherein the target data structure is obtained by processing an original data structure according to time points, the index of the original data structure comprises the time points, an index identifier, a dimension identifier and a dimension value, and the value of the original data structure comprises an index value.
7. The data processing method of claim 1, wherein prior to receiving, by the attribution analysis module, a call instruction based on the first computer language from the server, the method further comprises:
performing association query according to basic data to obtain user portrait data corresponding to the basic data, wherein the basic data comprises a dimension value of a client corresponding to the server in at least one dimension;
and generating the service data according to the basic data and the user portrait data, wherein the service data comprises the basic data and the user portrait data.
8. A data processing apparatus, comprising:
a receiving unit configured to execute receiving, by the attribution analysis module, a call instruction based on a first computer language from a server;
a calling unit configured to execute calling an algorithm module in response to the calling instruction, the algorithm module encapsulating an attribution analysis algorithm based on a second computer language;
and the processing unit is configured to process the service data through the attribution analysis algorithm in the process of operating the algorithm module to obtain a processing result.
9. An electronic device, comprising:
one or more processors;
one or more memories for storing the one or more processor-executable instructions;
wherein the one or more processors are configured to execute the instructions to implement the data processing method of any one of claims 1 to 7.
10. A storage medium, characterized in that instructions in the storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the data processing method of any one of claims 1 to 7.
CN202010055729.4A 2020-01-17 2020-01-17 Data processing method, device, equipment and storage medium Active CN113138771B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010055729.4A CN113138771B (en) 2020-01-17 2020-01-17 Data processing method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010055729.4A CN113138771B (en) 2020-01-17 2020-01-17 Data processing method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113138771A true CN113138771A (en) 2021-07-20
CN113138771B CN113138771B (en) 2024-06-21

Family

ID=76808427

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010055729.4A Active CN113138771B (en) 2020-01-17 2020-01-17 Data processing method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113138771B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113656445A (en) * 2021-08-26 2021-11-16 五八同城信息技术有限公司 Data processing method and device, electronic equipment and storage medium
CN114064576A (en) * 2022-01-13 2022-02-18 北京九章云极科技有限公司 Data set obtaining method and device and electronic equipment
CN115392799A (en) * 2022-10-27 2022-11-25 平安科技(深圳)有限公司 Attribution analysis method and device, computer equipment and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110161940A1 (en) * 2009-12-28 2011-06-30 Frank Brunswig Multi-language support for service adaptation
CN102710554A (en) * 2012-06-25 2012-10-03 深圳中兴网信科技有限公司 Distributed message system and service status detection method thereof
CN106095601A (en) * 2016-06-16 2016-11-09 广东工业大学 A kind of multi-course concurrency resolves differential server system and its implementation
CN107710086A (en) * 2015-04-09 2018-02-16 倍福自动化有限公司 Translation module, processing module and control system
CN108289060A (en) * 2017-01-09 2018-07-17 腾讯科技(深圳)有限公司 A kind of data processing method and device based on RPC service
CN108647891A (en) * 2018-05-14 2018-10-12 口口相传(北京)网络技术有限公司 Data exception classification, Reasons method and device
CN108681446A (en) * 2018-05-11 2018-10-19 国家气象中心 The invasive weather algorithm management system and method for crowd based on Component service

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110161940A1 (en) * 2009-12-28 2011-06-30 Frank Brunswig Multi-language support for service adaptation
CN102710554A (en) * 2012-06-25 2012-10-03 深圳中兴网信科技有限公司 Distributed message system and service status detection method thereof
CN107710086A (en) * 2015-04-09 2018-02-16 倍福自动化有限公司 Translation module, processing module and control system
CN106095601A (en) * 2016-06-16 2016-11-09 广东工业大学 A kind of multi-course concurrency resolves differential server system and its implementation
CN108289060A (en) * 2017-01-09 2018-07-17 腾讯科技(深圳)有限公司 A kind of data processing method and device based on RPC service
CN108681446A (en) * 2018-05-11 2018-10-19 国家气象中心 The invasive weather algorithm management system and method for crowd based on Component service
CN108647891A (en) * 2018-05-14 2018-10-12 口口相传(北京)网络技术有限公司 Data exception classification, Reasons method and device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113656445A (en) * 2021-08-26 2021-11-16 五八同城信息技术有限公司 Data processing method and device, electronic equipment and storage medium
CN114064576A (en) * 2022-01-13 2022-02-18 北京九章云极科技有限公司 Data set obtaining method and device and electronic equipment
CN115392799A (en) * 2022-10-27 2022-11-25 平安科技(深圳)有限公司 Attribution analysis method and device, computer equipment and storage medium

Also Published As

Publication number Publication date
CN113138771B (en) 2024-06-21

Similar Documents

Publication Publication Date Title
CN110471858B (en) Application program testing method, device and storage medium
CN110503959B (en) Voice recognition data distribution method and device, computer equipment and storage medium
CN111338910B (en) Log data processing method, log data display method, log data processing device, log data display device, log data processing equipment and log data storage medium
CN113138771B (en) Data processing method, device, equipment and storage medium
CN110493626B (en) Video data processing method and device
CN110769050B (en) Data processing method, data processing system, computer device, and storage medium
CN112420217B (en) Message pushing method, device, equipment and storage medium
CN111897525A (en) Big data processing method and system
CN113742366A (en) Data processing method and device, computer equipment and storage medium
CN111737100A (en) Data acquisition method, device, equipment and storage medium
CN111178343A (en) Multimedia resource detection method, device, equipment and medium based on artificial intelligence
CN111338933A (en) Buried point verification method, device, equipment and storage medium
CN112905328A (en) Task processing method and device and computer readable storage medium
CN113220366A (en) Sub-application starting method and device, terminal and server
CN113051015A (en) Page rendering method and device, electronic equipment and storage medium
CN113822322A (en) Image processing model training method and text processing model training method
CN114064450A (en) Application program testing method and device, electronic equipment and storage medium
CN112561084B (en) Feature extraction method and device, computer equipment and storage medium
CN111709843B (en) Customer portrait generation method and device and electronic equipment
WO2021031862A1 (en) Data processing method and apparatus thereof
CN112287070A (en) Method and device for determining upper and lower position relation of words, computer equipment and medium
CN114168369A (en) Log display method, device, equipment and storage medium
CN112612540B (en) Data model configuration method, device, electronic equipment and storage medium
CN112597417B (en) Page updating method and device, electronic equipment and storage medium
CN114385723A (en) Data reading method and device, electronic equipment and storage medium

Legal Events

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