JP6165580B2 - Content distribution apparatus and content distribution method for content distribution apparatus - Google Patents

Content distribution apparatus and content distribution method for content distribution apparatus Download PDF

Info

Publication number
JP6165580B2
JP6165580B2 JP2013208713A JP2013208713A JP6165580B2 JP 6165580 B2 JP6165580 B2 JP 6165580B2 JP 2013208713 A JP2013208713 A JP 2013208713A JP 2013208713 A JP2013208713 A JP 2013208713A JP 6165580 B2 JP6165580 B2 JP 6165580B2
Authority
JP
Japan
Prior art keywords
file
request
content distribution
program
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013208713A
Other languages
Japanese (ja)
Other versions
JP2015072643A (en
Inventor
賢 野村
賢 野村
稔 宇留島
稔 宇留島
Original Assignee
株式会社 日立産業制御ソリューションズ
株式会社 日立産業制御ソリューションズ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社 日立産業制御ソリューションズ, 株式会社 日立産業制御ソリューションズ filed Critical 株式会社 日立産業制御ソリューションズ
Priority to JP2013208713A priority Critical patent/JP6165580B2/en
Publication of JP2015072643A publication Critical patent/JP2015072643A/en
Application granted granted Critical
Publication of JP6165580B2 publication Critical patent/JP6165580B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

  The present invention relates to a technology for distributing contents such as audio data and video data via a network.

  In recent years, content distribution technology has become an important technology that supports social infrastructure. All kinds of information such as newspapers, books, music, and videos are converted into electronic data and distributed. As described above, there are various types of electronic data in the content distributed via the network. In particular, video data has a large proportion of the total data amount because the individual data size is large. Is important.

  According to the technique described in Patent Document 1, in the processing of a block I / O request for instructing the disk device to read or write content, the I / O request that requires QoS guarantee The QoS guarantee can be realized by adding time information (deadline) indicating the time limit for completing the O request processing, and preferentially processing the I / O request with no deadline.

US2010-0011182

  Even if trying to achieve QoS guarantee for content distribution using only a combination of conventional technologies, file I / O with time information cannot be converted to block I / O with QoS guarantee, so each OS version has its own file system There is a technical problem that must be developed.

  In order to solve the above-mentioned problems, the present invention acquires means for converting a file I / O with time information into a normal file I / O and information on a file system that is the issue destination of the normal file I / O. And a means for obtaining information on the disk device that is the issuing destination of block I / O of the file system, and how the file I / O is converted into block I / O based on the information of the file system. And a means for adjusting an option associated with the I / O request of the file I / O based on the prediction.

  According to the present invention, a file I / O with time information can be converted into a block I / O with guaranteed QoS using a general file system. In other words, QoS guarantee in content distribution can be realized without developing a unique file system for each OS version.

  Further problems, configurations, and effects other than those described above will become apparent from the following embodiments for implementing the present invention and the accompanying drawings.

It is a figure which shows the structural example of the computer system by 1st Embodiment. It is a figure which shows the operation | movement outline | summary by 1st Embodiment. It is a sequence diagram which shows the upload operation | movement of the content anticipated in 1st Embodiment. FIG. 5 is a sequence diagram illustrating one specific example in which an expected operation is not obtained by simply converting a file I / O with time information into a normal file I / O in the first embodiment. It is a figure which shows the difference of the QoS guaranteed maximum multi-stream performance and normal maximum throughput in 1st Embodiment. It is a sequence diagram which shows the example of an algorithm of the QoS guarantee program in 1st Embodiment. It is a figure which shows the specific example of the I / O request | requirement with time information in 1st Embodiment. It is a figure explaining the processing content of the file system operation | movement prediction program in 1st Embodiment. It is a figure which shows the structural example of the computer system by 2nd Embodiment. It is a figure which shows the structural example of the computer system by 3rd Embodiment. It is a figure which shows the structural example of the computer system by 4th Embodiment.

Hereinafter, examples will be described with reference to the drawings.
FIG. 1 is a diagram showing a configuration example of a computer system according to the first embodiment of the present invention.

  The content distribution server 100 operates when the CPU 111, the network interface 112, the disk 113, and the memory 114 interact to execute a program on the memory. The terminal 101 is connected to the terminal 101 having the same internal configuration via the network interface 112, and the content stored on the disk 113 is distributed to the terminal 101, and the content uploaded from the terminal 101 is transmitted to the disk 113. The content distribution service is realized by storing it in.

  Note that a plurality of content distribution servers 100 and terminals 101 may be connected to each other. For example, one content distribution server 100 distributes content to a plurality of terminals 101, or a plurality of terminals 101 Content can be uploaded to one content distribution server.

  When the content distribution server is activated, the content distribution server loads the program stored in the disk device 113 on the memory 114 and executes it.

  First, the OS program 120 is arranged on the memory 114 and executed. The OS program 120 includes a standard file system program 121 and an I / O relay program 122.

  Next, the content distribution server program 130, the QoS guarantee program 140, and the management program 150 are arranged on the memory 114 and executed. Since these are programs that run on the OS program 120, they are called application programs in distinction from the OS program 120. The content distribution server program 130 is a program that realizes processing for distributing content to the terminal 101 and processing for receiving upload of content from the terminal 101, and includes a file I / O generation program 131 with time information. The QoS guarantee program 140 is a program for realizing QoS guarantee of content, and includes a file I / O conversion program 141, a standard file system information acquisition program 142, a file system operation prediction program 143, and an I / O option adjustment program. 144 and a disk information acquisition program 145. The management program 150 is a program used for managing the content distribution server program 130 and the QoS guarantee program 140. Details of these programs will be described later.

  FIG. 2 is a diagram showing an outline of the operation of the present invention. For example, it is assumed that video content is distributed to the terminal 101 and played back, and video data is sequentially read from the disk 113. At this time, the CPU 111 executes the content distribution server program 130 and executes the file I / O generation program 131 with time information, thereby buffering the playback speed of the video data, the playback position of the video, and the terminal 101 or itself. In consideration of the amount of video data being read, it is possible to calculate a time at which video data to be read is expected to be needed. Therefore, the CPU 111 adds the time information to the file I / O and issues a file I / O request 201 with time information.

  Next, the CPU 111 receives the file I / O request 201 with time information by executing the QoS guarantee program 140. Based on the file system information 210 including the type and setting of the standard file system program 121 and the disk information 220 including information related to the performance of the disk 113, the CPU 111 issues an I / O issue timing for guaranteeing QoS. And the I / O request option are adjusted, and the file I / O request 202 and the file I / O request option 203 are issued.

  The CPU 111 can read the video data from the disk by converting the file I / O request 202 and the file I / O request option 203 into the block I / O request 204 by the standard file system program 121. However, the block I / O request 204 is a block I / O request whose QoS is guaranteed as a result of the adjustment of the issuance timing of the file I / O request 202 and the adjustment of the file I / O request option 203 by the QoS guarantee program 140. A characteristic equivalent to the / O requirement is realized. Therefore, QoS guarantee for content distribution can be realized as a result.

  In the following, details of the process that results in QoS guarantees for block I / O will be described.

  FIG. 3 is a sequence diagram showing the content upload operation expected in the first embodiment of the present invention.

  First, uploading of video data starts when a request for writing is made from the terminal 101 to the content distribution server program 130 operating on the content distribution server 100 (step 301). Then, the CPU 111 issues a file I / O with time information to the I / O relay program 122 included in the OS program 120 by the content distribution server program 130. Then, the CPU 111 relays the file I / O with time information to the QoS guarantee program 140 by the I / O relay program 122 (step 302). Note that with such relaying, there is no problem whether the QoS guarantee program is inside or outside the OS program 120.

  Next, the CPU 111 determines the I / O based on the time information added to the received I / O request by the QoS guarantee program 140, information such as the type and setting of the standard file system program 121, and the performance of the disk 113. The file I / O is issued to the standard file system program 121 via the OS program 120 by adjusting the issuance timing of the O request and the options of the I / O request (step 303).

  Then, the CPU 111 converts the file I / O into the block I / O as expected by the standard file system program 121 (step 304), so that the content data is written to the disk 113 and finally to the terminal 101. The completion of writing is notified (step 305).

  This procedure is the same when content is distributed to the terminal 101. In step 305, content data is returned to the terminal 101 together with a reading completion notice.

  FIG. 4 shows a specific example in which the expected operation is not obtained by simply converting the file I / O with time information into the normal file I / O by the standard file system program 121 in the first embodiment of the present invention. FIG.

  First, uploading of video data is started when a write request is made from the terminal 101 to the content distribution server program 130 (step 401). Then, the file I / O with time information issued by the CPU 111 by the content distribution server program 130 is relayed to the QoS guarantee program 140 via the I / O relay program 122 (step 402). Further, the CPU 111 issues a file I / O to the standard file system program 121 by the QoS guarantee program 140 (step 403).

  At this time, the CPU 111 issues an I / O request as long as the file I / O with time information is converted into a normal file I / O without adjusting the I / O request option by the QoS guarantee program 140. There is no hindrance to doing it. Then, the terminal 101 can be notified of the completion of writing to complete the processing (step 404).

  However, in this case, for example, the CPU 111 may perform delayed writing by caching the data to be written to the disk 113 using the standard file system program 121 (step 405). Further, there is a possibility that the write data is divided into a plurality of times and written at physically different positions on the disk 113 (step 406). Even in reading, I / O completion is not notified before block I / O is executed as in step 404, but there is a possibility that an I / O request to the disk 113 is delayed. Therefore, the QoS is not necessarily processed within the time expected by the QoS guarantee program 140 or the performance of the disk 113 expected by the QoS guarantee program is not necessarily obtained by dividing the I / O request. The warranty fails.

  The standard file system program 121 performs such an operation because it is designed for the purpose of improving the maximum performance in normal data transfer called so-called maximum throughput. Furthermore, it is designed for the purpose of using up the disk capacity as much as possible. Hereinafter, the difference in maximum multi-stream performance when performing maximum throughput and QoS guarantee will be described.

  FIG. 5 is a diagram illustrating the difference between the maximum multistream performance with guaranteed QoS and the normal maximum throughput in the present invention.

  The vertical axis 501 in the figure represents the throughput, and the horizontal axis 502 represents the number of streams. The number of streams is the number of videos that are distributed simultaneously.

  If the content distribution server 100 distributes only one video with a bit rate of 1 Mbps while guaranteeing QoS, the throughput of 1 Mbps is measured (503). If two 1 Mbps videos are distributed while guaranteeing QoS, a throughput of 2 Mbps is measured (504).

  Since QoS guarantee is control for protecting the bit rate of each video, as long as the QoS control is successful, the throughput is a value proportional to the number of streams. If the throughput for the video n + 1 is no longer proportional to the number of streams, the throughput for the video n is called the maximum multi-stream performance 506, which is the maximum performance that can guarantee QoS.

  However, if the QoS guarantee is ignored, it is possible to obtain a higher throughput, and this limit performance is called a maximum throughput 507.

  In general, the standard file system program 121 is designed to increase the maximum throughput. For this purpose, for example, the CPU 111 performs a process called reordering for changing the order of issuing I / O requests. As a result, the timing at which block I / O is issued to the disk may be delayed indefinitely.

  In addition, regarding the data arrangement on the disk, there is a possibility that processing may be performed in which I / O is divided and written to different locations on the disk for the purpose of writing as much data as possible on the same disk.

  In order to improve the maximum multi-stream performance 506, a unique approach for improving performance that is not assumed by the normal control of the standard file system program 121 is required. When guaranteeing QoS, it is the top priority to observe the deadline of individual I / O requests. In order not to degrade the disk performance rather than the disk capacity efficiency, the same content data is kept as continuous as possible on the disk. It is important to record in the area.

  FIG. 6 is a flowchart illustrating an algorithm example of the QoS guarantee program according to the first embodiment.

  The QoS guarantee program 140 is arranged on the memory 114 and started to be executed (step 600). First, the standard file system information acquisition program 142 is called, and the type and format parameters of the standard file system 121 are acquired.

  The CPU 111 uses the standard file system information acquisition program 142 to acquire the information using a function provided by the OS program 120 or a management program attached to the standard file system 121. Format parameters can be specified when formatting a file system or setting file, such as a value called an extent for writing data in a continuous area as much as possible and a value called a block size, which is a unit for writing data. It is a value. However, of course, depending on the implementation of the file system, the value may be set dynamically after the execution of the file system, or may be a constant determined in advance for each file system (step 601).

  Next, the CPU 111 calls the disk information acquisition program 145 to acquire information such as disk response performance.

  The CPU 111 allows the disk information acquisition program 145 to actually issue read I / O requests and write I / O requests of various I / O sizes, and how long the disk device called response performance is I / O. Can be acquired. Further, by acquiring the disk type using the function of the OS program 120, the above performance can be estimated from the average performance for each disk type. Alternatively, the disk performance can also be acquired by storing performance measurement data in a file or the like and reading the file (step 602).

  The above is the preprocessing of the QoS guarantee program 140. These are executed only once after the QoS guarantee program 140 starts executing, and thereafter the following procedure is repeated.

  First, the CPU 111 confirms whether there is a new unprocessed I / O request by the QoS guarantee program 140 (step 603). If it exists, the I / O request is added as an I / O queue called an I / O queue managed by itself (step 604). Note that. There may be multiple I / O queues. For example, I / O requests that require QoS guarantees and I / O requests that do not need QoS are stored separately in separate I / O queues, and I / O queues that require QoS guarantees. It is also possible to preferentially process an I / O request in the I / O queue storing the O request.

  Next, if there are I / O requests for continuous areas in the file among the I / O requests in the I / O queue, they are grouped. For example, if there are two 1 Mbyte I / O requests to the next 1 Mbyte adjacent to the first 1 Mbyte of the same file, they are grouped so that they can be handled as a 2 Mbyte I / O request (step 605). ).

  Further, the I / O requests in the I / O queue are sorted in order from the I / O request with a short grace time until the deadline by referring to the time information added to the I / O request. For the grouped I / O, the I / O request with the shortest grace time among those I / O requests is adopted (step 606).

  Then, it is confirmed whether the grace time of the I / O request with the shortest grace time is below a predetermined threshold. Note that the predetermined threshold indicates a time limit at which an I / O request must be issued, and the disk size when processing an I / O request having the same size as the I / O request acquired in step 602 is shown. It can be calculated by adding a predetermined margin to the response performance data. If it is not below the threshold, the procedure from step 603 is repeated to obtain an opportunity for grouping I / O requests (step 607).

  Conversely, if it is below the threshold, the CPU 111 calls the file system operation prediction program 143 to predict how the standard file system 121 issues block I / O. Then, the I / O option adjustment program 144 is called according to the prediction result to set the options for the file I / O request. At this time, grouped I / O requests are processed together in groups. If a fraction remains in the I / O size in view of the block size and extent size of the standard file system 121, only the other part may be processed while leaving the fraction. Details of this operation will be described later in the description of the file system operation prediction program 143 (step 608).

  Further, the CPU 111 calls the file I / O conversion program 141 to convert the file I / O request with time information into a normal file I / O request. The converted file I / O request is issued to the standard file system program 121 together with the file I / O request option set in step 608 (step 609).

  Finally, the CPU 111 notifies the content distribution server program 130 of the I / O completion via the I / O relay program 122 if there is an I / O request that has already been completed by the I / O request issued to the standard file system 121. . If it is a read request, the read data is also delivered. At this time, the time taken to process the I / O request may be measured, and the response performance information of the disk acquired in step 602 may be updated or corrected using the latest actual value. The latest performance value of the response performance information can be acquired using the management program 150. In addition to the disk response performance, the management program 150 is used to calculate the latest performance values for the program response performance, such as the time from when the QoS guarantee program 140 receives an I / O request until the processing is completed. Can be obtained. If there is no completed I / O request, the procedure from step 603 is repeated (step 610).

  FIG. 7 is a diagram showing a specific example of the file I / O request 201 with time information in the present invention. The file I / O request 201 with time information optionally includes an I / O address 701 indicating the position from the beginning of the file, an I / O size 702 indicating the amount of data read / written by the I / O, and whether writing or reading is performed. A distinct I / O direction 703, an I / O detail option 704 that determines other detailed properties attached to the I / O request, a deadline time 705 at which the I / O must be completed, Consists of an I / O policy 706 that specifies the behavior when an I / O request cannot be processed by the deadline time.

  Among these, the deadline time 705 and the I / O policy 706 are so-called time information. The deadline time may be expressed in any unit of time such as milliseconds or microseconds. Further, since the difference from the current time can be converted into the remaining grace time, the deadline time has the same meaning as the grace time until the deadline. In addition, there are various ways to express deadline time, and it may be expressed by a combination of the starting time and the grace time.For example, the combination of the time when the I / O request is issued and the grace time from the time. It may be.

  The I / O policy is information that specifies a behavior such as whether to discard the I / O request or continue the processing with a delay when the deadline time is exceeded. The CPU 111 can easily convert the file I / O with time information into a normal file I / O by deleting these two pieces of time information by the file I / O conversion program 141. Of course, since the interface and format of the file I / O with time information and the normal file I / O are not necessarily the same, simple conversion of them is necessary.

  In the I / O detailed option 704, an I / O instruction for disabling caching by the standard file system 121, an instruction to turn off delayed writing, and an I / O detailed option 704 are written so that data is written to a continuous area. An instruction to reserve a continuous area on the disk in advance before issuing the / O request is included. These instructions may be given as parameters for commands that actually execute file I / O using an interface that is common to all file systems provided by the OS, or as parameters for other commands. Further, it may be given as a parameter of a completely different independent management program, or may be in the form of rewriting and rereading the initial setting file of the standard file system 121.

  The I / O option adjustment program 144 can control the behavior of the standard file system program 121 using the various methods described above.

  FIG. 8 is a diagram for explaining the processing contents of the file system operation prediction program 143 according to the present invention.

  The horizontal lines of file A, file B, and file C in the figure indicate the offset position from the beginning of the file, and are separated by vertical lines for each block size or extent size of the file system.

  By the way, the file system stores data in a continuous area on the disk according to the block size or the extent size, and which one is used differs depending on the file system. In the case of the block size, the data in the section is always written in a continuous area on the disk, whereas in the case of the extent size, the effort target is different. However, even if extents are used, file I / O types that do not use direct I / O file system buffers can be specified for file I / O, and write areas are reserved in advance as described later. By doing so, it can be guaranteed that data is written in a continuous area. Therefore, the terminology will be unified for the block size, but the explanation will be made including the extent size case.

  When a file I / O (801) having the same size as the block size is issued to a file on a general file system, it is converted into a block I / O (803) of the same size by the file system. In addition, when a file I / O (802) having the same size as a multiple of the block size is issued, it is converted into a block I / O (804) of the same size, or a separate block I / O for each block size. It may be divided into / O.

  The file system operation prediction program 143 can determine whether or not the I / O request is divided by using information on the presence / absence of an I / O request that is being written at the same time as the file system type. This is because it can be divided into three types depending on the type of file system: those with and without division, and those with division when writing simultaneously.

  However, even if a file I / O (805) having the same size as the block size is issued from an offset position that is not a multiple of the block size, the block I / O (806) and block are separated from each other by a multiple of the block size from the beginning of the file. It is divided into I / O (807). This is called I / O request splitting due to mismatched alignment.

  When block I / O is split, each may be written to a separate area on the disk. In particular, in a file system that employs a method called delayed allocation, the data storage destination block is not determined until immediately before the data is actually written to the disk, so that the possibility of such a phenomenon increases. In addition, there is a possibility that the stable disk performance necessary for QoS guarantee cannot be obtained.

  Therefore, the file system operation prediction program 143 determines how to adjust the file I / O options on a case-by-case basis. Specifically, it has a multi-dimensional table that covers different conditions such as file system types as described above on different axes, numbered the specific file I / O option adjustment procedures described below, and the above The above number is held as an element of a multidimensional table. As a result, the number of the file I / O option adjustment procedure that differs depending on the conditions such as the type of the file system can be obtained from the multi-dimensional table, and by passing the number to the I / O option adjustment program 144 as an argument, The I / O option adjustment program 144 can adjust the file I / O option corresponding to the number.

  When the scale of the multi-dimensional table is small, such as when only a specific file system is targeted, the same function can be implemented in the form of a list of conditional branches in the program.

  Also, depending on the type of file system and its settings, there may be cases where there is no appropriate file I / O option adjustment means. In such a case, since QoS cannot be guaranteed, a warning can be issued. Specifically, a warning can be output to an operation log or the like of the QoS guarantee program 140 that can be acquired by using the management program 150, or a mail can be sent to a predetermined mail address, or the warning can be performed by various methods. Also, whether there is a possibility that a warning will occur is that if there is a part that does not contain a number that identifies the adjustment means of the file I / O option in the above multidimensional table, there is a possibility that a warning will occur Since it is self-evident, a check can be performed at the start of the QoS guarantee program 140 to warn that there is a problem in advance.

The details of the file I / O option adjustment will be described below.
First, an adjustment method for eliminating the case where the alignment does not match will be described. Since content distribution basically processes I / O requests sequentially from the beginning of the file, the reason why the alignment does not match is that the file I / O (808) larger than the block size is issued and the block size Two cases are considered where a smaller file I / O (812) is issued.

  In the case of a file I / O (808) larger than the block size, as long as the deadline time of the I / O request is allowed, the next file I / O (809) is waited and the file I / O in multiples of the block size. Try to issue O. If there is no grace time, whether data (810) in a range that is a multiple of the block size is processed first, and file I / O (811) is issued as soon as the next file I / O (809) arrives In the case of writing, it issues a file I / O that fills the lack with blank data called padding and is a multiple of the block size. In the case of reading, assuming that there will be an I / O request for data that will continue in the future, a file I / O that is a multiple of the block size is issued by prefetching an area that has not yet been requested for I / O called prefetch. To do.

  On the other hand, in the case of file I / O (812) smaller than the block size, for example, the next file I / O (813) is padded with the same method as the processing of the fraction of the file I / O (808) larger than the block size. Or, a prefetch (814) is combined to issue a file I / O (815) having a multiple of the block size.

  As described above, depending on the type of file system, even if a file I / O (816) that is a multiple of the block size is issued, the block I / O may be divided into block size units. In such a case, the file I / O is issued after making an area reservation (817) of the same size or larger as the file I / O in advance. For the area reservation method, use a system call for area reservation provided by the OS or file system. If the file system has a delayed write function, set delayed write to OFF. Depending on the type of file system, there are a method to execute the writing process sequentially so that no problem occurs, or a method to create a dummy file with the same size as the entire file and overwrite the file. You can choose the best method.

  All file I / O option adjustment methods other than those described above should be dealt with by assigning a number that identifies the method and storing the number as an element in the appropriate location of the above multidimensional table. I can do it.

  Note that all the internal information of the QoS guarantee program 140 and other programs included in the QoS guarantee program 140 described above can be acquired, rewritten, or added using the management program 150. Specifically, since the information on the memory 114 can be freely read and written by a program using the memory space, the management program 150 uses the inter-program communication function provided by the OS program 120, for example. If the QoS guarantee program 140 provides the information when the guarantee program 140 requests the provision of information, the management program 150 can easily acquire the information of the QoS guarantee program 140.

  Hereinafter, an embodiment different from the first embodiment of the present invention will be described.

  FIG. 9 is a diagram showing a configuration example of a computer system according to the second embodiment of the present invention. In the second embodiment of the present invention, the QoS guarantee program 140 is built in the content distribution server program 130. As a result, the I / O relay program 122 becomes unnecessary, or large data can be directly transferred between the content distribution server program 130 and the QoS guarantee program 140 without going through the I / O relay program 122. There is.

  FIG. 10 is a diagram showing a configuration example of a computer system according to the third embodiment of the present invention. In the third embodiment of the present invention, the QoS guarantee program 140 is built in the network file system server program (NFS server program) 160. As a result, the I / O relay program 122 becomes unnecessary, and further, the NFS server program 160 including the QoS guarantee program 140 is implemented not only in the content distribution server 100 but also as the external NFS server 102, thereby distributing a plurality of contents. Implementation such as sharing by the server 100 is also possible. FIG. 11 is a diagram showing a configuration example of a computer system according to the fourth embodiment of the present invention. In the fourth embodiment of the present invention, the QoS guarantee program 140 is implemented as a loadable kernel module that operates in the OS program 120. As a result, overhead due to transmission / reception of information between the application space and the OS space can be reduced.

100: Content distribution server device
101: Terminal device
111: CPU
112: Network interface
113: Disk
120: OS program
121: Standard file system program
122: I / O relay program
130: Content distribution server program
131: File I / O generation program with time information
140: QoS guarantee program
141: File I / O conversion program
142: Standard file system information acquisition program
143: File system operation prediction program
144: I / O option adjustment program
145: Disk information acquisition program
150: Management program

Claims (14)

  1. A network interface connected to a terminal and transmitting / receiving data to / from the terminal;
    A disk unit for storing data;
    Means for converting file I / O with time information into normal file I / O;
    Means for acquiring information of a file system to which the normal file I / O is issued;
    Means for obtaining information of the disk device that is an issuance destination of block I / O of the file system;
    Means for predicting how file I / O is converted to block I / O based on the information of the file system;
    Means for adjusting an option attached to the file I / O request based on the prediction.
  2. The content delivery apparatus according to claim 1,
    Means for converting the file I / O request with time information into a general file I / O request and file I / O request option;
    A content distribution apparatus that realizes QoS guarantee by providing means for adjusting the issue timing of the file I / O request and the file I / O request option.
  3. The content distribution apparatus according to claim 2, wherein
    A content distribution apparatus comprising means for processing in order from a short grace time until a time limit with reference to time information of the file I / O request with time information.
  4. The content distribution apparatus according to claim 3,
    It is determined whether the grace time of the file I / O request with time information is less than a predetermined threshold, and if the grace time is not less than the threshold, the file I / O for the area continuous with the file I / O request A content distribution apparatus having means for grouping requests.
  5. The content distribution apparatus according to claim 1, wherein
    A content delivery apparatus that warns that there is a problem with the type of file system, its setting, or other conditions when QoS guarantees are expected to be difficult due to conditions such as the type of file system or its settings.
  6. The content delivery apparatus according to claim 1,
    A content distribution apparatus characterized by adding deadline time and I / O policy information to an I / O request.
  7. The content delivery apparatus according to claim 1,
    A content distribution apparatus comprising: means for updating a time required for processing an I / O request by using the latest actual value; and means for acquiring the time.
  8. A content distribution device having a network interface connected to a terminal and transmitting / receiving data to / from the terminal, a disk device storing data, the network interface, and a processor connected to the disk device and processing data Content delivery method,
    The processor converts file I / O with time information into normal file I / O,
    Obtain information on the file system that is the normal file I / O issue destination,
    Obtain information of the disk device that is the issuing destination of block I / O of the file system,
    Predict how file I / O will be converted to block I / O based on the file system information;
    A content delivery method for adjusting options attached to a file I / O request based on the prediction.
  9. The content distribution method of the content distribution apparatus according to claim 8.
    The processor converts the file I / O request with time information into options of a general file I / O request and a file I / O request,
    A content distribution method for adjusting an issue timing of the file I / O request and the file I / O request option.
  10. In the content delivery method of the content delivery apparatus of Claim 9,
    The content distribution method in which the processor refers to time information of the file I / O request with time information, and processes in order from a short grace time until a time limit.
  11. In the content delivery method of the content delivery apparatus of Claim 10,
    The processor determines whether a grace time of the file I / O request with time information is less than a predetermined threshold, and if the grace time is not less than the threshold, the processor performs a process for an area continuous with the file I / O request. A content delivery method that groups file I / O requests.
  12. The content distribution method of the content distribution apparatus according to claim 8.
    A content delivery method in which the processor warns that there is a problem with the type of the file system, its setting, and other conditions when QoS guarantee is expected to be difficult due to the type of the file system and the setting conditions.
  13. The content distribution method of the content distribution apparatus according to claim 8.
    The content distribution method in which the processor adds information of a deadline time and an I / O policy to an I / O request.
  14. The content distribution method of the content distribution apparatus according to claim 8.
    The content distribution method in which the processor updates and acquires the time required to process the I / O request using the latest actual value.
JP2013208713A 2013-10-04 2013-10-04 Content distribution apparatus and content distribution method for content distribution apparatus Active JP6165580B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013208713A JP6165580B2 (en) 2013-10-04 2013-10-04 Content distribution apparatus and content distribution method for content distribution apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013208713A JP6165580B2 (en) 2013-10-04 2013-10-04 Content distribution apparatus and content distribution method for content distribution apparatus

Publications (2)

Publication Number Publication Date
JP2015072643A JP2015072643A (en) 2015-04-16
JP6165580B2 true JP6165580B2 (en) 2017-07-19

Family

ID=53014956

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013208713A Active JP6165580B2 (en) 2013-10-04 2013-10-04 Content distribution apparatus and content distribution method for content distribution apparatus

Country Status (1)

Country Link
JP (1) JP6165580B2 (en)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787482A (en) * 1995-07-31 1998-07-28 Hewlett-Packard Company Deadline driven disk scheduler method and apparatus with thresholded most urgent request queue scan window
JP2950223B2 (en) * 1996-01-12 1999-09-20 日本電気株式会社 Data reading device
JP2004104212A (en) * 2002-09-05 2004-04-02 Matsushita Electric Ind Co Ltd Band management file system apparatus, program thereof, and program recording medium
JP2005135126A (en) * 2003-10-30 2005-05-26 Hitachi Ltd Fragmentation preventing file system
JP2006285809A (en) * 2005-04-04 2006-10-19 Hitachi Ltd Storage device performing performance guarantee for streaming
JP4686305B2 (en) * 2005-08-26 2011-05-25 株式会社日立製作所 Storage management system and method
JP2011081580A (en) * 2009-10-07 2011-04-21 Hitachi Ltd Computer system and input/output method for the same
JP5723812B2 (en) * 2012-03-16 2015-05-27 株式会社 日立産業制御ソリューションズ File server, data input / output method, I / O hook module program, and I / O proxy daemon program

Also Published As

Publication number Publication date
JP2015072643A (en) 2015-04-16

Similar Documents

Publication Publication Date Title
US8990498B2 (en) Access scheduler
US9208116B2 (en) Maintaining I/O priority and I/O sorting
Zaharia et al. Job scheduling for multi-user mapreduce clusters
US10649664B2 (en) Method and device for scheduling virtual disk input and output ports
US8838853B2 (en) Access buffer
US20130063443A1 (en) Tile Cache
US20130212594A1 (en) Method of optimizing performance of hierarchical multi-core processor and multi-core processor system for performing the method
KR20120092930A (en) Distributed memory cluster control apparatus and method using map reduce
JP5901024B2 (en) Dynamic binding used for content delivery
US9037810B2 (en) Pre-fetching of data packets
JP2005525753A (en) Method for processing data of at least one data stream, data storage system and method of using the system
US8806070B2 (en) Storage device, and storage device control method
JP6475256B2 (en) Computer, control device and data processing method
US10223376B2 (en) Heterogeneous distributed file system using different types of storage mediums
JP2012128644A (en) Memory system
US20070156955A1 (en) Method and apparatus for queuing disk drive access requests
US8959249B1 (en) Cooperative cloud I/O scheduler
US9405712B2 (en) On-chip traffic prioritization in memory
TWI573076B (en) Communication of message signalled interrupts
JP6495327B2 (en) Fine-grained bandwidth provisioning in memory controllers
US5568635A (en) Physical memory allocation system, program execution scheduling system, and information processor
US20060288159A1 (en) Method of controlling cache allocation
US10193973B2 (en) Optimal allocation of dynamically instantiated services among computation resources
US8996840B2 (en) I/O controller and method for operating an I/O controller
AU2013206117B2 (en) Hierarchical allocation of network bandwidth for quality of service

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160803

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160803

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170116

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170428

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170523

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170621

R150 Certificate of patent or registration of utility model

Ref document number: 6165580

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150