WO2013108745A1 - ストレージ装置、その制御方法、及びプログラム - Google Patents

ストレージ装置、その制御方法、及びプログラム Download PDF

Info

Publication number
WO2013108745A1
WO2013108745A1 PCT/JP2013/050548 JP2013050548W WO2013108745A1 WO 2013108745 A1 WO2013108745 A1 WO 2013108745A1 JP 2013050548 W JP2013050548 W JP 2013050548W WO 2013108745 A1 WO2013108745 A1 WO 2013108745A1
Authority
WO
WIPO (PCT)
Prior art keywords
search
data
storage
unit
random number
Prior art date
Application number
PCT/JP2013/050548
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 日本電気株式会社
Publication of WO2013108745A1 publication Critical patent/WO2013108745A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments

Definitions

  • the present invention is based on the priority claim of Japanese Patent Application No. 2012-006566 (filed on Jan. 16, 2012), the entire contents of which are incorporated herein by reference. Shall.
  • the present invention relates to a storage apparatus, a control method thereof, and a program.
  • the present invention relates to a search system that uses a plurality of file paths similar to search target file data as search results, a control method thereof, and a program.
  • Such a deduplication storage apparatus is being used in many systems as a technique for reducing data storage costs.
  • Japanese Patent Application Laid-Open No. 2004-228620 discloses a technique that can write data at high speed by concentrating deduplication processing on a storage device.
  • a storage apparatus having a deduplication function can reduce physical storage capacity. Therefore, the storage apparatus can store a large amount of data by providing the deduplication function. However, the more data stored in the storage device, the more difficult it is for the user to search for the desired data.
  • Patent Document 1 discloses a deduplication technique for a storage device. However, Patent Document 1 does not disclose a technique for extracting desired data from data stored in a storage device.
  • creating an index word for search in advance is a useful method for extracting data similar to the search condition.
  • prior information about file data to be searched is required when creating an index word for search.
  • There are various methods for extracting prior information about file data For example, for document data, there is a method of extracting words from document data in order to create a search index.
  • For image data there is a method of extracting colors and shapes from image data in order to create a search index.
  • a deduplication control unit that eliminates storage of duplicate file data, an index word storage unit that stores pseudo random numbers based on the storage target file data as index terms, and search target file data
  • the search interface unit for acquiring the search target file data, the search chunk data generation unit for generating the search chunk data sequence by dividing the search target file data, and the pseudo random numbers are calculated based on the respective chunk data in the search chunk data sequence
  • a storage device includes a search pseudorandom number section and a similar search section that extracts all index words that satisfy the similarity criterion using the pseudorandom number as a search word.
  • a storage apparatus control method comprising: a deduplication control unit that eliminates storage of duplicate file data; and a search interface unit that acquires file data.
  • a chunk data generation step of generating a chunk data sequence, a pseudo random number generation step of calculating a pseudo random number based on each chunk data in the chunk data sequence, and the pseudo random number as a search term A storage device control method including a similar search step for extracting all index terms satisfying a criterion is provided. Note that this method can be implemented using hardware called a computer that constitutes the storage apparatus described above.
  • a program that is executed by a computer controlled by a storage apparatus that includes a deduplication control unit that eliminates storage of duplicate file data and a search interface unit that acquires file data.
  • the chunk data generation process for dividing the file data to generate a chunk data string, the pseudo random number calculation process for calculating a pseudo random number based on each chunk data in the chunk data string, and the pseudo random number
  • a program that executes a similar search process for extracting all index terms that satisfy the similarity criterion as a search term is provided.
  • This program can be recorded on a computer-readable storage medium.
  • the storage medium may be non-transient such as a semiconductor memory, hard disk, magnetic recording medium, optical recording medium, or the like.
  • the present invention can also be embodied as a computer program product.
  • a storage device a control method thereof, and a program that can be a similar search target even for unknown binary data.
  • FIG. 2 is a diagram illustrating an example of an internal configuration of a storage apparatus 1.
  • FIG. 2 is a diagram illustrating an example of an internal configuration of a deduplication control unit 20.
  • FIG. 3 is a diagram illustrating an example of an internal configuration of a similar search control unit 10.
  • FIG. 4 is a diagram illustrating an example of an index word 250.
  • FIG. 3 is a flowchart of data storage processing in the storage apparatus 1. It is a flowchart of the creation process of the index word 250. It is a figure which shows an example of the creation process of the index word. It is a flowchart of a similar search process.
  • the search function of the storage device limits the types of file data that can be used as search conditions. Therefore, a storage device, a control method thereof, and a program that can be a similar search target even for unknown binary data is desired.
  • the storage apparatus 1 shown in FIG. 1 acquires a deduplication control unit that eliminates the storage of duplicate file data, an index word storage unit that stores pseudo random numbers based on the storage target file data as index terms, and search target file data A search interface part, a search chunk data generation part that divides search target file data to generate a search chunk data string, and a search pseudorandom number that calculates a pseudorandom number based on each chunk data in the search chunk data string And a similarity search unit that extracts all index words satisfying the similarity criterion using pseudo-random numbers as search words.
  • the storage apparatus 1 includes a deduplication control unit 20.
  • the deduplication control unit 20 has two functions. The first function is to perform processing for eliminating storage of duplicate file data. The second function is to perform processing for generating an index word for search processing.
  • the storage apparatus 1 includes a search interface unit 11.
  • the search interface unit 11 acquires search target file data.
  • the search target file data is file data designated as a search condition from the outside.
  • the storage device 1 includes a search chunk data generation unit 12.
  • the search chunk data generation unit 12 divides the file data into a plurality of block data (hereinafter referred to as chunk data). Chunk data is a chunk of data after division. Therefore, the search chunk data generation unit 12 can generate a chunk data string of file data.
  • the storage device 1 includes a search pseudorandom number unit 13.
  • the search pseudorandom number unit 13 calculates pseudorandom numbers of chunk data of file data by a pseudorandom number generation method.
  • ⁇ ⁇ Pseudorandom numbers are numbers that look like random numbers, but are actually determined by deterministic calculations.
  • a true random number is a sequence of numbers that is neither regular nor reproducible.
  • the pseudo-random number is a reproducible number sequence created by calculation.
  • the pseudo random number generation method means an algorithm for generating pseudo random numbers.
  • the storage apparatus 1 uses the same pseudo-random number generation method for all file data.
  • pseudo-random number generation methods such as SHA1 (Secure Hash Algorithm 1) and MD5 (Message Digest 5), but the method is not limited. However, it is preferable to select an algorithm that is less likely to cause pseudorandom collisions.
  • the storage device 1 includes a similarity search unit 14.
  • the similarity search unit 14 uses a pseudo-random number generated by the search pseudo-random number unit 13 as a search term. This pseudo random number does not depend on prior information regarding file data.
  • the storage apparatus 1 includes an index word storage unit 30.
  • the index word storage unit 30 stores index words.
  • the index word includes a pseudo-random number based on the storage target file data.
  • the deduplication control unit 20 registers a pseudo random number based on the file data as an index word.
  • the deduplication control unit 20 generates chunk data of storage target file data by the same method as the search chunk data generation unit 12.
  • the deduplication control unit 20 calculates a pseudo random number by the same pseudo random number generation method as the search pseudo random number unit 13. Note that the pseudo-random numbers generated by the deduplication control unit 20 also do not depend on prior information regarding file data.
  • the similarity search unit 14 collates the pseudo random number included in the search word with the pseudo random number included in the index word, and extracts all index words that satisfy the similarity criterion.
  • the storage apparatus 1 can acquire the characteristic amount specific to the data by using a pseudo random number. In addition, the storage apparatus 1 can determine whether or not a part of the data matches by comparing the pseudo random numbers of the chunk data.
  • FIG. 2 shows an example of a system configuration in which the storage apparatus 1 according to this embodiment is introduced.
  • the system in which the storage device 1 is introduced is composed of the storage device 1, the data storage client 2, and the search client 3.
  • the storage device 1, the data storage client 2, and the search client 3 are connected via a network.
  • the network is realized by using industry standard protocols such as NFS (Network File System) and CIFS (Common Internet File System).
  • NFS Network File System
  • CIFS Common Internet File System
  • the protocol method is not limited.
  • the data storage client 2 issues a data read / write request to the storage apparatus 1.
  • the data storage client 2 issues an access request for data stored in the storage device 1.
  • the search client 3 issues a file search request to the storage device 1. Then, the search client 3 transfers file data to the storage device 1 as a search condition. Thereafter, the storage device 1 executes a search and returns the search result to the search client 3.
  • the search result is a list of file paths similar to the search condition file data.
  • the data storage client 2 and the search client 3 may each be composed of a plurality of machines. However, in the following description, for the sake of simplicity, the data storage client 2 and the search client 3 will be described as being configured from a single machine.
  • FIG. 3 is a diagram showing an example of the internal configuration of the storage apparatus 1.
  • the storage device 1 includes a similar search control unit 10, a search interface unit 11, a deduplication control unit 20, an index word storage unit 30, a data storage interface unit 40, a file system 50, and a data storage unit 60.
  • FIG. 3 shows only modules related to the storage apparatus 1 according to this embodiment for the sake of simplicity.
  • the data storage interface unit 40 interacts with the data storage client 2. That is, the data storage interface unit 40 exchanges requests issued by the data storage client 2 and transmits responses.
  • the data storage interface unit 40 transmits / receives a request to / from the data storage client 2 based on a remote file access protocol such as NFS or CIFS. As described above, the protocol method is not limited.
  • the file system 50 performs file management in the storage device 1.
  • the file system 50 controls file metadata.
  • the file metadata refers to additional data with a high level of abstraction for certain data.
  • the metadata includes data creation date and time, creator, data format, access information, and the like.
  • the metadata includes the address of the data storage destination in the data storage unit 60.
  • the file system 50 manages data storage in the data storage unit 60.
  • the data to be stored and managed is file data and its metadata.
  • the data storage unit 60 includes a storage medium.
  • the data storage unit 60 responds to a read / write request from the file system 50. Then, the data storage unit 60 stores the data requested from the file system 50 in the storage medium.
  • the data storage unit 60 and the index word storage unit 30 may share the same storage medium.
  • the search interface unit 11 performs a dialog with the search client 3. That is, the search interface unit 11 exchanges requests issued by the search client 3 and returns search results.
  • the search interface unit 11 transmits / receives a request to / from the search client 3 based on a remote file access protocol such as NFS or CIFS. As described above, the protocol method is not limited.
  • the index word storage unit 30 stores index words.
  • the index word storage unit 30 includes a storage medium.
  • the storage medium is preferably an HDD (Hard Disk Drive). Then, the index word storage unit 30 stores the index word generated by the deduplication control unit 20 and the data for duplication check in a storage medium.
  • FIG. 4 is a diagram illustrating an example of the internal configuration of the deduplication control unit 20.
  • the deduplication control unit 20 includes a storage processing control unit 21, a storage chunk data generation unit 22, and a storage pseudo random number unit 23.
  • the storage processing control unit 21 confirms whether there is duplication of storage target file data.
  • the storage target file data refers to file data for which a write request has been made to the file system 50.
  • the storage processing control unit 21 generates and updates the index word 250.
  • the storage chunk data generation unit 22 performs the same processing as the search chunk data generation unit 12. Therefore, the storage chunk data generation unit 22 can generate the chunk data string 210 of the storage target file data 200.
  • the stored pseudorandom number unit 23 performs the same processing as the search pseudorandom number unit 13. Therefore, the stored pseudorandom number unit 23 can generate the pseudorandom number 240 from the chunk data sequence 210.
  • FIG. 5 is a diagram illustrating an example of an internal configuration of the similarity search control unit 10.
  • the similar search control unit 10 includes a search chunk data generation unit 12, a search pseudorandom number unit 13, a similar search unit 14, and a search word control unit 15.
  • the search chunk data generation unit 12 and the search pseudorandom number unit 13 are as described above. Therefore, further explanation is omitted.
  • the similarity search unit 14 collates the pseudo random number included in the search word with the pseudo random number included in the index word. Then, all index terms 250 that satisfy the similarity criterion are extracted.
  • the similarity search unit 14 refers to the index word 250 from the index word storage unit 30. Then, the similarity search unit 14 acquires a list of file identifiers 203 associated with the index word 250. Next, the similarity search unit 14 acquires a list of file paths based on the list of file identifiers 203.
  • the file system 50 manages the file path. Therefore, the similarity search unit 14 acquires a list of file paths via the file system 50. Thereafter, the similarity search unit 14 returns the acquired file path list to the search client 3 via the search interface unit 11.
  • the search word control unit 15 has two functions.
  • the first function is a function for generating a search term based on the pseudorandom number 140 generated by the search pseudorandom number unit 13.
  • the second function is a function that mediates data transfer within the similar search control unit 10.
  • FIG. 6 is a diagram showing an example of the index word 250.
  • the index word 250 on the first line in FIG. 6 associates the pseudo random number 1 with two file identifiers. Also, the index word 250 in the second row in FIG. 6 associates the pseudo random number 2 with one file identifier. As described above, the index word 250 exists for all the file data stored in the storage device 1.
  • Each index word 250 has a structure that associates a pseudo-random number with a file identifier.
  • the data storage client 2 issues a file data write request 202 to the storage apparatus 1.
  • the write request 202 includes storage target file data 200 and a file identifier 203 indicating the storage destination.
  • the data storage interface unit 40 acquires the storage target file data 200 and the file identifier 203 (step S110).
  • the data storage interface unit 40 transfers the write request 202 to the storage processing control unit 21 via the file system 50. Then, the storage processing control unit 21 transfers the storage target file data 200 to the storage chunk data generation unit 22. Thereafter, the storage chunk data generation unit 22 divides the storage target file data 200 (step S120).
  • the data (chunk data) sequence divided in step S120 will be described as the chunk data sequence 210. After the process of step S120, a number corresponding to the rank is assigned to each chunk data 230.
  • the storage chunk data generation unit 22 adopts a plurality of file data division methods. For example, it is also preferable to analyze file data and select a data division method.
  • a method of dividing all file data with a fixed size will be described.
  • a configuration employing a plurality of division methods will be described as the storage apparatus 1 according to the second embodiment.
  • the storage chunk data generation unit 22 transfers the respective chunk data 230 to the storage pseudorandom number unit 23 via the storage processing control unit 21. Thereafter, the stored pseudorandom number unit 23 calculates a pseudorandom number 240 for each chunk data 230 (step S130).
  • the stored pseudorandom number unit 23 transfers the pseudorandom number 240 to the storage processing control unit 21. Thereafter, the storage processing control unit 21 checks whether or not file data that overlaps with the storage target file data 200 is stored in the storage device 1 (step S140). In this case, the storage processing control unit 21 confirms whether or not the index word 250 including the pseudo random number 240 calculated in step S ⁇ b> 130 exists in the index word storage unit 30.
  • step S140 will be described in detail using the flowchart of FIG.
  • the storage processing control unit 21 refers to the index words 250 stored in the index word storage unit 30 in order. Then, the storage processing control unit 21 determines whether or not the index word 250 including the pseudo random number that matches the pseudo random number 240 is stored in the index word storage unit 30 (step S210).
  • step S210 the storage processing control unit 21 acquires the storage destination address 201 associated with the index word 250 that matches the pseudorandom number.
  • the storage processing control unit 21 adds the file identifier 203 included in the write request 202 to the index word 250 matched with the pseudorandom number (step S220).
  • the storage processing control unit 21 transfers the chunk data 230 that is the calculation source of the pseudo random number 240 to the file system 50.
  • the storage processing control unit 21 transfers a number corresponding to the rank of the chunk data 230 to the file system 50.
  • the storage processing control unit 21 transfers the pseudo random number 240 to the file system 50.
  • the storage processing control unit 21 transfers the storage destination address 201 to the file system 50.
  • the storage processing control unit 21 notifies the file system 50 that the chunk data 230 from which the pseudo random number 240 is calculated is duplicated. Thereafter, the file system 50 updates the metadata managed by the file system 50 based on the notification from the storage processing control unit 21 (step S230).
  • step S240 the storage processing control unit 21 newly creates an index word 250 (step S240).
  • the storage processing control unit 21 associates the pseudo-random number 240 and the file identifier 203 included in the write request 202 with the index word 250 to be created.
  • the storage process control unit 21 stores the created index word 250 in the index word storage unit 30.
  • the storage processing control unit 21 transfers the chunk data 23 from which the pseudo random number 240 is calculated to the file system 50.
  • the storage processing control unit 21 transfers the number corresponding to the rank of the chunk data to the file system 50.
  • the storage processing control unit 21 transfers the pseudo random number 240 to the file system 50.
  • the storage processing control unit 21 transfers the file identifier 203 to the file system 50.
  • the storage processing unit 21 notifies the file system 50 that the chunk data 230 from which the pseudo random number 240 is calculated is not duplicated.
  • the file system 50 secures a storage area for the chunk data 230 in the data storage unit 60 based on the notification from the storage processing unit 21. Thereafter, the file system 50 stores the chunk data 230 in the data storage unit 60 (step S250). Then, the file system 50 updates the file metadata (step S260). Note that the metadata to be updated includes the storage destination address 201 of the chunk data 230.
  • the file system 50 transfers the pseudo random number 240 to the storage processing control unit 21.
  • the file system 50 transfers the storage destination address 201 of the chunk data 230 to the storage processing control unit 21.
  • the storage process control unit 21 adds the received storage destination address 201 to the index word 250 created in the process of step S230 (step S270).
  • the deduplication control unit 20 performs the above processing for all the write requests 202. Thereafter, the file system 50 notifies the data storage client 2 of the end of processing via the data storage interface unit 40.
  • FIG. 1 An example of index word creation processing is shown using FIG. 1
  • the storage device 1 acquires a write request 202 (step S110).
  • the write request 202 includes storage target file data 200 and a file identifier 203.
  • the file identifier 203 indicates file_id3.
  • the storage device 1 generates a chunk data string 210 (step S120).
  • the chunk data sequence 210 has two chunk data 230.
  • the storage apparatus 1 calculates a pseudo random number sequence 220 based on the chunk data sequence 210 (step S130).
  • the pseudo random number sequence 220 includes two pseudo random numbers D240p and D240r.
  • the index word storage unit 30 stores an index word 250p and an index word 250q.
  • the index word 250p includes a pseudo random number D240p. Furthermore, the index word 250p associates the file identifiers file_id1 and file_id2 with the pseudorandom number 240p. On the other hand, the index word 250q includes a pseudo random number D240q. Further, the index word 250q associates the file identifier file_id4 with the pseudorandom number D240q.
  • step S210 the storage apparatus 1 adds file_id3 to the index word 250p.
  • the storage apparatus 1 can eliminate the storage of duplicate data.
  • the storage apparatus 1 uses a part of the data managed by the storage apparatus 1 at the time of index word registration. Therefore, in the storage device 1 according to the present embodiment, it is possible to suppress consumption of storage resources for storing index words.
  • the search condition is file data.
  • the search result is a list of path names in which files similar to the search condition are stored.
  • the search client 3 transfers the search file data 150 to the storage device 1 as a search condition.
  • the storage apparatus 1 acquires the search file data 150 via the search interface unit 11 (step S310).
  • the search interface unit 11 transfers the search file data 150 to the similarity search unit 14.
  • the similarity search unit 14 transfers the search file data 150 to the search word control unit 15.
  • the search word control unit 15 transfers the search file data 150 to the search chunk data generation unit 12. Then, the search chunk data generation unit 12 performs the same process as the storage chunk data generation unit. Then, the search chunk data generation unit 12 generates a chunk data string 110 (step S320). However, the search chunk data generation unit 12 adopts the same chunk data generation method as the storage chunk data generation unit 22.
  • the search chunk data generation unit 12 transfers the chunk data sequence 110 to the search pseudorandom number unit 13 via the search word control unit 15. Thereafter, the search pseudorandom number unit 13 performs the same process as the index pseudorandom number unit 23. Then, the search pseudorandom number unit 13 calculates a pseudorandom number 140 for each chunk data 130 in the chunk data sequence 110 (step S330). However, the search pseudorandom number unit 13 adopts the same pseudorandom number generation method as the stored pseudorandom number unit 23.
  • the search pseudorandom number unit 13 transfers all the pseudorandom numbers 140 to the similarity search unit 14 via the search word control unit 14. Then, the similarity search unit 14 determines whether or not the index word 250 including the pseudo random number 140 exists in the index word storage unit 30 (step S340). When the condition of step S340 is satisfied, the similarity search unit 14 acquires a list of file identifiers 203 associated with the matched index word 250 (step S350). And the similarity search part 14 judges the conditions of step S340 about all the pseudorandom numbers 140.
  • the similarity search unit 14 determines the condition of step S340 for all the pseudorandom numbers 140.
  • the similarity search unit 14 acquires a file path from the file system 50 for each acquired file identifier.
  • the similarity search unit 14 transfers the acquired file path list to the search interface unit 11 as the similarity search result 160.
  • the search interface unit 11 returns the similar search result 160 to the search client 3 (step S360).
  • the first effect of the storage device 1 according to the present embodiment is that a similar search can be realized for stored file data without depending on the type of file data. Further, in the storage device 1 according to the present embodiment, prior information regarding file data is not required at the time of similarity search. Therefore, the storage apparatus 1 according to the present embodiment can provide a storage apparatus, a control method thereof, and a program that can be subjected to similarity search even for unknown binary data.
  • the second effect of the storage apparatus 1 according to the present embodiment is that consumption of storage resources for storing index words can be suppressed. This is because the storage apparatus 1 according to the present embodiment registers a part of the storage management data as an index word. Therefore, the storage apparatus having the first effect can be provided with a small amount of memory resources.
  • This embodiment is an embodiment that includes a plurality of chunk data generation methods and selects an appropriate chunk data generation method.
  • the description of the same parts as those in the first embodiment is omitted.
  • the same components as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted.
  • pseudo-random numbers based on file data are collated to realize a similarity search.
  • the same pseudo-random number may be calculated even for dissimilar file data. That is, pseudorandom numbers may collide.
  • This pseudo-random number collision occurs when the chunk data is similar. Therefore, in the storage apparatus 1 according to the present embodiment, the chunk data generation method is changed according to the file data. Thereby, the possibility that the same pseudorandom number is calculated can be reduced.
  • chunk data is generated based on the data format structure. For example, consider data written in a markup language using tags. In that case, chunk data can be generated based on each tag.
  • the first embodiment employs a fixed size division method.
  • a method for determining an appropriate division size (a division method with a variable length size) is also employed.
  • a variable length size dividing method there is a method of detecting a data break accompanying data insertion into file data.
  • the storage apparatus 1 uses only one of a fixed size division method and a variable length size division method.
  • the chunk data generation method is changed based on the analysis inside the file data. As a result, it is less likely that the same pseudorandom number is calculated for dissimilar file data. Therefore, the storage apparatus 1 according to the present embodiment improves the accuracy of the similarity search result compared to the storage apparatus 1 according to the first embodiment.
  • This embodiment is an embodiment that sorts and outputs similar search results based on the similarity.
  • the description of the same parts as those in the first embodiment is omitted.
  • the same components as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted.
  • the similarity search unit 14 determines whether or not the pseudo random number 140 matches the pseudo random number 240 stored in the index word storage unit 30 (step S340). For all the pseudo random numbers 140 in the pseudo random number sequence 120, the similarity search unit 14 determines the condition of step S340.
  • the more similar file data the more pseudo-random numbers of chunk data match. That is, the number that the pseudo random number 140 and the pseudo random number 240 match represents the similarity of the file data. Therefore, in order to present the similarity of file data to the user, it is preferable to sort the corresponding file identifiers based on the number of matching pseudo-random numbers 140 and pseudo-random numbers 240.
  • the storage apparatus 1 sorts and outputs the similarity search results based on the similarity. As a result, the user can grasp the similarity between the file data as the search condition and the file data of the search result. Therefore, the storage apparatus 1 according to the present embodiment can provide a storage apparatus that is more useful than the other embodiments.
  • Deduplication control part which excludes storage of the duplicate file data
  • Index word storage part which stores the pseudorandom number based on storage object file data as an index word
  • Search interface part which acquires search object file data
  • a search chunk data generation unit that divides the search target file data to generate a search chunk data sequence
  • a search pseudo random number unit that calculates a pseudo random number based on each chunk data in the search chunk data sequence
  • a storage device comprising: a similarity search unit that extracts all index terms that satisfy a similarity criterion using a pseudo-random number as a search term.
  • the said deduplication control part divides
  • a storage apparatus comprising: a storage pseudo-random number unit that calculates an index word; and a storage processing control unit that generates an index word based on the pseudo-random number calculated by the storage pseudo-random number unit.
  • the storage apparatus wherein the similarity criterion includes at least one or more pseudorandom numbers included in an index word in a pseudorandom number sequence based on the search chunk data sequence.
  • the said similar search part is a storage apparatus which sorts the index word which satisfy
  • the said similar search part is a storage apparatus which sorts an index word based on the number of the pseudorandom numbers which satisfy
  • a storage apparatus control method comprising a deduplication control unit for eliminating storage of duplicate file data and a search interface unit for acquiring file data, wherein the file data is divided and chunk data
  • a chunk data generation step for generating a sequence
  • a pseudo random number generation step for calculating a pseudo random number based on each chunk data in the chunk data sequence, and all index terms satisfying a similarity criterion using the pseudo random number as a search term
  • a similar search step for extracting the storage device.
  • a storage apparatus control method including a deduplication control unit that eliminates storage of duplicate file data and a search interface unit that acquires file data, and generates an index word based on a pseudo-random number
  • a storage apparatus control method comprising a deduplication control unit that eliminates storage of duplicate file data, and a search interface unit that acquires file data, the pseudo random number based on the search chunk data string Sorting index words satisfying the similarity criterion that at least one or more pseudo-random numbers included in the index word are included in the column.
  • a storage apparatus control method comprising a deduplication control unit that eliminates storage of duplicate file data and a search interface unit that acquires file data, the step of dividing file data by a fixed size,
  • a storage apparatus control method including:
  • a storage apparatus control method comprising a deduplication control unit that eliminates storage of duplicate file data and a search interface unit that acquires file data, wherein one data from two or more data division methods
  • a method for controlling a storage apparatus comprising: selecting a division method.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 ストレージ装置内に格納されるデータが増えるほど、ユーザが所望するデータを検索することが困難となる。従って、未知のバイナリデータであっても、類似検索対象とすることができるストレージ装置が、望まれる。重複するファイルデータの格納を排除する重複排除制御部と、格納対象ファイルデータに基づく擬似乱数を索引語として格納する索引語格納部と、検索対象ファイルデータを取得する検索インターフェース部と、検索対象ファイルデータを分割して、検索チャンクデータ列を生成する検索チャンクデータ生成部と、検索チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する検索擬似乱数部と、擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索部と、を備えることを特徴とするストレージ装置が、提供される。

Description

ストレージ装置、その制御方法、及びプログラム
 [関連出願についての記載]
 本発明は、日本国特許出願:特願2012-006566号(2012年1月16日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、ストレージ装置、その制御方法、及びプログラムに関する。特に検索対象ファイルデータに類似する複数のファイルのパスを検索結果とする検索システム、その制御方法、及びプログラムに関する。
 ストレージ装置にデータを格納する際に、既に格納されているデータとの重複確認をすることは有用である。このような重複排除型ストレージ装置は、データの保存コストを低減する技術として、多数のシステムにおいて、活用が進んでいる。
ここで、特許文献1において、ストレージ装置に重複排除処理を集中させることにより、高速にデータの書き込みをできる技術が開示されている。
特開2011-203842号公報
 なお、上記先行技術文献の開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明の観点からなされたものである。
 上述のとおり、重複排除機能を備えるストレージ装置は、物理的な記憶容量を削減することができる。従って、ストレージ装置は、重複排除機能を備えることによって、膨大なデータを格納することができるようになる。しかし、ストレージ装置内に格納されるデータが増えるほど、ユーザが所望するデータを検索することが困難となる。
 特許文献1では、ストレージ装置の重複排除技術が開示されている。しかし、特許文献1では、ストレージ装置内に格納されたデータから、所望するデータを抽出する技術は開示されていない。
 ここで、検索用の索引語を予め作成することは、検索条件に類似するデータを抽出する上で有用な方法である。しかし、検索用の索引語作成にあたって、検索対象のファイルデータについての事前情報が必要となる。ファイルデータについての事前情報を抽出するには、様々な方法がある。例えば、文書データに対しては、検索用のインデックス作成のために、文書データから単語を抽出する方法がある。また、画像データに対しては、検索用のインデックス作成のために、画像データから色、形状を抽出する方法がある。
 しかし、ファイルデータのフォーマットが分からず、ファイルデータについての事前情報を抽出できない場合もある。そのため、ストレージ装置に格納されたデータを検索する際には、検索条件とするファイルデータの種類を限定する必要が生じている。
 従って、未知のバイナリデータであっても、類似検索対象とすることができるストレージ装置、その制御方法、及びプログラムが、提供される。
 本発明の第1の視点によれば、重複するファイルデータの格納を排除する重複排除制御部と、格納対象ファイルデータに基づく擬似乱数を索引語として格納する索引語格納部と、検索対象ファイルデータを取得する検索インターフェース部と、検索対象ファイルデータを分割して、検索チャンクデータ列を生成する検索チャンクデータ生成部と、前記検索チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する検索擬似乱数部と、前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索部と、を備えるストレージ装置が、提供される。
 本発明の第2の視点によれば、重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置の制御方法であって、前記ファイルデータを分割して、チャンクデータ列を生成するチャンクデータ生成工程と、前記チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する擬似乱数生成工程と、前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索工程と、を含むストレージ装置の制御方法が、提供される。
 なお、本方法は、上記したストレージ装置を構成するコンピュータというハードウェアを用いて、実施可能である。
 本発明の第3の視点によれば、重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置の制御するコンピュータに実行させるプログラムであって、前記ファイルデータを分割して、チャンクデータ列を生成するチャンクデータ生成処理と、前記チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する擬似乱数算出処理と、前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索処理と、を実行するプログラムが、提供される。
 なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
 本発明の各視点によれば、未知のバイナリデータであっても、類似検索対象とすることができるストレージ装置、その制御方法、及びプログラムが提供される。
本発明の一実施形態を説明するための図である。 本発明の第1の実施形態に係るストレージ装置1を導入したシステム構成の一例を示す図である。 ストレージ装置1の内部構成の一例を示す図である。 重複排除制御部20の内部構成の一例を示す図である。 類似検索制御部10の内部構成の一例を示す図である。 索引語250の一例を示す図である。 ストレージ装置1へのデータ格納処理のフローチャートである。 索引語250の作成処理のフローチャートである。 索引語250の作成処理の一例を示す図である。 類似検索処理のフローチャートである。
 初めに、図1を用いて一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図したものではない。
 上述のように、類似するファイルデータを検索するために、ファイルデータに関する事前情報が必要となる場合がある。しかし、フォーマットが分からず、ファイルデータに関する事前情報を抽出できない場合もある。そのため、ストレージ装置の検索機能は、検索条件とできるファイルデータの種類を限定している。従って、未知のバイナリデータであっても、類似検索対象とすることができるストレージ装置、その制御方法、及びプログラムが、望まれる。
 そこで、一例として図1に示すストレージ装置1を提供する。図1に示すストレージ装置1は、重複するファイルデータの格納を排除する重複排除制御部と、格納対象ファイルデータに基づく擬似乱数を索引語として格納する索引語格納部と、検索対象ファイルデータを取得する検索インターフェース部と、検索対象ファイルデータを分割して、検索チャンクデータ列を生成する検索チャンクデータ生成部と、検索チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する検索擬似乱数部と、擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索部と、を備える。
 まず、ストレージ装置1は、重複排除制御部20を備えている。重複排除制御部20は、2つの機能を有する。第1の機能は、重複するファイルデータの格納を排除する処理を行なうことである。第2の機能は、検索処理のための索引語を生成する処理を行なうことである。
 また、ストレージ装置1は、検索インターフェース部11を備えている。検索インターフェース部11は、検索対象ファイルデータを取得する。ここで、検索対象ファイルデータは、外部から検索条件として指定されるファイルデータである。
 さらに、ストレージ装置1は、検索チャンクデータ生成部12を備えている。検索チャンクデータ生成部12は、ファイルデータを複数のブロックデータ(以下、チャンクデータ)に分割する。チャンクデータとは、分割後のデータの塊のことである。従って、検索チャンクデータ生成部12は、ファイルデータのチャンクデータ列を生成することができる。
 そして、ストレージ装置1は、検索擬似乱数部13を備えている。検索擬似乱数部13は、擬似乱数生成法により、ファイルデータのチャンクデータの擬似乱数を算出する。
 擬似乱数とは、乱数のように見えるが、実際には、確定的な計算によって求めている数列をいう。真の乱数は、本来、規則性も再現性もない数列である。一方、擬似乱数は、計算によって作り、再現性のある数列である。また擬似乱数生成法とは、擬似乱数を生成するアルゴリズムを意味する。
 ここで、ストレージ装置1は、全てのファイルデータに対して、同一の擬似乱数生成法を用いる。なお、擬似乱数生成法は、SHA1(Secure Hash Algorithm 1)や、MD5(Message Digest 5)等、各種存在するがその方式は問わない。ただし、擬似乱数の衝突が発生しにくいアルゴリズムを選択することが好ましい。
 さらに、ストレージ装置1は、類似検索部14を備えている。類似検索部14は、検索語として、検索擬似乱数部13で生成される擬似乱数を用いる。この擬似乱数は、ファイルデータに関する事前情報に依存していない。
 次に、ストレージ装置1は、索引語格納部30を備えている。索引語格納部30は、索引語を格納する。ここで、索引語は、格納対象ファイルデータに基づく擬似乱数を含むものとする。
 ここで、重複排除制御部20は、ファイルデータに基づく擬似乱数を索引語として登録する。まず、重複排除制御部20は、検索チャンクデータ生成部12と同一の方法で、格納対象ファイルデータのチャンクデータを生成する。そして、重複排除制御部20は、検索擬似乱数部13と同一の擬似乱数生成法により、擬似乱数を算出する。なお、重複排除制御部20で生成される擬似乱数についても、ファイルデータに関する事前情報に依存していない。
 そして、類似検索部14は、検索語に含まれる擬似乱数と、索引語に含まれる擬似乱数を照合し、類似基準を満たす全ての索引語を抽出する。
 以上より、ストレージ装置1は、擬似乱数によって、データに固有の特徴量を取得することができる。かつ、チャンクデータの擬似乱数の比較によって、データの一部が合致するか否かを、ストレージ装置1は判断できる。
 従って、未知のバイナリデータであっても、類似検索対象とすることができるストレージ装置、その制御方法、及びプログラムを提供できる。
 以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。
[第1の実施形態]
 本発明の第1の実施形態について、図面を用いてより詳細に説明する。
 図2は、本実施形態に係るストレージ装置1を導入したシステム構成の一例である。
 ストレージ装置1を導入したシステムは、ストレージ装置1、データ格納クライアント2、検索クライアント3より構成される。そして、ストレージ装置1、及びデータ格納クライアント2、及び検索クライアント3はネットワークを介して接続されている。ネットワークは、NFS(Network File System)や、CIFS(Common Internet File System)等の業界標準のプロトコルを用いて実現する。また、プロトコルの方式は問わない。
 ここで、データ格納クライアント2は、ストレージ装置1へのデータの読み書きの要求を発行する。つまり、データ格納クライアント2は、ストレージ装置1に格納されているデータに対するアクセス要求を発行する。
 また、検索クライアント3は、ストレージ装置1へのファイル検索要求を発行する。そして、検索クライアント3は、検索条件として、ファイルデータをストレージ装置1へ転送する。その後、ストレージ装置1は、検索を実行し、検索結果を検索クライアント3へ返送する。ここで、検索結果は、検索条件のファイルデータに類似するファイルのパスのリストである。
 なお、データ格納クライアント2、及び検索クライアント3は、それぞれ複数のマシンから構成される形態でもよい。ただし、以下の説明では、簡単のため、データ格納クライアント2、及び検索クライアント3が、それぞれ一台のマシンから構成されるものとして説明する。
 次に、図3は、ストレージ装置1の内部構成の一例を示す図である。
 ストレージ装置1は、類似検索制御部10、検索インターフェース部11、重複排除制御部20、索引語格納部30、データ格納インターフェース部40、ファイルシステム50、データ格納部60を備える。図3には、簡単のため、本実施形態に係るストレージ装置1に関係するモジュールのみを記載する。
 まず、データ格納インターフェース部40は、データ格納クライアント2との対話を行なう。つまり、データ格納インターフェース部40は、データ格納クライアント2の発行した要求の授受、及び応答の送信を行なう。なお、データ格納インターフェース部40は、NFSやCIFS等のリモートファイルアクセスプロトコルに基づき、データ格納クライアント2との要求の送受信を行なう。上述のとおり、プロトコルの方式は問わない。
 次に、ファイルシステム50は、ストレージ装置1でのファイル管理を行なう。まず、ファイルシステム50は、ファイルのメタデータの制御を行なう。ここで、ファイルのメタデータとは、あるデータについての抽象度の高い付加的なデータを指す。例えば、メタデータは、データの作成日時や作成者、データ形式、アクセス情報等を含む。また、メタデータは、データ格納部60へのデータの格納先のアドレスを含む。かつ、ファイルシステム50は、データ格納部60へデータの保存管理を行なう。ここで、保存管理するデータは、ファイルデータ、及びそのメタデータである。
 また、データ格納部60は、記憶媒体を備える。ここで、データ格納部60は、ファイルシステム50からの読み書きの要求に応える。そして、データ格納部60は、ファイルシステム50から要求されたデータを記憶媒体に格納する。なお、データ格納部60、及び索引語格納部30が、同一の記憶媒体を共有する形態でもよい。
 また、検索インターフェース部11は、検索クライアント3との対話を行なう。つまり、検索インターフェース部11は、検索クライアント3の発行した要求の授受、及び検索結果の返送を行なう。なお、検索インターフェース部11は、NFSやCIFS等のリモートファイルアクセスプロトコルに基づき、検索クライアント3との要求の送受信を行なう。上述のとおり、プロトコルの方式は問わない。
 また、上述のとおり、索引語格納部30は、索引語を格納する。ここで、索引語格納部30は、記憶媒体を備える。例えば、記憶媒体には、HDD(Hard Disk Drive)が好ましい。そして、索引語格納部30は、重複排除制御部20で生成された索引語、及び重複検査用のデータを記憶媒体に格納する。
 次に、図4は、重複排除制御部20の内部構成の一例を示す図である。
 重複排除制御部20は、格納処理制御部21、格納チャンクデータ生成部22、格納擬似乱数部23を備える。
 まず、格納処理制御部21は、格納対象ファイルデータの重複の有無の確認を行なう。ここで、格納対象ファイルデータとは、ファイルシステム50に対して書き込み要求のあったファイルデータを指す。かつ、格納処理制御部21は、索引語250の生成、及び更新を行なう。
 次に、格納チャンクデータ生成部22は、検索チャンクデータ生成部12と同様の処理を行なう。従って、格納チャンクデータ生成部22は、格納対象ファイルデータ200のチャンクデータ列210を生成することができる。
 格納擬似乱数部23は、検索擬似乱数部13と同様の処理を行なう。従って、格納擬似乱数部23は、チャンクデータ列210から擬似乱数240を生成することができる。
 次に、図5は、類似検索制御部10の内部構成の一例を示す図である。
 類似検索制御部10は、検索チャンクデータ生成部12、検索擬似乱数部13、類似検索部14、検索語制御部15を備える。なお、検索チャンクデータ生成部12、検索擬似乱数部13は上述のとおりである。よって、さらなる説明を省略する。
 上述のとおり、類似検索部14は、検索語に含まれる擬似乱数と、索引語に含まれる擬似乱数を照合する。そして、類似基準を満たす全ての索引語250を抽出する。ここで、類似検索部14は、索引語格納部30から索引語250を参照する。そして、類似検索部14は、索引語250に対応付けられたファイル識別子203のリストを取得する。次に、類似検索部14は、ファイル識別子203のリストに基づき、ファイルパスのリストを取得する。ファイルパスは、ファイルシステム50が管理している。従って、類似検索部14は、ファイルシステム50を介して、ファイルパスのリストを取得する。その後、類似検索部14は、検索インターフェース部11を介して、取得したファイルパスのリストを検索クライアント3へ返送する。
 検索語制御部15は、2つの機能を有する。第1の機能は、検索擬似乱数部13で生成された擬似乱数140に基づき、検索語を生成する機能である。第2の機能は、類似検索制御部10内部で、データの転送を仲介する機能である。
 次に、ストレージ装置1の動作について説明する。
 まず、ストレージ装置1に格納される索引語250のデータ構造について、説明する。
 ここで、図6は、索引語250の一例を示す図である。図6の一行目の索引語250は、擬似乱数1と、2つのファイル識別子を対応付けている。また、図6の二行目の索引語250は、擬似乱数2と1つのファイル識別子を対応付けている。このように、ストレージ装置1に格納されている全てのファイルデータについて、索引語250が存在する。そして、それぞれの索引語250は、擬似乱数とファイル識別子を対応付ける構造となっている。
 次に、図7のフローチャートを用いて、ストレージ装置1へのファイルデータ格納処理、及び索引語生成処理について説明する。
 まず、データ格納クライアント2が、ストレージ装置1に対して、ファイルデータの書き込み要求202を発行する。ここで、書き込み要求202には、格納対象ファイルデータ200、及び格納先を示すファイルの識別子203を含む。そして、データ格納インターフェース部40は、格納対象ファイルデータ200、及びファイル識別子203を取得する(ステップS110)。
 次に、データ格納インターフェース部40は、ファイルシステム50を介して、書き込み要求202を格納処理制御部21に転送する。そして、格納処理制御部21は、格納対象ファイルデータ200を格納チャンクデータ生成部22へ転送する。その後、格納チャンクデータ生成部22は、格納対象ファイルデータ200を分割する(ステップS120)。なお、以下の説明では、ステップS120の処理で分割したデータ(チャンクデータ)列をチャンクデータ列210として説明する。ステップS120の処理の後、個々のチャンクデータ230に、序列に対応する番号を付与する。
 ここで、格納チャンクデータ生成部22は、ファイルデータの複数の分割方法を採用することも好ましい。例えば、ファイルデータを解析し、データの分割方法を選択することも好ましい。ただし、本実施形態に係るストレージ装置1では、全てのファイルデータを固定サイズで分割する方法について説明する。複数の分割方法を採用する形態については、実施形態2に係るストレージ装置1として、説明する。
 次に、格納チャンクデータ生成部22は、格納処理制御部21を介して、それぞれのチャンクデータ230を格納擬似乱数部23へ転送する。その後、格納擬似乱数部23は、それぞれのチャンクデータ230について、擬似乱数240を算出する(ステップS130)。
 そして、格納擬似乱数部23は、擬似乱数240を格納処理制御部21へ転送する。その後、格納対象ファイルデータ200と重複するファイルデータがストレージ装置1に格納されているか否かを、格納処理制御部21は確認する(ステップS140)。この場合に、格納処理制御部21は、ステップS130で算出した擬似乱数240を含む索引語250が、索引語格納部30に存在するかを確認する。
 さらに、図8のフローチャートを用いて、ステップS140の処理について、詳細に説明する。
 まず、格納処理制御部21は、索引語格納部30に格納されている索引語250を順に参照する。そして、擬似乱数240と合致する擬似乱数を含む索引語250が、索引語格納部30に格納されているか否かを、格納処理制御部21は判断する(ステップS210)。
 ステップS210の条件を満たす場合には、格納処理制御部21は、擬似乱数の合致した索引語250に対応付けられている格納先アドレス201を取得する。かつ、格納処理制御部21は、擬似乱数の合致した索引語250に、書き込み要求202に含まれるファイル識別子203を追加する(ステップS220)。さらに、格納処理制御部21は、擬似乱数240の算出元となったチャンクデータ230をファイルシステム50へ転送する。あわせて、格納処理制御部21は、チャンクデータ230の序列に対応する番号をファイルシステム50へ転送する。さらに、格納処理制御部21は、擬似乱数240をファイルシステム50へ転送する。あわせて、格納処理制御部21は、格納先アドレス201をファイルシステム50へ転送する。そして、格納処理制御部21は、擬似乱数240の算出元となったチャンクデータ230が重複している旨をファイルシステム50へ通知する。その後、ファイルシステム50は、格納処理制御部21からの通知に基づき、ファイルシステム50が管理しているメタデータを更新する(ステップS230)。
 一方、ステップS210の条件を満たさない場合には、格納処理制御部21は、索引語250を新規に作成する(ステップS240)。その場合に、格納処理制御部21は、作成する索引語250に、擬似乱数240、及び書き込み要求202に含まれるファイル識別子203を対応付ける。そして、格納処理制御部21は、作成した索引語250を索引語格納部30に格納する。その後、格納処理制御部21は、擬似乱数240の算出元となったチャンクデータ23をファイルシステム50へ転送する。あわせて、格納処理制御部21は、チャンクデータの序列に対応する番号をファイルシステム50へ転送する。さらに、格納処理制御部21は、擬似乱数240をファイルシステム50へ転送する。かつ、格納処理制御部21は、ファイル識別子203をファイルシステム50へ転送する。そして、格納処理部21は、擬似乱数240の算出元となったチャンクデータ230が重複していない旨をファイルシステム50へ通知する。
 次に、ファイルシステム50は、格納処理部21からの通知に基づき、チャンクデータ230の格納領域をデータ格納部60に確保する。その後、ファイルシステム50は、データ格納部60にチャンクデータ230を格納する(ステップS250)。そして、ファイルシステム50は、ファイルのメタデータを更新する(ステップS260)。なお、更新するメタデータには、チャンクデータ230の格納先アドレス201を含む。
 その後、ファイルシステム50は、擬似乱数240を格納処理制御部21に転送する。かつ、ファイルシステム50は、チャンクデータ230の格納先アドレス201を格納処理制御部21に転送する。そして、格納処理制御部21は、ステップS230の処理で作成した索引語250に、受け取った格納先アドレス201を追加する(ステップS270)。
 重複排除制御部20は、全ての書き込み要求202に対して、以上の処理を行なう。その後、ファイルシステム50は、データ格納インターフェース部40を介して、データ格納クライアント2へ処理終了を通知する。
 ここで、図9を用いて、索引語作成処理の一例を示す。
 まず、ストレージ装置1は、書き込み要求202を取得する(ステップS110)。ここで、書き込み要求202は、格納対象ファイルデータ200、及びファイル識別子203を含む。図9の場合、ファイル識別子203は、file_id3を示す。そして、ストレージ装置1はチャンクデータ列210を生成する(ステップS120)。図9の場合、チャンクデータ列210は、2つのチャンクデータ230を有する。ステップS120の処理の後、ストレージ装置1は、チャンクデータ列210に基づき、擬似乱数列220を算出する(ステップS130)。図9の場合、擬似乱数列220は、2つの擬似乱数D240pとD240rを有する。ここで、図9の場合、索引語格納部30は、索引語250pと索引語250qを格納している。また索引語250pは、擬似乱数D240pを含んでいる。さらに、索引語250pは、擬似乱数240pに、ファイル識別子file_id1、及びfile_id2を対応付けている。一方、索引語250qは、擬似乱数D240qを含んでいる。さらに、索引語250qは、擬似乱数D240qに、ファイル識別子file_id4を対応付けている。
 ここで、擬似乱数列220p内の擬似乱数D240pは、擬似乱数列250p内にも存在する。従って、ステップS210の条件を満たす。よって、ステップS220に遷移する。ステップS220の処理として、ストレージ装置1は、索引語250pにfile_id3を追加する。
 以上より、本実施形態に係るストレージ装置1は、重複データの格納を排除することができる。かつ、ストレージ装置1は、索引語の登録時に、ストレージ装置1で管理するデータの一部を利用している。従って、本実施形態に係るストレージ装置1では、索引語の格納のためのストレージリソースの消費を抑えることができる。
 次に、図10のフローチャートを用いて、類似検索処理について説明する。
 本実施形態に係るストレージ装置1では、検索条件は、ファイルデータである。また、検索結果は、検索条件と類似するファイルが格納されているパス名のリストである。
 まず、検索クライアント3は、検索条件として、検索ファイルデータ150をストレージ装置1へ転送する。その際に、ストレージ装置1は、検索インターフェース部11を介して、検索ファイルデータ150を取得する(ステップS310)。そして、検索インターフェース部11は、検索ファイルデータ150を類似検索部14へ転送する。その後、類似検索部14は、検索ファイルデータ150を検索語制御部15へ転送する。
 次に、検索語制御部15は、検索ファイルデータ150を検索チャンクデータ生成部12へ転送する。そして、検索チャンクデータ生成部12は、格納チャンクデータ生成部と同様の処理を行なう。そして、検索チャンクデータ生成部12はチャンクデータ列110を生成する(ステップS320)。ただし、検索チャンクデータ生成部12は、格納チャンクデータ生成部22と同一のチャンクデータ生成方法を採用するものとする。
 次に、検索チャンクデータ生成部12は、検索語制御部15を介して、チャンクデータ列110を検索擬似乱数部13へ転送する。その後、検索擬似乱数部13は、索引擬似乱数部23と同様の処理を行なう。そして、検索擬似乱数部13は、チャンクデータ列110内のそれぞれのチャンクデータ130について、擬似乱数140を算出する(ステップS330)。ただし、検索擬似乱数部13は、格納擬似乱数部23と同一の擬似乱数生成法を採用するものとする。
 次に、検索擬似乱数部13は、検索語制御部14を介して、全ての擬似乱数140を類似検索部14へ転送する。そして、擬似乱数140を含む索引語250が、索引語格納部30に存在するか否かを、類似検索部14は判断する(ステップS340)。ステップS340の条件を満たす場合には、類似検索部14は、合致した索引語250に対応付けられているファイル識別子203のリストを取得する(ステップS350)。そして、類似検索部14は、すべての擬似乱数140について、ステップS340の条件を判断する。
 その後、類似検索部14は、全ての擬似乱数140について、ステップS340の条件を判断したとする。その場合、類似検索部14は、取得したそれぞれのファイル識別子について、ファイルパスをファイルシステム50から取得する。そして、類似検索部14は、類似検索結果160として、取得したファイルパスのリストを検索インターフェース部11へ転送する。最後に、検索インターフェース部11は、類似検索結果160を検索クライアント3へ返送する(ステップS360)。
 以上より、本実施形態に係るストレージ装置1の第1の効果は、ファイルデータの種類に依存せず、格納されたファイルデータに対して、類似検索を実現できることである。また、本実施形態に係るストレージ装置1では、類似検索時に、ファイルデータに関する事前情報が不要である。従って、本実施形態に係るストレージ装置1は、未知のバイナリデータであっても、類似検索の対象とすることができるストレージ装置、その制御方法、及びプログラムを提供できる。
 本実施形態に係るストレージ装置1の第2の効果は、索引語の格納のためのストレージリソースの消費を抑えることができることである。なぜなら、本実施形態に係るストレージ装置1は、ストレージ管理データの一部を索引語として登録しているからである。従って、少ないメモリ資源で、上記第1の効果を有するストレージ装置を提供できる。
[第2の実施形態]
 続いて、第2の実施形態について、詳細に説明する。
 本実施形態は、複数のチャンクデータ生成方法を備え、適切なチャンクデータ生成方法を選択する実施形態である。なお、本実施形態における説明では、第1の実施形態と重複する部分の説明は省略する。さらに、本実施形態における説明では、第1の実施形態と同一の構成要素には、同一の符号を付し、その説明を省略する。
 上述のとおり、本願発明では、ファイルデータに基づく擬似乱数を照合し、類似検索を実現する。しかし、非類似のファイルデータであっても、同一の擬似乱数が算出される場合がある。つまり、擬似乱数が衝突する場合がある。この擬似乱数の衝突は、チャンクデータが類似した場合に発生する。そこで、本実施形態に係るストレージ装置1では、ファイルデータに応じて、チャンクデータ生成方法を変更する。これにより、同一の擬似乱数が算出される可能性を低くすることができる。
 まず、データフォーマットが既知の場合について説明する。データフォーマットが既知の場合には、データフォーマットの構造に基づき、チャンクデータを生成する。例えば、タグを利用したマークアップ言語で記述されたデータを考える。その場合には、それぞれのタグに基づき、チャンクデータを生成できる。
 次に、データフォーマットが未知の場合について、説明する。データフォーマットが未知の場合、第1の実施形態では、固定サイズでの分割方法を採用している。しかし、本実施形態では、固定サイズでの分割方法に加えて、適切な分割サイズを決定する方法(可変長サイズでの分割方法)も採用する。例えば、可変長サイズでの分割方法として、ファイルデータへのデータ挿入に伴うデータの切れ目を検出する方法がある。ただし、本実施形態に係るストレージ装置1は、固定サイズでの分割方法または可変長サイズでの分割方法のいずれか一方のみを用いるものとする。
 以上より、本実施形態に係るストレージ装置1では、ファイルデータ内部の解析に基づき、チャンクデータ生成方法を変更する。その結果、非類似のファイルデータに対して、同一の擬似乱数が算出される可能性が低くなる。従って、本実施形態に係るストレージ装置1は、実施形態1に係るストレージ装置1より、類似検索結果の精度が向上する。
[第3の実施形態]
 続いて、第3の実施形態について、詳細に説明する。
 本実施形態は、類似度に基づき、類似検索結果をソートして出力する実施形態である。なお、本実施形態における説明では、第1の実施形態と重複する部分の説明は省略する。さらに、本実施形態における説明では、第1の実施形態と同一の構成要素には、同一の符号を付し、その説明を省略する。
 上述のとおり、擬似乱数140が、索引語格納部30に格納されている擬似乱数240と合致するか否かを、類似検索部14は判断する(ステップS340)。擬似乱数列120内の全ての擬似乱数140について、類似検索部14はステップS340の条件を判断する。ここで、類似するファイルデータほど、多くのチャンクデータの擬似乱数が合致することとなる。つまり、擬似乱数140と擬似乱数240が合致する個数は、ファイルデータの類似度を表す。従って、ファイルデータの類似度をユーザに提示するには、擬似乱数140と擬似乱数240が合致する個数に基づき、対応するファイル識別子をソートすることが好ましい。
 以上より、本実施形態に係るストレージ装置1では、類似度に基づき、類似検索結果をソートして出力する。その結果、ユーザは、検索条件としたファイルデータと、検索結果のファイルデータの類似度を把握できる。従って、本実施形態に係るストレージ装置1は、他の実施形態以上に有益なストレージ装置を提供できる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
 (付記1)重複するファイルデータの格納を排除する重複排除制御部と、格納対象ファイルデータに基づく擬似乱数を索引語として格納する索引語格納部と、検索対象ファイルデータを取得する検索インターフェース部と、検索対象ファイルデータを分割して、検索チャンクデータ列を生成する検索チャンクデータ生成部と、前記検索チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する検索擬似乱数部と、前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索部と、を備えるストレージ装置。
 (付記2)前記重複排除制御部は、格納対象ファイルデータを分割して、格納チャンクデータ列を生成する格納チャンクデータ生成部と、前記格納チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する格納擬似乱数部と、格納擬似乱数部で算出した擬似乱数に基づき、索引語を生成する格納処理制御部と、を備えるストレージ装置。
 (付記3)前記類似基準は、前記検索チャンクデータ列に基づく擬似乱数の列内に、索引語に含まれる擬似乱数を少なくとも1以上含むストレージ装置。
 (付記4)前記類似検索部は、前記類似基準を満たした索引語をソートするストレージ装置。
 (付記5)前記類似検索部は、前記類似基準を満たした擬似乱数の個数に基づき、索引語をソートするストレージ装置。
 (付記6)擬似乱数としてハッシュ値を算出するストレージ装置。
 (付記7)固定サイズでファイルデータを分割するストレージ装置。
 (付記8)二以上のデータ分割方法から一のデータ分割方法を選択するストレージ装置。
 (付記9)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置の制御方法であって、前記ファイルデータを分割して、チャンクデータ列を生成するチャンクデータ生成工程と、前記チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する擬似乱数生成工程と、前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索工程と、を含むストレージ装置の制御方法。
 (付記10)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置の制御方法であって、擬似乱数に基づき、索引語を生成する索引語生成工程、を含むストレージ装置の制御方法。
 (付記11)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置の制御方法であって、前記検索チャンクデータ列に基づく擬似乱数の列内に、索引語に含まれる擬似乱数を少なくとも1以上含む、とする類似基準を満たした索引語をソートする工程、を含むストレージ装置の制御方法。
 (付記12)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置の制御方法であって、固定サイズでファイルデータを分割する工程、を含むストレージ装置の制御方法。
 (付記13)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置の制御方法であって、二以上のデータ分割方法から一のデータ分割方法を選択する工程、を含むストレージ装置の制御方法。
 (付記14)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置を制御するコンピュータに実行させるプログラムであって、前記ファイルデータを分割して、チャンクデータ列を生成するチャンクデータ生成処理と、前記チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する擬似乱数算出処理と、前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索処理と、を実行するプログラム。
 (付記15)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置を制御するコンピュータに実行させるプログラムであって、擬似乱数に基づき、索引語を生成する索引語生成処理、を実行するプログラム。
 (付記16)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置を制御するコンピュータに実行させるプログラムであって、前記検索チャンクデータ列に基づく擬似乱数の列内に、索引語に含まれる擬似乱数を少なくとも1以上含む、とする類似基準を満たした索引語をソートする処理、を実行するプログラム。
 (付記17)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置を制御するコンピュータに実行させるプログラムであって、固定サイズでファイルデータを分割する処理、を実行するプログラム。
 (付記18)重複するファイルデータの格納を排除する重複排除制御部と、ファイルデータを取得する検索インターフェース部と、を備えるストレージ装置を制御するコンピュータに実行させるプログラムであって、二以上のデータ分割方法から一のデータ分割方法を選択する処理、を実行するプログラム。
 なお、引用した上記の特許文献の開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
1 ストレージ装置
2 データ格納クライアント
3 検索クライアント
10 類似検索制御部
11 検索インターフェース部
12 検索チャンクデータ生成部
13 検索擬似乱数部
14 類似検索部
15 検索語制御部
20 重複排除制御部
21 格納処理制御部
22 格納チャンクデータ生成部
23 格納擬似乱数部
30 索引語格納部
40 データ格納インターフェース部
50 ファイルシステム
60 データ格納部
110、210 チャンクデータ列
120、220 擬似乱数列
130、230 チャンクデータ
140、240 擬似乱数
150 検索ファイルデータ
160 類似検索結果
200 格納対象ファイルデータ
201 格納先アドレス
202 書き込み要求
203 ファイル識別子
250 索引語

Claims (10)

  1.  重複するファイルデータの格納を排除する重複排除制御部と、
     格納対象ファイルデータに基づく擬似乱数を索引語として格納する索引語格納部と、
     検索対象ファイルデータを取得する検索インターフェース部と、
     検索対象ファイルデータを分割して、検索チャンクデータ列を生成する検索チャンクデータ生成部と、
     前記検索チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する検索擬似乱数部と、
     前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索部と、
     を備えることを特徴とするストレージ装置。
  2.  前記重複排除制御部は、
     格納対象ファイルデータを分割して、格納チャンクデータ列を生成する格納チャンクデータ生成部と、
     前記格納チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する格納擬似乱数部と、
     格納擬似乱数部で算出した擬似乱数に基づき、索引語を生成する格納処理制御部と、
     を備える請求項1に記載のストレージ装置。
  3.  前記類似基準は、
     前記検索チャンクデータ列に基づく擬似乱数の列内に、索引語に含まれる擬似乱数を少なくとも1以上含むこと、
     とする請求項1又は2に記載のストレージ装置。
  4.  前記類似検索部は、
     前記類似基準を満たした索引語をソートする、
     請求項1乃至3のいずれか一に記載のストレージ装置。
  5.  前記類似検索部は、
     前記類似基準を満たした擬似乱数の個数に基づき、索引語をソートする、
     請求項1乃至4のいずれか一に記載のストレージ装置。
  6.  擬似乱数としてハッシュ値を算出する、
     請求項1乃至5のいずれか一に記載のストレージ装置。
  7.  固定サイズでファイルデータを分割する、
     請求項1乃至6のいずれか一に記載のストレージ装置。
  8.  二以上のデータ分割方法から一のデータ分割方法を選択する、
     請求項1乃至7のいずれか一に記載のストレージ装置。
  9.  重複するファイルデータの格納を排除する重複排除制御部と、
     ファイルデータを取得する検索インターフェース部と、
     を備えるストレージ装置の制御方法であって、
     前記ファイルデータを分割して、チャンクデータ列を生成するチャンクデータ生成工程と、
     前記チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する擬似乱数生成工程と、
     前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索工程と、
     を含むことを特徴とするストレージ装置の制御方法。
  10.  重複するファイルデータの格納を排除する重複排除制御部と、
     ファイルデータを取得する検索インターフェース部と、
     を備えるストレージ装置の制御するコンピュータに実行させるプログラムであって、
     前記ファイルデータを分割して、チャンクデータ列を生成するチャンクデータ生成処理と、
     前記チャンクデータ列内のそれぞれのチャンクデータに基づき、擬似乱数を算出する擬似乱数算出処理と、
     前記擬似乱数を検索語として、類似基準を満たす全ての索引語を抽出する類似検索処理と、
     を実行するプログラム。
PCT/JP2013/050548 2012-01-16 2013-01-15 ストレージ装置、その制御方法、及びプログラム WO2013108745A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-006566 2012-01-16
JP2012006566 2012-01-16

Publications (1)

Publication Number Publication Date
WO2013108745A1 true WO2013108745A1 (ja) 2013-07-25

Family

ID=48799170

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/050548 WO2013108745A1 (ja) 2012-01-16 2013-01-15 ストレージ装置、その制御方法、及びプログラム

Country Status (2)

Country Link
JP (1) JPWO2013108745A1 (ja)
WO (1) WO2013108745A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015141446A (ja) * 2014-01-27 2015-08-03 富士通株式会社 情報処理装置、インデックス作成制御方法及びインデックス作成制御プログラム
CN107025218A (zh) * 2017-04-07 2017-08-08 腾讯科技(深圳)有限公司 一种文本去重方法和装置
CN108399266A (zh) * 2018-03-23 2018-08-14 广州爱九游信息技术有限公司 数据抽取方法、装置、电子设备及计算机可读存储介质
JP2019160245A (ja) * 2018-03-16 2019-09-19 Necソリューションイノベータ株式会社 ストレージシステム、ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008513891A (ja) * 2004-09-15 2008-05-01 ディリジェント テクノロジーズ コーポレイション データを検索し記憶するシステム及び方法
JP2008521074A (ja) * 2004-11-05 2008-06-19 データ ロボティクス インコーポレイテッド 種々のサイズの格納デバイスを許容する動的にアップグレード可能な故障許容格納システムおよび方法
JP2008257444A (ja) * 2007-04-04 2008-10-23 Nec Corp 類似ファイル管理装置、その方法及びそのプログラム
JP2010256951A (ja) * 2009-04-21 2010-11-11 Data Henkan Kenkyusho:Kk 類似データ検索装置及びそのプログラム
JP2011527801A (ja) * 2008-07-10 2011-11-04 グーグル インコーポレイテッド ユーザ部分入力のための辞書候補

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008513891A (ja) * 2004-09-15 2008-05-01 ディリジェント テクノロジーズ コーポレイション データを検索し記憶するシステム及び方法
JP2008521074A (ja) * 2004-11-05 2008-06-19 データ ロボティクス インコーポレイテッド 種々のサイズの格納デバイスを許容する動的にアップグレード可能な故障許容格納システムおよび方法
JP2008257444A (ja) * 2007-04-04 2008-10-23 Nec Corp 類似ファイル管理装置、その方法及びそのプログラム
JP2011527801A (ja) * 2008-07-10 2011-11-04 グーグル インコーポレイテッド ユーザ部分入力のための辞書候補
JP2010256951A (ja) * 2009-04-21 2010-11-11 Data Henkan Kenkyusho:Kk 類似データ検索装置及びそのプログラム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015141446A (ja) * 2014-01-27 2015-08-03 富士通株式会社 情報処理装置、インデックス作成制御方法及びインデックス作成制御プログラム
US10671579B2 (en) 2014-01-27 2020-06-02 Fujitsu Limited Information processing apparatus and storage system
CN107025218A (zh) * 2017-04-07 2017-08-08 腾讯科技(深圳)有限公司 一种文本去重方法和装置
CN107025218B (zh) * 2017-04-07 2021-03-02 腾讯科技(深圳)有限公司 一种文本去重方法和装置
US11379422B2 (en) 2017-04-07 2022-07-05 Tencent Technology (Shenzhen) Company Limited Text deduplication method and apparatus, and storage medium
JP2019160245A (ja) * 2018-03-16 2019-09-19 Necソリューションイノベータ株式会社 ストレージシステム、ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラム
JP7099690B2 (ja) 2018-03-16 2022-07-12 Necソリューションイノベータ株式会社 ストレージシステム、ストレージ制御装置、ストレージ制御方法、及びストレージ制御プログラム
CN108399266A (zh) * 2018-03-23 2018-08-14 广州爱九游信息技术有限公司 数据抽取方法、装置、电子设备及计算机可读存储介质
CN108399266B (zh) * 2018-03-23 2022-01-07 阿里巴巴(中国)有限公司 数据抽取方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
JPWO2013108745A1 (ja) 2015-05-11

Similar Documents

Publication Publication Date Title
US11409703B2 (en) File versions within content addressable storage
US20230359381A1 (en) Deduplication decision based on metrics
EP3959643B1 (en) Property grouping for change detection in distributed storage systems
US9483481B2 (en) Files having unallocated portions within content addressable storage
CN107193503B (zh) 一种数据重删方法及存储设备
EP3959621A1 (en) Dynamic hash function composition for change detection in distributed storage systems
US20140244794A1 (en) Information System, Method and Program for Managing the Same, Method and Program for Processing Data, and Data Structure
WO2013108745A1 (ja) ストレージ装置、その制御方法、及びプログラム
US10515055B2 (en) Mapping logical identifiers using multiple identifier spaces
US9262219B2 (en) Distributed processing system, distributed processing method, and distributed processing program
US10048991B2 (en) System and method for parallel processing data blocks containing sequential label ranges of series data
EP3107010B1 (en) Data integration pipeline
CN107493309A (zh) 一种分布式系统中的文件写入方法及装置
US11321354B2 (en) System, computing node and method for processing write requests
TWI420333B (zh) 分散式的重複數據刪除系統及其處理方法
US11055274B2 (en) Granular change detection in distributed storage systems
CN111221814B (zh) 二级索引的构建方法、装置及设备
Nguyen-Van et al. Minimizing data transfers for regular reachability queries on distributed graphs
WO2019072088A1 (zh) 一种文件管理方法、文件管理装置、电子设备及存储介质
CN104822076A (zh) 一种数据的分发方法及装置
JP6139399B2 (ja) 分散クエリ処理装置、クエリ処理方法及びクエリ処理プログラム
WO2019126154A1 (en) System and method for data storage management
KR101341995B1 (ko) 공유 데이터 저장소 관리 장치 및 방법
KR101318420B1 (ko) 메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체
WO2013108746A1 (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: 13738658

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013554289

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 13738658

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE