WO2013186866A1 - データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体 - Google Patents

データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
WO2013186866A1
WO2013186866A1 PCT/JP2012/065094 JP2012065094W WO2013186866A1 WO 2013186866 A1 WO2013186866 A1 WO 2013186866A1 JP 2012065094 W JP2012065094 W JP 2012065094W WO 2013186866 A1 WO2013186866 A1 WO 2013186866A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
time
storage unit
definition
columns
Prior art date
Application number
PCT/JP2012/065094
Other languages
English (en)
French (fr)
Inventor
美嗣 河村
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2012/065094 priority Critical patent/WO2013186866A1/ja
Priority to JP2012552975A priority patent/JPWO2013186866A1/ja
Publication of WO2013186866A1 publication Critical patent/WO2013186866A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D4/00Tariff metering apparatus
    • G01D4/002Remote reading of utility meters
    • G01D4/004Remote reading of utility meters to a fixed location

Definitions

  • the present invention relates to a data storage device, a data storage system, a data storage method, and a computer-readable recording medium.
  • the present invention particularly relates to a technique for storing data collected via a network.
  • Patent Documents 1 to 10 There is a technique for periodically collecting data and storing it in a database in an environment where data can be acquired via a network (see, for example, Patent Documents 1 to 10).
  • the data collection interval can be changed from a regular interval to a variable interval (see, for example, Patent Documents 1, 6 to 8, and 10).
  • FIG. 26 of Patent Document 3 discloses a database that stores scheduled measurement data in the columns of time 1, time 2,..., Time 7.
  • the conventional technique has a problem that the data collection interval cannot be changed from the regular interval to the variable interval without changing the database structure.
  • the object of the present invention is to change the data collection interval from a regular interval to a variable interval without changing the database structure, for example.
  • a data storage device includes: A tabular data store having rows and columns, each row being identified by at least a date, and some columns being data columns for storing data values; A definition storage unit that stores a definition of a correspondence relationship between a time and a column for a part of the data columns; A receiving unit that receives the transmitted data value from a device that transmits the data value associated with the date and time; For each data value received by the receiving unit, when the definition of the correspondence between the time and the column corresponding to the received data value is stored in the definition storage unit, based on the stored definition, Among the data columns, a column corresponding to the time corresponding to the received data value is selected, and the definition of the correspondence relationship between the time and column corresponding to the received data value is not stored in the definition storage unit.
  • a selection unit that selects a column in which the definition of the correspondence relationship with time is not stored in the definition storage unit, among the data columns;
  • a storage unit that stores the data value received by the reception unit in the column selected by the selection unit in a row identified by a date corresponding to the received data value in the data storage unit;
  • the definition storage unit of the data storage device stores the definition of the correspondence between time and column for some of the data columns in the data storage unit. If the definition of the correspondence between the time and the column corresponding to the data value received from the device is not stored in the definition storage unit, the selection unit of the data storage device A column in which the definition of the correspondence relationship is not stored in the definition storage unit is selected.
  • the storage unit of the data storage device stores the data value received from the device in the column selected by the selection unit in the row identified by the date corresponding to the received data value of the data storage unit. Therefore, according to one aspect of the present invention, the data collection interval can be changed from the regular interval to the variable interval without changing the database structure.
  • FIG. 3 is a block diagram showing a configuration of a data storage system according to Embodiments 1 and 2.
  • FIG. 4 is a diagram illustrating an example of a hardware configuration of a data storage device according to the first to third embodiments.
  • 5 is a flowchart showing the operation of the data storage device according to the first and second embodiments.
  • 4 is a table showing an example of a data storage unit according to the first and second embodiments.
  • 4 is a table showing an example of a definition storage unit according to the first and second embodiments.
  • FIG. 4 is a table showing an example of a data storage unit according to the first and second embodiments.
  • FIG. 4 is a block diagram illustrating a configuration of a data storage system according to a third embodiment.
  • 10 is a table showing an example of a data storage unit according to the third embodiment.
  • 10 is a table showing an example of a definition storage unit according to the third embodiment.
  • 10 is a table showing an example of a change storage unit according to the third embodiment.
  • 10 is a table showing an example of a data storage unit according to the third embodiment.
  • FIG. 1 is a block diagram showing a configuration of a data storage system 100 according to the present embodiment.
  • the data storage system 100 includes a data storage device 200, a device 300, and a data aggregation device 400.
  • the device 300 transmits the data value associated with the date and time to the data storage device 200 via the network. Specifically, the device 300 transmits the data value to the data storage device 200 at the same time every day (an example of a plurality of days) (that is, at regular intervals) according to an instruction from the instruction unit 205 described later. The device 300 further transmits a data value to the data storage device 200 at a time individually designated on a specific day (that is, at a variable interval) in accordance with an instruction from the instruction unit 205 described later.
  • the data totaling device 400 reads the data values stored by the data storage device 200 from the data storage device 200 via the network, and totals and analyzes the read data values.
  • the data totaling device 400 may be integrated with the data storage device 200.
  • the data storage device 200 includes a data storage unit 201, a definition storage unit 202, a change storage unit 203, an input unit 204, an instruction unit 205, a reception unit 206, a selection unit 207, and a storage unit 208.
  • the data storage unit 201 is a tabular database having rows and columns, each row is identified by at least a date, and some columns are data columns for storing data values. Some of the data columns are columns for storing data values transmitted from the device 300 at regular intervals. The remaining columns of the data column are columns for storing data values transmitted from the device 300 at variable intervals.
  • the definition storage unit 202 stores the definition of the correspondence between the time and the column for the above-mentioned part of the data columns in the data storage unit 201.
  • the change storage unit 203 stores information indicating the transmission timing of data values transmitted from the device 300 at variable intervals (that is, information related to changes in the data collection interval).
  • the input unit 204 inputs the definition of the correspondence between the time and the column to the definition storage unit 202 manually or automatically. Further, the input unit 204 manually or automatically inputs information related to the change of the data collection interval to the change storage unit 203.
  • the instruction unit 205 instructs the device 300 what time to send the data value every day based on the definition input by the input unit 204 (or stored in the definition storage unit 202). That is, the instruction unit 205 instructs the device 300 to transmit the data value to the data storage device 200 at the time when the definition of the correspondence relationship with the column is stored in the definition storage unit 202 every day. In addition, the instruction unit 205 sets the data value at what time on a specific day based on the information input by the input unit 204 (or stored in the change storage unit 203), in addition to the time at which the data value is transmitted every day. The device 300 is instructed whether to transmit. That is, the instruction unit 205 further instructs the device 300 to transmit the data value to the data storage device 200 at a time when the definition of the correspondence relationship with the column is not stored in the definition storage unit 202 on a specific day. .
  • the receiving unit 206 receives the transmitted data value from the device 300.
  • the date and time corresponding to the data value is the date and time when the data value was transmitted from the device 300 (that is, the transmission date and time). It is desirable that the receiving unit 206 receives information indicating the transmission date and time of the data value from the device 300 together with the data value so that the date and time corresponding to the data value can be accurately identified. However, the reception unit 206 may substitute the transmission date and time of the data value with the reception date and time of the data value, or may infer from the reception date and time of the data value. Note that the date and time when the device 300 acquires the data value (that is, the acquisition date and time) may be handled as the date and time corresponding to the data value.
  • the selection unit 207 determines, for each data value received by the reception unit 206, whether or not the definition of the correspondence relationship between the time and the column corresponding to the received data value is stored in the definition storage unit 202.
  • the selection unit 207 selects the data string in the data storage unit 201 based on the stored definition.
  • the column corresponding to the time corresponding to the received data value is selected. That is, the selection unit 207 selects a data string in which the correspondence relationship with the time corresponding to the received data value is defined in the definition storage unit 202.
  • the selection unit 207 corresponds to the time among the data columns in the data storage unit 201. A column in which the definition of the relationship is not stored in the definition storage unit 202 is selected. In other words, the selection unit 207 selects a data string whose correspondence with time is not defined in the definition storage unit 202.
  • the storage unit 208 stores the data value received by the reception unit 206 in the column selected by the selection unit 207 in the row identified by the date corresponding to the received data value in the data storage unit 201.
  • the data values collected from the device 300 at regular intervals can be stored in the data storage unit 201 in an integrated manner.
  • the data totalization apparatus 400 can totalize data values efficiently.
  • the data aggregation device 400 can identify which column corresponds to what time by referring to the definition stored in the definition storage unit 202.
  • the data totalization apparatus 400 can analyze the data value of each day in detail. At the time of analysis, the data totalization apparatus 400 can identify the data values at which the data values collected at variable intervals are referred to by referring to the information stored in the change storage unit 203.
  • the data storage device 200 includes hardware such as a processing device, a storage device, an input device, and an output device.
  • the hardware is used by each unit of the data storage device 200.
  • the processing device is used for performing calculation, processing, reading, writing, and the like of data and information in each unit of the data storage device 200.
  • the storage device is used to store the data and information.
  • the input device inputs the data and information, and the output device is used to output the data and information.
  • the data storage unit 201, the definition storage unit 202, and the change storage unit 203 are implemented by a storage device.
  • FIG. 2 is a diagram illustrating an example of a hardware configuration of the data storage device 200.
  • the data storage device 200 is a computer, and includes an LCD 901 (Liquid / Crystal / Display), a keyboard 902 (K / B), a mouse 903, an FDD 904 (Flexible / Disk / Drive), and a CDD 905 (Compact / Disc / Drive). ) And a hardware device such as a printer 906. These hardware devices are connected by cables and signal lines. Instead of the LCD 901, a CRT (Cathode / Ray / Tube) or other display device may be used. Instead of the mouse 903, a touch panel, a touch pad, a trackball, a pen tablet, or other pointing devices may be used.
  • the data storage device 200 includes a CPU 911 (Central Processing Unit) that executes a program.
  • the CPU 911 is an example of a processing device.
  • the CPU 911 includes a ROM 913 (Read / Only / Memory), a RAM 914 (Random / Access / Memory), a communication board 915, an LCD 901, a keyboard 902, a mouse 903, an FDD 904, a CDD 905, a printer 906, and an HDD 920 (Hard / Disk) via a bus 912. Connected with Drive) to control these hardware devices.
  • a flash memory, an optical disk device, a memory card reader / writer, or other recording medium may be used.
  • RAM 914 is an example of a volatile memory.
  • the ROM 913, the FDD 904, the CDD 905, and the HDD 920 are examples of nonvolatile memories. These are examples of storage devices.
  • the communication board 915, the keyboard 902, the mouse 903, the FDD 904, and the CDD 905 are examples of input devices.
  • the communication board 915, the LCD 901, and the printer 906 are examples of output devices.
  • the communication board 915 is connected to a LAN (Local / Area / Network) or the like.
  • the communication board 915 is not limited to a LAN, but includes an IP-VPN (Internet / Protocol / Virtual / Private / Network), a wide area LAN, an ATM (Asynchronous / Transfer / Mode) network, a WAN (Wide / Area / Network), or the Internet. It does not matter if it is connected to.
  • LAN, WAN, and the Internet are examples of networks.
  • the HDD 920 stores an operating system 921 (OS), a window system 922, a program group 923, and a file group 924.
  • the programs in the program group 923 are executed by the CPU 911, the operating system 921, and the window system 922.
  • the program group 923 includes programs that execute the functions described as “ ⁇ units” in the description of this embodiment.
  • the program is read and executed by the CPU 911.
  • the file group 924 includes data, information, and signal values described as “ ⁇ data”, “ ⁇ information”, “ ⁇ ID (identifier)”, “ ⁇ flag”, and “ ⁇ result” in the description of this embodiment. And variable values and parameters are included as " ⁇ file", " ⁇ database” and " ⁇ table” items.
  • “ ⁇ file”, “ ⁇ database”, and “ ⁇ table” are stored in a recording medium such as the RAM 914 and the HDD 920.
  • Data, information, signal values, variable values, and parameters stored in a recording medium such as the RAM 914 and the HDD 920 are read out to the main memory and the cache memory by the CPU 911 via a read / write circuit, and extracted, searched, referenced, compared, and calculated. It is used for processing (operation) of the CPU 911 such as calculation, control, output, printing, and display.
  • processing of the CPU 911 such as extraction, search, reference, comparison, calculation, calculation, control, output, printing, and display, data, information, signal values, variable values, and parameters are temporarily stored in the main memory, cache memory, and buffer memory.
  • the arrows in the block diagrams and flowcharts used in the description of this embodiment mainly indicate data and signal input / output.
  • Data and signals are recorded in memory such as RAM 914, FDD904 flexible disk (FD), CDD905 compact disk (CD), HDD920 magnetic disk, optical disk, DVD (Digital Versatile Disc), or other recording media Is done.
  • Data and signals are transmitted by a bus 912, a signal line, a cable, or other transmission media.
  • what is described as “to part” may be “to circuit”, “to apparatus”, “to device”, and “to step”, “to process”, “to” It may be “procedure” or “procedure”. That is, what is described as “ ⁇ unit” may be realized by firmware stored in the ROM 913. Alternatively, what is described as “ ⁇ unit” may be realized only by software or only by hardware such as an element, a device, a board, and wiring. Alternatively, what is described as “ ⁇ unit” may be realized by a combination of software and hardware, or a combination of software, hardware and firmware.
  • Firmware and software are stored as programs in a recording medium such as a flexible disk, a compact disk, a magnetic disk, an optical disk, and a DVD.
  • the program is read by the CPU 911 and executed by the CPU 911. That is, the program causes the computer to function as “ ⁇ unit” described in the description of the present embodiment. Alternatively, the program causes a computer to execute the procedures and methods of “to unit” described in the description of the present embodiment.
  • FIG. 3 is a flowchart showing the operation of the data storage device 200 (corresponding to the data storage method according to the present embodiment and the processing procedure of the program recorded on the computer-readable recording medium according to the present embodiment). is there.
  • the device 300 is installed inside or outside a building such as a house, office, store, or factory, and measures the amount of electricity used in the building (an example of energy consumption).
  • the device 300 transmits the measured electricity usage data value to the data storage device 200 at regular intervals. Specifically, after March 15, 2012, the device 300 transmits the data value of the amount of electricity used in the latest 3 hours to the data storage device 200 every 3 hours from 9:00 to 18:00 every day. . After May 31, 2012, the device 300 transmits the data value of the amount of electricity used in the latest three hours to the data storage device 200 at 21:00 every day.
  • the device 300 further transmits the data value of the measured electricity usage to the data storage device 200 at variable intervals. Specifically, the device 300 transmits the data value of the amount of electricity used in the latest 10 minutes to the data storage device 200 every 10 minutes from 13:00 to 14:00 on June 1, 2012. In this example, even when the data value is transmitted from the device 300 at a variable interval, the transmission of the data value is repeated at a constant interval, but this repetition interval is different from the regular interval described above.
  • FIG. 4 is a table showing an example of the data storage unit 201 immediately before 9:00 on June 1, 2012.
  • the data storage unit 201 is a tabular database having columns of date 211, regular interval data 212, and variable interval data 213. Each row is identified by a date 211.
  • the date 211 is a column for storing the date.
  • the regular interval data 212 is m columns (that is, data sequences) for storing data values transmitted by the device 300 at regular intervals.
  • FIG. 5 is a table showing an example of the definition storage unit 202.
  • the definition storage unit 202 is a tabular database having columns of a start date 221, a column name 222, and a time 223.
  • the definition storage unit 202 stores the definition of the correspondence between the time and the regular interval data 212 (that is, the column) in the data storage unit 201.
  • Each row is identified by a combination of a start date 221 and a column name 222.
  • the start date 221 is a column that stores the date on which the definition is valid.
  • the column name 222 is a column that stores the column name of the regular interval data 212.
  • the time 223 is a column that stores the time corresponding to the regular interval data 212.
  • Definitions stored in the definition storage unit 202 are written in advance by the input unit 204.
  • the input unit 204 receives an input of the definition of the correspondence relationship between the time and the regular interval data 212 from the user via the input device. Then, the input unit 204 writes the input definition into the definition storage unit 202.
  • the input unit 204 receives an input of a schedule from which data values are transmitted by the device 300 from the user via the input device. Then, the input unit 204 defines the correspondence between the time and the regular interval data 212 based on the input schedule, and writes the definition in the definition storage unit 202.
  • the instruction unit 205 instructs the device 300 at what time the data value should be transmitted every day.
  • the time interval 1 and time 2 regular interval data 212 in the row of the date 211 “2012/03/15” are “15” and “18”, respectively.
  • the time 223 in the row of the start date 221 “2012/03/15” and the column name 222 “time 1” is “09: 0”.
  • the time 223 in the row of the start date 221 “2012/03/15” and the column name 222 “time 2” is “12:00”. From this, it can be seen that the data values of electricity usage corresponding to 9:00 and 12:00 on March 15, 2012 are 15 kWh (kilowatt hour) and 18 kWh, respectively.
  • the periodic interval data 212 at time 1, time 2,..., Time m (time 5) in the row of the date 211 “2012/05/31” is “ 15 ”,“ 17 ”,...,“ 3 ”.
  • the time 223 in the row of the start date 221 “2012/03/15” and the column name 222 “time 1” is “09: 0”.
  • the time 223 in the row of the start date 221 “2012/03/15” and the column name 222 “time 2” is “12:00”.
  • the time 223 in the row of the start date 221 “2012/01/31” and the column name 222 “time m (time 5)” is “21:00”. From this, the data values of electricity usage corresponding to 9:00 on May 31, 2012, 12:00, ..., 21:00 are 15 kWh, 17 kWh, ..., 3 kWh, respectively. I know that there is.
  • FIG. 6 is a table showing an example of the change storage unit 203.
  • the change storage unit 203 is a tabular database having columns of change date / time 231, time interval 232, and number of times 233.
  • the change storage unit 203 stores information indicating the transmission timing of data values transmitted from the device 300 at variable intervals. Each row is identified by a change date 231.
  • the change date and time 231 is a column that stores the date and time when the data value starts to be transmitted from the device 300 at variable intervals (that is, the date and time when the change of the data collection interval becomes valid).
  • the time interval 232 is a column that stores an interval at which transmission of data values is repeated.
  • the number of times 233 is a column that stores the number of times data value transmission is repeated.
  • Information stored in the change storage unit 203 is written in advance by the input unit 204.
  • the input unit 204 receives input of information indicating the transmission timing of data values transmitted from the device 300 at variable intervals from the user via the input device. Then, the input unit 204 writes the input information in the change storage unit 203.
  • the input unit 204 receives an input of a schedule from which data values are transmitted by the device 300 from the user via the input device. Then, the input unit 204 generates information indicating the transmission timing of data values transmitted from the device 300 at variable intervals based on the input schedule, and writes the generated information in the change storage unit 203. Based on this information, the instruction unit 205 instructs the device 300 at what time a data value should be transmitted on a specific day.
  • the time interval 232 of the row of the change date 231 “2012/06/01 ⁇ 13: 00” is “10”, and the number of times 233 is “7”. From this, it can be seen that the data value of the electric usage corresponding to 13:00 on June 1, 2012, 13:10,..., 14:00 is transmitted from the device 300.
  • the reception unit 206 receives a data value corresponding to 9:00 on June 1, 2012 from the device 300.
  • the selection unit 207 uses the processing device to store, in the definition storage unit 202, a date before the date corresponding to the data value received in step S101 as the start date 221 and receive it.
  • the row in which the time corresponding to the set data value is stored at time 223 is searched. That is, the selection unit 207 searches the definition storage unit 202 for a row where the start date 221 is before June 1, 2012 and the time 223 is 9:00.
  • the row of the start date 221 “2012/03/15”, the column name 222 “time 1”, and the time 223 “09: 0” matches the search condition.
  • the selection unit 207 determines that the definition of the correspondence relationship between the time corresponding to the data value received in step S101 and the regular interval data 212 of the data storage unit 201 is stored in the definition storage unit 202. Then, the process proceeds to step S103. Note that when there are a plurality of rows that match the search condition, the selection unit 207 selects a row with the latest start date 221.
  • step S103 of FIG. 3 the selection unit 207 stores the column name 222 of the row (in the definition storage unit 202) that matches the search condition in step S102 among the data columns in the data storage unit 201 using the processing device.
  • the periodic interval data 212 (that is, the column corresponding to the time corresponding to the received data value) is selected. That is, the selection unit 207 selects the regular interval data 212 at time 1. Then, the process proceeds to step S105.
  • step S105 in FIG. 3 the storage unit 208 uses the processing device to search the data storage unit 201 for a row in which the date corresponding to the data value received in step S101 is stored in the date 211. That is, the storage unit 208 searches the data storage unit 201 for a row where the date 211 is June 1, 2012. In the data storage unit 201 of this example, there is no line that matches the search condition. Therefore, the storage unit 208 adds a row with the date 211 “2012/06/01” to the data storage unit 201. The storage unit 208 selects the data value received in step S101 in step S103 in the added row (that is, the row identified by the date corresponding to the received data value) in the data storage unit 201. Saved in the regular interval data 212. That is, the storage unit 208 stores “16” in the regular interval data 212 at time 1 in the row of the date 211 “2012/06/01”.
  • the reception unit 206 receives a data value corresponding to 12:00 on June 1, 2012 from the device 300.
  • the selection unit 207 searches the definition storage unit 202 for a row where the start date 221 is before June 1, 2012 and the time 223 is 12:00.
  • the row of the start date 221 “2012/03/15”, the column name 222 “time 2”, and the time 223 “12:00” matches the search condition. Therefore, the selection unit 207 determines that the definition of the correspondence relationship between the time corresponding to the data value received in step S101 and the regular interval data 212 of the data storage unit 201 is stored in the definition storage unit 202. Then, the process proceeds to step S103.
  • step S103 of FIG. 3 the selection unit 207 selects the regular interval data 212 at time 2. Then, the process proceeds to step S105.
  • the storage unit 208 searches the data storage unit 201 for a row where the date 211 is June 1, 2012.
  • the row of the date 211 “2012/06/01” and the regular interval data 212 “16” at time 1 matches the search condition. Therefore, the storage unit 208 stores the data value received in step S101 in the periodic interval data 212 selected in step S103 in the row that matches the search condition in the data storage unit 201. That is, the storage unit 208 stores “20” in the periodic interval data 212 at time 2 in the row of the date 211 “2012/06/01”.
  • the reception unit 206 receives a data value corresponding to 13:00 on June 1, 2012 from the device 300.
  • the selection unit 207 searches the definition storage unit 202 for a row where the start date 221 is before June 1, 2012 and the time 223 is 13:00. In the definition storage unit 202 of this example, there is no line that matches the search condition. Therefore, the selection unit 207 determines that the definition of the correspondence relationship between the time corresponding to the data value received in step S101 and the regular interval data 212 of the data storage unit 201 is not stored in the definition storage unit 202. Then, the process proceeds to step S104.
  • step S104 of FIG. 3 the selection unit 207 selects the variable interval data 213 (that is, the column in which the definition of the correspondence relationship with the time is not stored in the definition storage unit 202) from the data columns in the data storage unit 201. To do. Then, the process proceeds to step S105.
  • the storage unit 208 searches the data storage unit 201 for a row where the date 211 is June 1, 2012.
  • the rows of date 211 “2012/06/01”, regular interval data 212 “16” at time 1 and regular interval data 212 “20” at time 2 match the search conditions. Therefore, the storage unit 208 stores the data value received in step S101 in the variable interval data 213 selected in step S103 in the row that matches the search condition in the data storage unit 201.
  • the storage unit 208 sets the variable interval data as a data value storage destination in a predetermined order (for example, from left to right in FIG. 4). 213 is selected. That is, the storage unit 208 stores “3” in the variable interval data 213 at time m + 1 (time 6) in the row of the date 211 “2012/06/01”.
  • the reception unit 206 receives a data value corresponding to 13:10 on June 1, 2012 from the device 300.
  • the selection unit 207 searches the definition storage unit 202 for a row where the start date 221 is before June 1, 2012 and the time 223 is 13:10. In the definition storage unit 202 of this example, there is no line that matches the search condition. Therefore, the selection unit 207 determines that the definition of the correspondence relationship between the time corresponding to the data value received in step S101 and the regular interval data 212 of the data storage unit 201 is not stored in the definition storage unit 202. Then, the process proceeds to step S104.
  • step S104 in FIG. 3 the selection unit 207 selects the variable interval data 213. Then, the process proceeds to step S105.
  • the storage unit 208 searches the data storage unit 201 for a row where the date 211 is June 1, 2012.
  • the date 211 “2012/06/01” the regular interval data 212 “16” at time 1, the regular interval data 212 “20” at time 2, and the regular interval at time m + 1 (time 6)
  • the row of data 212 “3” matches the search condition. Therefore, the storage unit 208 stores “4” in the variable interval data 213 at time m + 2 (time 7) in the row of the date 211 “2012/06/01”.
  • the data values of the electricity usage corresponding to 13:20, 13:30, 13:40, 13:50, 14:00 on June 1, 2012 are sequentially transmitted from the device 300.
  • the respective data values are obtained by executing steps S101 to S105, so that time m + 3 (time 8), time m + 4 (time 9), time m + 5 (time 10) in the row of date 211 “2012/06/01”, It is stored in the variable interval data 213 at time m + 6 (time 11) and time m + n (time 12).
  • data values of electricity usage corresponding to 15:00, 18:00, 18:00, and 21:00 on June 1, 2012 are sequentially transmitted from the device 300.
  • the respective data values are stored in the periodic interval data 212 at time 3, time 4, and time m (time 5) in the row of the date 211 “2012/06/01” by executing steps S101 to S105. .
  • FIG. 7 is a table showing an example of the data storage unit 201 immediately after 21:00 on June 1, 2012.
  • the periodic interval data 212 at time 1, time 2,..., Time m (time 5) in the row of the date 211 “2012/06/01” is “16”. , “20”,..., “5”.
  • the time 223 in the row of the start date 221 “2012/03/15” and the column name 222 “time 1” is “09: 0”.
  • the time 223 in the row of the start date 221 “2012/03/15” and the column name 222 “time 2” is “12:00”.
  • the time 223 in the row of the start date 221 “2012/01/31” and the column name 222 “time m (time 5)” is “21:00”. From this, the data values of electricity consumption corresponding to 9:00 on June 1, 2012, 12:00, ..., 21:00 are 16 kWh, 20 kWh, ..., 5 kWh, respectively. I know that there is.
  • time m + 1 time 6
  • time m + 2 time 7
  • Time m + n time 12
  • the variable interval data 213 is “3”, “4”,..., “3”, respectively.
  • the time interval 232 of the row of the change date 231 “2012/06/01 ⁇ 13: 00” is “10”, and the number of times 233 is “7”. Yes. From this, the data value of electricity usage corresponding to 13:00, 13:10, ..., 14:00 on June 1, 2012 is 3 kWh, 4 kWh, ..., 3 kWh, respectively. I know that there is.
  • the data storage unit 201 in which data values collected every 3 hours from 9:00 to 21:00 are stored in the data storage unit 201 on June 1, 2012 only from 13:00 to 14:00. Data values collected every 10 minutes can be stored. Therefore, the data totalization apparatus 400 can analyze in detail the electricity usage amount in the afternoon of June 1, 2012. Furthermore, the data totalization apparatus 400 can efficiently total the amount of electricity used for each time period such as morning, noon, evening, and night in an arbitrary period (for example, weekdays, holidays, weeks, months, and years).
  • the database structures of the data storage unit 201, the definition storage unit 202, and the change storage unit 203 are not limited to those described above.
  • the definition storage unit 202 may not have the column of the start date 221. In that case, the definition stored in the definition storage unit 202 is valid for all dates.
  • the change storage unit 203 has a column for storing the date and time when the data value is transmitted from the device 300 at variable intervals instead of the number of times 233 (that is, the date and time when the change of the data collection interval becomes invalid). May be.
  • the change storage unit 203 may not have the number of times 233 columns.
  • the device 300 transmits the data value p times at variable intervals. If p is equal to or smaller than n, the storage unit 208 stores all the data values transmitted from the device 300 in the variable interval data 213 in the corresponding row in a predetermined order (for example, Save from left to right in FIG.
  • the storage unit 208 predetermines from the first data value transmitted from the device 300 to the nth data value as the vacant variable interval data 213 in the corresponding row. Save in the order given (eg, from left to right in FIG. 4).
  • Information stored in the change storage unit 203 is written in advance by the input unit 204.
  • the input unit 204 receives input of information indicating the transmission timing of data values transmitted from the device 300 at variable intervals from the user via the input device. Then, the input unit 204 writes the input information in the change storage unit 203.
  • the input unit 204 receives an input of a schedule from which data values are transmitted by the device 300 from the user via the input device. Then, the input unit 204 generates information indicating the transmission timing of data values transmitted from the device 300 at variable intervals based on the input schedule, and writes the generated information in the change storage unit 203. Based on this information, the instruction unit 205 instructs the device 300 at what time a data value should be transmitted on a specific day.
  • the device 300 may transmit the data value of the integrated electricity usage amount to the data storage device 200 instead of the electricity usage amount per unit time such as 3 hours and 10 minutes.
  • the storage unit 208 calculates a difference between the data values of the integrated electricity usage and obtains a data value of the electricity usage per unit time. Then, the storage unit 208 stores the obtained data value in the data storage unit 201.
  • the device 300 may measure energy consumption other than the amount of electricity used in the building (for example, the amount of gas, fuel, heat, and water used). In this case, the device 300 transmits the measured energy consumption data value to the data storage device 200 at regular intervals. The device 300 further transmits the measured energy consumption data value to the data storage device 200 at a variable interval on a specific day.
  • the device 300 may be installed in a place other than a building.
  • the device 300 may observe an object or event other than the energy consumption, and transmit a data value as an observation result to the data storage device 200.
  • data collected at variable intervals can be stored in a separate column from data for aggregation (that is, data collected at regular intervals). Furthermore, the data collected at the same time but different dates (that is, data collected at regular intervals) is stored in the same column, thereby facilitating the counting work. Therefore, the total work efficiency is improved.
  • Embodiment 2 FIG. In the present embodiment, differences from the first embodiment will be mainly described.
  • the configuration of the data storage system 100 according to the present embodiment is the same as that of the first embodiment shown in FIG.
  • the selection unit 207 stores the change storage unit 203 in the change storage unit 203. Based on the stored information, one column is selected from the columns for storing data values transmitted from the device 300 at variable intervals, among the data columns in the data storage unit 201. Therefore, in the present embodiment, the date and time that matches the timing indicated by the information stored in the change storage unit 203 is stored in the column for storing data values transmitted from the device 300 at variable intervals. It is assumed that how to respond is determined in advance.
  • the earliest time of each date is the variable interval data 213 (that is, from the device 300) of the data storage unit 201. It is assumed that it is determined in advance that it corresponds to the first column from the left of the column for storing data values transmitted at variable intervals, and that the later time corresponds to the column on the right.
  • the data value of the electric usage corresponding to 19:00 on June 1, 2012 is transmitted from the device 300 in order.
  • the respective data values are stored in the periodic interval data 212 at time 1 and time 2 in the row of the date 211 “2012/06/01” by executing steps S101 to S105.
  • step S104 of FIG. 3 the selection unit 207 uses the processing device, and the change storage unit 203 uses the data value received in step S101 to indicate the timing indicated by the combination of the modification date and time 231, the time interval 232, and the number of times 233. Search for lines that match the date and time corresponding to. That is, the selection unit 207 adds the time obtained by multiplying the time interval 232 by an integer greater than or equal to 0 and less than the number of times 233 (that is, a multiple of the time interval 232) to the change date 231 in the change storage unit 203. Search for the line at 13:00 on the first day of the month.
  • the selection unit 207 multiplies 10 minutes, which is the time interval 232 of the rows that match the search condition, by a time that is greater than 0 and less than 7 that is the number of times 233 of the rows (that is, 0 minutes, 10 minutes,. (60 minutes) is added to the change date and time 231 of the row, June 1, 2012, 13:00, respectively, from the left of the variable interval data 213 of the data storage unit 201, 1, 2,. .. Judge that it corresponds to the seventh column.
  • the selection unit 207 displays the time m + 1 (time 6), time m + 2 (time 7), 13:00, June 1, 2012 at 13:00, 13:10,. It is determined that it corresponds to the variable interval data 213 at time m + n (time 12). Based on the determination result, the selection unit 207 selects a column (that is, one column) corresponding to the date and time corresponding to the data value received in step S101 from the variable interval data 213. That is, the selection unit 207 selects the variable interval data 213 at time m + 1 (time 6). Then, the process proceeds to step S105. It should be noted that once the determination result is obtained, it is stored in the storage device, and thereafter, it is read from the storage device and reused.
  • the storage unit 208 searches the data storage unit 201 for a row where the date 211 is June 1, 2012.
  • the rows of date 211 “2012/06/01”, regular interval data 212 “16” at time 1 and regular interval data 212 “20” at time 2 match the search conditions. Therefore, the storage unit 208 stores the data value received in step S101 in the variable interval data 213 selected in step S103 in the row that matches the search condition in the data storage unit 201. That is, the storage unit 208 stores “3” in the variable interval data 213 at time m + 1 (time 6) in the row of the date 211 “2012/06/01”.
  • step S104 of FIG. 3 the selection unit 207 adds the time obtained by multiplying the time interval 232 by an integer greater than or equal to 0 and less than the number of times 233 to the change date 231 in the change storage unit 203. Search for the line at 0:00. In the change storage unit 203 of this example, the change date 231 “2012/06/01 ⁇ 13: 00”, the time interval 232 “10”, and the number of times 233 “7” match the search condition. Since the determination result corresponding to this row is stored in the storage device, the selection unit 207 reads the determination result from the storage device.
  • the selection unit 207 selects a column corresponding to the date and time corresponding to the data value received in step S101 from the variable interval data 213 based on the read determination result. That is, the selection unit 207 selects the variable interval data 213 at time m + 2 (time 7). Then, the process proceeds to step S105.
  • the storage unit 208 searches the data storage unit 201 for a row where the date 211 is June 1, 2012.
  • the date 211 “2012/06/01” the regular interval data 212 “16” at time 1, the regular interval data 212 “20” at time 2, and the regular interval at time m + 1 (time 6)
  • the row of data 212 “3” matches the search condition. Therefore, the storage unit 208 stores the data value received in step S101 in the variable interval data 213 selected in step S103 in the row that matches the search condition in the data storage unit 201. That is, the storage unit 208 stores “4” in the variable interval data 213 at the time m + 2 (time 7) in the row of the date 211 “2012/06/01”.
  • the data values of the electricity usage corresponding to 13:20, 13:30, 13:40, 13:50, 14:00 on June 1, 2012 are sequentially transmitted from the device 300.
  • the respective data values are obtained by executing steps S101 to S105, so that time m + 3 (time 8), time m + 4 (time 9), time m + 5 (time 10) in the row of date 211 “2012/06/01”, It is stored in the variable interval data 213 at time m + 6 (time 11) and time m + n (time 12).
  • data values of electricity usage corresponding to 15:00, 18:00, 18:00, and 21:00 on June 1, 2012 are sequentially transmitted from the device 300.
  • the respective data values are stored in the periodic interval data 212 at time 3, time 4, and time m (time 5) in the row of the date 211 “2012/06/01” by executing steps S101 to S105. .
  • Embodiment 3 FIG. In the present embodiment, differences from the first embodiment will be mainly described.
  • FIG. 8 is a block diagram showing a configuration of the data storage system 100 according to the present embodiment.
  • the data storage system 100 includes two or more devices 300.
  • the data storage device 200 includes a data storage unit 201, a definition storage unit 202, a change storage unit 203, an input unit 204, an instruction unit 205, a reception unit 206, a selection unit 207, and a storage unit 208. Prepare.
  • Each row of the data storage unit 201 is identified by a combination of at least the date and the identifier of the device 300.
  • the definition storage unit 202 stores the definition of the correspondence between time and column for each device 300. If a definition common to all the devices 300 is used, the definition storage unit 202 may be the same as that in the first embodiment.
  • the change storage unit 203 stores, for each device 300, information indicating the transmission timing of data values transmitted from the device 300 at variable intervals (that is, information related to changes in the data collection interval). Note that if the transmission timing common to all the devices 300 is set, the change storage unit 203 may be the same as that in the first embodiment.
  • the instruction unit 205 instructs each device 300 to transmit the data value to the data storage device 200 at the time when the definition of the correspondence relationship with the column is stored in the definition storage unit 202 every day.
  • the instruction unit 205 further instructs the individual device 300 to transmit the data value to the data storage device 200 at a time when the definition of the correspondence relationship with the column is not stored in the definition storage unit 202 on a specific day. .
  • the receiving unit 206 receives the transmitted data value from each device 300.
  • the selection unit 207 defines, for each data value received by the receiving unit 206, the definition of the correspondence relationship between the time and the column corresponding to the received data value for the device 300 that has transmitted the received data value. Whether it is stored in 202 or not is determined.
  • the storage unit 208 identifies the data value received by the receiving unit 206 by the combination of the date corresponding to the received data value in the data storage unit 201 and the identifier of the device 300 that transmitted the received data value. Are stored in the column selected by the selection unit 207.
  • each device 300 is installed inside or outside a building such as a house, office, store, or factory, and measures the amount of electricity used in the building.
  • Each device 300 transmits the measured electricity usage data value to the data storage device 200 at regular intervals. For example, after March 15, 2012, the device 300 having the identifier “1” sends the data value of the electricity usage amount in the last 3 hours to the data storage device 200 every 3 hours from 9:00 to 18:00 every day. Send. After May 31, 2012, the device 300 with the identifier “1” transmits the data value of the amount of electricity used in the latest three hours to the data storage device 200 at 21:00 every day.
  • the individually designated device 300 further transmits the measured electricity usage data value to the data storage device 200 at variable intervals.
  • the device 300 with the identifier “1” transmits the data value of the electricity usage for the latest 10 minutes to the data storage device 200 every 10 minutes from 13:00 to 14:00 on June 1, 2012.
  • FIG. 9 is a table showing an example of the data storage unit 201 immediately before 9:00 on June 1, 2012.
  • the data storage unit 201 has an ID 214 column.
  • the other columns are the same as those of the data storage unit 201 shown in FIG.
  • Each row is identified by a combination of date 211 and ID 214.
  • the ID 214 is a column that stores the identifier of the device 300.
  • FIG. 10 is a table showing an example of the definition storage unit 202.
  • the definition storage unit 202 has an ID 224 column.
  • the other columns are the same as the definition storage unit 202 shown in FIG.
  • Each row is identified by a combination of a start date 221, a column name 222, and an ID 224.
  • the ID 224 is a column that stores the identifier of the device 300.
  • the periodic interval data 212 at time 1 and time 2 in the row of ID 214 “1” and date 211 “2012/03/15” is “15” and “18”, respectively.
  • the time 223 in the row of the ID 224 “1”, the start date 221 “2012/03/15”, and the column name 222 “time 1” is “09: 0”.
  • the time 223 in the row of ID 224 “1”, start date 221 “2012/03/15”, column name 222 “time 2” is “12:00”. From this, the data values of the electricity usage corresponding to 9:00 on March 15, 2012 and 12:00 transmitted by the device 300 with the identifier “1” are 15 kWh (kilowatt hour) and 18 kWh, respectively. I know that there is.
  • the periodic interval data at time 1, time 2,..., Time m (time 5) in the row of ID 214 “1” and date 211 “2012/05/31”. 212 are “15”, “17”,..., “3”, respectively.
  • the time 223 in the row with the ID 224 “1”, the start date 221 “2012/03/15”, and the column name 222 “time 1” is “09: 0”. It has become.
  • the time 223 in the row of ID 224 “1”, start date 221 “2012/03/15”, column name 222 “time 2” is “12:00”.
  • time 223 of the row of ID 224 “1”, start date 221 “2012/01/31”, column name 222 “time m (time 5)” is “21:00”. From this, the data value of the electricity usage amount corresponding to 9:00 on May 31, 2012, 12:00,..., 21:00, transmitted by the device 300 with the identifier “1” is obtained. , 15 kWh, 17 kWh,..., 3 kWh, respectively.
  • FIG. 11 is a table showing an example of the change storage unit 203.
  • the change storage unit 203 has a column of ID234.
  • the other columns are the same as those of the change storage unit 203 shown in FIG.
  • Each row is identified by a combination of the change date / time 231 and the ID 234.
  • the ID 234 is a column that stores the identifier of the device 300.
  • the time interval 232 of the row of ID 234 “1” and change date 231 “2012/06/01 ⁇ 13: 00” is “10” and the number of times 233 “7”. . Therefore, the data value of the electric usage corresponding to 13:00 on June 1, 2012, 13:10,..., 14:00 is transmitted from the device 300 with the identifier “1”. I understand that. In this example, two or more transmission timings of data values transmitted from the same device 300 at variable intervals cannot be set on the same day, but two or more transmission timings on the same device 300 on the same day. May be set. In that case, it is desirable not to be able to set overlapping transmission timings.
  • the reception unit 206 receives a data value corresponding to 9:00 on June 1, 2012 from the device 300 with the identifier “1”.
  • the selection unit 207 searches the definition storage unit 202 for a row whose ID 224 is “1”, the start date 221 is before June 1, 2012, and the time 223 is 9:00.
  • the rows of ID 224 “1”, start date 221 “2012/03/15”, column name 222 “time 1”, and time 223 “09: 0” match the search condition. Therefore, the selection unit 207 stores the definition of the correspondence relationship between the time corresponding to the received data value and the periodic interval data 212 of the data storage unit 201 for the device 300 that has transmitted the data value received in step S101. It is determined that the data is stored in the unit 202. Then, the process proceeds to step S103.
  • step S103 in FIG. 3 the selection unit 207 selects the regular interval data 212 at time 1. Then, the process proceeds to step S105.
  • the storage unit 208 searches the data storage unit 201 for a row where the ID 214 is “1” and the date 211 is June 1, 2012. In the data storage unit 201 of this example, there is no line that matches the search condition. Therefore, the storage unit 208 adds a row of ID 214 “1” and date 211 “2012/06/01” to the data storage unit 201. The storage unit 208 adds the data value received in step S101 to the added row (that is, the date corresponding to the received data value and the identifier of the device 300 that transmitted the received data value) in the data storage unit 201. In the periodic interval data 212 selected in step S103. That is, the storage unit 208 stores “16” in the periodic interval data 212 at time 1 in the row of ID 214 “1” and date 211 “2012/06/01”.
  • a data value of electricity usage corresponding to 12:00 on June 1, 2012 is transmitted from the device 300 with the identifier “1”.
  • the data value is stored in the periodic interval data 212 at time 2 in the row of ID 214 “1” and date 211 “2012/06/01” by executing steps S101 to S105.
  • the reception unit 206 receives a data value corresponding to 13:00 on June 1, 2012 from the device 300 with the identifier “1”.
  • the selection unit 207 searches the definition storage unit 202 for a row where the start date 221 is before June 1, 2012 and the time 223 is 13:00. In the definition storage unit 202 of this example, there is no line that matches the search condition. Therefore, the selection unit 207 stores the definition of the correspondence relationship between the time corresponding to the received data value and the periodic interval data 212 of the data storage unit 201 for the device 300 that has transmitted the data value received in step S101. It is determined that the data is not stored in the unit 202. Then, the process proceeds to step S104.
  • the selection unit 207 selects the variable interval data 213 from the data string in the data storage unit 201 in step S104 in FIG. Then, the process proceeds to step S105.
  • the storage unit 208 searches the data storage unit 201 for a row where the ID 214 is “1” and the date 211 is June 1, 2012.
  • the rows of ID 214 “1”, date 211 “2012/06/01”, time interval 1 interval data 212 “16”, time interval 2 interval data 212 “20” are the search conditions. Matches. Therefore, the storage unit 208 stores “3” in the variable interval data 213 at time m + 1 (time 6) in the row of ID 214 “1” and date 211 “2012/06/01”.
  • the data value of the electricity usage corresponding to 15:00, 18:00, 21:00 on June 1, 2012 is transmitted in order from the device 300 with the identifier “1”.
  • the respective data values are obtained by executing steps S101 to S105, so that the periodic interval data of time 3, time 4, and time m (time 5) in the row of ID 214 “1” and date 211 “2012/06/01” are obtained. 212 is stored.
  • FIG. 12 is a table showing an example of the data storage unit 201 immediately after 21:00 on June 1, 2012.
  • the periodic interval data 212 of time 1, time 2,..., Time m (time 5) in the row of ID 214 “1” and date 211 “2012/06/01” is stored. , “16”, “20”,..., “5”, respectively.
  • the time 223 in the row with the ID 224 “1”, the start date 221 “2012/03/15”, and the column name 222 “time 1” is “09: 0”. It has become.
  • the time 223 in the row of ID 224 “1”, start date 221 “2012/03/15”, column name 222 “time 2” is “12:00”.
  • the time 223 in the row of ID 224 “1”, start date 221 “2012/01/31”, column name 222 “time m (time 5)” is “21:00”. From this, the data value of the electricity usage amount corresponding to 9:00 on June 1, 2012, 12:00,..., 21:00 transmitted by the device 300 with the identifier “1” is obtained. , 16 kWh, 20 kWh,..., 5 kWh, respectively.
  • time m + 1 time 6
  • time m + 2 time 7
  • Time m + n in the row of ID 214 “1” and date 211 “2012/06/01”.
  • the variable interval data 213 at (time 12) is “3”, “4”,..., “3”, respectively.
  • the time interval 232 of the row with the ID 234 “1” and the change date 231 “2012/06/01 ⁇ 13: 00” is “10”, and the number of times 233 is “ 7 ”.
  • the data value of the electricity usage amount transmitted from the device 300 with the identifier “2” is also transmitted from the device 300 with the identifier “1” by executing steps S101 to S105.
  • the data value is stored in the data storage unit 201 in the same manner as the data value.
  • the data on the power consumption of each home is periodically collected and stored by the data collection server in the power company.
  • the data collection interval can be changed without changing the database structure.
  • 100 data storage system 200 data storage device, 201 data storage unit, 202 definition storage unit, 203 change storage unit, 204 input unit, 205 instruction unit, 206 reception unit, 207 selection unit, 208 storage unit, 211 date, 212 periodic Interval data, 213 Variable interval data, 214 ID, 221 start date, 222 column name, 223 time, 224 ID, 231 change date, 232 time interval, 233 times, 234 ID, 300 devices, 400 data aggregation device, 901 LCD, 902 keyboard, 903 mouse, 904 FDD, 905 CDD, 906 printer, 911 CPU, 912 bus, 913 ROM, 914 RAM, 915 communication board, 920 HDD, 921 operating system, 22 window system, 923 programs, 924 files.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Document Processing Apparatus (AREA)

Abstract

 データ保存装置200の定義記憶部202は、データ記憶部201のデータ列のうち一部の列について、時刻と列との対応関係の定義を記憶する。データ保存装置200の選択部207は、機器300から受信されたデータ値に対応する時刻と列との対応関係の定義が定義記憶部202に記憶されていない場合、データ記憶部201のデータ列のうち、時刻との対応関係の定義が定義記憶部202に記憶されていない列を選択する。データ保存装置200の保存部208は、機器300から受信されたデータ値を、データ記憶部201の、受信されたデータ値に対応する日付によって識別される行の、選択部207により選択された列に保存する。このため、データベース構造を変更することなく、データの収集間隔を定期間隔から可変間隔に変更することが可能となる。

Description

データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体
 本発明は、データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体に関するものである。本発明は、特に、ネットワーク経由で収集したデータを保存する技術に関するものである。
 データをネットワーク経由で取得できる環境下で、データを定期的に収集してデータベースに蓄積する技術がある(例えば、特許文献1~10参照)。データの収集間隔は、定期間隔から可変間隔に変更することができる(例えば、特許文献1,6~8,10参照)。
特開2011-129035号公報 特開2011-122908号公報 特開2010-104164号公報 特開2009-251874号公報 特開2009-146443号公報 特開2008-15722号公報 特開2007-241572号公報 特開2004-280618号公報 特開2003-256951号公報 特開2002-180502号公報
 特許文献3の図26には、定時計測データを時刻1、時刻2、・・・、時刻7の列に記憶するデータベースが開示されている。しかし、従来技術では、このようなデータベース構造を変更することなく、データの収集間隔を定期間隔から可変間隔に変更することができないという課題があった。
 本発明は、例えば、データベース構造を変更することなく、データの収集間隔を定期間隔から可変間隔に変更することを目的とする。
 本発明の一の態様に係るデータ保存装置は、
 行及び列を有し、それぞれの行が少なくとも日付によって識別され、いくつかの列がデータ値を保存するためのデータ列である表形式のデータ記憶部と、
 前記データ列のうち一部の列について、時刻と列との対応関係の定義を記憶する定義記憶部と、
 日時に対応付けられたデータ値を送信する機器から、送信されたデータ値を受信する受信部と、
 前記受信部により受信されたデータ値ごとに、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されている場合、記憶されている定義に基づいて、前記データ列のうち、受信されたデータ値に対応する時刻に対応する列を選択し、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されていない場合、前記データ列のうち、時刻との対応関係の定義が前記定義記憶部に記憶されていない列を選択する選択部と、
 前記受信部により受信されたデータ値を、前記データ記憶部の、受信されたデータ値に対応する日付によって識別される行の、前記選択部により選択された列に保存する保存部とを備える。
 本発明の一の態様において、データ保存装置の定義記憶部は、データ記憶部のデータ列のうち一部の列について、時刻と列との対応関係の定義を記憶する。データ保存装置の選択部は、機器から受信されたデータ値に対応する時刻と列との対応関係の定義が定義記憶部に記憶されていない場合、データ記憶部のデータ列のうち、時刻との対応関係の定義が定義記憶部に記憶されていない列を選択する。データ保存装置の保存部は、機器から受信されたデータ値を、データ記憶部の、受信されたデータ値に対応する日付によって識別される行の、選択部により選択された列に保存する。このため、本発明の一の態様によれば、データベース構造を変更することなく、データの収集間隔を定期間隔から可変間隔に変更することが可能となる。
実施の形態1及び2に係るデータ保存システムの構成を示すブロック図。 実施の形態1から3までに係るデータ保存装置のハードウェア構成の例を示す図。 実施の形態1及び2に係るデータ保存装置の動作を示すフローチャート。 実施の形態1及び2に係るデータ記憶部の例を示す表。 実施の形態1及び2に係る定義記憶部の例を示す表。 実施の形態1及び2に係る変更記憶部の例を示す表。 実施の形態1及び2に係るデータ記憶部の例を示す表。 実施の形態3に係るデータ保存システムの構成を示すブロック図。 実施の形態3に係るデータ記憶部の例を示す表。 実施の形態3に係る定義記憶部の例を示す表。 実施の形態3に係る変更記憶部の例を示す表。 実施の形態3に係るデータ記憶部の例を示す表。
 以下、本発明の実施の形態について、図を用いて説明する。
 実施の形態1.
 図1は、本実施の形態に係るデータ保存システム100の構成を示すブロック図である。
 図1において、データ保存システム100は、データ保存装置200と機器300とデータ集計装置400とを備える。
 機器300は、日時に対応付けられたデータ値をネットワーク経由でデータ保存装置200に送信する。具体的には、機器300は、後述する指示部205の指示に従って、毎日(複数の日の例)の同じ時刻に(即ち、定期間隔で)データ値をデータ保存装置200に送信する。機器300は、さらに、後述する指示部205の指示に従って、特定の日の個別に指定された時刻に(即ち、可変間隔で)データ値をデータ保存装置200に送信する。
 データ集計装置400は、データ保存装置200により保存されたデータ値をネットワーク経由でデータ保存装置200から読み取り、読み取ったデータ値を集計及び分析する。なお、データ集計装置400は、データ保存装置200と一体化されていてもよい。
 データ保存装置200は、データ記憶部201、定義記憶部202、変更記憶部203、入力部204、指示部205、受信部206、選択部207、保存部208を備える。
 データ記憶部201は、行及び列を有し、それぞれの行が少なくとも日付によって識別され、いくつかの列がデータ値を保存するためのデータ列である表形式のデータベースである。データ列のうち一部の列は、機器300から定期間隔で送信されるデータ値を保存するための列である。データ列の残りの列は、機器300から可変間隔で送信されるデータ値を保存するための列である。
 定義記憶部202は、データ記憶部201のデータ列のうち上記一部の列について、時刻と列との対応関係の定義を記憶する。
 変更記憶部203は、機器300から可変間隔で送信されるデータ値の送信タイミングを示す情報(即ち、データの収集間隔の変更に関する情報)を記憶する。
 入力部204は、時刻と列との対応関係の定義を定義記憶部202に手動あるいは自動で入力する。また、入力部204は、データの収集間隔の変更に関する情報を変更記憶部203に手動あるいは自動で入力する。
 指示部205は、入力部204により入力された(あるいは、定義記憶部202に記憶された)定義に基づいて、毎日何時にデータ値を送信すべきかを機器300に指示する。即ち、指示部205は、毎日、列との対応関係の定義が定義記憶部202に記憶されている時刻にデータ値をデータ保存装置200に送信するように機器300に指示する。また、指示部205は、入力部204により入力された(あるいは、変更記憶部203に記憶された)情報に基づいて、毎日データ値を送信する時刻以外に、特定の日の何時にデータ値を送信すべきかを機器300に指示する。即ち、指示部205は、さらに、特定の日に、列との対応関係の定義が定義記憶部202に記憶されていない時刻にデータ値をデータ保存装置200に送信するように機器300に指示する。
 受信部206は、機器300から、送信されたデータ値を受信する。データ値に対応する日時は、機器300からデータ値が送信された日時(即ち、送信日時)である。データ値に対応する日時が正確に特定できるように、受信部206は、機器300から、データ値の送信日時を示す情報を、データ値とともに受信することが望ましい。ただし、受信部206は、データ値の送信日時を、データ値の受信日時で代用したり、データ値の受信日時から推測したりしてもよい。なお、機器300がデータ値を取得した日時(即ち、取得日時)を、データ値に対応する日時として扱ってもよい。
 選択部207は、受信部206により受信されたデータ値ごとに、受信されたデータ値に対応する時刻と列との対応関係の定義が定義記憶部202に記憶されているかどうかを判定する。受信されたデータ値に対応する時刻と列との対応関係の定義が定義記憶部202に記憶されている場合、選択部207は、記憶されている定義に基づいて、データ記憶部201のデータ列のうち、受信されたデータ値に対応する時刻に対応する列を選択する。即ち、選択部207は、受信されたデータ値に対応する時刻との対応関係が定義記憶部202で定義されているデータ列を選択する。一方、受信されたデータ値に対応する時刻と列との対応関係の定義が定義記憶部202に記憶されていない場合、選択部207は、データ記憶部201のデータ列のうち、時刻との対応関係の定義が定義記憶部202に記憶されていない列を選択する。即ち、選択部207は、時刻との対応関係が定義記憶部202で定義されていないデータ列を選択する。
 保存部208は、受信部206により受信されたデータ値を、データ記憶部201の、受信されたデータ値に対応する日付によって識別される行の、選択部207により選択された列に保存する。
 本実施の形態によれば、機器300から定期間隔で収集されたデータ値だけでなく、機器300から可変間隔で収集されたデータ値も、データ記憶部201に一元的に保存することができる。
 本実施の形態によれば、定期間隔で収集されたデータ値のうち、異なる日付で、同じ時刻のデータ値は、同じ列に保存される。そのため、データ集計装置400は、データ値を効率的に集計することができる。集計の際、データ集計装置400は、定義記憶部202に記憶されている定義を参照することで、どの列が何時に対応するかを特定することができる。
 本実施の形態によれば、可変間隔で収集されたデータ値のうち、同じ日付で、異なる時刻のデータ値は、定期間隔で収集された、同じ日付のデータ値とともに、同じ行に保存される。そのため、データ集計装置400は、個別の日のデータ値を詳細に分析することができる。分析の際、データ集計装置400は、変更記憶部203に記憶されている情報を参照することで、可変間隔で収集されたデータ値がそれぞれ何時のデータ値であるかを特定することができる。
 図1には示していないが、データ保存装置200は、処理装置、記憶装置、入力装置、出力装置等のハードウェアを備える。ハードウェアはデータ保存装置200の各部によって利用される。例えば、処理装置は、データ保存装置200の各部でデータや情報の演算、加工、読み取り、書き込み等を行うために利用される。記憶装置は、そのデータや情報を記憶するために利用される。入力装置は、そのデータや情報を入力するために、出力装置は、そのデータや情報を出力するために利用される。
 データ記憶部201と定義記憶部202と変更記憶部203は、記憶装置により実装される。
 図2は、データ保存装置200のハードウェア構成の例を示す図である。
 図2において、データ保存装置200は、コンピュータであり、LCD901(Liquid・Crystal・Display)、キーボード902(K/B)、マウス903、FDD904(Flexible・Disk・Drive)、CDD905(Compact・Disc・Drive)、プリンタ906といったハードウェアデバイスを備えている。これらのハードウェアデバイスはケーブルや信号線で接続されている。LCD901の代わりに、CRT(Cathode・Ray・Tube)、あるいは、その他の表示装置が用いられてもよい。マウス903の代わりに、タッチパネル、タッチパッド、トラックボール、ペンタブレット、あるいは、その他のポインティングデバイスが用いられてもよい。
 データ保存装置200は、プログラムを実行するCPU911(Central・Processing・Unit)を備えている。CPU911は、処理装置の例である。CPU911は、バス912を介してROM913(Read・Only・Memory)、RAM914(Random・Access・Memory)、通信ボード915、LCD901、キーボード902、マウス903、FDD904、CDD905、プリンタ906、HDD920(Hard・Disk・Drive)と接続され、これらのハードウェアデバイスを制御する。HDD920の代わりに、フラッシュメモリ、光ディスク装置、メモリカードリーダライタ、あるいは、その他の記録媒体が用いられてもよい。
 RAM914は、揮発性メモリの例である。ROM913、FDD904、CDD905、HDD920は、不揮発性メモリの例である。これらは、記憶装置の例である。通信ボード915、キーボード902、マウス903、FDD904、CDD905は、入力装置の例である。また、通信ボード915、LCD901、プリンタ906は、出力装置の例である。
 通信ボード915は、LAN(Local・Area・Network)等に接続されている。通信ボード915は、LANに限らず、IP-VPN(Internet・Protocol・Virtual・Private・Network)、広域LAN、ATM(Asynchronous・Transfer・Mode)ネットワークといったWAN(Wide・Area・Network)、あるいは、インターネットに接続されていても構わない。LAN、WAN、インターネットは、ネットワークの例である。
 HDD920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。プログラム群923には、本実施の形態の説明において「~部」として説明する機能を実行するプログラムが含まれている。プログラムは、CPU911により読み出され実行される。ファイル群924には、本実施の形態の説明において、「~データ」、「~情報」、「~ID(識別子)」、「~フラグ」、「~結果」として説明するデータや情報や信号値や変数値やパラメータが、「~ファイル」や「~データベース」や「~テーブル」の各項目として含まれている。「~ファイル」や「~データベース」や「~テーブル」は、RAM914やHDD920等の記録媒体に記憶される。RAM914やHDD920等の記録媒体に記憶されたデータや情報や信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出、検索、参照、比較、演算、計算、制御、出力、印刷、表示といったCPU911の処理(動作)に用いられる。抽出、検索、参照、比較、演算、計算、制御、出力、印刷、表示といったCPU911の処理中、データや情報や信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
 本実施の形態の説明において用いるブロック図やフローチャートの矢印の部分は主としてデータや信号の入出力を示す。データや信号は、RAM914等のメモリ、FDD904のフレキシブルディスク(FD)、CDD905のコンパクトディスク(CD)、HDD920の磁気ディスク、光ディスク、DVD(Digital・Versatile・Disc)、あるいは、その他の記録媒体に記録される。また、データや信号は、バス912、信号線、ケーブル、あるいは、その他の伝送媒体により伝送される。
 本実施の形態の説明において「~部」として説明するものは、「~回路」、「~装置」、「~機器」であってもよく、また、「~ステップ」、「~工程」、「~手順」、「~処理」であってもよい。即ち、「~部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。あるいは、「~部」として説明するものは、ソフトウェアのみ、あるいは、素子、デバイス、基板、配線といったハードウェアのみで実現されていても構わない。あるいは、「~部」として説明するものは、ソフトウェアとハードウェアとの組み合わせ、あるいは、ソフトウェアとハードウェアとファームウェアとの組み合わせで実現されていても構わない。ファームウェアとソフトウェアは、プログラムとして、フレキシブルディスク、コンパクトディスク、磁気ディスク、光ディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。即ち、プログラムは、本実施の形態の説明で述べる「~部」としてコンピュータを機能させるものである。あるいは、プログラムは、本実施の形態の説明で述べる「~部」の手順や方法をコンピュータに実行させるものである。
 図3は、データ保存装置200の動作(本実施の形態に係るデータ保存方法、及び、本実施の形態に係るコンピュータ読み取り可能な記録媒体に記録されるプログラムの処理手順に相当)を示すフローチャートである。
 以下では、具体的な例を用いて、図3に示したデータ保存装置200の動作を説明する。
 本例において、機器300は、住宅、オフィス、店舗、工場といった建物の内あるいは外に設置され、建物における電気使用量(エネルギー消費量の例)を計測する。
 機器300は、定期間隔で、計測した電気使用量のデータ値をデータ保存装置200に送信する。具体的には、2012年3月15日以降、機器300は、毎日9時00分から18時00分まで3時間おきに、直近3時間における電気使用量のデータ値をデータ保存装置200に送信する。2012年5月31日以降、機器300は、毎日21時00分にも、直近3時間における電気使用量のデータ値をデータ保存装置200に送信する。
 機器300は、さらに、可変間隔で、計測した電気使用量のデータ値をデータ保存装置200に送信する。具体的には、機器300は、2012年6月1日13時00分から14時00分まで10分おきに、直近10分間における電気使用量のデータ値をデータ保存装置200に送信する。本例では、機器300から可変間隔でデータ値が送信される場合も、データ値の送信が一定の間隔で繰り返されるが、この繰り返しの間隔は、前述した定期間隔とは別のものである。
 図4は、2012年6月1日9時00分の直前におけるデータ記憶部201の例を示す表である。
 図4において、データ記憶部201は、日付211と定期間隔データ212と可変間隔データ213との列を有する表形式のデータベースである。それぞれの行は、日付211によって識別される。日付211は、日付を記憶する列である。定期間隔データ212は、機器300により定期間隔で送信されるデータ値を保存するためのm個の列(即ち、データ列)である。可変間隔データ213は、機器300により可変間隔で送信されるデータ値を保存するためのn個の列(即ち、データ列)である。本例では、m=5、n=7とするが、m及びnは、これ以外の数でもよい。
 図5は、定義記憶部202の例を示す表である。
 図5において、定義記憶部202は、開始日221と列名222と時刻223との列を有する表形式のデータベースである。定義記憶部202には、時刻とデータ記憶部201の定期間隔データ212(即ち、列)との対応関係の定義が記憶される。それぞれの行は、開始日221と列名222との組み合わせによって識別される。開始日221は、定義を有効にする日付を記憶する列である。列名222は、定期間隔データ212の列名を記憶する列である。時刻223は、定期間隔データ212に対応する時刻を記憶する列である。
 定義記憶部202に記憶される定義は、予め入力部204により書き込まれる。例えば、入力部204は、入力装置を介して、時刻と定期間隔データ212との対応関係の定義の入力をユーザから受け付ける。そして、入力部204は、入力された定義を定義記憶部202に書き込む。あるいは、入力部204は、入力装置を介して、機器300によりデータ値が送信されるスケジュールの入力をユーザから受け付ける。そして、入力部204は、入力されたスケジュールに基づいて時刻と定期間隔データ212との対応関係を定義し、定義を定義記憶部202に書き込む。指示部205は、この定義に基づいて、毎日何時にデータ値を送信すべきかを機器300に指示する。
 図4に示したデータ記憶部201では、日付211「2012/03/15」の行の時刻1、時刻2の定期間隔データ212が、それぞれ「15」、「18」になっている。図5に示した定義記憶部202では、開始日221「2012/03/15」、列名222「時刻1」の行の時刻223が「09:00」になっている。開始日221「2012/03/15」、列名222「時刻2」の行の時刻223が「12:00」になっている。このことから、2012年3月15日9時00分、12時00分に対応する電気使用量のデータ値が、それぞれ15kWh(キロワット時)、18kWhであることがわかる。
 また、図4に示したデータ記憶部201では、日付211「2012/05/31」の行の時刻1、時刻2、・・・、時刻m(時刻5)の定期間隔データ212が、それぞれ「15」、「17」、・・・、「3」になっている。前述したように、図5に示した定義記憶部202では、開始日221「2012/03/15」、列名222「時刻1」の行の時刻223が「09:00」になっている。開始日221「2012/03/15」、列名222「時刻2」の行の時刻223が「12:00」になっている。さらに、開始日221「2012/05/31」、列名222「時刻m(時刻5)」の行の時刻223が「21:00」になっている。このことから、2012年5月31日9時00分、12時00分、・・・、21時00分に対応する電気使用量のデータ値が、それぞれ15kWh、17kWh、・・・、3kWhであることがわかる。
 図6は、変更記憶部203の例を示す表である。
 図6において、変更記憶部203は、変更日時231と時間間隔232と回数233との列を有する表形式のデータベースである。変更記憶部203には、機器300から可変間隔で送信されるデータ値の送信タイミングを示す情報が記憶される。それぞれの行は、変更日時231によって識別される。変更日時231は、機器300から可変間隔でデータ値が送信され始める日時(即ち、データの収集間隔の変更が有効になる日時)を記憶する列である。時間間隔232は、データ値の送信が繰り返される間隔を記憶する列である。回数233は、データ値の送信が繰り返される回数を記憶する列である。
 変更記憶部203に記憶される情報は、予め入力部204により書き込まれる。例えば、入力部204は、入力装置を介して、機器300から可変間隔で送信されるデータ値の送信タイミングを示す情報の入力をユーザから受け付ける。そして、入力部204は、入力された情報を変更記憶部203に書き込む。あるいは、入力部204は、入力装置を介して、機器300によりデータ値が送信されるスケジュールの入力をユーザから受け付ける。そして、入力部204は、入力されたスケジュールに基づいて機器300から可変間隔で送信されるデータ値の送信タイミングを示す情報を生成し、生成した情報を変更記憶部203に書き込む。指示部205は、この情報に基づいて、特定の日の何時にデータ値を送信すべきかを機器300に指示する。
 図6に示した変更記憶部203では、変更日時231「2012/06/01・13:00」の行の時間間隔232が「10」、回数233が「7」になっている。このことから、2012年6月1日13時00分、13時10分、・・・、14時00分に対応する電気使用量のデータ値が、機器300から送信されることがわかる。本例では、機器300から可変間隔で送信されるデータ値の送信タイミングを、同じ日に2つ以上設定することはできないものとするが、同じ日に2つ以上の送信タイミングを設定できるようにしてもよい。その場合、重複する送信タイミングを設定できないようにすることが望ましい。
 まず、機器300から、2012年6月1日9時00分に対応する電気使用量のデータ値が送信され、このデータ値が16kWhを示しているとする。
 図3のステップS101において、受信部206は、機器300から、2012年6月1日9時00分に対応するデータ値を受信する。
 図3のステップS102において、選択部207は、処理装置を用いて、定義記憶部202で、ステップS101で受信されたデータ値に対応する日付以前の日付が開始日221に記憶され、かつ、受信されたデータ値に対応する時刻が時刻223に記憶されている行を検索する。即ち、選択部207は、定義記憶部202で、開始日221が2012年6月1日以前、時刻223が9時00分の行を検索する。本例の定義記憶部202では、開始日221「2012/03/15」、列名222「時刻1」、時刻223「09:00」の行が検索条件に一致する。よって、選択部207は、ステップS101で受信されたデータ値に対応する時刻とデータ記憶部201の定期間隔データ212との対応関係の定義が定義記憶部202に記憶されていると判定する。そして、ステップS103へ進む。なお、検索条件に一致する行が複数ある場合、選択部207は、開始日221が最近の行を選択するものとする。
 図3のステップS103において、選択部207は、処理装置を用いて、データ記憶部201のデータ列のうち、ステップS102で検索条件に一致した(定義記憶部202の)行の列名222に記憶されている列名の定期間隔データ212(即ち、受信されたデータ値に対応する時刻に対応する列)を選択する。即ち、選択部207は、時刻1の定期間隔データ212を選択する。そして、ステップS105へ進む。
 図3のステップS105において、保存部208は、処理装置を用いて、データ記憶部201で、ステップS101で受信されたデータ値に対応する日付が日付211に記憶されている行を検索する。即ち、保存部208は、データ記憶部201で、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、検索条件に一致する行が存在しない。よって、保存部208は、日付211「2012/06/01」の行をデータ記憶部201に追加する。保存部208は、ステップS101で受信されたデータ値を、データ記憶部201の、追加した行(即ち、受信されたデータ値に対応する日付によって識別される行)の、ステップS103で選択された定期間隔データ212に保存する。即ち、保存部208は、日付211「2012/06/01」の行の時刻1の定期間隔データ212に「16」を保存する。
 次に、機器300から、2012年6月1日12時00分に対応する電気使用量のデータ値が送信され、このデータ値が20kWhを示しているとする。
 図3のステップS101において、受信部206は、機器300から、2012年6月1日12時00分に対応するデータ値を受信する。
 図3のステップS102において、選択部207は、定義記憶部202で、開始日221が2012年6月1日以前、時刻223が12時00分の行を検索する。本例の定義記憶部202では、開始日221「2012/03/15」、列名222「時刻2」、時刻223「12:00」の行が検索条件に一致する。よって、選択部207は、ステップS101で受信されたデータ値に対応する時刻とデータ記憶部201の定期間隔データ212との対応関係の定義が定義記憶部202に記憶されていると判定する。そして、ステップS103へ進む。
 図3のステップS103において、選択部207は、時刻2の定期間隔データ212を選択する。そして、ステップS105へ進む。
 図3のステップS105において、保存部208は、データ記憶部201で、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、日付211「2012/06/01」、時刻1の定期間隔データ212「16」の行が検索条件に一致する。よって、保存部208は、ステップS101で受信されたデータ値を、データ記憶部201の、検索条件に一致した行の、ステップS103で選択された定期間隔データ212に保存する。即ち、保存部208は、日付211「2012/06/01」の行の時刻2の定期間隔データ212に「20」を保存する。
 次に、機器300から、2012年6月1日13時00分に対応する電気使用量のデータ値が送信され、このデータ値が3kWhを示しているとする。
 図3のステップS101において、受信部206は、機器300から、2012年6月1日13時00分に対応するデータ値を受信する。
 図3のステップS102において、選択部207は、定義記憶部202で、開始日221が2012年6月1日以前、時刻223が13時00分の行を検索する。本例の定義記憶部202では、検索条件に一致する行が存在しない。よって、選択部207は、ステップS101で受信されたデータ値に対応する時刻とデータ記憶部201の定期間隔データ212との対応関係の定義が定義記憶部202に記憶されていないと判定する。そして、ステップS104へ進む。
 図3のステップS104において、選択部207は、データ記憶部201のデータ列のうち、可変間隔データ213(即ち、時刻との対応関係の定義が定義記憶部202に記憶されていない列)を選択する。そして、ステップS105へ進む。
 図3のステップS105において、保存部208は、データ記憶部201で、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、日付211「2012/06/01」、時刻1の定期間隔データ212「16」、時刻2の定期間隔データ212「20」の行が検索条件に一致する。よって、保存部208は、ステップS101で受信されたデータ値を、データ記憶部201の、検索条件に一致した行の、ステップS103で選択された可変間隔データ213に保存する。その行の2つ以上の可変間隔データ213が空いている場合、保存部208は、予め定められた順番で(例えば、図4の左から右へ)、データ値の保存先とする可変間隔データ213を選択する。即ち、保存部208は、日付211「2012/06/01」の行の時刻m+1(時刻6)の可変間隔データ213に「3」を保存する。
 次に、機器300から、2012年6月1日13時10分に対応する電気使用量のデータ値が送信され、このデータ値が4kWhを示しているとする。
 図3のステップS101において、受信部206は、機器300から、2012年6月1日13時10分に対応するデータ値を受信する。
 図3のステップS102において、選択部207は、定義記憶部202で、開始日221が2012年6月1日以前、時刻223が13時10分の行を検索する。本例の定義記憶部202では、検索条件に一致する行が存在しない。よって、選択部207は、ステップS101で受信されたデータ値に対応する時刻とデータ記憶部201の定期間隔データ212との対応関係の定義が定義記憶部202に記憶されていないと判定する。そして、ステップS104へ進む。
 図3のステップS104において、選択部207は、可変間隔データ213を選択する。そして、ステップS105へ進む。
 図3のステップS105において、保存部208は、データ記憶部201で、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、日付211「2012/06/01」、時刻1の定期間隔データ212「16」、時刻2の定期間隔データ212「20」、時刻m+1(時刻6)の定期間隔データ212「3」の行が検索条件に一致する。よって、保存部208は、日付211「2012/06/01」の行の時刻m+2(時刻7)の可変間隔データ213に「4」を保存する。
 以降、機器300から、2012年6月1日13時20分、13時30分、13時40分、13時50分、14時00分に対応する電気使用量のデータ値が順番に送信される。それぞれのデータ値は、ステップS101~S105が実行されることにより、日付211「2012/06/01」の行の時刻m+3(時刻8)、時刻m+4(時刻9)、時刻m+5(時刻10)、時刻m+6(時刻11)、時刻m+n(時刻12)の可変間隔データ213に保存される。
 さらに、機器300から、2012年6月1日15時00分、18時00分、21時00分に対応する電気使用量のデータ値が順番に送信される。それぞれのデータ値は、ステップS101~S105が実行されることにより、日付211「2012/06/01」の行の時刻3、時刻4、時刻m(時刻5)の定期間隔データ212に保存される。
 図7は、2012年6月1日21時00分の直後におけるデータ記憶部201の例を示す表である。
 図7に示したデータ記憶部201では、日付211「2012/06/01」の行の時刻1、時刻2、・・・、時刻m(時刻5)の定期間隔データ212が、それぞれ「16」、「20」、・・・、「5」になっている。前述したように、図5に示した定義記憶部202では、開始日221「2012/03/15」、列名222「時刻1」の行の時刻223が「09:00」になっている。開始日221「2012/03/15」、列名222「時刻2」の行の時刻223が「12:00」になっている。開始日221「2012/05/31」、列名222「時刻m(時刻5)」の行の時刻223が「21:00」になっている。このことから、2012年6月1日9時00分、12時00分、・・・、21時00分に対応する電気使用量のデータ値が、それぞれ16kWh、20kWh、・・・、5kWhであることがわかる。
 また、図7に示したデータ記憶部201では、日付211「2012/06/01」の行の時刻m+1(時刻6)、時刻m+2(時刻7)、・・・、時刻m+n(時刻12)の可変間隔データ213が、それぞれ「3」、「4」、・・・、「3」になっている。前述したように、図6に示した変更記憶部203では、変更日時231「2012/06/01・13:00」の行の時間間隔232が「10」、回数233が「7」になっている。このことから、2012年6月1日13時00分、13時10分、・・・、14時00分に対応する電気使用量のデータ値が、それぞれ3kWh、4kWh、・・・、3kWhであることがわかる。
 本例によれば、毎日9時00分から21時00分まで3時間おきに収集されるデータ値が保存されるデータ記憶部201に、2012年6月1日だけ13時00分から14時00分まで10分おきに収集されたデータ値を保存することができる。そのため、データ集計装置400は、2012年6月1日の午後の電気使用量を詳細に分析することが可能になる。さらに、データ集計装置400は、任意の期間(例えば、平日、休日、週、月、年)における朝、昼、夕方、夜といった時間帯ごとの電気使用量を効率的に集計することができる。
 本例において、データ記憶部201、定義記憶部202、変更記憶部203のデータベース構造は、前述したものに限らない。
 例えば、定義記憶部202は、開始日221の列を有していなくてもよい。その場合、定義記憶部202に記憶された定義は、全ての日付に対して有効となる。
 例えば、変更記憶部203は、回数233の代わりに、機器300から可変間隔でデータ値が送信され終わる日時(即ち、データの収集間隔の変更が無効になる日時)を記憶する列を有していてもよい。あるいは、変更記憶部203は、回数233の列を有していなくてもよい。その場合、機器300は、可変間隔でデータ値をp回送信する。pがnと同じ又はnより小さければ、保存部208は、機器300から送信されたデータ値を全て、該当する行の、空いている可変間隔データ213に、予め定められた順番で(例えば、図4の左から右へ)保存する。pがnより大きければ、保存部208は、機器300から最初に送信されたデータ値からn番目に送信されたデータ値までを、該当する行の、空いている可変間隔データ213に、予め定められた順番で(例えば、図4の左から右へ)保存する。
 変更記憶部203に記憶される情報は、予め入力部204により書き込まれる。例えば、入力部204は、入力装置を介して、機器300から可変間隔で送信されるデータ値の送信タイミングを示す情報の入力をユーザから受け付ける。そして、入力部204は、入力された情報を変更記憶部203に書き込む。あるいは、入力部204は、入力装置を介して、機器300によりデータ値が送信されるスケジュールの入力をユーザから受け付ける。そして、入力部204は、入力されたスケジュールに基づいて機器300から可変間隔で送信されるデータ値の送信タイミングを示す情報を生成し、生成した情報を変更記憶部203に書き込む。指示部205は、この情報に基づいて、特定の日の何時にデータ値を送信すべきかを機器300に指示する。
 機器300は、3時間、10分といった単位時間における電気使用量の代わりに、積算電気使用量のデータ値をデータ保存装置200に送信してもよい。その場合、ステップS105において、保存部208は、積算電気使用量のデータ値の差分を計算して単位時間における電気使用量のデータ値を求める。そして、保存部208は、求めたデータ値をデータ記憶部201に保存する。
 機器300は、建物における電気使用量以外のエネルギー消費量(例えば、ガス、燃料、熱、水道の使用量)を計測してもよい。その場合、機器300は、定期間隔で、計測したエネルギー消費量のデータ値をデータ保存装置200に送信する。機器300は、さらに、特定の日には、可変間隔で、計測したエネルギー消費量のデータ値をデータ保存装置200に送信する。
 機器300は、建物以外の場所に設置されてもよい。
 機器300は、エネルギー消費量以外の物あるいは事象を観測し、観測結果であるデータ値をデータ保存装置200に送信してもよい。
 以上説明したように、本実施の形態によれば、可変間隔で収集したデータを、集計用のデータ(即ち、定期間隔で収集したデータ)とは別の列に保存することができる。さらに、同時刻だが異なる年月日に収集したデータ(即ち、定期間隔で収集したデータ)を同じ列に保存することで、集計作業を容易にできる。したがって、集計作業効率が向上する。
 実施の形態2.
 本実施の形態について、主に実施の形態1との差異を説明する。
 本実施の形態に係るデータ保存システム100の構成は、図1に示した実施の形態1のものと同じである。
 本実施の形態において、受信部206により受信されたデータ値に対応する時刻と列との対応関係の定義が定義記憶部202に記憶されていない場合、選択部207は、変更記憶部203に記憶されている情報に基づいて、データ記憶部201のデータ列のうち、機器300から可変間隔で送信されるデータ値を保存するための列から、1つの列を選択する。そのために、本実施の形態では、変更記憶部203に記憶されている情報により示されたタイミングと一致する日時が、機器300から可変間隔で送信されるデータ値を保存するための列に、どのように対応するかが、予め決められているものとする。
 以下では、実施の形態1の説明で用いた例に本実施の形態を適用した場合のデータ保存装置200の動作を説明する。
 本例では、変更記憶部203に記憶されている情報により示されたタイミングと一致する日時のうち、それぞれの日付の最も早い時刻が、データ記憶部201の可変間隔データ213(即ち、機器300から可変間隔で送信されるデータ値を保存するための列)の左から1番目の列に対応し、遅い時刻ほど、より右にある列に対応することが、予め決められているものとする。
 まず、機器300から、2012年6月1日9時00分、12時00分に対応する電気使用量のデータ値が順番に送信される。それぞれのデータ値は、ステップS101~S105が実行されることにより、日付211「2012/06/01」の行の時刻1、時刻2の定期間隔データ212に保存される。
 次に、機器300から、2012年6月1日13時00分に対応する電気使用量のデータ値が送信され、このデータ値が3kWhを示しているとする。
 図3のステップS101,ステップS102については、実施の形態1と同じである。
 図3のステップS104において、選択部207は、処理装置を用いて、変更記憶部203で、変更日時231と時間間隔232と回数233との組み合わせにより示されるタイミングがステップS101で受信されたデータ値に対応する日時と一致する行を検索する。即ち、選択部207は、変更記憶部203で、時間間隔232に0以上かつ回数233未満の整数を乗じた時間(即ち、時間間隔232の倍数)を変更日時231に加えた日時が2012年6月1日13時00分の行を検索する。本例の変更記憶部203では、変更日時231「2012/06/01・13:00」、時間間隔232「10」、回数233「7」の行が検索条件に一致する。よって、選択部207は、検索条件に一致した行の時間間隔232である10分に0以上かつその行の回数233である7未満の整数を乗じた時間(即ち、0分、10分、・・・、60分)を、その行の変更日時231である2012年6月1日13時00分に加えた日時が、それぞれデータ記憶部201の可変間隔データ213の左から1,2,・・・,7番目の列に対応すると判断する。即ち、選択部207は、2012年6月1日13時00分、13時10分、・・・、14時00分が、それぞれ時刻m+1(時刻6)、時刻m+2(時刻7)、・・・、時刻m+n(時刻12)の可変間隔データ213に対応すると判断する。選択部207は、この判断結果に基づいて、可変間隔データ213から、ステップS101で受信されたデータ値に対応する日時に対応する列(即ち、1つの列)を選択する。即ち、選択部207は、時刻m+1(時刻6)の可変間隔データ213を選択する。そして、ステップS105へ進む。なお、上記の判断結果は、一度得られると記憶装置に記憶され、それ以降は記憶装置から読み出されて再利用されるものとする。
 図3のステップS105において、保存部208は、データ記憶部201で、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、日付211「2012/06/01」、時刻1の定期間隔データ212「16」、時刻2の定期間隔データ212「20」の行が検索条件に一致する。よって、保存部208は、ステップS101で受信されたデータ値を、データ記憶部201の、検索条件に一致した行の、ステップS103で選択された可変間隔データ213に保存する。即ち、保存部208は、日付211「2012/06/01」の行の時刻m+1(時刻6)の可変間隔データ213に「3」を保存する。
 次に、機器300から、2012年6月1日13時10分に対応する電気使用量のデータ値が送信され、このデータ値が4kWhを示しているとする。
 図3のステップS101,ステップS102については、実施の形態1と同じである。
 図3のステップS104において、選択部207は、変更記憶部203で、時間間隔232に0以上かつ回数233未満の整数を乗じた時間を変更日時231に加えた日時が2012年6月1日13時00分の行を検索する。本例の変更記憶部203では、変更日時231「2012/06/01・13:00」、時間間隔232「10」、回数233「7」の行が検索条件に一致する。この行に対応する判断結果は、記憶装置に記憶されているため、選択部207は、その判断結果を記憶装置から読み出す。選択部207は、読み出した判断結果に基づいて、可変間隔データ213から、ステップS101で受信されたデータ値に対応する日時に対応する列を選択する。即ち、選択部207は、時刻m+2(時刻7)の可変間隔データ213を選択する。そして、ステップS105へ進む。
 図3のステップS105において、保存部208は、データ記憶部201で、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、日付211「2012/06/01」、時刻1の定期間隔データ212「16」、時刻2の定期間隔データ212「20」、時刻m+1(時刻6)の定期間隔データ212「3」の行が検索条件に一致する。よって、保存部208は、ステップS101で受信されたデータ値を、データ記憶部201の、検索条件に一致した行の、ステップS103で選択された可変間隔データ213に保存する。即ち、保存部208は、日付211「2012/06/01」の行の時刻m+2(時刻7)の可変間隔データ213に「4」を保存する。
 以降、機器300から、2012年6月1日13時20分、13時30分、13時40分、13時50分、14時00分に対応する電気使用量のデータ値が順番に送信される。それぞれのデータ値は、ステップS101~S105が実行されることにより、日付211「2012/06/01」の行の時刻m+3(時刻8)、時刻m+4(時刻9)、時刻m+5(時刻10)、時刻m+6(時刻11)、時刻m+n(時刻12)の可変間隔データ213に保存される。
 さらに、機器300から、2012年6月1日15時00分、18時00分、21時00分に対応する電気使用量のデータ値が順番に送信される。それぞれのデータ値は、ステップS101~S105が実行されることにより、日付211「2012/06/01」の行の時刻3、時刻4、時刻m(時刻5)の定期間隔データ212に保存される。
 実施の形態3.
 本実施の形態について、主に実施の形態1との差異を説明する。
 図8は、本実施の形態に係るデータ保存システム100の構成を示すブロック図である。
 図8において、データ保存システム100は、2つ以上の機器300を備える。
 データ保存装置200は、実施の形態1と同じように、データ記憶部201、定義記憶部202、変更記憶部203、入力部204、指示部205、受信部206、選択部207、保存部208を備える。
 データ記憶部201のそれぞれの行は、少なくとも日付と機器300の識別子との組み合わせによって識別される。
 定義記憶部202は、機器300ごとに、時刻と列との対応関係の定義を記憶する。なお、全ての機器300に共通の定義を用いるのであれば、定義記憶部202は、実施の形態1と同じものでもよい。
 変更記憶部203は、機器300ごとに、機器300から可変間隔で送信されるデータ値の送信タイミングを示す情報(即ち、データの収集間隔の変更に関する情報)を記憶する。なお、全ての機器300に共通の送信タイミングを設定するのであれば、変更記憶部203は、実施の形態1と同じものでもよい。
 指示部205は、毎日、列との対応関係の定義が定義記憶部202に記憶されている時刻にデータ値をデータ保存装置200に送信するようにそれぞれの機器300に指示する。指示部205は、さらに、特定の日に、列との対応関係の定義が定義記憶部202に記憶されていない時刻にデータ値をデータ保存装置200に送信するように個別の機器300に指示する。
 受信部206は、それぞれの機器300から、送信されたデータ値を受信する。
 選択部207は、受信部206により受信されたデータ値ごとに、受信されたデータ値を送信した機器300について、受信されたデータ値に対応する時刻と列との対応関係の定義が定義記憶部202に記憶されているかどうかを判定する。
 保存部208は、受信部206により受信されたデータ値を、データ記憶部201の、受信されたデータ値に対応する日付と受信されたデータ値を送信した機器300の識別子との組み合わせによって識別される行の、選択部207により選択された列に保存する。
 以下では、実施の形態1の説明で用いた例に本実施の形態を適用した場合のデータ保存装置200の動作を説明する。
 本例において、それぞれの機器300は、住宅、オフィス、店舗、工場といった建物の内あるいは外に設置され、建物における電気使用量を計測する。
 それぞれの機器300は、定期間隔で、計測した電気使用量のデータ値をデータ保存装置200に送信する。例えば、2012年3月15日以降、識別子「1」の機器300は、毎日9時00分から18時00分まで3時間おきに、直近3時間における電気使用量のデータ値をデータ保存装置200に送信する。2012年5月31日以降、識別子「1」の機器300は、毎日21時00分にも、直近3時間における電気使用量のデータ値をデータ保存装置200に送信する。
 個別に指定された機器300は、さらに、可変間隔で、計測した電気使用量のデータ値をデータ保存装置200に送信する。例えば、識別子「1」の機器300は、2012年6月1日13時00分から14時00分まで10分おきに、直近10分間における電気使用量のデータ値をデータ保存装置200に送信する。
 図9は、2012年6月1日9時00分の直前におけるデータ記憶部201の例を示す表である。
 図9において、データ記憶部201は、ID214の列を有する。その他の列については、図4に示したデータ記憶部201と同じである。それぞれの行は、日付211とID214との組み合わせによって識別される。ID214は、機器300の識別子を記憶する列である。
 図10は、定義記憶部202の例を示す表である。
 図10において、定義記憶部202は、ID224の列を有する。その他の列については、図5に示した定義記憶部202と同じである。それぞれの行は、開始日221と列名222とID224との組み合わせによって識別される。ID224は、機器300の識別子を記憶する列である。
 図9に示したデータ記憶部201では、ID214「1」、日付211「2012/03/15」の行の時刻1、時刻2の定期間隔データ212が、それぞれ「15」、「18」になっている。図10に示した定義記憶部202では、ID224「1」、開始日221「2012/03/15」、列名222「時刻1」の行の時刻223が「09:00」になっている。ID224「1」、開始日221「2012/03/15」、列名222「時刻2」の行の時刻223が「12:00」になっている。このことから、識別子「1」の機器300により送信された、2012年3月15日9時00分、12時00分に対応する電気使用量のデータ値が、それぞれ15kWh(キロワット時)、18kWhであることがわかる。
 また、図9に示したデータ記憶部201では、ID214「1」、日付211「2012/05/31」の行の時刻1、時刻2、・・・、時刻m(時刻5)の定期間隔データ212が、それぞれ「15」、「17」、・・・、「3」になっている。前述したように、図10に示した定義記憶部202では、ID224「1」、開始日221「2012/03/15」、列名222「時刻1」の行の時刻223が「09:00」になっている。ID224「1」、開始日221「2012/03/15」、列名222「時刻2」の行の時刻223が「12:00」になっている。さらに、ID224「1」、開始日221「2012/05/31」、列名222「時刻m(時刻5)」の行の時刻223が「21:00」になっている。このことから、識別子「1」の機器300により送信された、2012年5月31日9時00分、12時00分、・・・、21時00分に対応する電気使用量のデータ値が、それぞれ15kWh、17kWh、・・・、3kWhであることがわかる。
 図11は、変更記憶部203の例を示す表である。
 図11において、変更記憶部203は、ID234の列を有する。その他の列については、図6に示した変更記憶部203と同じである。それぞれの行は、変更日時231とID234との組み合わせによって識別される。ID234は、機器300の識別子を記憶する列である。
 図11に示した変更記憶部203では、ID234「1」、変更日時231「2012/06/01・13:00」の行の時間間隔232が「10」、回数233「7」になっている。このことから、2012年6月1日13時00分、13時10分、・・・、14時00分に対応する電気使用量のデータ値が、識別子「1」の機器300から送信されることがわかる。本例では、同じ機器300から可変間隔で送信されるデータ値の送信タイミングを、同じ日に2つ以上設定することはできないものとするが、同じ機器300について同じ日に2つ以上の送信タイミングを設定できるようにしてもよい。その場合、重複する送信タイミングを設定できないようにすることが望ましい。
 まず、識別子「1」の機器300から、2012年6月1日9時00分に対応する電気使用量のデータ値が送信され、このデータ値が16kWhを示しているとする。
 図3のステップS101において、受信部206は、識別子「1」の機器300から、2012年6月1日9時00分に対応するデータ値を受信する。
 図3のステップS102において、選択部207は、定義記憶部202で、ID224が「1」、開始日221が2012年6月1日以前、時刻223が9時00分の行を検索する。本例の定義記憶部202では、ID224「1」、開始日221「2012/03/15」、列名222「時刻1」、時刻223「09:00」の行が検索条件に一致する。よって、選択部207は、ステップS101で受信されたデータ値を送信した機器300について、受信されたデータ値に対応する時刻とデータ記憶部201の定期間隔データ212との対応関係の定義が定義記憶部202に記憶されていると判定する。そして、ステップS103へ進む。
 図3のステップS103において、選択部207は、時刻1の定期間隔データ212を選択する。そして、ステップS105へ進む。
 図3のステップS105において、保存部208は、データ記憶部201で、ID214が「1」、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、検索条件に一致する行が存在しない。よって、保存部208は、ID214「1」、日付211「2012/06/01」の行をデータ記憶部201に追加する。保存部208は、ステップS101で受信されたデータ値を、データ記憶部201の、追加した行(即ち、受信されたデータ値に対応する日付と受信されたデータ値を送信した機器300の識別子との組み合わせによって識別される行)の、ステップS103で選択された定期間隔データ212に保存する。即ち、保存部208は、ID214「1」、日付211「2012/06/01」の行の時刻1の定期間隔データ212に「16」を保存する。
 次に、識別子「1」の機器300から、2012年6月1日12時00分に対応する電気使用量のデータ値が送信される。データ値は、ステップS101~S105が実行されることにより、ID214「1」、日付211「2012/06/01」の行の時刻2の定期間隔データ212に保存される。
 次に、識別子「1」の機器300から、2012年6月1日13時00分に対応する電気使用量のデータ値が送信され、このデータ値が3kWhを示しているとする。
 図3のステップS101において、受信部206は、識別子「1」の機器300から、2012年6月1日13時00分に対応するデータ値を受信する。
 図3のステップS102において、選択部207は、定義記憶部202で、開始日221が2012年6月1日以前、時刻223が13時00分の行を検索する。本例の定義記憶部202では、検索条件に一致する行が存在しない。よって、選択部207は、ステップS101で受信されたデータ値を送信した機器300について、受信されたデータ値に対応する時刻とデータ記憶部201の定期間隔データ212との対応関係の定義が定義記憶部202に記憶されていないと判定する。そして、ステップS104へ進む。
 図3のステップS104において、選択部207は、データ記憶部201のデータ列のうち、可変間隔データ213を選択する。そして、ステップS105へ進む。
 図3のステップS105において、保存部208は、データ記憶部201で、ID214が「1」、日付211が2012年6月1日の行を検索する。本例のデータ記憶部201では、ID214「1」、日付211「2012/06/01」、時刻1の定期間隔データ212「16」、時刻2の定期間隔データ212「20」の行が検索条件に一致する。よって、保存部208は、ID214「1」、日付211「2012/06/01」の行の時刻m+1(時刻6)の可変間隔データ213に「3」を保存する。
 以降、識別子「1」の機器300から、2012年6月1日13時10分、13時20分、13時30分、13時40分、13時50分、14時00分に対応する電気使用量のデータ値が順番に送信される。それぞれのデータ値は、ステップS101~S105が実行されることにより、ID214「1」、日付211「2012/06/01」の行の時刻m+2(時刻7)、時刻m+3(時刻8)、時刻m+4(時刻9)、時刻m+5(時刻10)、時刻m+6(時刻11)、時刻m+n(時刻12)の可変間隔データ213に保存される。
 さらに、識別子「1」の機器300から、2012年6月1日15時00分、18時00分、21時00分に対応する電気使用量のデータ値が順番に送信される。それぞれのデータ値は、ステップS101~S105が実行されることにより、ID214「1」、日付211「2012/06/01」の行の時刻3、時刻4、時刻m(時刻5)の定期間隔データ212に保存される。
 図12は、2012年6月1日21時00分の直後におけるデータ記憶部201の例を示す表である。
 図12に示したデータ記憶部201では、ID214「1」、日付211「2012/06/01」の行の時刻1、時刻2、・・・、時刻m(時刻5)の定期間隔データ212が、それぞれ「16」、「20」、・・・、「5」になっている。前述したように、図10に示した定義記憶部202では、ID224「1」、開始日221「2012/03/15」、列名222「時刻1」の行の時刻223が「09:00」になっている。ID224「1」、開始日221「2012/03/15」、列名222「時刻2」の行の時刻223が「12:00」になっている。ID224「1」、開始日221「2012/05/31」、列名222「時刻m(時刻5)」の行の時刻223が「21:00」になっている。このことから、識別子「1」の機器300により送信された、2012年6月1日9時00分、12時00分、・・・、21時00分に対応する電気使用量のデータ値が、それぞれ16kWh、20kWh、・・・、5kWhであることがわかる。
 また、図12に示したデータ記憶部201では、ID214「1」、日付211「2012/06/01」の行の時刻m+1(時刻6)、時刻m+2(時刻7)、・・・、時刻m+n(時刻12)の可変間隔データ213が、それぞれ「3」、「4」、・・・、「3」になっている。前述したように、図10に示した変更記憶部203では、ID234「1」、変更日時231「2012/06/01・13:00」の行の時間間隔232が「10」、回数233が「7」になっている。このことから、識別子「1」の機器300により送信された、2012年6月1日13時00分、13時10分、・・・、14時00分に対応する電気使用量のデータ値が、それぞれ3kWh、4kWh、・・・、3kWhであることがわかる。
 図12に示す通り、識別子「2」の機器300から送信される電気使用量のデータ値も、ステップS101~S105が実行されることにより、識別子「1」の機器300から送信される電気使用量のデータ値と同じように、データ記憶部201に保存される。
 例えば、各家庭にスマートメータが設置され、消費電力量をネットワーク経由で取得できる環境下で、電力会社内のデータ収集サーバにて各家庭の消費電力量のデータを定期的に収集して蓄積するシステムがある。このシステムにおいて、時間帯によって電気料金を変えてピークカットを実施したい等の理由で、データの収集間隔を変えたい場合がある。そのような場合に、本実施の形態を適用すれば、データベース構造を変更することなく、データの収集間隔を変えることができる。
 以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、2つ以上を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
 100 データ保存システム、200 データ保存装置、201 データ記憶部、202 定義記憶部、203 変更記憶部、204 入力部、205 指示部、206 受信部、207 選択部、208 保存部、211 日付、212 定期間隔データ、213 可変間隔データ、214 ID、221 開始日、222 列名、223 時刻、224 ID、231 変更日時、232 時間間隔、233 回数、234 ID、300 機器、400 データ集計装置、901 LCD、902 キーボード、903 マウス、904 FDD、905 CDD、906 プリンタ、911 CPU、912 バス、913 ROM、914 RAM、915 通信ボード、920 HDD、921 オペレーティングシステム、922 ウィンドウシステム、923 プログラム群、924 ファイル群。

Claims (9)

  1.  行及び列を有し、それぞれの行が少なくとも日付によって識別され、いくつかの列がデータ値を保存するためのデータ列である表形式のデータ記憶部と、
     前記データ列のうち一部の列について、時刻と列との対応関係の定義を記憶する定義記憶部と、
     日時に対応付けられたデータ値を送信する機器から、送信されたデータ値を受信する受信部と、
     前記受信部により受信されたデータ値ごとに、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されている場合、記憶されている定義に基づいて、前記データ列のうち、受信されたデータ値に対応する時刻に対応する列を選択し、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されていない場合、前記データ列のうち、時刻との対応関係の定義が前記定義記憶部に記憶されていない列を選択する選択部と、
     前記受信部により受信されたデータ値を、前記データ記憶部の、受信されたデータ値に対応する日付によって識別される行の、前記選択部により選択された列に保存する保存部と
    を備えることを特徴とするデータ保存装置。
  2.  前記データ列のうち前記一部の列は、前記機器から複数の日の同じ時刻に送信されるデータ値を保存するための列であり、
     前記データ列の残りの列は、前記機器から特定の日の個別に指定された時刻に送信されるデータ値を保存するための列であることを特徴とする請求項1のデータ保存装置。
  3.  前記データ保存装置は、さらに、
     前記機器から前記特定の日の個別に指定された時刻に送信されるデータ値の送信タイミングを示す情報を記憶する変更記憶部
    を備え、
     前記選択部は、前記受信部により受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されていない場合、前記変更記憶部に記憶されている情報に基づいて、前記データ列のうち前記残りの列から1つの列を選択することを特徴とする請求項2のデータ保存装置。
  4.  前記受信部は、2つ以上の前記機器から、送信されたデータ値を受信し、
     前記データ記憶部のそれぞれの行は、少なくとも日付と前記機器の識別子との組み合わせによって識別され、
     前記保存部は、前記受信部により受信されたデータ値を、前記データ記憶部の、受信されたデータ値に対応する日付と受信されたデータ値を送信した機器の識別子との組み合わせによって識別される行の、前記選択部により選択された列に保存することを特徴とする請求項1から3のいずれかのデータ保存装置。
  5.  前記受信部は、前記機器から、送信されたデータ値として、前記機器により計測されたエネルギー消費量のデータ値を受信することを特徴とする請求項1から4のいずれかのデータ保存装置。
  6.  請求項1から5のいずれかのデータ保存装置と、
     前記データ保存装置により保存されたデータ値を読み取り、読み取ったデータ値を集計するデータ集計装置と
    を備えることを特徴とするデータ保存システム。
  7.  請求項1から5のいずれかのデータ保存装置と、
     日時に対応付けられたデータ値を前記データ保存装置に送信する機器と
    を備えることを特徴とするデータ保存システム。
  8.  行及び列を有し、それぞれの行が少なくとも日付によって識別され、いくつかの列がデータ値を保存するためのデータ列である表形式のデータ記憶部と、前記データ列のうち一部の列について、時刻と列との対応関係の定義を記憶する定義記憶部とを用いたデータ保存方法であって、
     日時に対応付けられたデータ値を送信する機器から、送信されたデータ値を受信し、
     前記受信により受信されたデータ値ごとに、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されている場合、記憶されている定義に基づいて、前記データ列のうち、受信されたデータ値に対応する時刻に対応する列を選択し、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されていない場合、前記データ列のうち、時刻との対応関係の定義が前記定義記憶部に記憶されていない列を選択し、
     前記受信により受信されたデータ値を、前記データ記憶部の、受信されたデータ値に対応する日付によって識別される行の、前記選択により選択された列に保存することを特徴とするデータ保存方法。
  9.  行及び列を有し、それぞれの行が少なくとも日付によって識別され、いくつかの列がデータ値を保存するためのデータ列である表形式のデータ記憶部と、前記データ列のうち一部の列について、時刻と列との対応関係の定義を記憶する定義記憶部とを備えるコンピュータを、
     日時に対応付けられたデータ値を送信する機器から、送信されたデータ値を受信する受信部と、
     前記受信部により受信されたデータ値ごとに、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されている場合、記憶されている定義に基づいて、前記データ列のうち、受信されたデータ値に対応する時刻に対応する列を選択し、受信されたデータ値に対応する時刻と列との対応関係の定義が前記定義記憶部に記憶されていない場合、前記データ列のうち、時刻との対応関係の定義が前記定義記憶部に記憶されていない列を選択する選択部と、
     前記受信部により受信されたデータ値を、前記データ記憶部の、受信されたデータ値に対応する日付によって識別される行の、前記選択部により選択された列に保存する保存部
    として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
PCT/JP2012/065094 2012-06-13 2012-06-13 データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体 WO2013186866A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2012/065094 WO2013186866A1 (ja) 2012-06-13 2012-06-13 データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体
JP2012552975A JPWO2013186866A1 (ja) 2012-06-13 2012-06-13 データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/065094 WO2013186866A1 (ja) 2012-06-13 2012-06-13 データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体

Publications (1)

Publication Number Publication Date
WO2013186866A1 true WO2013186866A1 (ja) 2013-12-19

Family

ID=49757730

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/065094 WO2013186866A1 (ja) 2012-06-13 2012-06-13 データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体

Country Status (2)

Country Link
JP (1) JPWO2013186866A1 (ja)
WO (1) WO2013186866A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000298790A (ja) * 1999-04-14 2000-10-24 Osaka Gas Co Ltd ロードサーベイシステム
JP2006085511A (ja) * 2004-09-17 2006-03-30 Hitachi Ltd 交通情報予測装置
JP2007304825A (ja) * 2006-05-11 2007-11-22 Softbank Mobile Corp センサデータ収集方法及び移動情報装置
JP2008009489A (ja) * 2006-06-27 2008-01-17 Chugoku Electric Power Co Inc:The 環境管理システム
JP2009289113A (ja) * 2008-05-30 2009-12-10 Hitachi Industrial Equipment Systems Co Ltd 情報収集装置、情報収集プログラム、及び情報収集方法
WO2011158372A1 (ja) * 2010-06-18 2011-12-22 三菱電機株式会社 データ処理装置及びデータ処理方法及びプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000298790A (ja) * 1999-04-14 2000-10-24 Osaka Gas Co Ltd ロードサーベイシステム
JP2006085511A (ja) * 2004-09-17 2006-03-30 Hitachi Ltd 交通情報予測装置
JP2007304825A (ja) * 2006-05-11 2007-11-22 Softbank Mobile Corp センサデータ収集方法及び移動情報装置
JP2008009489A (ja) * 2006-06-27 2008-01-17 Chugoku Electric Power Co Inc:The 環境管理システム
JP2009289113A (ja) * 2008-05-30 2009-12-10 Hitachi Industrial Equipment Systems Co Ltd 情報収集装置、情報収集プログラム、及び情報収集方法
WO2011158372A1 (ja) * 2010-06-18 2011-12-22 三菱電機株式会社 データ処理装置及びデータ処理方法及びプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
YOSHINORI YAMAGISHI ET AL.: "High Performance aggregate search engine and application for sensor database", MITSUBISHI DENKI GIHO, vol. 83, no. 12, 25 December 2009 (2009-12-25), pages 11 - 14 *
YOSHITSUGU WATANABE ET AL.: "''Building automation system 'Facima BA-system '''", MITSUBISHI DENKI GIHO, vol. 83, no. 9, 25 September 2009 (2009-09-25), pages 23 - 26 *

Also Published As

Publication number Publication date
JPWO2013186866A1 (ja) 2016-02-01

Similar Documents

Publication Publication Date Title
US8660868B2 (en) Energy benchmarking analytics
US20150066937A1 (en) Efficient storage of data allowing for multiple level granularity retrieval
Hasija et al. Scheduling in flowshops to minimize total tardiness of jobs
US20110190951A1 (en) Assessing, forecasting and simulating energy consumption of buildings using energy efficiency coefficients
US8656225B2 (en) Network fault management in busy periods
Zhang et al. Scheduling with non-decreasing deterioration jobs and variable maintenance activities on a single machine
Wang et al. A zoom-in analysis of i/o logs to detect root causes of i/o performance bottlenecks
US9292296B2 (en) Code optimization based on information of readably converted executed instruction groups represented in address file
JP2013101057A (ja) 電力量管理方法、電力量管理装置、及び電力量管理プログラム
CN105302474B (zh) 控制闪存的写操作的方法和闪存的控制器
US20100103189A1 (en) Displaying continually-incoming time series that uses overwriting of one portion of the time series data while another portion of the time series data remains unshifted
JP6467953B2 (ja) 気温予測システム、気温予測方法およびプログラム
JP4897936B1 (ja) グラフ表示装置及びプログラム
WO2013186866A1 (ja) データ保存装置及びデータ保存システム及びデータ保存方法及びコンピュータ読み取り可能な記録媒体
US20160055211A1 (en) Apparatus and method for memory storage and analytic execution of time series data
JP2016024486A (ja) データ活用システム及びその制御方法
CN115147136A (zh) 天然气供需差额确定方法、装置、计算机设备及存储介质
CN112699130A (zh) 电力数据处理方法、装置、计算机设备
CN111915340B (zh) 商户类型的识别方法、装置、设备及存储介质
JP5659054B2 (ja) システム管理装置、システム管理方法及びシステム管理プログラム
JP2015082928A (ja) 推定プログラム、推定装置及び推定方法
CN110580253A (zh) 时序数据组的加载方法、装置、存储介质及电子设备
JP6331422B2 (ja) 管理装置、管理方法及びプログラム
US9697049B2 (en) Job scheduling apparatus and method based on island execution time
JP5804905B2 (ja) パターン分離装置及びパターン分離方法及びプログラム

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2012552975

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12879048

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12879048

Country of ref document: EP

Kind code of ref document: A1