Information processing system, information processing method, and information processing program

The information processing system efficiently collects and stores data by using a topic-based database management system, reducing redundant storage and processing loads, and facilitating data utilization through automatic database expansion and aggregation.

JP7806454B2Active Publication Date: 2026-01-27OMRON CORP
View PDF 12 Cites 0 Cited by

Patent Information

Application Number
JP2021187662
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-11-18
Publication Date
2026-01-27
Estimated Expiration
2041-11-18

AI Technical Summary

Technical Problem

Assigning common identification information to data at production sites leads to increased storage and analysis processing loads, necessitating efficient data collection and storage techniques.

Method used

An information processing system that includes a transmitting unit, a database divided by topic, and a data management unit that identifies storage destinations based on the topic, allowing efficient data storage and expansion without redundant database configurations.

Benefits of technology

Enables efficient data collection and storage, reduces redundant storage, and facilitates data utilization by automatically managing database structures and calculations, supporting flexible expansion and aggregation processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007806454000001
    Figure 0007806454000001
  • Figure 0007806454000002
    Figure 0007806454000002
  • Figure 0007806454000003
    Figure 0007806454000003
Patent Text Reader

Abstract

To provide a technique for efficiently collecting and storing data and facilitating data utilization.SOLUTION: An information processing system is provided, comprising: a transmission unit for transmitting transmission data including data containing one or more values and identification information associated with the one or more values, and a topic representing an attribute of the data; a database partitioned for each topic; and a data management unit configured to identify a data storage destination according to the topic included in the transmission data and store the data included in the transmission data into the identified data storage destination. When values associated with identification information identical to the identification information included in the transmission data is already stored in the database, the data management unit stores the one or more values contained in the data included in the transmission data in association with the identification information already stored in the database.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing system, an information processing method, and an information processing program related to data collection. [Background technology]

[0002] With the advancement of information and communication technology, efforts are being made to collect and utilize various types of data.

[0003] For example, Japanese Patent Publication No. 2020-503784 (Patent Document 1) discloses a device including a composite object in an IoT network, and Japanese Patent Publication No. 2019-133610 (Patent Document 2) discloses a data orchestration platform management method in a network communication environment including multiple data sources.

[0004] Furthermore, as a technology for searching collected data, JP2017-516213A (Patent Document 3) discloses a configuration that adds more advanced search engine optimization to the current resource directory functionality, which would provide the most efficient search results for IoT or M2M devices. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Special Publication No. 2020-503784 [Patent Document 2] Japanese Patent Application Publication No. 2019-133610 [Patent Document 3] Special Publication No. 2017-516213 Summary of the Invention [Problem to be solved by the invention]

[0006] Efforts are underway to collect and utilize various data at production sites and other locations. At production sites, it is necessary to associate related data for each workpiece and / or process. To achieve this data association, it is necessary to assign common identification information to the associated data. However, assigning common identification information to each piece of data can lead to issues such as an increase in the amount of data to be stored and an increase in the analysis processing load.

[0007] One object of the present invention is to provide a technique for efficiently collecting and storing data and facilitating the utilization of the data. [Means for solving the problem]

[0008] An information processing system according to one example of the present invention includes: a transmitting unit that transmits transmission data including data including one or more values ​​and identification information associated with the one or more values, and a topic indicating an attribute of the data; a database divided by topic; and a data management unit that identifies a storage destination for the data based on the topic included in the transmission data and stores the data included in the transmission data in the identified data storage destination. If a value associated with identification information identical to the identification information included in the transmission data is already stored in the database, the data management unit stores the one or more values ​​included in the data included in the transmission data in association with the identification information already stored in the database.

[0009] According to this configuration, even when multiple pieces of transmission data containing the same topic and the same identification information are transmitted, one or more values ​​contained in each piece of transmission data are stored in the database in association with the same topic and the same identification information. This allows the data contained in each piece of transmission data to be efficiently collected and stored, even when multiple pieces of transmission data are transmitted at different times. Furthermore, items can be automatically added to the database based on the transmission data, eliminating the need to explicitly change the database structure.

[0010] The data management unit may be configured to generate a new storage destination for data associated with a topic included in the transmission data when no storage destination exists for the data associated with the topic. With this configuration, even when transmission data including a new topic is generated, the database can be automatically expanded, eliminating the need to reconfigure the database and enabling the realization of a flexibly expandable database.

[0011] If a value associated with the same identification information as the identification information included in the transmission data is not stored in the database, the data management unit may add a new record for storing the value associated with the identification information. With this configuration, when transmission data including a value associated with new identification information is generated, the value associated with the new identification information can be reliably stored in the database.

[0012] If a column for storing the data name of a value included in the transmission data does not exist, the data management unit may add a new column for storing the value of the data name. With this configuration, even if there are multiple values ​​associated with the same identification information, it is possible to flexibly secure an area for storing each value.

[0013] The data management unit may perform a predetermined calculation on multiple values ​​associated with the same identification information to add a new value. With this configuration, more useful information can be generated by performing any calculation on the values ​​individually collected by the collection unit.

[0014] The data management unit may determine whether a topic identical to the topic set in the transmission unit already exists in the database. This configuration reduces the possibility of erroneously setting a topic that is already in use when a new transmission unit is added.

[0015] The data management unit may determine whether a data name identical to one or more data values ​​included in the transmission data sent by the transmission unit already exists in the database. This configuration reduces the possibility that a data name that is already in use will be mistakenly set when a new transmission unit is added.

[0016] The topics may be described in a hierarchical structure, which allows the topics to be described in association with the configuration of the production site from which data is collected.

[0017] The data management unit may be configured to execute, in accordance with the aggregation request, the aggregation process specified by the aggregation request for a plurality of values ​​associated with the topic specified by the aggregation request. With this configuration, it is possible to easily obtain the aggregation results for a plurality of values ​​related to a specific topic.

[0018] The aggregation request may include a wildcard to specify the target topic. With this configuration, even if each target topic cannot be identified, the aggregation process can be performed by identifying at least some of the common attributes.

[0019] When the data management unit receives the tallying request, the data management unit may execute the tallying process in accordance with the received tallying request. With this configuration, the processing result can be obtained every time a tallying request is sent.

[0020] An information processing method according to another example of the present invention includes the steps of managing a database divided into topics, transmitting transmission data including data including one or more values ​​and identification information associated with the one or more values, and a topic indicating an attribute of the data, specifying a storage destination for the data based on the topic included in the transmission data, and storing the data included in the transmission data in the specified storage destination for the data. The storing step includes, if a value associated with identification information identical to the identification information included in the transmission data is already stored in the database, storing the one or more values ​​included in the data included in the transmission data in association with the identification information already stored in the database.

[0021] An information processing program according to yet another example of the present invention causes a computer to execute the steps of managing a database divided into topics, specifying a storage destination for the data based on the topic included in the transmission data in response to transmission data including data including one or more values ​​and identification information associated with the one or more values ​​and a topic indicating an attribute of the data, and storing the data included in the transmission data in the specified storage destination for the data. The storing step includes, when a value associated with identification information identical to the identification information included in the transmission data is already stored in the database, storing the one or more values ​​included in the data included in the transmission data in association with the identification information already stored in the database. [Effects of the Invention]

[0022] According to the present invention, it is possible to provide a technology for efficiently collecting and storing data and facilitating the utilization of the data. [Brief explanation of the drawings]

[0023] [Figure 1] FIG. 1 is a schematic diagram showing an application example of an information processing system according to an embodiment of the present invention. [Figure 2]It is a schematic diagram showing an overall configuration example of an information processing system according to this embodiment. [Figure 3] It is a block diagram showing a hardware configuration example of a server device of an information processing system according to this embodiment. [Figure 4] It is a block diagram showing a hardware configuration example of a transmission device of an information processing system according to this embodiment. [Figure 5] It is a schematic diagram showing a functional configuration example for realizing the collection process of an information processing system according to this embodiment. [Figure 6] It is a schematic diagram showing an example of an information processing system according to this embodiment. [Figure 7] It is a schematic diagram for explaining an example of a temporal change that occurs in the data structure of a database in the information processing system shown in FIG. 6. [Figure 8] It is a flowchart showing a processing procedure executed by a server device related to the collection process of an information processing system according to this embodiment. [Figure 9] It is a schematic diagram for explaining the management process of an information processing system according to this embodiment. [Figure 10] It is a sequence diagram showing a processing procedure related to the management process of an information processing system according to this embodiment. [Figure 11] It is a schematic diagram for explaining the aggregation process of an information processing system according to this embodiment. [Figure 12] It is a flowchart showing a processing procedure executed by a server device related to the aggregation process of an information processing system according to this embodiment.

Embodiments for Carrying Out the Invention

[0024] Embodiments of the present invention will be described in detail with reference to the drawings. For the same or corresponding parts in the drawings, the same reference numerals are given and their descriptions will not be repeated.

[0025] <A. Application Example><00​​

[0026] 1 is a schematic diagram showing an application example of an information processing system 1 according to the present embodiment. With reference to FIG. 1(A) and FIG. 1(B), information processing system 1 includes a server device 100 that receives transmission data 50 from a data transmission module 250. Server device 100 includes a data management module 152 and a database 160.

[0027] The transmission data 50 transmitted by the data transmission module 250 includes data 54 and a topic 52 indicating attributes of the data 54. The data 54 included in the transmission data 50 includes one or more values ​​58 and an ID 56 that is identification information associated with the one or more values ​​58. The ID 56 is identification information for identifying the data 54.

[0028] In this specification, a "topic" refers to any information that indicates the attributes of data, and is set appropriately depending on the target of data collection. A topic can be set for any unit of data to be managed. For example, the name of the process where data is collected, the location where data is collected (factory name or floor name), the device where data is collected, the type of workpiece where data is collected, etc. can be set as a topic.

[0029] The database 160 stores one or more tables 162 for each topic 52. In other words, the database 160 is divided into sections for each topic. Figure 1 shows an example in which two tables 162, each with "TP1" and "TP2" assigned as topics 52, are stored in the database 160.

[0030] The data management module 152 identifies a storage destination (table 162) for the data 54 based on the topic 52 included in the transmission data 50, and stores the data 54 included in the transmission data 50 in the identified data storage destination.

[0031] In the examples shown in FIGS. 1(A) and 1(B), data 54 is configured to store two values, "start time" and "end time," as data names. However, data 54 shown in FIG. 1(A) stores only the value of "start time," and does not store the value of "end time" (for example, null is stored). On the other hand, data 54 shown in FIG. 1(B) stores only the value of "end time," and does not store the value of "start time" (for example, null is stored).

[0032] The data 54 shown in FIG. 1(A) and FIG. 1(B) both include the same ID 56 (for example, "001").

[0033] 1(A), the data management module 152 identifies the table 162 to which "TP1" is assigned based on the topic 52 of the transmission data 50. Then, the data management module 152 creates a new entry for "001", which is the ID 56 included in the transmission data 50, and stores the value 58 of the "start time" included in the transmission data 50 in the new entry.

[0034] 1B, when the data management module 152 receives the transmission data 50, it identifies the table 162 to which "TP1" is assigned based on the topic 52 of the transmission data 50. Here, since an entry for "001", which is the ID 56 included in the transmission data 50, already exists, the data management module 152 does not create a new entry, but instead stores the "end time" value 58 included in the transmission data 50 in the already existing entry for "001".

[0035] In this way, if a value 58 associated with the same identification information (ID56) included in the transmission data 50 is already stored in the database 160 (or table 162), the data management module 152 stores one or more values ​​58 included in the data 54 included in the transmission data 50 in association with the identification information (ID56) already stored in the database 160.

[0036] By adopting such a configuration, even if a plurality of transmission data 50 including the same topic and the same identification information (ID56) are transmitted at different timings, in the database 160 (or the table 162), all values can be stored in association with the same topic and the same identification information. As a result, it is not necessary to store the topic and the identification information in the database 160 redundantly, and data can be efficiently collected and stored.

[0037] <B. Overall Configuration Example of Information Processing System> The information processing system 1 according to the present embodiment mainly collects data from the production site, but the target for collecting data is not particularly limited.

[0038] FIG. 2 is a schematic diagram showing an overall configuration example of the information processing system 1 according to the present embodiment. Referring to FIG. 2, the information processing system 1 includes a server device 100, one or more transmission devices 200-1, 200-2, 200-3, 200-4, 200-5, 200-6,... (hereinafter also collectively referred to as "transmission device 200"), and information processing devices 300-1, 300-2... (hereinafter also collectively referred to as "information processing device 300").

[0039] The server device 100 stores data transmitted from the transmission device 200 via the network 2 and executes necessary information processing. Further, the server device 100 provides the stored data in response to a aggregation request from the information processing device 300 or the like.

[0040] Each of the transmission devices 200 collects predetermined data from the production site or the like and transmits it to the server device 100. The timing at which the transmission device 200 transmits data to the server device 100 can be arbitrarily determined.

[0041] Assuming a line where the workpiece 10 becomes a product through a plurality of processes, each of the transmission devices 200 is arranged in one of the processes and transmits data collected from the workpiece 10 passing through each process to the server device 100.

[0042] The information processing device 300 accesses the server device 100 via the network 4 and provides arbitrary data.

[0043] <C. Hardware Configuration> Next, an example of the hardware configuration of the devices constituting the information processing system 1 according to the present embodiment will be described.

[0044] (c1: Server Device 100) FIG. 3 is a block diagram showing an example of the hardware configuration of the server device 100 of the information processing system 1 according to the present embodiment. Referring to FIG. 3, the server device 100 includes one or a plurality of processors 102 such as a CPU (Central Processing Unit) and a MPU (Micro-Processing Unit), a main memory 104, an optical drive 106, a storage 110, network controllers 120 and 122, a USB (Universal Serial Bus) controller 124, an input unit 126, and a display unit 128. These components are connected via a bus 108.

[0045] The processor 102 reads out various programs stored in the storage 110, expands them in the main memory 104, and executes them to realize the necessary processing in the server device 100.

[0046] The storage 110 is configured with one or more nonvolatile storage devices, such as a hard disk drive (HDD) or a flash solid state drive (SSD). The storage 110 typically stores an operating system (OS) 112 and an information processing program 114 for implementing various processes described below. Note that the storage 110 may store necessary programs other than the programs shown in FIG. 3.

[0047] The storage area of ​​the storage 110 may be used to realize a database 160 that is configured from data collected from the transmitting device 200.

[0048] The server device 100 may include an optical drive 106. The optical drive 106 reads a computer-readable program from a recording medium 107 (for example, an optical recording medium such as a DVD (Digital Versatile Disc)) that non-transiently stores the program, and stores the program in the storage 110 or the like.

[0049] The various programs executed by the server device 100 may be installed via a computer-readable recording medium 107, or may be installed by downloading from an arbitrary server on the network.

[0050] The network controller 120 controls data exchange with the transmitting device 200 and the like via the network 2. The network controller 122 controls data exchange with the information processing device 300 and the like via the network 4.

[0051] The USB controller 124 controls the transfer of data to and from external devices (eg, support devices) via a USB connection.

[0052] The input unit 126 is configured with a touch panel, a mouse, a keyboard, etc., and accepts user operations. The display unit 128 is configured with a display, various indicators, etc., and outputs processing results from the processor 102, etc.

[0053] FIG. 3 shows an example of a configuration in which the necessary processing is provided by the processor 102 executing a program, but some or all of the provided processing may be implemented using dedicated hardware circuits (e.g., an ASIC (Application Specific Integrated Circuit) or an FPGA (Field-Programmable Gate Array)).

[0054] Furthermore, all or part of the processing performed by the server device 100 may be performed using cloud computing on a network.

[0055] (c2: transmitting device 200) 4 is a block diagram showing an example of a hardware configuration of transmission device 200 of information processing system 1 according to the present embodiment. Referring to FIG. 4, transmission device 200 includes a processing circuit 210, a network controller 220, an input unit 226, a display unit 228, and a collection unit 230.

[0056] The processing circuit 210 includes a processor 212 such as a CPU or an MPU, a main memory 214, and a storage 216 such as a flash memory. The processor 212 reads out various programs stored in the storage 216, expands them in the main memory 214, and executes them, thereby realizing the processing required by the transmitting device 200.

[0057] The network controller 220 controls data exchange with the server device 100 and the like via the network 2 .

[0058] The input unit 226 is composed of a touch panel, a mouse, a keyboard, etc., and accepts user operations. The display unit 228 is composed of a display, various indicators, etc., and outputs processing results from the processor 102. Note that a touch panel display that integrates the input unit 226 and the display unit 228 may be employed, or the input unit 226 and the display unit 228 may be omitted.

[0059] The collection unit 230 includes any configuration for collecting data. For example, the collection unit 230 may include an optical device that optically reads a two-dimensional or three-dimensional code attached to a workpiece or the like, or an interface circuit that collects data from any measurement device.

[0060] 4 shows an example of a configuration in which the processor 212 executes a program to provide the necessary processing, but some or all of the provided processing may be implemented using dedicated hardware circuits (e.g., ASIC or FPGA). Alternatively, the main part of the transmitting device 200 may be realized using hardware that conforms to a general-purpose architecture (e.g., an industrial PC based on a general-purpose PC).

[0061] The transmitting device 200 may be realized by a plurality of devices working together, rather than by a single device. For example, the transmitting device 200 may be realized by adding a communication interface for generating and transmitting transmission data to an existing sensor or control device.

[0062] Furthermore, the functions corresponding to the transmitting device 200 may be realized as software executed by any device. In this case, the functions may be realized by adding software corresponding to the transmitting device 200 to software executed by an existing device.

[0063] (c3: information processing device 300) The information processing apparatus 300 of the information processing system 1 according to the present embodiment is configured by a general personal computer or the like. Since a general personal computer is well-known, a detailed description thereof will not be given.

[0064] <D. Basic collection processing> Next, the basic collection processing in the information processing system 1 according to the present embodiment will be described.

[0065] FIG. 5 is a schematic diagram showing a functional configuration example for realizing the collection processing of the information processing system 1 according to the present embodiment. Referring to FIG. 5, in the information processing system 1, the server device 100 includes a data distribution module 150, a data management module 152, and a database 160. The transmission device 200 includes a data transmission module 250. The information processing apparatus 300 includes a data acquisition module 350.

[0066] The data transmission module 250 of the transmission device 200 corresponds to a transmission unit, and collects and transmits data. The data transmitted by the data transmission module 250 is referred to as "transmission data 50".

[0067] The transmission data 50 includes a topic 52 indicating the attributes of the stored data 54. The data 54 stored in the transmission data 50 includes one or more values 58 and an ID 56 associated with the one or more values 58. The ID 56 is identification information for specifying the data 54.

[0068] The data distribution module 150 of the server device 100 specifies the topic 52 included in the transmission data 50 received from the data transmission module 250, and transfers the transmission data 50 to the data management module 152 and / or the data acquisition module 350 that subscribes to the specified topic 52. The distribution destination of the transmission data 50 may be a plurality of modules. Note that the data distribution module 150 may transfer all of the received transmission data 50 to the data management module 152.

[0069] The data acquisition module 350 of the information processing device 300 notifies the data delivery module 150 of the topic to be subscribed to, specified by the user. The data acquisition module 350 also notifies the data delivery module 150 of the topic of the data to be acquired from the stored data. In response to this notification, the data delivery module 150 transmits data corresponding to the specified topic to the data acquisition module 350.

[0070] The data management module 152 of the server device 100 stores the corresponding data 54 in the database 160 based on the topic 52 included in the transmission data 50 received from the data distribution module 150. In this way, the data management module 152 identifies a storage destination for the data based on the topic 52 included in the transmission data 50, and stores the data 54 included in the transmission data 50 in the identified storage destination for the data.

[0071] The data management module 152 may search for data stored in the database 160 in response to a counting request from the data distribution module 150 .

[0072] The data management module 152 may also be responsible for updating (including additions and deletions) the data structure of the database 160, as described below. Furthermore, the data management module 152 may be configured to perform any calculations on the data 54 included in the transmission data 50.

[0073] The database 160 is divided by topic. More specifically, the database 160 stores one or more tables 162 for each topic 52. Each table 162 stores an ID 164 and one or more values ​​166 in association with each other.

[0074] Note that topics are not limited to a single value as described above, and may adopt a hierarchical structure. When describing a hierarchical structure, "relative notation" and / or "absolute notation" may be introduced. "Relative notation" indicates a route from an arbitrary reference, and may be notation that does not begin with " / ", such as "line3 / process5".

[0075] Furthermore, "absolute notation" indicates a route that can be uniquely identified in the target system, and may be a notation beginning with " / ", such as " / factory2 / line3 / process5". In this case, the first part of the absolute notation (e.g., " / factory2 / ") can be called the global topic, and the part that follows (e.g., "line3 / process5") can be called the local topic. Relative notation can also be considered a local topic without a global topic.

[0076] Fig. 6 is a schematic diagram showing an example of an information processing system 1 according to the present embodiment. Fig. 6 shows an example in which a work 10 is processed in steps 1 and 2. The information processing system 1 collects the start times and end times of the processing of the work 10 in steps 1 and 2.

[0077] 6, the workpiece 10 is transported by a conveyor or the like in the order of process 1, process 2, etc., and is subjected to processing such as machining and assembly in each process. The workpiece 10 is assigned a two-dimensional code 12 indicating an ID (001, 002, 003, ...) for identifying the workpiece 10.

[0078] The transmitting device 200 optically reads the two-dimensional code 12 to obtain the ID of the workpiece 10 and also obtains the time at which the ID was obtained. The transmitting device 200 is located at the processing start point or processing end point of any process. Therefore, the transmitting device 200 can transmit the start time or end time of processing the workpiece 10 in each process to the server device 100. In other words, the data 54 of the transmission data 50 transmitted by the transmitting device 200 includes the ID of the workpiece 10 and the start time or end time.

[0079] More specifically, transmitting device 200-1 is located at the processing start point of step 1, and transmitting device 200-2 is located at the processing end point of step 1. Similarly, transmitting device 200-3 is located at the processing start point of step 2, and transmitting device 200-4 is located at the processing end point of step 2.

[0080] In this way, each of the transmitting devices 200 optically reads the two-dimensional code 12 attached to the workpiece 10 when the workpiece 10 passes by, and transmits the time when the two-dimensional code 12 was optically read to the server device 100. At this time, each of the transmitting devices 200 includes information for identifying the process in which it is located as a topic 52 in the transmission data 50.

[0081] More specifically, when the workpiece 10 passes (when processing of the workpiece 10 in process 1 begins), the transmitting device 200-1 optically reads the two-dimensional code 12 attached to the workpiece 10 to obtain the ID of the workpiece 10, and generates the start time, which is the time when the ID of the workpiece 10 is read, as data 54-1. Then, the transmitting device 200-1 adds "process 1" to the data 54-1 as topic 52-1 to generate transmission data 50-1 and transmits it to the server device 100.

[0082] When the server device 100 (data management module 152) receives the transmission data 50-1 from the transmission device 200-1, it identifies the table 162-1 corresponding to "Process 1," which is the value of the topic 52-1 included in the transmission data 50-1, and stores the data 54-1 (ID and start time) included in the transmission data 50-1. At this time, since there is no record assigned with the ID 164 having the same value as "001," which is the ID value of the data 54-1, the server device 100 adds a new record.

[0083] In this way, if a value associated with an ID identical to ID56 (identification information) included in the transmission data 50 is not stored in the database 160, the server device 100 (data management module 152) adds a new record for storing the value associated with ID56.

[0084] Next, when the work 10 passes (when the processing of the work 10 in process 1 is completed), the transmitting device 200-2 optically reads the two-dimensional code 12 attached to the work 10 to obtain the ID of the work 10, and generates the end time, which is the time when the ID of the work 10 was read, as data 54-2. Then, the transmitting device 200-2 adds "Process 1" to the data 54-2 as topic 52-2 to generate transmission data 50-2 and transmits it to the server device 100.

[0085] When the server device 100 (data management module 152) receives the transmission data 50-2 from the transmission device 200-2, it identifies the table 162-1 corresponding to "Process 1," which is the value of the topic 52-2 included in the transmission data 50-2, and stores the data 54-2 (ID and end time) included in the transmission data 50-2. At this time, since a record already exists to which an ID 164 with the same value as "001," which is the ID value of the data 54-1, is assigned, the server device 100 stores the end time in the existing record.

[0086] Furthermore, for a record in which both the start time and the end time are stored, the server device 100 (the calculation function 154 of the data management module 152) calculates the difference between the start time and the end time as the operation time. Then, the server device 100 stores the calculated operation time in the corresponding record.

[0087] The calculation function 154 of the data management module 152 is responsible for calculating the work time from the start time and end time for each work 10. Note that the calculation of the work time by the calculation function 154 may be performed any time the corresponding start time and end time are matched. For example, the work time may be calculated immediately after the start time and end time are matched, or records with the same start time and end time may be extracted from the records included in the table 162 at predetermined intervals, and the work time may be calculated for the extracted records.

[0088] When the processing of the workpiece 10 in step 1 is completed, the workpiece 10 is sent to step 2. When the work 10 passes (when processing of the work 10 in process 2 begins), the transmitting device 200-3 optically reads the two-dimensional code 12 attached to the work 10 to obtain the ID of the work 10, and generates the start time, which is the time when the ID of the work 10 is read, as data 54-3. Then, the transmitting device 200-3 adds "process 2" to the data 54-3 as topic 52-3 to generate transmission data 50-3 and transmits it to the server device 100.

[0089] Next, when the work 10 passes (when the processing of the work 10 in process 2 is completed), the transmitting device 200-4 optically reads the two-dimensional code 12 attached to the work 10 to obtain the ID of the work 10, and generates the end time, which is the time when the ID of the work 10 was read, as data 54-4. Then, the transmitting device 200-4 adds "process 2" to the data 54-4 as topic 52-4 to generate transmission data 50-4 and transmits it to the server device 100.

[0090] When the server device 100 (data management module 152) receives the transmission data 50-3 and the transmission data 50-4 from the transmission device 200-3 and the transmission device 200-4, respectively, it identifies the table 162-2 corresponding to "Step 2" and stores the data 54-2 and 54-4 included in the transmission data 50-3 and 50-4. The server device 100 (calculation function 154 of the data management module 152) also calculates the difference between the start time and the end time of the transmission data 50-3 and the transmission data 50-4 as the operation time.

[0091] As described above, the calculation function 154 of the data management module 152 performs a predetermined calculation on multiple values ​​(e.g., "start time" and "end time") associated with the same ID to add a new value (e.g., "work time").

[0092] Fig. 7 is a schematic diagram for explaining an example of a change over time that occurs in the data structure of the database 160 in the information processing system 1 shown in Fig. 6. Fig. 7 shows an example of a change over time that occurs in the data structure of the database 160 when the same work 10 is processed sequentially in steps 1 and 2.

[0093] First, in the initial state, the database 160 of the server device 100 does not contain any tables 162. When processing of step 1 for the work 10 starts, the server device 100 receives transmission data 50-1. The transmission data 50-1 includes information on "step 1" as topic 52-1.

[0094] Since there is no table corresponding to "Process 1," the data management module 152 of the server device 100 generates a new table. More specifically, the data management module 152 generates a table to which "Process 1" is assigned based on the topic 52-1 included in the transmission data 50-1 ((1) in FIG. 7). The generated table may initially have a column for storing an ID, which is essential information.

[0095] In this way, if there is no table that stores data associated with a topic 52 included in the transmission data 50, the data management module 152 of the server device 100 creates a new table associated with the topic.

[0096] Next, since there is no column corresponding to the data name "start time" included in the transmission data 50-1, the data management module 152 adds a new column ((2) in FIG. 7). In this way, when there is no column that stores the data name of the value included in the transmission data 50, the data management module 152 of the server device 100 adds a new column for storing the value of the data name.

[0097] Then, the data management module 152 stores the ID value and the start time value included in the transmission data 50-1 in the target record ((3) in FIG. 7).

[0098] Thereafter, when the server device 100 receives the transmission data 50-2, since there is no column corresponding to the data name "end time" included in the transmission data 50-2, the data management module 152 adds a new column ((4) in FIG. 7).

[0099] Next, the data management module 152 identifies a record corresponding to the ID value included in the transmission data 50-2, and stores the end time value included in the transmission data 50-2 in the target record. Furthermore, the data management module 152 calculates the work time from the start time value and the end time value. Since there is no column corresponding to "work time," the data management module 152 adds a new column. Finally, the data management module 152 stores the calculated work time value in the target record ((5) in FIG. 7).

[0100] Thereafter, when the server device 100 receives the transmission data 50-3 and the transmission data 50-4 in succession, it executes the same processing as described above.

[0101] Specifically, when the process of step 2 for the work 10 is started, the server device 100 receives the transmission data 50-3. The transmission data 50-3 includes information on "step 2" as a topic 52-3.

[0102] The data management module 152 of the server device 100 generates a table with "Process 2" added based on the topic 52-3 included in the transmission data 50-3 ((6) in FIG. 7). Next, the data management module 152 adds a new column because there is no column corresponding to the data name "Start Time" included in the transmission data 50-3 ((7) in FIG. 7). Then, the data management module 152 stores the ID value and the start time value included in the transmission data 50-3 in the target record ((8) in FIG. 7).

[0103] Thereafter, when the server device 100 receives the transmission data 50-4, since there is no column corresponding to the data name "end time" contained in the transmission data 50-4, the data management module 152 adds a new column ((9) in FIG. 7).

[0104] Next, the data management module 152 identifies a record corresponding to the ID value included in the transmission data 50-4, and stores the end time value included in the transmission data 50-4 in the target record. Furthermore, the data management module 152 calculates the work time from the start time value and the end time value. Since there is no column corresponding to "work time," the data management module 152 adds a new column. Finally, the data management module 152 stores the calculated work time value in the target record ((10) in FIG. 7).

[0105] The data management module 152 of the server device 100 executes the above-described process every time it receives transmission data 50. Note that the generation of a new table and / or the addition of a new column is executed only when transmission data 50 including a new topic 52 is received.

[0106] 8 is a flowchart showing a processing procedure executed by server device 100 for collection processing of information processing system 1 according to the present embodiment. Each step shown in FIG. 8 is typically realized by processor 102 of server device 100 executing information processing program 114.

[0107] 8, server device 100 manages database 160 divided by topic (step S100). Then, server device 100 determines whether or not it has received transmission data 50 from any of transmission devices 200 (step S102). That is, server device 100 determines whether or not a transmission device 200 has transmitted transmission data 50 to server device 100. If it has not received transmission data 50 (NO in step S102), the process of step S102 is repeated.

[0108] If the transmission data 50 has been received (YES in step S102), the server device 100 determines whether or not a table 162 corresponding to the topic 52 included in the received transmission data 50 exists (step S104).

[0109] If there is no table 162 corresponding to the topic 52 included in the received transmission data 50 (NO in step S104), the server device 100 generates a new table 162 corresponding to the topic 52 included in the received transmission data 50 (step S106).

[0110] In this way, the server device 100 identifies the storage location of the data based on the topic 52 included in the transmission data 50.

[0111] If a table 162 corresponding to the topic 52 included in the received transmission data 50 exists (YES in step S104), or after generating a new table 162 (after executing step S106), the server device 100 determines whether a record exists to which an ID 164 with the same value as the ID 56 included in the received transmission data 50 is assigned (step S108).

[0112] If there is no record assigned an ID164 with the same value as the ID56 included in the received transmission data 50 (NO in step S108), the server device 100 generates a record assigned the ID56 included in the received transmission data 50 as the ID164 (step S110).

[0113] Next, the server device 100 identifies the data name (start time and / or end time) of the data 54 included in the received transmission data 50 (step S112). Then, the server device 100 determines whether the identified data name exists in the storage destination table 162 (step S114).

[0114] If the identified data name does not exist in the storage destination table 162 (NO in step S114), the server device 100 adds a new column corresponding to the non-existent data name (step S116).

[0115] If the identified data name exists in the storage destination table 162 (YES in step S114), or after adding a new column to the table 162 (after executing step S116), the server device 100 stores the value 58 included in the data 54 included in the received transmission data 50 in the corresponding column of the record to which the ID 164 with the same value as the ID 56 is assigned (step S118). In this way, the server device 100 stores the data 54 included in the transmission data 50 in the identified data storage destination. At this time, if a value associated with the same ID 164 as the ID 56 included in the transmission data 50 is already stored in the database 160, the server device 100 stores one or more values ​​58 included in the data 54 included in the transmission data 50 in association with the ID 164 already stored in the database 160.

[0116] Subsequently, the server device 100 determines whether the start time and the end time match in the record to which the ID 164 with the same value as the ID 56 is assigned (step S120). If the start time and the end time match in the record to which the ID 164 with the same value as the ID 56 is assigned (YES in step S120), the server device 100 calculates the working time from the start time and the end time (step S122).

[0117] If the start time and the end time do not match in the record to which the ID 164 with the same value as the ID 56 is assigned (NO in step S120), the process of step S122 is skipped.

[0118] In this way, in each of step 1 and step 2, the time required for the work on the work 10 (working time) can be collected. Since the work 10 is processed sequentially, for all the work 10, by accumulating the start time, the end time, and the working time, it can be used as data for analyzing the average value and variation of the working time required for each step.

[0119] For the sake of convenience of explanation, an example consisting of two steps has been described. However, even if one or more steps are added, it can be flexibly accommodated. For example, when step 3 is added, the transmission device 200 is newly arranged in the added step 3, and "step 3" is set as the topic 52 for the newly added transmission device 200. Thereby, the server device 100 generates the table 162 corresponding to the new value of the topic 52.

[0120] As shown in FIG. 6, data (start time and end time) for the same work 10 is transmitted to the server device 100 by different transmission devices 200 at different timings. Even when a plurality of data dispersed in time is transmitted in this way, by using the topic 52 and the ID 56, the data required for each work 10 can be aggregated.

[0121] <E. Management of Topic and Data Name> As described above, the information processing system 1 according to the present embodiment collects data from a plurality of transmitting devices 200 based on a topic. Also, multiple types of data are collected sequentially for the same ID. Therefore, it becomes important to manage the topic and data name specified when the transmitting device 200 transmits data.

[0122] For example, when constructing an information processing system 1 as shown in Fig. 6, a topic and a data name are set in the data transmission module 250 of the transmission device 200. As shown in Fig. 6, the same topic 52 ("Process 1" in the example shown in Fig. 6) and ID (a value read from the two-dimensional code 12 assigned to the work 10 in the example shown in Fig. 6) are set for the transmission device 200-1 and the transmission device 200-2, and "Start Time" is set as the data name for the transmission device 200-1, and "End Time" is set as the data name for the transmission device 200-2, thereby realizing data aggregation and calculation in the server device 100.

[0123] On the other hand, since a method is adopted in which multiple transmission devices 200 transmit data independently, there is a possibility that the same topic may be unintentionally set between multiple transmission devices 200 that should not be associated with each other. Therefore, when setting a topic, it is preferable to check for overlaps, etc. Similarly, when setting a data name, it is preferable to check for overlaps, etc.

[0124] More specifically, when setting a topic and / or a data name for the data transmission module 250, the data transmission module 250 inquires of the server device 100 whether the topic and / or data name to be set is already being used by another data transmission module 250. If the topic and / or data name to be set is already being used by another data transmission module 250, the user is notified, thereby preventing setting errors and the like.

[0125] 9 is a schematic diagram for explaining the management processing of information processing system 1 according to the present embodiment. Referring to FIG. 9, data management module 152 of server device 100 has registration management function 156. Registration management function 156 of data management module 152 has setting table 170 for recording the topic and / or data name set in transmission device 200. When a topic and / or data name is set in transmission device 200, which is the source of transmission data 50, registration management function 156 of data management module 152 registers the setting contents in setting table 170.

[0126] More specifically, the data transmission module 250-1 of the transmission device 200-1 provides the user with an interface for accepting the setting of a topic and / or a data name. FIG. 9 shows an example of a setting window 260. The user inputs the value of the topic they wish to set (e.g., "Process 1") into an input window 262 of the setting window 260. The data transmission module 250-1 of the transmission device 200-1 then transmits the content set by the user to the server device 100.

[0127] The registration management function 156 of the data management module 152 registers the setting contents from the data transmission module 250-1 of the transmission device 200-1 in the setting table 170. In this way, the registration management function 156 of the data management module 152 manages the topics and / or data names transmitted from the transmission device 200-1, thereby making it possible to respond to inquiries about whether there are any duplications, etc. For ease of explanation, Fig. 9 shows a setting window 260 for setting the topic, but it is also possible to set the data name.

[0128] It is assumed that the user then sets a topic for transmission device 200-1. In this case as well, data transmission module 250-1 of transmission device 200-1 presents setting window 260 to the user, and the user inputs a value of the topic that the user wishes to set (for example, "Process 1") into input window 262 of setting window 260. Then, data transmission module 250-2 of transmission device 200-2 transmits the content set by the user to server device 100.

[0129] The registration management function 156 of the data management module 152 refers to the setting table 170 and determines whether the same settings as those from the data transmission module 250-2 of the transmitting device 200-2 have been registered. The registration management function 156 of the data management module 152 responds to the data transmission module 250-2 of the transmitting device 200-2 as to whether the same settings as those from the data transmission module 250-2 have been registered.

[0130] If the content set by the user has already been registered, data transmission module 250-2 of transmission device 200-2 notifies the user of this fact. For example, a notification window 264 may be displayed to notify the user that the content set has already been registered.

[0131] In this way, the registration management function 156 of the data management module 152 determines whether or not a topic identical to the topic set in the data transmission module 250 (transmission device 200) already exists in the database 160. Alternatively, the registration management function 156 of the data management module 152 may determine whether or not a data name identical to the data name of one or more values ​​58 included in the transmission data 50 transmitted by the data transmission module 250 (transmission device 200) already exists in the database 160.

[0132] By implementing such management functions, it is possible to prevent mistakes in setting topics and / or data names.

[0133] FIG. 10 is a sequence diagram showing a processing procedure related to the management processing of the information processing system 1 according to the present embodiment.

[0134] Referring to FIG. 10, when the transmission device 200 (data transmission module 250) receives a setting regarding a topic and / or data name from a user (sequence SQ200), it transmits the received setting content to the server device 100 (registration management function 156 of the data management module 152) (sequence SQ202).

[0135] The server device 100 refers to the setting table 170 and determines whether the same content as the setting content from the transmission device 200 is registered (sequence SQ204). If the same content as the setting content from the transmission device 200 is not registered, the server device 100 registers the setting content from the transmission device 200 in the setting table 170 (sequence SQ206) and notifies the transmission device 200 of the registration completion (sequence SQ208).

[0136] If the same content as the setting content from the transmission device 200 is registered, the server device 1百 notifies the transmission device 200 that the setting content is duplicated (sequence SQ210). The transmission device 200 notifies the user that the setting content has already been registered (sequence SQ212).

[0137] When the transmission device 200 is instructed by the user to continue the registration of the setting content (sequence SQ214), it notifies the server device 100 to continue the registration (sequence SQ216). The server device 100 registers the setting content from the transmission device 200 in the setting table 170 according to the notification of the continuation of the registration from the transmission device 200 (sequence SQ218).

[0138] <F. Aggregation function>[[ID=I]] Next, an example of the aggregation function of the information processing system 1 according to the present embodiment will be described.

[0139] When managers or administrators want to monitor KPIs (Key Performance Indicators) at production sites, they need to aggregate information on productivity, quality, equipment operation rates, energy usage, etc. across multiple lines. A system that can easily aggregate the production status of multiple lines is useful. An example of such an aggregation function is described below.

[0140] Fig. 11 is a schematic diagram for explaining the counting process of the information processing system 1 according to this embodiment. Fig. 11 shows an example in which the number of defects for each line is collected as data associated with a subtopic, and the total number of defects for all lines is specified as the parent topic to count the number of defects. As an example, a case is shown in which three lines, "Line 1," "Line 2," and "Line 3," exist on "Floor 2."

[0141] 11, control devices (PLC: Programmable Logic Controller) that control each line function as transmission devices 200-5, 200-6, and 200-7. Each of transmission devices 200-5, 200-6, and 200-7 counts the number of defects that have occurred on the line that it is responsible for, and transmits transmission data 50-5, 50-6, and 50-7 that includes the counted number of defects as data 54-5, 54-6, and 54-7 to server device 100.

[0142] Each of the topics 52-5, 52-6, and 52-7 included in the transmission data 50-5, 50-6, and 50-7 specifies the target floor and line in a hierarchical structure. More specifically, the topic 52-5 in the transmission data 50-5 is "Floor 2 / Line 1," the topic 52-6 in the transmission data 50-6 is "Floor 2 / Line 2," and the topic 52-7 in the transmission data 50-7 is "Floor 2 / Line 3."

[0143] The database 160 of the server device 100 stores tables 162-3, 162-4, and 162-5 corresponding to the respective topics 52. The tables 162-3, 162-4, and 162-5 are assigned the topics "Floor 2 / Line 1," "Floor 2 / Line 2," and "Floor 2 / Line 3," respectively. The data management module 152 stores the transmission data 50-5, 50-6, and 50-7 received from the transmission devices 200-5, 200-6, and 200-7 in the tables 162 corresponding to the included topics 52. In the example shown in FIG. 11, the value of the number of defects included in the data 54 is stored in the "defective number" column.

[0144] The data management module 152 of the server device 100 has an aggregation function 158. The aggregation function 158 of the data management module 152 searches for and aggregates data stored in one or more tables 162 in response to an aggregation request 184. In particular, the aggregation function 158 extracts target data based on the hierarchical structure of the topic, and executes a specified aggregation process on the extracted data to generate an aggregation result.

[0145] For example, it is assumed that the information processing device 300 transmits the tally request 184 to the server device 100. The information processing device 300 may display a setting window for setting the contents of the tally request 184.

[0146] More specifically, the aggregation request 184 includes a topic 1841 , a key 1842 , and an aggregation method 1843 .

[0147] "Floor 2 / +" is specified for topic 1841. Here, "+" represents a wildcard. In this way, the aggregation request 184 may include a description using a wildcard to specify the target topic. "Number of defectives" is specified for key 1842, and "total" is specified for aggregation method 1843.

[0148] The aggregation function 158 of the data management module 152 extracts tables that match the specified topic 1841, "Floor 2 / +," from among the tables 162 stored in the database 160. In other words, since "Floor 2 / +" means all tables 162 that have a topic beginning with "Floor," tables 162-3, 162-4, and 162-5 are extracted as targets.

[0149] Then, the aggregation function 158 of the data management module 152 extracts each value stored in the column of the “number of defectives” that is the specified key 1842 from the extracted table 162 .

[0150] Finally, the tallying function 158 of the data management module 152 calculates the sum of each of the extracted values ​​according to the specified tallying method 1843, which is "total." Then, the tallying function 158 of the data management module 152 returns the calculated total number of defects as the tallying result to the information processing device 300. The information processing device 300 displays a result window 370 including the tallying result 372.

[0151] In this manner, in response to aggregation request 184 , aggregation function 158 of data management module 152 performs the aggregation process specified by aggregation request 184 on multiple values ​​associated with topic 1841 specified by aggregation request 184 .

[0152] In this way, by using the hierarchical structure of the topic 52, it is possible to easily perform aggregation processing for a plurality of data sources (for example, lines).

[0153] The server device 100 may execute the tallying process in response to receiving the tallying request 184. That is, when receiving the tallying request 184, the tallying function 158 of the data management module 152 may execute the tallying process in accordance with the received tallying request 184.

[0154] On the other hand, the aggregation function 158 of the data management module 152 may periodically execute predetermined aggregation processing and store the obtained aggregation results in a table with another topic assigned. For example, by aggregating the data for one day through batch processing at night, it is not necessary to execute the aggregation processing every time an aggregation request 184 is received, which can reduce the processing load and speed up the response of the aggregation results.

[0155] FIG. 12 is a flowchart showing a processing procedure executed by the server device 100 related to the aggregation processing of the information processing system 1 according to the present embodiment. Each step shown in FIG. 12 is typically realized by the processor 102 of the server device 100 executing the information processing program 114.

[0156] Referring to FIG. 12, the server device 100 determines whether an aggregation request 184 has been received (step S300). If the aggregation request 184 has not been received (NO in step S300), the processing of step S300 is repeated.

[0157] If the aggregation request 184 has been received (YES in step S300), the server device 100 extracts the target table 162 based on the topic 1841 included in the aggregation request 184 (step S302). Then, the server device 100 extracts the values stored in the column specified by the key 1842 included in the aggregation request 184 from the extracted one or more tables 162 (step S304). Further, the server device 100 executes an aggregation process on the extracted values according to the aggregation method 1843 included in the aggregation request 184 to generate an aggregation result (step S306). Then, the server device 100 responds with the generated aggregation result to the source of the aggregation request 184 (step S308).

[0158] <Appendix G> The present embodiment as described above includes the following technical ideas.

[0159] [Configuration 1] An information processing system (1) comprising: a sending unit (200; 250) that sends data (54) including one or more values ​​(58) and identification information (56) associated with the one or more values, and a topic (52) indicating an attribute of the data; A database divided by topic (160;162) and a data management unit (152) that specifies a data storage destination based on a topic included in the transmission data, and stores the data included in the transmission data in the specified data storage destination; An information processing system in which, if a value associated with identification information identical to the identification information included in the transmission data is already stored in the database, the data management unit stores one or more values ​​included in the data included in the transmission data in association with the identification information already stored in the database.

[0160] [Configuration 2] The information processing system according to configuration 1, wherein the data management unit generates a new storage destination (162) for data associated with a topic (52) included in the transmission data when the storage destination (162) for the data associated with the topic does not exist.

[0161] [Configuration 3] The information processing system according to configuration 1 or 2, wherein the data management unit adds a new record for storing a value associated with the identification information if the value associated with the identification information identical to the identification information included in the transmission data is not stored in the database.

[0162] [Configuration 4] The information processing system according to any one of configurations 1 to 3, wherein the data management unit adds a new column for storing the value of the data name if there is no column for storing the data name of the value included in the transmitted data.

[0163] [Configuration 5] 5. The information processing system according to any one of configurations 1 to 4, wherein the data management unit (152; 154) adds a new value by performing a predetermined operation on a plurality of values ​​associated with the same identification information.

[0164] [Configuration 6] 6. The information processing system according to any one of configurations 1 to 5, wherein the data management unit (152; 156) determines whether or not the same topic as the topic set in the transmission unit already exists in the database.

[0165] [Configuration 7] The information processing system according to any one of configurations 1 to 6, wherein the data management unit (152; 156) determines whether a data name identical to one or more data values ​​included in the transmission data sent by the transmission unit already exists in the database.

[0166] [Configuration 8] 8. The information processing system according to any one of configurations 1 to 7, wherein the topics are described in a hierarchical structure.

[0167] [Configuration 9] The information processing system according to any one of configurations 1 to 8, wherein the data management unit (152; 158) executes, in accordance with an aggregation request (184), an aggregation process specified by the aggregation request for a plurality of values ​​associated with a topic specified by the aggregation request.

[0168] [Configuration 10] 10. The information processing system of claim 9, wherein the aggregation request includes a description using a wildcard to specify a target topic.

[0169] [Configuration 11] 11. The information processing system according to configuration 9 or 10, wherein, upon receiving the aggregation request, the data management unit executes the aggregation process in accordance with the received aggregation request.

[0170] [Configuration 12] A step (S100) of managing a database (160) divided by topic; A step (S102) of transmitting transmission data (50) including data (54) including one or more values ​​(58) and identification information (56) associated with the one or more values, and a topic (52) indicating an attribute of the data; Steps (S104, S106) of specifying a storage destination for the data based on a topic included in the transmission data; and a step (S114) of storing data included in the transmission data in the specified data storage destination; The information processing method includes a step of storing one or more values ​​included in the data included in the transmission data in correspondence with the identification information already stored in the database when a value associated with the same identification information as the identification information included in the transmission data is already stored in the database.

[0171] [Configuration 13] An information processing program (114), the information processing program being configured to execute the following in a computer (100): A step (S100) of managing a database (160) divided by topic; In response to transmission data (50) including data (54) including one or more values ​​(58) and identification information (56) associated with the one or more values, and a topic (52) indicating an attribute of the data, steps (S104, S106) of identifying a storage destination of the data based on the topic included in the transmission data; and (S114) storing the data included in the transmission data in the specified data storage destination. The information processing program includes a step of storing, when a value associated with identification information identical to the identification information included in the transmission data is already stored in the database, storing one or more values ​​included in the data included in the transmission data in association with the identification information already stored in the database.

[0172] <Advantages> In a production site, various devices and sensors are distributed, and many workers are also distributed as production resources. These are combined to form a production system and an organization. Production activities are carried out by the cooperation of multiple production systems and organizations. The production activities at the production site produce both "products" and a lot of "data".

[0173] Since data is generated from the distributed production resources, the generated data will also be distributed spatially and temporally. When trying to collect such temporally and spatially distributed data for production improvement, it is necessary to aggregate related data with each other and perform processes such as aggregation.

[0174] In addition, production resources (devices, sensors, workers, etc.) are often changed at any time according to the production situation, so it is also necessary to respond to such changes.

[0175] The information processing system according to this embodiment can efficiently collect data obtained from the production site by using topics and IDs. Also, by appropriately setting or appropriately changing topics and IDs, it is possible to flexibly respond to changes in production resources.

[0176] The embodiments disclosed this time should be considered as illustrative in all respects and not restrictive. The scope of the present invention is shown not by the above description but by the claims, and it is intended that all modifications within the meaning and scope equivalent to the claims are included.

Description of Reference Numerals

[0177] 1 Information processing system, 2, 4 Network, 10 Work, 12 Two-dimensional code, 50 Transmission data, 52 Topic, 54 Data, 56, 164 ID, 58, 166 Value, 100 Server device, 102, 212 Processor, 104, 214 Main memory, 106 Optical drive, 107 Recording medium, 108 Bus, 110, 216 Storage, 114 Information processing program, 120, 122, 220 Network controller, 124 USB controller, 126, 226 Input unit, 128, 228 Display unit, 150 Data distribution module, 152 Data management module, 154 Calculation function, 156 Registration management function, 158 Aggregation function, 160 Database, 162 Table, 170 Setting table, 184 Aggregation request, 200 Transmission device, 210 Processing circuit, 230 Collection unit, 250 Data transmission module, 260 setting window, 262 input window, 264 notification window, 300 information processing device, 350 data acquisition module, 370 result window, 372 aggregation results, 1841 topic, 1842 key, 1843 aggregation method.

Claims

1. An information processing system, a transmitting unit that transmits transmission data including data including one or more values ​​and identification information associated with the one or more values, and a topic indicating an attribute of the data; A database divided by topic, a data management unit, The data management unit determining whether or not a storage location exists for data associated with the topic included in the transmission data; If a storage destination for data associated with the topic included in the transmission data exists, determining whether or not identification information included in the transmission data has already been stored in the storage destination for the existing data; An information processing system that, if identification information included in the transmission data is already stored in the storage destination of the existing data, stores one or more values ​​included in the data included in the transmission data in correspondence with the identification information already stored in the storage destination of the existing data.

2. An information processing system as described in claim 1, wherein storing one or more values ​​contained in the data included in the transmitted data in correspondence with identification information already stored in the storage destination of the existing data includes storing one or more values ​​contained in the data included in the transmitted data in the same record as the identification information.

3. 3. The information processing system according to claim 1, wherein the data management unit generates a new storage destination for data associated with a topic included in the transmission data when no storage destination exists for the data associated with the topic.

4. 3. The information processing system according to claim 1, wherein the data management unit adds a new record for storing a value associated with the identification information if the identification information contained in the transmitted data is not stored in the storage location of the existing data.

5. An information processing system according to any one of claims 1 to 4, wherein the data management unit adds a new column for storing the value of the data name if there is no column for storing the data name of the value contained in the transmitted data in the storage destination of the existing data.

6. 6. The information processing system according to claim 1, wherein the data management unit adds a new value by performing a predetermined operation on a plurality of values ​​associated with the same identification information.

7. 7. The information processing system according to claim 1, wherein the data management unit determines whether a topic identical to the topic set in the transmission unit already exists in the database.

8. An information processing system according to any one of claims 1 to 7, wherein the data management unit determines whether a data name identical to one or more data values ​​contained in the transmission data sent by the transmission unit already exists in the database.

9. 9. The information processing system according to claim 1, wherein the topics are described in a hierarchical structure.

10. The information processing system according to any one of claims 1 to 9, wherein the data management unit performs an aggregation process specified by the aggregation request on multiple values ​​associated with a topic specified by the aggregation request in accordance with the aggregation request.

11. The information processing system according to claim 10 , wherein the aggregation request includes a description using a wildcard to specify a target topic.

12. The information processing system according to claim 10 , wherein the data management unit, upon receiving the tallying request, executes the tallying process in accordance with the received tallying request.

13. An information processing method executed by an information processing system, comprising: managing a topic-specific database; transmitting transmission data including data including one or more values ​​and identification information associated with the one or more values, and a topic indicating an attribute of the data; storing data included in the transmission data; The storing step includes: a step of determining whether or not a storage location for data associated with the topic included in the transmission data exists; a step of determining whether or not identification information included in the transmission data has already been stored in the existing data storage location when a storage location for data associated with the topic included in the transmission data exists; An information processing method including a step of storing one or more values ​​contained in the data included in the transmission data in correspondence with the identification information already stored in the storage destination of the existing data when the identification information contained in the transmission data is already stored in the storage destination of the existing data.

14. An information processing program, the information processing program being configured to: managing a topic-specific database; and storing the data included in the transmission data in response to the transmission data including data including one or more values ​​and identification information associated with the one or more values, and a topic indicating an attribute of the data; The storing step includes: a step of determining whether or not a storage location for data associated with the topic included in the transmission data exists; a step of determining whether or not identification information included in the transmission data has already been stored in the existing data storage location when a storage location for data associated with the topic included in the transmission data exists; An information processing program including a step of storing one or more values ​​included in the data included in the transmission data in correspondence with the identification information already stored in the storage destination of the existing data when the identification information included in the transmission data is already stored in the storage destination of the existing data.

Citation Information

Patent Citations

  • Sensor data control system and sensor data control method

    JP2008217612A

  • Apparatus and method for processing data and program

    JP2011215984A

  • Search engine optimization for resource directories

    JP2017516213A

  • Data orchestration platform management

    JP2019133610A

  • Information processing apparatus, information processing method, and program

    JP2020057089A