METHOD FOR MANAGING DATA IN MEMORY DEVICE AND DATA MANAGEMENT SYSTEM
Patent Information
- Application Number
- JP2023120697
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2016-02-09
- Filing Date
- 2023-07-25
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2037-02-09
Smart Images

Figure 0007631435000001 
Figure 0007631435000002 
Figure 0007631435000003
Abstract
Description
[Technical field]
[0001] 1. Field of the Invention The present invention relates to a data management method and a data management system for a memory device. [Background technology]
[0002] In IoT technology, which has been attracting attention in recent years, data is collected sequentially from a wide variety of sensors. Furthermore, when the collected data is to be effectively utilized, data collected in the past is often used retroactively. Therefore, the sequentially collected data is appropriately stored in memory and accumulated. As a result, the amount of data stored in memory becomes enormous over time. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2006-345208 A [Patent Document 2] JP 2010-187124 A Summary of the Invention [Problem to be solved by the invention]
[0004] As a specific example of storable data, Patent Document 1 discloses a technique for temporarily storing surveillance video in a DVR (Digital Video Recorder). This temporarily stored surveillance video is then transmitted to a person who has made a request for data transmission as appropriate in response to a request for data transmission. However, the amount of surveillance video stored in the DVR increases over time, and the data capacity eventually exceeds the capacity of the DVR. However, no technique has been disclosed for preventing the data capacity of the stored surveillance video from exceeding the capacity of the DVR.
[0005] In response to this, Patent Document 2 describes a method for dealing with excess capacity of surveillance video data, in which newly collected surveillance video is overwritten. However, this method makes it impossible to effectively use old surveillance video before it is overwritten.
[0006] In the embodiment, it is desired to provide a data management method that can effectively utilize data in a memory that stores storable data, or a management system that uses the same. [Means for solving the problem]
[0007] According to one embodiment, in a data management method for a network system including a server, an edge device connected to the server via a network, and a plurality of memory devices connected to the edge device via the network, the method comprising the steps of: The edge device includes: A first memory device can collect data from a sensor device, and can set management information including at least whether or not data is to be made public with respect to the collected data, and can store the collected data and the management information in a data storage unit in the first memory device; Furthermore, when the data is stored in the data storage unit, a risk of data loss occurring in the data storage unit is recognized before the effective remaining unrecorded capacity of the data storage unit is exhausted; When the risk of data loss is recognized, the data in the data storage unit that is at risk of data loss is transmitted to the server and the second memory device via the network together with the management information; The server and the second memory device each store the management information including the data search location having the same contents as each other, so that even if the management information in either the server or the second memory device is lost, the data search location can be restored from the management information in the other memory device; Further, the edge device, the server, and the second memory device The management information is managed in a table for each of the plurality of memory devices, and the contents of the management information relating to the server and the second memory device include identifying whether there is private data or public data in the plurality of memory devices by class indicating the size of the range of disclosure, and managing the information; The plurality of memory devices include a memory device managed by a memory area rental manager for storing data, and at least a data storage period is set for the memory device. The present invention provides a data management method for a network system. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a configuration diagram of a network system according to this embodiment. [Diagram 2] FIG. 2 is an explanatory diagram of the structure of communication data used on the Internet. [Diagram 3] FIG. 3 is a diagram for explaining the data structure in the IPv6 header. [Figure 4] FIG. 4 is a diagram for explaining the data structure in the data control information and the communication data body. [Diagram 5] FIG. 5 is a diagram for explaining the data structure in the communication data body. [Figure 6] FIG. 6 is a diagram for explaining a description format in the control information. [Figure 7] FIG. 7 is a diagram showing an example of the relationship between the control type contents and parameters described in the control information. [Figure 8] FIG. 8 is a diagram for explaining a description example of the control information. [Figure 9A] FIG. 9A is a diagram illustrating the transfer paths of collected data and analysis data in an edge device. [Figure 9B] FIG. 9B is a diagram illustrating the flow of data collection and analysis in the edge device. [Figure 10] FIG. 10 is a diagram for explaining user management information. [Figure 11]FIG. 11 is a diagram for explaining an example of a sensor data collection scene. [Figure 12] FIG. 12 is a diagram for explaining the relationship between the displayed advertisement contents and the passerby status. [Figure 13A] FIG. 13A is a diagram illustrating an example of raw sensor data captured by a sensor device. [Figure 13B] FIG. 13B is a diagram illustrating an example of data after processing the raw sensor data. [Figure 14] FIG. 14 is a diagram for explaining a method of creating a management packet based on user management information. [Figure 15] FIG. 15 is a diagram illustrating an example of a network connection relationship between an edge apparatus and a device. [Figure 16] FIG. 16 is a diagram for explaining an example of the contents of the edge / device table. [Figure 17] FIG. 17 is a diagram for explaining a method for searching an expandable memory area in a domain. [Figure 18] FIG. 18 is a diagram for explaining the division of roles among edge / small / device agents. [Figure 19A] FIG. 19A is a diagram illustrating changes in data recorded in a memory device. [Figure 19B] FIG. 19B is a diagram further illustrating the changes in data stored in the memory device. [Figure 19C] FIG. 19C is a flow diagram illustrating a method for changing the recording location of saved data. [Figure 20A] FIG. 20A is a diagram for explaining state changes in a memory device. [Figure 20B] FIG. 20B is a diagram for explaining a method for dealing with a change in state within a memory device. [Figure 20C] FIG. 20C is an explanatory diagram of a flow of corrective measures taken in response to a change in state within a memory device. [Figure 21] FIG. 21 is a diagram for explaining an example of a database search method. [Figure 22]FIG. 22 is a diagram for explaining an example of the movement of billable data via a network. [Figure 23] FIG. 23 is a diagram for explaining an outline of the billing control method. [Figure 24] FIG. 24 is a diagram for explaining a method for improving data reliability by distributing data recording locations. [Diagram 25] FIG. 25 is a diagram for explaining an application example of this embodiment in a factory. [Figure 26] FIG. 26 is a diagram for explaining an application example of this embodiment in a wide range of usage situations. [Figure 27] FIG. 27 is a diagram for explaining the data analysis method in this embodiment in a wide range of usage scenarios. [Figure 28] FIG. 28 is a diagram for explaining an application example of this embodiment in a mobile body that can be connected to a network. [Figure 29] FIG. 29 is a diagram illustrating a sensor / driving drive in a network-connectable moving body. [Diagram 30] FIG. 30 is a diagram showing the processing of an edge agent in a mobile object that can be connected to a network. [Diagram 31] FIG. 31 is a diagram for explaining a data analysis method within a network-connectable mobile body. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Hereinafter, the embodiment will be described with reference to the drawings. First, the chapters and sections relating to the contents of the description of the embodiment will be shown in the table of contents below.
[0010] Chapter 1 Overview of the Present Embodiment Section 1.1 Overall configuration of the network system Section 1.2 Device Section 1.2.1 Devices in general and the role of device agents Section 1.2.2 Memory Devices Section 1.2.3 Sensor Devices Section 1.3 Edge Devices and Edge Agents Chapter 2 Communication Data Used Within the Network Section 2.1 Communication Data Structures Used on the Internet Section 2.2 Communication data structures used on communication paths other than the Internet Section 2.3 Data control information and data structure in communication data body Chapter 3 Data communication methods within a network Section 3.1 Data collection and analysis Section 3.2 Data analysis with privacy protection and data disclosure / charging conditions Section 3.3 How to expand memory area within a domain Section 3.4 Maintenance information management and network communication Section 3.5 Database search methods Section 3.6 How to control pay-per-use charges Section 3.6.1 How to control pay-per-use when playing back stored data Section 3.6.2 How to control pay-per-use charges when changing data storage location Chapter 4 How to Ensure the Reliability of Distributed Data and Management Information Chapter 5 Other Embodiments of Edge Device Chapter 1 Overview of the Present Embodiment First, the overall configuration of the network system in this embodiment will be described, and then each of the components constituting the network system will be described.
[0011] Section 1.1 Overall configuration of the network system In the system according to this embodiment, as shown in Fig. 1, data communication is performed between different locations via a network line such as the Internet 2. In Fig. 1, the Internet 2 is shown as a specific example of a network line. However, the present invention is not limited to this, and a specific local network line may also be used. In addition, the communication medium constituting the network line may be either a wired line or a wireless line.
[0012] In this embodiment, targets to be connected to a network line, including the Internet 2, are classified into a distributed server group 4, edge devices 14, 16, and 18, and devices 20, 22, 32, 34, and 36. The edge device 16 may include the device 36, or the edge device 14 and the devices 22, 32, and 34 may be connected to each other via a network. In addition, IP (internet protocol) addresses, which will be described later in Chapter 2, may be set in advance in all edge devices 14, 16, and 18 and all devices 20, 22, 32, 34, and 36. This allows direct access to any of the edge devices 14, 16, and 18 or any of the devices 20, 22, 32, 34, and 36 from anywhere.
[0013] In this embodiment, the connection form of the network line including the Internet 2 is not limited to a "three-layer form of distributed server group 4 / edge device 14 / devices 22, 32, 34", a "two-layer form of distributed server group 4 / edge devices 16, 18", or a "two-layer form of edge device 14 / devices 22, 32, 34", but may be a "two-layer form of distributed server group 4 / device 20" in which the device 20 can be accessed directly from the distributed server group 4. In addition, when multiple devices 22, 32, 34 are connected to the edge device 14 as shown in FIG. 1, the network line can take a "tree form" with the edge device 14 at the apex. Furthermore, in the example shown in FIG. 1, the edge device 14, other edge devices 16, the portable edge device 18, and the memory device 20 are included in the tree form with the distributed server group 4 at the apex.
[0014] In this embodiment, in data communication via a network line, one device takes the lead in data communication, and the other devices participate in the data communication in a subordinate manner. Since data communication is not based on an equal relationship, it has the effect of enabling stable and well-controlled data communication even when multiple devices are connected to the same network line. That is, in the above-mentioned network line connection form, specifically, Distributed server group 4 > Edge devices 14, 16, 18 > Device The master-slave relationship in data communication (the left side is the master and the right side is the slave) is specified according to the order of priority. As a concrete example of such a master-slave relationship in data communication, which will be described later in Section 2.3, in most cases (1) the master sends a "request" (the slave receives the communication information of the "request"), and (2) the slave sends a "response" or a "status" in response to that (the master receives the communication information of the "response" or "status").
[0015] In this way, the classification method for clarifying the hierarchical relationship in data communication processing using a network line may be other classification methods than the embodiment in Fig. 1. That is, when other classification methods are used for the "three-layer form", "two-layer form" or "tree form" corresponding to the above classification method, other "multi-layer form (four or more layers) form" or "non-tree form" may be adopted.
[0016] Furthermore, in this embodiment, the subordinate side may have an autonomous processing function. As a result, The resulting effect on the network is the opposite of the above, which is: (1) the subordinate side sends a "request" (the dominant side receives the "request" communication information), and (2) the dominant side sends a "response" or "status" in response (the subordinate side receives the "response" or "status" communication information).
[0017] As a method for providing the subordinate side with an autonomous processing function, the edge devices 14, 16, 18 and the devices 20, 22, 32, 34, 36 may be provided with the functions of the agents 40, 42, 44, 46, 47, 48. As an example of realizing this agent function, a combination of a CPU (Central Processing Unit) and a memory in which a program is pre-recorded, or a dedicated IC (Integrated Circuit) that realizes a simple agent function may be built in. Also, the internal configuration of the dedicated IC may be composed of only a combination circuit of simple logic circuits, or may be a configuration capable of forming programmable logic.
[0018] Here, as the autonomous processing contents performed on the subordinate side, the edge devices 14, 16, 18 and the devices 20, 22, 32, 34, 36 may perform the following processing: "management of the internal state of the dedicated IC", "autonomous control of data processing inside the dedicated IC", "simple data analysis and data selection of the obtained data", "creation of data generated by processing based on the obtained data", "control of transmission of the results of data analysis and selected data to the leading side", "detection of abnormalities in the internal state of the dedicated IC and advance risk detection on the data recorded in the dedicated IC", "control of transmission of the results of abnormality detection inside the dedicated IC and advance risk detection to the leading side", "management of maintenance information and control of transmission", "management of the state of the communication partner (leading side)". In particular, the edge devices 14, 16 may automatically calculate the billing information related to the disclosure of data within the range under their management by using the management information 62, 66 described later. In addition, when the billing information is automatically calculated, the value of the billing (including free) may differ depending on the attributes of the data handled (data belonging to the user, data belonging to the administrator of the memory and system, etc.).
[0019] As described above, in a network line where a master-slave relationship is defined in data communication, by giving the slave side autonomous processing capabilities, the processing efficiency of the entire network system is improved. That is, for example, when a large number of slave sides that do not have agent functions are connected to a single master side through a network, the burden on the master side becomes enormous in order to smoothly control the operation of all the slave sides. In contrast, by giving the slave side agent functions as in this embodiment, the burden on the master side is greatly reduced.
[0020] The distributed server group 4 shown in Fig. 1 is composed of one or more servers. In the embodiment described here, a server is defined as a "service provider to a user via a network line (which may include the Internet 2)." Therefore, as a specific form of the distributed server group 4, for example, any of the following may be configured: "different servers are connected to the same network (the Internet 2) for each service content provided to the user," "one server connected to a network line (which may include the Internet 2) provides a plurality of different services to the user," "one interface server is connected to the network line (which may include the Internet 2), and multiple servers capable of parallel processing are connected to this interface server behind the network line."
[0021] In addition, the functions of the server (services provided to users) may include any functions, including but not limited to a client server that provides integrated management within a specific domain, a web server involved in displaying web homepages, and a database server that provides centralized management of data within a common domain.
[0022] Section 1.2 Device Section 1.2.1 Devices in general and the role of device agents In the embodiment described here, a device is defined as a "composite having a specific unique function and a communication function." Devices having a sensor function as the specific unique function are called sensor devices 32, 34, and 36, and devices having a memory function are called memory devices 20, 22, and 26. However, the present invention is not limited to this, and devices having some kind of driving function may be defined as actuator devices, devices having a display function as display devices, and devices having a calculation function as processor devices.
[0023] The communication method involved in the communication function within the device may be either wired communication or wireless communication. Also, the connection form may be "a form directly connected to the Internet 2 like the memory device 20 in FIG. 1", "a form that exists independently and is connected to an intranet like the sensor devices 32, 34 and memory device 22 in FIG. 1", or "a form that is incorporated in the edge device 16 and is involved in communication within the edge device like the sensor device 36 and memory device 26 in FIG. 1". Any of the above forms are acceptable, and the device may take any other form.
[0024] In this embodiment, as described in section 1.1.1, agents reside in the devices 20, 22, 26, 32, 34, and 36 (although not shown in FIG. 1, agents may reside in the sensor devices 32, 34, and 36). Among the agents in the devices 20, 22, 26, 32, 34, and 36, an agent that can directly connect to the Internet 2 is called a small agent 40, and an agent that connects to other parties through a network is called a device agent 42, 46. A communication protocol used for data communication between the small agent 40 and the device agent 42, 46 is different. As will be described later in section 2.1 using FIG. 2, the communication protocol used in the Internet 2 requires the transfer of a header group from the physical layer header PHYHD to the TCP header TCPHD. In contrast, in data communication outside the Internet 2, data communication of only the data control information KEYVAL (and the physical layer header PHYHD and MAC layer header preceding it) is permitted.
[0025] Section 1.2.2 Memory Devices Although not shown, the memory devices 20, 22, and 26 shown in FIG. 1 are composed of a data storage memory area, a communication control unit, and a CPU. In addition, a memory area dedicated to the CPU is built in, It may be used for "control programs for implementing the agent functions (small agent 40 and device agents 42, 46) described in Sections 1.1 and 1.2.1", "temporary storage of data for creating communication data conforming to a communication protocol", etc. Incidentally, instead of having a memory area dedicated to the CPU, the control programs and communication data may be stored in specific areas divided within the data storage memory area.
[0026] 1 and data (analyzed) obtained by analysis in the edge agent 44 are sequentially recorded in the data storage memory area. Furthermore, management information 62 and information on the common keys 52, 54, 56 may be stored in a predetermined area in the data storage memory area.
[0027] The autonomous processing contents performed within the device have already been explained in Section 1.1. Examples of the internal state autonomously managed by the small agent 40 or device agent 42, 46 within the memory device 20, 22, 26 include not only the recording capacity within the data storage memory area and the sampling rate related to the writing speed, but also the number of times the data storage memory area can be rewritten and life information related to the retention period of the recorded data.
[0028] In addition, examples of risk information to be detected in advance regarding abnormalities in the internal state and recorded data include the risk of loss of recorded data that occurs when the deadline for storing the recorded data in the memory devices 20, 22, and 26 approaches, and the risk of loss of old recorded data due to the overwriting process of new data that occurs when the recording capacity of the memory devices 20, 22, and 26 is exceeded.
[0029] On the other hand, examples of the state to be managed regarding the network communication partner (controlling side) include the data transfer speed of the controlling side and the recording capacity of the memory area of the memory devices 20, 22, 26 possessed within the controlling side.
[0030] Section 1.2.3 Sensor Devices The sensor devices 32, 34, and 36 each have a sensor unit specific to that sensor, together with a communication control unit. In this embodiment, the sensor unit is not limited to collecting voice, image, and video, but is also capable of collecting all kinds of data, such as temperature, humidity, pressure, vibration, acceleration, and angular velocity.
[0031] As in Section 1.2.2, a memory area and a dedicated CPU (and its program storage area) may also be built in.
[0032] In relation to the contents explained in Section 1.1, examples of internal states autonomously managed by the small agents or device agents in the sensor devices 32, 34, 36 include sensor type information, processing performance of the sensor unit, and recording capacity (of the memory area) in the sensor device. Information on the processing contents when special processing can be performed in the sensor devices 32, 34, 36 may also be managed.
[0033] In particular, in the case of the sensor devices 32, 34, and 36, the abnormalities and risks in the internal state that should be detected correspond to degradation or failure of the sensor function (including the sensor performance).
[0034] On the other hand, as an example of the state to be managed regarding the network communication partner (initiative side), the data transfer speed of the initiative side, the recording capacity of the memory area possessed within the initiative side, etc. may be managed within the small agent or device agent.
[0035] Section 1.3 Edge Devices and Edge Agents In this embodiment, "devices that can be connected to a network such as the Internet 2 or an intranet" are defined as edge devices 14, 16, and 18. A location close to an end user may be called a front end. The term edge device also refers to devices that may be used on the front end side.
[0036] The edge devices 14, 16, and 18 may be independently network-connected to the distributed server group 4 via wired or wireless lines.
[0037] Specific examples of the edge devices 14, 16, and 18 may be classified into "stationary type," "portable type," "mobile type," and the like. Here, the following specifically corresponds to each type.
[0038] Examples of stationary devices include personal computers, routers (gateways), home appliances with built-in CPUs (televisions, refrigerators, washing machines, audio equipment, etc.), intelligent information transmission means (landline telephones and stationary videophone systems), distribution boards with agent functions, and surveillance systems (including video surveillance and weather monitoring).
[0039] Examples of portable devices include smartphones, tablets, mobile phones, wearable devices (such as watches or glasses with built-in agent functions), and portable health measurement devices (pedometers (registered trademark), thermometers, pulse and heart rate monitors, devices for measuring oxygen concentration and blood glucose levels in the blood, etc.).
[0040] Examples of mobile vehicles include connected cars, connected buses, connected trucks, and connected ships.
[0041] However, in this embodiment, the edge devices 14, 16, and 18 include all “connectable devices”.
[0042] As described in Section 1.1 using FIG. 1, the edge devices 14, 16, and 18 may have an agent function (autonomous processing function). The functions of the edge agents 44, 47, and 48 are achieved by the specific implementation method described in Section 1.1. An example of the edge agent 44 performing the above-mentioned "data analysis and data selection of obtained data" function is described below. The edge agent 44 (47, 48) may perform data analysis on the original sensor data a, b, and c collected from the sensor device 36 in the edge device 16 and the sensor devices 32 and 34 connected to the edge device 14, or the original data obtained via the Internet 2 or an intranet line, and store the analysis results (analyzed data) a', b', and c' in the memory device 22 together with the original data a, b, and c. The data analysis is not limited to a certain level of advanced image (video) analysis / analysis, but also includes recognition processing such as character recognition and image recognition.
[0043] Alternatively, the edge agents 44, 47, and 48 may automatically calculate the billing information within the range managed by the edge devices 14, 16, and 18, and notify the distributed server group 4 on the leading side of the calculation results.
[0044] As a specific example of the user I / F unit 8 shown in the portable edge device 18 in Fig. 1, a component capable of simultaneous input and output (such as a touch panel) may be used. However, the user I / F unit 8 is not limited to this and may be divided into an input unit and an output unit, and the input unit may correspond not only to a touch pad, a voice input unit, an imaging unit, a keyboard, a character input unit, etc., but also to any sensor device described in Section 1.2.3 (sensor data is input into the portable edge device 18). Also, as an output unit, not only a structure for outputting voice or a structure for displaying an image (video) may be associated, but also any display or driving device having a driving mechanism may be associated with the output unit.
[0045] In addition, although not shown in FIG. 1, the edge devices 14 and 16 may include components similar to the user I / F unit 8 or the input unit and output unit.
[0046] Chapter 2 Communication Data Used Within the Network The communication data structure used when performing network communication in the system of this embodiment will be explained in Chapter 2.
[0047] Section 2.1 Communication Data Structures Used on the Internet The structure of communication data used on the Internet 2 in Figure 1 is shown in Figure 2. Regardless of whether the communication medium on the Internet 2 is wired or wireless, communication data is transmitted intermittently in chunks. This chunk corresponds to the physical layer frame PPDU in Figure 2(f).
[0048] As shown in Fig. 2(a), this one physical layer frame PPDU is composed of the following in the order of transmission from the sender to the receiver (from the front or from the earliest information sent out): physical layer header PHYHD, MAC layer header MACHD, IPv6 header IPv6HD, TCP header TCPHD, data control information and communication data body KEYVAL, and error check code CRC. On the other hand, when this data arrangement is viewed from the viewpoint of Fig. 2(f), it can also be recognized that "the physical layer header PHYHD is placed at the beginning of the physical layer frame PPDU, followed by the physical layer data or physical layer payload PSDU, and within this physical layer data / payload PSDU, the MAC layer header MACHD, IPv6 header IPv6HD, TCP header TCPHD, communication middleware data APLDT, extended data EXDT, and error check code CRC are stored in this order."
[0049] Similarly, the area after the MAC layer header MACHD can be regarded as MAC layer data or the MAC layer payload MSDU, the area after the IPv6 header IPv6HD can be regarded as IPv6 layer data or the IPv6 payload IPv6DU, and the area after the TCP header TCPHD can be regarded as TCP layer data or the TCP payload TCPDU.
[0050] The wired communication used in this embodiment can be any communication method, from local video signal transmission lines and audio signal transmission lines to telephone lines and Internet-related Ethernet (registered trademark) compatible communication. In addition, the wireless communication can be any wireless communication method, such as short-distance wireless methods such as ZigBee (registered trademark), Bluetooth (registered trademark), UWB (Ultra Wide Band), and Z-Wave, medium-distance wireless methods such as Wi-Fi (Wireless Fidelity) and EnOcean, and long-distance wireless methods such as 2G / PDC, GSM (registered trademark) (Second Generation / Personal Digital Cellular, Global System for Mobile Communications (registered trademark)), 3G / CDMA (Third Generation / Code Division Multiple Access), and WiMAX (World wide Interoperability for Microwave Access).
[0051] Then, the data structures in the physical layer header PHYHD and the MAC layer header MACHD appropriate for each of these communication methods are determined in advance. Therefore, in this embodiment, the physical layer header PHYHD and the MAC layer header MACHD are switched in response to data communication in each communication method, for both wired communication and wireless communication. In this way, in this embodiment, by providing the hierarchical structure shown in Fig. 2 in the communication data, it is possible to transmit and receive communication data conforming to any communication method by simply switching a part of the communication data, regardless of whether the communication method is wired communication or wireless communication.
[0052] The IP address mentioned in Section 1.1 is written in the area of the IPv6 header IPv6HD in Figure 2(d). The structure of this IPv6 header IPv6HD is shown in Figure 3. In particular, it is important to have an area for storing the sender's and receiver's IP address information SIPADRS and DIPADRS, each of which is written in 16 bytes as shown in Figure 3(b). If this IP address is preset in all edge devices 14, 16, and 18 and all devices 20, 22, 26, 32, 34, and 36 in the world (Section 1.1), it will be possible to communicate data between specific edge devices 14, 16, and 18 and specific devices 20, 22, 26, 32, 34, and 36 from anywhere in the world.
[0053] The IP packet related information IPPKT is stored in the first 8-byte area shown in Fig. 3(b) formed in the IPv6 header IPv6HD. The IPv6 header IPv6HD is composed of areas for storing the head information SIPHD, IPv6 data / payload length information LIPv6DU, header type identification information NXHD immediately following the IPv6 header, and remaining number of passable nodes information HPLMT, as shown in Fig. 3(c), and is arranged in the above order. This IPv6 data / payload length information LIPv6DU indicates the data size of the IPv6 data / payload IPv6DU shown in Fig. 2(d), and the area for storing this information has a size of 2 bytes.
[0054] In addition, within the 7.5 byte area of the head information SIPHD, version information IPVRS consisting of 4 bytes, communication class information IPCLS consisting of 1 byte, and communication type label information IPLBL consisting of 2.5 bytes are arranged in that order from the beginning.
[0055] 2 shows that TCP (Transmission Control Protocol) is used to specify the communication path. However, this is not limited to this embodiment, and as another embodiment, a UDP header may be placed immediately after the IPv6 header IPv6HD to use UDP (User Datagram Protocol).
[0056] Section 2.2 Communication data structures used on communication paths other than the Internet In this embodiment, it is possible to rearrange the optimal hierarchical structure according to the communication path using the communication data structure shown in Fig. 2 as a reference. In this way, by providing a hierarchical structure to the reference communication data, the communication data for each communication path can be optimized, which has the effect of enabling efficient data communication. In addition, it is possible to share a part of the hierarchical structure between different communication paths, and it is possible to share a part of the communication data structure in the communication control unit built into the edge devices 14, 16, and 18 and the devices 20, 22, 26, 32, 34, and 36.
[0057] For example, since the edge device 16 in Fig. 1 has a built-in memory device 26 and a sensor device 36, data can be transferred directly between the memory device 26 and the edge agent 47 or between the sensor device 36 and the edge agent 47. When transferring data in this manner, there is no need to specify an IP address, and the complex data hierarchical structure shown in Fig. 2 becomes redundant. Therefore, in this embodiment, only the data control information and the communication data body KEYVAL in Fig. 2 are transferred between the memory device 26 and the edge agent 47 or between the sensor device 36 and the edge agent 47.
[0058] On the other hand, when wireless communication such as Wi-Fi or ZigBee is required between the sensor devices 32, 34 and the edge device 14 in Fig. 1 or between the memory device 22 and the edge device 14, a physical layer header PHYHD and a MAC layer header MACHD (Fig. 2) conforming to the wireless communication standard are required in the communication data. Therefore, in this embodiment, only the data control information and the communication data body KEYVAL are directly placed in the MAC layer data or the MAC layer payload MSDU for this communication path (the placement of the IPv6 header IPv6HD and the TCP header TCPHD is omitted). This method of data communication in which some header placements are deleted while maintaining the placement order of each header shown in Fig. 2(a) is called rearrangement of the hierarchical structure in the communication data.
[0059] Section 2.3 Data control information and data structure in communication data body The data structure in the data control information and communication data body KEYVAL in Fig. 2 is shown in Fig. 4. In this embodiment, the data control information and communication data body KEYVAL are composed of data control information KEYPRT arranged in the preceding position and communication data body VALPRT arranged in the following position (Fig. 4(b)).
[0060] As shown in Fig. 4(c), the prefix PRFIX is placed in the first byte area of this data control information KEYPRT. In this embodiment, "11111111" is set in the prefix PRFIX in bit representation. Since "1" is consecutive for one byte in this way, it is easy to synchronize (reset) timing within the communication control units of the edge devices 14, 16, and 18 and the devices 20, 22, 26, 32, and 34.
[0061] In this embodiment, data communicated between networks is configured by a combination of preceding control information CNTINF (this part may be called a key) followed by the communication data body VALPRT (this part may be called a value). By simplifying the basic configuration of communication data in this way, not only can the processing in the communication control units of the edge devices 14, 16, and 18 and the devices 20, 22, 26, 32, and 34 be simplified, but also, as explained in Section 2.2, it is possible to achieve partial commonality of communication data within different communication paths.
[0062] In this embodiment, the data size that can be communicated in one data communication is set to 2 MB or less, and when a large amount of data communication is required continuously for a long period of time, the data is divided into multiple physical layer frames PPDU (FIG. 2(f)) and communicated. In this way, by dividing the data communication into data exceeding 2 MB and communicating it, it is possible to prohibit long-term occupation of the communication path and enable emergency information communication.
[0063] In addition, the settable data size of the control information CNTINF is permitted to be in the range close to 2M, making it possible to communicate complex control information CNTINF.
[0064] In this way, in this embodiment, the size of the control information CNTINF and the communication data body VALPRT can be set arbitrarily, increasing the flexibility of data communication. Accordingly, in order to enable the size of the control information CNTINF and the size of the communication data body VALPRT to be communicated individually, as shown in Fig. 4(c), the areas for notifying the control information size CI_SZ and the communication data body size DAT_SZ are set to 4 bytes each.
[0065] Here, by making it possible to notify information on the control information size CI_SZ and the communication data body size DAT_SZ prior to the control information CNTINF and the communication data body VALPRT, preparation for receiving data can be smoothly carried out in the communication control units in the edge devices 14, 16, and 18 and the devices 20, 22, 26, 32, and 34.
[0066] For example, if an imaging unit is built into sensor device 32 in Fig. 1 and an audio input unit is built into sensor device 34, and image change data and audio change data can be collected in a time series, date and time information at the time of data collection is also required along with the collected sensor data. Also, if a light receiving unit (capable of detecting changes in light amount) is built into sensor device 36 in Fig. 1 and changes in the detected light amount over time are appropriately collected, date and time information at the time of data collection is also required along with the sensor data.
[0067] In order to meet the above demand, in this embodiment, as shown in Fig. 4(d), the sensor data continuously collected by the sensor is divided into data bodies DATA-1 and -2 every 188 bytes, and data collection time information (which may include the collection date) of each data body DATA-1 and -2 may be inserted at the leading position of each data body as 4-byte time stamps TSTP-1 and -2, respectively. This makes it possible to check the data collection time information for each data body DATA-1 and DATA-2 when reproducing the sensor data continuously collected by the sensor, which has the effect of enabling efficient and highly accurate data analysis (within the edge agent 44 in Fig. 1).
[0068] In this embodiment, in addition to the above sensor data, the management information 62 in Fig. 1 and information on the common keys 52, 54, 5652, 54, 5652 may be transmitted as data. In this case, the date and time information on the data collection or the data creation or update is not necessarily required to be mixed into the communication data body VALPRT, and may be written as part of the file name or set as attribute information of the file, for example. Therefore, in this case, the data bodies DATA-1 and -2 may be arranged closely together without mixing and arranging the time stamps TSTP-1 and -2 as shown in Fig. 4(d), and the management information 62 and information on the common keys 52, 54, 5652, 54, 5652 may be arranged therein.
[0069] Another application example of the data structure in the communication data body VALPRT shown in Fig. 4(d) is shown in Fig. 5. In Fig. 5, management information on the data contents and data attributes of the communication data body VALPRT itself is stored together in a management packet MNPKT and inserted appropriately inside the communication data body VALPRT (the management packet MNPKT is multiplexed).
[0070] In the prior art, created data was often stored for a long time near the place where it was created. In contrast, in this embodiment, as described later in Chapter 3, the storage location (recording location) of stored data can be moved appropriately to a different memory area (in the memory devices 20, 22, 26 or the memory unit 6). When the storage location (recording location) of specific data is moved to a different memory area in this way, there is an increased risk that the management information of the moved specific data will be lost along the way. By reproducing the management information inserted in advance inside the communication data body VALPRT as shown in FIG. 5, there is an effect that even if the management information stored in another location is lost, it can be easily restored. This improves the reliability of the communication data body VALPRT.
[0071] In the application example of Fig. 5(b), the communication data body VALPRT is composed of one or more communication data body packs VALPCK-1, VALPCK-2, and management packets MNPKT-1, MNPKT-2 are placed at the head position of each communication data body pack VALPCK-1, VALPCK-2. The break position of the communication data body packs VALPCK-1, VALPCK-2 may correspond to the change position of the contents in the communication data body VALPRT, or may be divided at a predetermined elapsed time. Alternatively, the communication data body packs VALPCK-1, VALPCK-2 may be mechanically divided at a predetermined data size.
[0072] 5(b), M data bodies DATA-1 to DATA-M each consisting of 188 bytes are contained in the communication data body pack VALPCK-1, and N data bodies DATA-1 to DATA-N are contained in the body pack VALPCK-2. As described above, when the breaks between the communication data body packs VALPCK-1 and VALPCK-2 differ depending on the contents of the communication data body VALPRT, the values of M and N differ (M ≠ N).
[0073] Even when the data is divided at regular time intervals, the data size of each of the packs VALPCK-1, VALPCK-2 in the communication data body differs if the video compression rate is changed according to the video scene. In contrast, when the packs VALPCK-1, VALPCK-2 in the communication data body are mechanically divided at a predetermined data size, the sizes of all of the packs VALPCK-1, VALPCK-2 in the communication data body are the same (M=N).
[0074] Incidentally, as a method for automatically setting the break positions of packs VALPCK-1 and VALPCK-2 in the communication data body in response to the change position of the content within the communication data body VALPRT, the edge agent 44 (or a device agent implemented in the sensor device 32, not shown) may automatically analyze the sensor data collected by the sensor device 32 and automatically set the size of packs VALPCK-1 and VALPCK-2 in the communication data body, as shown in step 38 of Figure 14 (see Section 3.2).
[0075] In addition, this embodiment is not limited to the structures of Figures 4(d) and 5(b), and may be, for example, a structure in which a timestamp TSTP is not inserted, or a structure in which a management packet MNPKT is inserted at regular intervals without forming packs VALPCK-1 and VALPCK-2 in the communication data body.
[0076] As shown in FIG. 5(c), management packet identification information MNPK_ID is placed at the beginning of each management packet MNPKT. As a specific code content in this management packet identification information MNPK_ID, a special code that does not occur in other parts of the communication data body VALPRT may be set. Generally, most of the data communicated on a network is transmitted in modulated code. For example, when the upper limit value of the number of consecutive "1"s (without "0"s placed in between) in the modulated binary code is m, if the management packet identification information MNPK_ID includes a code of consecutive "1"s m+n times (n is a positive value equal to or greater than 1), a special code that does not occur in other parts of the communication data body VALPRT can be set. This makes it easier for the edge agent (or device agent, small agent) to extract the position of the management packet MNPKT.
[0077] As mentioned above, the size of the timestamp TSTP is 4 bytes and the data body chunks DATA-1 and DATA-2 are 188 bytes, so making the size of the management packet MNPKT an integer multiple of 192 bytes makes processing easier on the agent side. Also, the size of the management packet MNPKT is made variable so that the information inserted inside can be flexibly changed depending on the contents of the communication data body VALPRT. Correspondingly, the management packet size MPK_SZ for each management packet MNPKT is placed immediately after the management packet identification information MNPK_ID. This makes it easier for edge agents (or device agents, small agents) to distinguish between management packets MNPKT and other packets.
[0078] Furthermore, by including in the management packet MNPKT information on the pack size for each pack VALPCK-1, VALPCK-2 in the communication data body (pack size VPK_SZ in the communication data body), it becomes easy for an edge agent (or device agent, or small agent) to extract only the management packet MNPKT from the communication data body VALPRT.
[0079] In this embodiment, the management information for the sensor data collected by the sensor devices 32, 34, and 36 may be stored in the management packet MNPKT as information to facilitate data search, information to manage the time and period related to the data, information regarding whether the data can be made public and information regarding charges at the time of publication.
[0080] If the following information that facilitates data search is added to the sensor data, it becomes easy to search for required data on the Internet 2. In Section 1.1, it was explained that the edge devices 14, 16, 18 and various devices 20, 22, 26, 32, 34, 36 are provided with the edge agents 44, 47, 48, the small agent 40, and the device agents 42, 46, so that the obtained data can be analyzed. Then, the keywords and symbols / icons extracted as the data analysis results are tagged and stored in the data detection tag information DSRCTG, and the management packet MNPKT is automatically generated in the management packet automatic generation step 51 in FIG. 14. Note that the information that can be stored in the data search tag information DSRCTG is not limited to this, and any information related to data search may be stored.
[0081] Among the period management information TMMN that can be stored in the management packet MNPKT, the information of the data creation date DYMD means the date and time when the data was created. Here, the method of describing this date and time information adopts the date and time display method defined in ISO (International Standard) 8601, as described later in this section using FIG. 8. One type of this data creation date and time means the date and time when the sensor data was collected by the sensor devices 32, 34, and 36. In parallel with this, processed data is also created from the sensor data, as shown in steps 34 and 36 in FIG. 14 (described later in section 3.2). Therefore, for processed data or analyzed data, the information on the date and time when the data was processed or the date and time when the data was analyzed corresponds to the information of the data creation date DYMD.
[0082] In Japan, "time machine memorabilia preservation" was once popular. For example, when graduating from elementary school or junior high school, there was a custom of burying a memorabilia under the ground in the schoolyard, and digging it up 20 or 30 years later to reminisce about the past. In order to reminisce about the past in this way, it is possible to make certain data unavailable for a certain period of time (for example, 20 or 30 years) after it has been saved. To make this possible, a non-transfer period NTTN may be stored in the period management information TMMN, and transfer from the memory device 22 (or memory unit 6) in which the data is saved may be prohibited during that period. Similarly, if data communication (transfer) via the network is permitted but playback is prohibited for a certain period of time, information corresponding to the non-playback period NDSTM (for example, ancillary data such as a message or still image data) may be stored in the area of the memory device 22 (or memory unit 6) in which the non-playback period NDSTM is recorded.
[0083] In the patent systems of many countries, a non-disclosure period is set for 1.5 years from the date of application for the convenience of applicants. In this way, there is data that requires "permission to disclose data after a specific period has elapsed since the date of data creation." To meet this requirement, in this embodiment, a non-disclosure period NPUBTM may be set in an area in the management packet MNPKT that can store period management information TMMN. For example, data can be made public from the date and time obtained by adding this non-disclosure period NPUBTM to the data creation date DYMD.
[0084] As a method of utilizing data collected by the sensor devices 32, 34, and 36 and data created by users, there are social needs such as "data may be made public if the scope of disclosure is limited" or "data may be made public if a disclosure fee can be collected." In this embodiment, information regarding data disclosure and information regarding charges at that time can be communicated together with the data itself. As a result, it is possible to enable many people to utilize the stored data, which has the effect of promoting social revitalization. Furthermore, the information stored as the period management information TMMN is not limited to the above, and any information related to time or period may be stored here.
[0085] An area for storing the data disclosure / charging information DTPUB may be set in the management packet MNPKT as an area capable of storing the above data disclosure / charging related information. By placing the data manager identification information (ID) DMN_ID, which clearly indicates the person (or organization) who decides whether or not data can be disclosed and the amount to be charged when data is disclosed, at the head position of the data disclosure / charging information DTPUB, the distributed server group 4 and various agents 40, 42, 44, 46, 47, 48 can quickly determine whether or not data can be disclosed. "Data disclosure" here does not only mean data viewing, but also means "permission to use data," including the use and processing of the data.
[0086] The data disclosure class DPUBCL may be specified for each data. The broadest data disclosure level is considered to be "available (viewing / using / processing) by anyone" using an Internet 2 line. This disclosure level is not limited to within the Internet 2 line, and allows viewing on paper by printing out data or copying data to a non-network data storage medium such as a USB memory stick and using the data.
[0087] In this embodiment, the next narrowest data disclosure level may be disclosure management within a specific network domain managed by a specific distributed server group 4. This specific network domain means, for example, a case where a line of the Internet 2 managed by a specific organization can be accessed using a user ID and password 10 (FIG. 1). In this case, the specific organization is assumed to be a specific nation, company, NPO, service target group, etc.
[0088] In the above case, it is possible that only group members who belong to this specific organization but are involved in a specific business, or group members who span multiple different organizations but participate in activities with a common purpose, such as a forum, are allowed to use data. The data disclosure class DPUBCL may have a narrower scope of disclosure than the data disclosure within the above network domain. These group members may include members participating in a specific predefined SNS (Social Network Service) or members registered on a specific mailing list.
[0089] The narrowest scope of the data disclosure class may be stipulated as disclosure only to the data creator and / or people designated by the data creator. In particular, the data disclosure class DPUBCL in Fig. 5(e) means "a class that stipulates a data disclosure scope that allows free disclosure", but this embodiment is not limited to this, and the data disclosure scope may be stipulated as being below a specific disclosure fee.
[0090] For example, there are users who think, "Free data publication is prohibited, but data publication is acceptable if income from data publication fees can be obtained." In order to meet this demand, in this embodiment, the amount of income that can be obtained when data is published can be set in detail for each data publication class. That is, the publication fee FEEOPN, the publication fee within the network domain FEEDMN, and the publication fee within a specific group member FEEMMB when data is completely open on the Internet 2 may be set individually in the recording area of the data publication / charging information DTPUB.
[0091] As a method for setting the publication fee, the monthly publication fee for each pack VALPCK in the communication data body may be set in dollars or cents. Also, instead of setting an amount in the above area, "No", "forbiddance", or "forbidden" may be written to clearly indicate that "data publication is prohibited".
[0092] As will be described later in section 3.2 using FIG. 12, depending on the sensor data, the number of users involved in data disclosure / charging may change from moment to moment. In that case, for example, the pack VALPCK in the communication data body may be divided every time the users involved in data disclosure / charging change, and the data disclosure class and disclosure fee may be set in detail for each pack VALPCK in the communication data body. In this way, in this embodiment, the data disclosure / charging information DTPUB can be set for each management packet MNPKT arranged for each pack VALPCK in the communication data body, so that there is an effect that data disclosure / charging can be managed in detail even in a situation where the users included in the data change frequently. Note that the information that can be stored in the data disclosure / charging information DTPUB is not limited to this, and any information related to data disclosure, charging, or fees may be stored in this area.
[0093] The description method in the control information CNTINF in FIG. 4(c) is shown in FIG. 6. By describing the control type CTTYPE at the head position in this control information CNTINF, it is possible to quickly respond to reception in the communication control units in the edge devices 14, 16, and 18 and the devices 20, 22, 26, 32, and 34. In addition, the description method in the control information CNTINF changes with each version upgrade when standards are established. Therefore, in order to quickly respond to the successive changes, " / " is placed immediately after the control type CTTYPE and version information VERINF is described. In addition, as will be described later with reference to FIG. 7, the corresponding parameters required for each content of the control type CTTYPE are different. Therefore, " / " is placed immediately after the version information VERINF, and the corresponding parameter information PARMAT is described thereafter.
[0094] An example of the description information in the parameter information PARMAT in this embodiment is shown in FIG. 6(b). The original sensor data (and analyzed data obtained as a result of analyzing the sensor data) collected from the sensor devices 32, 34, 36 (FIG. 1) is stored (recorded or saved) in the memory device 20 or 22, 26 or the memory unit 6 in the distributed server group 4. The storage location is described in the description location of the data storage location information TENTID in "{-}". At that time, it is described in URI (Uniform Resource Identifier) corresponding to the Internet 2. Generally, the URI is described from a domain name such as " / / www.**.co.jp / $$$" in many cases as a method of describing the URI. However, in the case of an isolated existence such as the memory device 20, the IP address described in Section 1.1 or Section 2.1 using FIG. 3(b) may be directly described. In addition, when the IP address is directly described as the URI, the partition ID therein and the drive ID information corresponding thereto may also be described subordinately.
[0095] In the description example of FIG. 1, data communication related to the sensor data obtained from the sensor devices 32, 34, 36, the management information 62, and the common keys 52, 54, 5652, 54, 5652 is shown. However, in this embodiment, it is not limited to this, and any kind of data can be handled, such as non-file data and data after quantization of analog data. In this case, data recorded in a file format such as the management information 62 and the common keys 52, 54, 5652, 54, 5652 is provisionally called PC data, data such as still images is provisionally called image data, video and audio data is provisionally called stream data, and data (sensor data, etc.) that continuously detects a time change state for a predetermined period of time is provisionally called real-time data. However, it is not limited to such classification, and another classification method may be used, such as classifying image data, stream data, and real-time data collectively as object data. Such data type information may be described within " / - / " as shown in FIG. 6(b).
[0096] In order to efficiently receive all types of data, not limited to the sensor data obtained from the sensor devices 32, 34, and 36 in Fig. 1, data identification information DATAID for each communicated data may be written in the form of "{-}" in the parameter information PARMT. Furthermore, various attributes related to communication data or communication methods are written together in "{-}" as attribute information ATRIBT. When there are multiple contents of attribute information ATRIBT or multiple pieces of parameter information PARMT, each may be written in the form of "-":"$$$", and each may be connected with a comma (,).
[0097] An example of the control contents of data communication handled in this embodiment is shown in Fig. 7. As the control type CTTYPE described in Fig. 6(a), "GET" related to requests and responses for data reception and data collection, "PUT" related to data transmission and storage control in the memory devices 20, 22, 26 or memory unit 6, "DELETE" related to data deletion, etc. may be defined. Also, other types of control types CTTYPE may be defined without being limited to the above.
[0098] In this embodiment, the contents described as the parameter information PARMAT in Fig. 6(a) are preset as corresponding parameter contents as shown in Fig. 7. For example, the contents of request parameters related to a "request" (section 1.1) and response parameters related to a "response" (section 1.1) are predefined as parameters corresponding to "GET". Similarly, the contents of request parameters are predefined for "PUT" and "DELETE" as control types CTTYPE.
[0099] It has already been explained in section 1.1 that the slave side transmits "status" to the master side. As a type of "status", for example, "ALERT" may be defined, which issues an advance warning (alarm notification) of a risk in the sensor devices 32, 34 or the memory devices 20, 22, 26. The contents of the status parameters for this "ALERT" are specified in advance.
[0100] Fig. 8 shows an example of description in the control information CNTINF according to the description rules explained in Fig. 6. As mentioned above, the sensor data continuously obtained from the sensor devices 32, 34, and 36 within a predetermined period is classified as real-time data (RT data).
[0101] An example of a description for a request using "GET" for this real-time data is shown in Fig. 8(a), and an example of a description for a response using "GET" is shown in Fig. 8(b). Furthermore, an example of a description for a request using "GET" is shown in Fig. 8(c). In either case, the identification information for the real-time data being communicated is represented by "$$$", and is described as "RTdata_id":"$$$". The “real-time data” in Figures 8(b) and 8(c) refers to the communication data body VALPRT (Figure 48(b)), and is added for reference.
[0102] When requesting to receive real-time data, it is necessary to set the period during which this real-time data was collected. Therefore, the collection period of the requested real-time data is described as "Time-Zone":"###-##&". Here, "###" indicates the data collection start date and time information (data collection date and time information for the location where communication begins), and "##&" indicates the data collection period information (data collection period information up to the location where communication ends).
[0103] In this embodiment, the date and time display method defined by ISO (International Standard) 8601 is adopted as the method for displaying date and time information. For example, to display "5 minutes from 9:49:58 on August 27, 2015", it is displayed as "2015-08-27T09:49:58-05:00". By describing the above-mentioned "period information" instead of describing the end date and time of data collection (transmission start location), not only is the data size of the entire description information shortened, but fine time interval control can be easily and accurately performed. In addition, by using the description method that has already been standardized as a global standard as described above, it is also possible to commonly manage time anywhere in the world.
[0104] The party that requests "GET" does not know in advance the size of the communication data body VALPRT that will be communicated. In contrast, by notifying the data size in advance as shown in Figure 8(b), the size of the memory area to be prepared on the receiving side (to be used for recording / storage) can be known. This has the effect of smoothing the preparation for recording / storing or displaying data on the receiving side. In Figure 8(b), "content-length" indicates the data size of the communication data body VALPRT, and the actual data size is described in bytes in "%%%".
[0105] As another application example based on Fig. 8(c), Fig. 8(d) shows an example of a description that specifies the parameter information PARMAT in Fig. 6(a) in more detail. Here, it is possible to describe search related information SRCINF used for data search, period management information TMMN related to various time information (period information) in data management, data disclosure / charging information DTPUB related to data disclosure conditions and charging information for the entire communication data body VALPRT, data body attribute information DTATTR indicating data contents and data attributes of the communication data body VALPRT or arrangement information related to the data storage location, etc.
[0106] The contents of the management packets MNPKT-1, MNPKT-2 described in Figures 5(c)-(e) are information that can change for each pack VALPCK-1, VALPCK-2 in the communication data body, while the contents described in Figure 8(d) describe common information related to the entire communication data body VALPRT (Figure 3(b)). Also, while the information of the management packet MNPKT is recorded together in the memory area where the data bodies DATA-1, DATA-2 are recorded, the contents described in Figure 8(d) are linked to the management information 62, 64, 66 in Figure 1 and are also related to the recording location in the memory area.
[0107] As shown in step 2 in Fig. 9B and steps 32 and 38 in Fig. 14, in this embodiment, sensor data is collected and simultaneously analyzed in the device agents and edge agents 44, 47, and 48 in the sensor devices 32, 34, and 36. The search keywords extracted as a result for each of the communication data body packs VALPCK-1 and VALPCK-2 are sequentially recorded in the management packet MNPKT. Then, keywords commonly extracted in all of the communication data body packs VALPCK-1 and VALPCK-2 or keywords extracted frequently are selected and can be described as part of the search related information SRCINF.
[0108] A large number of search keywords may be entered here (within the range not exceeding the maximum information size of 2 MB permitted as the control information CNTINF in FIG. 4(c)). The number of search keywords entered is entered into the value of "number_of_Key-word". In this case, the search keywords entered are entered consecutively after the area defined by "key-word", separated by commas (,). Note that this embodiment is not limited to the above, and any information useful for other data searches may be entered as part of the search related information SRCINF.
[0109] "Record-start_Time" written in the area in which the period management information TMMN is written indicates the date and time when data collection started in accordance with ISO (international standard) 8601. If you want to make the corresponding communication data body VALPRT unavailable for a specific period of time, specify the unavailable period by "Forbidden-Transmission_Period". In other words, data communication of the corresponding communication data body VALPRT via the network is permitted only after a specified period (Forbidden-Transmission_Period) has elapsed since the date and time when data collection started (Record-start_Time).
[0110] As described later in Section 3.3 or 3.4, in this embodiment, the communication data body VALPRT may be moved to a memory section in the distributed server group 4 or to other memory devices 20, 26 in the future. In this case, the length of the preservation period to be guaranteed at the data destination can be stipulated by "Preservation_Period". In other words, "Preservation_Period" indicates the preservation period (prohibited erasure period) guaranteed from the date and time when data collection started. However, during this period, the entire data body is prohibited from being erased, but partial modification or deletion is permitted.
[0111] In addition to the above-mentioned information, any information related to time or period may be described as part of the period management information TMMN. For example, the sensor data collected from the sensor devices 32 and 34 in FIG. 1 (or data obtained after analysis) is added with the above-mentioned search related information SRCINF and period management information TMMN in the edge agent 44, and communication data of the data control information and communication data body KEYVAL shown in FIG. 4(a) and (b) is generated. The communication data generated here is passed to the device agent 42 in the memory device 22 via the network communication path. Thereafter, the device agent 42 separates the data into the data control information KEYPRT and the communication data body VALPRT, and records only the communication data body VALPRT in the memory area of the original data (or the memory area of the analyzed data) in the memory device. Meanwhile, the data control information KEYPRT separated and extracted in the device agent 42 is format-converted and stored in the management information 62.
[0112] In the future, when this communication data body KEYVAL (or a part of it) is moved to a memory section within the distributed server group 4 or to another memory device 20, 26, the necessary information is extracted from this management information 62 to generate data control information KEYPRT, and then the data is communicated in the form of the data control information and the communication data body KEYVAL.
[0113] On the other hand, the data publication / billing information DTPUB in Fig. 8(d) affects the recording location in the memory area. In this embodiment, as described later in section 3.3 using Fig. 10, the recording location in the memory area can be changed according to the data publication class. Therefore, the location where data is saved in the memory device 22 may be changed according to the description content (pbc) of "Publication_Class" in the data publication / billing information DTPUB shown in Fig. 8(d).
[0114] As already explained in FIG. 5(e), the data publication class DPUBCL may be changed for each of the communication data body packs VALPCK-1 and VALPCK-2. Therefore, the publication class described as "Publication_Class" may be the most lenient publication class among the data publication classes DPUBCL set in all of the communication data body packs VALPCK. The data storage location in the memory device 22 is determined according to the description of that "Publication_Class". Then, during future data communications, the device agent 42 or edge agent 44 will determine the data publication class for each of the communication data body packs VALPCK-1 and VALPCK-2. The packet DPUBCL may be interpreted to select a pack VALPCK in the communication data body that is allowed to be used for data reproduction or data communication.
[0115] Similarly, the publication fee described in "Publication_Fee" in the data publication / charging information DTPUB is the lowest publication fee among those corresponding to the data storage locations set in the pack VALPCK in all communication data bodies. By describing the lowest fee or the most lenient publication class in this way, it has the effect of widening the scope of searches when searching for data that is needed in the future. Note that any information related to data publication, publication fees, or charges may be described as a type of data publication / charging information DTPUB, not limited to the information described above.
[0116] In particular, when data with restrictions on the scope of disclosure is communicated via the Internet 2, data encrypted using a common key 54 pre-recorded in the memory unit 6 of the distributed server group 4 or in the memory devices 22, 26 is transmitted. The data communication format at this time is described as the value of "Encryption" in the data body attribute information DTATTR. That is, if the communication data is encrypted, the value is described as "yes". On the other hand, if the communication data is communicated in an unencrypted (plain) state, the value is described as "No".
[0117] As will be described in Section 3.4 using FIG. 19B, when the communication data body KEYVAL is distributed in the memory section of the distributed server group 4 or in other memory devices 20 and 26, the state is recorded in the management information 62, 64, and 66 in FIG. 1. When a part of this distributed information is moved via a network, the fact that related data is distributed can be notified by recording the value of "Data-Distribution" as "Yes." This information allows the receiving side to easily understand whether related data is distributed or not, which has the effect of making data management easier. Incidentally, with regard to the distributed related data, all related data can be collected by using a query via the Internet 2, as will be described later in Section 3.5 using FIG. 21.
[0118] In this embodiment, as an example of a method for ensuring the reliability of stored data, a method of error correction using a redundant (parity) code will be described later in Chapter 5 with reference to FIG. 24. In this way, whether data is distributed within the same ECC (Error Correction Code) block may be specified in "Block-Distribution". If this value is "Yes", the data is distributed within the ECC block, so that even if any of the memory devices 20, 22, 26 breaks down or is removed from the network system, the data can be restored by the error correction function.
[0119] When this data control information KEYPRT (FIG. 4(b)) is transmitted using a communication line of the Internet 2, it can be described in text format as shown in FIG. 8. On the other hand, when a non-Internet communication line is used, it places too much of a burden on the device agent 46 in the built-in sensor device 36 or memory device 26 in FIG. 1 to be required to have the function of interpreting text (characters). Therefore, in this embodiment, when data communication is performed using such a communication circuit, only code data corresponding to the description content (each character) shown in FIG. 8 is communicated. Then, a correspondence table between code data and processing content is stored in advance in the device agent 46, thereby enabling the device agent 46 to control data communication while reducing the burden.
[0120] Chapter 3 Data communication methods within a network This section describes a method for actually communicating data within a network path, using communication data having the structure described in Chapter 2. In particular, in this embodiment, not only do edge agents 44, 47, and 48 reside in edge devices 14, 16, and 18, but small agents 40 and device agents 42 can reside in various devices 20, 22, 26, 32, and 34, which have autonomous processing functions. This article will focus on the following points.
[0121] Section 3.1 Data collection and analysis As a first embodiment using the autonomous processing function of the agent, a processing method will be described in which collected data is analyzed in parallel with data collection, and the analysis result data is stored in parallel with the collected raw data. In particular, data continuously collected over a long period of time from the sensor devices 32, 34, 36, etc. may be handled, and new services may be provided to end users based on the results of the data analysis. In this case, it becomes possible to provide services to end users who are particularly active. Furthermore, the results of this analysis may be used to estimate user behavior and user requests.
[0122] For example, it is rare for an active user to sleep for a long period of time during the day, and in most cases the end user is very active. In this embodiment, the edge agents 44 and 47 simultaneously collect data and perform real-time data analysis, which has the effect of providing new services at the appropriate timing while the user is actively engaged in activities.
[0123] Using the embodiment shown in Fig. 9A, an embodiment will be described in which sensor data relating to the behavior of an end user is simultaneously collected from a sensor device 32 having an imaging function, a sensor device 34 having a voice input function, and a sensor device 36 having a function of detecting changes in light intensity (light sensor function) (data collection step 1 in Fig. 9B). The data communication path and data communication flow in this case are shown in Fig. 9A, and the operation flow at that time is shown in Fig. 9B.
[0124] The original data d collected by the sensor device 32 and the sensor device 34 is transmitted to the edge agent 44, where it is analyzed (data analysis step 2 in FIG. 9B). The original data d is also stored in parallel in the memory device 22 (raw data storage step 3 in FIG. 9B). When the immediately preceding original data c is necessary for the data analysis in the edge agent 44, the data is appropriately transmitted from the memory device 22 to the edge agent 44.
[0125] At the same time, the original data e collected by the sensor device 36 is transmitted to the edge agent 47, where it is analyzed (data analysis step 2 in FIG. 9B). In parallel, the original data e is stored in the memory device 26 (raw data storage step 3 in FIG. 9B).
[0126] A specific data communication method for the original data d, e from the sensor devices 32, 34, 36 shown in Fig. 9A to the edge agents 44, 47 will be described below using the contents explained in Chapter 2. First, a "request transmission" of "GET" as the control type CTTYPE is performed from the edge agents 44, 47 to the sensor devices 32, 34, 36. Next, in response to the "request" from the edge agents 44, 47, a "response transmission" of "GET" is performed from the sensor devices 32, 34, 36 to the edge agents 44, 47. Then, at the time of this "response transmission", the original data d, e is entered into the placement area of the communication body VALPRT (Fig. 4(b)) and data communication is performed.
[0127] Furthermore, when original data d, e are transmitted from the edge agents 44, 47 to the memory devices 22, 26, data transmission with a control type CTTYPE of "PUT" is performed from the edge agents 44, 47 to the memory devices 22, 26. At this time, the original data d, e are stored in the placement area of the communication body VALPRT.
[0128] The simplified data analysis performed in the edge agents 44 and 47 is performed for the purpose of providing new services to end users. For example, for each user (not limited to humans but also animals) captured within the effective visual field of the sensor device 32, the individual users within the effective visual field may be identified by using a pattern matching method with the face or physical features of the user. In parallel with this, pattern matching may be performed between the voice data collected from the sensor device 34 and the voiceprint of each user to estimate the user who is speaking. In addition, the blinking status of the lighting fixtures in each room may be estimated using the data collected from the sensor device 36, and the movement of the user may be detected from the data collected when the sensor device 36 is used as a human sensor.
[0129] The data obtained as a result of the analysis is treated as analyzed data d', e', and the location and movement state of each user can be extracted. If the storage capacity of the memory devices 22 and 26 is small, only the number of people and animals within a predetermined range may be extracted from the analysis result and used as the analyzed data d', e'. The analyzed data d', e' obtained here are then appropriately recorded in the memory devices 22, 26, as shown in step 3 of FIG. 9B.
[0130] The data communication method for the analyzed data d', e' (analyzed data generated within the edge agent 44, 47) from the edge agent 44, 47 to the memory device 22, 26 at this time is data communication of "PUT" as the control type CTTYPE in the control information CNTINF transmitted from the edge agent 44, 47 to the memory device 22, 26. Here, the analyzed data d', e' are stored in the placement area of the communication body VALPRT.
[0131] The simplified services provided to end users by edge agents 44, 47 shown in step 4 of FIG. 9B may be, for example, at the level of "automatically turning on and off lights or automatically changing the temperature and humidity of an air conditioner in response to people or animals entering or leaving a particular room."
[0132] 9A shows an example in which the sensor devices 32, 34, and 36 are arranged at fixed positions. However, other data analyses may be performed without being limited to this. For example, in the case of a network-connectable vehicle (connected car / connected bus / connected truck), analyzed data such as "sudden acceleration / sudden start state" or "did the driver or passengers yawn?" may be obtained as a result of analyzing the sensor data.
[0133] 9B, the analyzed data d', e' obtained after the analysis may be transmitted to the distributed server group 4. In this case, as a data communication method, the control type CTTYPE in the control information CNTINF transmitted from the edge agents 44, 47 to the distributed server group 4 becomes "PUT", and the analyzed data d', e' is placed in the placement area of the communication body VALPRT.
[0134] 9A, a common key 54 is stored in each of the memory devices 22, 26 and the memory unit 6 in the distributed server group 4. Therefore, when the analyzed data d', e' are communicated via the Internet 2, the analyzed data d', e' may be encrypted using the common key 54 and then stored in the storage area of the communication main unit VALPRT. This has the effect of ensuring high reliability in terms of security.
[0135] As shown in Fig. 9A, data communication between the edge agents 44, 47 and the distributed server group 4 is via the Internet 2. Therefore, the communication data structure in this case has the structure in Fig. 2. As described above, the edge agents 44, 47 and the distributed server group 4 (the reception gateway server) are each preset with their own IP addresses. Therefore, in this case, the IP addresses of the edge agents 44, 47 are entered into the placement area of the sender IP address information SIPADRS (see Fig. 3(b)), and the IP address information of the distributed server group 4 (the reception gateway server) is entered into the placement area of the receiver IP address information DIPADRS.
[0136] In this way, in data communication via the Internet 2, the data control information and communication data body KEYVAL shown in Figure 4 are directly included in the TCP data / payload TCPDU (see Figure 2(c)), which not only provides the flexibility to send data d', e' to anywhere in the world, but also has the effect of significantly reducing the processing load during data communication at the edge agents 44, 47.
[0137] Methods of communicating predetermined data using IP addresses have been known for some time, but the load on the receiving side was very large, for example, for displaying or saving the transmitted data, because the processing presupposes a web browser or pre-bundling of specific software. In contrast, in this embodiment, as shown in Figures 4 to 8, data control information KEYPRT having a very simple data structure can be sent simultaneously with the transmission data body VALPRT. As a result, there is an effect that the receiving side can process the transmission data very easily without imposing a load on the receiving side, such as a web browser or pre-bundling of specific software.
[0138] As a result of the above series of processes, only the analyzed data d'e' after the analysis is stored in the memory unit 6 of the distributed server group 4, as shown in Fig. 9A. When performing "advanced data analysis" in the distributed server group 4 according to step 6 in Fig. 9B, if the original data d and e are also used, it will take an enormous amount of analysis time. In contrast, if advanced data analysis is performed using only the analyzed data d'e' obtained after the analysis, it is possible to perform effective data analysis in a very short time.
[0139] As a specific example of advanced data analysis performed within the distributed server group 4, an analysis of the behavior of each end user and an estimation of requests may be performed. This allows for advanced services such as "when the end user is feeling irritated, the lights are turned down and quiet music is played to calm the user down."
[0140] Specific examples of the “advanced service instructions” given by the distributed server group 4 to the edge agents 44, 47 in accordance with step 7 of FIG. 9B include “dimming the lights in the room” or “automatically playing quiet music (user’s preferred).”
[0141] The method of instruction in this case is that the IP addresses of the edge agents 44 and 47 are entered into the placement area of the receiving IP address information DIPADRS (see Figure 3(b)), and the IP address information of the distributed server group 4 (the gateway server) is entered into the placement area of the sending IP address information SIPADRS.
[0142] Furthermore, "PUT" is set in the control type CTTYPE (Fig. 6(a)) in the control information CNTINF, and the above-mentioned "brightness of the room after the lights are turned off" and "contents of the music to be played" are stored in the storage area of the communication data body VALPRT. Furthermore, the time range for outputting this music may be set in "Time-Zone" in Fig. 8(c). In this way, with just the simple data control information KEYPRT, it is possible to provide extremely advanced services to end users.
[0143] The specific content of the "provision of advanced services" for the end user described in step 8 of FIG. 9B is determined by the edge agent according to the specific instruction content transmitted from the distributed server group 4. 44 and 47 drive driving devices (not shown in FIG. 9A) connected to the network.
[0144] The advanced data analysis and the advanced services provided to end users described with reference to FIGS. 9A and 9B are not limited to those described above, and any data analysis and any service provision are included in this embodiment.
[0145] Section 3.2 Data analysis with privacy protection and data disclosure / charging conditions The communication data handled in this embodiment includes personal information, and it is necessary to protect the personal information according to the request of each individual. In order to respond to the very sensitive requests of each individual, this embodiment may have user management information shown in FIG. 10 as part of the management information 66 in the memory unit or memory devices 20, 22, 26 of the distributed server group 4.
[0146] As an example of a data disclosure class setting that indicates the range of data disclosure (utilization), a method for setting the data disclosure level in units of a specific network domain or a specific group member was explained in Section 2.3. This method may be used to obtain information on all members participating in the above network domain or on the constituent members included in a specific group, and create the management information in Figure 10.
[0147] The vertical columns in Fig. 10 show the individual information of each user U1, U2, U3, etc., but are not limited to this and may be described by family unit, organization unit, or specific group unit. In Fig. 10, information related to individual user information USEINF, user identification information USRECG, user belonging information USBL, and data disclosure condition information PUBCND is described.
[0148] If the user identification information USR_ID and password PASSWD are collected in this individual user information USEINF, it becomes easy to identify each user who participates in the domain managed by the distributed server group 4 using the user identification information USR_ID and password PASSWD. Furthermore, the distributed server group 4 and edge agents 44, 47, and 48 can use the information in the email address EMADRS to inquire of each user whether or not to disclose certain data.
[0149] Although general users dislike disclosing their personal information, there is a certain percentage of users who are willing to disclose their personal information if a disclosure fee is paid. Therefore, when an information user matches (or agrees to) the data disclosure condition information PUBCND, or when permission to disclose individual information is obtained using the email address EMADRS, the disclosure fee can be automatically transferred to the bank account number BNKACT for fee transfers.
[0150] For example, when sensor data is collected by the sensor device 32 (FIG. 1 or FIG. 11), the distributed server group 4 or the edge agents 44, 47, 48 must automatically identify whether or not personal information is included in the sensor data. As the user identification information USRECG used for this automatic identification, the distributed server group 4 or the edge agents 44, 47, 48 may use the link destination information FRECLK for face recognition or the link destination information FGPRLK for fingerprint matching. In this information, the link destination information to the corresponding database is written in the form of a URI.
[0151] In this embodiment, the data publication class DPUBCL enables data publication or data use limited to members of a specific group, or data publication or data use limited to within a predetermined network domain.
[0152] Therefore, the user belonging information USBL shown in Fig. 10 includes information on the identification information GRP_ID of the group in which each user participates and the network domain NDM_ID in which the device used by the user is registered. The existence of this information makes it easy to determine the specific extent to which data can be made public / used (or will be used) for each user.
[0153] On the other hand, as mentioned above, many users are willing to disclose their personal information if a disclosure fee is paid. Therefore, the following three types of disclosure are available according to the data disclosure class DPUBCL: fully open disclosure PUBOPN, limited disclosure within a domain PUBDMN, and limited disclosure to specific members PUBMMB. The amounts charged to users at the time of disclosure for each disclosure condition can be compiled in a table.
[0154] Each user can enter the amount to be charged (including information on prohibited disclosure) when allowing a third party to use raw sensor data before processing. For example, if "No", "Forbiddance", or "Forbidden Condition" is entered in this field, it indicates that the disclosure of the corresponding data or its use by a third party is prohibited.
[0155] For example, in the case of high-definition (high resolution) video or images that include a person, the person can be easily identified, so the data should not be made public. However, in the case of low-quality (low resolution) video or images or video or images with pixelated faces, the data may be permitted to be made public, as it is difficult to identify the person in the images.
[0156] Therefore, the amount to be charged when disclosing data under data processing condition A (e.g., reducing image quality) (including information that must not be disclosed) PUBCDA and the amount to be charged when disclosing data under data processing condition B (e.g., applying a mosaic to the face position) (including information that must not be disclosed) PUBCDB can be set individually.
[0157] As shown in Figure 10, in the columns for completely open publication PUBOPN, publication limited to the main page PUBDMN, and publication limited to specific members PUBMMB, you can set the following amounts, respectively: "Amount charged when publishing raw data (including prohibited publication) PUBORG," "Amount charged when publishing under data processing condition A (including information that is prohibited from being published) PUBCDA," and "Amount charged when publishing under data processing condition B (for example, applying a mosaic to the position of a face) (including information that is prohibited from being published) PUBCDB."
[0158] In the description example in Figure 10, user U2 completely prohibits data disclosure. In contrast, user U3 prohibits raw data disclosure in completely open disclosure and in domain-limited disclosure PUBDMN. In domain-limited disclosure PUBDMN, a disclosure fee of $1 is charged for data processing conditions A and B, and for specific member-limited disclosure PUBMMB, a disclosure fee of $1 is charged for raw data disclosure PUBORG, and disclosure under data processing conditions A and B is free (disclosure fee of $0) for disclosure PUBCDA and PUBCDB. User U1 also specifies detailed disclosure fees for each condition.
[0159] Next, a method for utilizing sensor data will be described. There are cases where a method for utilizing sensor data does not necessarily require identification of individual users, and only the number of specific targets can be grasped. An example of this is shown in FIG. 11. For example, an example will be described in which the advertisement content displayed on an electronic bulletin board (signage) 70 is changed over time, and advertising fees are collected according to the number of passersby who view the advertisement or listen to the advertisement audio.
[0160] 11, among passersby 75 to 79 passing through a passage 72, only two passersby 75 and 76 stop and look at the electronic bulletin board 70. In such a case, if it is possible to grasp only the number of passersby, identification information of each passerby is not necessary.
[0161] An example of change over time 100 in the use case of Fig. 11 is shown in Fig. 12. Fig. 12 explains a case where the content displayed on the electronic display board 70 changes from advertising content a_104a to advertising content b_104b. When advertising content a_104a starts to be displayed, the number of people NW looking at the electronic display board 70 changes to 3 or 5 people at time t1, and then becomes 4 people at time t3. Then, when advertising content changes to b_104b, the number decreases to 2 people at time t5.
[0162] The electronic display board 70 displays an image (video) and outputs audio at the same time. Therefore, since some passersby who are not looking at the electronic display board 70 may stop and listen to the output audio, the number of people NS who are standing and not looking at the electronic display board is also monitored at the same time.
[0163] 12, the number of people changes at times t1 to t6 along the elapsed time 100. The device agent in the sensor device 32 or the edge agent 44 (see FIG. 1) that collected the sensor data analyzes the sensor data and automatically divides the packs VALPCK-1 and -2 in the communication data body for each of the times t1 to t6.
[0164] An example of an image (video) captured by the sensor device 32 in Fig. 11 is shown in Fig. 13A. Since a passerby 77 faces the sensor device 32, the face of the passerby 77 seen from the front is captured. The device agent in the sensor device 32 or the edge agent 44 that collected the sensor data performs data analysis on the raw sensor data and automatically detects the position of the face. Then, as a result of data processing, the position of the face may be pixelated as shown in Fig. 13B.
[0165] The above series of processing steps are shown in Fig. 14. In step 31, sensor data is collected by the sensor device 32. Next, in step 38, pack break positions are automatically detected based on video / image analysis in accordance with the timings t1 to t6 in Fig. 12, and the results are used in the automatic generation of a management packet MNPKT in step 51.
[0166] Simultaneously with the sensor data collection by the sensor device 32 in step 36, low-quality (low-resolution) video / images are automatically generated within the device agent or edge agent 44 in the sensor device 32, and data is buffered together with the raw sensor data (step 37).
[0167] In parallel, the device agent in the sensor device 32 or the edge agent 44 performs an automatic user identification process based on face recognition (step 33), and for each identified user, the contents of the management information shown in FIG. 10 are collated to extract the range of disclosure and the amount billed for each user (step 35).
[0168] Next, in steps 41 to 43, it is determined whether the disclosure conditions for the raw sensor data and the processed data for each processing condition match based on the result obtained in step 35. If it is determined as the determination result in step 33 that the sensor data includes user U2 who is prohibited from disclosing / utilizing data in all disclosure ranges as described in Fig. 10, the raw sensor data and the processed data under all processing conditions are discarded (steps 46 to 48).
[0169] Furthermore, for data that matches the disclosure conditions in the determinations of steps 41 to 43, all users related to that data are automatically identified for each data content, and a management packet is automatically generated based on the total amount charged listed in Fig. 10 (step 51). For example, if a specific communication data body pack VALPCK in the data relates to five users, the amounts charged at the time of disclosure for the five users are totaled for each data disclosure condition in Fig. 10 (each horizontal row of the data disclosure condition information PUBCND), and the total value is entered in the disclosure fees FEEMMB, FEEDMN, and FEEOPN entry columns in Fig. 5(e).
[0170] In this embodiment, the user involved is identified for each pack VALPCK in the communication data body in the data in this way, and the table in FIG. 10 can be used to set in detail whether data is made public / used by a third party and the amount charged when data is made public / used. This has the effect of providing a finely tuned data publication / utilization service. In the embodiment shown in FIG. 14, face recognition was used to identify the user involved in the data. However, this embodiment is not limited to this, and any other method may be used as a method for identifying / recognizing the user involved in the data.
[0171] In step 52, the management packet MNPKT automatically generated in step 51 of FIG. 14 is inserted (multiplexed) into the raw data or the processed data in accordance with the format shown in FIG. 5(b).
[0172] Furthermore, in the data storage stage of step 53, the data publication class DPUBCL corresponding to the contents described in the data publication condition information PUBCND in FIG. 10 is determined for each raw data and data processing conditions, and the data is stored in the memory area corresponding to the data publication class DPUBCL described in the memory area management information RDMG in FIG. 16.
[0173] In this embodiment, since data is stored in advance in a memory area corresponding to a specified data disclosure class as described above, there is an advantage that a third party can easily search for data that can be disclosed / used.
[0174] Section 3.3 How to expand memory area within a domain In IoT technology, which has been attracting attention in recent years, sensor data is successively collected from a wide variety of sensors and appropriately stored in memory. Furthermore, when making effective use of that sensor data, data collected in the past is often used retroactively. As a result, the amount of data stored in memory increases over time. Therefore, there is a demand for a data management method or an apparatus or device using the same that enables effective use of data accumulated in the past without being affected by the capacity or characteristics of the memory that stores the various data.
[0175] Here, an example of a configuration for solving the above problem will be described. For example, as shown in Fig. 1, consider a case where original sensor data a, b, c and analyzed analyzed data a', b', c' are recorded in advance in the memory area of the memory device 22. Next, in Fig. 19A, analyzed data d', f' are generated by analyzing sensor data d, f collected by the sensor devices 32, 34 in the edge agent 44. If the sensor data d, f and analyzed data d', f' are stored sequentially in the memory area of the memory device 22, there is a risk that the remaining unrecorded space in the memory area will be depleted.
[0176] If it is acceptable to discard past data a, b, a', and b', data obtained in the future can be overwritten onto the area where data a, b, a', and b' are already recorded. However, overwriting makes it impossible to effectively use past data a, b, a', and b'.
[0177] In this embodiment, information obtained by managing the state in the memory area, such as the remaining valid unrecorded capacity, is called maintenance information. As a result of this maintenance information, risks such as the approaching need for overwriting may be predicted in advance and a corresponding process may be performed. In the example of Fig. 19A, the predicted risk corresponds to a situation in which "the remaining valid unrecorded capacity is exhausted, and if sensor data from the sensor devices 32 and 34 continues to be collected, overwriting will be required (some of the sensor data collected in the past and the data obtained after analysis will be erased)."
[0178] As long as only the memory area in the single memory device 22 is considered, it is difficult to solve the above problem. As a countermeasure, by linking with other memory areas connected by a network line including the line of the Internet 2, a storage environment with a high degree of freedom can be provided. Specifically, recorded data in a specific memory area can be moved or copied between multiple different memory areas. As a result, unnecessary erasure processing of recorded data can be prevented, and there is an effect that the recorded data can be effectively utilized in the future. In other words, by linking data recording processing or data reproduction processing between multiple memory areas connected by a network line, a storage environment with a high degree of freedom can be provided for various data storage requests that are likely to cause, for example, excess of recording capacity.
[0179] In this embodiment, various linking methods are allowed for the memory areas to be linked. For example, the memory areas may be linked between the memory devices 20, 22, and 26. Although not shown, a plurality of memory devices 22 may be connected to one edge device 14, and the memory devices 22 may be capable of communicating with each other. For example, even when the plurality of memory devices 22 are connected in a tree shape with the edge device 14 at the top, such as in a USB connection, independent communication may be performed between the plurality of memory devices 22. In particular, when the devices are connected in series, such as in a SCSI (Small Computer System Interface), communication between the plurality of memory devices 22 without passing through the edge device 14 becomes even easier.
[0180] 18, the device agents 42, 46 resident in the memory devices 22, 26 manage even the physical characteristics of the memory areas in detail. Therefore, by coordinating the memory areas between the device agents 42, 46, the memory areas can be used very effectively, and the bit cost (bit cost), which means the recording cost per bit on a physical address, can be reduced.
[0181] 18, the edge agents 44, 47 resident in the edge devices 14, 16 handle fault-free logical addresses (ideal space) in the memory area, and do not manage detailed physical characteristics in the memory area. Therefore, by carrying out cooperative processing of the memory area between the edge agents 44, 47, it is possible to reduce maintenance costs.
[0182] Furthermore, without being limited to the above, memory areas may be linked between the distributed server group 4 and the edge agents 44, 47. Generally, not only is the storage capacity of the memory unit 6 in the distributed server group 4 very large, but the processing functions of the distributed server group 4 have a high degree of freedom. Therefore, linking memory areas between the distributed server group 4 and the edge agents 44, 47 makes it possible to flexibly respond to a wide variety of data storage requests. This has the effect of providing a storage environment with a very high degree of freedom.
[0183] In this embodiment, information on memory areas that can be linked together is held in advance, and all memory areas that can be linked together can be freely used by not only the distributed server group 4 but also the edge agents 44, 47, 48 and the small agent 40. This has the effect of dramatically increasing the recording capacity (or remaining unrecorded capacity) of all memory areas compared to the case where processing is performed using only a single memory device 22, improving the degree of freedom in data storage.
[0184] For example, as shown in FIG. 19A, there are cases where the remaining unrecorded capacity of the memory device 22 becomes small. In this case, a problem occurs when the edge agent 44 has only information on the memory device 22, and an advantage occurs when the edge agent 44 has information on memory areas that can be linked together in advance. If the edge agent 44 does not know other memory area information, it is necessary to communicate alarm notification information to the distributed server group 4. Thereafter, the distributed server group 4 needs to search for a destination for the required data and respond to the edge agent 44. This causes a cost for the distributed server group 4 to search for the data destination and respond, which causes a problem of an increase in the operation and management costs (including maintenance costs) of the entire system. However, if the edge agent 44 knows in advance the destination of the linked memory area, the cost of searching for the data destination can be eliminated, resulting in a cost reduction effect for the entire system.
[0185] The network connection relationship in the embodiment of Fig. 1 or Fig. 19A is shown in Fig. 15. In the embodiment of Fig. 15, the higher-level connection destinations of each of the devices 20, 22, 26, 32, 34, 36 and each of the edge devices 14, 16, 18 are uniquely determined.
[0186] Specific contents of the edge / device table 68 stored in the memory unit 6 in the distributed server group 4 shown in Fig. 1 or Fig. 19A are shown in Fig. 16. Information on all components in this embodiment shown in Fig. 1 or Fig. 19A is collected in Fig. 16. The upper connection destinations of each of the devices 20, 22, 26, 32, 34, 36 and each of the edge devices 14, 16, 18 shown in Fig. 15 are written in the upper connection destination UPCNT in the installation / location information EDDRIF in Fig. 16.
[0187] In Fig. 16, the devices and edge devices are grouped together as type EDDR, and the respective identification information (ID information) is stored in the column of individual identification EDR_ID. In particular, by using the information of the IP address IPADRS of each device 20, 22, 26, 32, 34, 36 and each edge device 14, 16, 18 recorded in the edge / device table 68, an effect is created in which data communication can be performed directly from any device 20, 22, 26, 32, 34, 36 and edge device 14, 16, 18 to any device 20, 22, 26, 32, 34, 36 and edge device 14, 16, 18. As already explained in Section 2.1, if the information of this IP address IPADRS is written in the area storing the receiving side IP address information DIPADRS in Fig. 3(b), data communication via the Internet 2 is possible.
[0188] Information about memory areas that can be linked together is collected in the memory area management information RDMG in Fig. 16 (in the edge / device table 68 in Fig. 19A). Here, the memory areas in the memory devices 20, 22, 26 in Fig. 1 or Fig. 19A are composed of one or more partitions, folders / directories, or corresponding drives, and their identification information FLD_ID is set. Also, each corresponds to the above-mentioned data disclosure class DPUBCL, and may be divided into a fully open memory area that is open to anyone, a memory area in which data can be disclosed only within a specific domain, a memory area that is open only to members of a specific group, or a memory area that is open only to specific individuals. Dividing the memory area for each data disclosure class DPUBCL in this way has the effect of facilitating data management and data disclosure management.
[0189] Also, by having administrator identification information MAN_ID indicating the administrator for each divided data area, there is an effect that the billing process at the time of publication is easy. Specifically, each time data stored in a specific data area is viewed or utilized, the publication / usage fee is paid to the administrator corresponding to the administrator identification information MAN_ID, and the publication / usage fee may be distributed from the administrator to the individual users shown in Fig. 10. In addition, the publication / usage fee for each memory area at this time is a monthly fee in dollars according to the number of bytes played / used in the memory area usage fee FEEMEM entry field, making it easy to calculate the billing amount around the world.
[0190] In this embodiment, two types of services are allowed as charges for: "Charges corresponding to the service when previously stored data (such as raw data related to sensor data, analyzed data obtained by processing / analyzing the raw data, and data related to the control history of the driving device) is made available to a third party or utilized by a third party"; and "Charges corresponding to the service of lending memory space to a third party (where a third party is allowed to store specified data in the memory space)."
[0191] The publication fees FEEMMB, FEEDMN, and FEEOPN in Fig. 5(e), Publication_Fee in Fig. 8(d), and the publication charges PUBORG, PUBCDA, and PUBCDB in Fig. 10 indicate the charges to be paid for the service type [A]. On the other hand, the memory space usage fee FEEMEM in Fig. 16 is different in that it indicates the charges to be paid for the service type [B].
[0192] For example, in the description example of Fig. 16, let us assume that Suzuki borrows memory area B corresponding to the fully open data disclosure class DPUBCL in the memory device 22 managed by Suzuki and stores data that Ando created (contributed to). In this case, Ando pays Suzuki a memory area rent according to the size of the stored data (in bytes) in the form of a specified dollar per month.
[0193] Furthermore, if Kato plays or processes / edits this data, Kato will pay Ando a fee for publishing. On the other hand, if the data involves three parties, A, B, and C (for example, if the video data shows three parties, A, B, and C), Ando will distribute the fee obtained from Kato to A, B, and C according to the amount claimed in the data publishing condition information PUBCND in Fig. 10.
[0194] Incidentally, the total amount of the charge to be distributed to A, B, and C is pre-recorded in the publication fees FEEMMB, FEEDMN, and FEEOPN in Fig. 5(e). Therefore, Kato may determine whether the publication fee amount is appropriate and then determine whether to reproduce or process / edit the corresponding data.
[0195] In this edge / device table 68, devices 20, 22, 26, 32, 34, 36 and edge devices 14, 16, 18 in any range may be managed (registered in the edge / device table 68) without being limited to a specific domain.
[0196] A method for creating the edge / device table 68 will be described with reference to Fig. 17. Since the devices 20, 22, 26, 32, 34, 36 and the edge devices 14, 16, 18 connected to a network line such as the Internet 2 change from moment to moment (frequent connection and disconnection), it is difficult to appropriately update the edge / device table 68 in detail.
[0197] In response to this, when necessary, the distributed server group 4 or agents 40, 44, 47, 48 that need it make an "inquiry" via a network line, and the "answer" results are compiled in the edge / device table 68 and distributed to the relevant parties (other distributed server groups 4 or agents 40, 44, 47, 48). This improves the flexibility of creating the edge / device table 68, and has the effect of improving the scalability of the entire network system.
[0198] For example, JMS (Java (registered trademark) Message Service) proposes a Publish / Subscribe messaging model. This is a messaging model in which the same message (data) is sent 1-to-n, with the sender of the message called the Publisher and the receiver of the message called the Subscriber. Therefore, any agent 40, 44, 47, 48, including the distributed server group 4, can be both a publisher and a subscriber. Also, the inquiry service (environment) in the Publish / Subscribe messaging model is called a notification service.
[0199] When creating the edge / device table 68, the publisher who wants to create the edge / device table 68 uses the notification service to inquire about the expandable memory areas and the respective data publication classes DPUBCL (including the memory area usage fee FEEMEM) in step 61.
[0200] The subscriber who received the inquiry in step 62 responds with the expandable memory area and the respective data publication class DPUBCL (including the memory area usage fee FEEMEM). Based on the response, the publisher creates or adds / updates (step 63) the edge / device table 68 and distributes the result to the related parties (step 64). The edge / device table 68 distributed here is stored as part of the management information 62, 66 in the memory devices 22, 26.
[0201] Here, a Publish / Subscribe messaging model has been used as an example to explain the flow of "asking a question" and "answering." However, this embodiment is not limited to this, and any type of message exchange may be performed. As a specific example, in addition to the 1-to-n (many) Publish / Subscribe messaging model, a messaging method in the form of a message board where any message can be posted, such as that of a Social Network Service (SNS), may be adopted.
[0202] Incidentally, when communicating data regarding the above-mentioned inquiry and response, the communication data structure in FIG. 2 is used to transmit data control information KEYPRT having the contents explained in FIG. 4 and FIGS.
[0203] Section 3.4 Maintenance information management and network communication FIG. 18 shows the difference in the contents of management within the memory area of the edge agents 44, 47 (including the small agent 40) shown in FIG. 1 or FIG. 19A and the device agents 42, 46 in the memory device.
[0204] In Figure 18, the horizontal axis is divided into management addresses within the memory area (Mg1), memory area management contents performed by the agent (Mg2), and inter-agent notification information (Mg3), and the vertical axis is divided into edge (small) agents (Me1) and device agents (Me2).
[0205] Many storage devices (memory devices), whether semiconductor memory, HDD (Hard Disk Drive), or optical disk, use two types of addresses, physical addresses and logical addresses, to manage memory areas. Logical addresses are addresses defined in an ideal space with no internal defects. However, actual storage devices (memory devices) have internal defective and deteriorated areas. Therefore, using physical addresses makes it possible to manage the locations of such defective / deteriorated areas.
[0206] In this example, the edge (small) agent only manages logical addresses (ideal space without defects) (Meg11), and the device agent mainly manages physical addresses (including management of defective and deteriorated areas) (Mge12). In addition, the conversion process between the physical addresses and logical addresses is performed by the device agent.
[0207] The device agent also manages defective areas and replacement processing of areas corresponding to the defective areas. It also manages deteriorated areas related to the number of overwrites and the stable storage period of data. Furthermore, the device agent may perform, for example, error correction processing of data whose reliability has decreased and rewriting processing of the data after the error correction to another area as a process to ensure the reliability of recorded data. Therefore, the device agent is responsible for data recording / reproducing / erasing processing in the physical address space (Mge22).
[0208] In contrast, the edge (small) agent mainly performs data recording / playback / deletion processing (including management of overwrite location / target data) in the logical address space (Mge21). In addition, in relation to that, it also manages the effective recording capacity and the effective remaining unrecorded capacity.
[0209] In order to enable the edge (small) agent to perform the above processing, notification processing (Mge30) is performed from the device agents 42, 46 to the edge agents 44, 47 regarding the decrease in effective recording capacity, the deterioration of the effective remaining unrecorded capacity, and the decrease in reliability of already recorded data (changes in the error rate of already recorded data).
[0210] Based on the notification information from the device agents 42 and 46, the edge agents 44 and 47 appropriately create maintenance information indicating the timely state within the memory area, and the information is recorded in the memory device 22 as part of the management information 62.
[0211] 19A, the device agent 42 first detects a decrease in the remaining unrecorded capacity in the memory area of the memory device 22, and notifies the edge agent 44 of the effective remaining unrecorded capacity. Then, the edge agent 44 updates / generates maintenance information based on the contents of the notification (step 11 in FIG. 19C).
[0212] Next, in step 12 of FIG. 19C, it is determined whether or not a warning notification is necessary for other edge agents 47 and the distributed server group 4. When the sensor data collection from the sensor devices 32 and 34 continues, the edge agent 42 refers to the maintenance information content and determines whether or not there is a risk of overwriting the locations where the recorded data a, b, a', and b' are recorded. Here, when the advance risk is recognized, the data public class DPUBCL to which the currently collected sensor data and the data after data analysis correspond is compared with the data public class DPUBCL column in the edge / device table 68 shown in FIG. 16, and a location to which the recorded data a, b, a', and b' can be moved is identified. Then, in the embodiment of FIG. 19B, the recorded data a, b, a', and b' are simultaneously moved to the memory area in the memory unit 6 in the distributed server group 4 and the memory device 26.
[0213] When the destination of the data is thus determined, the edge agent 44 communicates to the destination a warning notification information indicating that "the remaining valid unrecorded space in the memory area of the memory device 22 is about to run out" (step 13 in FIG. 19C). Immediately thereafter, as communication step 14 of the already-stored data in FIG. 19C, the edge agent 44 transmits the already-recorded data a, b, a', and b' to the destination.
[0214] In this case, the already recorded data a, b, a', b' are stored in the communication data body VALPRT of Fig. 4(b), and the contents of the IP address IPADRS described in the edge / device table 68 of Fig. 16 are described in the storage area of the receiving side IP address information DIPADRS of Fig. 3(b). In this way, the memory area is expanded via the Internet 2. In particular, in this embodiment, when the already recorded data a, b, a', b' are transmitted, the data structure of Fig. 2 and the data control information and communication data body KEYVAL of Fig. 4(a) are taken, so that it is possible to perform network communication with anywhere in the world in a simple manner regardless of whether it is the Internet 2 or an intranet (or a local network).
[0215] Thereafter, in accordance with steps 15, 16, and 17 in FIG. 19C, management information 62 is created or updated and stored, and communication is performed with edge device 16 and distributed server group 4.
[0216] Now, consider a case where the device agent 42 checks the state of the memory area of the memory device 22, and finds an area (indicated by an "x" in FIG. 20A) that is unusable because, for example, the number of times a specific area has been rewritten exceeds a specific allowable value, and the effective recording capacity of the memory device 22 falls below a predetermined guaranteed value and the effective remaining unrecorded capacity has deteriorated. The processing in this case will be described in FIG. 20C using FIG. 20A and FIG. 20B.
[0217] In this case, the device agent 42 notifies the edge agent 44 of the information that "the effective recording capacity falls below the guaranteed value" and "the effective remaining unrecorded capacity has deteriorated." In response to this information, the edge agent 44 generates or rewrites maintenance information as shown in step 21 of FIG. 20C.
[0218] Next, as a criterion for determining whether or not a warning notice is necessary (step 22 in FIG. 20C), the maintenance information is used to determine the risk that the already recorded data c, d, c', d' will be overwritten and erased. If a warning notice is necessary, the same process as in FIG. 19C is performed. As a specific example of a countermeasure, as shown in FIG. 20B, the already recorded data c, d, c', d' are moved to two locations: the memory unit 6 in the distributed server group and the memory device 26 in the edge device 16.
[0219] Section 3.5 Database search methods In this embodiment, a series of data a, b, c, d, f, g, a', b', c', d', f', and g' are distributed and allocated in different memory areas as shown in Figures 19B and 20B. A method of searching for distributed data for collectively reproducing or utilizing the series of data thus distributed and allocated will be described below.
[0220] In this embodiment, similar to the contents already explained in Section 3.3, the distributed server group 4 or the agents 40, 44, 47, 48 may make a "question" via a network line, and based on the "answer" results, collect and utilize the distributed data.
[0221] As a specific example, a data search method using the Publish / Subscribe messaging model explained in Section 3.3 will be explained with reference to Fig. 21. When a publisher needs to collect or utilize a series of data distributed among the distributed server group 4 or agents 40, 44, 47, 48, the publisher uses the notification service to inquire of the other distributed server group 4 or agents 40, 44, 47, 48 about the specified data storage location (step 71).
[0222] Then, the distributed server group 4 or agents 40, 44, 47, 48 involved in the storage of the corresponding data respond as subscribers with the storage location of the specified data using the notification service (step 72). In this case, the communication data utilizes the structure of FIG. 2(a). In the data control information and the control information CNTINF (FIG. 4(c)) in the communication data body KEYVAL, the storage location may be described in the description area of the data storage location TENTID in FIG. 6(b). Alternatively, the storage location may be described in a predetermined format in the communication data body VALPRT in FIG. 4(b).
[0223] After receiving the response, the publisher creates a data reproduction table for the specified data distributed within the domain, as shown in step 73 of Fig. 21. Then, using the data reproduction table, in step 74, a data transfer request (a "PUT" request in Fig. 7) is made to the subscriber who responded last time.
[0224] In the unlikely event that the memory devices 20, 22, 26 in which the specified data is recorded are disconnected from the network line, error correction processing or the like may be performed using the method described later in Chapter 4 to restore the reliability of the collected data (step 75).
[0225] Since the devices 20, 22, 26, 32, 34, 36 and edge devices 14, 16, 18 connected to network lines such as the Internet 2 change from moment to moment (frequently connecting and disconnecting), adopting the above data search method has the effect of improving the scalability of the entire system.
[0226] Incidentally, as explained in Section 3.3, the data search method in this embodiment is not limited to the Publish / Subscribe messaging model, and this embodiment may use any kind of one-to-n (many) message exchange or a data search method that utilizes a many-to-many bulletin board format such as a SNS environment.
[0227] Furthermore, the present embodiment is not limited to the specific data search method shown in FIG. 21, and may use the above-mentioned method for searching any form of database itself.
[0228] Section 3.6 How to control pay-per-use charges Section 3.6.1 How to control pay-per-use when playing back stored data 22 and 23 are diagrams for explaining how billing processing is performed, for example, when the distributed server group 4 stores data in response to a request from a user or provides the stored data to the user. The memory device 22 and / or the edge device 44 described above can be the data generator 210. The data generated by the data generator 210 is managed, for example, by the distributed server group 4. Each server included in the distributed server group 4 includes a controller (not shown) and management information 64. For example, this management information 64 can include a source data management area 230. Each server is controlled by its own controller, and various data described below are processed based on the control of the controller.
[0229] The source data management area 230 has a charging control data area 231, which manages the data from the source data generator 210 and performs charging processing for the user when the data is used. The user side can be various objects, for example, a portable edge device 18. The user's terminal is shown as a user terminal 250.
[0230] Data transmitted and received via the Internet is encrypted using common keys 52, 54, and 56. The receiving side can decrypt the encrypted data using common keys 52, 54, and 56. The memory device 22 is provided with the common key 52, and the memory unit 6 is provided with the common key 54. The memory device 22 and the memory unit 6 do not encrypt data that may be made public.
[0231] When the source data management area 230 provides data in response to a request from the user terminal 250, the provided data is encrypted in the source data management area 230 using an encryption method previously agreed upon between the two parties. There are various types of data requested by the user and prepared by the source data management area 230. This includes not only raw data received from the edge agent 44, but also data obtained as a result of data analysis in the server.
[0232] The source data output by the data generator 210 includes various types of data. As shown in Fig. 23, the source data includes, for example, physical data, specification data, acquired / accumulated data, and history data. The physical data indicates, for example, the physical value of the memory, and is data indicating the memory capacity. The specification data indicates the characteristics of the memory, and is data such as the write speed and read speed. The specification data also includes data regarding the lifespan of the memory, and this data includes, for example, the maximum number of rewrites, and the value of the data retention period indicating the data retention capacity.
[0233] In addition, the acquired and stored data is collected video data from cameras, audio data from microphones, and detection data from sensors that detect temperature, humidity, pressure, chemical reactions, vibration, acceleration, skewness, rotation speed, etc. Furthermore, history data is data that indicates the history of data transmission and reception, etc. The acquired and stored data may include additional information such as the acquisition date and time, acquisition location, acquisition area, and weather information at the time of acquisition (temperature, humidity, sunny, cloudy, rainy, snowy, etc.).
[0234] The data generator 210 transmits (or notifies) the above-mentioned data to the server periodically or when a preset condition is met.
[0235] The predefined conditions include conditions that are set based on physical data and specification data. These conditions are met, for example, when the amount of stored data exceeds a predetermined amount relative to the memory capacity, when the number of rewrites exceeds a predetermined number, when the data retention period exceeds a set period, etc. This information is related to the basic maintenance work of the agent.
[0236] Furthermore, the conditions are met when "video data or audio data behaves in a particular way (for example, the brightness of the video data changes strangely, video data cannot be obtained, the color display of the video data is abnormal (all frames become a single color such as red, blue or yellow))", "the audio level of the audio data exceeds zero or its peak for a long period of time", or "the temperature, humidity, pressure, chemical reaction, vibration, acceleration or distortion, rotation speed, etc. are abnormal (exceeding a set threshold)". Such information is related to data business.
[0237] The data generator 210 can receive condition data from the notification condition setting device 215 under the control of the controller. The condition data is data for setting conditions for transmitting data from the data generator 210 to a server and restrictions (permission, prohibition, etc.) on the data to be transmitted. For example, data for personal use that requires confidentiality can be assigned a transmission prohibition flag. Furthermore, for data to be made public, encryption processing can be omitted when transmitting the data.
[0238] The server, which has received the above-mentioned data from the data generator 210, manages the data (received data) as part of the management information 64 under the control of the controller. Here, the billing system will be described.
[0239] The management information 64 comprises a source data management area 230, which comprises a charging control data area 231. When data is received from the data generator 210, the charging control data area 231 separates charging data from non-charging data, and stores or identifies each data separately. For this data separation, the charging control data area 231 comprises a separation block 231a.
[0240] The non-chargeable data is mainly data related to the maintenance guarantee of the agent on the data generator 210 side. For example, when the stored data capacity exceeds a predetermined capacity, when the number of rewrites exceeds a predetermined number, or when the data retention period exceeds a set period, the source data management area 230 issues a warning to the agent and / or its administrator.
[0241] The billable data is used for data services. The billable data includes primary data received directly from the data generator 210 and secondary data processed independently in the source data management area 230. Secondary data is data obtained by processing primary data, combining primary data with other data, analyzing primary data or processed data, etc. Added value (or ranking) is assigned to these primary data and secondary data. For this ranking, the billing control data area 231 includes a ranking block 231b.
[0242] The source data management area 230 can provide data to the user terminal 250 in response to a request from the user terminal 250 under the control of the controller. The data provided may be either paid or free data. When the source data management area 230 provides paid data to the user terminal 250, it manages the billing data. This billing data is managed for each user terminal 250 in the response processing block 231c.
[0243] The source data management area 230 can accept condition data from the management condition setter 235 under the control of the controller. The condition data includes data for changing the rank of billing data, for example, data provision control data for controlling whether to permit or deny data provision in response to a request from a specific user terminal. The data provision control data is determined based on a contract between the administrator providing the data and the administrator of the user terminal 250. The determined content is input from the management condition setter 235 to the source data management area 230 as condition data.
[0244] The source data management area 230 includes related device management data 232 for managing server groups and registering user devices (e.g., the user terminal 25). Based on the control of the controller, when a new user terminal accesses the server, the related device management data 232 can obtain the unique information of the new user terminal and place the new user terminal under its management. In a similar manner, the related device management data 232 can also place a new server, a new data generator, and the like under its management.
[0245] In the above explanation, it has been explained that the user terminal 250 requests data, and the server provides the data in response to this request. Then, it has been explained that the billing process is carried out when the data is provided to the user terminal 250. However, the billing process is not limited to only the above-mentioned actions (operations).
[0246] On the other hand, when the data is openly disclosed to all users, no charge is required.
[0247] Section 3.6.2 How to control pay-per-use charges when changing data storage location For example, the source data generator 210 may temporarily store data in a server (or the distributed server group 4). The data transmitted from the source data generator 210 to the server may also be temporarily stored. For example, in the source data generator 210, when the number of times the memory being used is rewritten exceeds a predetermined number of times, the data retention period may exceed the set period. In such a case, the source data generator 210 temporarily saves the data temporarily stored in the memory to the server. Then, the source data generator 210 requests the server to return the saved data, and rewrites the data into the new memory that has been replaced, or into the refreshed memory from which the data was once erased. In such a case, the server does not charge a data processing fee because the purpose of the data processing is maintenance work.
[0248] In the source data generator 210, the memory being used may be filled with the stored data. In such a case, the source data generator 210 notifies the server of memory status information in advance before the storage capacity of the memory becomes full with data. In general, when the storage capacity of the memory becomes full with data, the source data generator 210 performs an overwrite on the memory. In this case, the old data stored in the memory disappears due to the overwrite.
[0249] However, in the present embodiment, the source data generator 210 notifies the server of the memory status information. The source data generator 210 notifies the server of the memory status information as advance notice before the memory becomes full of data.
[0250] The server then inquires of the source data generator 210 as to how to respond. That is, it inquires as to whether to overwrite the old data or to leave the data stored in the memory with the server, and if so, for how long the data should be guaranteed. In response to this inquiry, the source data generator 210 determines whether to leave the data with the server based on the condition data set in the notification condition setting device 215. It is also possible to set the range of data to be left (the range of old data, or the type of data) based on the condition data.
[0251] When the source data generator 210 deposits data in a server, it can designate a main server. The main server can perform billing processing according to the data being deposited. For example, the server employs a method in which the deposit fee is higher for older data (data stored earlier) and the fee is lower for newer data (data stored more recently). The source data generator 210 may also weight the deposited data to indicate its importance. In this case, the higher the weight of the data, the higher the main server will deposit the data.
[0252] Chapter 4 How to Ensure the Reliability of Distributed Data and Management Information Fig. 24 shows an example of how to ensure the reliability of data in the above-mentioned embodiment, and shows the basic concept. In the data reliability assurance system, the data distribution area is worldwide, and the storage medium for storing data can be storage media in various servers and / or agents.
[0253] In this embodiment, the small agent 40, device agents 42, 46, edge agents 44, 48, etc. have functions to accumulate data and transmit data. Furthermore, there are cases where these agents 40, 42, 44, 46, 48, etc. wish to temporarily deposit accumulated data in an external server or agent for a long or short period of time.
[0254] In the short term, the memory of an agent may need to be repaired or inspected for some reason. In the long term, old data or historical data may need to be stored. In such a case, in this data reliability assurance system, each agent converts a chunk of data or a data file into a group of ECC blocks (Error Correction Control Blocks), and each sector of each ECC block can be distributed and sent to multiple servers (6a, 6b, 6c, etc.) for storage (this can be called block-distribution arrangement). One ECC block consists of, for example, 16 sectors, and each sector consists of, for example, 13 rows of data. One ECC block includes outer code code PO and inner-code parity PI that contribute to error correction, and outer code parity PO is separated row by row and embedded in one of the sectors (13 rows).
[0255] The destination of each of the 16 sectors is stored as management information (URL data) in the agent. Meanwhile, the receiving server or agent reserves a data storage area in part of its own memory. When the receiving server or agent stores data, it can associate the stored data with the URL data of the destination agent and save it in memory.
[0256] When the agent that has deposited the data wants to collect the distributed data, it reads the URL data of each server from the management information and requests the deposited data from that server. The agent then collects sectors from each server and constructs an ECC block. After that, error correction is performed on the ECC block, and the agent can restore the original data file or block of data.
[0257] By distributing data as described above, even if it becomes impossible to retrieve data from some servers, the original data can be restored within the error correction capabilities of the ECC blocks. It is possible to store data in a large amount of data. Although the above explanation shows a group of servers 4, this is not limiting. Data storage devices can be expanded to the whole world by entering into a contract with the memory area rental manager, such as personal computers of general users and part of a company's server. In other words, this system allows the memory area manager to carry out data storage operations. It is possible to set storage fees according to the data storage period: short-term, medium-term, or long-term.
[0258] In addition, when the agent encodes the original data into the ECC block state, the original data may be scrambled as a pre-processing step. This allows the damaged positions to be finely distributed in the original data even if some of the ECC blocks cannot be restored.
[0259] Chapter 5 Other Embodiments of Edge Device The embodiment shown in Fig. 1 has been used as an example for the explanation up to Chapter 4. However, the edge device in this embodiment may adopt a wide variety of embodiments as described below.
[0260] For example, an entire factory or a manufacturing process may be regarded as one edge device as shown in Fig. 25. Also, as shown in Fig. 25, a hierarchical network connection may be established between a plurality of edge devices 314, 318.
[0261] 25, an edge agent 344 in a factory (edge device) 314 collects sensor data from various sensor devices 332 to 338 arranged in a process, and detects the state in the factory. The detection setting conditions required for the data collection may be displayed to a user 310 on an image display 376. Also, a voice dialogue unit 374 may be used as an interface with the user 310.
[0262] A part of the sensor data collected here may be communicated to the distributed server group 304 and stored in the memory unit 306, and then used in the machine learning device 370. The distributed server group 304, the memory unit 306, and the machine learning device 370 perform sensor data collection, accumulation, and analysis processing.
[0263] As described above, this embodiment may be applied not only to a factory but also to a work site zone 400, a manufacturing process zone 410, and a market zone 420 as shown in FIG. 26. In the embodiment shown in FIG. 26, a plurality of edge devices are hierarchically connected to each other through a network. That is, an edge agent 347 (e.g., an edge device 347-1 for a manufacturing device), an edge agent 348 (e.g., an edge device 348-1 for an inspection device), and an edge agent 349 (e.g., an edge device 349-1 for a transport device) are arranged inside each of the manufacturing devices, inspection devices, and transport devices corresponding to the edge devices. Then, various data are communicated to necessary locations from the edge agents 347, 348, and 349 and the sensor device 332 via the network line 302.
[0264] The edge agent 344 in the edge device 314 that manages and controls the entire on-site zone 400 performs autonomous control such as data transmission control, anomaly detection, and device control.
[0265] On the other hand, big data analysis 150, machine learning 370, and real-time monitoring 168 are performed on the distributed server 304 side connected to this edge device 314. Furthermore, data related to "components" 306-1, data related to "factory management" 306-2, and data related to "quality control" 306-3 are stored in the memory unit 306 owned by this distributed server group 304. The data related to "components" is used to manage the procurement process 412, data related to "factory management" is used to manage the manufacturing process 414, and data related to "quality control" is used. The data is used to manage the inspection work 416.
[0266] Not limited to the above, in the market zone 420, edge devices and edge agents are placed at each shipping site 430, operation site 432, maintenance site 434, reuse site 436, and disposal site 438, and are used for data communication and data storage / publication / utilization as described up to Chapter 4.
[0267] As examples of data analysis in Chapter 3, the video analysis and image analysis shown in Fig. 11 to Fig. 14 have been mainly described. However, this embodiment is not limited to these, and any form of data analysis may be performed. An example of such data analysis is shown in Fig. 27.
[0268] 27, various sensor data 390 and various log data 396 from sensor devices 332-338 are collected by an edge agent 344 using JMS (Java Message Service described in Sections 3.3 and 3.5) via a network line 302. The edge agent 344 has a detection function (stream processing function) 160 that utilizes a log pattern 398 and a detection model 166.
[0269] As the detection model 166, any method such as multivariate correlation 170, Western Electric Company Rule (WECO) (3 Sigma) 172, Mahalanobis Taguchi Method (MT) 174, clustering 176, event pattern 178, etc. may be used.
[0270] Then, based on the data analysis results, the edge agent 344 may use JMS to perform automatic control 140 on the driving device 380 or issue an alert 120. In addition, a notification or consultation may be sent to a specific user by email 110 using the information of the email address EMADRS in the individual user information USEINF in Fig. 10.
[0271] In addition, the methods for using the results of the data analysis are not limited to those described above, but can be applied to any other methods, including those described in Chapter 3.
[0272] Up to now, the edge device has been mainly described as a stationary type, but the present embodiment may also be applied to a mobile object (connected car, connected bus, connected truck, etc.).
[0273] 28, the entire large bus that can be connected to a network can be regarded as an edge device 516. A central control calculator 350 (edge agent 347) installed in the large bus controls the battery pack 530, and the air-cooled driving device 382, inverter 384, and motor 386 that belong to the driving device. The bus is equipped with various sensor devices 330, and can transmit various sensor data to the edge agent 347.
[0274] 28, a cloud-ready battery bank 532 is present in the battery pack 530, which is composed of multiple cloud-ready battery modules 534. A battery management unit 542 is disposed in the cloud-ready battery bank 532, and a cell monitoring unit 544 is disposed in the cloud-ready battery module 534, as device agents of each.
[0275] The cell monitoring unit 544 can monitor the state of charge. It can also monitor the charge completion status when charging the battery pack 530, and can control the connection and cutoff of charging power.
[0276] The edge agent 347 receives the battery remaining status information from the distributed server group 304. To this end, battery status parameters 347-1 appropriate for the battery being used can be downloaded. Also, battery status information 347-2 that grasps the status of the battery being used (residual battery power, battery characteristics, etc.) can be uploaded to the distributed server group 304. The distributed server group 304 can monitor and diagnose 347-2 of the battery being used by the bus based on the battery status information 347-2, and provide it to the edge agent 347 (bus) as service data.
[0277] The bus further carries a charging device (edge device) 514. This charging device 514 includes a charging power source (device) 522, a power transmitting device (edge device) 518, and a power receiving device (edge device) 519. When the power receiving device 519 operates, charging is performed on each cell of the battery pack 530 via the charging control unit 352. The power transmitting device 518 operates, for example, when charging another vehicle.
[0278] Fig. 29 shows various functions in a network-connectable automobile (connected car). As shown in Fig. 29, a seat control function 601, a back guide monitor 602, an anti-lock brake function 603, a stability control unit 604, a pre-crash function 605, a car navigation system 606, a power steering function 607, a motor generator 608, an engine control function 609, an auto-cruise function 610, a lighting control function 612, a millimeter wave radar device 613, and the like are arranged in the automobile, and are managed / controlled by a common edge agent 347.
[0279] 30 shows the functions of the edge agent 347. Output signals from the various devices 632, the special device 634, and the edge device 618 are input into the edge agent 347 via the in-vehicle network line. Also, an edge linking function unit 676 exists in the edge agent 347, which realizes linking operations with the various edge devices 618 in the vehicle. Then, a device control unit 674 interfaces with the various devices 632 in the vehicle, and a special I / O unit 670 interfaces with the special device 634.
[0280] Various types of sensor data collected by various in-vehicle devices 632 are analyzed in a data processing unit 672. Furthermore, the security control unit 620 performs security control on highly confidential sensor data and analyzed data.
[0281] Moreover, a management function unit 648 in Fig. 30 manages / controls the various functions shown in Fig. 29. Furthermore, the edge agent 347 includes an optimum transmission / reception control unit 642 according to the cloud and communication state, and a transmission / reception control unit 644 according to the data type and urgency.
[0282] In addition, the edge agent 347 may also perform a cloud selection unit 646 that selects a communication partner (specific cloud) within the distributed server group 304, traffic control 678 that resolves data communication problems in the in-vehicle network circuit, and data selection 622 based on predetermined rules.
[0283] In particular, as a means for monitoring the state of the driver 52 and passengers of the vehicle, an in-vehicle camera (sensor device) 339 may be used as shown in Fig. 31. In this case, as the data analysis contents of the device agent 347 residing in the vehicle, big data analysis 150 (for example, tracking the peak of blood pressure specific to an individual and measuring the spectral density of the peak) may be performed using data 150-1 such as pulse rate as shown in Fig. 31, or image analysis 180 may be performed using captured image data 180-1 such as the driver's yawning. Based on the data analysis results, a warning may be issued to the driver 552, or feedback may be provided to the operation management of a related business operator 554.
[0284] From the data collected as described above, quality information 711 of the vehicle and / or its components, map information 712 from image analysis, and environmental information from audio analysis can be obtained. Furthermore, using the quality information 711, market review information, quality review information 714, alarm information 715, email information 716, etc. can also be created.
[0285] The above-mentioned embodiments are representative examples. The present invention also includes combinations of the above-mentioned various data and their handling methods and management methods, and selective combinations of various data, storage devices (memories), storage methods, communication methods, and data processing methods. For example, in a communication method, in communication between devices, the same content may be distributed and communicated over multiple channels or streams, rather than communicating the same content over one channel or stream. In addition, the areas in which the above-mentioned data is handled can be variously combined, including between devices on an individual basis, within a home, within a factory, within various regions, and in spatial areas (including, for example, aircraft), as well as combinations of these.
[0286] Furthermore, the data compression method is not limited to the above embodiment, and various methods (including future new methods) can be applied. In addition, by selectively adopting a plurality of different data compression methods for each specific region or agent, it is possible to enhance the confidentiality of data and differentiate system usage fees. [Explanation of symbols]
[0287] 2...Internet, 4...Distributed server group, 6...Memory section, 8...User I / F section, 10...User ID & password, 14, 16...Edge device, 18...Portable edge device, 20, 24, 26...Memory device, 32, 34, 36...Sensor device, 40...Small agent, 42, 46...Device agent, 44, 47, 48...Edge agent, 52, 54, 56···common key, 62, 64, 66···management information, 68···edge / device table, 70···electric signage, 72···passageway, 74···effective field of view range of imaging, 75~79···passengers, 100···elapsed time, 104a, 104b···advertising content, 110···email, 120···alert, 130···Java (registered trademark) Message Service (JMS), 140···automatic control, 150···Big data analysis, 160···Detection function (stream processing), 166···Detection model, 168···Real-time monitoring, 170···Multivariate correlation, 172···WECO (Western Electric Company Rule), 174···MT (Mahalanobis Taguchi Method), 176···Clustering, 178···Event pattern, 180···Image analysis, 302···Network line, 304···Distributed server group, 306···Memory unit, 310 ··· User, 330 ··· Various sensor devices, 332 to 338 ··· Sensor device, 339 ··· Vehicle-mounted camera (sensor device), 314, 316, 318 ··· Edge device, 344, 347, 348, 349 ··· Edge agent, 350 ··· Central control computing unit, 352 ··· Charging control unit, 370 ··· Machine learning, 374 ··· Voice dialogue, 376 ··· Image display / detection setting, 380 ··· Actuator device, 382 ··· Air-cooled actuating device, 384···Inverter (driving device), 386···Motor (driving device), 388···Battery pack device, 390···Sensor data, 396···Log data, 398···Log pattern, 400···Site zone (Industrial Zone), 410···Manufacturing process zone, 412···Procurement process, 414···Manufacturing process, 416···Inspection process, 420···Market zone (Social Zone), 430···Shipping site, 432···Operation site, 434···Maintenance site, 436: Reuse site, 438: Disposal site, 512: Power receiving device (edge device ), 514... charging device (edge device), 516... edge device (connected bus), 518... power transmission device (edge device), 522... charging power source (device), 530... battery pack, 532, 534... cloud-ready battery bank (device), 542... battery management unit (device agent), 544... cell monitoring unit (device agent), 552 ···Driver, 554 ···Operator, 601 ···Seat control, 602 ···Back guide monitor, 603 ···Anti-lock brake, 604 ···Stability control, 605 ···Pre-crash, 606 ···Car navigation system, 607 ···Power steering, 608 ···Motor generator, 609 ···Engine control, 610 ···Auto cruise, 612 ···Riding control, 613 ···Millimeter wave radar, 618 ···Edge device, 620....Security, 622....Data selection based on rules, 632....Device, 634....Special device, 642....Optimum transmission / reception control section according to cloud and communication state, 644....Transmission / reception control section according to data type and urgency, 646....Cloud selection, 648....Management function, 670....Special I / O, 672....Data processing, 674....Device control, 676....Edge collaboration, 678....Traffic control, ATRIBT....Attribute information, BNKACT....Bank account number for fee transfer, CI_SZ···Control information size (4 bytes), CNTINF···Control information (2MB or less), CRC···Error check, CTTYPE···Control type, DAT_SZ···Communication data body size (4 bytes), DATA···Data body (188 bytes), DATAID···Data identification information, DIPADRS···Destination IP address (16 bytes) (Destination Internet Protocol Address), DN···Increase or decrease in the number of people within the effective field of view, DMN_ID···Data manager identification information, DPUBCL··Data publication class, DSRCTG··Data search tag information, DT_ID··Data identification information, DTPUB··Data publication / billing information, DTTYPE··Data type, DYMD··Data creation date, EDDRIF··Installation / placement information, EDDR··Type, EDR_ID··Individual identification, EMADRS··Email address, FEEDMN··Network domain publication fee, FEEMEM··Recording area usage (dollars / byte / month), FEEMMB: Public fee within group members, FEEOPN: Public fee when fully open, FGPRLK: Link information for fingerprint matching, FLD_ID: Partition / folder / directory / drive identification, FRECLK: Link information for face recognition, GRP_ID: Participation group identification information, HPLMT: Remaining number of passable nodes information (Hop Limit) (1 byte), IPADRS: IP address, IPCLS: Communication class information (1 byte), IPLBL: Communication type label information (2.5 bytes), IPPKT: IP packet related information (8 bytes), IPv6DU: IPv6 data / payload, IPv6HD: IPv6 header, IPVRS version information (4 bits), LIPv6DU: IPv6 data / payload length information (2 bytes) (Length of Internet Protocol Version 6 Data / Payload), KEYPRT: Data control information, KEYVAL: Data control information and communication data body, MACHD···MAC layer header, MAN_ID··Administrator identification information, MNPKT-1, -2··Management packet, MNPK_ID··Management packet identification information, MPDU··MAC layer frame, MPK_SZ··Management packet size, MSDU··MAC layer data / payload (Medium Access Layer Data / Payload), NDM_ID··Network domain of the device used by the user, NDSTM··Non-playback period, NP··Number of other passersby, NPUBTM··Not disclosed period, NS: the number of people who are not looking at the bulletin board but are standing still, NTTN: non-transfer period, NXHD: identification information for the header type immediately following the IPv6 header (1 byte), NW: the number of people looking at the bulletin board, PARMAT: parameter information, PASSWD: password, PHYHD: physical layer header, PPDU: physical layer frame, PRFIX....Stolen part (1 byte), PSDU....Physical layer data / payload, PUBCDA....Amount charged when releasing data under data processing condition A (including no release), PUBCDB....Amount charged when releasing data under data processing condition B (including no release), PUBCND....Data release condition information, PUBDMN....Release limited to within domain, PUBMMB....Release limited to specific members, PUBOPN....Completely open release, PUBORG....Amount charged when releasing raw data (including no release), RDMG: Recording area management information, SIPADRS: Sender IP address (16 bytes) (Source Internet Protocol Address), SIPHD: Heading information, SRCINF: Search related information, TCPDU: TCP data / payload (Transmission Control Protocol Data / Payload), TCPHD: TCP header (Transmission Control Protocol), TENTID: Data storage location, TMMN: Period management information, TSTP: Time stamp (4 bytes), USER...Individual user or family, UPCNT...Higher connection destination, USBL...User belonging information, USEINF...User information, USR_ID...User identification information, USRECG...User authentication information, VALPCK-1, -2...Pack within the communications data body, VALPRT...Communications data body, VERINF...Version information, VPK_SZ...Pack size within the communications data body.
Claims
1. A data management method for a network system including a server, an edge device connected to the server via a network, and a plurality of memory devices connected to the edge device via the network, comprising: The edge device includes: A first memory device can collect data from a sensor device, and can set management information including at least whether or not data is to be made public with respect to the collected data, and can store the collected data and the management information in a data storage unit in the first memory device; Furthermore, when the data is stored in the data storage unit, a risk of data loss occurring in the data storage unit is recognized before the effective remaining unrecorded capacity of the data storage unit is exhausted; When the risk of data loss is recognized, the data in the data storage unit that is at risk of data loss is transmitted to the server and the second memory device via the network together with the management information; The server and the second memory device each store the management information including the data search location having the same contents as each other, so that even if the management information in either the server or the second memory device is lost, the data search location can be restored from the management information in the other memory device; Further, the edge device, the server, and the second memory device The management information is managed in a table for each of the plurality of memory devices, and the contents of the management information relating to the server and the second memory device include identifying whether there is private data or public data in the plurality of memory devices by class indicating the size of the range of disclosure, and managing the information; The plurality of memory devices include a memory device managed by a memory area rental manager for storing data, and at least a data storage period is set for the memory device.
23. A data management method for a network system comprising:
2. 2. The data management method for a network system according to claim 1, wherein said management information comprises a table having identification information indicating whether said public data is open to specific members or to the general public.
3. 3. The data management method for a network system according to claim 1, wherein said management information includes information regarding a fee for said non-public data.
4. 2. The data management method for a network system according to claim 1, wherein the memory area rental manager can set the data storage period to short term, medium term, or long term.
5. A data management system for a network system comprising: a server; a first memory device connected to the server via a network; an agent provided in the first memory device; and a data storage unit controlled by the agent, the first memory device stores, under the control of the agent, data collected from the sensor device and management information regarding the data, the management information including at least whether the data is to be made public, in the data storage unit; Furthermore, when the agent stores the data in the data storage unit, the agent recognizes a risk of data loss in the data storage unit before the effective remaining unrecorded capacity of the data storage unit is exhausted; When the risk of data loss is recognized, the data in the data storage unit that is at risk of data loss is transmitted to the server and the second memory device via the network together with the management information; The server and the second memory device each store the management information including the data search location having the same contents as each other, so that even if the management information in either the server or the second memory device is lost, the data search location can be restored from the management information in the other memory device; The agent, the server and the second memory device further comprise: The management information is managed in a table for each of a plurality of memory devices, and the contents of the management information relating to the server and the second memory device include identifying whether there is private data or public data in the plurality of memory devices by class indicating the size of the range of disclosure, and managing the information; A data management system for a network system, characterized in that the plurality of memory devices include a memory device managed by a memory area rental manager for storing data, and at least a data storage period is set for this memory device.
Citation Information
Patent Citations
Video monitor system, monitor video management device and monitor video providing device
JP2006345208A
Monitoring camera system, video recording apparatus, and video recording method
JP2010187124A
Medical information transmission method, medical information transmission system, and patient portable communication device via a life-critical network.
JP2011502369A
Terminal device, communication system, data management method, server device, and recording medium
WO2011018937A1