WO2012124257A1 - 電子機器、電子機器の制御方法およびプログラム - Google Patents

電子機器、電子機器の制御方法およびプログラム Download PDF

Info

Publication number
WO2012124257A1
WO2012124257A1 PCT/JP2012/001000 JP2012001000W WO2012124257A1 WO 2012124257 A1 WO2012124257 A1 WO 2012124257A1 JP 2012001000 W JP2012001000 W JP 2012001000W WO 2012124257 A1 WO2012124257 A1 WO 2012124257A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
external device
data storage
server
storage device
Prior art date
Application number
PCT/JP2012/001000
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 JP2013504534A priority Critical patent/JP5644937B2/ja
Publication of WO2012124257A1 publication Critical patent/WO2012124257A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space

Definitions

  • the present invention relates to an electronic device, an electronic device control method, and a program.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2003-271602
  • the server that stores the image to be stored permanently stores the image permanently.
  • the server breaks down or is disconnected from the network, there is a possibility that images are lost.
  • an object of one aspect of the present invention is to provide an electronic device, a control method for the electronic device, and a program that can solve the above-described problems. This object is achieved by a combination of features described in the independent claims.
  • the dependent claims define further advantageous specific examples of the present invention.
  • the dividing device that divides input data into a plurality of partial data, and at least the first external device and the second external device so that a part of the plurality of partial data overlaps.
  • an electronic apparatus comprising a communication device for sending a part of a plurality of partial data.
  • At least the first external device and the second external device have a division stage that divides input data into a plurality of partial data, and at least a plurality of partial data overlap each other. And a communication step of sending a part of the partial data.
  • An electronic device control method is provided.
  • a program for controlling a computer the dividing function for dividing data input to the computer into a plurality of partial data, and at least so that a part of the plurality of partial data overlaps
  • a program for realizing a communication function of sending a part of a plurality of partial data to the first external device and the second external device is provided.
  • FIG. 3 is a flowchart showing the operation of the data storage system 1. It is a flowchart which shows the detail of one part operation
  • the data storage system 1 has many devices currently having a memory such as a mobile phone and a personal computer, and the memory capacity of the memory increases as the memory capacity of the memory increases.
  • the data is stored using the free space.
  • FIG. 1 is a block diagram of the data storage system 1 of the present embodiment.
  • the data storage system 1 includes a user device 100 that requests data storage, a management server 200 that receives a data storage request from the user device 100, and a request from the management server 200. And a recording server group 300 that is a plurality of local devices that store the divided data.
  • the user device 100, the management server 200, and the recording server group 300 communicate with each other via a network such as the Internet or a telephone network.
  • the user device 100 is operated by a user who desires to store a still image or the like, and is a mobile terminal such as a mobile phone, a smartphone, a PHS (Personal Handy-phone System), a PDA (Personal Digital Assistant), or an electronic device such as a personal computer. Equipment.
  • the user device 100 is stored in the non-volatile memory 101 that stores data such as still images, moving images, text data, music, and associated metadata, an arithmetic device 102 that performs various operations, and the memory 101.
  • a communication unit 103 that transmits data to the management server 200, and a control unit 104 that includes a CPU that controls the entire user device 100.
  • the management server 200 is an information processing device managed by an administrator, for example.
  • the management server 200 includes a hard disk 201, which is a storage medium for storing data transmitted from the user device 100, a data division map described later, and the like, and a setting unit 202 that sets safety factors for various data stored in the hard disk 201.
  • a division unit 203 that divides various data stored in the hard disk 201, a nonvolatile memory 204 that temporarily stores the divided data, a communication unit 103 of the user device 100, and a server side that communicates with the recording server group 300
  • a communication unit 205 and a server control unit 206 including a CPU that controls the entire management server 200 are included.
  • the hard disk 201 stores application software that is resident in each data storage device when each data storage device is registered as the recording server group 300.
  • This application software performs data communication between the management server 200 and the data storage device, sets a password for accessing fragment data stored in the memory of the data storage device, and free space in the memory of the data storage device Check the data and log the time that the data storage device is turned on.
  • the hard disk 201 further stores a device information table that is information about data storage devices and a division information table that is information about division settings.
  • the setting unit 202 determines a safety coefficient that is a coefficient indicating how many pieces of data storage devices the fragment data to be divided is sent to. The safety factor will be further described later.
  • the dividing unit 203 divides the data transmitted from the user device 100 according to the data size and the safety factor, for example, into tens to tens of kilobytes, and stores the divided fragment data in the memory 204.
  • the server-side control unit 206 extracts a data storage device corresponding to the number of distributions from the recording server group 300 with reference to the device information table, and transmits the fragment data to the data storage device using the communication unit 205. .
  • the recording server group 300 includes a plurality of data storage devices, and each data storage device is an electronic device with a readable / writable memory such as a portable terminal or a personal computer.
  • the data storage device may be for personal use or for business use. Further, the data storage device is not limited in installation location such as country or region as long as it can communicate with a network such as the Internet.
  • Each of the data storage devices includes communication units 301, 311... That can communicate with the communication unit 205, nonvolatile memories 302, 312... That store the divided data transmitted from the communication unit 205, and respective data storages. And control units 303, 313,... For controlling the devices.
  • the management server 200 registers the data storage device in the device information table of the hard disk 201 in response to a request from the data storage device (S10).
  • the management server 200 divides the data to generate fragment data, and transmits the fragment data to a plurality of data storage devices (S20).
  • the management server confirms the storage state of the fragment data with respect to the data storage device (S30).
  • the management server 200 collects fragment data from a plurality of data storage devices and restores the original data (S50).
  • the management server 200 repeats the operation of step S30 at a predetermined timing.
  • FIG. 3 is a flowchart showing details of the operation (S10) in which the management server 200 registers the data storage device.
  • the operation in step S10 starts when the data storage device requests registration to the management server 200.
  • a fixed IP address is assigned to the data storage device, and the communication units 103, 205, 301, 311... Are connected via an electric communication line such as the Internet for communication.
  • storage device xxx. xxx. 1.1 requests registration to the management server 200 from a web page or the like (S110). Upon receiving the registration request, the management server 200 stores the storage device xxx. xxx. An inquiry is made as to whether or not application software predetermined in 1.1 is installed (S112).
  • Storage device xxx. xxx. In 1.1 it is determined whether application software is installed in the memory 302 in response to the inquiry (S114). When the application software is not installed (S114), the storage device xxx. xxx. 1.1 requests application software from the management server 200 (S116). Upon receiving the application software request, the management server 200 stores the application software stored in the hard disk 201 as a storage device xxx. xxx. (S118).
  • Storage device xxx. xxx. 1.1 installs the received application software (S120) and activates the application software (S122). Also, when it is determined in step S114 that application software has been installed in advance (S114: Yes), the application software is activated (S122).
  • Storage device xxx. xxx. 1.1 acquires registration information of the data storage device using application software (S124), and transmits it to the management server 200 (S126).
  • An example of registration information is a fixed IP address, an installation location, and a memory lending amount.
  • the registration information may be input by the user by displaying a screen prompting input, or the application software may access the memory 302 and acquire the information itself.
  • the memory lending amount is a memory capacity that is permitted to be used by the management server 200.
  • the memory lending amount can be set to 3 to 10% of the memory or 3 to 10% of the current memory free capacity.
  • the management server 200 registers the received registration information in the device information table of the hard disk 201 (S126). When registration is completed, the management server 200 stores the storage device xxx. xxx. Confirmation (ACK) is sent to 1.1 (S128), and the operation of step S10 is completed.
  • ACK Confirmation
  • FIG. 4 shows an example of a device information table recorded on the hard disk 201.
  • the device information table has the registration information, log information, and rank information associated with a fixed IP address as a device ID.
  • the log information includes the memory usage of the storage device, the power-on time of the storage device, the storage state of the divided data, and the response time for collecting the divided data described later.
  • the server-side control unit 206 can obtain information on these data using the resident application described above. For example, in the case of a storage device of a company, the server-side control unit 206 also obtains a log indicating that the power is turned on from 9 am to 10 pm on weekdays but not on Saturdays, Sundays, and holidays. It can be used as a reference when collecting divided data described later.
  • the rank information includes a confidence count and a rank.
  • the reliability coefficient is a value indicating the reliability of the storage device based on the log information, and the server-side control unit 206 has “200”, “100”, and “50” corresponding to the reliability “high”, “medium”, and “low”. Set the coefficient. Further, the server-side control unit 206 sets the order of storage devices based on log information and later-described divided data collection. As an initial value, Null is assigned to the log information, the reliability coefficient of the rank information is assigned a value 100 corresponding to “medium”, and the rank is assigned the median value of the rank in the reliability coefficient “medium”.
  • FIG. 5 is a flowchart of the operation (S20) in which the management server 200 divides and stores data. Here, it is assumed that the registration operation of the individual storage devices constituting the user device 100 and the recording server group 300 has been completed.
  • the server-side control unit 206 receives data to be stored in response to a request from the user device 100 (S210).
  • the server-side control unit 206 inputs the data type, storage period, importance, security level, and the like, and an account for specifying this data and a password associated with this account Is set and notified to the user device 100.
  • the above-described data reception may be performed by collecting a plurality of data, for example, by collecting 100 still images, and in that case, the importance level and the storage period may be individually set.
  • Data transmitted to the management server 200 via the communication unit 205 is stored in the hard disk 201.
  • the setting unit 202 sets a safety factor based on the data (step S2).
  • the safety factor is set according to the retention period, importance, security level, and metadata.
  • the server-side control unit 206 first causes the user to select either “high”, “medium”, or “low” as the importance in step S210.
  • the setting unit 202 is provided with a table in which the importance levels “high”, “medium”, and “low” are associated with the safety factors “200”, “100”, and “50”, which are selected by the user. Select the safety factor corresponding to the importance.
  • the safety factor “50” indicates that the same fragment data is transmitted to 50 different data storage devices.
  • the setting unit 202 may set the safety factor by a combination of the storage period, importance, and security level.
  • the setting unit 202 has a table in which the range of the score and the value of the safety factor are associated with each other, assigning a higher score as the retention period is longer, assigning a higher score as the importance is higher, and a security level.
  • the higher the score, the higher the score, and the safety factor may be set based on the weighted average of the scores according to the input from the user.
  • the setting unit 202 detects an important position of the image such as a focus position, a face detection position, and a subject tracking position from the metadata of the image, and calculates a safety coefficient. For example, the safety factor of the background such as the ground or the sky may be lowered. Specifically, the setting unit 202 discriminates from image data such as the ground and sky stored in the hard disk 201 and whether the image was shot in the horizontal position or the vertical position from the metadata and determines whether the ground or sky is used. The background may be detected. In this case, the setting unit 202 first defines the boundary between the important part and the other part from the metadata of the image.
  • the setting unit 202 generates image data including an important part and image data including other parts along the boundary.
  • the setting unit 202 increases the safety coefficient of the image data composed of important parts or lowers the safety coefficient of the image data composed of other parts with respect to the safety coefficient set by the above method.
  • the newly generated image data may be in a format such as BMP (Bitmap) or may be in a unique format that can be processed by the setting unit 202.
  • the setting unit 202 increases the safety coefficient of the upper hierarchy relative to the safety coefficient of the lower hierarchy by the same method as described above. You can also lower it.
  • the setting unit 202 when the data transmitted from the user device 100 is a moving image, the setting unit 202, for example, in the case of a moving image format that stores a difference between a key frame serving as a key and the key frame as a difference frame, The safety factor may be set larger than the safety factor of the difference frame.
  • the setting unit 202 uses a method similar to the above to set the safety coefficient of the audible frequency data relative to the safety coefficient of the frequency data outside the audible range. You may raise it.
  • the dividing unit 203 divides the data transmitted from the user device 100 according to the data size and the safety factor, creates fragment data, and stores it in the memory 204 (S214). In this case, the dividing unit 203 divides the data by referring to the division information table based on the set safety coefficient.
  • FIG. 6 shows an example of the division information table recorded on the hard disk 201.
  • the division information table has numerical values of a division unit, a maximum storage number, and a maximum concentration number associated with the safety factor.
  • the division unit is the number of bytes that is a unit of division when data is divided into fragment data, and in the example shown in FIG. 6, the division unit is set smaller as the safety coefficient is larger.
  • the maximum storage number is the maximum value of the number of fragment data when a plurality of fragment data is stored in one data storage device. In the example shown in FIG. 6, the maximum storage number is set smaller as the safety factor is larger.
  • the maximum number of units is the maximum value of the number of data storage devices when a plurality of pieces of fragment data are stored in a plurality of data storage devices belonging to one installation location. In the example shown in FIG. The maximum concentration is set small.
  • FIG. 7 is a diagram illustrating an example of fragment data stored in the memory 204.
  • a common file name “PhotoData” is given to fragment data 1 to fragment data 1000, and Index numbers 1 to 1000 are sequentially given.
  • the start address and end address of the fragment data are given.
  • the fragment data division unit is 40 bytes, the start address of the fragment data 1 is 0 and the end address is 39.
  • the divided data is stored in the memory 204 together with the file name, index number, head address, and end address.
  • the server-side control unit 206 extracts a data storage device that should store the fragment data (S216). In that case, the server-side control unit 206 first sets the number of distributions.
  • the number of distributions to the recording server group 300 is a number obtained by multiplying the number of divisions by a safety factor.
  • the safety factor is 50
  • the management server 200 issues a data storage request to the data storage devices of the recording server group 300 so as to secure 5000 data storage devices, and at the same time, 5000 data storage devices and the fragment data to be sent.
  • the associated data division map is stored in the hard disk 201 and communicated to the user device 100.
  • the safety factor is set to 200
  • the number of divisions will be 100,000
  • the safety factor is 200
  • the number of distributions will be 20 million.
  • 1000 pieces of 100,000 pieces of fragment data are stored in one data storage device, the required number of data storage devices is 20,000 even if the distribution number of fragment data is 20 million.
  • the server-side control unit 206 extracts data storage devices corresponding to the number of distributions from the registered data storage devices.
  • the server-side control unit 206 reads the maximum stored number and the maximum concentrated number associated with the safety factor set in the original data with reference to the division information table.
  • the server-side control unit 206 calculates the required number by dividing the number of distributions by the maximum number of saved items.
  • the server-side control unit 206 refers to the device information table and extracts data storage devices corresponding to the required number in descending order of rank information having a reliability coefficient corresponding to the safety coefficient set in the original data.
  • the server-side control unit 206 may extract the data storage device so that highly important data is stored in the data storage device with good rank information.
  • the server-side control unit 206 increases the amount of divided data stored in a data storage device with good rank information, while reducing the amount of divided data stored in a data storage device with poor rank information or data storage. You may make it not extract as an apparatus.
  • the server-side control unit 206 refers to the installation location in the extracted data storage device, and when the maximum concentrated number is exceeded, the data storage device of the next order is not selected without selecting the data storage device. Select. Thereby, the server side control part 206 can prevent that the area where the same fragment data is sent concentrates. Similarly, the server-side control unit 206 refers to the memory usage amount in the extracted data storage device, and when the fragment data size exceeds the remaining capacity obtained by subtracting the memory usage amount from the memory lending amount. The next data storage device is selected without selecting the data storage device.
  • the server-side control unit 206 when the number of divisions is 5 and the safety factor is 2, it is as follows. Since the number of divisions is 5 and the safety factor is 2, 10 pieces of fragment data are generated. Assuming that the server-side control unit 206 stores two pieces of fragment data in one data storage device, the five data storage devices xxx. xxx. 1.1 to xxx. xxx. 1.5 is extracted. In this case, the server-side control unit 206 transmits the data storage device xxx. xxx. 1.1 to xxx. xxx. Data storage devices are extracted so that 1.5 does not concentrate on a specific installation location, for example, so that it does not become 5 units in the same department of the company. Thereby, the server side control part 206 can prevent that the area where the same fragment data is sent concentrates. In particular, when text data is sent as fragment data, it can be expected to improve security by sending it to regions with different languages.
  • the server-side control unit 206 creates a data division map (step S218).
  • the data division map indicates in which of the plurality of data storage devices each of the plurality of pieces of fragment data is stored.
  • the server-side control unit 206 transmits the fragment data to each data storage device via the communication unit 205 based on the data division map created in step S218 (S220). In this case, the server-side control unit 206 sequentially establishes communication with each of the data storage devices, and transmits the fragment data together with a command for starting the application software. When receiving the command, the data storage device activates application software and stores the fragment data in the memory 302 or the like.
  • the server-side control unit 206 includes five data storage devices xxx. xxx. 1.1 to xxx. xxx. Send fragment data to 1.5.
  • the server-side control unit 206 uses, for example, the above-described resident application software to provide five data storage devices xxx. xxx. 1.1 to xxx. xxx. After confirming the 1.5 free memory capacity, the five data storage devices xxx. xxx. 1.1 to xxx. xxx. Send fragment data to 1.5.
  • the server-side control unit 206 determines whether each piece of fragment data has been stored according to the data division map (S222). In this case, for example, using the above-described resident application software, the server-side control unit 206 determines that the data storage device has received confirmation that the fragment data has been stored, determines Yes in step S222, and otherwise. The case is No.
  • An example in which the determination in step S222 is No is a case where communication has not been established between the data storage device and the server-side control unit 206 due to reasons such as the data storage device being not powered on. .
  • the server-side control unit 206 checks the data storage device that could not be stored and its fragment data, and proceeds to step S216. Return. That is, when there is fragment data that has not been saved, the server-side control unit 206 refers to the device information table and extracts the data storage device of the next order. Thereafter, the server-side control unit 206 executes steps S218 to S222.
  • step S20 When each piece of fragment data is stored (S222: Yes), the server-side control unit 206 divides data indicating the relationship between the data storage device that finally sent the data and the data stored in the data storage device The map is sent to the user device 100 by the communication unit 205 (S224). In addition, the server-side control unit 206 stores this data division map in the hard disk 201. Thus, the operation of step S20 is completed.
  • FIG. 8 is a diagram showing a first example of the data division map.
  • the server-side control unit 206 includes a data storage device xxx. xxx. 1.1, fragment data 1 and fragment data 2 are stored, and data storage device xxx. xxx. 1.2 stores the fragment data 2 and the fragment data 3, and stores the data storage device xxx. xxx. 1.3, fragment data 3 and fragment data 4 are stored, and data storage device xxx. xxx. 1.4, the fragment data 4 and the fragment data 5 are stored, and the data storage device xxx. xxx. Fragment data 5 and fragment data 1 are stored in 1.5. In such a case, for example, the data storage device xxx. xxx. 1.1, fragment data 1 and fragment data 2 are stored, and data storage device xxx. xxx. 1.2 stores the fragment data 2 and the fragment data 3, and stores the data storage device xxx. xxx. 1.3, fragment data 3 and fragment data 4 are stored, and data storage device xxx.
  • the data storage device xxx. xxx. 1.1 stores the fragment data 1 and the fragment data 2 stored in the data storage device xxx. xxx. 1.2 and data storage device xxx. xxx. It is sufficient to read from 1.3, and no problem occurs.
  • FIG. 9 is a diagram showing a second example of the data division map.
  • the safety coefficient of the fragment data 1 is set to 5
  • the safety coefficient of the fragment data 2 to 5 is set to 2.
  • the server-side control unit 206 is a data storage device xxx. xxx. 1.1, fragment data 1 and fragment data 2 are stored, and data storage device xxx. xxx. 1.2 stores the fragment data 1 to 3, and stores the data storage device xxx. xxx. 1.3 stores the fragment data 1, 3, and 4, and stores the data storage device xxx. xxx. 1.4 stores the fragment data 1, 4, and 5 and stores the data storage device xxx. xxx. Fragment data 5 and fragment data 1 are stored in 1.5. Thus, by increasing the safety factor of the fragment data 1, the probability that the fragment data 1 can be read is improved.
  • the server-side control unit 206 may add a new data storage device instead of increasing the number of data stored in one data storage device.
  • FIG. 10 is a flowchart showing details of the operation (S30) in which the management server 200 confirms the storage state. Step S30 starts when the operation of step S20 is completed.
  • the server-side control unit 206 waits until a predetermined time, for example, one month elapses (S308: No). When the predetermined time has elapsed (S308: Yes), the server-side control unit 206 proceeds to step S310.
  • a predetermined time for example, one month elapses
  • the server-side control unit 206 first refers to the data division map in order to confirm whether the fragment data is stored in each data storage device (S310).
  • the server-side control unit 206 checks whether or not the fragment data is stored in each data storage device based on the data division map (step S312).
  • the server-side control unit 206 includes five data storage devices xxx. xxx. 1.1 to xxx. xxx. 1.5 data storage device xxx. xxx. 1.1 to xxx. xxx. Check whether there is a response from 1.5 and whether fragment data is stored. Also in this case, the server-side control unit 206 confirms the storage of the fragment data using the resident application software.
  • server-side control unit 206 uses the resident application software to log each data storage device power-on time, change in memory free space, and issue a fragment data confirmation request until responding Is recorded in the device information table of the hard disk 201 (S314).
  • the server-side control unit 206 determines whether to add a data storage device, in other words, whether to increase the safety factor, according to the confirmation status of the fragment data in step S10 (S316). When there is a data storage device that does not respond, the server-side control unit 206 turns on the power when there is a response but the response period exceeds a preset threshold, for example, it takes more than 3 days. If there is a data storage device that is shorter than the threshold, for example, the power is not turned on on weekdays and the power is not turned on on weekends, it is determined that the data storage device should be added (S316: Yes), the operations after step S216 are repeated. On the other hand, if there is no problem in the fragment data confirmation status (S316: No), the server-side control unit 206 ends the operation of step S30.
  • the server-side control unit 206 may evaluate the data storage device based on the log and update the rank information of the data storage device in the device information table. For example, threshold values are set for the power-on time and response time in the acquired log information, and the safety factor and rank of the rank information may be changed based on the threshold values. In particular, for the data storage device from which it is determined in step S316 that a data storage device should be added, the rank information rank in the device information table may be updated to Null data indicating inappropriateness.
  • FIG. 11 is a flowchart showing details of the operation (S50) in which the management server 200 collects data.
  • the operation in step S50 starts when there is a data collection request from the user device 100.
  • the server-side control unit 206 refers to the data division map (S510), specifies a data storage device (S512), and collects fragment data using application software of the data storage device (S513).
  • the server side control unit 206 stores the collected fragment data in the memory 204. Until the specific fragment data can be collected (S514: No), the server-side control unit 206 repeats the above steps S510 to S514. If the fragment data cannot be collected from any data storage device that stores the data in the data division map in the repetition (S512: No), the process proceeds to step S518.
  • the server-side control unit 206 repeats the above steps S510 to S514 until all fragment data is collected (S516: No). If all fragment data has been collected (S516: Yes), the server-side control unit 206 restores the original data from the fragment data (S518), and transmits it to the user device 100 (S520). Further, even when the specific fragment data is not finally collected (SS518), the server-side control unit 206 restores the original data from the fragment data without the specific fragment data (S518). Then, the data is transmitted to the user device 100 (S520).
  • the more important the fragment data is stored in many data storage devices, so the possibility of collection is high.
  • the server-side control unit 206 updates the log information in the collection operation and uses it as in the case of the storage confirmation operation (S522).
  • the server-side control unit 206 preferably selects a data storage device that makes a collection request according to the importance of the data to be collected and the urgency of the collection. For example, if the number of data to be collected is 5, the safety factor is high and two data are stored in 2000 data storage devices. It is assumed that the data is stored in two, the safety factor is low, and the data is stored in 20 data storage devices. In this case, the server-side control unit 206 does not request data collection from all data storage devices, but stores 400 data storage devices that store data with a high safety factor, and stores data with a medium safety factor. Since there are only 30 data storage devices and data storage devices that store data with a low safety factor, all 20 devices are extracted and data is collected. In this case, a table in which the safety factor is associated with the number of collection requests may be stored in the hard disk 201, and the server-side control unit 206 may set the number by referring to the table.
  • step S514 the server-side control unit 206 determines whether data has been collected within a predetermined time set according to the urgency, for example, about 3 to 8 hours. If all the five data have been collected, the server-side control unit 206 proceeds to step S518, and if there is data that has not been collected, returns to step S510 and performs data collection again. In this case, for example, if the urgency is high, the determination in step S516 may be Yes even if data with a low safety factor cannot be collected.
  • the server-side control unit 206 determines whether to add a data storage device (SS524).
  • the server-side control unit 206 determines whether or not to add a data storage device for each of the high safety coefficient data, the middle data, and the low data based on the data collection state executed in step S513.
  • the server-side control unit 206 determines that the determination is Yes when there is a data storage device that has not responded, or when the response of the data storage device that stores data with a high safety coefficient or intermediate data is slow.
  • the process proceeds to S216.
  • the server-side control unit 206 is a data storage device that stores data with a low safety factor based on a log of the time when the power is turned on, a time difference of the installation location, etc. This information is used when extracting the data storage device in step S4.
  • the data from the user device 100 recorded on the hard disk 201 may be stored as it is, or the data may be stored and stored in another storage medium, or the fragment data may be stored in the recording server group 300. You may make it delete at the time of making it preserve
  • the management server 200 of the present embodiment is developed in a business, it is only necessary to charge the user of the user device 100 and pay the memory usage fee to the user of the data storage device of the recording server group 300. In this case, the management server 200 may set a fee for the user of the user device 100 based on the safety factor set by the setting unit 202.
  • the management server 200 may set a memory usage fee according to the amount of memory used and rank information of the data storage device. Such a fee schedule may be stored in the hard disk 201.
  • the management server 200 associates a user ID with a user device ID.
  • the charge added in units of user IDs may be set in the user device 100 specified by any user device ID associated with the user ID.
  • the data can be reliably stored. As a result, it is possible to reduce a storage load when data is stored in one server and to prevent a situation in which data is completely lost from the server.
  • the data storage device is an electronic device to which a unique IP address is assigned, but the data storage device is not limited to this.
  • Another example of the data storage device is a mobile phone.
  • a telephone network can be used instead of the Internet, and a telephone number can be used instead of the unique IP address.
  • the model of the mobile phone is changed with the same telephone number.
  • the fragment data is transferred from the memory of the mobile phone of the change source to the memory of the mobile phone of the change destination.
  • the fragment data is taken over as the attached data.
  • 1 data storage system 100 user equipment, 101 memory, 102 computing device, 103 communication unit, 104 control unit, 200 management server, 201 hard disk, 202 setting unit, 203 division unit, 204 memory, 205 communication unit, 206 server side control Unit, 300 recording server group, 301 communication unit, 302 memory, 303 control unit, 311 communication unit, 312 memory, 313 control unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

 電子機器であって、入力したデータを複数の部分データに分割する分割装置(203)と、複数の部分データの一部が重複するように、少なくとも第1外部装置と第2外部装置とに前記複数の部分データの一部分を送付する通信装置(205)とを備える。上記電子機器は、第1外部装置と、当該第1外部装置に送付されたデータと関連つけるとともに、第2外部装置と、当該第2外部装置に送付されたデータと関連つけて記憶する記憶装置を備えてもよい。

Description

電子機器、電子機器の制御方法およびプログラム
 本発明は、電子機器、電子機器の制御方法およびプログラムに関する。
 デジタルカメラや携帯電話の普及により、画像を撮像する機会が増えている。それに伴い多数の画像を保存することが求められており、例えば、インターネットを介してサーバに画像を保存することが提案されている。その場合に、永久に保存したい画像については専用のサーバに画像を保存することも提案されている(例えば、特許文献1)。
 特許文献1 特開2003-271602号公報
 なお、現時点で先行技術文献の存在を認識していないので、先行技術文献に関する記載を省略する。
 しかしながら、従来のサーバにおいては、永久に保存したい画像を保存しているサーバが永久に画像を保存することを保証するものではなかった。特に当該サーバが故障した場合や、ネットワークから切り離された場合には、画像が失われるおそれがあった。
 そこで本発明の1つの側面においては、上記の課題を解決することのできる電子機器、電子機器の制御方法およびプログラムを提供することを目的とする。この目的は請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
 本発明の第1の態様によると、入力したデータを複数の部分データに分割する分割装置と、複数の部分データの一部が重複するように、少なくとも第1外部装置と第2外部装置とに複数の部分データの一部分を送付する通信装置とを備えることを特徴とする電子機器が提供される。
 本発明の第2態様によると、入力したデータを複数の部分データに分割する分割段階と、複数の部分データの一部が重複するように、少なくとも第1外部装置と第2外部装置とに複数の部分データの一部分を送付する通信段階とを備えることを特徴とする電子機器制御方法が提供される。
 本発明の第3態様によると、コンピュータを制御するプログラムであって、コンピュータに入力したデータを複数の部分データに分割する分割機能、および、複数の部分データの一部が重複するように、少なくとも第1外部装置と第2外部装置とに複数の部分データの一部分を送付する通信機能を実現させるためのプログラムが提供される。
 なお、上記した発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
本実施の形態のデータ保存システム1のブロック図である。 データ保存システム1の動作を示すフローチャートである。 一部の動作(S10)の詳細を示すフローチャートである。 機器情報テーブルの一例を示す。 一部の動作(S20)のフローチャートである。 分割情報テーブルの一例を示す。 メモリ204に記憶される断片データの一例を示す図である。 データ分割マップの第1の例を示す図である。 データ分割マップの第2の例を示す図である。 一部の動作(S30)の詳細を示すフローチャートである。 一部の動作(S50)の詳細を示すフローチャートである。
 以下、発明の実施の形態を通じて本発明の一側面を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
 本実施の形態のデータ保存システム1は、現在多くの人が携帯電話やパソコンなどのメモリを有した機器を保有しており、そのメモリの記憶容量が増加する中でメモリの記憶容量には余裕があり、その空き容量を利用してデータを保存するものである。
 図1は、本実施の形態のデータ保存システム1のブロック図である。図1に示してあるように、データ保存システム1は、データ保存を依頼するユーザ機器100と、ユーザ機器100からのデータ保存依頼を受ける管理サーバ200と、この管理サーバ200からの依頼に応じて分割されたデータを記憶する複数のローカルデバイスである記録サーバ群300とを有する。これらユーザ機器100、管理サーバ200および記録サーバ群300は、インターネット、電話網などのネットワークにより互いに通信する。
 ユーザ機器100は、静止画等の保存を希望するユーザによって操作される、携帯電話、スマートフォン、PHS(Personal Handy-phone System)、PDA(Personal Digital Assistant)などの携帯型端末や、パソコンなどの電子機器である。当該ユーザ機器100は、静止画、動画、テキストデータおよび音楽などデータとそれに付随するメタデータを記憶している不揮発性のメモリ101と、各種演算を行なう演算装置102と、メモリ101に記憶されているデータを管理サーバ200に送信する通信部103と、ユーザ機器100全体を制御するCPUを備えた制御部104と、を有する。
 管理サーバ200は、例えば管理者によって管理される情報処理機器である。当該管理サーバ200は、ユーザ機器100から送信されたデータや後述のデータ分割マップなどを記憶する記憶媒体であるハードディスク201と、ハードディスク201に記憶されている各種データの安全係数を設定する設定部202、ハードディスク201に記憶されている各種データを分割する分割部203、分割されたデータを一次的に記憶する不揮発性メモリ204、ユーザ機器100の通信部103および記録サーバ群300と通信を行うサーバ側通信部205と、管理サーバ200全体を制御するCPUを備えたサーバ制御部206と、を有する。
 ハードディスク201は、前述のデータに加えて、個々のデータ保存機器を記録サーバ群300として登録するときに、個々のデータ保存機器に常駐させるアプリケーションソフトを保存している。このアプリケーションソフトは、管理サーバ200とデータ保存機器との間のデータ通信を行うとともに、データ保存機器のメモリに記憶された断片データへアクセスするためのパスワードの設定、データ保存機器のメモリの空き容量の確認およびデータ保存機器の電源の入っている時間のログなどを取る。ハードディスク201はさらに、データ保存機器に関する情報である機器情報テーブル、および、分割の設定に関する情報である分割情報テーブルを格納している。
 設定部202は、分割される断片データを何台のデータ保存機器に送るかを示す係数である安全係数を決める。安全係数についてはさらに後述する。
 分割部203は、データサイズや、安全係数に応じてユーザ機器100から送信されたデータを例えば数十から数10Kバイトに分割して、分割された断片データをメモリ204に記憶させる。サーバ側制御部206は、記録サーバ群300の中から、機器情報テーブルを参照して配布数に応じたデータ保存機器を抽出し、通信部205を用いて当該データ保存機器に断片データを送信する。
 記録サーバ群300は複数のデータ保存機器からなり、個々のデータ保存機器は携帯型端末やパソコンなど、読み書き可能なメモリ付きの電子機器である。当該データ保存機器は、個人用のものでも企業用のものでも構わない。また、当該データ保存機器は、インターネット等のネットワークで通信できれば、国や地域などの設置場所の制限はない。
 データ保存機器はそれぞれ、通信部205と通信可能な通信部301、311・・・と、通信部205から送信された分割データを保存する不揮発性メモリ302、312・・・と、それぞれのデータ保存機器を制御する制御部303、313・・・と、を有する。
 以上のように構成されたデータ保存システム1の動作について、以下、図2のフローチャートを用いて説明を続ける。まず管理サーバ200は、データ保存機器からの要求により当該データ保存機器をハードディスク201の機器情報テーブルに登録する(S10)。ユーザ機器100からデータの保存の要求があった場合に、管理サーバ200は当該データを分割して断片データを生成して、当該断片データを複数のデータ保存機器に送信する(S20)。その後、管理サーバは断片データの保存状態をデータ保存機器に対して確認する(S30)。ユーザ機器100からデータの回収の要求があった場合に(S40:Yes)、管理サーバ200は複数のデータ保存機器から断片データを回収して元のデータを復元する(S50)。また、ユーザ機器100からデータの回収の要求がない場合には(S40:No)、管理サーバ200は予め定められたタイミングでステップS30の動作を繰り返す。
 図3は、管理サーバ200がデータ保存機器を登録する動作(S10)の詳細を示すフローチャートである。ステップS10の動作は、データ保存機器が管理サーバ200へ登録を要求することにより開始する。下記の説明において、データ保存機器には固定IPアドレスが割り振られており、通信部103、205、301、311・・・はインターネットなどの電気通信回線により接続されて通信を行うものとする。
 まず保存機器xxx.xxx.1.1が、管理サーバ200へウエブページ等から登録を要求する(S110)。登録の要求を受信した管理サーバ200は、登録の要求を発信した保存機器xxx.xxx.1.1に予め定められたアプリケーションソフトがインストールされているかどうかを問い合わせて確認する(S112)。
 保存機器xxx.xxx.1.1は、上記問い合わせに対してメモリ302にアプリケーションソフトがインストールされているかどうかを判断する(S114)。アプリケーションソフトがインストールされていない場合に(S114)、保存機器xxx.xxx.1.1は管理サーバ200に対してアプリケーションソフトを要求する(S116)。アプリケーションソフトの要求を受信した管理サーバ200は、ハードディスク201に保存されているアプリケーションソフトを保存機器xxx.xxx.1.1に送信する(S118)。
 保存機器xxx.xxx.1.1は、受信したアプリケーションソフトをインストールして(S120)、当該アプリケーションソフトを起動する(S122)。また、上記ステップS114において予めアプリケーションソフトがインストールされていると判断した場合にも(S114:Yes)、当該アプリケーションソフトを起動する(S122)。
 保存機器xxx.xxx.1.1は、アプリケーションソフトを用いて当該データ保存機器の登録情報を取得して(S124)、管理サーバ200に送信する(S126)。登録情報の一例は、固定IPアドレス、設置場所およびメモリ貸出量である。これら登録情報は入力を促す画面を表示してユーザにより入力されてもよいし、アプリケーションソフトがメモリ302にアクセスして自ら情報を取得してもよい。また、メモリ貸出量は管理サーバ200による使用を許可するメモリの容量であって、一例としては、メモリの3~10%や現在のメモリの空き容量の3~10%と設定することができる。
 管理サーバ200は、受信した登録情報をハードディスク201の機器情報テーブルに登録する(S126)。登録が完了すると、管理サーバ200は保存機器xxx.xxx.1.1へ確認(ACK)を送付して(S128)、ステップS10の動作が終了する。
 図4は、ハードディスク201に記録された機器情報テーブルの一例を示す。機器情報テーブルは、機器IDとしての固定IPアドレスに対応付けられた、上記登録情報、ログ情報およびランク情報を有する。ログ情報は、保存機器のメモリ使用量、保存機器の電源投入時間、分割データの保存状態、後述する分割データの回収に対する応答時間が含まれている。サーバ側制御部206は、これらのデータを前述した常駐アプリケーションを用いて情報を入手することができる。サーバ側制御部206は、例えば、企業の保存機器であれば、平日は午前9時から午後10時まで電源が投入されているが、土日および祝日には電源が入らないなどというログも入手することができ、後述の分割データ回収時の参考とすることができる。ランク情報は、信頼計数と順位とが含まれている。信頼係数はログ情報に基づく保存機器の信頼性を示す値であり、サーバ側制御部206は、信頼度「高」「中」「低」に対応して「200」「100」「50」の係数を設定する。また、サーバ側制御部206は、ログ情報と後述の分割データ回収に基づき保存機器の順位を設定する。初期値としてログ情報にはNull、ランク情報の信頼係数は「中」に対応する値100、順位は信頼係数「中」における順位の中央値が割り当てられる。
 図5は、管理サーバ200がデータを分割して保存させる動作(S20)のフローチャートである。なおここでは、ユーザ機器100および記録サーバ群300を構成する個々の保存機器の登録操作は終わっているものとする。
 サーバ側制御部206は、ユーザ機器100のリクエストに応じて保存すべきデータを受け付ける(S210)。サーバ側制御部206は、ユーザ機器100からデータを受け付ける場合にデータの種類、保存期間、重要度、セキュリティレベルなどを入力し、このデータを特定するためのアカウントおよびこのアカウントと紐付けされたパスワードの設定を行い、ユーザ機器100に通知する。なお、上述のデータの受付は複数のデータを纏めて、例えば静止画を100枚纏めて受け付けるようにしてもよく、その場合には個別に重要度や保存期間を設定するようにしてもよい。通信部205を介して管理サーバ200に送信されたデータは、ハードディスク201に保存される。
 設定部202は、上記データに基づき安全係数を設定する(ステップS2)。安全係数の設定は、保存期間、重要度、セキュリティレベル、メタデータに応じて設定される。
 設定部202が、重要度を用いて安全係数を設定する例を説明する。この場合にまずサーバ側制御部206は、上記ステップS210においてユーザに重要度として「高」「中」「低」のいずれかを選択させる。また、設定部202にはそれらの重要度「高」「中」「低」と安全係数「200」「100」「50」とが対応付けられたテーブルが用意されており、ユーザにより選択された重要度に対応する安全係数を選択する。ここで、安全係数が「50」とは、同じ断片データを異なる50台のデータ保存機器に送信することを示す。
 さらに設定部202は、保存期間、重要度およびセキュリティレベルの組み合わせにより安全係数を設定してもよい。この場合に、設定部202は、評点の範囲と安全係数の値とを対応付けたテーブルを有し、保存期間が長いほど高い評点を割り振り、重要度が高いほど高い評点を割り振り、セキュリティレベルが高いほど高い評点を割り振って、ユーザからの入力に応じた評点の加重平均に基づいて、安全係数を設定してもよい。
 また、ユーザ機器100から送信されるデータが画像の場合に、設定部202は、その画像のメタデータからフォーカス位置、顔検出位置、被写体追尾位置など画像の重要な位置を検出して安全係数を上げるとともに、例えば地面や空などの背景の安全係数を下げてもよい。具体的には、設定部202は、ハードディスク201に記憶されている地面や空などの画像データや、横位置で撮影したか縦位置で撮影したかをメタデータから判別して地面や空などの背景を検出するようにすればよい。
 この場合に、設定部202はまず、画像のメタデータから重要部分とそれ以外の部分との境界を画定する。次に設定部202は、当該境界に沿って、重要な部分からなる画像のデータと、それ以外の部分からなる画像のデータとを生成する。設定部202は、上記方法により設定される安全係数に対して、重要な部分からなる画像のデータの安全係数を上げる、または、それ以外の部分からなる画像のデータの安全係数を下げる。ここで新たに生成された画像のデータは、BMP(Bitmap)等の形式でもよいし、設定部202により処理可能な独自の形式であってもよい。
 さらに、設定部202はユーザ機器100から送信されるデータがプログレッシブJPEGの場合に、上記と同様の方法により、上の階層の安全係数を、下の階層の安全係数に対して相対的に上げてもよいし、下げてもよい。また、設定部202はユーザ機器100から送信されるデータが動画の場合に、例えば、キーとなるキーフレームと、キーフレームとの差分を差分フレームとして保存する動画フォーマットの場合には、キーフレームの安全係数を差分フレームの安全係数よりも大きく設定すればよい。また、設定部202はユーザ機器100から送信されるデータが音楽の場合に、上記と同様の方法により、可聴域の周波数データの安全係数を、可聴域外の周波数データの安全係数に対して相対的に上げてもよい。
 分割部203は、データサイズおよび安全係数に応じてユーザ機器100から送信されたデータを分割し、断片データを作成し、メモリ204に記憶する(S214)。この場合に分割部203は、設定された安全係数に基づいて分割情報テーブルを参照することにより、データを分割する。
 図6は、ハードディスク201に記録された分割情報テーブルの一例を示す。分割情報テーブルは、安全係数に対応付けられた、分割単位、最大保存個数および最大集中台数のそれぞれの数値を有する。ここで、分割単位は、データを分割して断片データにする場合の分割の単位となるバイト数であり、図6に示す例においては、安全係数が大きいほど分割単位を小さく設定している。最大保存個数は、一つのデータ保存機器に複数の断片データを保存する場合における断片データの個数の最大値であり、図6に示す例においては、安全係数が大きいほど最大保存個数を小さく設定している。最大集中台数は、一つの設置場所に属する複数のデータ保存機器に複数の断片データを保存する場合におけるデータ保存機器の台数の最大値であり、図6に示す例においては、安全係数が大きいほど最大集中台数を小さく設定している。
 図7は、メモリ204に記憶される断片データの一例を示す図である。例えば、1枚の静止画を1000個の断片データに分割する場合、図7に示してあるように、断片データ1から断片データ1000には、"PhotoData"という共通のファイル名が与えられるとともに、インデックス番号1から1000が順次与えられる。また、断片データの先頭アドレスおよび終端アドレスが与えられる。例えば、断片データの分割単位が40バイトである場合における断片データ1の先頭アドレスは0で、終端アドレスは39となる。これらの、ファイル名、インデックス番号、先頭アドレス、終端アドレスとともに、分割されたデータがメモリ204に記憶される。
 次に、サーバ側制御部206は、断片データを保存させるべきデータ保存機器を抽出する(S216)。その場合に、サーバ側制御部206はまず配布数を設定する。
 例えば4Mの静止画を40Kバイトで分割すると分割数は100となる。記録サーバ群300への配布数は分割数に安全係数を乗じた数であり、ここで、安全係数を50とすると
 配布数=分割数×安全係数=100×50=5000となる。
 この場合、管理サーバ200は、記録サーバ群300のデータ保存機器にデータ保存依頼を出し5000台のデータ保存機器を確保するようにするとともに、5000台のデータ保存機器と、送付する断片データとを対応づけたデータ分割マップをハードディスク201に記憶させるとともに、ユーザ機器100にも通信する。
 また、重要度が高くて安全係数が200に設定された場合は、4Mの静止画を40バイトで分割すると分割数は10万となり、安全係数を200とすると配布数は2000万となる。ここで、1つのデータ保存機器に10万の断片データのうち1000個を保存させれば断片データの配布数は2000万であっても必要なデータ保存機器は2万台となる。
 そこで、サーバ側制御部206は、登録されているデータ保存機器の中から配布数に応じたデータ保存機器を抽出する。この場合に、サーバ側制御部206は、分割情報テーブルを参照して元のデータに設定された安全係数に対応付けられた最大保存個数および最大集中台数を読み出す。次にサーバ側制御部206は配布数を最大保存個数で除することにより、必要台数を算出する。サーバ側制御部206は、機器情報テーブルを参照して、元のデータに設定された安全係数に対応する信頼係数を有するランク情報における順位が高い順に、必要台数分のデータ保存機器を抽出する。なお、サーバ側制御部206は、重要度の高いデータをランク情報の良好なデータ保存機器に記憶させるようにデータ保存機器を抽出するようにしてもいい。更に、サーバ側制御部206は、ランク情報の良好なデータ保存機器に保存させる分割データ量を多くする一方、ランク情報が良好ではないデータ保存機器に保存させる分割データ量を少なくしたり、データ保存機器として抽出しないようにしてもよい。
 ここで、サーバ側制御部206は、抽出されたデータ保存機器における設置場所を参照して、上記最大集中台数を超えた場合には当該データ保存機器を選択せずに次の順位のデータ保存機器を選択する。これにより、サーバ側制御部206は、同一の断片データが送付される地域が集中することを防ぐことができる。同様に、サーバ側制御部206は、抽出されたデータ保存機器におけるメモリ使用量を参照して、断片データの大きさが、メモリ貸出量からメモリ使用量を引いた残容量を超えた場合には当該データ保存機器を選択せずに次の順位のデータ保存機器を選択する。
 例えば、説明を簡単にするために、分割数が5個で安全係数が2の場合には、以下の通りとなる。分割数が5個で安全係数が2であるので断片データが10個生成される。サーバ側制御部206は、1つのデータ保存機器に2つの断片データを保存させるとして、5台のデータ保存機器xxx.xxx.1.1~xxx.xxx.1.5を抽出する。この場合、サーバ側制御部206は、データ保存機器xxx.xxx.1.1~xxx.xxx.1.5が特定の設置場所に集中しないように、例えば企業の同じ部署の5台とならないように、データ保存機器を抽出する。これにより、サーバ側制御部206は、同一の断片データが送付される地域が集中することを防ぐことができる。特に、テキストデータを断片データとして送付する場合には、言語が異なる地域へ送付することによりセキュリティを高めることも期待できる。
 ステップS216に続いて、サーバ側制御部206は、データ分割マップを作成する(ステップS218)。データ分割マップは、複数の断片データがそれぞれ複数のデータ保存機器のいずれに保存されたかを示す。
 さらに、サーバ側制御部206は、ステップS218で作成したデータ分割マップに基づいて、断片データを、通信部205を介して各データ保存機器に送信する(S220)。この場合に、サーバ側制御部206は、データ保存機器のそれぞれと順次、通信を確立して、アプリケーションソフトを起動する旨のコマンドとともに当該断片データを送信する。データ保存機器は、当該コマンドを受信した場合にアプリケーションソフトを起動して、断片データをメモリ302等に格納する。
 例えば、サーバ側制御部206は、5台のデータ保存機器xxx.xxx.1.1~xxx.xxx.1.5に断片データを送付する。サーバ側制御部206は、例えば前述の常駐アプリケーションソフトを用いて、5台のデータ保存機器xxx.xxx.1.1~xxx.xxx.1.5のメモリの空き容量を確認した後に、5台のデータ保存機器xxx.xxx.1.1~xxx.xxx.1.5に断片データを送付する。
 次に、サーバ側制御部206は、データ分割マップどおりに各断片データが保存されたかどうかを判断する(S222)。この場合に、例えば前述の常駐アプリケーションソフトを用いて、データ保存機器が断片データを格納した旨の確認を受信したことをもって、サーバ側制御部206は、ステップS222の判断をYesとし、それ以外の場合をNoとする。ステップS222の判断がNoとなる一例は、データ保存機器の電源が投入されていなかった等の理由により、当該データ保存機器とサーバ側制御部206の間に通信が確立されなかった場合が挙げられる。
 サーバ側制御部206は、それぞれのメモリへの保存ができたことが確認できない場合には(S222:No)、保存が確認できなかったデータ保存機器及びその断片データを確認して、ステップS216に戻る。すなわち、保存されなかった断片データがある場合に、サーバ側制御部206は機器情報テーブルを参照して次の順位のデータ保存機器を抽出する。その後、サーバ側制御部206は、上記ステップS218からS222を実行する。
 各断片データが保存された場合に(S222:Yes)、サーバ側制御部206は、最終的にデータを送付したデータ保存機器と、そのデータ保存機器に保存させたデータとの関連を示すデータ分割マップを通信部205によりユーザ機器100に送付する(S224)。また、サーバ側制御部206は、このデータ分割マップをハードディスク201に記憶する。以上により、ステップS20の動作が終了する。
 図8は、データ分割マップの第1の例を示す図である。サーバ側制御部206は、データ保存機器xxx.xxx.1.1に断片データ1及び断片データ2を記憶させ、データ保存機器xxx.xxx.1.2に断片データ2及び断片データ3を記憶させ、データ保存機器xxx.xxx.1.3に断片データ3及び断片データ4を記憶させ、データ保存機器xxx.xxx.1.4に断片データ4及び断片データ5を記憶させ、データ保存機器xxx.xxx.1.5に断片データ5及び断片データ1を記憶させている。このような場合、例えば、データ保存機器xxx.xxx.1.1が壊れてしまったり、電源が入っていなかったりしても、データ保存機器xxx.xxx.1.1が記憶している断片データ1及び断片データ2は、データ保存機器xxx.xxx.1.2とデータ保存機器xxx.xxx.1.3とから読み出せばよく、問題が生じることはない。
 図9は、データ分割マップの第2の例を示す図である。図9の例は、断片データ1の重要度が高いため(例えば、静止画の主要被写体)、断片データ1の安全係数を5とし、断片データ2から5の安全係数を2としたものである。
 サーバ側制御部206は、データ保存機器xxx.xxx.1.1に断片データ1及び断片データ2を記憶させ、データ保存機器xxx.xxx.1.2に断片データ1~3を記憶させ、データ保存機器xxx.xxx.1.3に断片データ1、3、4を記憶させ、データ保存機器xxx.xxx.1.4に断片データ1、4、5を記憶させ、データ保存機器xxx.xxx.1.5に断片データ5及び断片データ1を記憶させている。このように、断片データ1の安全係数を上げることにより、断片データ1を読み出せる確率が向上する。なお、サーバ側制御部206は、1つのデータ保存機器に記憶させるデータ数を増やすのに代えて、新たなデータ保存機器を追加してもよい。
 図10は、管理サーバ200が保存状態を確認する動作(S30)の詳細を示すフローチャートである。ステップS30は、上記ステップS20の動作が完了したことにより開始する。
 サーバ側制御部206は、所定時間、例えば、1ヶ月が経過しするまで待機する(S308:No)。サーバ側制御部206は、所定時間が経過した場合に(S308:Yes)、ステップS310に進む。
 サーバ側制御部206は、断片データが各データ保存機器に保存されているかどうかを確認すべく、まずデータ分割マップを参照する(S310)。サーバ側制御部206は、データ分割マップに基づいて、断片データが各データ保存機器に保存されているかどうかを確認する(ステップS312)。
 例えばサーバ側制御部206は、5台のデータ保存機器xxx.xxx.1.1~xxx.xxx.1.5との通信により、5台のデータ保存機器xxx.xxx.1.1~xxx.xxx.1.5から応答があり、かつ、断片データが保存されているかどうかを確認する。この場合も、サーバ側制御部206は、常駐アプリケーションソフトを用いて断片データの保存を確認する。
 さらに、サーバ側制御部206は、常駐アプリケーションソフトを用いて、それぞれのデータ保存機器の電源が入っている時間のログや、メモリ空き容量の変化、および断片データ確認要求を出してから応答するまでの応答時間のログを取り、そのログをハードディスク201の機器情報テーブルに記憶する(S314)。
 なお、断片データの確認は、全て同じ日や時間に行なう必要はなく、日時をずらして行なってもいい。また、必ずしも定期的、例えば1ヶ月に行なう必要はなく、応答時間が早いデータ保存機器を有している人に対しては2ヶ月にしてもいい。いずれにしても断片データの確認を繰り返し行うことが好ましい。これにより、ユーザ機器100から送信されたデータを再生する場合のフォーマットが変更されたり、バージョンが更新された場合でも、管理サーバ200がデータを再生する環境をアップデートすることが可能となり、アップデートされた再生環境に基づき、再度、データを記録サーバ群300に記録させることが可能となる。
 サーバ側制御部206は、ステップS10の断片データの確認状況に応じて、データ保存機器を追加するかどうか、言い換えれば、安全係数を上げるかどうかを判断する(S316)。サーバ側制御部206は、応答のないデータ保存機器があった場合、応答はあったものの応答期間が予め設定された閾値を越えた、例えば3日以上かかったものがあった場合、電源が入っている時間が閾値よりも短い、例えば、平日は電源が入らない、週末は電源が入らない等のデータ保存機器があった場合には、データ保存機器を追加すべきと判断して(S316:Yes)、ステップS216以降の作業を繰り返す。一方、サーバ側制御部206は、断片データの確認状況に問題がなければ(S316:No)、ステップS30の動作を終了する。
 サーバ側制御部206は、上記ログに基づいてデータ保存機器を評価して、機器情報テーブルにおける当該データ保存機器のランク情報を更新しても良い。例えば、取得したログ情報における、電源投入時間および応答時間に閾値が設定されており、その閾値に基づいて、ランク情報の安全係数および順位を変更してもよい。特に、ステップS316においてデータ保存機器を追加すべきと判断される元となったデータ保存機器については、機器情報テーブルにおけるランク情報の順位を、不適を示すNullデータに更新してもよい。
 図11は、管理サーバ200がデータを回収する動作(S50)の詳細を示すフローチャートである。ステップS50の動作は、ユーザ機器100からデータ回収要求があったことにより開始する。
 サーバ側制御部206は、データ分割マップを参照して(S510)、データ保存機器を特定し(S512)、当該データ保存機器のアプリケーションソフトを用いて断片データを回収する(S513)。サーバ側制御部206は、回収した断片データをメモリ204に格納する。特定の断片データが回収できるまで(S514:No)、サーバ側制御部206は上記ステップS510からS514を繰り返す。ここで、当該繰返しにおいて、データ分割マップにおける当該データを保存したいずれのデータ保存機器からも断片データが回収できなかった場合(S512:No)、ステップS518に進む。
 サーバ側制御部206は、上記ステップS510からS514を全部の断片データを回収するまで繰り返す(S516:No)。全部の断片データが回収された場合(S516:Yes)、サーバ側制御部206は、断片データから元のデータを復元し(S518)、ユーザ機器100へ送信する(S520)。また、特定の断片データが最終的に回収されなかった場合にも(SS518)、当該特定の断片データがない状態で、サーバ側制御部206は、断片データから元のデータを復元し(S518)、ユーザ機器100へ送信する(S520)。ここで、重要な断片データほど多くのデータ保存機器に保存されているので回収の可能性が高い。よって、重要な断片データが回収されていれば、それよりも重要度が低い断片データが回収されなかったとしても、元のデータにおける重要部分を復元することができる。さらに、サーバ側制御部206は、回収動作におけるログ情報を更新して、保存確認動作の場合と同様に利用する(S522)。
 なお、サーバ側制御部206は、ステップS510からS516において、回収するデータの重要度や、回収の緊急性に応じて、回収要請を行なうデータ保存機器を選択することが好ましい。例えば、回収するデータ数が5個の場合であって、安全係数が高く2000台のデータ保存機器にデータを保存させているデータが2つ、安全係数が中位くらいで200台のデータ保存機器にデータを保存させているデータが2つ、安全係数が低く20台のデータ保存機器にデータを保存させているデータが1つとする。この場合に、サーバ側制御部206は、すべてのデータ保存機器にデータ回収を要請するのではなく、安全係数の高いデータを保存しているデータ保存機器400台、安全係数中くらいのデータを保存しているデータ保存機器30台、安全係数の低いデータを保存しているデータ保存機器は台数が少ないので20台すべてを抽出してデータ回収を実行する。この場合に、安全係数と回収要請を行う台数とを対応付けたテーブルがハードディスク201に格納されていて、サーバ側制御部206が当該テーブルを参照して台数を設定してもよい。
 上記の場合に、ステップS514において、サーバ側制御部206は、緊急性に応じて設定した所定時間、例えば3~8時間程度にデータが回収できたかどうかを判断する。サーバ側制御部206は、5つのデータすべてが回収できていれば、ステップS518に進み、回収できていないデータがあればステップS510に戻りデータ回収を再度行なう。なお、この場合に例えば、緊急性が高い場合には、安全係数の低いデータが回収できていない場合でもステップS516の判断をYesとしてもよい。
 次いで、サーバ側制御部206は、データ保存機器を追加するかどうかの判断を行なう(SS524)。サーバ側制御部206は、ステップS513にて実行したデータ回収状態に基づき、安全係数高いデータ、中位のデータ、低いデータのそれぞれについてデータ保存機器を追加するかどうかを判断する。サーバ側制御部206は、応答の無かったデータ保存機器があった場合や、安全係数高いデータ、中位のデータを保存しているデータ保存機器の応答が遅い場合に、その判断をYesとしてステップS216へ進む。
 また、サーバ側制御部206は、応答が遅いデータ保存機器については、電源が入っている時間のログ、設置場所の時差などに基づき、安全係数の低いデータを保存するデータ保存機器とし、以後、ステップS4にてデータ保存機器を抽出する際にこの情報を利用する。
 なお、ハードディスク201に記録されているユーザ機器100からのデータは、そのまま保存するか、そのデータを別の記憶媒体に記憶して保管するようにしてもいいし、記録サーバ群300に断片データを保存させた時点で削除するようにしてもよい。データを残す場合には、記録サーバ群300に記憶された断片データはバックアップデータとして用いればよい。
 本実施形態の管理サーバ200をビジネス展開する場合には、ユーザ機器100のユーザへ課金するとともに、記録サーバ群300のデータ保存機器のユーザに対してメモリ使用料を納金するようにすればよい。この場合、管理サーバ200は、設定部202で設定された安全係数に基づきユーザ機器100のユーザへの料金を設定すればいい。また、管理サーバ200は、データ保存機器の使用メモリ量やランク情報に応じてメモリ使用料を設定すればいい。このような料金体系表はハードディスク201に記憶させておけばよい。また、一人のユーザが複数のユーザ機器100をまたがって使う場合、および、一つのユーザ機器100を複数のユーザが共有する場合があるので、管理サーバ200はユーザIDとユーザ機器IDとを対応付けておき、ユーザID単位で合算した料金を、当該ユーザIDに対応付けられたいずれかのユーザ機器IDで特定されるユーザ機器100へ設定してもよい。
 以上、本実施形態によれば、複数の部分データの一部分を複数の外部装置に送付しているので、データを確実に保存することができる。これにより、一つのサーバにデータを保存する場合のストレージの負荷を低減するとともに、当該サーバからデータが完全になくなってしまう、という事態を防ぐことができる。
 上記実施形態においては、データ保存機器は固有IPアドレスが割り振られた電子機器としたが、データ保存機器はこれに限られない。データ保存機器の他の例として、携帯電話が挙げられる。この場合には、インターネットに代えて電話網を用いるとともに、固有IPアドレスに代えて電話番号を用いることができる。携帯電話は、同一の電話番号で機種が変更されることがあるが、その場合には変更元の携帯電話のメモリから変更先の携帯電話のメモリへ断片データを引き継ぐ。特に、変更元の携帯電話のメモリから変更先の携帯電話のメモリへは、電話帳等、引き継ぐデータがあるので、断片データはそれらの添付データとして引き継がれることが好ましい。
 以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
 請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
1 データ保存システム、100 ユーザ機器、101 メモリ、102 演算装置、103 通信部、104 制御部、200 管理サーバ、201 ハードディスク、202 設定部、203 分割部、204 メモリ、205 通信部、206 サーバ側制御部、300 記録サーバ群、301 通信部、302 メモリ、303 制御部、311 通信部、312 メモリ、313 制御部

Claims (14)

  1.  入力したデータを複数の部分データに分割する分割装置と、
     前記複数の部分データの一部が重複するように、少なくとも第1外部装置と第2外部装置とに前記複数の部分データの一部分を送付する通信装置と
    を備えることを特徴とする電子機器。
  2.  前記第1外部装置と、当該第1外部装置に送付されたデータと関連つけるとともに、前記第2外部装置と、当該第2外部装置に送付されたデータと関連つけて記憶する記憶装置を備えたことを特徴とする請求項1記載の電子機器。
  3.  前記通信装置は、前記第1外部装置と前記第2外部装置とに送付したデータの確認を繰り返し行うことを特徴とする請求項1または2記載の電子機器。
  4.  前記データの確認毎に前記第1外部装置と前記第2外部装置とは異なる外部装置に前記複数の部分データの一部分を送付するかどうかを判定する判定装置を備えることを特徴とする請求項3記載の電子機器。
  5.  前記外部装置に前記複数の部分データの一部分が送付される際に、前記第2外部装置と、当該外部装置に送付されたデータと関連つけて記憶する記憶装置を備えたことを特徴とする請求項4記載の電子機器。
  6.  前記第1外部装置と前記第2外部装置との少なくとも一方の位置に応じて前記外部装置を選択する選択装置を備えたことを特徴とする請求項4または5記載の電子機器。
  7.  前記データの確認に基づいて、前記第1外部装置と前記第2外部装置とを評価する評価装置を備えたことを特徴とする請求項3記載の電子機器。
  8.  前記入力したデータに応じて、前記通信装置が通信する装置の数を設定する設定部を備えることを特徴とする請求項1から7のいずれか一項に記載の電子機器。
  9.  前記設定部は、前記入力したデータの重要度に基づいて前記装置の数を設定することを特徴とする請求項8記載の電子機器。
  10.  前記設定部は、前記データの第1部分と、該第1部分とは異なる第2部分とのそれぞれで前記重要度を設定することを特徴とする請求項9記載の電子機器。
  11.  外部機器から前記データを入力する入力部を備え、
     前記設定部は、前記外部機器への課金を設定することを特徴とする請求項8から10のいずれか一項に記載の電子機器。
  12.  前記通信装置は、前記第1外部装置と前記第2外部装置との電源のオン・オフ状態を入力することを特徴とする請求項1から11のいずれか一項に記載の電子機器。
  13.  入力したデータを複数の部分データに分割する分割段階と、
     前記複数の部分データの一部が重複するように、少なくとも第1外部装置と第2外部装置とに前記複数の部分データの一部分を送付する通信段階と
    を備えることを特徴とする電子機器制御方法。
  14.  コンピュータを制御するプログラムであって、前記コンピュータに
     入力したデータを複数の部分データに分割する分割機能、および、
     前記複数の部分データの一部が重複するように、少なくとも第1外部装置と第2外部装置とに前記複数の部分データの一部分を送付する通信機能
    を実現させるためのプログラム。
PCT/JP2012/001000 2011-03-14 2012-02-15 電子機器、電子機器の制御方法およびプログラム WO2012124257A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013504534A JP5644937B2 (ja) 2011-03-14 2012-02-15 電子機器およびプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011055317 2011-03-14
JP2011-055317 2011-03-14

Publications (1)

Publication Number Publication Date
WO2012124257A1 true WO2012124257A1 (ja) 2012-09-20

Family

ID=46830351

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/001000 WO2012124257A1 (ja) 2011-03-14 2012-02-15 電子機器、電子機器の制御方法およびプログラム

Country Status (2)

Country Link
JP (2) JP5644937B2 (ja)
WO (1) WO2012124257A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312260A (ja) * 2001-04-17 2002-10-25 Hitachi Ltd ストレージ連携管理方法
JP2004171224A (ja) * 2002-11-19 2004-06-17 Nec Corp 契約ストレージ代行提供システムおよび契約ストレージ代行提供方法
JP2005004243A (ja) * 2003-06-09 2005-01-06 Tkc Corp データベースバックアップ方法、およびその方法をコンピュータに実行させるプログラム、データベースバックアップシステム、データサーバ、管理サーバ
JP2005215735A (ja) * 2004-01-27 2005-08-11 Hitachi Ltd ファイル入出力制御装置
JP2008181358A (ja) * 2007-01-25 2008-08-07 Satoshi Yamatake ファイル格納システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001236275A (ja) * 2000-02-24 2001-08-31 Hitachi Ltd 電子メール端末装置
JP4254178B2 (ja) * 2002-09-11 2009-04-15 富士ゼロックス株式会社 分散格納制御装置及び方法
JP2006148373A (ja) * 2004-11-17 2006-06-08 Hyper Tec:Kk 分割コンテンツ情報生成装置、コンテンツ配信システム及び分割コンテンツ情報生成装置の動作方法
JP2007334418A (ja) * 2006-06-12 2007-12-27 Nippon Telegr & Teleph Corp <Ntt> 情報配置制御方法および端末装置
JP2008181213A (ja) * 2007-01-23 2008-08-07 Fuji Xerox Co Ltd 情報管理システム、情報管理装置およびプログラム
JP5369807B2 (ja) * 2009-03-24 2013-12-18 日本電気株式会社 ストレージ装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002312260A (ja) * 2001-04-17 2002-10-25 Hitachi Ltd ストレージ連携管理方法
JP2004171224A (ja) * 2002-11-19 2004-06-17 Nec Corp 契約ストレージ代行提供システムおよび契約ストレージ代行提供方法
JP2005004243A (ja) * 2003-06-09 2005-01-06 Tkc Corp データベースバックアップ方法、およびその方法をコンピュータに実行させるプログラム、データベースバックアップシステム、データサーバ、管理サーバ
JP2005215735A (ja) * 2004-01-27 2005-08-11 Hitachi Ltd ファイル入出力制御装置
JP2008181358A (ja) * 2007-01-25 2008-08-07 Satoshi Yamatake ファイル格納システム

Also Published As

Publication number Publication date
JPWO2012124257A1 (ja) 2014-07-17
JP5644937B2 (ja) 2014-12-24
JP2015015037A (ja) 2015-01-22

Similar Documents

Publication Publication Date Title
CN101404665B (zh) 用于数据处理的方法和装置
CN109947497B (zh) 应用程序预加载方法、装置、存储介质及移动终端
US20080167027A1 (en) Graphical user interface and method for mobile device activation
CN106031127B (zh) 用于应用的管理的方法和装置
CN102915374A (zh) 一种控制数据库资源访问的方法、装置及系统
CN101404789A (zh) 用于数据处理的方法和装置
CN102196021A (zh) 远端移除数据的方法与系统、伺服器及移动装置
CN109740089A (zh) 数据采集方法、装置、系统、可读存储介质及电子设备
KR101885586B1 (ko) 마이크로서비스관리장치 및 방법
CN103782281A (zh) 内容控制装置、终端设备、内容控制方法及内容控制程序
CN104836879A (zh) 通讯录的更新方法、服务器及系统
CN106412078B (zh) 精准信息推送方法、装置和系统
CN105765533A (zh) 用于固件虚拟化的方法和装置
CN107610310A (zh) 一种排队处理方法、服务器及计算机存储介质
CN105824827A (zh) 一种文件路径的存储和本地文件的访问方法及装置
JP6216187B2 (ja) 情報処理システム、参照サーバ装置、情報処理方法、及びプログラム
CA2733222C (en) Management of communications from stolen devices
CN109144952A (zh) 信审规则文件发布方法、装置及存储介质
JP6151164B2 (ja) 電力管理システム、電力管理装置、電力管理方法、および電力管理プログラム
JP5644937B2 (ja) 電子機器およびプログラム
US7778660B2 (en) Mobile communications terminal, information transmitting system and information receiving method
US20190303956A1 (en) Information processing system, apparatus, and method
CN104822075A (zh) 一种推送信息的方法及装置
CN103888347A (zh) 一种基于微信平台的自动提醒方法及装置
JP6548990B2 (ja) 通信装置、通信システム、および通信装置の制御方法

Legal Events

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

Ref document number: 12757406

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013504534

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12757406

Country of ref document: EP

Kind code of ref document: A1