Method, computing device, and storage medium for playing data
By generating multiple playback threads at the main device and reconstructing multi-source data, the problem of multi-source data synchronization and real-time playback in traditional data playback methods is solved, and efficient multi-source data analysis and monitoring are achieved.
Patent Information
- Application Number
- CN202510083709.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-20
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2045-01-20
AI Technical Summary
Traditional data playback methods cannot effectively support synchronous and real-time playback of multi-source parsed data, resulting in poor playback quality and an inability to support data analysis of multi-source data.
By acquiring multi-source data to be played in real time at the main device, generating multiple playback threads, reconstructing the data based on the playback scheme, and playing the multi-source data in the target playback window, it supports multiple data display formats and flexible configuration.
It enables synchronous and real-time playback of multi-source parsed data, improves playback smoothness, and supports data analysis and real-time monitoring of multi-source data.
Smart Images

Figure CN119583835B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present application generally relate to the field of data processing, and more particularly to a method for playing data, a computing device and a storage medium. BACKGROUND
[0002] Conventional methods for playing data, such as generally can only play data for a specific single protocol, when the data format of the accessed data source is mixed data of multiple protocols, cannot effectively automatically parse and automatically play such data; for example, when playing the parsing results of the mixed data source data, do not support synchronous playing, real-time playing or comparison playing of multi-source parsed data, the playing effect is not smooth, resulting in the inability to support data analysis based on multi-source data.
[0003] In summary, the conventional method for playing data has the following disadvantages: it does not support synchronous playing, real-time playing of multi-source parsed data, and the playing effect is not good. SUMMARY
[0004] To solve the above problems, the present application provides a method for playing data, a computing device and a storage medium, which can effectively improve the playing fluency of multi-source parsed data and support synchronous playing, real-time playing and comparison playing of multi-source parsed data.
[0005] According to a first aspect of the present application, a method for playing data is provided, comprising: at a master device, obtaining, in real time, multi-source data to be played from devices participating in a parsing task, the devices participating in the parsing task including the master device and / or at least one leaf device, the parsing task being generated and distributed by the master device based on parsed data from multiple input sources; determining a playing scheme for the multi-source data to be played based on predetermined parameters or in response to user operations, so as to generate multiple playing threads; reconstructing the obtained multi-source data to be played based on the generated playing threads; and playing part or all of the multi-source data to be played in a target playing window based on the playing scheme and the reconstructed multi-source data to be played.
[0006] According to a second aspect of the present application, a computing device is provided, comprising: at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the device to perform the steps of the method according to the first aspect.
[0007] According to a third aspect of the present application, a computer-readable storage medium is provided, the computer-readable storage medium having stored thereon a computer program, the computer program being executed by a machine to implement the method according to the first aspect.
[0008] According to a fourth aspect of the present application, there is also provided a computer program product comprising a computer program which, when executed by a machine, performs the method of the first aspect of the present application.
[0009] In some embodiments, determining the play scheme for the multi-source to-be-played data based on the predetermined parameters or in response to the user's operation comprises: determining a number of play windows such that one play window plays at least one group of to-be-played data; determining a play window occupied by a group of to-be-played data, which can be played in at least one play window; and
[0010] Determining a play form of a group of to-be-played data, the play form indicating at least one data presentation form.
[0011] In some embodiments, determining the play scheme for the multi-source to-be-played data further comprises: in response to determining that a group of to-be-played data needs to be played synchronously with another group of to-be-played data or data comparison is needed, playing the group of to-be-played data synchronously with the other group of to-be-played data in the same or different play windows.
[0012] In some embodiments, the method for playing data further comprises: generating one play thread based on each play form of each group of to-be-played data; allocating computing resources and storage resources to each play thread in the plurality of play threads based on the play scheme; and adjusting the computing resources and storage resources allocated to the play threads in real time based on the rendering progress, the play state of the play threads and / or the synchronicity requirement between the play threads.
[0013] In some embodiments, reconstructing the acquired multi-source to-be-played data based on the generated play threads comprises: determining a reconstruction priority of a group of to-be-played data corresponding to each play thread in the plurality of play threads based on the priority, the data flow size, the access frequency, the data abnormal state and / or the timestamp information of the to-be-played data corresponding to the play thread; and allocating computing resources based on the reconstruction priority of each group of to-be-played data so as to obtain the reconstructed groups of to-be-played data.
[0014] In some embodiments, determining the play scheme for the multi-source to-be-played data further comprises: determining a plurality of groups of to-be-played data that need to be compared based on historical multi-source to-be-played data and / or the acquired real-time multi-source to-be-played data; and in response to determining that a group of to-be-played data is from the historical multi-source to-be-played data and the corresponding play form exists in the historical play data, calling the historical play data of the group of to-be-played data for data play; or, in response to determining that a group of to-be-played data is from the historical multi-source to-be-played data and the corresponding play form does not exist in the historical play data, generating the corresponding play form based on the play thread corresponding to the group of to-be-played data for play.
[0015] In some embodiments, the data presentation form comprises one or more of the following: a column chart, a stacked column chart, a bar chart, a stacked bar chart, a line chart, a curve chart, an area chart, a pie chart, a column-line chart, a scatter chart, a ring chart, a histogram, a funnel chart, a waterfall chart, a radar chart, a box plot, a heat map, a highlighted table, a matrix chart, a bubble chart, a K-line chart, a video, and an audio.
[0016] In some embodiments, the method for playing data further comprises: in response to receiving a data analysis request from a user, analyzing the multi-source to-be-played data to obtain a business field and a data feature of the multi-source to-be-played data; and based on the data analysis request and the analysis result of the multi-source to-be-played data, recommending to the user a plurality of groups of to-be-played data about the multi-source to-be-played data, a playing form of each group of to-be-played data, and a playing window of each group of to-be-played data.
[0017] It should be understood that the content described in this section is not intended to identify key or critical features of embodiments of the application or to limit the scope of the application. Other features of the application will become apparent from the following description. BRIEF DESCRIPTION OF DRAWINGS
[0018] The above and other features, advantages and aspects of embodiments of the present application will become more apparent upon reading the following detailed description in conjunction with the accompanying drawings, in which like references refer to like elements. In the drawings:
[0019] Figure 1 A schematic diagram of a system for implementing a method for playing data according to embodiments of the present application is shown.
[0020] Figure 2 A flowchart of a method for playing data according to embodiments of the present application is shown.
[0021] Figure 3 A flowchart of a method for adjusting resources for a playing thread according to embodiments of the present application is shown.
[0022] Figure 4 A flowchart of a method for restructuring acquired multi-source to-be-played data according to embodiments of the present application is shown.
[0023] Figure 5 A flowchart of a method for determining a restructuring priority according to embodiments of the present application is shown.
[0024] Figure 6 A playing window schematic diagram according to embodiments of the present application is shown.
[0025] Figure 7 A data restructuring and playing thread schematic diagram according to embodiments of the present application is shown.
[0026] Figure 8 A block diagram of an electronic device according to an embodiment of the present application is shown. DETAILED DESCRIPTION
[0027] Exemplary embodiments of the present application are described herein with reference to the accompanying drawings, in which various details are set forth to assist in understanding the present application. It will be apparent to those skilled in the art that various changes and modifications can be made to the embodiments described herein without departing from the spirit and scope of the present application. It is to be understood that the following description is merely exemplary of the present application and is intended to provide support for the claims.
[0028] As used herein, the terms "comprises," "comprising," "includes," "including," "has," "having," "contains," "containing," or variations thereof, are intended to be open-ended, i.e., to mean including, but not limited to. Unless otherwise noted, the terms "or" and "and" are used in their inclusive sense (i.e., they are used to mean "and / or"). The term "based on" is intended to be given its ordinary sense, i.e., "based at least in part on." The terms "one example embodiment" and "an example embodiment" are used interchangeably. The term "another embodiment" is used interchangeably with the term "at least one additional embodiment." The terms "first," "second," and the like are used merely to distinguish one element from another and are not intended to denote a particular order or priority. Other specific and implicit definitions can be found below.
[0029] As described previously, the conventional manner for data playing has the disadvantages that it does not support synchronized playing and real-time playing of multi-source parsed data, and the playing effect is poor, thus failing to support data analysis based on multi-source data.
[0030] To at least partially address one or more of the above-mentioned problems and other potential problems, an example embodiment of the present application proposes a scheme for data playing, in which, in the present application scheme, multi-source to-be-played data is acquired in real time at a master device from devices participating in a parsing task, the devices participating in the parsing task include the master device and / or at least one leaf device, the parsing task is generated and distributed by the master device based on to-be-parsed data from multiple input sources, thus being able to aggregate multi-source to-be-played data from multiple devices; a playing scheme for the multi-source to-be-played data is determined based on predetermined parameters or in response to user operations, so as to generate multiple playing threads.
[0031] In addition, the application can also reconstruct the obtained multi-source to-be-played data based on the generated playing thread, and play part or all of the multi-source to-be-played data in the target playing window based on the playing scheme and the reconstructed multi-source to-be-played data. Thus, the application can make the multi-source playing data be put into the target playing window in one or more playing forms according to the playing scheme and based on one or more groups of to-be-played data in units of playing threads. Therefore, the application can support the synchronous playing and real-time playing of the multi-source parsed data, and support the flexible configuration of the playing form and the playing position, so as to support the data analysis of the multi-source data.
[0032] Figure 1 A schematic diagram of a system 100 for implementing the method for playing data according to the embodiments of the application is shown. As shown in Figure 1 The system 100 includes a master device 110 and leaf devices (130-1 to 130-N), a network 140 and a storage device 150. The master device 110, the leaf devices (130-1 to 130-N), the storage device 150 and a display device 160 can interact with each other through the network 140 (for example, the Internet, a local area network, an Ethernet, an industrial Ethernet, an EPA network).
[0033] Any of the leaf devices (130-1 to 130-N) can interact with the master device 110 through the network 140, which can receive a parsing task from the master device 110, for example; can also receive to-be-parsed data from at least one input source in real time, can also store the to-be-parsed data in its own memory, and can also obtain the to-be-parsed data from the storage device 150; can also send the parsed to-be-parsed data (i.e., to-be-played data) to the master device 110, for example. Any of the leaf devices (130-1 to 130-N) can have the ability to parse data to accept and complete the parsing task, and can have one or more processing units, including special processing units such as GPU, FPGA and ASIC, and general processing units such as CPU. In addition, one or more virtual machines can also run on each leaf device.
[0034] As for the master device 110, it is used to obtain multi-source to-be-played data from devices participating in a parsing task in real time, the devices participating in the parsing task including the master device and / or at least one leaf device, and the parsing task being generated and distributed by the master device 110 based on to-be-parsed data from multiple input sources.
[0035] As to the display device 160, it is, for example, a display, a projector, etc., and the display device 160 can be communicatively connected with the host device 110 through a wired connection or a wireless connection. The display device 160 can be one or more, and at least one playback window can be played on each display device 160. The host device 110 can play part or all of the multi-source to-be-played data in a target playback window through the display device 160. As to the playback window (1601 to 160n), each playback thread can be played in at least one playback window, and at least one playback thread can be played in each playback window.
[0036] As to the host device 110, the host device 110 can have one or more processing units, including special-purpose processing units such as GPU, FPGA and ASIC, and general-purpose processing units such as CPU. In addition, one or more virtual machines can also run on each host device 110. In some embodiments, the host device 110 and the storage device 150 can be integrated together, or can be separately arranged from each other. In some embodiments, the host device 110 includes, for example, a to-be-played data acquisition module 112, a playback thread generation module 114, a data reconstruction module 116, and a data playback module 118.
[0037] As to the to-be-played data acquisition module 112, it is used to acquire multi-source to-be-played data in real time from devices participating in a parsing task, which includes the host device and / or at least one leaf device. The parsing task is generated and distributed by the host device based on to-be-parsed data from multiple input sources.
[0038] As to the playback thread generation module 114, it is used to determine a playback scheme for the multi-source to-be-played data based on predetermined parameters or in response to user operations, so as to generate a plurality of playback threads.
[0039] As to the data reconstruction module 116, it is used to reconstruct the acquired multi-source to-be-played data based on the generated playback threads.
[0040] As to the data playback module 118, it is used to play part or all of the multi-source to-be-played data in a target playback window based on the playback scheme and the reconstructed multi-source to-be-played data.
[0041] Figure 2 A flowchart of a method 200 for playing data according to an embodiment of the present application is shown. The method 200 can be executed by the host device 110 as shown, or can be executed at the electronic device 800 as shown. It should be understood that the method 200 can also include additional steps not shown and / or can omit the steps shown, and the scope of the present application is not limited in this respect. Figure 1 Figure 8 It should be understood that the method 200 can also include additional steps not shown and / or can omit the steps shown, and the scope of the present application is not limited in this respect.
[0042] At step 210, at the master device 110, multi-source to-be-played data is acquired in real time from devices participating in a parsing task, the devices participating in the parsing task including the master device and / or at least one leaf device, the parsing task being generated and distributed by the master device based on to-be-parsed data from multiple input sources.
[0043] Regarding the input sources, they include, for example, CAN bus protocol data (CAN, Controller Area Network), USB bus data (USB, Universal Serial Bus), serial port protocol data, EPA protocol data (EPA, Ethernet for Plant Automation), network port protocol data, and input source data of various protocols. Thus, the to-be-played data in the present application also comes from multiple data sources, the multi-source to-be-parsed data generates a parsing task via the master device and distributes the parsing task to multiple devices, the master device receives parsed multi-source to-be-parsed data (parsed multi-source to-be-parsed data is multi-source to-be-played data) from each parsing task execution device, and reconstructs the multi-source to-be-played data based on a play scheme.
[0044] At step 220, the master device 110 determines a play scheme for the multi-source to-be-played data based on predetermined parameters or in response to user operations, so as to generate multiple play threads.
[0045] In some embodiments, determining the play scheme for the multi-source to-be-played data based on predetermined parameters or in response to user operations includes: the master device 110 determines the number of play windows so that one play window plays at least one set of to-be-played data. The master device 110 determines the play window occupied by a set of to-be-played data, and a set of to-be-played data can be played in at least one play window; and the master device 110 determines the play form of a set of to-be-played data, and the play form indicates at least one data presentation form.
[0046] In some embodiments, the data presentation form includes one or more of the following: column chart, stacked column chart, bar chart, stacked bar chart, line chart, curve chart, area chart, pie chart, column-line chart, scatter chart, ring chart, histogram, funnel chart, waterfall chart, radar chart, box chart, heat map, highlighted table, matrix chart, bubble chart, K-line chart, video, and audio. Thus, the present application can support multiple data presentation forms (for example, in the form of multiple charts).
[0047] In some embodiments, determining the play scheme for the multi-source to-be-played data also includes: in response to determining that a set of to-be-played data needs to be played synchronously with another set of to-be-played data or data comparison, playing the set of to-be-played data synchronously with the other set of to-be-played data in the same or different play window.
[0048] For example, referring to Figure 6 , it is determined to play the multi-source play data in the play window 1601 and the play window 1062; for example, it is determined to play two groups of data, one group of play data 60 and another group of play data 70, it is determined to play the play data 60 in two play forms, the curve chart play form 61 and the line chart play form 62, and the play form of the other group of play data 70 is the column chart play form 71; for example, it is determined to play the curve chart play form 61 of one group of play data 60 in the play window 1601 and the play window 1602, to play the line chart play form 62 of one group of play data 60 only in the play window 1601, and to play the column chart play form 71 of the other group of play data 70 only in the play window 1062. For example, the one group of play data 60 and the other group of play data 70 can come from different data sources.
[0049] In the above scheme, the play scheme contains the number of play windows, the grouping of the to-be-played data, the to-be-played data group and the corresponding play form played by each play window, the play form in which each group of to-be-played data is played, the play position (which window), and other specific play information; and it supports multi-window play, supports multiple play forms of playing a single group of play data, supports multiple play forms of playing multiple groups of play data, and also supports playing the above multiple play forms in a single play window. Thus, the present application supports flexible grouping and flexible play configuration for multi-source to-be-played data, and through the combination of multiple play forms of multiple groups of play data and play positions, it can facilitate data real-time monitoring, data comparison, data analysis, and the like.
[0050] For example, in some embodiments, the to-be-analyzed data includes files and / or folders, when the to-be-analyzed data is a folder, a plurality of files in the folder are continuously analyzed; and based on the determined play scheme, the analyzed plurality of files are continuously played. As for the plurality of files in the folder, they can come from the same or different input sources, for example, data of the same or different data protocols. As for a file, for example, one file can also include data of multiple data sources. Thus, the data play method provided by the present application can be used in combination with the data analysis method, thereby supporting real-time automatic analysis and real-time automatic play of multi-source data.
[0051] In step 230, the host device 110 reconstructs the acquired multi-source to-be-played data based on the generated play thread.
[0052] The method for reconstructing the acquired multi-source to-be-played data will be described in detail below Figure 4 , and will not be described here again.
[0053] At step 240, the master device 110 plays part or all of the multi-source to-be-played data in the target play window based on the play scheme and the reconstructed multi-source to-be-played data.
[0054] As to part and all of the multi-source to-be-played data, the multi-source to-be-played data can be distinguished in groups based on the play scheme, and one group of multi-source to-be-played data is part of the multi-source to-be-played data, for example, the multi-source to-be-played data M is divided into 3 groups, each group is played in different play form, wherein group M1, group M2 is played in play window 1603, group M3 is played in play window 1604, group M1, group M2 and M3 are played in play window 1605, then the play window 1603 and the play window 1604 respectively play part of the multi-source to-be-played data M; the play window 1605 plays all of the multi-source to-be-played data M.
[0055] In the above scheme, the application supports two-dimensional chart play form and / or three-dimensional chart play form in which the same group or different groups of play data can be played simultaneously in the same play window, which can integrate different play forms in the same play window to facilitate real-time data analysis; the same play form of the same group of play data can also be projected in different play windows, or different play forms can be projected in the same play window, or the same play form can be combined with various play data of other play data in different play windows.
[0056] Therefore, the application can support a group of to-be-played data and another group of to-be-played data to be played synchronously in multiple play forms, and can also support the same group of to-be-played data to be played synchronously in multiple play forms; the combination of the play data group, the play form and the play window enables the application to execute multiple play threads for the multi-source to-be-played data, and supports multi-play thread synchronous play, real-time play and comparison play of one or more play windows.
[0057] In summary, the above scheme can aggregate multi-source to-be-played data from multiple devices; and based on the predetermined and / or user demand, multiple play threads can be generated for the multi-source to-be-played data based on the play scheme, and the obtained multi-source play data can be reconstructed; and based on the play scheme and the reconstructed multi-source to-be-played data, the multi-source play data can be projected into the target play window in units of play threads according to the play scheme; and various groupings and various play form combinations of to-be-played data can be flexibly played in the target play window combination. Therefore, the application can support synchronous play and real-time play of multi-source analysis data, and the play effect is not good, which leads to the inability to support data analysis work based on multi-source data.
[0058] Figure 3A flowchart of a method 300 for adjusting resources to a playing thread according to an embodiment of the present application is shown. The method 300 can be performed by the host device 110 as shown in Figure 1 , or at the electronic device 800 as shown in Figure 8 . It should be understood that the method 300 can further include additional steps not shown and / or can omit the steps shown, and the scope of the present application is not limited in this respect.
[0059] At step 310, the host device 110 generates one playing thread based on each playing form of each group of data to be played.
[0060] For example, please continue to refer to Figure 6 , two playing threads S61 and S62 are generated based on the playing form 61 and the playing form 62 of the playing data 60 respectively, and one playing thread S71 is generated based on the playing form 71 of the playing data 70.
[0061] At step 320, the host device 110 allocates computing resources and storage resources to each of the plurality of playing threads based on the playing scheme.
[0062] At step 330, the host device 110 adjusts the computing resources and storage resources allocated to the playing threads in real time based on the rendering progress, the playing state of the playing threads, and / or the synchronization requirement between the playing threads.
[0063] Please continue the above example, the computing resources and storage resources are allocated to the playing thread S61, the playing thread S62 and the playing thread S71 respectively; for example, initial computing resources and storage resources are allocated to each of the plurality of playing threads according to the size of the group of data to be played corresponding to the playing thread, the real-time requirement, the playing form, etc.
[0064] For example, during the playing process, the computing resources and storage resources allocated to the playing threads are adjusted in real time based on the rendering progress, the playing state, the access volume, the interaction frequency of the playing threads, and / or the synchronization requirement between the playing threads. For example, in the playing window 1601, the synchronization between S61 and S62 is determined according to the time difference of the rendering progress between S61 and S62; for example, S61 is 1 second slower than S62 in playing, and the synchronization requirement between S61 and S62 is “the time difference is less than or equal to 0.3 seconds”, at this time, more computing resources need to be allocated to the playing thread S61 according to the time difference between the two.
[0065] For example, in the play window 1602, the play thread S71 has a 0.5-second delay error compared to the play thread S61, and the play thread S61 has a 0.3-second delay error compared to the real-time requirement of the play, for example, based on the click rate (access, interaction frequency) of the play thread S61 being greater, when adjusting the computing resources and storage resources, more resources are preferentially allocated to the play thread S61 to ensure the stability of the interaction access of the play thread S61. It should be understood that based on different business scenarios, play states, synchronization requirements, etc., a certain play form of a set of to-be-played data can have different resource adjustment priorities.
[0066] Regarding computing resources, for example, it includes CPU (Central Processing Unit), GPU (Graphics Processing Unit), TPU (Tensor Processing Unit), NPU (Neural Processing Unit), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), etc. Regarding the amount of available computing resources, such as the amount of available computing resources (i.e., idle computing resources) of the master device and the leaf device, for example, the amount of computing resources is calculated, measured, compared, etc. in the commonly used unit of computing resource type.
[0067] Figure 4 A flowchart of a method 400 for reconstructing acquired multi-source to-be-played data according to an embodiment of the application is shown. The method 400 can be performed by the master device 110 as shown, or can be performed at the electronic device 800 as shown. It should be understood that the method 400 can also include additional steps not shown and / or can omit the steps shown, and the scope of the application is not limited in this regard. Figure 1 Figure 8 It should be understood that the method 400 can also include additional steps not shown and / or can omit the steps shown, and the scope of the application is not limited in this regard.
[0068] At step 402, the master device 110 determines a plurality of sets of to-be-played data that need to be compared based on historical multi-source to-be-played data and / or acquired real-time multi-source to-be-played data.
[0069] At step 404, the master device 110 calls the historical play data of a set of to-be-played data for data play if it is determined that the set of to-be-played data comes from historical multi-source play data and the corresponding play form has historical play data.
[0070] At step 406, the host device 110 generates a corresponding playing form based on the playing thread corresponding to the set of to-be-played data, if it is determined that the set of to-be-played data comes from the historical multi-source playing data and there is no historical playing data corresponding to the playing form.
[0071] For example, please refer to Figure 6 For example, the playing data set 60 comes from the historical multi-source playing data, there is historical playing data about the playing form 62 of the playing data set 60, and at this time, it is required to play the playing data set 60 in two playing forms of the playing form 62 and the playing form 61 in the playing window 1601; as for the playing form 62, the historical playing data is directly called for playing; as for the playing form 61, the playing thread 61 needs to be generated to generate the playing form 61 in real time for playing; in addition, for the playing data set 60, since the set of playing data is reconstructed and generated, the playing data set 60 does not need to be reconstructed and generated.
[0072] Therefore, in the above method, for the playing data set which has been generated by reconstruction of the host device, in the subsequent playing link, no matter what playing form is played, repeated reconstruction is not required for it; only for the required playing form, the historical playing data is called or the playing thread is generated to render the related data of the new playing form; therefore, the application can fully utilize the historical reconstruction data and the historical playing data, the same playing form of the same set of to-be-played data is no longer wasted in calculation resources, which greatly saves the calculation resources in the system, so that the calculation resources and the storage resources (such as cache) can be more targetedly allocated to the new playing form demand which needs to be rendered in real time.
[0073] Figure 5 A flowchart of a method 230 for determining a reconstruction priority according to an embodiment of the application is shown. The method 500 can be performed by the host device 110 as shown in Figure 1 , or can be performed at the electronic device 800 as shown in Figure 8 It should be understood that the method 500 can also include additional steps not shown and / or can omit the steps shown, and the scope of the application is not limited in this respect.
[0074] At step 232, the reconstruction priority of the set of to-be-played data corresponding to each playing thread in the plurality of playing threads is determined based on the priority, the data stream size, the access frequency, the data abnormal state and / or the timestamp information of the to-be-played data corresponding to the playing thread.
[0075] At step 234, the calculation resources are allocated based on the reconstruction priority of each set of to-be-played data, so as to obtain the plurality of sets of to-be-played data after reconstruction.
[0076] For example, please refer to Figure 7 , which illustrates the data reconstruction and playing thread diagram of the embodiment of the present application; the master device 110 aggregates the multi-source to-be-played data Y obtained from the self-analysis and from multiple leaf devices, and parses the obtained multi-source to-be-played data Y into to-be-played data group 01 and to-be-played data group 02 according to the playing scheme F1; wherein, further according to the playing scheme F1, it is determined that the to-be-played data group 01 is presented in the playing form 011, the playing form 012 and the playing form 013 respectively, and the to-be-played data group 02 is presented in the playing form 021; then, based on the presentation form requirements of each to-be-played data group, the playing thread S011 corresponding to the playing form 011, the playing thread S012 corresponding to the playing form 012, the playing thread S013 corresponding to the playing form 013 and the playing thread S021 corresponding to the playing form 021 are generated; finally, the playing icon data rendered by the playing thread S011 and the playing thread S012 will be played in the playing window 1605, and the playing icon data rendered by the playing thread S013 and the playing thread S021 will be played in the playing window 1606.
[0077] In the above data reconstruction link, the reconstruction priority of the to-be-played data group 01 and the to-be-played data group 02 will be determined based on the priority, data flow size, access frequency, data abnormal state and / or timestamp information of each to-be-played data group; and the to-be-played data after reconstruction is rendered to provide the display device with the playing data about the corresponding playing form.
[0078] Regarding the data abnormal state, for example, the data after being processed by the playing thread has an abnormality in the playing, for example, the playing thread S011 presents the real-time water temperature of the cooling end of the device, but presents that the water temperature reaches 300 degrees Celsius, obviously the water temperature range is 0-100 degrees, at this time the playing data has an abnormality; also for example, the playing thread S021 presents the real-time value of the Shanghai Stock Exchange Index, but presents that the current stock index is -1000, obviously there is also an abnormality.
[0079] Regarding the timestamp information, it indicates the timestamp corresponding to the displayed playing form in the playing window, through the timestamp, the synchronization state between each playing form (i.e. playing thread) in the playing window can be obtained, the time difference can be caused by the different reconstruction speeds of the to-be-played data groups, or can be caused by the different rendering progress of the playing threads, through the timestamp information, the synchronization time difference between any two or more playing forms (playing threads) needing synchronization can be calculated, so as to adjust the computing resources and storage resources of the playing threads; and adjust the reconstruction priority of the to-be-played data groups, so as to adjust the reconstruction speed of each to-be-played data group, so that the playing forms displayed in the playing window meet the synchronization requirements, real-time requirements, comparison requirements, etc.
[0080] In some embodiments, at the host device 110, based on the presentation setting, the parsed data is presented (during the presentation, the user can interact, for example, corresponding to receiving a user click on a play icon or button, the data presentation such as playing data in the selected display window; it can also respond to user operation instructions such as pausing, screenshot, etc.).
[0081] In some embodiments, at the host device 110, if a data analysis request is received from the user, the multi-source to-be-played data is analyzed to obtain the business field and data characteristics of the multi-source to-be-played data; and based on the data analysis request and the analysis result of the multi-source to-be-played data, the user is recommended a plurality of groups of to-be-played data about the multi-source to-be-played data, a playing form of each group of to-be-played data, and a playing window of each group of to-be-played data.
[0082] Regarding the business field, it includes but is not limited to production environment monitoring, temperature monitoring, fund flow monitoring, robot control, automatic driving, automatic production, mechanical arm control, motor control; regarding the data characteristics, it includes but is not limited to the type, timing, capacity, proportion, classification, variable, periodicity, etc. of the data.
[0083] Therefore, the present application can support various user interaction operations in the data playing process, and support the business field and data characteristics based on the playing data; recommend appropriate playing forms to the user to assist the user to efficiently complete the required data comparison, data analysis and data real-time monitoring, etc.
[0084] In order to facilitate further understanding of the application field of the present application, the present application is described in the following some examples.
[0085] Business scenario 1: device health state monitoring;
[0086] Background: A manufacturing plant monitors the running state of the equipment (such as temperature, vibration, energy consumption) in real time through sensors, and compares historical data to analyze the health state and trend of the equipment, and prevent possible failures.
[0087] Data source: online data source: real-time temperature, vibration frequency, power consumption of the equipment (updated every second); offline data source: stored past one-week equipment running data (recorded at 5-minute intervals); mixed data source: mixing real-time data with historical average value or prediction model data for comparative analysis.
[0088] Real-time data parsing link, sensor sends data every second in the following format: {Timestamp: "2024-12-1210:00:00",DeviceID:"MachineA", Temperature: 75°C, Vibration: 0.4g, Power:1200W}; The master device receives the real-time monitoring data stream (to be parsed data) about device A, distributes the real-time monitoring data stream to the parsing task execution device, collects and reconstructs the to-be-played data about device A according to the data playback requirements, for example, reconstructs in the form of a chart.
[0089] Historical data loading link, extract MachineA's historical data from the database, such as the average temperature, vibration and power every hour within a week; Data format: {Timestamp: "2024-12-11 10:00:00",Temperature: 70°C, Vibration: 0.3g, Power: 1150W}.
[0090] Sharding reconstruction and grouping display: Align real-time data with historical data, and shard by time window (such as 1 minute per time slice); In window 1: dynamically update the line chart based on real-time data to display the current state of device A. In window 2: based on the trend chart of historical data, display the average running of device A in the past week. In window 3: compare the real-time and historical data of device A, for example, compare the temperature, mark yellow when the real-time temperature is 5°C higher than the historical average; compare the vibration, trigger a red alarm when the real-time vibration is higher than the historical maximum. For example, maintenance personnel find that the vibration frequency of MachineA suddenly exceeds the historical maximum (0.5g) in window 3, immediately suspend the device for inspection to prevent possible bearing failure.
[0091] Business scenario 2: welding robot welding quality analysis;
[0092] Background; Welding robots in the workshop need to analyze welding quality through column charts and pie charts to evaluate welding efficiency and defect distribution.
[0093] Data sources include: real-time data stream: current welding parameters (current, voltage, welding speed); historical data stream: welding quality statistics in the past week (normal / minor defects / severe defects); mixed data stream: real-time data and historical quality distribution superimposed.
[0094] Data dimensions include: Dimension 1: welding current (A); Dimension 2: welding speed (cm / s); Dimension 3: welding defect type (porosity, incomplete fusion, crack); Dimension 4: robot number (R1, R2, R3).
[0095] Based on the above scenario and data parameters, the host device obtains monitoring data about the state of the welding robot in real time, and based on the above features of the data, based on the user's quality analysis requirements for the welding robot, the user is recommended to view and analyze the welding quality distribution in real time in the form of a column chart; in the form of a pie chart, view the defect type distribution.
[0096] For example, column chart (welding quality distribution), real-time column chart: R1 welding 90% defect-free, 5% minor defects, 5% serious defects; historical column chart: R1 serious defect rate in the past week is only 2%, suggesting that the current welding joint may have problems.
[0097] For example, pie chart (defect type distribution), current pie chart: porosity accounts for 50%, incomplete fusion accounts for 30%, and cracks account for 20%; historical pie chart: porosity accounts for 30%, suggesting that the current welding environment may be contaminated.
[0098] For example, after comparing the real-time column chart of the robot welding quality with the historical data, the host device suggests that the user clean the welding joint and adjust the current to reduce the defect rate based on the analysis results.
[0099] Thus, the data playback method provided by the present application can be applied to, for example, the field of industrial control (including but not limited to robot control, motor control, and equipment health monitoring), the field of data analysis (including but not limited to traffic flow analysis, network page view, transaction volume analysis, and stock index analysis), and other fields requiring chart presentation, comparison, and analysis. Based on the analysis results of multi-source data, the present application can reconstruct a multi-source data group to be played back and automatically coordinate multiple playback windows to display real-time playback, synchronous playback, and comparison playback of multiple playback forms of the multi-group data to be played back, so as to facilitate data analysis by the user.
[0100] Figure 8 A schematic step diagram of an example electronic device 800 that can be used to implement embodiments of the present specification is shown. For example, as shown in Figure 1 The host device 110 can be implemented by an electronic Figure 8 A schematic step diagram of an example electronic device 800 that can be used to implement embodiments of the present specification is shown. For example, as shown in Figure 1The host device 110 shown can be implemented by the electronic device 800. As shown, the electronic device 800 includes a central processing unit (CPU) 801 that can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 802 or loaded from a storage unit 808 into a random access memory (RAM) 803. Various programs and data required for operation of the electronic device 800 can also be stored in the random access memory 803. The central processing unit 801, the read-only memory 802, and the random access memory 803 are connected to each other through a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.
[0101] A plurality of components in the electronic device 800 are connected to the input / output interface 805, including an input unit 806 such as a keyboard, a mouse, a microphone, etc.; an output unit 807 such as various types of displays, a speaker, etc.; the storage unit 808 such as a magnetic disk, an optical disk, etc.; and a communication unit 809 such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 809 allows the electronic device 800 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0102] The various processes and processes described above, such as the methods 200 to 500, can be performed by the central processing unit 801. For example, in some embodiments, the methods 200 to 500 can be implemented as a computer software program that is tangibly embodied in a machine-readable medium, such as the storage unit 808. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 800 via the read-only memory 802 and / or the communication unit 809. When the computer program is loaded into the random access memory 803 and executed by the central processing unit 801, one or more actions of the methods 200 to 500 described above can be performed.
[0103] The present application relates to methods, apparatuses, systems, electronic devices, computer-readable storage media, and / or computer program products. The computer program product can include computer readable program instructions for performing various aspects of the present application.
[0104] Computer readable storage media can be tangible storage media which can retain and store instructions for use by an instruction execution device. Computer readable storage media can be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer readable storage media include the following: 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), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
[0105] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.
[0106] Computer readable program instructions for carrying out operations of the present application can be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate array (FPGA), or programmable logic array (PLA) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present application.
[0107] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0108] These computer readable program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer readable program instructions can also be stored in a computer readable storage medium that can include random access memory (RAM), read only memory (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or nonvolatile memory, or a suitable combination of the different types of computer readable storage media. The computer readable program instructions can also be downloaded to a computer, other programmable data processing apparatus, or other device from a computer readable storage medium or to an external computer or external storage device via a data signal that can be transmitted for example via a wired medium or a wireless medium such as the Internet or Wireless Application Protocol (WAP) signaling.
[0109] programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0110] The flow and step diagrams in the drawings show the architectural, functional and operational views of possible implementations of systems, methods and computer program products according to the embodiments of the present application. In this regard, each block in the flow and step diagrams can represent a module, a procedure, or a portion of code, which comprises one or more executable instructions for implementing the specified logical functions. In some alternative implementations, the functions noted in the blocks can occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently or the blocks may also be executed in reverse order, depending on the functionality involved. It will also be noted that each block in the step and / or flow diagrams and combinations of blocks in the step and / or flow diagrams can be implemented by special purpose hardware-based systems which perform the specified functions or acts or combinations of special purpose hardware and computer instructions.
[0111] Embodiments of the application have been described above with the understanding that the above description is illustrative only and is not restrictive in nature, and that many modifications and variations thereof will become apparent to those skilled in the art. The scope of the application is defined by the appended claims, and not by the description of the embodiments. The choice of words in this document is intended to best explain the principles of the embodiments, practical application, or improvement over the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. A method for playing data, characterized in that, include: At the main device, multi-source data to be played is acquired in real time from the devices participating in the parsing task. The devices participating in the parsing task include the main device and / or at least one leaf device. The parsing task is generated and allocated by the main device based on the data to be parsed from multiple input sources. Determining a playback scheme for the multi-source data to be played based on predetermined parameters or in response to user operations, so as to generate multiple playback threads, includes: determining a playback format for a set of data to be played, wherein the playback format indicates at least one data display format, and generating a playback thread based on each playback format for each set of data to be played. Based on the generated playback thread, reconstruct the acquired multi-source data to be played; and Based on the playback scheme and the reconstructed multi-source data to be played, part or all of the multi-source data to be played is played in the target playback window; the synchronization time difference between any two or more playback threads that need to be synchronized is calculated using timestamp information, thereby adjusting the computing and storage resources of the playback threads; and the reconstruction priority of the data to be played is adjusted so as to adjust the reconstruction speed of each data to be played. During playback, the computing and storage resources allocated to the playback thread are adjusted in real time based on the rendering progress, playback status, access volume, interaction frequency, and / or synchronization requirements between playback threads; and In response to receiving a data analysis request from a user, the multi-source data to be played is analyzed to obtain the business domain and data characteristics of the multi-source data to be played; the business domain indicates the industrial control field, including at least: production environment monitoring, temperature monitoring, cash flow monitoring, robot control, automated production, robotic arm control, motor control, and flow analysis.
2. The method according to claim 1, characterized in that, Determining a playback scheme for the multi-source data to be played, based on predetermined parameters or in response to user actions, includes: Determine the number of playback windows so that each playback window plays at least one set of data to be played; A playback window is determined for a set of data to be played, and the set of data to be played can be played in at least one playback window.
3. The method according to claim 2, characterized in that, Determining the playback scheme for the multi-source data to be played also includes: In response to determining that a set of data to be played needs to be played synchronously with another set of data to be played or compared with the data, the set of data to be played synchronously with the other set of data to be played in the same or different playback windows.
4. The method according to claim 2, characterized in that, Also includes: Based on the playback scheme, computing resources and storage resources are allocated to each of the multiple playback threads.
5. The method according to claim 2, characterized in that, Based on the generated playback thread, the reconstructed multi-source data to be played includes: Based on the priority, data stream size, access frequency, data anomaly status, and / or timestamp information of the data to be played corresponding to the playback thread, the reconstruction priority of a set of data to be played corresponding to each of the multiple playback threads is determined; and Based on the reconstruction priority of each set of data to be played, computing resources are allocated in order to obtain multiple sets of reconstructed data to be played.
6. The method according to claim 3, characterized in that, Determining the playback scheme for the multi-source data to be played also includes: Based on historical multi-source data to be played and / or the acquired real-time multi-source data to be played, determine multiple sets of data to be played that need to be compared; and In response to determining that a set of data to be played comes from historical multi-source playback data and that the corresponding playback format has historical playback data, the historical playback data of the set of data to be played is invoked for data playback; or, in response to determining that a set of data to be played comes from historical multi-source playback data and that the corresponding playback format does not have historical playback data, a corresponding playback format is generated for playback based on the playback thread corresponding to the set of data to be played.
7. The method according to claim 2, characterized in that, The data presentation format includes one or more of the following: Bar chart, stacked bar chart, bar graph, stacked bar chart, line graph, curve graph, area graph, pie chart, column graph, scatter plot, donut chart, histogram, funnel chart, waterfall chart, radar chart, box plot, heat map, highlight table, matrix chart, bubble chart, candlestick chart, video, audio.
8. The method according to claim 7, characterized in that, Also includes: Based on the data analysis request and the analysis results of the multi-source data to be played, the system recommends to the user multiple sets of data to be played from the multi-source data, the playback format of each set of data to be played, and the playback window for each set of data to be played.
9. A computing device, characterized in that, include: At least one processing unit; At least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the device to perform the steps of the method according to any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that, It stores a computer program that, when executed by a machine, implements the method according to any one of claims 1 to 8.
11. A computer program product, characterized in that, Includes a computer program, which, when executed by a machine, performs the method according to any one of claims 1-8.
Citation Information
Patent Citations
Multi-thread task scheduling method and device
CN108536530A
Data analysis method and device
CN111338800A
Data visualization processing method and device and electronic equipment
CN112445950A
Lane line offline data visualization method and device
CN113886634A
Synchronized graphical and tabular performance data display
US20130132872A1