CN101232600B - Device, system and method for providing order program contents - Google Patents

Device, system and method for providing order program contents Download PDF

Info

Publication number
CN101232600B
CN101232600B CN2008100076594A CN200810007659A CN101232600B CN 101232600 B CN101232600 B CN 101232600B CN 2008100076594 A CN2008100076594 A CN 2008100076594A CN 200810007659 A CN200810007659 A CN 200810007659A CN 101232600 B CN101232600 B CN 101232600B
Authority
CN
China
Prior art keywords
demand content
flash memory
content
demand
grade
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.)
Expired - Fee Related
Application number
CN2008100076594A
Other languages
Chinese (zh)
Other versions
CN101232600A (en
Inventor
罗泽文
王子钟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2008100076594A priority Critical patent/CN101232600B/en
Publication of CN101232600A publication Critical patent/CN101232600A/en
Priority to PCT/CN2008/073609 priority patent/WO2009109092A1/en
Application granted granted Critical
Publication of CN101232600B publication Critical patent/CN101232600B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/252Processing of multiple end-users' preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends

Abstract

The embodiment of the invention discloses a method, a system and an apparatus for providing ordered contents, wherein the method for providing ordered contents comprises: calculating the heat of ordered contents and saving the request contents into a flash disk according to the calculated heat, so when a media server receives the ordering request, priority will be given to the ordered content saved in the flash disk. Through saving the hot movies into the flash disk inside the stream media server, the execution example of the invention can increase I/O read/write speed, and therefore improve the performance of unit stream media servers. Moreover, the flash disk is characterized in that no data are lost in power-off status; therefore, it is not necessary to read data of hot movies from hard drives into the flash disk even in a restart process, so as to improve the start-up speed.

Description

A kind of mthods, systems and devices that on-demand content is provided
Technical field
The embodiment of the invention relates to communication technical field, particularly a kind of mthods, systems and devices that on-demand content is provided.
Background technology
Along with the development of multimedia technology, the communication technology and hardware store technology, in order to satisfy the demand of user's different levels, VOD (Video On Demand, video request program) business is arisen at the historic moment.Operator prepares a large amount of films in advance and is stored in the video on-demand system, and the user can send order request to video on-demand system, optionally controls the broadcast of program.Server cost and network bandwidth cost that video request program takies are very high, after these two business are made up for each other's deficiencies and learn from each other, merge and some brand-new business, for example: nPVR (network Personal Video Recording, the network individual video video recording), TSTV (TimeShift Television, time-moving television).TVOD (Television On Demand, video on demand), VOD and this class business of TSTV all need server to provide streaming media service to the user.
Along with improving constantly of quality of service requirement, and professional and user's continuous increase causes professional concurrent flow to explode, and is also just more and more higher to the performance requirement of streaming media service.The performance of separate unit server mainly is subject to key factors such as CPU (Central Processing Unit, central processing unit) speed, internal memory, the network bandwidth, I/O read or write speed.The dominant frequency of single cpu has risen to more than the 3G at present, and a station server can be joined a plurality of CPU, and therefore, the CPU speed issue does not also become bottleneck; Internal memory can be configured to tens GB at present, generally uses 4GB or 8GB also just enough; Streaming media server has supported a plurality of network card binding polymerizations to increase bandwidth, as 3 GE (Gigabit Ethernet, Ethernet interface) mouthful binding polymerization can reach near the bandwidth of 3G, and the 10GE network interface card has also begun to go into operation, so the bandwidth problem of network neither influence the subject matter of streaming media service performance.
At present, streaming media server adopts disk array as storage more, be subjected to the serious restriction of hard disk machinery inherent characteristic, data are distributed in the polylith disk and promote the technology of whole I/O read or write speed even adopted, but the speed that promotes is also not too obvious, traditional SAN (Storage Area Network, storage area network), DAS (Direct Access Storage, directly visit storage), NAS (Network Attached Storage, network attached storage) storage I/O read or write speed is generally about 1GBit/S.Therefore, comparatively speaking, the I/O read or write speed of disk becomes the key factor of restriction streaming media server performance, is the technical barrier that industry faces.
Prior art is in advance the maximum film of user's program request to be buffered in the internal memory, during these backings of user's program request, the service that provides directly is provided from internal memory, utilize internal memory to have the characteristics of read or write speed more at a high speed than hard disk, thereby avoid the frequent access disk, alleviate the slow pressure of magnetic disc i/o read or write speed.Stream media system sorts by the buffer memory priority of statistics request number of times, these two index convection current contents of request frequency, with decision which file is put into buffer area, simultaneously which file is picked out buffer area.But some Streaming Media application system still adopts 32 at present, cause the free memory maximum of such Streaming Media application system to have only 4GB like this, at IPTV (Internet Protocol Television, Web TV) in the field, the general capacity of film therefore at most also can only 4 movie programs of buffer memory all on 1GB.New hardware system and operating system have begun to support 64,32 Streaming Media application system can be upgraded to 64 of supports by revising code, can support the 17179869184GB internal memory in theory, but be limited to the memory bank number of mainboard and the capacity of monolithic memory bar, generally speaking, the maximum of one station server can be joined the internal memory of tens GB, at most also can only tens movie program of buffer memory, and just there is the problem of memory film negligible amounts in this.And the internal memory cost is higher, and the memory bar of existing market 1GB needs hundreds of unit even more, has strengthened investment burden in a way.Employing is put into the method for internal memory to backing, and the data that all need to read backing from hardware when each the startup may influence the speed of startup so to a great extent in buffering area, the reduction exploitation speed.
In realizing process of the present invention, the inventor finds that there is following problem at least in prior art: existing utilization is left backing in and is alleviated the slow-footed method of disk read-write in the internal memory, internal memory can be deposited the negligible amounts of film, and cost is higher, and overall startup speed is lower.
Summary of the invention
The embodiment of the invention provides a kind of mthods, systems and devices that on-demand content is provided, with the read or write speed of raising I/O and the performance of separate unit streaming media server.
For achieving the above object, the embodiment of the invention provides a kind of method that on-demand content is provided on the one hand, comprise: the temperature of statistics on-demand content, described statistic processes is that the program request duration according to on-demand content carries out grade classification to on-demand content, the video-on-demand times of the on-demand content of each grade that statistics is divided; A timer is set, regularly start by described temperature film or head are distributed to task in the flash memory, be specially: the temperature according to described statistics deposits described on-demand content in flash memory, the described process that deposits flash memory in is the ratio that preestablishes the memory capacity of each grade, memory capacity according to each grade, the rank of on-demand content and difference comparison algorithm deposit the on-demand content of each grade in flash memory, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, determine according to actual conditions.The described on-demand content that deposits flash memory in preferentially is provided when media server is received order request.
On the other hand, the embodiment of the invention also provides a kind of method that on-demand content is provided, comprise: the predetermined data of dividing block size of buffering, regularly start by temperature film or head are distributed to task in the flash memory, deposit on-demand content in flash memory, can only put the head of film into flash memory, deposit head how long and decide by the user's program request duration that counts, adopt graduate strategy, determine according to actual conditions.Receive user's order request; According to described user's order request, preferentially read the on-demand content of storing in the flash memory in the described streaming media server.
Again on the one hand, the embodiment of the invention also provides a kind of system that on-demand content is provided, comprise: streaming media server, content manager, described content manager, be used to add up the temperature of on-demand content, described statistic processes is that the program request duration according to on-demand content carries out grade classification to on-demand content, the video-on-demand times of the on-demand content of each grade that statistics is divided, regularly start by described temperature film or head are distributed to task in the flash memory, temperature according to described statistics deposits described on-demand content in the flash memory of described streaming media server, the described process that deposits flash memory in is the ratio that preestablishes the memory capacity of each grade, memory capacity according to each grade, the rank of on-demand content and difference comparison algorithm deposit the on-demand content of each grade in flash memory, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, determine according to actual conditions; Described streaming media server is used for preserving described on-demand content at the flash memory of described streaming media server, preferentially reads the described on-demand content that deposits flash memory in when receiving order request.
Again on the one hand, the embodiment of the invention also provides a kind of content manager, comprise: the hot statistics module, be used to add up the temperature of on-demand content, described statistic processes is that the program request duration according to on-demand content carries out grade classification to on-demand content, the video-on-demand times of the on-demand content of each grade that statistics is divided; Memory module, be used for described on-demand content being deposited in the flash memory of streaming media server according to the temperature of described statistical module counts, regularly start by temperature film or head are distributed to task in the flash memory, the described process that deposits flash memory in is the ratio that preestablishes the memory capacity of each grade, memory capacity according to each grade, the rank of on-demand content and difference comparison algorithm deposit the on-demand content of each grade in flash memory, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, determine according to actual conditions.
Again on the one hand, the embodiment of the invention also provides a kind of streaming media server, comprising: flash memory control and driver module are used to cushion predetermined data of dividing block size, regularly start by temperature film or head are distributed to task in the flash memory, deposit on-demand content in internal memory again.At least one flash memory, be used to store on-demand content, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, according to actual conditions decisions, described flash memory is plugged on the back card/back board of described streaming media server or is plugged on the host slot of described streaming media server; Medium request receiver module is used to receive user's order request; Medium provide module, are used for preferentially reading the on-demand content in the flash memory in the described streaming media server when described medium request receiver module receives user's order request.
Compared with prior art, the embodiment of the invention has the following advantages: the embodiment of the invention has improved the read or write speed of I/O by backing is deposited in the flash memory of streaming media server, thereby has improved the performance of separate unit streaming media server.
Description of drawings
Fig. 1 provides the flow chart of the method for on-demand content for the embodiment of the invention;
Fig. 2 is the schematic diagram of the media server hardware system structure of embodiment of the invention back card/back board formula;
Fig. 3 is the schematic diagram of the media server hardware system structure of embodiment of the invention host slot formula;
Fig. 4 is the schematic diagram of embodiment of the invention system network architecture one;
Fig. 5 is the schematic diagram of embodiment of the invention system network architecture two;
Fig. 6 is the flow chart of embodiment of the invention user program request;
Fig. 7 is the flow chart of embodiment of the invention hot statistics algorithm;
The flow chart that Fig. 8 regularly distributes by temperature for the embodiment of the invention;
Fig. 9 provides the structure chart of the system of on-demand content for the embodiment of the invention;
Figure 10 is the structure chart of embodiment of the invention content manager;
Figure 11 is the structure chart of embodiment of the invention streaming media server.
Embodiment
The embodiment of the invention provides a kind of method that on-demand content is provided, and by the embodiment of the invention, utilizes the memory of flash memory as backing, has improved the read or write speed of I/O greatly, thereby has improved the performance of separate unit streaming media server.
As shown in Figure 1, for the embodiment of the invention provides the flow chart of the method for on-demand content, specifically may further comprise the steps:
Step S101, the temperature of statistics on-demand content.The temperature that the embodiment of the invention is determined on-demand content according to user's video-on-demand times and program request duration is to determine which on-demand content is a backing.
Step S102 deposits described on-demand content in flash memory according to the temperature of adding up, and the on-demand content that deposits flash memory in preferentially is provided when media server is received order request.After determining the scope of backing, deposit flash memory in or only deposit the head of backing in flash memory according to the full content of big young pathbreaker's backing of the flash memory of streaming media server, and deposit other guide in disk array.
Like this, when streaming media server receives user's order request, preferentially read the on-demand content of storing in the flash memory and provide service,, consider again from disk array or local disk, to read if do not meet the on-demand content of user's order request in the flash memory for the user.If only deposited the head of on-demand content in the flash memory, streaming media server finds the on-demand content corresponding with these head to continue to play from the end of head from disk array or local disk after playing these head more so.
The embodiment of the invention has all disposed one or more flash memory (being the Flash storage) on every streaming media server, can adopt the mode of back card/back board to add.As shown in Figure 2, be the schematic diagram of the streaming media server hardware system structure of back card/back board formula.In Fig. 2, only shown a flash memory, but practical application is not limited to a flash memory.Can also adopt the mode that on host slot, adds.As shown in Figure 3, be the record intention of the streaming media server hardware system structure of host slot formula.Only shown a flash memory among Fig. 3, but practical application is not limited to a flash memory.
As shown in Figure 4, be the schematic diagram of embodiment of the invention system network architecture one.Client in the embodiment of the invention can be mobile phone, set-top box, PC etc., but the embodiment of the invention is that example describes with the mobile phone in the wireless network.Streaming media server adopts clustered deploy(ment), is deployed in the load equalizer back, and client is linked into earlier in the load equalizer, provides service by best streaming media server of load equalizer scheduling for this user.Load equalizer can be by content, by load, carry out integrated dispatch by modes such as zones.Being meant the user is dispatched on the streaming media server of the content that the user will watch by content scheduling provides service, be meant that by load dispatch the user being dispatched to performance index such as CPU, internal memory low is the service that provides on the lighter streaming media server of load, being meant the user is dispatched to from this user by subdispatch provides service on media server nearest on the geographical position.Content Management System is in embodiments of the present invention except content management function commonly used such as issue, modification, deletion content, also need bear the content hot statistics, determine in which that perhaps head leave in the flash memory of streaming media server, simultaneously in which perhaps head pick out the flash memory functional medium of streaming media server.
Certainly the system network architecture of the embodiment of the invention is not limited thereto, and also can adopt system network architecture as shown in Figure 5.Streaming media server even can adopt local disk, Content Management System and streaming media server can also share a machine.
As shown in Figure 6, be the flow chart of embodiment of the invention user program request.Specifically comprise following step:
Step S601, user's order request is linked in the load equalizer.If there is not load equalizer, user's order request directly is linked in the streaming media server, and the program request flow process is leapt to the step S604 step.
Step S602 according to the content of user's program request, selects suitable streaming media server.
Pass through the embodiment of the invention, load equalizer is according to the content of user's program request, under or the situation about hardly differing equal in load, paying the utmost attention to flash memory has the media server of these content head, the content of distinguishing program request when promptly requiring load equalizer by content scheduling is flash content or general disc content, consider other factorses such as flash content, and then consideration of regional earlier.
Step S603 is transmitted to user's order request in the selected streaming media server of step S602.
Step S604 according to user's request, preferentially reads the on-demand content in the flash memory.Media server receives the user when asking, and pays the utmost attention to read that content provides service in the flash memory, if flash memory does not have the content of user's program request, considers to read from disk array or local disk again.If only deposited head in the flash memory, after media server plays these head earlier so, from disk array or local disk, find corresponding content to continue from the head end to play again.
Step S605, streaming media service sends Media Stream service is provided.
Step S606, streaming media server is user's order request content of announcement management system.
Step S607, Content Management System generates a program request record, be kept in database or the file, may there be many records in same content, every record includes but not limited to following information: content ID, User IP, program request time, program request duration etc., these information are deposited with structure of data table, are designated as Tab-Stat-Consume (consumption record statistical form).If number of users more for a long time, possible every day even each hour produce mass data, this tables of data adopts the submeter technology, can by the period submeter (for example can be on time, by day, by week, monthly wait), can big or small by measure submeter (for example submeter of 200MB), also can be by record quantity submeter (for example submeter of 3,000,000 records).
Step S608, user ask program request to finish.
After step S609, streaming media server receive user's ending request, this user's program request duration is also reported Content Management System.
That record that step S610, Content Management System find corresponding step S607 to generate writes the program request duration in the corresponding record.
Although the capacity of the relative internal memory of capacity of flash memory has improved tens times, can't reach the capacity of depositing all the elements, therefore need be stored in backing in the flash memory, improve the utilance of flash memory, thereby reduce the read-write pressure of I/O.Consider in the practical application have many users may see a few minutes after sensation of beginning is plain and just withdrawed from.At this situation, in order to utilize the limited capacity of flash memory more expeditiously, not necessarily whole film is deposited in the flash memory, can only put the head of film into flash memory, decide by the user's program request duration that counts as for depositing head how long, adopt graduate strategy, determine according to actual conditions, how long be divided into how many grades, be a grade.Illustrate, can divide 3 grades, the program request duration was the 1st grade smaller or equal to 10 minutes, greater than 10 minutes be the 2nd grade less than 30 minutes, greater than being the 3rd grade more than 30 minutes.The 1st grade is deposited 10 minutes head (if whole film is less than just depositing whole film in 10 minutes) at most, and the 2nd grade is deposited 30 minutes head (if whole film is less than just depositing whole film in 30 minutes) at most, and the 3rd grade is deposited whole film.The embodiment of the invention is that example describes with above-mentioned stage division, but is not limited to the above-mentioned method of grading, for example: can be including but not limited to following special circumstances: have only a grade, or be whole film entirely, or be the head of some durations entirely.
Flash memory is distributed with two kinds of mode of operations with the film of general disk, a kind of is backup mode, be that general disk is deposited all films, depositing head (containing whole film) in the flash memory plays a part to quicken, even flash memory has damaged fully, streaming media server also can reading of content normally provide service from general disk.The reliability height of this pattern, but have the film redundancy; And another kind is the mutual exclusion module, promptly preserves part at flash memory, does not just repeat to preserve on general disk.The reliability of this pattern a little less than, but can not have the film redundancy.
Flash memory write with a brush dipped in Chinese ink age limit, reading in is not have age limit in theory.Generally speaking, flash memory is pressed 128K size piecemeal, and the life-span of every blocks of data piece is to repeat for 100,000 times erasablely, and after promptly every blocks of data piece repeated erasable 100,000 times, the availability of this data block just can not ensure, but can not influence other data block.In order to improve the erasing and writing life of flash memory, flash controller and driver generally all can adopt the abrasion equilibration algorithm, and promptly the preferential less data block of erasable number of times of selecting when new data more makes that like this data block of flash memory is used fifty-fifty.According to this situation, be necessary to control the erasable number of times of flash memory, adopt two kinds of strategies to control simultaneously.A kind of strategy is to adopt the abrasion equilibration algorithm, the abrasion equilibration algorithm adopts the piece processing mode, it is different that different flash controllers and driver divide block size to have institute, suppose that its minimum piecemeal is a Block (unit: Byte), server should guarantee earlier the data of buffering n * Block size (n get 1,2,3 etc. natural number) as far as possible, and then the one-time write flash memory, do like this and can avoid continually certain data block being carried out erasable operation minimum level, prolong the life-span of flash memory.Another kind of strategy is to adopt the strategy of regularly distributing by temperature, as shown in Figure 7.Specifically comprise following step:
Step S701 is provided with a timer, regularly starts by temperature film or head are distributed to task in the flash memory.
Suggestion but be not limited to regularly carry out once every day if carry out every day once, suppose each renewal entirely of carrying out all, and flash memory has 100, the life-span of 000/365=273.97.
Step S702, which film or head deposit flash memory in or delete from flash memory in arrangement and the statistics media server.
According to the hot statistics algorithm, with count every media server should newly-increased which film head and how long head (might whole film) put into flash memory, this is picked out which film head (might whole film) in the flash memory simultaneously.
Step S703, the result notification that statistics is good is given every corresponding media server.
Step S704, the result according to the content server statistics wipes the interior perhaps head that require to delete from flash memory, the interior perhaps head that require to increase newly are into added in the flash memory go.
Step S705 gives load equalizer with the result notification that the interior perhaps head in the flash memory upgrade, so that load equalizer when pressing content scheduling, is dispatched in the corresponding media server exactly.
As shown in Figure 8, flow chart for embodiment of the invention hot statistics algorithm, (n can join to get nearest n days from the Tab_Stat_Consume table, be recommended as 7 days) program request record rather than get content and come into force from issue and write down the counting statistics temperature to the program request of current time, this is to think that temperature is with current nearest time period correlation maximum, exceeds this time period to think that correlation is 0.Specifically comprise following step:
Step S801 does the pre-statistical disposition of initial data earlier.
From tables of original record Tab_Stat_Consume (example is as shown in table 1), count the video-on-demand times (example is as shown in table 2) of each each grade of content.Suppose that the current time is 2007-12-25, get nearest 7 days record and do statistics, can filter other useless data according to the program request time, as shown in table 1, article 1,, the 2nd measuring point sowing time longly surpassed 30 minutes, satisfies the condition of grade 3, promptly to satisfy the video-on-demand times of grade 3 in nearest 7 days be 2 to content A, so analogize, just can form the preliminary treatment result of table 2.
The program request record sheet of table 1 content A
Sequence number Content ID The program request time Program request duration (second)
1 Content A 2007-12-20?16:30:39 1828
2 Content A 2007-12-21?17:26:31 3618
3 Content A 2007-12-22?18:18:42 511
4 Content A 2007-12-23?19:13:49 799
5 Content A 2007-12-24?23:51:27 874
Table 2 content A is by grade statistics table
Figure S2008100076594D00091
Step S802 carries out rank by the rank rule to content.
Give rank of each content according to pre-statistics, have but to be not limited to two kinds of rank rules as follows, a kind of rank rule is: the many more ranks of the video-on-demand times that grade is high more are forward more, if the identical video-on-demand times that just compares next grade of high-grade video-on-demand times, up to the video-on-demand times that relatively arrives the lowest class, order as shown in table 2; Another kind is that the rank rule is: give weight of level setting, according to the weighted sum of the video-on-demand times of each grade rank from big to small.
Step S803 deposits the content head in the flash memory in.
By a kind of principle and a kind of difference comparison algorithm that deposits flash memory in the content head are deposited in the flash memory.The principle that deposits flash memory in includes but not limited to following a kind of principle, pro-rata principle: the i.e. ratio of the memory capacity of pre-specified each grade, as: 50% capacity is put the content head of grade 1,30% capacity is put the content head of grade 2, the content head that 20% capacity is put grade 3 (generally speaking, be exactly whole film), preferentially the forward content of rank as high-grade content, and deposit the content head of each grade in to inferior grade amount of capacity in accordance with regulations from high-grade, be filled with till the flash memory.The difference comparison algorithm is as follows: from current every streaming media server, take out the content head tabulation of leaving in the flash memory; Every media server is set up a deletion tabulation (DelList), a newly-increased tabulation (AddList); The content head tabulation of leaving in flash memory contents head and the current flash memory is done diversity ratio, being placed in the TemList tabulation in the current flash memory head non-existent content of tabulating among the TopNList; If the tabulation of the head in the current flash memory non-existent content head in TopNList are just deposited among the DelList of people's correspondence, the content that the taking-up capacity is suitable from TemList is in the AddList of correspondence again; Notify each streaming media server update content head at last in flash memory, if there is load equalizer in the system, the change situation of content head in each streaming media server flash memory of notification payload equalizer.
By the embodiment of the invention, in carrying out the difference comparison algorithm, to new and old content head do diversity ratio than the time, only meaningful ID is identical and used same grade head to think that just content does not need to change, otherwise just needs to upgrade.
The embodiment of the invention has improved the read or write speed of I/O by backing is deposited in the flash memory of streaming media server, thereby has improved the performance of separate unit streaming media server.Therefore and because flash memory has the outage data not lose, restart the data that also need not from hard disk, to read backing in flash memory, can improve toggle speed.
As shown in Figure 9,, comprising for the embodiment of the invention provides the structure chart of the system of on-demand content: streaming media server 91, load equalizer 92, content manager 93 and disk array 94,
Content manager 93, the temperature that is used to add up on-demand content deposits on-demand content in the flash memory of streaming media server 91 according to the temperature of adding up, to improve the performance of streaming media server 91;
Content manager 93 is in embodiments of the present invention except issue/modification/content management function commonly used such as deletion content, also need bear the content hot statistics, determine in which that perhaps head leave in the flash memory of streaming media server 91, simultaneously in which perhaps head pick out the flash memory functional medium of streaming media server 91.
In order to realize the content hot statistics, content manager 93 also needs the program request record of leading subscriber, the program request recorded and stored in database or file, may there be many records in same content, every record includes but not limited to following information: content ID, the program request time, program request duration etc., above-mentioned information is deposited with structure of data table, if number of users more for a long time, possible every day even each hour produce mass data, this tables of data adopts the submeter technology, can be (for example: on time by the period submeter, by the sky, by week, monthly etc., certainly the embodiment of the invention is not limited in above-mentioned period submeter), can big or small by measure submeter (for example submeter of 200MByte), also can be by record quantity submeter (for example submeter of 3,000,000 records).
If system deployment load equalizer 92, when content manager 93 upgrades backings or backing head to flash memory at every turn, or directly the distribution situation of backing or backing head is notified to load equalizer 92, or notify load equalizer 92 through streaming media server 91, so that load equalizer 92 when pressing content scheduling, is preferentially looked for the streaming media server 91 of the on-demand content that has the order request that meets the user in flash memory.
Streaming media server 91 is used for preserving on-demand content at the flash memory of streaming media server 91.
Wherein, streaming media server 91 comprises one or more flash memory, and described flash memory is plugged on the back card/back board of described streaming media server or is plugged on the host slot of described streaming media server.
Flash controller in the streaming media server 91 and driver should adopt the abrasion equilibration algorithm, the abrasion equilibration algorithm is the mode that adopts piece to handle, it is different that different flash controllers and driver divide block size to have institute, suppose that its minimum piecemeal is a Block (unit: Byte), streaming media server 91 should guarantee the data of first buffering n * Block size as far as possible, and (n gets 1,2,3 natural numbers such as grade), and then the flash memory of one-time write streaming media server 91, do like this and can avoid continually certain data block being carried out erasable operation minimum level, prolong the life-span of flash memory.
Because flash memory has the restriction of erasing and writing life, although the flash controller of streaming media server 91 and driver need adopt the abrasion equilibration algorithm, but in order to reduce the life-span risk, content manager 93 does not recommend the real-time update backing in flash memory, recommendation is regularly upgraded backing (such as upgrade every day once, but be not limited to by the sky) in flash memory according to temperature.
Wherein, disk array 94 is used for preserving the full content or the other guide of program request film except that the head of described program request film of program request film.When streaming media server 91 receives the user when asking, the content of paying the utmost attention in the flash memory of reading flow media server 91 provides service for the user, if do not meet the on-demand content of user's program request requirement in the flash memory, consider again to read from disk array 94 or local disk.If only deposited head in the flash memory, streaming media server 91 finds corresponding content to continue from the head end to play from disk array or local disk after playing these head more so.
Wherein, load equalizer 92 is used for selecting streaming media server 91 according to on-demand content, preferentially is chosen in the streaming media server 91 that has this on-demand content in the flash memory.Load equalizer 92 is according to the content of user's program request, under or the situation about hardly differing equal in load, the preferential streaming media server 91 of selecting to have in the flash memory on-demand content head, promptly requiring load equalizer 92 to distinguish this on-demand content by content scheduling the time is content in flash memory or the content in the general disk, content in the flash memory is than the content priority height of general disk, and then other factors such as consideration of regional.
As shown in figure 10, the structure chart for embodiment of the invention content manager comprises: hot statistics module 1001, the temperature that is used to add up on-demand content;
Memory module 1002 is used for according to the temperature of hot statistics module 1001 statistics on-demand content being deposited in the flash memory of streaming media server.
Wherein, statistical module 1001 comprises: record management submodule 10011, be used to manage the program request record, and this program request record comprises content identification, program request time and program request duration at least;
Grade classification submodule 10012 is used for according to the program request duration that the program request of record management submodule 10011 management is noted down on-demand content being carried out grade classification;
Statistics submodule 10013 is used to add up the video-on-demand times of the on-demand content of each grade that grade classification submodule 10012 divides.
Wherein, memory module 1002 comprises:
Rank submodule 10021 is used for according to the grade that the video-on-demand times of statistics submodule 10013 statistics is divided by grade classification submodule 10012 on-demand content being carried out rank;
Content stores submodule 10022 is used for depositing the on-demand content of described each grade in flash memory according to the rank of rank submodule 10021 and the principle that deposits flash memory in.For example: preestablish the memory capacity of each grade that grade classification submodule 10012 divides, deposit the on-demand content of each grade in flash memory according to the rank of the memory capacity of each grade of setting, rank submodule 10021 and difference comparison algorithm.
Wherein, content manager also comprises: notification module 1003 is used for after memory module 1002 deposits on-demand content the flash memory of streaming media server in, with the renewal result notification load equalizer of on-demand content.
As shown in figure 11, the structure chart for embodiment of the invention streaming media server comprises: at least one flash memory 111, be used to store on-demand content, and flash memory 111 is plugged on the back card/back board of streaming media server or is plugged on the host slot of streaming media server;
Medium request receiver module 112 is used to receive user's order request;
Medium provide module 113, are used for when medium request receiver module 112 receives user's order request, the on-demand content in the flash memory 111 in the preferential reading flow media server.
Medium provide module 113 also to be used for reading the on-demand content that meets user's order request from disk array when not meeting the content of user's order request in the flash memory 111 of streaming media server; Perhaps,
When only having the head of program request film in the flash memory 111 of streaming media server,, from disk array, read the other guide of this program request film except that head again reading after fixed point broadcasts the head of film.
Wherein, this streaming media server further comprises: flash memory control and driver module 114, be used to cushion predetermined data of dividing block size, and deposit described on-demand content in internal memory 111 again.
Through the above description of the embodiments, those skilled in the art can be well understood to the present invention and can realize by the mode that software adds essential general hardware platform, can certainly pass through hardware, but the former is better execution mode under a lot of situation.Based on such understanding, the part that technical scheme of the present invention contributes to prior art in essence in other words can embody with the form of software product, this computer software product is stored in the storage medium, comprise that some instructions are with so that a computer equipment (can be a personal computer, server, the perhaps network equipment etc.) carry out the described method of each embodiment of the present invention.
More than disclosed only be several specific embodiment of the present invention, still, the present invention is not limited thereto, any those skilled in the art can think variation all should fall into protection scope of the present invention.

Claims (21)

1. the method that on-demand content is provided is characterized in that, comprising:
The temperature of statistics on-demand content, described statistic processes are that the program request duration according to on-demand content carries out grade classification to on-demand content, the video-on-demand times of the on-demand content of each grade that statistics is divided;
A timer is set, regularly start by described temperature film or head are distributed to task in the flash memory, be specially: the temperature according to described statistics deposits described on-demand content in flash memory, the described process that deposits flash memory in is the ratio that preestablishes the memory capacity of each grade, memory capacity according to each grade, the rank of on-demand content and difference comparison algorithm deposit the on-demand content of each grade in flash memory, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, according to the actual conditions decision, the described on-demand content that deposits flash memory in preferentially is provided when streaming media server is received order request.
2. the method for on-demand content is provided according to claim 1, it is characterized in that, described on-demand content comprises: the whole film of program request or the head of program request film.
3. as the method for on-demand content is provided as described in the claim 2, it is characterized in that, when described on-demand content is the head of program request film,
After described temperature according to statistics deposits described on-demand content in flash memory, also comprise:
The full content of described program request film is left in the disk array; Perhaps,
Other guide except that the head of described program request film in the described program request film is left in the disk array.
4. the method for on-demand content is provided according to claim 1, it is characterized in that, the temperature of described statistics on-demand content specifically comprises: according to the temperature of the described on-demand content of the record of the program request within scheduled time statistics, described program request record comprises content identification, program request time and program request duration at least.
5. the method for on-demand content is provided according to claim 1, it is characterized in that, after the video-on-demand times of the on-demand content of each grade of the described division of described statistics, also comprise: by grade described on-demand content is carried out rank according to described video-on-demand times,
Describedly by grade described on-demand content is carried out rank according to video-on-demand times and comprises:
The rank of the on-demand content that grade is high is higher than the rank of the low on-demand content of grade, and when the grade of described on-demand content was identical, the rank of the on-demand content that video-on-demand times is many was higher than the rank of the low on-demand content of video-on-demand times; Perhaps,
The weight of each grade is set, carries out rank according to the weighted sum of the video-on-demand times of described each grade.
6. the method for on-demand content is provided according to claim 1, it is characterized in that, describedly deposit the on-demand content of described each grade in flash memory according to the difference comparison algorithm and comprise:
The on-demand content of having deposited in the flash memory and the backing or the backing head that newly come out are carried out diversity ratio;
If the on-demand content of having deposited in the described flash memory is not within the scope of described backing that newly comes out or backing head, then remove the on-demand content of having deposited in the described flash memory, and, deposit flash memory in the on-demand content that does not deposit in described backing that newly comes out or the backing head in the described flash memory.
7. as the method for on-demand content is provided as described in the claim 6, it is characterized in that, describedly on-demand content of having deposited in the flash memory and the backing that newly comes out or backing head are carried out diversity ratio comprise:
If the on-demand content of having deposited in the described flash memory is consistent with the content and the grade of described backing that newly comes out or backing head with grade, on-demand content of having deposited in the then described flash memory and grade and the described backing that newly comes out or backing head are same on-demand content.
8. the method for on-demand content is provided according to claim 1, it is characterized in that, after described temperature according to statistics deposits described on-demand content in flash memory, also comprise: the renewal result notification load equalizer of described on-demand content.
9. the method that on-demand content is provided is characterized in that, comprising:
The predetermined data of dividing block size of buffering, regularly start by temperature film or head are distributed to task in the flash memory, deposit on-demand content in flash memory, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, determine according to actual conditions;
Receive user's order request;
According to described user's order request, preferentially read the described on-demand content of storing in the flash memory in the described streaming media server.
10. as the method for on-demand content is provided as described in the claim 9, it is characterized in that, also comprise:
When not meeting the content of user's order request in the flash memory in the described streaming media server, from disk array, read the on-demand content that meets user's order request; Perhaps,
When only having the head of program request film in the flash memory of described streaming media server, after the head that read described program request film, from described disk array, read the other guide of described program request film except that head.
11. the system that on-demand content is provided is characterized in that, comprising: streaming media server, content manager,
Described content manager, be used to add up the temperature of on-demand content, described statistic processes is that the program request duration according to on-demand content carries out grade classification to on-demand content, the video-on-demand times of the on-demand content of each grade that statistics is divided, regularly start by described temperature film or head are distributed to task in the flash memory, temperature according to described statistics deposits described on-demand content in the flash memory of described streaming media server, the described process that deposits flash memory in is the ratio that preestablishes the memory capacity of each grade, memory capacity according to each grade, the rank of on-demand content and difference comparison algorithm deposit the on-demand content of each grade in flash memory, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, determine according to actual conditions;
Described streaming media server is used for preserving described on-demand content at the flash memory of described streaming media server, preferentially reads the described on-demand content that deposits flash memory in when receiving order request.
12. as the system of on-demand content is provided as described in the claim 11, it is characterized in that, described streaming media server comprises one or more flash memory, and described flash memory is plugged on the back card/back board of described streaming media server or is plugged on the host slot of described streaming media server.
13. as the system of on-demand content is provided as described in the claim 11, it is characterized in that, further comprise: disk array is used for preserving the full content or the other guide of described program request film except that the head of described program request film of described program request film.
14. as the system of on-demand content is provided as described in the claim 11, it is characterized in that, further comprise: load equalizer, be used for selecting streaming media server according to described on-demand content, preferentially be chosen in the streaming media server that has described on-demand content in the flash memory.
15. as the system of on-demand content is provided as described in the claim 14, it is characterized in that, described content manager also is used for the described load equalizer of renewal result notification with described on-demand content, then described load equalizer preferentially is chosen in the streaming media server that has described on-demand content in the flash memory when carrying out the scheduling of on-demand content.
16. a content manager is characterized in that, comprising:
Hot statistics module, the temperature that is used to add up on-demand content, described statistic processes are that the program request duration according to on-demand content carries out grade classification to on-demand content, the video-on-demand times of the on-demand content of each grade that statistics is divided;
Memory module, be used for described on-demand content being deposited in the flash memory of streaming media server according to the temperature of described statistical module counts, regularly start by temperature film or head are distributed to task in the flash memory, can only put the head of film into flash memory, depositing head how long is decided by the user's program request duration that counts, adopt graduate strategy, determine according to actual conditions, the described process that deposits flash memory in is the ratio that preestablishes the memory capacity of each grade, according to the memory capacity of each grade, the rank of on-demand content and difference comparison algorithm deposit the on-demand content of each grade in flash memory.
17., it is characterized in that described hot statistics module comprises as content manager as described in the claim 16:
The record management submodule is used to manage the program request record, and described program request record comprises content identification, program request time and program request duration at least;
The grade classification submodule is used for according to the program request duration that the program request of record management submodule management is noted down described on-demand content being carried out grade classification;
The statistics submodule is used to add up the video-on-demand times of the on-demand content of each grade that described grade classification submodule divides.
18., it is characterized in that described memory module comprises as content manager as described in the claim 17:
The rank submodule is used for according to the grade that the video-on-demand times of described statistics submodule statistics is divided by described grade classification submodule described on-demand content being carried out rank;
The content stores submodule is used for depositing the on-demand content of described each grade in flash memory according to the rank of described rank submodule and the principle that deposits flash memory in.
19. as content manager as described in the claim 16, it is characterized in that, also comprise:
Notification module is used for after described memory module deposits on-demand content the flash memory of streaming media server in, with the renewal result notification load equalizer of described on-demand content.
20. a streaming media server is characterized in that, comprising:
Flash memory control and driver module, be used to cushion predetermined data of dividing block size, regularly start by temperature film or head are distributed to task in the flash memory, deposit on-demand content in internal memory again, can only put the head of film into flash memory, deposit head how long and decide, adopt graduate strategy, determine according to actual conditions by the user's program request duration that counts.
At least one flash memory is used to store on-demand content, and described flash memory is plugged on the back card/back board of described streaming media server or is plugged on the host slot of described streaming media server;
Medium request receiver module is used to receive user's order request;
Medium provide module, are used for preferentially reading the on-demand content in the flash memory in the described streaming media server when described medium request receiver module receives user's order request.
21. as streaming media server as described in the claim 20, it is characterized in that, described medium provide module also to be used for reading the on-demand content that meets user's order request from disk array when not meeting the content of user's order request in the flash memory of described streaming media server; Perhaps, when when only having the head of program request film in the flash memory of fast streaming media server, after the head that read described program request film, from described disk array, read the other guide of described program request film except that head.
CN2008100076594A 2008-03-04 2008-03-04 Device, system and method for providing order program contents Expired - Fee Related CN101232600B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2008100076594A CN101232600B (en) 2008-03-04 2008-03-04 Device, system and method for providing order program contents
PCT/CN2008/073609 WO2009109092A1 (en) 2008-03-04 2008-12-19 Method, system and device for providing on demand content

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100076594A CN101232600B (en) 2008-03-04 2008-03-04 Device, system and method for providing order program contents

Publications (2)

Publication Number Publication Date
CN101232600A CN101232600A (en) 2008-07-30
CN101232600B true CN101232600B (en) 2011-07-20

Family

ID=39898736

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100076594A Expired - Fee Related CN101232600B (en) 2008-03-04 2008-03-04 Device, system and method for providing order program contents

Country Status (2)

Country Link
CN (1) CN101232600B (en)
WO (1) WO2009109092A1 (en)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232600B (en) * 2008-03-04 2011-07-20 华为技术有限公司 Device, system and method for providing order program contents
CN101729357B (en) * 2008-10-14 2013-06-05 华为技术有限公司 Method and device for storage processing and service processing of media files and server cluster
CN101729272B (en) * 2008-10-27 2013-01-23 华为技术有限公司 Method, system and device for content distribution, and media server
CN102088626B (en) * 2009-12-02 2014-08-13 Tcl集团股份有限公司 On-line video recommendation method and video portal service system
CN101945100A (en) * 2010-07-30 2011-01-12 中山大学 Digital house streaming media server and serving method
CN102006506A (en) * 2010-11-24 2011-04-06 深圳市同洲电子股份有限公司 Video server as well as hierarchical storage management method and device of same
CN102065283B (en) * 2010-12-23 2013-10-02 浙江宇视科技有限公司 Storage management method and device of video monitoring data
CN102263986A (en) * 2011-08-22 2011-11-30 中兴通讯股份有限公司 Program processing method and device in IPTV (Internet Protocol Television)
CN102790915B (en) * 2012-07-09 2016-12-21 上海聚力传媒技术有限公司 A kind of for the method and apparatus to P2P node pre-pushing video resource
CN103595694A (en) * 2012-08-14 2014-02-19 腾讯科技(深圳)有限公司 A stream media playing method, a stream media playing system, and an internal memory server
CN103856535B (en) * 2012-12-05 2018-09-04 腾讯科技(北京)有限公司 A kind of method and apparatus obtaining user data
CN103095562B (en) * 2013-01-30 2016-07-27 深圳中网信通科技有限公司 cloud computing intelligent gateway
CN103916693B (en) * 2014-04-02 2018-06-08 深圳市瑞驰信息技术有限公司 The method and its device of a kind of reserved storage space
CN106162218B (en) * 2015-04-03 2020-11-06 中兴通讯股份有限公司 Program recording control method, system and management and popularity statistical server
WO2016182569A1 (en) * 2015-05-13 2016-11-17 Google Inc. Simulating broadcast television channel surfing for on-demand content
CN105335517A (en) * 2015-11-06 2016-02-17 努比亚技术有限公司 Method and terminal for selecting heat multimedia
WO2017117808A1 (en) * 2016-01-08 2017-07-13 王晓光 Video network storage management method and system
CN106454396A (en) * 2016-10-26 2017-02-22 山东浪潮商用系统有限公司 Method for improving concurrency of live broadcast time shifted TV
CN106506665B (en) * 2016-11-18 2019-09-24 郑州云海信息技术有限公司 A kind of load-balancing method and platform of distributed video monitoring system
CN108965909B (en) * 2018-08-01 2021-02-02 中国联合网络通信集团有限公司 Cold door video evaluation method and system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604642A (en) * 2004-11-04 2005-04-06 复旦大学 A method for arranging information release priority in broadcast video program system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100725417B1 (en) * 2006-02-22 2007-06-07 삼성전자주식회사 Apparatus and method for operating flash memory according to priority
CN1972311A (en) * 2006-12-08 2007-05-30 华中科技大学 A stream media server system based on cluster balanced load
CN1972436A (en) * 2006-12-13 2007-05-30 中山大学 A digital TV program on-demand control method
CN101232600B (en) * 2008-03-04 2011-07-20 华为技术有限公司 Device, system and method for providing order program contents

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604642A (en) * 2004-11-04 2005-04-06 复旦大学 A method for arranging information release priority in broadcast video program system

Also Published As

Publication number Publication date
CN101232600A (en) 2008-07-30
WO2009109092A1 (en) 2009-09-11

Similar Documents

Publication Publication Date Title
CN101232600B (en) Device, system and method for providing order program contents
CN102023813B (en) Application and tier configuration management in dynamic page realloction storage system
US8650601B2 (en) Video on demand management system
US7278153B1 (en) Content propagation in interactive television
US8364710B2 (en) Model-based resource allocation
CN101729357B (en) Method and device for storage processing and service processing of media files and server cluster
JP2000505983A (en) Method and system for providing a data stream
EP1396112A2 (en) Method and apparatus to send feedback from clients to a server in a content distribution broadcast system
CN101388909A (en) P2P play-on-demand system and service method
CN101635734A (en) Method and device for storing and managing downloaded data on non-volatile storage medium
CN101753936B (en) Configuration method of storage space and video server for video monitoring system
CN101068341B (en) Stream media dispatching system and medium file scheduling method thereof
CN101729272B (en) Method, system and device for content distribution, and media server
BR112015022053B1 (en) METHOD FOR IMPROVING STORAGE AND TRANSCODING COSTS IN NETWORK-BASED VIDEO-ON-DEMAND (NDVR) SYSTEMS
CN101699443B (en) Method and device for managing network files
KR20020019597A (en) Method of and system for reading blocks from a storage medium
GB2425012A (en) Ranking data files for scheduling transmission
US6477541B1 (en) Multimedia server
CN104038771B (en) A kind of high-effect files in stream media distributed memory system and method based on Hadoop2
WO2016155256A1 (en) Method and system for controlling program recording, and management server and hotness counting server
US7334103B2 (en) Methods and apparatus for improving the breathing of disk scheduling algorithms
WO2013104923A2 (en) Audio visual resource selection
Tsao et al. A novel data placement scheme on optical discs for near-VOD servers
US20220141312A1 (en) Generating Unique Identifiers
Candan et al. An event-based model for continuous media data on heterogeneous disk servers

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110720

Termination date: 20130304