WO2012032921A1 - Data cache device, data cache method and program - Google Patents
Data cache device, data cache method and program Download PDFInfo
- Publication number
- WO2012032921A1 WO2012032921A1 PCT/JP2011/068819 JP2011068819W WO2012032921A1 WO 2012032921 A1 WO2012032921 A1 WO 2012032921A1 JP 2011068819 W JP2011068819 W JP 2011068819W WO 2012032921 A1 WO2012032921 A1 WO 2012032921A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- priority
- data items
- data item
- cache device
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
Definitions
- the present invention relates to a data cache device, a data cache method, and a program, and more particularly to selection of a data item to be rejected due to addition of a new data item.
- a data cache that holds data objects acquired from a remote server system or the like via a network for later use. For example, most WEB browsers improve the responsiveness of the browser by holding the acquired data object as a local file for a certain period and reusing the same data object from the cache when requested.
- Another example is a car navigation system that does not store map data in the device in recent years, and obtains only necessary map data via a network from a service such as Google (registered trademark) map, in order to be realized at low cost. The device appears. In this case as well, map data is generally held in a cache in order to improve display responsiveness.
- the device since the device has only a finite area (memory, disk, etc.) to hold the data cache, it can reject data objects that are not expected to be used in the future and use them as a new cache. Reserve space. In rejecting, it is first necessary to positively leave data objects that are predicted to be accessed in the future in the cache (improvement in hit rate). Furthermore, it is necessary to avoid a situation where a large area of the cache is consumed only by a specific data object and other data caches cannot be accommodated in the cache (realization of fairness). As a method for improving the hit rate, there is a method in which the access frequency is the lowest and the access time is the oldest (LRU: Last Recently Used) as a rejection candidate (Patent Document 1).
- Patent Document 2 applies different discard strategies by classifying data objects acquired and cached via a network according to size.
- This technology uses a method for limiting the proportion of a cache that a single data object can occupy when other data objects exist in the cache based on LRU for small to medium files.
- the technique uses a method of setting a dedicated area that is small but not subject to LRU evaluation.
- Patent Document 3 discloses an apparatus that determines a WEB page on which information is to be collected based on the degree of association between the contents of the WEB page and the collection target.
- Patent Document 4 discloses a map display method that summarizes and displays a narrow area when the position of an automobile approaches a destination.
- Patent Documents 1 and 2 determine the rejection from the cache only based on the past external state (access frequency, access time, etc.) of the data object. For this reason, this technique cannot reflect the access behavior based on the contents of the data object, and cannot achieve a sufficient hit rate and fairness.
- the technologies disclosed in Patent Documents 3 and 4 are technologies that are not related to the cache and do not solve this problem.
- An object of the present invention is to provide a data cache device, a data cache method, and a program that solve the above-described problems.
- a data cache device includes storage means for storing a plurality of first data items; Based on the contents of each of the plurality of first data items, there is provided priority determining means for determining a priority for rejecting the first data item from the storage means for each first data item.
- a data cache method stores a plurality of first data items in an accumulation unit, Based on the contents of each of the plurality of first data items, a priority for rejecting the first data item from the storage means is determined corresponding to each first data item.
- a program includes a storage process in which a plurality of first data items are stored in a storage unit included in the computer. Based on the contents of each of the plurality of first data items, a priority determination process is executed for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item.
- the present invention can improve the hit rate and fairness of cached data in a data cache device or the like.
- the structure of the data cache apparatus 20 of 1st Embodiment is shown.
- stores is shown.
- 4 is an operation flowchart of data access of the data cache device 20.
- 4 is an operation flowchart of the priority calculation unit 16.
- the structure of the data cache apparatus 20 of 2nd Embodiment is shown.
- stores is shown.
- the structure of the data cache apparatus 20 of 3rd Embodiment is shown.
- FIG. 1 shows the configuration of the data cache device 20 of this embodiment.
- the data cache device 20 of the present embodiment is, for example, an in-vehicle map display device such as a car navigation device that is loaded on an automobile or the like and displays a map.
- the data cache device 20 includes a storage unit 14 that temporarily stores data items 40 and a priority calculation unit 16 that determines the priority 43 of rejection (deletion) of the data items 40 stored in the storage unit 14. .
- the priority 43 is determined based on at least one of the distance N, the summarization degree M, and the consumption speed V of the data item 40 acquired based on the content of the data item 40 (data content 41).
- the priority calculation unit 16 includes at least one of the distance income unit 17, the summary level acquisition unit 18, and the consumption speed acquisition unit 19.
- Each of the distance income unit 17, the summary level acquisition unit 18, and the consumption rate acquisition unit 19 acquires the distance N, the summary level M, and the consumption rate V of the data item 40 stored in the storage unit 14.
- the distance N is the number of data items 40 between the data item 40 that is the starting point (for example, the data item 40 currently in use) and the data item 40 when the data content 41 of the data item 40 is provided to the user. Represents whether to provide the data content 41.
- the data cache device 20 makes it difficult for the data item 40 having a small distance N to be rejected from the storage unit 14 because it is likely to be necessary in the near future.
- the summarization degree M represents the size of the number of information units (for example, the number of articles in a news page or the like, a product posted in a pamphlet) included in the data content 41 of the data item 40.
- the data cache device 20 makes it difficult for the data item 40 with a high summarization level M to be rejected from the storage unit 14 as an index, table of contents, portal use, etc. to a large amount of information is assumed.
- the consumption speed V represents the speed at which the data content 41 held by the data item 40 is consumed by the user.
- the data cache device 20 makes it difficult for the data item 40 with a low consumption speed V to be rejected from the storage unit 14 because it is highly likely that the user will need it again.
- the data cache device 20 may include an input unit 10, an output unit 11, a control unit 12, an acquisition unit 13, and a rejection unit 15.
- the input unit 10 is a keypad for inputting an instruction from a user, a GPS (Global Positioning System) device for measuring the position of an automobile or the like on which the data cache device 20 is mounted.
- the output unit 11 is a display device or the like.
- the touch sensor panel may function as the input unit 10 and the output unit 11.
- the control unit 12 determines the position and scale of the map to be displayed based on the information input from the input unit 10, acquires map data from the acquisition unit 13, and outputs the map data to the output unit 11.
- the control part 12 memorize
- the acquisition unit 13 inputs map data at a position and scale instructed from the control unit 12 from the data supply device 30, outputs the map data to the control unit 12, and stores (caches) the data in the storage unit 14 to prepare for reuse.
- the data supply device 30 is, for example, a reading device such as a CD-ROM or DVD-ROM storing map data.
- the data supply device 30 may be a map data providing service server connected via a network.
- the rejection unit 15 rejects the data items 40 from the storage unit 14 in descending order of priority 43 when the storage unit 14 is full.
- the storage unit 14 is a semiconductor memory or the like.
- the priority calculation unit 16, the control unit 12, the acquisition unit 13, and the rejection unit 15 are configured by hardware such as a logic circuit. All or part of the priority calculation unit 16, the control unit 12, the acquisition unit 13, and the rejection unit 15 may be realized by the processor of the data cache device 20 being a computer executing a program on a memory (not shown). good.
- FIG. 2 shows information stored in the storage unit 14.
- the storage unit 14 can store a plurality of data items 40.
- the size of each data item 40 may be constant or variable.
- the number of data items 40 that can be stored in the storage unit 14 is determined by the storage capacity of the storage unit 14.
- Each data item 40 includes data content 41, incidental information 42, priority 43, and access time 44.
- the data content 41 is, for example, map data read from the data supply device 30.
- the size of the data content 41 is determined by the specifications of the data storage device 30 and information input from the input unit 10.
- the incidental information 42 is information regarding the data content 41.
- the incidental information 42 is, for example, the latitude / longitude range and scale of the map data of the data content 41.
- the distance income part 17, the summarization degree acquisition part 18, and the consumption speed acquisition part 19 acquire the distance N, the summarization degree M, and the consumption speed V of this data item 40 based on this information, for example.
- the access time 44 stores the time when the data acquisition unit 13 last accessed the data item 40.
- the supplementary information 42, the priority 43, and the access time 44 may be stored in a storage device other than the storage unit 14 in association with the data content 41. FIG.
- the control unit 12 receives a data request from the input unit 10, specifies the position and scale, and requests the acquisition unit 13 for map data (S1).
- the data request includes, for example, the position and scale explicitly entered by the user from the keypad.
- the data request may include, for example, a current position input from the GPS device and a scale input from the keypad in the past.
- the control unit 12 may input only the current position, calculate the distance from the destination, and calculate the scale according to the distance.
- the acquisition unit 13 checks whether the data content 41 of the requested position and scale is already stored in the storage unit 14 (S2). The check may use the incidental information 42 or may use another existing data cache technology.
- the acquisition unit 13 If already stored (Y in S2), the acquisition unit 13 outputs the data content 41 to the output unit 11 via the control unit 12 (S9), and the priority 43 and access time 44 of the data item 40 are displayed. Update (S10), the operation is terminated.
- the priority 43 is updated to the lowest priority, for example.
- the priority 43 may not be updated.
- the acquisition unit 13 designates the position range and scale including the requested position, and stores the map data as data. It inputs from the supply apparatus 30 (S3), and outputs it to the output part 11 via the control part 12 (S4).
- the size of the position range is specified by a system parameter given to the data cache device 20, for example.
- the acquisition unit 13 When there is free space in the storage unit 14 (Y in S5), the acquisition unit 13 stores the read data content 41 in the storage unit 14 and sets the priority 43 and the access time 44 (S7).
- the priority 43 is set, for example, to the lowest priority as an initial value. Thereafter, the acquisition unit 13 stores the position range and scale output to the data supply device 30 in the incidental information 42 (S8), and ends the operation.
- the rejection unit 15 When there is no free space in the storage unit 14 (N in S5), the rejection unit 15 that has received a request from the acquisition unit 13 rejects the data item 40 having the lowest priority 43 from the storage unit 14 (S6).
- FIG. 4 is an operation flowchart of the priority calculation unit 16. This operation is performed in parallel with the data access of FIG. 3, for example.
- This operation may be performed as a process preceding the data rejection (S6 in FIG. 3).
- the priority calculation unit 16 selects a predetermined number of data items 40 from the data items 40 stored in the storage unit 14 from the oldest access time 44 (A1). At this time, the priority calculation unit 16 selects the data item 40 so that the data amount of the selected data item 40 group is larger than the data amount to be rejected (predetermined value or data to be added).
- the priority calculation unit 16 performs the processing from step A3 to step A6 for each of the selected data items 40 (A2). First, the priority calculation unit 16 uses the distance acquisition unit 17 to obtain the distance N between the data item 40 currently output to the output unit 11 and the data item 40 (A3).
- the distance acquisition unit 17 obtains the data item 40 currently output to the output unit 11 from the control unit 12.
- the distance acquisition unit 17 starts from one of the latitude and longitude ranges stored in the incidental information 42 of the two data items 40 before reaching the other.
- the number of meshes that pass through is obtained, and the number is output as the distance N.
- the distance acquisition unit 17 may approximately calculate the distance N as follows.
- the distance acquisition unit 17 calculates, for example, the distance between the center points of the latitude / longitude range stored in the incidental information 42 of the two data items 40 or the distance between two adjacent points of the two ranges.
- the distance acquisition unit 17 outputs the number obtained by dividing the calculated distance by a predetermined unit distance according to the scale as the distance N. That is, the distance N is a value that increases as the latitude / longitude range stored in the incidental information 42 of the two data items 40 increases.
- the priority calculation unit 16 uses the summarization level acquisition unit 18 to obtain the summarization level M of the data item 40 (A4).
- the summarization level acquisition unit 18 calculates, for example, from the scale stored in the incidental information 42 of the data item 40.
- the summarization level acquisition unit 18 sets the summarization level M of map data having the largest scale stored in the data supply device 30 to 1, and the summation level M of map data having a smaller scale than that is a multiple thereof.
- the summarization degree M is a value that increases as the scale stored in the incidental information 42 of the data item 40 decreases (the number of included administrative units increases).
- the priority calculation part 16 calculates
- the consumption speed acquisition unit 19 calculates, for example, the scale stored in the incidental information 42 of the data item 40 and the speed of the automobile or the like in which the data cache device 20 is mounted.
- the consumption speed acquisition unit 19 may obtain the speed of the car or the like from a speed measuring device such as the car or the control unit 12.
- the control unit 12 continuously inputs position information from the GPS device that is the input unit 10, measures the speed of the automobile or the like in which the data cache device 20 is mounted, and outputs the measured speed to the consumption speed acquisition unit 19.
- the priority calculation unit 16 determines the priority 43 of the data item 40 based on the obtained distance N, summarization M, and consumption speed V, and stores the priority 43 in the storage unit 14 (A6).
- the importance 43 is calculated so as to be higher (easily rejected) as the distance N is larger, the summarization M is smaller, and the consumption speed V is larger.
- the priority calculation unit 16 may employ a calculation method that increases as the value decreases.
- the priority 43 may be determined based on only one of the distance N, the summarization degree M, the consumption speed V, or a combination of any two.
- the data cache device 20 of this embodiment can improve the hit rate and fairness of cached map data. The reason is that the priority calculation unit 16 calculates the priority 43 to be rejected from the storage unit 14 based on the position and scale of each map data.
- FIG. 5 shows the configuration of the data cache device 20 of the second embodiment.
- the data cache device 20 of the present embodiment is, for example, a computer or a mobile terminal device that displays an electronic document such as a web page (hereinafter, web page).
- the data cache device 20 of the present embodiment is different from the first embodiment in the points described below. Other points are the same as in the first embodiment.
- the input unit 10 may be a keypad or the like, or may be a keyboard or a mouse.
- the data supply device 30 is a Web page storage device such as a Web server connected to the data cache device 20 via the network 50 or the like.
- the data cache device 20 of this embodiment may include a profile storage unit 1A.
- the profile storage unit 1A is a storage device such as a semiconductor memory or a disk device.
- the profile storage unit 1A includes, for example, a user's Web page usage speed (reading speed: the number of characters read per unit time, etc.) for each Web page content type (for example, a genre such as a novel or academic book). . These values are stored in the profile storage unit 1A by the user based on past experience and actual measurement.
- FIG. 6 shows information stored in the storage unit 14 of the second embodiment.
- the incidental information 42 is described, for example, by an address (hereinafter referred to as URL) such as a URL (Uniform Resource Locator) where the data content 41 which is a Web page is stored, and a URL to another Web page included in the data content 41 Link information.
- URL Uniform Resource Locator
- the incidental information 42 may be the number of information units included in the data content 41.
- the information unit is, for example, each news article in a newspaper, and is an explanatory description for each product in a product pamphlet.
- the incidental information 42 may be the type of the data content 41 and the number of characters included in the data content 41.
- An operation flowchart of data access of the data cache device 20 of this embodiment is also shown in FIG. In the following, description will be made focusing on the parts that are different from the first embodiment.
- the control unit 12 receives a data request from the input unit 10, specifies a URL, and requests a web page from the acquisition unit 13 (S1).
- the data request includes, for example, a URL that the user explicitly inputs from a keyboard or the like.
- the acquisition unit 13 checks whether the data content 41 of the requested URL is already stored in the storage unit 14 (S2). When the data content 41 of the requested URL is not stored in the storage unit 14 (N in S2), the acquisition unit 13 designates the requested URL and inputs a Web page from the data supply device 30 ( S3), and output to the output unit 11 via the control unit 12 (S4). When there is free space in the storage unit 14 (Y in S5), the acquisition unit 13 stores the read data content 41 in the storage unit 14 and sets the priority 43 and the access time 44 (S7). Thereafter, the acquisition unit 13 stores the incidental information 42 (S8) and ends the operation. For example, the acquisition unit 13 acquires and stores the incidental information 42 as follows.
- “URL where the data content 41 is stored” (own URL) is the URL output to the URL data supply device 30. 2)
- the “link information included in the data content 41” is extracted by the acquisition unit 13 using an HTML (Hypertext Markup Language) tag of the data content 41 as a key or by scanning text.
- “Number of information units” is acquired from the HTML description of the data content 41. This number of information units is assumed to be described in advance in HTML by the creator of the Web page.
- the acquisition part 13 may extract and acquire a news headline from the text of the data content 41, using words, such as a communication company name, and a specific phrase as a key.
- the acquisition unit 13 may acquire the attribute of the Web page from the data supply device 30.
- the “Web page type” is acquired from the HTML description by the acquisition unit 13. This type is described in advance in HTML by the creator of the Web page. Or the acquisition part 13 may scan the text of the data content 41, and may estimate from the style of a sentence, the frequency of generated words, etc. The acquisition unit 13 may acquire the attribute of the Web page from the data supply device 30. 5) The “number of characters on the Web page” is acquired by the acquisition unit 13 by scanning the text of the data content 41. An operation flowchart of the priority calculation unit 16 of the present embodiment is also shown in FIG. Hereafter, the part which is different from 1st Embodiment is demonstrated.
- the priority calculation unit 16 uses the distance acquisition unit 17 to obtain the distance N between the data item 40 currently output to the output unit 11 and the data item 40 (A3).
- the distance is N when the data item 40 currently output to the output unit 11 can be reached by following N links from the data item 40.
- the distance acquisition unit 17 sequentially traces the other data items 40 from the “link information included in the data content 41” stored in the incidental information 42 of the data item 40 currently output to the output unit 11, The number of links until the data item 40 is reached is acquired.
- the distance acquisition unit 17 may create a tree structure of links having reverse links in advance in a storage area (not shown) for efficient processing.
- the priority calculation unit 16 uses the summarization level acquisition unit 18 to obtain the summarization level M of the data item 40 (A4).
- the summarization level acquisition unit 18 sets the “number of information units” stored in the incidental information 42 of the data item 40 as the summarization level M, for example.
- the priority calculation part 16 calculates
- the consumption speed acquisition unit 19 includes, for example, the “type of web page” and the “number of characters of the web page” in the incidental information 42 of the data item 40, and the type of web page content stored in the profile storage unit 1A. It is obtained from the usage speed of the user's Web page for each.
- the consumption speed V may be a fixed value for each “web page type”.
- the summary level M and the consumption speed V may be given as attributes for each Web page by the creator of each Web page and described in the HTML of each page.
- the data acquisition unit 13 extracts the supplementary information 42 from the data content 41 and stores it in the storage unit 14, but when obtaining the distance N, the summarization degree M, and the consumption speed V,
- the priority calculation unit 16 may extract equivalent information from the data content 41 or the like.
- the priority calculation unit 16 may determine the distance N, the summarization level M, and the consumption speed V by itself, and necessarily includes the distance income unit 17, the summarization level acquisition unit 18, and the consumption speed acquisition unit 19 individually. There is no need to be.
- the data cache device 20 of the present embodiment can improve the hit rate and fairness of electronic documents such as Web pages to be cached.
- the reason is that the priority calculation unit 16 calculates the priority 43 to be rejected from the storage unit 14 based on the link information of the electronic document, the number of included information units, the number of included characters, and the like.
- the data cache device 20 of the third embodiment has the configuration of the data cache device 20 of the first and second embodiments.
- the data cache device 20 of the present embodiment is different from the first and second embodiments in the points described below. Other points are the same as those in the first or second embodiment.
- the input unit 10 is a GPS device and a keypad.
- the input unit 10 may be a GPS device, a keyboard, a mouse, or the like.
- the data supply device 30 uses, for example, a CD-ROM reader or a DVD-ROM reader that stores map data, and a Web server connected via the network 50. Accordingly, the storage unit 14 of the data cache device 20 of the present embodiment stores, for example, a mixture of map data and Web pages.
- the data cache device 20 of the present embodiment is, for example, a smartphone or a portable information terminal.
- the data cache device 20 according to the present embodiment includes the contents of the storage supplementary information 42 according to whether the data item 40 is map data or a web page in S8 of FIG. 3 or A3 to A5 of FIG.
- the acquisition method of the distance N, the summarization degree M, and the consumption speed V is switched.
- the data cache device 20 processes the same as in the second embodiment if it is a Web page, as in the first embodiment.
- the data cache device 20 of this embodiment can improve the hit rate and fairness of various data to be cached.
- the reason is that the priority calculation unit 16 evaluates the internal state of the data item 40 using three scales of the distance N, the summarization degree M, and the consumption speed V, which do not depend on the type of the data item 40, and This is because the rejection priority 43 from the storage unit 14 is determined on the basis.
- the data cache device 20 according to the present embodiment includes an accumulation unit 14 that stores a plurality of data items 40 and a priority calculation unit 16.
- the priority calculation unit 16 determines a priority 43 for rejecting the data item 40 from the storage unit 14 corresponding to each data item 40 based on the data contents 41 of each of the plurality of data items 40.
- the data cache device 20 can improve the hit rate and fairness of the data items 40 to be cached. The reason is that the priority calculation unit 16 calculates the priority 43 to be rejected from the storage unit 14 based on the data content 41 of each data item 40.
- Appendix 1 Storage means for storing a plurality of first data items;
- a data cache device comprising priority determining means for determining a priority for rejecting the first data item from the storage means corresponding to each first data item based on the contents of each of the plurality of first data items.
- the priority determination means obtains a distance between the second data item and each of the plurality of first data items based on the content of the second data item and each of the plurality of first data items.
- the data cache device according to appendix 1, wherein the priority is increased as the distance is longer.
- the contents of the first and second data items are position-dependent data, The data cache device according to appendix 2, wherein the priority determination means obtains the distance based on a position of the second data item and a position of each of the plurality of first data items.
- Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items, The data cache device according to appendix 2, wherein the priority determination means obtains, as the distance, the number of links through which the second data item reaches each of the plurality of first data items.
- Each of the plurality of first data items includes one or more information units; The data cache device according to any one of appendices 1 to 4, wherein the priority determination means increases the priority as the number of information units included in the plurality of first data items decreases.
- Each of the plurality of first data items is map data; The data cache device according to appendix 5, wherein the priority determination means increases the priority of the first data item as the scale is larger.
- Appendix 8 The data cache device according to appendix 8, wherein the priority determination means determines the priority based on a content type and a number of characters of each of the plurality of first data items.
- Appendix 9 A storage process for storing a plurality of first data items in a storage means provided in the computer; A program for executing a priority determination process for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items.
- Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
- Each of the plurality of first data items includes one or more information units;
- Each of the plurality of first data items is map data; The program according to appendix 13, wherein the computer executes the priority determination process for increasing the priority of the first data item as the scale is larger.
- a plurality of first data items are stored in the storage means, A cache method for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items.
- a cache method for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items. (Appendix 18) Based on the content of the second data item and the content of each of the plurality of first data items, the distance between the second data item and each of the plurality of first data items is determined, and the longer the distance, The cache method according to appendix 17, wherein the priority is increased.
- the contents of the first and second data items are position-dependent data, The cache method according to appendix 18, wherein the distance is obtained based on a position of the second data item and a position of each of the plurality of first data items.
- Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items, The cache method according to appendix 18, wherein the distance from the second data item to the first data item is obtained as the distance.
- Each of the plurality of first data items includes one or more information units; The cache method according to any one of appendices 17 to 20, wherein the priority is increased as the number of information units included in the plurality of first data items is smaller.
- Each of the plurality of first data items is map data; The cache method according to appendix 21, wherein the priority of the first data item is increased as the scale is larger.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Provided is a cache device capable of achieving a sufficient hit rate and impartiality by reflecting access behavior based on the content of a data object. The data cache device is provided with a storage means for storing a plurality of first data items; and a priority determining means for determining on the basis of the content of each of the plurality of first data items a priority for deleting the first data items from the storage means for each first data item.
Description
本発明は、データキャッシュ装置、データキャッシュ方法およびプログラムに関し、特に、新たなデータ項目の追加等に伴う、棄却するデータ項目の選択に関する。
The present invention relates to a data cache device, a data cache method, and a program, and more particularly to selection of a data item to be rejected due to addition of a new data item.
遠隔にあるサーバシステム等から、ネットワーク経由で取得したデータオブジェクトを後の利用のために保持しておくデータキャッシュを用いることが一般的である。例えば、WEBブラウザの殆どは、取得したデータオブジェクトをローカルファイルとして一定期間保持し、同じデータオブジェクトをリクエストされた際にキャッシュから再利用することで、ブラウザの応答性を改善している。
また、別の例としては、近年、安価に実現するために、地図データを装置内に格納せず、Google(登録商標)マップのようなサービスからネットワーク経由で必要な地図データだけを取得するカーナビ装置が現れている。この場合も表示の応答性をよくするために地図データをキャッシュに保持することが一般的である。
一方、機器は、データキャッシュを保持するために有限の領域(メモリ、ディスクなど)しか持ち合わせていないので、将来に渡って利用されないことが予想されるデータオブジェクトを棄却し、新たにキャッシュとして利用できる領域を確保する。
棄却に於いては、まず、将来のアクセスが予測されるデータオブジェクトをキャッシュに積極的に残すようにすることが必要である(ヒット率の向上)。さらに、特定のデータオブジェクトのみによりキャッシュの多くの領域が消費され、他のデータキャッシュがキャッシュに収容できないような状況を避けるようにすることが必要である(公平性の実現)。
ヒット率の向上を実現する方法として、アクセス頻度が小さく、最もアクセス時刻が古いもの(LRU:Least Recently Used)を棄却候補とする方法がある(特許文献1)。
一方、特許文献2の技術は、ネットワーク経由で取得しキャッシュしたデータオブジェクトを大きさで分類して異なる破棄ストラテジを適用する。同技術は、小規模から中規模ファイルに対してはLRUを基本として、キャッシュ内に他のデータオブジェクトが存在するときに、単一データオブジェクトが占有し得るキャッシュの割合を制限する方法を用いる。キャッシュ全体よりも大きいデータオブジェクトに対しては、同技術は、小さいけれどもLRU評価の対象外となる専用の領域を設定する方法を用いる。
なお、特許文献3は、WEBページの内容と収集対象との関連度にもとづいて、情報収集すべきWEBページを決定する装置を開示する。特許文献4は、自動車位置が目的地に近づくと、狭い領域を要約表示する地図表示方法が開示されている。 It is common to use a data cache that holds data objects acquired from a remote server system or the like via a network for later use. For example, most WEB browsers improve the responsiveness of the browser by holding the acquired data object as a local file for a certain period and reusing the same data object from the cache when requested.
Another example is a car navigation system that does not store map data in the device in recent years, and obtains only necessary map data via a network from a service such as Google (registered trademark) map, in order to be realized at low cost. The device appears. In this case as well, map data is generally held in a cache in order to improve display responsiveness.
On the other hand, since the device has only a finite area (memory, disk, etc.) to hold the data cache, it can reject data objects that are not expected to be used in the future and use them as a new cache. Reserve space.
In rejecting, it is first necessary to positively leave data objects that are predicted to be accessed in the future in the cache (improvement in hit rate). Furthermore, it is necessary to avoid a situation where a large area of the cache is consumed only by a specific data object and other data caches cannot be accommodated in the cache (realization of fairness).
As a method for improving the hit rate, there is a method in which the access frequency is the lowest and the access time is the oldest (LRU: Last Recently Used) as a rejection candidate (Patent Document 1).
On the other hand, the technique of Patent Document 2 applies different discard strategies by classifying data objects acquired and cached via a network according to size. This technology uses a method for limiting the proportion of a cache that a single data object can occupy when other data objects exist in the cache based on LRU for small to medium files. For data objects that are larger than the entire cache, the technique uses a method of setting a dedicated area that is small but not subject to LRU evaluation.
Patent Document 3 discloses an apparatus that determines a WEB page on which information is to be collected based on the degree of association between the contents of the WEB page and the collection target. Patent Document 4 discloses a map display method that summarizes and displays a narrow area when the position of an automobile approaches a destination.
また、別の例としては、近年、安価に実現するために、地図データを装置内に格納せず、Google(登録商標)マップのようなサービスからネットワーク経由で必要な地図データだけを取得するカーナビ装置が現れている。この場合も表示の応答性をよくするために地図データをキャッシュに保持することが一般的である。
一方、機器は、データキャッシュを保持するために有限の領域(メモリ、ディスクなど)しか持ち合わせていないので、将来に渡って利用されないことが予想されるデータオブジェクトを棄却し、新たにキャッシュとして利用できる領域を確保する。
棄却に於いては、まず、将来のアクセスが予測されるデータオブジェクトをキャッシュに積極的に残すようにすることが必要である(ヒット率の向上)。さらに、特定のデータオブジェクトのみによりキャッシュの多くの領域が消費され、他のデータキャッシュがキャッシュに収容できないような状況を避けるようにすることが必要である(公平性の実現)。
ヒット率の向上を実現する方法として、アクセス頻度が小さく、最もアクセス時刻が古いもの(LRU:Least Recently Used)を棄却候補とする方法がある(特許文献1)。
一方、特許文献2の技術は、ネットワーク経由で取得しキャッシュしたデータオブジェクトを大きさで分類して異なる破棄ストラテジを適用する。同技術は、小規模から中規模ファイルに対してはLRUを基本として、キャッシュ内に他のデータオブジェクトが存在するときに、単一データオブジェクトが占有し得るキャッシュの割合を制限する方法を用いる。キャッシュ全体よりも大きいデータオブジェクトに対しては、同技術は、小さいけれどもLRU評価の対象外となる専用の領域を設定する方法を用いる。
なお、特許文献3は、WEBページの内容と収集対象との関連度にもとづいて、情報収集すべきWEBページを決定する装置を開示する。特許文献4は、自動車位置が目的地に近づくと、狭い領域を要約表示する地図表示方法が開示されている。 It is common to use a data cache that holds data objects acquired from a remote server system or the like via a network for later use. For example, most WEB browsers improve the responsiveness of the browser by holding the acquired data object as a local file for a certain period and reusing the same data object from the cache when requested.
Another example is a car navigation system that does not store map data in the device in recent years, and obtains only necessary map data via a network from a service such as Google (registered trademark) map, in order to be realized at low cost. The device appears. In this case as well, map data is generally held in a cache in order to improve display responsiveness.
On the other hand, since the device has only a finite area (memory, disk, etc.) to hold the data cache, it can reject data objects that are not expected to be used in the future and use them as a new cache. Reserve space.
In rejecting, it is first necessary to positively leave data objects that are predicted to be accessed in the future in the cache (improvement in hit rate). Furthermore, it is necessary to avoid a situation where a large area of the cache is consumed only by a specific data object and other data caches cannot be accommodated in the cache (realization of fairness).
As a method for improving the hit rate, there is a method in which the access frequency is the lowest and the access time is the oldest (LRU: Last Recently Used) as a rejection candidate (Patent Document 1).
On the other hand, the technique of Patent Document 2 applies different discard strategies by classifying data objects acquired and cached via a network according to size. This technology uses a method for limiting the proportion of a cache that a single data object can occupy when other data objects exist in the cache based on LRU for small to medium files. For data objects that are larger than the entire cache, the technique uses a method of setting a dedicated area that is small but not subject to LRU evaluation.
Patent Document 3 discloses an apparatus that determines a WEB page on which information is to be collected based on the degree of association between the contents of the WEB page and the collection target. Patent Document 4 discloses a map display method that summarizes and displays a narrow area when the position of an automobile approaches a destination.
特許文献1及び2に開示されている技術は、データオブジェクトの過去の外部状態(アクセス頻度、アクセス時刻、等)によってのみキャッシュからの棄却を判断している。この為、この技術は、データオブジェクトの内容に基づくアクセスビヘイビアを反映できず、充分なヒット率および公平性を達成できない。特許文献3及び4に開示されている技術は、キャッシュと関係しない技術であり、この課題を解決しない。
本発明の目的は、上記課題を解決する、データキャッシュ装置、データキャッシュ方法およびプログラムを提供することである。 The techniques disclosed in Patent Documents 1 and 2 determine the rejection from the cache only based on the past external state (access frequency, access time, etc.) of the data object. For this reason, this technique cannot reflect the access behavior based on the contents of the data object, and cannot achieve a sufficient hit rate and fairness. The technologies disclosed in Patent Documents 3 and 4 are technologies that are not related to the cache and do not solve this problem.
An object of the present invention is to provide a data cache device, a data cache method, and a program that solve the above-described problems.
本発明の目的は、上記課題を解決する、データキャッシュ装置、データキャッシュ方法およびプログラムを提供することである。 The techniques disclosed in Patent Documents 1 and 2 determine the rejection from the cache only based on the past external state (access frequency, access time, etc.) of the data object. For this reason, this technique cannot reflect the access behavior based on the contents of the data object, and cannot achieve a sufficient hit rate and fairness. The technologies disclosed in Patent Documents 3 and 4 are technologies that are not related to the cache and do not solve this problem.
An object of the present invention is to provide a data cache device, a data cache method, and a program that solve the above-described problems.
本発明の一実施形態のデータキャッシュ装置は、複数の第1データ項目を記憶する蓄積手段と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える。
本発明の一実施形態のデータキャッシュ方法は、蓄積手段に複数の第1データ項目を記憶し、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する。
本発明の一実施形態のプログラムは、コンピュータに、前記コンピュータが備える蓄積手段に、複数の第1データ項目を記憶する蓄積処理と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる。 A data cache device according to an embodiment of the present invention includes storage means for storing a plurality of first data items;
Based on the contents of each of the plurality of first data items, there is provided priority determining means for determining a priority for rejecting the first data item from the storage means for each first data item.
A data cache method according to an embodiment of the present invention stores a plurality of first data items in an accumulation unit,
Based on the contents of each of the plurality of first data items, a priority for rejecting the first data item from the storage means is determined corresponding to each first data item.
A program according to an embodiment of the present invention includes a storage process in which a plurality of first data items are stored in a storage unit included in the computer.
Based on the contents of each of the plurality of first data items, a priority determination process is executed for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item.
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える。
本発明の一実施形態のデータキャッシュ方法は、蓄積手段に複数の第1データ項目を記憶し、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する。
本発明の一実施形態のプログラムは、コンピュータに、前記コンピュータが備える蓄積手段に、複数の第1データ項目を記憶する蓄積処理と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる。 A data cache device according to an embodiment of the present invention includes storage means for storing a plurality of first data items;
Based on the contents of each of the plurality of first data items, there is provided priority determining means for determining a priority for rejecting the first data item from the storage means for each first data item.
A data cache method according to an embodiment of the present invention stores a plurality of first data items in an accumulation unit,
Based on the contents of each of the plurality of first data items, a priority for rejecting the first data item from the storage means is determined corresponding to each first data item.
A program according to an embodiment of the present invention includes a storage process in which a plurality of first data items are stored in a storage unit included in the computer.
Based on the contents of each of the plurality of first data items, a priority determination process is executed for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item.
本発明は、データキャッシュ装置等に於いて、キャッシュされるデータのヒット率および公平性を向上させることが出来る。
The present invention can improve the hit rate and fairness of cached data in a data cache device or the like.
<第1の実施形態>
図1は、本実施形態のデータキャッシュ装置20の構成を示す。本実施形態のデータキャッシュ装置20は、例えば、自動車等に積載されて地図を表示する、カーナビ装置等の車載地図表示装置である。
データキャッシュ装置20は、データ項目40を一時的に記憶しておく蓄積部14と蓄積部14に記憶されているデータ項目40棄却(削除)の優先度43を決定する優先度計算部16を備える。
優先度43は、データ項目40の内容(データ内容41)に基づいて取得される、データ項目40の距離N、要約度M、消費速度Vの内の少なくとも1つに基づいて決定される。
優先度計算部16は、距離所得部17、要約度取得部18、消費速度取得部19の内の少なくとも何れか1つを備える。距離所得部17、要約度取得部18、消費速度取得部19のおのおのは、蓄積部14に記憶されているデータ項目40の距離N、要約度M、消費速度Vのおのおのを取得する。
距離Nは、データ項目40のデータ内容41をユーザに提供する上で、始点となるデータ項目40(例えば、現在使用中のデータ項目40)と当該データ項目40の間に何個のデータ項目40のデータ内容41を提供することになるかを表す。データキャッシュ装置20は、距離Nが小さなデータ項目40は、近い将来必要になる可能性が高い等として、蓄積部14から棄却されにくくする。
要約度Mは、当該データ項目40のデータ内容41が含む情報単位数(例えば、ニュースページ等における記事数、パンフレットに於ける掲載商品)の大きさを表す。データキャッシュ装置20は、要約度Mが大きなデータ項目40は、多くの情報へのインデックス、目次、ポータル的な用途が想定される等として、蓄積部14から棄却されにくくする。
消費速度Vは、データ項目40が保持するデータ内容41がユーザによって消費される速度を表す。データキャッシュ装置20は、消費速度Vが小さなデータ項目40は、ユーザが再度必要とする可能性が高いとして、蓄積部14から棄却されにくくする。
優先度43、距離N、要約度M、消費速度Vのおのおの具体例や計算方法は、後述される。
データキャッシュ装置20は、入力部10、出力部11、制御部12、取得部13、棄却部15を備えていても良い。
入力部10は、ユーザからの指示を入力するキーパッド、データキャッシュ装置20を搭載する自動車等の位置を測定するGPS(Global Positioning System)装置等である。出力部11は表示装置等である。タッチセンサパネルが、入力部10および出力部11として機能しても良い。
制御部12は、例えば、入力部10から入力された情報により、表示する地図の位置、縮尺を決定し、取得部13から地図データを取得して出力部11に出力する。この時、制御部12は現在出力されているデータ項目40の識別情報を記憶する。
取得部13は、制御部12から指示された位置、縮尺の地図データをデータ供給装置30から入力し、制御部12に出力すると共に、蓄積部14に保存(キャッシュ)して再利用に備える。データ供給装置30は、例えば、地図データを格納したCD−ROM、DVD−ROM等の読み込み装置である。データ供給装置30は、ネットワーク経由で接続された地図データ提供サービスサーバでも良い。
棄却部15は、蓄積部14に空きが無くなったとき等に、優先度43の高い順にデータ項目40を蓄積部14から棄却する。
ここで、蓄積部14は半導体メモリ等である。優先度計算部16、制御部12、取得部13、棄却部15は、論理回路等のハードウェアで構成される。優先度計算部16、制御部12、取得部13、棄却部15の全てまたは一部は、コンピュータであるデータキャッシュ装置20のプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
図2は、蓄積部14が記憶する情報を示す。蓄積部14は、複数のデータ項目40を記憶できる。各データ項目40の大きさは、一定であっても、可変であっても良い。蓄積部14が格納できるデータ項目40の数は、蓄積部14の記憶容量によって決まる。
各データ項目40は、データ内容41、付帯情報42、優先度43、アクセス時間44を包含する。
データ内容41は、例えば、データ供給装置30から読み込まれた地図データである。データ内容41の大きさは、データ格納装置30の仕様や、入力部10から入力された情報により決定される。
付帯情報42は、データ内容41に関する情報である。付帯情報42は、例えば、データ内容41の地図データの緯度経度の範囲、縮尺である。距離所得部17、要約度取得部18、消費速度取得部19は、例えば、この情報に基づいて、このデータ項目40の距離N、要約度M、消費速度Vを取得する。
アクセス時刻44は、データ取得手段13が、このデータ項目40を最後にアクセスした時刻を格納する。
なお、付帯情報42、優先度43、アクセス時間44は、蓄積部14以外の記憶装置に、データ内容41と対応付けられて記憶されていても良い。
図3は、データキャッシュ装置20のデータアクセスの動作フローチャートである。
先ず、制御部12は、入力部10からデータ要求を受け付け、位置と縮尺を特定して取得部13に地図データを要求する(S1)。
データ要求は、例えば、ユーザがキーパッドから明示的に入力した位置と縮尺を包含する。データ要求は、例えば、GPS装置から入力した現在位置と過去にキーパッドから入力された縮尺を包含していても良い。データキャッシュ装置20がカーナビ装置である場合、制御部12は、現在位置だけ入力して、目的地との距離を計算して、距離に応じて縮尺を算出しても良い。
取得部13は、要求された位置と縮尺のデータ内容41が蓄積部14に既に格納されているかをチェックする(S2)。チェックは、付帯情報42を使用しても良いし、既存の他のデータキャッシュ技術を用いても良い。
既に格納されている場合(S2でY)、取得部13は、データ内容41を制御部12経由で、出力部11に出力し(S9)、当該データ項目40の優先度43及びアクセス時刻44を更新して(S10)、動作を終了する。優先度43は、例えば、最低優先度に更新される。優先度43は、更新されなくても良い。
要求された位置と縮尺のデータ内容41が蓄積部14に格納されていない場合(S2でN)、取得部13は、要求された位置を含む位置範囲と縮尺を指定して、地図データをデータ供給装置30から入力して(S3)、制御部12経由で出力部11に出力する(S4)。位置範囲の大きさは、例えば、データキャッシュ装置20に与えられたシステムパラメータで指定される。
蓄積部14に空き容量がある場合(S5でY)、取得部13は、読み込んだデータ内容41を蓄積部14に格納し、優先度43及びアクセス時刻44を設定する(S7)。優先度43は、初期値として、例えば、最低優先度に設定される。
その後、取得部13は、データ供給装置30に出力した、位置範囲と縮尺を付帯情報42に格納して(S8)、動作を終了する。
蓄積部14に空き容量が無い場合(S5でN)、取得部13から依頼を受けた棄却部15が、優先度43が最も低いデータ項目40を蓄積部14から棄却する(S6)。
図4は、優先度計算部16の動作フローチャートである。本動作は、例えば、図3のデータアクセスと並行して行われる。本動作は、データ棄却(図3のS6)の前段の処理として行われても良い。
優先度計算部16は、蓄積部14に蓄積されているデータ項目40の中から、アクセス時刻44が最も古いものから所定数のデータ項目40を選択する(A1)。この時、優先度計算部16は、選択されたデータ項目40群によるデータ量が棄却すべきデータ量(所定値または追加されるデータ)よりも大きくなるようにデータ項目40を選択する。
優先度計算部16は、選択されたデータ項目40の1つ1つに対して、ステップA3からステップA6までの処理を行う(A2)。
優先度計算部16は、まず、距離取得部17を用いて、現在、出力部11に出力されているデータ項目40と当該データ項目40の間の距離Nを求める(A3)。距離取得部17は、現在、出力部11に出力されているデータ項目40を制御部12から得る。
地図データが一定距離の長方形のメッシュで分割されている場合、距離取得部17は、2つのデータ項目40の付帯情報42に格納されている緯度経度の範囲から、一方から他方へ到達するまでに経由するメッシュの個数を求め、その個数を距離Nとして出力する。
距離取得部17は、距離Nを、次のように近似的に計算しても良い。距離取得部17は、例えば、2つのデータ項目40の付帯情報42に格納されている緯度経度の範囲の中心点間の距離、または、2つの範囲の近接する2点間の距離を計算する。距離取得部17は、計算した距離を縮尺に応じた所定の単位距離で割った数を距離Nとして出力する。
即ち、距離Nは、2つのデータ項目40の付帯情報42に格納されている緯度経度の範囲が離れるほど、大きくなる値である。
次に、優先度計算部16は、要約度取得部18を用いて、当該データ項目40の要約度Mを求める(A4)。要約度取得部18は、例えば、当該データ項目40の付帯情報42に格納されている縮尺から算出する。
要約度取得部18は、データ供給装置30に格納されている最も縮尺の大きい地図データの要約度Mを1として、それよりも縮尺の小さい地図データの要約度Mはその倍数とする。例えば、1/1000の地図の要約度Mを1とした場合、1/10000の地図の要約度は10とする。
即ち、要約度Mは、データ項目40の付帯情報42に格納されている縮尺が小さくなる(包含される行政単位等の数が大きくなる)ほど、大きくなる値である。
次に、優先度計算部16は、消費速度取得部19を用いて、当該データ項目40の消費速度Vを求める(A5)。消費速度取得部19は、例えば、当該データ項目40の付帯情報42に格納されている縮尺と、データキャッシュ装置20が搭載されている自動車等の速度から算出する。
消費速度取得部19は、当該自動車等の速度を、当該自動車等の速度計測器から得ても良いし、制御部12から得ても良い。制御部12は、例えば、入力部10であるGPS装置から位置情報を継続的に入力し、データキャッシュ装置20が搭載されている自動車等の速度を測定し、消費速度取得部19に出力する。
消費速度取得部19は、例えば、要約度Mが1の地図データの全幅を自動車が移動する速度を1000秒とする場合には1/1000=0.001を消費速度Vとする。
即ち、消費速度Vは、ユーザがデータ項目40のデータ内容41を必要とする時間が短いほど、大きくなる値である。
優先度計算部16は、求めた距離N、要約度M、消費速度Vを元に当該データ項目40の優先度43を決定し、蓄積部14に格納する(A6)。重要度43は、距離Nがより大きく、要約度Mがより小さく、消費速度Vがより大きいほど、高く(棄却され易く)なるような算出を行う。
優先度計算部16は、例えば、優先度43=距離N×消費速度V÷要約度Mとする。この場合、優先度43は、値が大きいほど高くなる。優先度計算部16は、値が小さいほど高くなるような算出方法を採用しても良い。
なお、優先度43は、距離N、要約度M、消費速度Vのいずれかのみ、または、何れか2つの組み合わせに基づいて決定しても良い。
本実施形態のデータキャッシュ装置20は、キャッシュされる地図データのヒット率および公平性を向上させることが出来る。
その理由は、優先度計算部16が、各地図データの位置や縮尺に基づいて、蓄積部14から棄却する優先度43を算出するからである。
<第2の実施形態>
図5は、第2の実施形態のデータキャッシュ装置20の構成を示す。本実施形態のデータキャッシュ装置20は、例えば、Webページ等の電子ドキュメント(以降、Webページ)を表示する、コンピュータや携帯端末装置である。本実施形態のデータキャッシュ装置20は、以下に説明する点に於いて、第1の実施形態と相異する。他の点は、第1の実施形態と同じである。
入力部10は、キーパッド等でも良いし、キーボードやマウス等でも良い。データ供給装置30は、データキャッシュ装置20とネットワーク50等を介して接続されるWebサーバ等のWebページ格納装置である。
本実施形態のデータキャッシュ装置20は、プロファイル記憶部1Aを備えても良い。プロファイル記憶部1Aは、半導体メモリ、ディスク装置等の記憶装置である。プロファイル記憶部1Aは、例えば、ユーザのWebページの使用速度(読む速さ:単位時間当たりの読む文字数、等)がWebページ内容の種別(例えば、小説、学術書等のジャンル)ごとに包含する。これらの値は、ユーザが過去の経験や実測に基づいてプロファイル記憶部1Aに格納する。
図6は、第2の実施形態の蓄積部14が記憶する情報を示す。付帯情報42は、例えば、Webページであるデータ内容41が格納されているURL(Uniform Resource Locator)等のアドレス(以降、URL)、及びデータ内容41が包含する他のWebページへのURLで記載されたリンク情報である。
付帯情報42は、データ内容41に包含される情報単位数であってもよい。情報単位は、例えば、新聞における各ニュース記事であり、商品パンフレットにおける商品ごとの説明記載である。
付帯情報42は、データ内容41の種類、データ内容41に包含される文字数であっても良い。
本実施形態のデータキャッシュ装置20のデータアクセスの動作フローチャートも、図3で示される。以下、第1の実施形態と差異がある部分を中心に、説明する。
先ず、制御部12は、入力部10からデータ要求を受け付け、URLを特定して取得部13にWebページを要求する(S1)。データ要求は、例えば、ユーザがキーボード等から明示的に入力したURLを包含する。
取得部13は、要求されたURLのデータ内容41が蓄積部14に既に格納されているかをチェックする(S2)。
要求されたURLのデータ内容41が蓄積部14に格納されていない場合(S2でN)、取得部13は、要求されたURLを指定して、Webページをデータ供給装置30から入力して(S3)、制御部12経由で出力部11に出力する(S4)。
蓄積部14に空き容量がある場合(S5でY)、取得部13は、読み込んだデータ内容41を蓄積部14に格納し、優先度43及びアクセス時刻44を設定する(S7)。その後、取得部13は、付帯情報42を格納して(S8)、動作を終了する。
取得部13は、例えば、付帯情報42を以下のように取得して、格納する。
1)「当該データ内容41が格納されているURL」(自URL)は、URLデータ供給装置30に出力したURLである。
2)「当該データ内容41が包含するリンク情報」は、取得部13がデータ内容41のHTML(Hypertext Markup Language)のタグをキーにして、または、テキストを走査して抽出する。
3)「情報単位数」は、データ内容41のHTML記述から取得する。この情報単位数は、Webページの作成者がHTMLに予め記述しているものとする。または、取得部13が、通信社名等の単語、特定の言い回しをキーに、データ内容41のテキストからニュースヘッドラインを抽出して取得しても良い。取得部13がデータ供給装置30から、Webページの属性として取得しても良い。
4)「Webページの種別」は、取得部13がHTML記述から取得する。この種別は、Webページの作成者がHTMLに予め記述しているものとする。または、取得部13が、データ内容41のテキストを走査して文体、発生単語の頻度等から推定しても良い。取得部13がデータ供給装置30から、Webページの属性として取得しても良い。
5)「Webページの文字数」は、取得部13が、データ内容41のテキストを走査して取得する。
本実施形態の優先度計算部16の動作フローチャートも、図4で示される。以下、第1の実施形態と差異がある部分について、説明する。
優先度計算部16は、距離取得部17を用いて、現在、出力部11に出力されているデータ項目40と当該データ項目40の間の距離Nを求める(A3)。本実施の形態に於いては、現在、出力部11に出力されているデータ項目40から当該データ項目40にN個のリンクを辿ることで到達できる場合には距離Nであるとする。
距離取得部17は、現在、出力部11に出力されているデータ項目40の付帯情報42に格納されている「当該データ内容41が包含するリンク情報」から、順次他のデータ項目40を辿り、当該データ項目40に到達するまでのリンク数を取得する。
距離取得部17は、この処理の効率化のため、予め逆方向リンクを有する、リンクの木構造を図示されない記憶域に作成しておいても良い。
次に、優先度計算部16は、要約度取得部18を用いて、当該データ項目40の要約度Mを求める(A4)。要約度取得部18は、例えば、当該データ項目40の付帯情報42に格納されている「情報単位数」を要約度Mとする。
次に、優先度計算部16は、消費速度取得部19を用いて、当該データ項目40の消費速度Vを求める(A5)。消費速度取得部19は、例えば、当該データ項目40の付帯情報42中の「Webページの種別」、「Webページの文字数」と、プロファイル記憶部1Aに格納されている、Webページ内容の種種類ごとのユーザのWebページの使用速度から求める。
要約度取得部18は、例えば、「Webページの文字数」を「Webページの種別」に対応するWebページの使用速度で割って、使用時間を求める。使用時間が100秒であれば、要約度取得部18は、1秒あたりのデータ項目40の消費速度Vは1/100=0.01と算出する。なお、消費速度Vは、「Webページの種別」毎に固定値としても良い。
さらに、要約度Mや消費速度Vは、各Webページの作成者が、Webページごとに属性として付与し、各ページのHTMLに記述等しておいても良い。
なお、上記説明では、データ取得部13が、データ内容41等から付帯情報42を抽出し、蓄積部14に格納することとしたが、距離N、要約度M、消費速度Vを求めるときに、優先度計算部16が、同等の情報をデータ内容41等から抽出しても良い。また、優先度計算部16は、自ら、距離N、要約度M、消費速度Vを求めても良く、必ずしも、距離所得部17、要約度取得部18、消費速度取得部19を個別に備えている必要はない。
本実施形態のデータキャッシュ装置20は、キャッシュされるWebページ等の電子ドキュメントのヒット率および公平性を向上させることが出来る。
その理由は、優先度計算部16が、電子ドキュメントのリンク情報や包含情報単位数、包含文字数等に基づいて、蓄積部14から棄却する優先度43を算出するからである。
<第3の実施形態>
第3の実施形態のデータキャッシュ装置20は、第1と第2の実施形態のデータキャッシュ装置20の構成を併せ持つ。本実施形態のデータキャッシュ装置20は、以下に説明する点に於いて、第1及び第2の実施形態と相異する。他の点は、第1または第2の実施形態と同じである。
入力部10は、GPS装置とキーパッド等である。入力部10は、GPS装置、キーボードとマウス等でも良い。データ供給装置30は、例えば、地図データを格納したCD−ROMリーダ若しくはDVD−ROMリーダ等、並びに、ネットワーク50を介して接続されたWebサーバを併用する。
従って、本実施形態のデータキャッシュ装置20の蓄積部14は、例えば、地図データとWebページを混在させて蓄積する。本実施形態のデータキャッシュ装置20は、例えば、スマートフォン、携帯型情報端末である。
本実施形態のデータキャッシュ装置20は、図3のS8や図4のA3乃至A5において、データ項目40が地図データであるか、Webページであるかに応じて、格納付帯情報42の内容や、距離N、要約度M、消費速度Vの取得方法を切り替える。データキャッシュ装置20は、データ項目40が地図データであれば第1の実施形態と同様に、Webページであれば第2の実施形態と同様に処理する。
本実施形態のデータキャッシュ装置20は、キャッシュされる多様なデータのヒット率および公平性を向上させることが出来る。その理由は、優先度計算部16が、データ項目40の内部状態を、データ項目40の種別に依存しない、距離N、要約度M、消費速度Vの3つの尺度を用いて評価し、それらに基づいて、蓄積部14からの棄却優先度43を決定するからである。
<第4の実施形態>
本実施形態のデータキャッシュ装置20は、複数のデータ項目40を記憶する蓄積部14と優先度計算部16を備える。優先度計算部16は、複数のデータ項目40の各々のデータ内容41に基づいて、各データ項目40対応に当該データ項目40を蓄積部14から棄却する優先度43を決定する。
データキャッシュ装置20は、キャッシュされるデータ項目40のヒット率および公平性を向上させることが出来る。その理由は、優先度計算部16が、各データ項目40のデータ内容41に基づいて、蓄積部14から棄却する優先度43を算出するからである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
<実施の形態の他の表現>
上記の実施形態、実施例の一部又は全部は以下のようにも記載されうるが、以下には限られない。
(付記1)
複数の第1データ項目を記憶する蓄積手段と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える、データキャッシュ装置。
(付記2)
前記優先度決定手段は、第2データ項目の内容と、前記複数の第1データ項目の各々の内容に基づいて、第2データ項目と、前記複数の第1データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、付記1のデータキャッシュ装置。
(付記3)
前記第1及び第2データ項目の内容は、位置に依存したデータであり、
前記優先度決定手段は、前記第2データ項目の位置と前記複数の第1データ項目の各々の位置とに基づいて前記距離を求める、付記2のデータキャッシュ装置。
(付記4)
前記複数の第1データ項目の内容の各々は、前記第2データ項目の内容から直接、または他の第1データ項目の内容を経由してリンクされているデータであり、
前記優先度決定手段は、前記第2データ項目から前記複数の第1データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、付記2のデータキャッシュ装置。
(付記5)
前記複数の第1データ項目のおのおのは1以上の情報単位を包含し、
前記優先度決定手段は、前記複数の第1データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、付記1乃至4のいずれかのデータキャッシュ装置。
(付記6)
前記複数の第1データ項目のおのおのは地図データであり、
前記優先度決定手段は、縮尺が大きいほど第1データ項目の前記優先度を高くする、付記5のデータキャッシュ装置。
(付記7)
前記優先度決定手段は、前記複数の第1データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、付記1乃至6の何れかのデータキャッシュ装置。
(付記8)
前記優先度決定手段は、前記複数の第1データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、付記8のデータキャッシュ装置。
(付記9)
コンピュータに、前記コンピュータが備える蓄積手段に、複数の第1データ項目を記憶する蓄積処理と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる、プログラム。
(付記10)
前記コンピュータに、第2データ項目の内容と、前記複数の第1データ項目の各々の内容に基づいて、第2データ項目と、前記複数の第1データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、前記優先度決定処理を実行させる付記9のプログラム。
(付記11)
前記第1及び第2データ項目の内容は、位置に依存したデータであり、
前記コンピュータに、前記第2データ項目の位置と前記複数の第1データ項目の各々の位置とに基づいて前記距離を求める前記優先度決定処理を実行させる付記10のプログラム。
(付記12)
前記複数の第1データ項目の内容の各々は、前記第2データ項目の内容から直接、または他の第1データ項目の内容を経由してリンクされているデータであり、
前記コンピュータに、前記第2データ項目から前記複数の第1データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、前記優先度決定処理を実行させる、付記10のプログラム。
(付記13)
前記複数の第1データ項目のおのおのは1以上の情報単位を包含し、
前記コンピュータに、前記複数の第1データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする前記優先度決定処理を実行させる、付記9乃至12のいずれかのプログラム。
(付記14)
前記複数の第1データ項目のおのおのは地図データであり、
前記コンピュータに、縮尺が大きいほど第1データ項目の前記優先度を高くする前記優先度決定処理を実行させる、付記13のプログラム。
(付記15)
前記コンピュータに、前記複数の第1データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする前記優先度決定処理を実行させる、付記9乃至14の何れかのプログラム。
(付記16)
前記コンピュータに、前記複数の第1データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する前記優先度決定処理を実行させる、付記15のプログラム。
(付記17)蓄積手段に複数の第1データ項目を記憶し、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定するキャッシュ方法。
(付記18)
第2データ項目の内容と、前記複数の第1データ項目の各々の内容に基づいて、第2データ項目と、前記複数の第1データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、付記17のキャッシュ方法。
(付記19)
前記第1及び第2データ項目の内容は、位置に依存したデータであり、
前記第2データ項目の位置と前記複数の第1データ項目の各々の位置とに基づいて前記距離を求める、付記18のキャッシュ方法。
(付記20)
前記複数の第1データ項目の内容の各々は、前記第2データ項目の内容から直接、または他の第1データ項目の内容を経由してリンクされているデータであり、
前記第2データ項目から前記複数の第1データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、付記18のキャッシュ方法。
(付記21)
前記複数の第1データ項目のおのおのは1以上の情報単位を包含し、
前記複数の第1データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、付記17乃至20のいずれかのキャッシュ方法。
(付記22)
前記複数の第1データ項目のおのおのは地図データであり、
縮尺が大きいほど第1データ項目の前記優先度を高くする、付記21のキャッシュ方法。
(付記23)
前記複数の第1データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、付記17乃至22の何れかのキャッシュ方法。
(付記24)
前記複数の第1データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、付記23のキャッシュ方法。
この出願は、2010年9月8日に出願された日本出願特願2010−201088を基礎とする優先権を主張し、その開示の全てをここに取り込む。 <First Embodiment>
FIG. 1 shows the configuration of the data cache device 20 of this embodiment. The data cache device 20 of the present embodiment is, for example, an in-vehicle map display device such as a car navigation device that is loaded on an automobile or the like and displays a map.
The data cache device 20 includes astorage unit 14 that temporarily stores data items 40 and a priority calculation unit 16 that determines the priority 43 of rejection (deletion) of the data items 40 stored in the storage unit 14. .
Thepriority 43 is determined based on at least one of the distance N, the summarization degree M, and the consumption speed V of the data item 40 acquired based on the content of the data item 40 (data content 41).
Thepriority calculation unit 16 includes at least one of the distance income unit 17, the summary level acquisition unit 18, and the consumption speed acquisition unit 19. Each of the distance income unit 17, the summary level acquisition unit 18, and the consumption rate acquisition unit 19 acquires the distance N, the summary level M, and the consumption rate V of the data item 40 stored in the storage unit 14.
The distance N is the number ofdata items 40 between the data item 40 that is the starting point (for example, the data item 40 currently in use) and the data item 40 when the data content 41 of the data item 40 is provided to the user. Represents whether to provide the data content 41. The data cache device 20 makes it difficult for the data item 40 having a small distance N to be rejected from the storage unit 14 because it is likely to be necessary in the near future.
The summarization degree M represents the size of the number of information units (for example, the number of articles in a news page or the like, a product posted in a pamphlet) included in thedata content 41 of the data item 40. The data cache device 20 makes it difficult for the data item 40 with a high summarization level M to be rejected from the storage unit 14 as an index, table of contents, portal use, etc. to a large amount of information is assumed.
The consumption speed V represents the speed at which thedata content 41 held by the data item 40 is consumed by the user. The data cache device 20 makes it difficult for the data item 40 with a low consumption speed V to be rejected from the storage unit 14 because it is highly likely that the user will need it again.
Specific examples and calculation methods of thepriority 43, the distance N, the summarization degree M, and the consumption speed V will be described later.
The data cache device 20 may include aninput unit 10, an output unit 11, a control unit 12, an acquisition unit 13, and a rejection unit 15.
Theinput unit 10 is a keypad for inputting an instruction from a user, a GPS (Global Positioning System) device for measuring the position of an automobile or the like on which the data cache device 20 is mounted. The output unit 11 is a display device or the like. The touch sensor panel may function as the input unit 10 and the output unit 11.
For example, thecontrol unit 12 determines the position and scale of the map to be displayed based on the information input from the input unit 10, acquires map data from the acquisition unit 13, and outputs the map data to the output unit 11. At this time, the control part 12 memorize | stores the identification information of the data item 40 currently output.
Theacquisition unit 13 inputs map data at a position and scale instructed from the control unit 12 from the data supply device 30, outputs the map data to the control unit 12, and stores (caches) the data in the storage unit 14 to prepare for reuse. The data supply device 30 is, for example, a reading device such as a CD-ROM or DVD-ROM storing map data. The data supply device 30 may be a map data providing service server connected via a network.
Therejection unit 15 rejects the data items 40 from the storage unit 14 in descending order of priority 43 when the storage unit 14 is full.
Here, thestorage unit 14 is a semiconductor memory or the like. The priority calculation unit 16, the control unit 12, the acquisition unit 13, and the rejection unit 15 are configured by hardware such as a logic circuit. All or part of the priority calculation unit 16, the control unit 12, the acquisition unit 13, and the rejection unit 15 may be realized by the processor of the data cache device 20 being a computer executing a program on a memory (not shown). good.
FIG. 2 shows information stored in thestorage unit 14. The storage unit 14 can store a plurality of data items 40. The size of each data item 40 may be constant or variable. The number of data items 40 that can be stored in the storage unit 14 is determined by the storage capacity of the storage unit 14.
Eachdata item 40 includes data content 41, incidental information 42, priority 43, and access time 44.
Thedata content 41 is, for example, map data read from the data supply device 30. The size of the data content 41 is determined by the specifications of the data storage device 30 and information input from the input unit 10.
Theincidental information 42 is information regarding the data content 41. The incidental information 42 is, for example, the latitude / longitude range and scale of the map data of the data content 41. The distance income part 17, the summarization degree acquisition part 18, and the consumption speed acquisition part 19 acquire the distance N, the summarization degree M, and the consumption speed V of this data item 40 based on this information, for example.
Theaccess time 44 stores the time when the data acquisition unit 13 last accessed the data item 40.
Thesupplementary information 42, the priority 43, and the access time 44 may be stored in a storage device other than the storage unit 14 in association with the data content 41.
FIG. 3 is an operation flowchart of data access of the data cache device 20.
First, thecontrol unit 12 receives a data request from the input unit 10, specifies the position and scale, and requests the acquisition unit 13 for map data (S1).
The data request includes, for example, the position and scale explicitly entered by the user from the keypad. The data request may include, for example, a current position input from the GPS device and a scale input from the keypad in the past. When the data cache device 20 is a car navigation device, thecontrol unit 12 may input only the current position, calculate the distance from the destination, and calculate the scale according to the distance.
Theacquisition unit 13 checks whether the data content 41 of the requested position and scale is already stored in the storage unit 14 (S2). The check may use the incidental information 42 or may use another existing data cache technology.
If already stored (Y in S2), theacquisition unit 13 outputs the data content 41 to the output unit 11 via the control unit 12 (S9), and the priority 43 and access time 44 of the data item 40 are displayed. Update (S10), the operation is terminated. The priority 43 is updated to the lowest priority, for example. The priority 43 may not be updated.
When thedata content 41 of the requested position and scale is not stored in the storage unit 14 (N in S2), the acquisition unit 13 designates the position range and scale including the requested position, and stores the map data as data. It inputs from the supply apparatus 30 (S3), and outputs it to the output part 11 via the control part 12 (S4). The size of the position range is specified by a system parameter given to the data cache device 20, for example.
When there is free space in the storage unit 14 (Y in S5), theacquisition unit 13 stores the read data content 41 in the storage unit 14 and sets the priority 43 and the access time 44 (S7). The priority 43 is set, for example, to the lowest priority as an initial value.
Thereafter, theacquisition unit 13 stores the position range and scale output to the data supply device 30 in the incidental information 42 (S8), and ends the operation.
When there is no free space in the storage unit 14 (N in S5), therejection unit 15 that has received a request from the acquisition unit 13 rejects the data item 40 having the lowest priority 43 from the storage unit 14 (S6).
FIG. 4 is an operation flowchart of thepriority calculation unit 16. This operation is performed in parallel with the data access of FIG. 3, for example. This operation may be performed as a process preceding the data rejection (S6 in FIG. 3).
Thepriority calculation unit 16 selects a predetermined number of data items 40 from the data items 40 stored in the storage unit 14 from the oldest access time 44 (A1). At this time, the priority calculation unit 16 selects the data item 40 so that the data amount of the selected data item 40 group is larger than the data amount to be rejected (predetermined value or data to be added).
Thepriority calculation unit 16 performs the processing from step A3 to step A6 for each of the selected data items 40 (A2).
First, thepriority calculation unit 16 uses the distance acquisition unit 17 to obtain the distance N between the data item 40 currently output to the output unit 11 and the data item 40 (A3). The distance acquisition unit 17 obtains the data item 40 currently output to the output unit 11 from the control unit 12.
When the map data is divided by a rectangular mesh of a certain distance, thedistance acquisition unit 17 starts from one of the latitude and longitude ranges stored in the incidental information 42 of the two data items 40 before reaching the other. The number of meshes that pass through is obtained, and the number is output as the distance N.
Thedistance acquisition unit 17 may approximately calculate the distance N as follows. The distance acquisition unit 17 calculates, for example, the distance between the center points of the latitude / longitude range stored in the incidental information 42 of the two data items 40 or the distance between two adjacent points of the two ranges. The distance acquisition unit 17 outputs the number obtained by dividing the calculated distance by a predetermined unit distance according to the scale as the distance N.
That is, the distance N is a value that increases as the latitude / longitude range stored in theincidental information 42 of the two data items 40 increases.
Next, thepriority calculation unit 16 uses the summarization level acquisition unit 18 to obtain the summarization level M of the data item 40 (A4). The summarization level acquisition unit 18 calculates, for example, from the scale stored in the incidental information 42 of the data item 40.
The summarizationlevel acquisition unit 18 sets the summarization level M of map data having the largest scale stored in the data supply device 30 to 1, and the summation level M of map data having a smaller scale than that is a multiple thereof. For example, when the summarization level M of a 1/1000 map is 1, the summarization level of a 1/10000 map is 10.
That is, the summarization degree M is a value that increases as the scale stored in theincidental information 42 of the data item 40 decreases (the number of included administrative units increases).
Next, thepriority calculation part 16 calculates | requires the consumption speed V of the said data item 40 using the consumption speed acquisition part 19 (A5). The consumption speed acquisition unit 19 calculates, for example, the scale stored in the incidental information 42 of the data item 40 and the speed of the automobile or the like in which the data cache device 20 is mounted.
The consumptionspeed acquisition unit 19 may obtain the speed of the car or the like from a speed measuring device such as the car or the control unit 12. For example, the control unit 12 continuously inputs position information from the GPS device that is the input unit 10, measures the speed of the automobile or the like in which the data cache device 20 is mounted, and outputs the measured speed to the consumption speed acquisition unit 19.
For example, the consumptionspeed acquisition unit 19 sets 1/1000 = 0.001 as the consumption speed V when the speed at which the automobile moves through the entire width of the map data having the summarization level M of 1 is 1000 seconds.
That is, the consumption speed V is a value that increases as the time for which the user needs thedata content 41 of the data item 40 is shorter.
Thepriority calculation unit 16 determines the priority 43 of the data item 40 based on the obtained distance N, summarization M, and consumption speed V, and stores the priority 43 in the storage unit 14 (A6). The importance 43 is calculated so as to be higher (easily rejected) as the distance N is larger, the summarization M is smaller, and the consumption speed V is larger.
For example, thepriority calculation unit 16 sets priority 43 = distance N × consumption speed V ÷ summarization M. In this case, the priority 43 increases as the value increases. The priority calculation unit 16 may employ a calculation method that increases as the value decreases.
Thepriority 43 may be determined based on only one of the distance N, the summarization degree M, the consumption speed V, or a combination of any two.
The data cache device 20 of this embodiment can improve the hit rate and fairness of cached map data.
The reason is that thepriority calculation unit 16 calculates the priority 43 to be rejected from the storage unit 14 based on the position and scale of each map data.
<Second Embodiment>
FIG. 5 shows the configuration of the data cache device 20 of the second embodiment. The data cache device 20 of the present embodiment is, for example, a computer or a mobile terminal device that displays an electronic document such as a web page (hereinafter, web page). The data cache device 20 of the present embodiment is different from the first embodiment in the points described below. Other points are the same as in the first embodiment.
Theinput unit 10 may be a keypad or the like, or may be a keyboard or a mouse. The data supply device 30 is a Web page storage device such as a Web server connected to the data cache device 20 via the network 50 or the like.
The data cache device 20 of this embodiment may include aprofile storage unit 1A. The profile storage unit 1A is a storage device such as a semiconductor memory or a disk device. The profile storage unit 1A includes, for example, a user's Web page usage speed (reading speed: the number of characters read per unit time, etc.) for each Web page content type (for example, a genre such as a novel or academic book). . These values are stored in the profile storage unit 1A by the user based on past experience and actual measurement.
FIG. 6 shows information stored in thestorage unit 14 of the second embodiment. The incidental information 42 is described, for example, by an address (hereinafter referred to as URL) such as a URL (Uniform Resource Locator) where the data content 41 which is a Web page is stored, and a URL to another Web page included in the data content 41 Link information.
Theincidental information 42 may be the number of information units included in the data content 41. The information unit is, for example, each news article in a newspaper, and is an explanatory description for each product in a product pamphlet.
Theincidental information 42 may be the type of the data content 41 and the number of characters included in the data content 41.
An operation flowchart of data access of the data cache device 20 of this embodiment is also shown in FIG. In the following, description will be made focusing on the parts that are different from the first embodiment.
First, thecontrol unit 12 receives a data request from the input unit 10, specifies a URL, and requests a web page from the acquisition unit 13 (S1). The data request includes, for example, a URL that the user explicitly inputs from a keyboard or the like.
Theacquisition unit 13 checks whether the data content 41 of the requested URL is already stored in the storage unit 14 (S2).
When thedata content 41 of the requested URL is not stored in the storage unit 14 (N in S2), the acquisition unit 13 designates the requested URL and inputs a Web page from the data supply device 30 ( S3), and output to the output unit 11 via the control unit 12 (S4).
When there is free space in the storage unit 14 (Y in S5), theacquisition unit 13 stores the read data content 41 in the storage unit 14 and sets the priority 43 and the access time 44 (S7). Thereafter, the acquisition unit 13 stores the incidental information 42 (S8) and ends the operation.
For example, theacquisition unit 13 acquires and stores the incidental information 42 as follows.
1) “URL where thedata content 41 is stored” (own URL) is the URL output to the URL data supply device 30.
2) The “link information included in thedata content 41” is extracted by the acquisition unit 13 using an HTML (Hypertext Markup Language) tag of the data content 41 as a key or by scanning text.
3) “Number of information units” is acquired from the HTML description of thedata content 41. This number of information units is assumed to be described in advance in HTML by the creator of the Web page. Or the acquisition part 13 may extract and acquire a news headline from the text of the data content 41, using words, such as a communication company name, and a specific phrase as a key. The acquisition unit 13 may acquire the attribute of the Web page from the data supply device 30.
4) The “Web page type” is acquired from the HTML description by theacquisition unit 13. This type is described in advance in HTML by the creator of the Web page. Or the acquisition part 13 may scan the text of the data content 41, and may estimate from the style of a sentence, the frequency of generated words, etc. The acquisition unit 13 may acquire the attribute of the Web page from the data supply device 30.
5) The “number of characters on the Web page” is acquired by theacquisition unit 13 by scanning the text of the data content 41.
An operation flowchart of thepriority calculation unit 16 of the present embodiment is also shown in FIG. Hereafter, the part which is different from 1st Embodiment is demonstrated.
Thepriority calculation unit 16 uses the distance acquisition unit 17 to obtain the distance N between the data item 40 currently output to the output unit 11 and the data item 40 (A3). In the present embodiment, it is assumed that the distance is N when the data item 40 currently output to the output unit 11 can be reached by following N links from the data item 40.
Thedistance acquisition unit 17 sequentially traces the other data items 40 from the “link information included in the data content 41” stored in the incidental information 42 of the data item 40 currently output to the output unit 11, The number of links until the data item 40 is reached is acquired.
Thedistance acquisition unit 17 may create a tree structure of links having reverse links in advance in a storage area (not shown) for efficient processing.
Next, thepriority calculation unit 16 uses the summarization level acquisition unit 18 to obtain the summarization level M of the data item 40 (A4). The summarization level acquisition unit 18 sets the “number of information units” stored in the incidental information 42 of the data item 40 as the summarization level M, for example.
Next, thepriority calculation part 16 calculates | requires the consumption speed V of the said data item 40 using the consumption speed acquisition part 19 (A5). The consumption speed acquisition unit 19 includes, for example, the “type of web page” and the “number of characters of the web page” in the incidental information 42 of the data item 40, and the type of web page content stored in the profile storage unit 1A. It is obtained from the usage speed of the user's Web page for each.
For example, the summarizationlevel acquisition unit 18 divides “the number of characters on the Web page” by the usage speed of the Web page corresponding to “Web page type” to obtain the usage time. If the usage time is 100 seconds, the summarization level acquisition unit 18 calculates the consumption speed V of the data item 40 per second as 1/100 = 0.01. The consumption speed V may be a fixed value for each “web page type”.
Further, the summary level M and the consumption speed V may be given as attributes for each Web page by the creator of each Web page and described in the HTML of each page.
In the above description, thedata acquisition unit 13 extracts the supplementary information 42 from the data content 41 and stores it in the storage unit 14, but when obtaining the distance N, the summarization degree M, and the consumption speed V, The priority calculation unit 16 may extract equivalent information from the data content 41 or the like. In addition, the priority calculation unit 16 may determine the distance N, the summarization level M, and the consumption speed V by itself, and necessarily includes the distance income unit 17, the summarization level acquisition unit 18, and the consumption speed acquisition unit 19 individually. There is no need to be.
The data cache device 20 of the present embodiment can improve the hit rate and fairness of electronic documents such as Web pages to be cached.
The reason is that thepriority calculation unit 16 calculates the priority 43 to be rejected from the storage unit 14 based on the link information of the electronic document, the number of included information units, the number of included characters, and the like.
<Third Embodiment>
The data cache device 20 of the third embodiment has the configuration of the data cache device 20 of the first and second embodiments. The data cache device 20 of the present embodiment is different from the first and second embodiments in the points described below. Other points are the same as those in the first or second embodiment.
Theinput unit 10 is a GPS device and a keypad. The input unit 10 may be a GPS device, a keyboard, a mouse, or the like. The data supply device 30 uses, for example, a CD-ROM reader or a DVD-ROM reader that stores map data, and a Web server connected via the network 50.
Accordingly, thestorage unit 14 of the data cache device 20 of the present embodiment stores, for example, a mixture of map data and Web pages. The data cache device 20 of the present embodiment is, for example, a smartphone or a portable information terminal.
The data cache device 20 according to the present embodiment includes the contents of the storagesupplementary information 42 according to whether the data item 40 is map data or a web page in S8 of FIG. 3 or A3 to A5 of FIG. The acquisition method of the distance N, the summarization degree M, and the consumption speed V is switched. If the data item 40 is map data, the data cache device 20 processes the same as in the second embodiment if it is a Web page, as in the first embodiment.
The data cache device 20 of this embodiment can improve the hit rate and fairness of various data to be cached. The reason is that thepriority calculation unit 16 evaluates the internal state of the data item 40 using three scales of the distance N, the summarization degree M, and the consumption speed V, which do not depend on the type of the data item 40, and This is because the rejection priority 43 from the storage unit 14 is determined on the basis.
<Fourth Embodiment>
The data cache device 20 according to the present embodiment includes anaccumulation unit 14 that stores a plurality of data items 40 and a priority calculation unit 16. The priority calculation unit 16 determines a priority 43 for rejecting the data item 40 from the storage unit 14 corresponding to each data item 40 based on the data contents 41 of each of the plurality of data items 40.
The data cache device 20 can improve the hit rate and fairness of thedata items 40 to be cached. The reason is that the priority calculation unit 16 calculates the priority 43 to be rejected from the storage unit 14 based on the data content 41 of each data item 40.
Although the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
<Other expressions of the embodiment>
Although part or all of said embodiment and an Example may be described as follows, it is not restricted to the following.
(Appendix 1)
Storage means for storing a plurality of first data items;
A data cache device comprising priority determining means for determining a priority for rejecting the first data item from the storage means corresponding to each first data item based on the contents of each of the plurality of first data items.
(Appendix 2)
The priority determination means obtains a distance between the second data item and each of the plurality of first data items based on the content of the second data item and each of the plurality of first data items. The data cache device according to appendix 1, wherein the priority is increased as the distance is longer.
(Appendix 3)
The contents of the first and second data items are position-dependent data,
The data cache device according to appendix 2, wherein the priority determination means obtains the distance based on a position of the second data item and a position of each of the plurality of first data items.
(Appendix 4)
Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
The data cache device according to appendix 2, wherein the priority determination means obtains, as the distance, the number of links through which the second data item reaches each of the plurality of first data items.
(Appendix 5)
Each of the plurality of first data items includes one or more information units;
The data cache device according to any one of appendices 1 to 4, wherein the priority determination means increases the priority as the number of information units included in the plurality of first data items decreases.
(Appendix 6)
Each of the plurality of first data items is map data;
The data cache device according to appendix 5, wherein the priority determination means increases the priority of the first data item as the scale is larger.
(Appendix 7)
The data cache device according to any one of appendices 1 to 6, wherein the priority determination means increases the priority as the consumption speed of the contents of each of the plurality of first data items increases.
(Appendix 8)
The data cache device according to appendix 8, wherein the priority determination means determines the priority based on a content type and a number of characters of each of the plurality of first data items.
(Appendix 9)
A storage process for storing a plurality of first data items in a storage means provided in the computer;
A program for executing a priority determination process for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items.
(Appendix 10)
Based on the content of the second data item and the content of each of the plurality of first data items, the computer determines a distance between the second data item and each of the plurality of first data items, and the distance The program according to appendix 9, wherein the priority determination process is executed such that the longer the is, the higher the priority is.
(Appendix 11)
The contents of the first and second data items are position-dependent data,
The program according toappendix 10, wherein the computer executes the priority determination process for obtaining the distance based on a position of the second data item and a position of each of the plurality of first data items.
(Appendix 12)
Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
The program according toappendix 10, wherein the computer executes the priority determination process for obtaining, as the distance, the number of links through which the second data item reaches each of the plurality of first data items.
(Appendix 13)
Each of the plurality of first data items includes one or more information units;
The program according to any one of appendices 9 to 12, which causes the computer to execute the priority determination process for increasing the priority as the number of information units included in the plurality of first data items decreases.
(Appendix 14)
Each of the plurality of first data items is map data;
The program according toappendix 13, wherein the computer executes the priority determination process for increasing the priority of the first data item as the scale is larger.
(Appendix 15)
The program according to any one of appendices 9 to 14, which causes the computer to execute the priority determination process for increasing the priority as the consumption speed of the contents of each of the plurality of first data items increases.
(Appendix 16)
The program according tosupplementary note 15, which causes the computer to execute the priority determination process for determining the priority based on a content type and a number of characters of each of the plurality of first data items.
(Supplementary Note 17) A plurality of first data items are stored in the storage means,
A cache method for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items.
(Appendix 18)
Based on the content of the second data item and the content of each of the plurality of first data items, the distance between the second data item and each of the plurality of first data items is determined, and the longer the distance, The cache method according toappendix 17, wherein the priority is increased.
(Appendix 19)
The contents of the first and second data items are position-dependent data,
The cache method according toappendix 18, wherein the distance is obtained based on a position of the second data item and a position of each of the plurality of first data items.
(Appendix 20)
Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
The cache method according toappendix 18, wherein the distance from the second data item to the first data item is obtained as the distance.
(Appendix 21)
Each of the plurality of first data items includes one or more information units;
The cache method according to any one ofappendices 17 to 20, wherein the priority is increased as the number of information units included in the plurality of first data items is smaller.
(Appendix 22)
Each of the plurality of first data items is map data;
The cache method according to appendix 21, wherein the priority of the first data item is increased as the scale is larger.
(Appendix 23)
The cache method according to any one ofappendices 17 to 22, wherein the higher the consumption speed of the content of each of the plurality of first data items, the higher the priority.
(Appendix 24)
The cache method according to appendix 23, wherein the priority is determined based on a content type and a number of characters of each of the plurality of first data items.
This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2010-201088 for which it applied on September 8, 2010, and takes in those the indications of all here.
図1は、本実施形態のデータキャッシュ装置20の構成を示す。本実施形態のデータキャッシュ装置20は、例えば、自動車等に積載されて地図を表示する、カーナビ装置等の車載地図表示装置である。
データキャッシュ装置20は、データ項目40を一時的に記憶しておく蓄積部14と蓄積部14に記憶されているデータ項目40棄却(削除)の優先度43を決定する優先度計算部16を備える。
優先度43は、データ項目40の内容(データ内容41)に基づいて取得される、データ項目40の距離N、要約度M、消費速度Vの内の少なくとも1つに基づいて決定される。
優先度計算部16は、距離所得部17、要約度取得部18、消費速度取得部19の内の少なくとも何れか1つを備える。距離所得部17、要約度取得部18、消費速度取得部19のおのおのは、蓄積部14に記憶されているデータ項目40の距離N、要約度M、消費速度Vのおのおのを取得する。
距離Nは、データ項目40のデータ内容41をユーザに提供する上で、始点となるデータ項目40(例えば、現在使用中のデータ項目40)と当該データ項目40の間に何個のデータ項目40のデータ内容41を提供することになるかを表す。データキャッシュ装置20は、距離Nが小さなデータ項目40は、近い将来必要になる可能性が高い等として、蓄積部14から棄却されにくくする。
要約度Mは、当該データ項目40のデータ内容41が含む情報単位数(例えば、ニュースページ等における記事数、パンフレットに於ける掲載商品)の大きさを表す。データキャッシュ装置20は、要約度Mが大きなデータ項目40は、多くの情報へのインデックス、目次、ポータル的な用途が想定される等として、蓄積部14から棄却されにくくする。
消費速度Vは、データ項目40が保持するデータ内容41がユーザによって消費される速度を表す。データキャッシュ装置20は、消費速度Vが小さなデータ項目40は、ユーザが再度必要とする可能性が高いとして、蓄積部14から棄却されにくくする。
優先度43、距離N、要約度M、消費速度Vのおのおの具体例や計算方法は、後述される。
データキャッシュ装置20は、入力部10、出力部11、制御部12、取得部13、棄却部15を備えていても良い。
入力部10は、ユーザからの指示を入力するキーパッド、データキャッシュ装置20を搭載する自動車等の位置を測定するGPS(Global Positioning System)装置等である。出力部11は表示装置等である。タッチセンサパネルが、入力部10および出力部11として機能しても良い。
制御部12は、例えば、入力部10から入力された情報により、表示する地図の位置、縮尺を決定し、取得部13から地図データを取得して出力部11に出力する。この時、制御部12は現在出力されているデータ項目40の識別情報を記憶する。
取得部13は、制御部12から指示された位置、縮尺の地図データをデータ供給装置30から入力し、制御部12に出力すると共に、蓄積部14に保存(キャッシュ)して再利用に備える。データ供給装置30は、例えば、地図データを格納したCD−ROM、DVD−ROM等の読み込み装置である。データ供給装置30は、ネットワーク経由で接続された地図データ提供サービスサーバでも良い。
棄却部15は、蓄積部14に空きが無くなったとき等に、優先度43の高い順にデータ項目40を蓄積部14から棄却する。
ここで、蓄積部14は半導体メモリ等である。優先度計算部16、制御部12、取得部13、棄却部15は、論理回路等のハードウェアで構成される。優先度計算部16、制御部12、取得部13、棄却部15の全てまたは一部は、コンピュータであるデータキャッシュ装置20のプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
図2は、蓄積部14が記憶する情報を示す。蓄積部14は、複数のデータ項目40を記憶できる。各データ項目40の大きさは、一定であっても、可変であっても良い。蓄積部14が格納できるデータ項目40の数は、蓄積部14の記憶容量によって決まる。
各データ項目40は、データ内容41、付帯情報42、優先度43、アクセス時間44を包含する。
データ内容41は、例えば、データ供給装置30から読み込まれた地図データである。データ内容41の大きさは、データ格納装置30の仕様や、入力部10から入力された情報により決定される。
付帯情報42は、データ内容41に関する情報である。付帯情報42は、例えば、データ内容41の地図データの緯度経度の範囲、縮尺である。距離所得部17、要約度取得部18、消費速度取得部19は、例えば、この情報に基づいて、このデータ項目40の距離N、要約度M、消費速度Vを取得する。
アクセス時刻44は、データ取得手段13が、このデータ項目40を最後にアクセスした時刻を格納する。
なお、付帯情報42、優先度43、アクセス時間44は、蓄積部14以外の記憶装置に、データ内容41と対応付けられて記憶されていても良い。
図3は、データキャッシュ装置20のデータアクセスの動作フローチャートである。
先ず、制御部12は、入力部10からデータ要求を受け付け、位置と縮尺を特定して取得部13に地図データを要求する(S1)。
データ要求は、例えば、ユーザがキーパッドから明示的に入力した位置と縮尺を包含する。データ要求は、例えば、GPS装置から入力した現在位置と過去にキーパッドから入力された縮尺を包含していても良い。データキャッシュ装置20がカーナビ装置である場合、制御部12は、現在位置だけ入力して、目的地との距離を計算して、距離に応じて縮尺を算出しても良い。
取得部13は、要求された位置と縮尺のデータ内容41が蓄積部14に既に格納されているかをチェックする(S2)。チェックは、付帯情報42を使用しても良いし、既存の他のデータキャッシュ技術を用いても良い。
既に格納されている場合(S2でY)、取得部13は、データ内容41を制御部12経由で、出力部11に出力し(S9)、当該データ項目40の優先度43及びアクセス時刻44を更新して(S10)、動作を終了する。優先度43は、例えば、最低優先度に更新される。優先度43は、更新されなくても良い。
要求された位置と縮尺のデータ内容41が蓄積部14に格納されていない場合(S2でN)、取得部13は、要求された位置を含む位置範囲と縮尺を指定して、地図データをデータ供給装置30から入力して(S3)、制御部12経由で出力部11に出力する(S4)。位置範囲の大きさは、例えば、データキャッシュ装置20に与えられたシステムパラメータで指定される。
蓄積部14に空き容量がある場合(S5でY)、取得部13は、読み込んだデータ内容41を蓄積部14に格納し、優先度43及びアクセス時刻44を設定する(S7)。優先度43は、初期値として、例えば、最低優先度に設定される。
その後、取得部13は、データ供給装置30に出力した、位置範囲と縮尺を付帯情報42に格納して(S8)、動作を終了する。
蓄積部14に空き容量が無い場合(S5でN)、取得部13から依頼を受けた棄却部15が、優先度43が最も低いデータ項目40を蓄積部14から棄却する(S6)。
図4は、優先度計算部16の動作フローチャートである。本動作は、例えば、図3のデータアクセスと並行して行われる。本動作は、データ棄却(図3のS6)の前段の処理として行われても良い。
優先度計算部16は、蓄積部14に蓄積されているデータ項目40の中から、アクセス時刻44が最も古いものから所定数のデータ項目40を選択する(A1)。この時、優先度計算部16は、選択されたデータ項目40群によるデータ量が棄却すべきデータ量(所定値または追加されるデータ)よりも大きくなるようにデータ項目40を選択する。
優先度計算部16は、選択されたデータ項目40の1つ1つに対して、ステップA3からステップA6までの処理を行う(A2)。
優先度計算部16は、まず、距離取得部17を用いて、現在、出力部11に出力されているデータ項目40と当該データ項目40の間の距離Nを求める(A3)。距離取得部17は、現在、出力部11に出力されているデータ項目40を制御部12から得る。
地図データが一定距離の長方形のメッシュで分割されている場合、距離取得部17は、2つのデータ項目40の付帯情報42に格納されている緯度経度の範囲から、一方から他方へ到達するまでに経由するメッシュの個数を求め、その個数を距離Nとして出力する。
距離取得部17は、距離Nを、次のように近似的に計算しても良い。距離取得部17は、例えば、2つのデータ項目40の付帯情報42に格納されている緯度経度の範囲の中心点間の距離、または、2つの範囲の近接する2点間の距離を計算する。距離取得部17は、計算した距離を縮尺に応じた所定の単位距離で割った数を距離Nとして出力する。
即ち、距離Nは、2つのデータ項目40の付帯情報42に格納されている緯度経度の範囲が離れるほど、大きくなる値である。
次に、優先度計算部16は、要約度取得部18を用いて、当該データ項目40の要約度Mを求める(A4)。要約度取得部18は、例えば、当該データ項目40の付帯情報42に格納されている縮尺から算出する。
要約度取得部18は、データ供給装置30に格納されている最も縮尺の大きい地図データの要約度Mを1として、それよりも縮尺の小さい地図データの要約度Mはその倍数とする。例えば、1/1000の地図の要約度Mを1とした場合、1/10000の地図の要約度は10とする。
即ち、要約度Mは、データ項目40の付帯情報42に格納されている縮尺が小さくなる(包含される行政単位等の数が大きくなる)ほど、大きくなる値である。
次に、優先度計算部16は、消費速度取得部19を用いて、当該データ項目40の消費速度Vを求める(A5)。消費速度取得部19は、例えば、当該データ項目40の付帯情報42に格納されている縮尺と、データキャッシュ装置20が搭載されている自動車等の速度から算出する。
消費速度取得部19は、当該自動車等の速度を、当該自動車等の速度計測器から得ても良いし、制御部12から得ても良い。制御部12は、例えば、入力部10であるGPS装置から位置情報を継続的に入力し、データキャッシュ装置20が搭載されている自動車等の速度を測定し、消費速度取得部19に出力する。
消費速度取得部19は、例えば、要約度Mが1の地図データの全幅を自動車が移動する速度を1000秒とする場合には1/1000=0.001を消費速度Vとする。
即ち、消費速度Vは、ユーザがデータ項目40のデータ内容41を必要とする時間が短いほど、大きくなる値である。
優先度計算部16は、求めた距離N、要約度M、消費速度Vを元に当該データ項目40の優先度43を決定し、蓄積部14に格納する(A6)。重要度43は、距離Nがより大きく、要約度Mがより小さく、消費速度Vがより大きいほど、高く(棄却され易く)なるような算出を行う。
優先度計算部16は、例えば、優先度43=距離N×消費速度V÷要約度Mとする。この場合、優先度43は、値が大きいほど高くなる。優先度計算部16は、値が小さいほど高くなるような算出方法を採用しても良い。
なお、優先度43は、距離N、要約度M、消費速度Vのいずれかのみ、または、何れか2つの組み合わせに基づいて決定しても良い。
本実施形態のデータキャッシュ装置20は、キャッシュされる地図データのヒット率および公平性を向上させることが出来る。
その理由は、優先度計算部16が、各地図データの位置や縮尺に基づいて、蓄積部14から棄却する優先度43を算出するからである。
<第2の実施形態>
図5は、第2の実施形態のデータキャッシュ装置20の構成を示す。本実施形態のデータキャッシュ装置20は、例えば、Webページ等の電子ドキュメント(以降、Webページ)を表示する、コンピュータや携帯端末装置である。本実施形態のデータキャッシュ装置20は、以下に説明する点に於いて、第1の実施形態と相異する。他の点は、第1の実施形態と同じである。
入力部10は、キーパッド等でも良いし、キーボードやマウス等でも良い。データ供給装置30は、データキャッシュ装置20とネットワーク50等を介して接続されるWebサーバ等のWebページ格納装置である。
本実施形態のデータキャッシュ装置20は、プロファイル記憶部1Aを備えても良い。プロファイル記憶部1Aは、半導体メモリ、ディスク装置等の記憶装置である。プロファイル記憶部1Aは、例えば、ユーザのWebページの使用速度(読む速さ:単位時間当たりの読む文字数、等)がWebページ内容の種別(例えば、小説、学術書等のジャンル)ごとに包含する。これらの値は、ユーザが過去の経験や実測に基づいてプロファイル記憶部1Aに格納する。
図6は、第2の実施形態の蓄積部14が記憶する情報を示す。付帯情報42は、例えば、Webページであるデータ内容41が格納されているURL(Uniform Resource Locator)等のアドレス(以降、URL)、及びデータ内容41が包含する他のWebページへのURLで記載されたリンク情報である。
付帯情報42は、データ内容41に包含される情報単位数であってもよい。情報単位は、例えば、新聞における各ニュース記事であり、商品パンフレットにおける商品ごとの説明記載である。
付帯情報42は、データ内容41の種類、データ内容41に包含される文字数であっても良い。
本実施形態のデータキャッシュ装置20のデータアクセスの動作フローチャートも、図3で示される。以下、第1の実施形態と差異がある部分を中心に、説明する。
先ず、制御部12は、入力部10からデータ要求を受け付け、URLを特定して取得部13にWebページを要求する(S1)。データ要求は、例えば、ユーザがキーボード等から明示的に入力したURLを包含する。
取得部13は、要求されたURLのデータ内容41が蓄積部14に既に格納されているかをチェックする(S2)。
要求されたURLのデータ内容41が蓄積部14に格納されていない場合(S2でN)、取得部13は、要求されたURLを指定して、Webページをデータ供給装置30から入力して(S3)、制御部12経由で出力部11に出力する(S4)。
蓄積部14に空き容量がある場合(S5でY)、取得部13は、読み込んだデータ内容41を蓄積部14に格納し、優先度43及びアクセス時刻44を設定する(S7)。その後、取得部13は、付帯情報42を格納して(S8)、動作を終了する。
取得部13は、例えば、付帯情報42を以下のように取得して、格納する。
1)「当該データ内容41が格納されているURL」(自URL)は、URLデータ供給装置30に出力したURLである。
2)「当該データ内容41が包含するリンク情報」は、取得部13がデータ内容41のHTML(Hypertext Markup Language)のタグをキーにして、または、テキストを走査して抽出する。
3)「情報単位数」は、データ内容41のHTML記述から取得する。この情報単位数は、Webページの作成者がHTMLに予め記述しているものとする。または、取得部13が、通信社名等の単語、特定の言い回しをキーに、データ内容41のテキストからニュースヘッドラインを抽出して取得しても良い。取得部13がデータ供給装置30から、Webページの属性として取得しても良い。
4)「Webページの種別」は、取得部13がHTML記述から取得する。この種別は、Webページの作成者がHTMLに予め記述しているものとする。または、取得部13が、データ内容41のテキストを走査して文体、発生単語の頻度等から推定しても良い。取得部13がデータ供給装置30から、Webページの属性として取得しても良い。
5)「Webページの文字数」は、取得部13が、データ内容41のテキストを走査して取得する。
本実施形態の優先度計算部16の動作フローチャートも、図4で示される。以下、第1の実施形態と差異がある部分について、説明する。
優先度計算部16は、距離取得部17を用いて、現在、出力部11に出力されているデータ項目40と当該データ項目40の間の距離Nを求める(A3)。本実施の形態に於いては、現在、出力部11に出力されているデータ項目40から当該データ項目40にN個のリンクを辿ることで到達できる場合には距離Nであるとする。
距離取得部17は、現在、出力部11に出力されているデータ項目40の付帯情報42に格納されている「当該データ内容41が包含するリンク情報」から、順次他のデータ項目40を辿り、当該データ項目40に到達するまでのリンク数を取得する。
距離取得部17は、この処理の効率化のため、予め逆方向リンクを有する、リンクの木構造を図示されない記憶域に作成しておいても良い。
次に、優先度計算部16は、要約度取得部18を用いて、当該データ項目40の要約度Mを求める(A4)。要約度取得部18は、例えば、当該データ項目40の付帯情報42に格納されている「情報単位数」を要約度Mとする。
次に、優先度計算部16は、消費速度取得部19を用いて、当該データ項目40の消費速度Vを求める(A5)。消費速度取得部19は、例えば、当該データ項目40の付帯情報42中の「Webページの種別」、「Webページの文字数」と、プロファイル記憶部1Aに格納されている、Webページ内容の種種類ごとのユーザのWebページの使用速度から求める。
要約度取得部18は、例えば、「Webページの文字数」を「Webページの種別」に対応するWebページの使用速度で割って、使用時間を求める。使用時間が100秒であれば、要約度取得部18は、1秒あたりのデータ項目40の消費速度Vは1/100=0.01と算出する。なお、消費速度Vは、「Webページの種別」毎に固定値としても良い。
さらに、要約度Mや消費速度Vは、各Webページの作成者が、Webページごとに属性として付与し、各ページのHTMLに記述等しておいても良い。
なお、上記説明では、データ取得部13が、データ内容41等から付帯情報42を抽出し、蓄積部14に格納することとしたが、距離N、要約度M、消費速度Vを求めるときに、優先度計算部16が、同等の情報をデータ内容41等から抽出しても良い。また、優先度計算部16は、自ら、距離N、要約度M、消費速度Vを求めても良く、必ずしも、距離所得部17、要約度取得部18、消費速度取得部19を個別に備えている必要はない。
本実施形態のデータキャッシュ装置20は、キャッシュされるWebページ等の電子ドキュメントのヒット率および公平性を向上させることが出来る。
その理由は、優先度計算部16が、電子ドキュメントのリンク情報や包含情報単位数、包含文字数等に基づいて、蓄積部14から棄却する優先度43を算出するからである。
<第3の実施形態>
第3の実施形態のデータキャッシュ装置20は、第1と第2の実施形態のデータキャッシュ装置20の構成を併せ持つ。本実施形態のデータキャッシュ装置20は、以下に説明する点に於いて、第1及び第2の実施形態と相異する。他の点は、第1または第2の実施形態と同じである。
入力部10は、GPS装置とキーパッド等である。入力部10は、GPS装置、キーボードとマウス等でも良い。データ供給装置30は、例えば、地図データを格納したCD−ROMリーダ若しくはDVD−ROMリーダ等、並びに、ネットワーク50を介して接続されたWebサーバを併用する。
従って、本実施形態のデータキャッシュ装置20の蓄積部14は、例えば、地図データとWebページを混在させて蓄積する。本実施形態のデータキャッシュ装置20は、例えば、スマートフォン、携帯型情報端末である。
本実施形態のデータキャッシュ装置20は、図3のS8や図4のA3乃至A5において、データ項目40が地図データであるか、Webページであるかに応じて、格納付帯情報42の内容や、距離N、要約度M、消費速度Vの取得方法を切り替える。データキャッシュ装置20は、データ項目40が地図データであれば第1の実施形態と同様に、Webページであれば第2の実施形態と同様に処理する。
本実施形態のデータキャッシュ装置20は、キャッシュされる多様なデータのヒット率および公平性を向上させることが出来る。その理由は、優先度計算部16が、データ項目40の内部状態を、データ項目40の種別に依存しない、距離N、要約度M、消費速度Vの3つの尺度を用いて評価し、それらに基づいて、蓄積部14からの棄却優先度43を決定するからである。
<第4の実施形態>
本実施形態のデータキャッシュ装置20は、複数のデータ項目40を記憶する蓄積部14と優先度計算部16を備える。優先度計算部16は、複数のデータ項目40の各々のデータ内容41に基づいて、各データ項目40対応に当該データ項目40を蓄積部14から棄却する優先度43を決定する。
データキャッシュ装置20は、キャッシュされるデータ項目40のヒット率および公平性を向上させることが出来る。その理由は、優先度計算部16が、各データ項目40のデータ内容41に基づいて、蓄積部14から棄却する優先度43を算出するからである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
<実施の形態の他の表現>
上記の実施形態、実施例の一部又は全部は以下のようにも記載されうるが、以下には限られない。
(付記1)
複数の第1データ項目を記憶する蓄積手段と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える、データキャッシュ装置。
(付記2)
前記優先度決定手段は、第2データ項目の内容と、前記複数の第1データ項目の各々の内容に基づいて、第2データ項目と、前記複数の第1データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、付記1のデータキャッシュ装置。
(付記3)
前記第1及び第2データ項目の内容は、位置に依存したデータであり、
前記優先度決定手段は、前記第2データ項目の位置と前記複数の第1データ項目の各々の位置とに基づいて前記距離を求める、付記2のデータキャッシュ装置。
(付記4)
前記複数の第1データ項目の内容の各々は、前記第2データ項目の内容から直接、または他の第1データ項目の内容を経由してリンクされているデータであり、
前記優先度決定手段は、前記第2データ項目から前記複数の第1データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、付記2のデータキャッシュ装置。
(付記5)
前記複数の第1データ項目のおのおのは1以上の情報単位を包含し、
前記優先度決定手段は、前記複数の第1データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、付記1乃至4のいずれかのデータキャッシュ装置。
(付記6)
前記複数の第1データ項目のおのおのは地図データであり、
前記優先度決定手段は、縮尺が大きいほど第1データ項目の前記優先度を高くする、付記5のデータキャッシュ装置。
(付記7)
前記優先度決定手段は、前記複数の第1データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、付記1乃至6の何れかのデータキャッシュ装置。
(付記8)
前記優先度決定手段は、前記複数の第1データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、付記8のデータキャッシュ装置。
(付記9)
コンピュータに、前記コンピュータが備える蓄積手段に、複数の第1データ項目を記憶する蓄積処理と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる、プログラム。
(付記10)
前記コンピュータに、第2データ項目の内容と、前記複数の第1データ項目の各々の内容に基づいて、第2データ項目と、前記複数の第1データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、前記優先度決定処理を実行させる付記9のプログラム。
(付記11)
前記第1及び第2データ項目の内容は、位置に依存したデータであり、
前記コンピュータに、前記第2データ項目の位置と前記複数の第1データ項目の各々の位置とに基づいて前記距離を求める前記優先度決定処理を実行させる付記10のプログラム。
(付記12)
前記複数の第1データ項目の内容の各々は、前記第2データ項目の内容から直接、または他の第1データ項目の内容を経由してリンクされているデータであり、
前記コンピュータに、前記第2データ項目から前記複数の第1データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、前記優先度決定処理を実行させる、付記10のプログラム。
(付記13)
前記複数の第1データ項目のおのおのは1以上の情報単位を包含し、
前記コンピュータに、前記複数の第1データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする前記優先度決定処理を実行させる、付記9乃至12のいずれかのプログラム。
(付記14)
前記複数の第1データ項目のおのおのは地図データであり、
前記コンピュータに、縮尺が大きいほど第1データ項目の前記優先度を高くする前記優先度決定処理を実行させる、付記13のプログラム。
(付記15)
前記コンピュータに、前記複数の第1データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする前記優先度決定処理を実行させる、付記9乃至14の何れかのプログラム。
(付記16)
前記コンピュータに、前記複数の第1データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する前記優先度決定処理を実行させる、付記15のプログラム。
(付記17)蓄積手段に複数の第1データ項目を記憶し、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定するキャッシュ方法。
(付記18)
第2データ項目の内容と、前記複数の第1データ項目の各々の内容に基づいて、第2データ項目と、前記複数の第1データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、付記17のキャッシュ方法。
(付記19)
前記第1及び第2データ項目の内容は、位置に依存したデータであり、
前記第2データ項目の位置と前記複数の第1データ項目の各々の位置とに基づいて前記距離を求める、付記18のキャッシュ方法。
(付記20)
前記複数の第1データ項目の内容の各々は、前記第2データ項目の内容から直接、または他の第1データ項目の内容を経由してリンクされているデータであり、
前記第2データ項目から前記複数の第1データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、付記18のキャッシュ方法。
(付記21)
前記複数の第1データ項目のおのおのは1以上の情報単位を包含し、
前記複数の第1データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、付記17乃至20のいずれかのキャッシュ方法。
(付記22)
前記複数の第1データ項目のおのおのは地図データであり、
縮尺が大きいほど第1データ項目の前記優先度を高くする、付記21のキャッシュ方法。
(付記23)
前記複数の第1データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、付記17乃至22の何れかのキャッシュ方法。
(付記24)
前記複数の第1データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、付記23のキャッシュ方法。
この出願は、2010年9月8日に出願された日本出願特願2010−201088を基礎とする優先権を主張し、その開示の全てをここに取り込む。 <First Embodiment>
FIG. 1 shows the configuration of the data cache device 20 of this embodiment. The data cache device 20 of the present embodiment is, for example, an in-vehicle map display device such as a car navigation device that is loaded on an automobile or the like and displays a map.
The data cache device 20 includes a
The
The
The distance N is the number of
The summarization degree M represents the size of the number of information units (for example, the number of articles in a news page or the like, a product posted in a pamphlet) included in the
The consumption speed V represents the speed at which the
Specific examples and calculation methods of the
The data cache device 20 may include an
The
For example, the
The
The
Here, the
FIG. 2 shows information stored in the
Each
The
The
The
The
FIG. 3 is an operation flowchart of data access of the data cache device 20.
First, the
The data request includes, for example, the position and scale explicitly entered by the user from the keypad. The data request may include, for example, a current position input from the GPS device and a scale input from the keypad in the past. When the data cache device 20 is a car navigation device, the
The
If already stored (Y in S2), the
When the
When there is free space in the storage unit 14 (Y in S5), the
Thereafter, the
When there is no free space in the storage unit 14 (N in S5), the
FIG. 4 is an operation flowchart of the
The
The
First, the
When the map data is divided by a rectangular mesh of a certain distance, the
The
That is, the distance N is a value that increases as the latitude / longitude range stored in the
Next, the
The summarization
That is, the summarization degree M is a value that increases as the scale stored in the
Next, the
The consumption
For example, the consumption
That is, the consumption speed V is a value that increases as the time for which the user needs the
The
For example, the
The
The data cache device 20 of this embodiment can improve the hit rate and fairness of cached map data.
The reason is that the
<Second Embodiment>
FIG. 5 shows the configuration of the data cache device 20 of the second embodiment. The data cache device 20 of the present embodiment is, for example, a computer or a mobile terminal device that displays an electronic document such as a web page (hereinafter, web page). The data cache device 20 of the present embodiment is different from the first embodiment in the points described below. Other points are the same as in the first embodiment.
The
The data cache device 20 of this embodiment may include a
FIG. 6 shows information stored in the
The
The
An operation flowchart of data access of the data cache device 20 of this embodiment is also shown in FIG. In the following, description will be made focusing on the parts that are different from the first embodiment.
First, the
The
When the
When there is free space in the storage unit 14 (Y in S5), the
For example, the
1) “URL where the
2) The “link information included in the
3) “Number of information units” is acquired from the HTML description of the
4) The “Web page type” is acquired from the HTML description by the
5) The “number of characters on the Web page” is acquired by the
An operation flowchart of the
The
The
The
Next, the
Next, the
For example, the summarization
Further, the summary level M and the consumption speed V may be given as attributes for each Web page by the creator of each Web page and described in the HTML of each page.
In the above description, the
The data cache device 20 of the present embodiment can improve the hit rate and fairness of electronic documents such as Web pages to be cached.
The reason is that the
<Third Embodiment>
The data cache device 20 of the third embodiment has the configuration of the data cache device 20 of the first and second embodiments. The data cache device 20 of the present embodiment is different from the first and second embodiments in the points described below. Other points are the same as those in the first or second embodiment.
The
Accordingly, the
The data cache device 20 according to the present embodiment includes the contents of the storage
The data cache device 20 of this embodiment can improve the hit rate and fairness of various data to be cached. The reason is that the
<Fourth Embodiment>
The data cache device 20 according to the present embodiment includes an
The data cache device 20 can improve the hit rate and fairness of the
Although the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
<Other expressions of the embodiment>
Although part or all of said embodiment and an Example may be described as follows, it is not restricted to the following.
(Appendix 1)
Storage means for storing a plurality of first data items;
A data cache device comprising priority determining means for determining a priority for rejecting the first data item from the storage means corresponding to each first data item based on the contents of each of the plurality of first data items.
(Appendix 2)
The priority determination means obtains a distance between the second data item and each of the plurality of first data items based on the content of the second data item and each of the plurality of first data items. The data cache device according to appendix 1, wherein the priority is increased as the distance is longer.
(Appendix 3)
The contents of the first and second data items are position-dependent data,
The data cache device according to appendix 2, wherein the priority determination means obtains the distance based on a position of the second data item and a position of each of the plurality of first data items.
(Appendix 4)
Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
The data cache device according to appendix 2, wherein the priority determination means obtains, as the distance, the number of links through which the second data item reaches each of the plurality of first data items.
(Appendix 5)
Each of the plurality of first data items includes one or more information units;
The data cache device according to any one of appendices 1 to 4, wherein the priority determination means increases the priority as the number of information units included in the plurality of first data items decreases.
(Appendix 6)
Each of the plurality of first data items is map data;
The data cache device according to appendix 5, wherein the priority determination means increases the priority of the first data item as the scale is larger.
(Appendix 7)
The data cache device according to any one of appendices 1 to 6, wherein the priority determination means increases the priority as the consumption speed of the contents of each of the plurality of first data items increases.
(Appendix 8)
The data cache device according to appendix 8, wherein the priority determination means determines the priority based on a content type and a number of characters of each of the plurality of first data items.
(Appendix 9)
A storage process for storing a plurality of first data items in a storage means provided in the computer;
A program for executing a priority determination process for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items.
(Appendix 10)
Based on the content of the second data item and the content of each of the plurality of first data items, the computer determines a distance between the second data item and each of the plurality of first data items, and the distance The program according to appendix 9, wherein the priority determination process is executed such that the longer the is, the higher the priority is.
(Appendix 11)
The contents of the first and second data items are position-dependent data,
The program according to
(Appendix 12)
Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
The program according to
(Appendix 13)
Each of the plurality of first data items includes one or more information units;
The program according to any one of appendices 9 to 12, which causes the computer to execute the priority determination process for increasing the priority as the number of information units included in the plurality of first data items decreases.
(Appendix 14)
Each of the plurality of first data items is map data;
The program according to
(Appendix 15)
The program according to any one of appendices 9 to 14, which causes the computer to execute the priority determination process for increasing the priority as the consumption speed of the contents of each of the plurality of first data items increases.
(Appendix 16)
The program according to
(Supplementary Note 17) A plurality of first data items are stored in the storage means,
A cache method for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items.
(Appendix 18)
Based on the content of the second data item and the content of each of the plurality of first data items, the distance between the second data item and each of the plurality of first data items is determined, and the longer the distance, The cache method according to
(Appendix 19)
The contents of the first and second data items are position-dependent data,
The cache method according to
(Appendix 20)
Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
The cache method according to
(Appendix 21)
Each of the plurality of first data items includes one or more information units;
The cache method according to any one of
(Appendix 22)
Each of the plurality of first data items is map data;
The cache method according to appendix 21, wherein the priority of the first data item is increased as the scale is larger.
(Appendix 23)
The cache method according to any one of
(Appendix 24)
The cache method according to appendix 23, wherein the priority is determined based on a content type and a number of characters of each of the plurality of first data items.
This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2010-201088 for which it applied on September 8, 2010, and takes in those the indications of all here.
10 入力部
11 出力部
12 制御部
13 取得部
14 蓄積部
15 棄却部
16 優先度計算部
17 距離取得部
18 要約度取得部
19 消費速度取得部
1A プロファイル記憶部
20 データキャッシュ装置
30 データ供給装置
40 データ項目
41 データ内容
42 付帯情報
43 優先度
44 アクセス時刻
50 ネットワーク DESCRIPTION OFSYMBOLS 10 Input part 11 Output part 12 Control part 13 Acquisition part 14 Accumulation part 15 Rejection part 16 Priority calculation part 17 Distance acquisition part 18 Summarization degree acquisition part 19 Consumption speed acquisition part 1A Profile memory | storage part 20 Data cache apparatus 30 Data supply apparatus 40 Data item 41 Data content 42 Attached information 43 Priority 44 Access time 50 Network
11 出力部
12 制御部
13 取得部
14 蓄積部
15 棄却部
16 優先度計算部
17 距離取得部
18 要約度取得部
19 消費速度取得部
1A プロファイル記憶部
20 データキャッシュ装置
30 データ供給装置
40 データ項目
41 データ内容
42 付帯情報
43 優先度
44 アクセス時刻
50 ネットワーク DESCRIPTION OF
Claims (10)
- 複数の第1データ項目を記憶する蓄積手段と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定手段を備える、データキャッシュ装置。 Storage means for storing a plurality of first data items;
A data cache device comprising priority determining means for determining a priority for rejecting the first data item from the storage means corresponding to each first data item based on the contents of each of the plurality of first data items. - 前記優先度決定手段は、第2データ項目の内容と、前記複数の第1データ項目の各々の内容に基づいて、第2データ項目と、前記複数の第1データ項目の各々との距離を求め、前記距離が長いほど、前記優先度を高くする、請求項1のデータキャッシュ装置。 The priority determination means obtains a distance between the second data item and each of the plurality of first data items based on the content of the second data item and the contents of each of the plurality of first data items. The data cache device according to claim 1, wherein the priority is set higher as the distance is longer.
- 前記第1及び第2データ項目の内容は、位置に依存したデータであり、
前記優先度決定手段は、前記第2データ項目の位置と前記複数の第1データ項目の各々の位置とに基づいて前記距離を求める、請求項2のデータキャッシュ装置。 The contents of the first and second data items are position-dependent data,
3. The data cache device according to claim 2, wherein the priority determination unit obtains the distance based on a position of the second data item and a position of each of the plurality of first data items. - 前記複数の第1データ項目の内容の各々は、前記第2データ項目の内容から直接、または他の第1データ項目の内容を経由してリンクされているデータであり、
前記優先度決定手段は、前記第2データ項目から前記複数の第1データ項目の各々に到達する迄に経由するリンク数を前記距離として求める、請求項2のデータキャッシュ装置。 Each of the contents of the plurality of first data items is data linked directly from the contents of the second data item or via the contents of other first data items,
3. The data cache device according to claim 2, wherein the priority determination unit obtains, as the distance, the number of links through which the second data item reaches each of the plurality of first data items. - 前記複数の第1データ項目のおのおのは1以上の情報単位を包含し、
前記優先度決定手段は、前記複数の第1データ項目が包含する情報単位の数が少ないほど、前記優先度を高くする、請求項1乃至4のいずれかのデータキャッシュ装置。 Each of the plurality of first data items includes one or more information units;
5. The data cache device according to claim 1, wherein the priority determination unit increases the priority as the number of information units included in the plurality of first data items decreases. - 前記複数の第1データ項目のおのおのは地図データであり、
前記優先度決定手段は、縮尺が大きいほど第1データ項目の前記優先度を高くする、請求項5のデータキャッシュ装置。 Each of the plurality of first data items is map data;
6. The data cache device according to claim 5, wherein the priority determination means increases the priority of the first data item as the scale is larger. - 前記優先度決定手段は、前記複数の第1データ項目のおのおのの内容の消費速度が高いほど、前記優先度を高くする、請求項1乃至6の何れかのデータキャッシュ装置。 The data cache device according to any one of claims 1 to 6, wherein the priority determination means increases the priority as the consumption speed of the contents of the plurality of first data items increases.
- 前記優先度決定手段は、前記複数の第1データ項目のおのおのの内容の種別及び文字数に基づいて、前記優先度を決定する、請求項8のデータキャッシュ装置。 The data cache device according to claim 8, wherein the priority determination means determines the priority based on a type and a number of characters of each content of the plurality of first data items.
- コンピュータに、前記コンピュータが備える蓄積手段に、複数の第1データ項目を記憶する蓄積処理と、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定する優先度決定処理を実行させる、プログラム。 A storage process for storing a plurality of first data items in a storage means provided in the computer;
A program for executing a priority determination process for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items. - 蓄積手段に複数の第1データ項目を記憶し、
前記複数の第1データ項目の各々の内容に基づいて、各第1データ項目対応に当該第1データ項目を前記蓄積手段から棄却する優先度を決定するキャッシュ方法。 Storing a plurality of first data items in the storage means;
A cache method for determining a priority for rejecting the first data item from the storage unit corresponding to each first data item based on the contents of each of the plurality of first data items.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012532923A JPWO2012032921A1 (en) | 2010-09-08 | 2011-08-16 | Data cache device, data cache method and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010-201088 | 2010-09-08 | ||
JP2010201088 | 2010-09-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012032921A1 true WO2012032921A1 (en) | 2012-03-15 |
Family
ID=45810524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2011/068819 WO2012032921A1 (en) | 2010-09-08 | 2011-08-16 | Data cache device, data cache method and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2012032921A1 (en) |
WO (1) | WO2012032921A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1078901A (en) * | 1996-09-04 | 1998-03-24 | Sumitomo Electric Ind Ltd | Cache memory device and cache control method |
JP2001229493A (en) * | 2000-02-16 | 2001-08-24 | Fujitsu Ten Ltd | Automobile navigation system |
JP2004334779A (en) * | 2003-05-12 | 2004-11-25 | Sharp Corp | Electronic device |
-
2011
- 2011-08-16 JP JP2012532923A patent/JPWO2012032921A1/en not_active Withdrawn
- 2011-08-16 WO PCT/JP2011/068819 patent/WO2012032921A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1078901A (en) * | 1996-09-04 | 1998-03-24 | Sumitomo Electric Ind Ltd | Cache memory device and cache control method |
JP2001229493A (en) * | 2000-02-16 | 2001-08-24 | Fujitsu Ten Ltd | Automobile navigation system |
JP2004334779A (en) * | 2003-05-12 | 2004-11-25 | Sharp Corp | Electronic device |
Also Published As
Publication number | Publication date |
---|---|
JPWO2012032921A1 (en) | 2014-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9129012B2 (en) | Information search system with real-time feedback | |
CN103793439B (en) | A kind of real-time retrieval information acquisition method, device and server | |
US20110258202A1 (en) | Concept extraction using title and emphasized text | |
JP6185379B2 (en) | RECOMMENDATION DEVICE AND RECOMMENDATION METHOD | |
CA3154763A1 (en) | Data operation method, device and system | |
JPWO2008152765A1 (en) | Navigation device | |
JP6157965B2 (en) | Electronic device, method, and program | |
CN104270471A (en) | Method, device and system for achieving new function reminding | |
CN113515687B (en) | Logistics information acquisition method and device | |
US20150127813A1 (en) | Contextual browser composition and knowledge organization | |
US10282482B2 (en) | Data provision device, data provision method, and data provision program | |
CN104615620A (en) | Map search type identification method and device and map search method and system | |
US10387413B2 (en) | Search result evaluation system, navigation system and search result evaluation method | |
WO2012032921A1 (en) | Data cache device, data cache method and program | |
KR101132220B1 (en) | Method, system and computer-readable recording medium for providing web page using cache | |
JP2006155275A (en) | Information extraction method and information extraction device | |
KR20150068256A (en) | Method and apparatus for managing web browser history | |
CN103902687A (en) | Search result generating method and search result generating device | |
JP2008040869A (en) | Point information evaluation system, point information evaluation program | |
JP2013045415A (en) | Topic word acquisition device, method, and program | |
CN113343130B (en) | Model training method, information display method and device | |
JP2008287636A (en) | Information processor, bookmark display method, and bookmark display program | |
CN118296445B (en) | Social media data acceleration calculation method and device | |
US20180129743A1 (en) | Method for displaying information complementary to a search entry carried out in a first database | |
JP2012128802A (en) | Retrieval algorithm evaluation system |
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: 11823400 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2012532923 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: 11823400 Country of ref document: EP Kind code of ref document: A1 |