DATA STORAGE DEVICE AND COMPUTER-READABLE STORAGE MEDIUM
The data storage device synchronizes data across NoSQL and relational databases by using an extraction unit to create join tables, addressing the challenge of differing update times and enabling integrated data management for production and quality control.
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- FANUC LTD
- Filing Date
- 2023-09-14
- Publication Date
- 2026-04-23
AI Technical Summary
Existing database management systems face challenges in linking and storing data from NoSQL and relational databases that are updated at different times, particularly in factory data acquisition scenarios where timely integration of data from both types is desirable.
A data storage device comprising a primary NoSQL database, a secondary relational database, and an extraction unit that creates join tables to combine data elements from multiple sources, using SQL statements to synchronize and store data elements across both databases.
Enables efficient linking and storage of data elements updated at different times, facilitating production management, quality control, and work planning by integrating data from NoSQL and relational databases.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical field
[0001] The present disclosure relates to a data storage device and a computer-readable storage medium. General state of the art
[0002] Existing databases can be broadly classified into relational databases (RDBs) and NoSQL (non-relational databases). While RDBs allow for advanced search capabilities, maintaining consistency between tables tends to incur high CPU and memory costs. Some NoSQL databases have a simple architecture, such as a key-value store, and are well-suited for accommodating large amounts of generated data. However, due to its simple data structure, a key-value store may be unsuitable for advanced search.
[0003] There is a conventional technology that has a NoSQL database and a relational database in one server and converts data from the NoSQL database into data from the relational database.
[0004] Because data elements are accumulated in the NoSQL database, a large amount of data can be held and data can be stored in the relational database at any time. List of literature on patent literature
[0005] Patent literature example 1: JP 2012-178455 A Brief description of the invention: Technical problem
[0006] Some database management systems manage data using two types of databases: NoSQL and a relational database. The update times of the NoSQL and relational database data differ. It is difficult to store NoSQL and relational database data, which are updated at different times, in a linked manner.
[0007] In factory data acquisition, it is desirable to store data collected by a NoSQL database linked to data in a relational database. Solution to the problem
[0008] A data storage device comprises a primary NoSQL database that stores data received from a device in a plant at high speed; a secondary database that stores a portion of the data from the primary database and data received from a parent network of the plant in a tabular format; and an extraction unit that creates a join table using data received from at least one source in the primary database, the secondary database, or the parent network, and causes the secondary database to perform processing to store a target data table obtained by combining data elements received from at least two sources in the primary database, the secondary database, and the parent network using the join table. Brief description of the drawings Fig. Figure 1 is a block diagram of a data storage device. Fig. 2 is a flowchart describing the operation of the data storage device. Fig. Figure 3 is a view that shows an example of data stored in a primary database. Fig. Figure 4 is a view that shows an example of a start time table. Fig. 5 is a view that shows an example of data stored in the primary database. Fig. Figure 6 is a view that shows an example of a production time table. Fig. Figure 7 is a flowchart describing the operation of the data storage device in example 1. Fig. Figure 8 is a view that shows an example of data stored in the primary database. Fig. Figure 9 is a view that shows an example of a production quantity table. Fig. 10 is a flowchart describing the operation of the data storage device in example 2. Fig. Figure 11 is a view that shows an example of a determination table. Fig. Figure 12 is a view that shows an example of an NC program table. Fig. 13 is a view that shows an example of an alarm table. Fig. 14 is a view that shows an example of data stored in the primary database. Fig. 15 is a view that shows an example of data stored in the primary database. Fig. 16 is a flowchart describing the operation of the data storage device in example 3. Fig. Figure 17 is a hardware layout diagram of the data storage device. Description of embodiments
[0009] A data storage device 100 will be described below. Fig. Figure 1 is a block diagram of the data storage device 100. The data storage device 100 includes a primary database 11, a secondary database 12, an extraction unit 13, and a procedure storage unit 14.
[0010] Primary database 11 receives and stores data from devices within a plant. Primary database 11 stores field data and similar information. "Field data" refers to data collected within a field network of the plant. This field data is received from a device such as a sensor, servo motor, distributed I / O, inverter, numerical controller, or programmable logic controller (PLC).
[0011] The primary database is a NoSQL database and stores the device's data. NoSQL database types include key-value types, column-oriented types, document-oriented types, graph-oriented types, and the like. There are no significant restrictions on the type of NoSQL database. In the present embodiment, an example will be described that uses the JSON format, which is one of the key-value types.
[0012] The secondary database 12 is a relational database. The secondary database 12 can also be operated by an external system located in a higher-level network and a device located in a control network, such as a numerical controller or a PLC. The data storage device 100 of this disclosure can be implemented in an information processing device in the control network connecting the higher-level network and the field network, such as a numerical controller or a PLC. A system that manages manufacturing in the plant using IT is called a Manufacturing Execution System (MES). The MES performs production management, quality management, work planning, and the like using data from the secondary database 12. The secondary database 12 has a data manipulation function.In this embodiment, SQL is used as an example of the data manipulation function. The data manipulation function can be an API.
[0013] The extraction unit 13 extracts data accumulated in the primary database 11 and outputs the data to the secondary database 12.
[0014] Extraction unit 13 includes procedure storage unit 14. Extraction unit 13 stores a procedure for extracting data from primary database 11 and outputting the data to secondary database 12. Procedure storage unit 14 defines a linking table and a target table. The target table stores data suitable for use. The data stored in the target table is used for production management, quality control, planning, and similar purposes.
[0015] The linking table links the primary database 11 with the secondary database 12. The linking table temporarily stores moved data, host system configuration data, dates, identification information, and the like. The extraction unit 13 combines data stored in the linking table with data extracted from the primary table to create the target table. Note that the linking table and the target table can be the same table.
[0016] SQL statements are used to create the linking table and the target table. Procedure storage unit 14 stores the SQL statements for creating the linking table and the target table. Extraction unit 13 outputs data retrieved from primary database 11 and the SQL statements to secondary database 12. Secondary database 12 creates, deletes, modifies, and combines tables, and searches, retrieves, records, updates, and deletes data according to the SQL statements.
[0017] With reference to Fig. Section 2 will describe the operation of the data storage device 100. A flowchart of Fig. Figure 2 shows activities of the secondary database 12 (secondary DB), the primary database 11 (primary DB) and the extraction unit 13.
[0018] The primary database 11 receives data from a device in the plant (step S1) and stores the data in the primary database 11 (step S2). The extraction unit 13 outputs an SQL statement to update the link table to the secondary database 12 according to the procedure stored in the procedure storage unit 14 (step S3).
[0019] When secondary database 12 receives the SQL statement (step S4: yes), secondary database 12 updates the linking table using the data from primary database 11 (step S5). It is important to note that when updating the linking table as needed, data managed by the host system is used. The data received from the host system includes the "Date" and "Target Production Quantity" in a Production Quantity table from Example 2 and the "Alarm Record" in a Determination table from Example 3, which are described later.
[0020] Extraction unit 13 reads data from primary database 11 and outputs an SQL statement to update the target table to secondary database 12 (step S6).
[0021] When the secondary database 12 receives the SQL statement (step S7: yes), it combines the data from the primary database 11 and the data from the link table to update the target table (step S8). Note that in step S8, data obtained from the host system can be used as needed.
[0022] As described above, when extracting data from the primary database 11 and storing the data in the secondary database 12, the data storage device 100 extracts data stored in the join table and joins the data with the data extracted from the primary database 11 to update the target table.
[0023] In the data storage device 100 of the present embodiment, the linking table is prepared in advance, and data elements that are stored in the primary database 11 at different times are collected and stored in the target table. As a result, the data elements that are stored in the primary database 11 at different times can be linked together and stored in the secondary database 12.
[0024] Furthermore, data from the host system can also be entered into the linking table. By entering the host system data into the linking table, the host system data can be combined with data from the primary database 11. The combined data elements can be used for production management, quality management, and work planning. Example 1
[0025] The target table in Example 1 is a production time table. This table stores a "start time" for processing, a "completion time" for processing, a "production time" for a workpiece, and an identification information ("workpiece ID") for the workpiece. The linking table in Example 1 is a start time table. It contains the "start time" for processing and the identification information ("workpiece ID") for the workpiece.
[0026] Production storage unit 14 defines the start time table, the production time table, and the times for updating these tables. The "workpiece identifier" is a key that links the start time table to the production time table.
[0027] The start time table is updated when a device state changes from "stopped" to "in operation". The production time table is updated when an "M-code" changes to "M02".
[0028] Fig. 3 and Fig. Five are data elements in JSON format, stored in the primary database. In this example, a database storing data in JSON format is used as a NoSQL example. The data in JSON format is accumulated in the primary database as required.
[0029] In the example of Fig. 3. The points “timestamp”, “status”, “act_m_code” and “work_id” are collected.
[0030] Extraction unit 13 monitors a “device state” and updates the start time table at a time when the “device state” changes from “stopped” to “in operation”.
[0031] In the example of Fig. The values of primary database 11, when the "device state" changed from "stop" to "running", are: "timestamp: 2023 / 06 / 01 13:05:25", "status: running", "act_m-code: null" and "work_id: A00002".
[0032] When the extraction unit 13 detects the change in the “device state” (“stopped” to “in operation”), the extraction unit reads the “workpiece identifier” and the “timestamp” from the primary database 11.
[0033] The extraction unit sends an SQL statement to secondary database 12 to add the "workpiece ID" and the "current time" to the start time table. Secondary database 12 updates the start time table according to the SQL statement.
[0034] Fig. Figure 4 is an example of the start time table. The start time table contains the entries "Workpiece ID" and "Start Time". The "Start Time" is the "timestamp" when the "Fixture State" changed. The start time table is updated with each change to the "Fixture State".
[0035] Simultaneously, extraction unit 13 monitors the "M-code" of primary database 11 and updates the production time table at the point in time when the "M-code" changes to "M02". Specifically, extraction unit 13 reads the "workpiece identifier" and the "timestamp" from primary database 11 and outputs an SQL statement to update the production time table to secondary database 12.
[0036] In the example of Fig. The values in primary database 11 are 5, as the "M-code" changed to "M02". "timestamp (timestamp): 2023 / 06 / 01 13:30:12", "status (device state): stop (stopped)", "act_m-code (M-code): M02") and "work_id (workpiece identifier): A00002".
[0037] Extraction unit 13 searches the start time table using the "workpiece ID" as a key and reads the "start time" of the machining of the corresponding workpiece from secondary database 12. Extraction unit 13 calculates the "production time," which is the difference between the "start time" of machining and the "completion time," where the "timestamp" at which the "M-code" changed to "M02" represents the "completion time." It then generates an SQL statement for adding this time and outputs the SQL statement to secondary database 12. Secondary database 12 adds the "workpiece ID," "start time," "completion time," and "production time" to the production time table.
[0038] Fig. Figure 6 is an example of the production time table. The production time table contains the entries "Workpiece ID", "Start Time", "Completion Time", and "Production Time". The production time table acts as the target table. The production time table is updated with each completion of the machining of a workpiece.
[0039] With reference to Fig. Section 7 describes the operation of the data storage device 100 in Example 1. A flowchart of Fig. Figure 7 shows the activities of the secondary database 12 (secondary DB), the primary database 11 (primary database) and the extraction unit 13.
[0040] The primary database 11 receives data from a device such as a sensor, a distributed I / O, an inverter, a numerical control or a PLC in a factory (step S11) and stores the received data (step S12).
[0041] Extraction unit 13 monitors the "device status" of primary database 11 (step S13). If the "device status" changes from "stopped" to "in operation" (step S14: yes), extraction unit 13 reads the "timestamp" and "workpiece identifier" from primary database 11. If the "device status" remains "stopped" (step S14: no), extraction unit 13 continues monitoring.
[0042] Extraction unit 13 issues an SQL statement to secondary database 12 to add the "timestamp" and "workpiece identifier" indicating when processing started to the start time table (step S15). If the "timestamp (processing start time)" indicating when processing started is obtained (step S16: yes), secondary database 12 updates the start time table (step S17). If the "timestamp (processing start time)" indicating when processing started is not obtained (step S16: no), processing proceeds to step S22.
[0043] Extraction unit 13 monitors the "M-code" data in the primary database (step S18). If the "M-code" data changes to "M02" (step S19: yes), extraction unit 13 reads the "timestamp" and "workpiece ID" from the primary database (step S20), calculates the "machining completion time" and the "production time," generates an SQL statement to add them to the production time table, and outputs the SQL statement to secondary database 12 (step S21). If the "M-code" data does not change (step S19: no), extraction unit 13 proceeds to step S13 and continues monitoring the "machine state" and the "M-code."
[0044] When the secondary database 13 receives the SQL statement (step S22: yes), it updates the production time table (step S23).
[0045] As described above, the extraction unit 13 of the data storage device links data elements that were obtained at different times by updating the start time table and the production time table at predetermined times, using the start time table as the linking table and the production time table as the target table.
[0046] The time at which the start time table is updated is defined in procedure storage unit 14. The time at which the production time table is updated is also defined in procedure storage unit 14. A key (workpiece identifier) for linking a recording of the start time table with a recording of the production time table is also defined in procedure storage unit 14.
[0047] As a result, it is possible to link data elements that were obtained from the primary database 11 at different times and to calculate required data (for example, the "production time") using data elements that were obtained at different times (for example, the "start time" stored in the start time table and the "completion time" newly obtained from the primary database 11). Example 2
[0048] In Example 2, the linking table and the target table are the same table (a production quantity table). This means that the production quantity table, which will be described later, is both the linking table and the target table. In Example 2, the "workpiece identifier" and a "date" are the keys for linking the linking table to the production quantity table.
[0049] The values in the production quantity table are determined based on settings from a Manufacturing Execution System (MES). An operator uses the MES or similar system to enter a "target production quantity" of workpieces for each day. Extraction unit 13 reads the settings from the MES or similar system. Secondary database 12 records the "target production quantity" for each "workpiece identifier" and each "date" in the production quantity table. These entered data elements are displayed in the area enclosed by a black frame. Fig. 9. This is a list of the "target production quantity" for each day. At the stage of entering the "target production quantity," the "actual production quantity" and "difference" fields are empty.
[0050] When processing begins, 11 data points in JSON format are collected in the primary database. Fig. Figure 8 displays data in JSON format. In the example of... Fig. The points “timestamp”, “work_id” and “product amount” are defined in section 8. The data in JSON format is collected in the primary database 11 as required.
[0051] In example 2, the latest data in the primary database 11 is extracted at predetermined intervals (10 minutes in this example). In the example of Fig. The data “timestamp (timestamp): 2023 / 06 / 02 13:04:55”, “work_id (workpiece identifier): A00001” and “product amount (production quantity): 47” were the most recent, but ten minutes later “timestamp (timestamp): 2023 / 06 / 02 13:14:55”, “work_id (workpiece identifier): A00001” and “product amount (production quantity): 50” became the most recent values.
[0052] When the predetermined time (10 minutes) has elapsed, the extraction unit 13 reads the "workpiece identifier" and the "actual production quantity" from the primary database 11 and calculates the difference. Specifically, the "target production quantity" of the corresponding "workpiece identifier" is read from the secondary database 12, and the difference to the "actual production quantity" obtained from the primary database 11 is calculated. Fig. The “target production quantity” for the “date” 2023 / 06 / 02 is “150”. A value obtained by subtracting the “actual production quantity” from the “target production quantity” is “-50”.
[0053] Extraction unit 13 issues an SQL statement to secondary database 12 to update the "actual production quantity" and the "difference" in the production quantity table. Secondary database 12 executes the SQL to update the production quantity table.
[0054] As a result of the update, the data elements for "actual production quantity" and "difference" are added to the production quantity table (see Fig. 9)
[0055] With reference to Fig. Section 10 describes the operation of the data storage device 100 in Example 2. A flowchart of Fig. Figure 10 shows the activities of the secondary database 12 (secondary DB), the primary database 11 (primary database) and the extraction unit 13.
[0056] Secondary database 12 receives an entry for a target production quantity (step S41). In example 2, an entry for the target production quantity of a workpiece is received for each day. The production quantity table at step S41 is updated as described in Fig. Figure 9 shows the "date", the "workpiece identifier" and the "target production quantity" added.
[0057] Primary database 11 receives data from a device in a factory (step S42). Primary database 11 stores the received data in JSON format (step S43). The data stored includes the timestamp, the workpiece identifier, and the actual production quantity.
[0058] Extraction unit 13 measures the time (step S44). If an update interval (10 minutes) has elapsed (step S45: yes), extraction unit 13 reads the "actual production quantity" of the latest data from primary database 11 (step S46). If the update interval has not elapsed (step S45: no), extraction unit 13 proceeds to step S44 and waits.
[0059] Extraction unit 13 outputs an SQL statement to update the "actual production quantity" and the "difference" in the production quantity table to the secondary database 12 (step S47).
[0060] The secondary database 12 receives the SQL statement to update the “actual production quantity” and the “difference” from extraction unit 13 (step S48) and updates the “actual production quantity” and the “difference in the production quantity table” (step S49).
[0061] As described above, the secondary database 12 of the data storage device 100 adds data extracted from the primary database 11 to the production quantity table, which serves as the linking table, in order to update the production quantity table, which serves as the target table. The production quantity table serves as both the linking and target tables.
[0062] In Example 2, the "target production quantity" is entered into the MES or similar system using a higher-level network. When a user enters the "target production quantity," the data storage device 100 reads the "actual production quantity" of the corresponding workpiece from the primary database 11 every 10 minutes and calculates the "difference" to the "target production quantity." The data elements, such as the "actual production quantity" and the "difference," can be used for process planning management and the like. For example, a color on an Andon is changed to indicate progress to a worker when the "actual production quantity" approaches the "target production quantity."
[0063] In example 2, data received from the parent network is entered into the linking table, and data elements of the parent network, a field network, and a control network are linked together and stored in the secondary database 12. Example 3
[0064] The target table in Example 3 is an alarm table. The alarm table stores alarm information. The linking table in Example 3 is a determination table. The determination table stores a setting for whether or not the alarm information should be stored. Example 3 also uses an NC program table. The NC program table stores an NC program that was used in each machine at that time.
[0065] The identification table, which is in Fig. Figure 11 shows a setting for whether or not alarm data should be recorded. An "alarm recording" setting is defined for each "machine ID". This setting is made by a host system, such as an MES. "Host system" refers to a system that is set up within a higher-level network of a field system.
[0066] The NC program table, which is in Fig. Figure 12 shows an entity that stores an NC program. A machining program is updated by a device (an operator panel, an industrial PC, or the like) on the higher-level network or a control network.
[0067] The alarm table, which is in Fig. Figure 13 shows that the alarm table stores the state of a machine and a processing program when an alarm is generated. The alarm table is updated when an "alarm flag" in the primary database 11 changes from "false" to "true". Note that the alarm table is not updated if the determination table specifies "no record".
[0068] Fig. Figure 14 shows the change to the primary database 11's alarm flag. If the timestamp among the values of primary database 11 is "2023 / 06 / 01 13:05:25", the alarm_flag changes from "false" to "true". At this point, the alarm_number is "5" and the machine_id is "M001".
[0069] When the extraction unit 13 detects the change in the “alarm flag” (from “false” to “true”), it reads the “machine identifier” from the primary database 11, searches the determination table using the “machine identifier” as a key, reads the “alarm record” from the secondary database 12, and determines whether or not an alarm should be recorded.
[0070] If the “alarm recording” is “recording”, the extraction unit 13 reads the status information of the corresponding “machine identifier” from the primary database 11. Fig. 15 is an example of data in the JSON format of the primary database 11, which records the state of the machine. In the example of Fig. 15 are recorded “timestamp (timestamp): 2023 / 06 / 01 13:05:25”, “machine_id (machine identifier): M001”, “current (current value): 11.2” and “axis_load (axial load): 102”.
[0071] Extraction unit 13 reads the "alarm number", the "current value" and the "axial load" from primary database 11. Extraction unit 13 outputs the data read from primary database 11 and an SQL statement to update the alarm table to secondary database 12.
[0072] Extraction unit 13 reads a "program entity" from the NC program table of secondary database 12 using the "machine identifier" as a key. Extraction unit 13 combines the "alarm number", the "current value" and the "axial load" read from primary database 11 with the "program entity" using the "machine identifier" as a key and adds the combined result to the alarm table.
[0073] It should be noted that the "program entity" is the most recently processed program. The "program entity" at the time an alarm is generated is stored in the alarm table.
[0074] With reference to Fig. Section 16 describes the operation of the data storage device 100 in Example 3. A flowchart of Fig. Figure 16 shows the operations of the secondary database 12 (secondary DB), the primary database 11 (primary DB) and the extraction unit 13.
[0075] Primary database 16 receives data from a device in a factory (step S61). Primary database 11 stores the received data (step S62).
[0076] If the setting for whether or not to record an alarm is received from the MES in the parent network or similar (step S63: yes), the extraction unit 13 issues an SQL statement to update the determination table to the secondary database 12 (step S64). If the setting is not received (step S63: no), processing proceeds to step S69.
[0077] When the secondary database 12 receives the determination from the extraction unit 13 (step S65: yes), it updates the determination table according to the SQL statement (step S66).
[0078] If the machining program is updated by the MES or the operator panel and an SQL statement to update the NC program table is received from the host system (step S67: yes), the secondary database 12 updates the NC program entity (step S68). As a result, the machining program becomes the latest program in the NC program table. If the NC program table is not to be updated (step S67: no), processing proceeds to step S74.
[0079] Extraction unit 13 monitors the "alarm flag" of primary database 11. When the "alarm flag" changes from "false" to "true" (step S69: yes), the determination table of secondary database 12 is searched using the "machine ID" for which an alarm was generated as the key (step S70). If the "alarm record" of the corresponding machine is "recorded" (step S71: yes), extraction unit 13 reads the "alarm number," "current value," and "axial load" of the machine for which the alarm was generated from primary database 11 (step S72). The data read from the primary database and an SQL statement to update the alarm table with the data read from secondary database 12 are output to secondary database 12 (step S73).
[0080] When secondary database 12 receives the SQL statement from extraction unit 13 (step S74: yes), secondary database 12 updates the alarm table.
[0081] As described above, the secondary database 12 of the data storage device 100 creates the destination table as the linking table, stores data in the NC program table that is updated in the host system, and updates the alarm table as the target table by combining data extracted from the primary database 11 with data from the linking table and the NC program table.
[0082] The times at which the destination table, the NC program table, and the target table are updated differ from one another. Procedure memory unit 14 stores the times of the updates for the respective tables.
[0083] Since, in example 3, data that is updated in the host system is stored in the latest data table, data elements that change at different times can be stored in combination in different systems, such as the host system and the field system.
[0084] Furthermore, the higher-level network can be configured to determine whether or not data should be recorded. Data storage device 100 manages the data based on this setting in the host system. For example, Fig. 3. It is determined, with reference to the determination table, whether an alarm should be recorded or not.
[0085] The following describes a hardware configuration of the data storage device 100 to which the present disclosure is applied. Fig. Figure 17 is a hardware architecture diagram of the data storage device 100. As in Fig.As shown in Figure 17, the data storage device 100 has a CPU 111, which performs all the control functions of the data storage device 100, a ROM 112 in which programs and data are stored, and a RAM 113 for temporarily loading data. The CPU 111 reads a system program stored in the ROM 112 via a bus and operates according to the system program.
[0086] A non-volatile memory 114 is, for example, battery-powered (not shown) so that the memory state is retained even when the power supply to the data storage device 100 is switched off. The non-volatile memory 114 stores various types of data via interfaces 115, 118, and 119, such as a program read from an external device 120 and inputs entered via an input unit 30. Programs and data for executing the data storage device 100 of the present embodiment can be stored in the non-volatile memory 114. Furthermore, the individual data read from the memory, data obtained as a result of program execution, and the like are displayed on a display unit 70.
[0087] Interface 115 is used to connect the data storage device 100 and the external device 120, such as an adapter. Programs, various parameters, and the like are read from the external device 120. Interface 118 is used to connect the data storage device 100 and the display unit 70, such as a liquid crystal display. The individual data items read from the memory, data obtained as a result of a program, and the like are displayed on the display unit 70.
[0088] Interface 119 is used to connect the data storage device 100 and the input unit 30, such as a keyboard or pointing device. The input unit 30 transmits commands, data, and the like, based on an operator's actions, to the CPU 111 via interface 119.
[0089] Although the present disclosure has been described in detail, it is not limited to the individual embodiments described above. These embodiments can be subjected to various additions, substitutions, modifications, and partial omissions without deviating from the core of the disclosure or from the core of the disclosure derived from the content described in the claims and their equivalents. Furthermore, these embodiments can be implemented in combination.
[0090] With regard to the embodiments and their modifications described above, supplementary remarks will be discussed below. (Supplementary Note 1)
[0091] A data storage device (100) comprises a primary database (11) that stores data obtained from a device in a plant; a secondary database (12) that stores a portion of the data from the primary database (11) and data obtained from a higher-level network of the plant; and an extraction unit (13) that generates linking data using data obtained from at least one of the primary database (11), the secondary database (12), or the higher-level network, and causes the secondary database to perform processing to store target data obtained by combining data elements obtained from at least two of the primary database (11), the secondary database (12), and the higher-level network using the linking data in the secondary database (12). (Supplementary Note 2)
[0092] The extraction unit (13) includes a procedure storage unit (14) that defines a time for updating the linking data and a time for updating the target data. (Supplementary Note 3)
[0093] The extraction unit (13) updates the linking data and the target data at different times and stores data elements that were output by the device in the plant at different times linked together in the secondary database (12). (Supplementary Note 4)
[0094] The extraction unit (13) records data received from the parent network in the linking data and stores linked data from the parent network and data from the primary database (11) in the secondary database (12). (Supplementary Note 5)
[0095] The linking data contains a list of keys that link data from the primary database (11) with the target data. (Supplementary Note 6)
[0096] The extraction unit (13) generates NC program data that stores an NC program that has been updated in the higher-level network, and causes the secondary database (12) to perform processing to store target data obtained by combining the NC program data and the linking data in the secondary database (12). (Supplementary Note 7)
[0097] The linking data and the target data are identical data. (Supplementary Note 8)
[0098] A computer-readable storage medium (112, 113, 114) stores instructions to cause one or more processors (111) to perform processing for generating linking data using data obtained from at least one primary database (11) storing data received from a device of a plant, a secondary database (12) storing data, or a higher-level network of the plant, and for storing target data obtained by combining data elements obtained from at least two of the primary database (11), the secondary database (12), and the higher-level network using the linking data, in the secondary database (12). Reference symbol list 100 data storage device 11 primary database 12 secondary databases 13 extraction units 14 Procedure storage unit 111 CPU 112 ROM 113 RAM 114 non-volatile memory QUOTES INCLUDED IN THE DESCRIPTION
[0000] This list of documents cited by the applicant was automatically generated and is included solely for the reader's convenience. The list is not part of the German patent or utility model application. The DPMA accepts no liability for any errors or omissions. Cited patent literature
[0000] JP 2012-178455 A
[0005]
Claims
[1] Data storage device comprising a primary database that stores data obtained from a device in a factory; a secondary database that stores a portion of the data from the primary database and data obtained from a higher-level network of the plant; and an extraction unit that generates join data using data obtained from at least one of the primary database, the secondary database, or the parent network, and causes the secondary database to perform processing to store target data obtained by combining data elements obtained from at least two of the primary database, the secondary database, and the parent network using the join data. [2] Data storage device according to claim 1, wherein the extraction unit comprises a procedure storage unit that defines a time for updating the linking data and a time for updating the target data. [3] Data storage device according to claim 1, wherein the extraction unit updates the linking data and the target data at different times and stores linked data elements that were output by the device in the plant at different times in the secondary database. [4] Data storage device according to claim 1, wherein the extraction unit records data obtained from the parent network in the linking data and stores linked data of the parent network and data of the primary database in the secondary database. [5] Data storage device according to claim 1, wherein the linking data includes a list of keys that link data of the primary database with the target data. [6] Data storage device according to claim 1, wherein the extraction unit generates NC program data that stores an NC program that has been updated in the higher-level network, and causes the secondary database to perform processing to store target data obtained by combining the NC program data and the linking data in the secondary database. [7] Data storage device according to claim 1, wherein the linking data and the target data are identical data. [8] A computer-readable storage medium that stores instructions to cause one or more processors to perform processing for generating linking data using data obtained from at least one primary database storing data received from a device of a plant, a secondary database storing data, or a higher-level network of the plant, and for storing in the secondary database target data obtained by combining data elements obtained from at least two primary databases, the secondary database, and the higher-level network using the linking data.
Citation Information
Patent Citations
Inspection system, management server, inspection apparatus and inspection data management method
JP2012178455A