CN1107267C - 媒体服务器数据存取的方法及装置 - Google Patents
媒体服务器数据存取的方法及装置 Download PDFInfo
- Publication number
- CN1107267C CN1107267C CN97117100.9A CN97117100A CN1107267C CN 1107267 C CN1107267 C CN 1107267C CN 97117100 A CN97117100 A CN 97117100A CN 1107267 C CN1107267 C CN 1107267C
- Authority
- CN
- China
- Prior art keywords
- disk
- data stream
- block
- search program
- given
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 239000000203 mixture Substances 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 29
- 238000012546 transfer Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 4
- JTJMJGYZQZDUJJ-UHFFFAOYSA-N phencyclidine Chemical compound C1CCCCN1C1(C=2C=CC=CC=2)CCCCC1 JTJMJGYZQZDUJJ-UHFFFAOYSA-N 0.000 description 4
- 239000000758 substrate Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 235000003642 hunger Nutrition 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001351 cycling effect Effects 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000037351 starvation Effects 0.000 description 2
- 101000911390 Homo sapiens Coagulation factor VIII Proteins 0.000 description 1
- 235000009470 Theobroma cacao Nutrition 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 244000240602 cacao Species 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 102000057593 human F8 Human genes 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 229940047431 recombinate Drugs 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 238000009378 space disposal Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
一种媒体服务器数据存取的方法及装置,该数据存取方法,包括下列步骤:分隔一给定的数字数据流成数个部分;服务器将第i部份储存于由Y个磁盘机组成的磁盘群中的第i磁盘上,并位于第i个区块。储存数据流的第i个部分是直接存储该部分到第i磁盘的第i区块。多媒体服务器数据存取装置包括由Y个磁盘及组成的磁盘群,每一磁盘分为X个区块;一服务器,连结数个磁盘储存***,一给定数据流的各部分,储存于多个区块内。
Description
技术领域
本发明涉及一种媒体服务器数据存取的方法及装置。
技术领域
多媒体服务器,从社会发展来看,是提供有效服务满足需要的重要工具,,如:随选视讯(VOD;Video-on-Demand)、电视购物(teleshopping)、数字视讯传播及远距教学等。
多媒体服务器用于自储存装置存取多媒体数字数据流及以适当的传送速率传送这些数据流给用户(client)。这些多媒体数据流代表视讯、音讯及其它形式的数据,且每个数据流都以一定的服务质量(Quality-of-Service,QoS)被传送,如平均位元率或最大延迟偏差(delay jitter)。
对一媒体服务器及其相关的多媒体传送***而言,一重要的性能准则是最大数量的多媒体数据流,以及作为服务对象的大量用户,是否可同时被支持。
作为给定媒体服务器的数据存取方式,服务器的传送能力形成明显制约,作为普通储存装置的磁盘,一般会因其搜寻时间,磁盘启动、定位时间及循环速度,而产生机械迟延,此机械迟延会使服务器数据流的传送能力降低,这种影响一般可用平行方式存取多媒体储存装置的数据来减轻,如:常用的廉价磁盘***的余阵列RAID(Redundant Array of InexpensiveDisks)***。然而,这些方法与其它并行数据存取技巧,仍会由于使用随机存取文件及不可避免的费用而有所限制,如搜寻时间及小电脑***介面SCSI(Small Computer System Interface)及总线的容量有限制。有关并行存取技术,可参考吴炯宪等人所著的″Performance Evaluation ofa Disk Array for Video-on-Demand Systems″conferenceproceeding,10th.International Conterence on InformationNetoworking(ICOIN-10),Kyung-Ju,Korea,1996,pp.351-356。以按顺序存取文件的方式,取代随机存取文件的方式,可在少量客户的情形下,改良检索数据的输出效率两倍多,但是,当大量客户同时对服务器进行检索时,采用循序法,会因大量客户的的检索需求相互穿插,而影响其效果,以致使循序法几乎与随机存取方式相似。
减少磁盘搜寻的成本可藉由精心设计磁盘排程(disk scheduling)的精心设计,排序控制以及多媒体数据配置来达到,习知的一系列磁盘排程规则,例如:先进先出法(first come first served),搜寻时间最短者最优先法(Shortest seek time first)、扫描(Scan)或电梯(elevator)规则等。虽然,这些规则对减少搜索时间及轮流等待时间,且可增加输出率(throughput)以及使存取更适当,但是,这些排程规则,一般来说,并不能满足实时(real-time)视讯的性能要求。例如,典型的扫描或电梯规则,对磁盘可行限制倒行的前后扫描,并可明显的减少搜寻时间。然而,由于视讯(video)文件在存取单元间占有较少的位置(1ocality),在二个或更多用户存取相同的媒体数据流的机率,在一短时间内是很难预估的。
适用于具有截止期的实时排程的磁盘排序控制规则(diskscheduling algorithm),是最早到期者优先(Earliest Deadline First;EDF)。但是,此规则应用于视讯文件将会造成过长的寻找时间、循环迟延,而无法有效地利用服务器资源。此有关内容,可参考一种EDF扫描规则,其已被推荐应用于多媒体***的I/O出口(“I/O Issues in a Multimedia System”。参见IEEE Computer,PP.69-74,March1994。此EDF扫描规则,首先满足有最早的截止期(deadlines)者的请求。当许多请求具有相同或相近的截止期时,如经要求的视讯(Video-on-demand)及互动式多媒体***的特性,这些相关数据区块主要是采用上述扫描规则进行存取。
图1A、1B及1C,表示采取不同的磁盘排序控制规则检索之间的相对循环长度(round lengh)及最大时间。一次循环(round),表示一检索系列,在这些循环期间,任选长度的一组信息被检索,为当前请求的媒体数据流。使用这种循环,在有互动式多媒体***的实时限制情况下,是特别适合的。
图1A表示在循环规则(rond-robin algorithm)中,相同数据流检索之间的循环长度及最大时间。此循环规则是以固定的顺序,在每一循环中提供所请求的数据流,因此在i循环中检索的第一数据流也是第(i+1)循环中的第一个数据流,如图1A所示。此一给定数据流连续请求检索时间的最大迟延,是由单个循环周期的所决定。使用循环规则的服务器仅需要有足够的缓存储(buffer)空间,以满足一个循环的数据消耗。这种循环(round-robin)排序控制规则的主要缺点是其没有给定在循环期间被检索的媒体区块的相对位置,以及在每一循环中出现的异常顺序,能产生不可预期的较长的寻求延迟。这就说明此数据配置规则与磁盘排序规则需一起考虑的重要性。
图1B表示利用扫描或电梯规则,于相同数据流检索之间的顺序循环及最大时间。扫描规则一般仅适用于按一定次序编序的数据流,这种次序取决于被检索的媒体区块的配置(placement)。采用这种方法,一给定数据流可用于一循环开始及下一循环结束期间,这导致近似二完整循环周期的最大迟延,如上所述。相较于循环(round-robin)规则,扫描规则循环时间较短,但对顺序相同的数据流检索之间的延迟会较长。另外,一利用扫描规则的服务器,一般需要足够的缓冲存储空间,以满足近似二个循环周期的数据消耗。
图1C表示一种子组分组(sub-grouping)规则,于相同数据流间的顺序循环及最大时间。此子组分组规则,分割每一循环成许多小组及分配每一请求数据流至其中一组(此子组是在每一循环中,以固定的次序被服务)。如果所有用户请求的数据流是被分配于同一组,则子组分组规则,即可简化为扫描规则。若每一用户请求的数据流,是被分配为单独一子组中,则此子组分组规则,亦可以循环(round-robin)规则替代。检索之间的最大时间是一信号循环周期及该信号循环周期加上所接近的附加组的时间。如,所分配到1组的给定数据流,可在循环i中,1组的开始及i+1循环中1组的结束,按照扫描规则被提供。该子组分组规则一般产生一个比扫描规则的循环长度长,比循环规则短的循环长度,而其最大检索延迟,小于扫描规则所产生的延迟,但稍微大于循环(round-robin)规则所产生的延迟。
图1A至图1C表示习知的磁盘排序规则对相同数据流检索的循环长度及最大时间。其适用于具实时限制的媒体服务器,为了防止用户端需求得不到足够的数据流的状况,因此于排序规则中,需具有一定的缓冲存储能力。此理论可参考D.J.Gemmell及J.Han,的“Multimedia Network File Server:Multichannel Delay Sensitive Data Retrieval,”ACMMultimedia Systems,pp.240-252,April1994。此缓冲存储能力(buffer conserving property),亦可参考D.Anderson,Y.Osawa及R.Govindan”“A File System for Continuous Media,”ACM Trans.On Computer Systems,pp.311-337,November 1992中的先行扩大(Work-ahead-augmenting)的理论。此缓冲存储能力主要是提供一充分的缓冲存储空间,以避免上述“饥饿”(starvation)情况的发生。
在排序规则中,具有足够的缓冲存储空间,以避免数据检索率低于损耗率,在反复循环中更不会出现缓冲数据量的净减少。其亦可能需要预先取回足够的数据流,以符合最长的循环消耗要求。因循环长度,取决于每一请求数据流的区块数量,如果在每一循环期间,检索的区块数量与给定数据流的消耗率成比例,循环长度可被减小。
对于不加缓冲存储空间排序规则,其允许数据检索率,在一循环期间,落后于入循环消耗率,但可于下一循环中予以补偿,这种方法,更加复杂。
许入控制是媒体服务器设计中的另一重要的因素,当新数据传送请求被该***接纳时,媒体服务器必需判断其可否适于服务质量(Quality of service)水平。
依据上述磁盘排序规则,接受一新的请求而加以服务时,将会增加循环服务长度,且可能防止服务器,对于当前用户提供一致的服务质量。典型的媒体服务器可以提供三种服务质量(QoS)等级:(1)决定性的服务(deterministic),其中所有传送的截止期限,都能担保;(2)统计性的服务(statistical),截止期限只能满足某种程度;及(3)尽其所能的服务(best-effort),无法担保满足所有的截止期限。
对第一种决定性的服务,其对每个请求的多媒体数据流的资源利用率最差。该服务器在允许一新的服务请求与加长每一循环时间之前,先检查已知视讯数据流,有无足够的缓冲存储空间,以避免用户拥挤现象,详见D.Anderson及H.M.Vin和P.Venkat Rangan的“Designing a Multi-Use HDTV storage server”,记载于IEEE J.Selected Areas in Comm.pp.153-164,Jan.1993。
对于一统计***而言,服务器在处理统计性的服务时,以统计值为基础,来调整每一循环长度。服务器亦采用不同策略,可能会丢弃媒体区块(dropping media block),或动态地调整媒体分辩度,或使用其它办法来解决不能满足截止期限的情形。最有效地使用资源可实现从属的质量服务担保,可在接纳新请求时采用一种规则,该规则可动态地计算实时请求和加长循环长度。这种规则载于C.S.WU等人的“On Scalable Design of an ATM_based Video Server”,IEEE International Conference on Communications,1996(SUPERCOMM/ICC’96),Paper no.44-1中。
在多媒体服务器的设计中,媒体数据配置技术,是另一重要因素;其对减少磁盘搜寻的时间特别有用。给定的多媒***元数据流,可以连续方式被储存或分割成几部分,这些部分被分散到各磁盘及存储装置的各区块内。但这种方式,容易分割成一块块,另一方式为可分散地置放于磁盘内,其可避免分割限制的成本。但却又会增加搜寻时间。使用连续储存或分散式储存,可依据数据流间搜寻的分析来决定。检索一连续储存的位元数据流,仅需将一磁盘头放在数据流的起始位置搜寻即可。而,检索分散位元数据流的几个区块,就需要对每一区块读取分别去搜寻,甚至当检索一相对小量的数据时,数据的各部分可能交错地储存于各区域中,因此,必须数据流内进行搜寻。
数据流内的区块搜寻是可避免的,若在一数据流中的要检索的数据,是很均衡地将区块划分为数等分,解决方案之一,就是选择一足够大的读取区块进行检索。然而,若每次在下一循环中需要读取两个或两个以上的区块才能满足用户的需求,则需进行数据流间的搜寻。在这种情况下,可采用限制性摆置(constrained placement)技术,来确保每一区块的置放不超出某一限制,以保证搜寻数据流的时间不超出某一合理的范围。当区块的长度不很大时,这种技巧特别有用,但此技术须配合电梯规则,才能确保区块的置放是在限制范围以内,且此技术亦需配合排序规则,才能一次检索到数据流的所有区块。
若整个视讯数据流,是放在一单个磁盘中,当前存取的视讯数据流的数目有限的。可用分散方式,来克服此种限制。分散方式可用二种不同技术来达到;一为数据流的拆分化(stream stripping),一为数据流的交错化(stream interleaving)当使用RAID(Redundant Array of Inexpensive Disks)时,视讯数据流在被拆分后,才能摆置在磁盘阵列内。因此,视讯数据流才能被并行读取。依据上述排序规则,每一数据流区块,可在每一循环内被存取于每一磁盘。若磁盘组能够同步旋转,并且是操作在Lock-Step模式下,一磁盘内实际扇区(sector),可以被当成是一个大的逻辑扇区来并行存取。由于这些存取,是以并行方式进行的,所以实际上这些区块具有相同的存取时间。因此,存取速率,会随着所存取磁盘数目的增加而增加,在单一磁盘下,磁盘的输出率会随着实际区块大小的增加而有所改进。但是,伴随着区块大小的增加,初始(start up)延迟与所需的缓冲存储空间,亦会相对增加,但区块的大小,是不能无限增加的。
在数据流交错技术中,一般区块是交错的置放在磁盘阵列内。最简单的交错形式,是以循环方式,将区块置入磁盘阵列内,且连续的数据流区块,置放于不同磁盘机。由于这些磁盘机的旋转并非同步,因此可独立运作。至少有二种以上不同方式,可用来存取数据流。一种存取方式为,在每循环中,从每一磁盘内,存取一区块。但需较多的缓冲存储器,以便平衡磁盘负荷。另一存取方式为循环方式,从磁盘阵列内存取数据流。在每一循环中,采用此方式亦能从平衡阵列内存取。所以,在每一循环中,磁盘的负荷能保持平衡,并会达到最大输出率。负载可由交错数据流被平衡。
从所描述的一般媒体摆置技术可看出,媒体摆置技术限制了请求数据流的数目及多媒体传输***中的用户数目。虽然分散化技术,藉同时存取可增加存取输出率,但存取的延迟亦会增加,同时还有一些因素受到影响,如负荷的平衡及存储器的管理等,亦额外增加了最大输出率过程的复杂度。更甚者,分散化技术,一般需储存一复杂的对照表,去追踪磁盘区或一特定储存数据流的储存位置。一般数据摆置技术,因此不能提供一高输出率的能同时对大量用户服务的多媒体传送***。
一些先前技术,如美国专利:5,518,435记载于(issued)May21,1996 to M.H.Anderson,assign to Micropoliscorp.“Multi-user,On-Demand Video Storage and Retrieval System Including Video Signature Computation for Preventing Excessive Instantaneous Server Data Rate”,U.S.Patent No.5,510,905 issued April23,1996 to Yitzhak Birk and entitled“yideo Storage Server Using Track-Pairing,”。美国专利:5,176,52 issued May14,1996 to Takanori Miyamoto et al.,assigned to Hitachi Ltd.,entitled“Multi-media Server for Treating Multi-media Server fortreating Multi-media Server forTreating Multi-media Server for Treating Multi-media Information and Communication SystemEmploying the Multi-media Server”及美国专利:No.5,473,362 issued December5,1995 to R.P.Fitzgeraldet.al.,assigned to Microsoft Corp.,entitled“Videoon Demeand System Comprising StrippedData Across Plural Storable Devices With Multiplex Scheduling”这些先前技术,一般是利用数据拆分(data stripping)法储存多媒体的数据流,使媒体请求服务,更加简易。虽其可改善数据流输出,却因不可避免磁盘式(储存***的机械迟延,而有一些实质上的限制,这些限制,于一些刊物上亦有所论及,如本案发明人吴炯宪等于“Performance Evaluation of a Disk Array for Video-on-Demand Systems,”Proceedings of 10th.International Conferenceof Information Networking(ICOIN-10),Kyung-Ju,Korea,1996,pp.351-356中有所提及。
发明内容
本发明的目的在于提供一种媒体服务器,它可存取数量庞大的视讯数据,具有高效率的顺序并行检索能力,在现有硬件结构上,占用较少的缓冲存储空间,并可减少搜寻延迟及避免复杂的对照表。
本发明的目的还在于提供一种服务器数据存取方法。
本发明提供的媒体服务器,适于储存及读取多媒体数据于一个或更多磁盘式的储存装置。视讯串或其它形式的数据可被分别储存或拆分(stripped)成几个部份,且将各部份储存或依预先决定的次序分散在储存***的磁盘中。用数个检索程序机(retrieval-scheduler),来提供储存数据流的循序化及并行存取数据操作。此媒体服务器,可同步检索及传送用户请求的大量媒体数据流。
本发明的重点之一,在于,储存数据于数个磁盘储存装置,该储存装置,包括Y个磁盘机组成的磁盘群,每一磁盘划分为X区块(Zones),数目X, Y可为相对质数。每一区块可提供实质相等的数据储存数目。一些数据流,可表示成MPEG-2标准视讯形式或其它数据形式,藉由一媒体服务器,储存在储存装置的Y个磁盘中。此服务器,将每一给定数据流分隔成数个部份,并将第i个部份储存于Y个磁盘机组成的磁盘群中的第i磁盘上,并位于X区块中的第i个区块,记作(i mod X)。如第i个部份,可直接被储存于(i mod Y)磁盘的(i mod X)区块,亦可储存于(i mod Y+Y1)磁盘的(i mod X+Z1)区,其中Z1及Y1分别表示距离初始磁区和磁盘间距。本发明的数据摆置技术,可确保任何顺序数据的检索都可以一排序化的次序被提供,且仅有越区时方会发生最大的寻找距离。可使磁盘搜寻时间明显减少,并能维持大量用户在接***均的数据传送频宽。
另一发明的重点之一为,数据检索技术中Y个独立检索程序机,被用于检索储存在Y个磁盘上的数据流,Y个独立检索程序机循环于Y磁盘的全部排序数字。每一检索程序机,处理分成X组的多个检索请求,根据每一给定组的检索请求,于一特定排序期间访问相同磁盘区。这些检索程序机,亦被排列,以某个检索请求在一给定排序期间,访问同一磁盘。这种数据流摆置技术与检索程序机,共同提供循序化的并行检索,可适合于支持大量用户端的实时多媒体数据分配的需求。
本发明的媒体服务器数据存取的方法,包括由Y个磁盘机组成的磁盘群储存***,每一磁盘具有X个区块,其特征在于,包括下列步骤:
分割一给定的数字数据流成数个部分;
储存数据流的第i部份于Y个磁盘组成的磁盘群中的第i个磁盘上,并位于X区块中的第i个区块;以及
提供Y个独立检索程序机,以检索所储存数据流的各部分。
所述的方法,其特征在于,所述储存数据流的第i个部分的步骤是直接存储该部分到(i mod Y)磁盘的(i mod X)区块。
所述的方法,其特征在于,所述储存给定数据流的第i个部分的步骤,进一步包括以下步骤:
储存数据流的第i个部分的到磁盘(i mod Y+Y1)的(i mod X+Z1)区块,其中Z1及Y1分别为一与起始区块的间距及起始磁盘的间距。
所述的方法,其特征在于,每一磁盘的区块数目X及磁盘数目Y为相应质数。
一种多媒体服务器数据存取装置,其特征在于,包括:
至少二个磁盘储存***,该***包括Y个磁盘机组成的磁盘群,磁盘群中的每一个磁盘都具有X个区块;以及
一服务器,连结磁盘储存***,分割数字式数据流为至少二个部分,并储存此给定数据流的的第i部分在存储***的第(i mod Y)盘的第(i mod X)区块;以及
Y个独立检索程序机,连结磁盘储存***和服务器,以检索储存的数据流的各部分。
附图简述:
图1A、1B及1C:表示一些习知的磁盘排序规则于相同数据流检索的循环长度及最大时间示意图。
图2:一互动式多媒体数据传送***的方框图,其中一媒体服务器,是依据本发明技术提供的。
图3:本发明的多磁盘式储存装置的磁盘区块的示意图。
图4:本发明的较佳实施例的检索排序技术的方框图示意图。
图5本发明的较佳实施例的检索程序机的示意图。
具体实施方式
结合附图及实施例对本发明的方法及装置详细说明如下:
本发明可以一多媒体服务器,说明其如何经由一网络来传送多媒体数据流给订户。此处必须被提及的是,其中所描述的技术,也适合在任何其它数据储存及读取中应用,其中的数据流,是同时被一服务器由磁盘式媒体检索及传送至一个及多个用户端。该服务器包括一电脑,特殊应用的集成电路(ASIC,application-specificintegrated circuit),微处理器或任何其它数字化数据处理器,其可以承载所描述的数据储存及读取程序。而用户端,则包括多媒体分散式***中的订户,或任一其它使用者或电脑网络的终端机,如电缆网路,电话网络或其它分散式网络。
图2表示一多媒体数据传送***10,包括一多媒体服务器12,其连结于一磁盘式储存子***14。此储存子***14,包括一些磁盘式储存装置14-i,i=1,2,…K,其中每一个装置又可包括数个磁盘。此媒体服务器12,可以用来自磁盘式储存装置14-i存取数据,这些将于后详细叙述。
磁盘式储存装置14-i,可以为磁、光、磁及光(magneto-optical)储存装置或其它单一磁盘或数个磁盘形式组合媒体式储存装置。多媒体服务器12,检索一多媒体数据流N,自磁盘式储存子***14检索,并经一网络16传送已被检索的数据流至多媒体数据传送***10的1个或多个订户18-i(i=1,2,…M)。该多媒体服务器检索并传送来自订户18-i的数据流至服务器12。这些用户18-i,一般被视为用户端。
***10,可为多媒体数据传送***的随选视讯(Video-on-demand;VOD)形式,服务器12检索及传送的数据流,符合MPEG-2标准,相关于MPEG-2标准可参考ISO/IECDIS 13818-1,“Information Technology-Generic Coding of Moving Pictures and Associated AudioInformation:Systems”,及ISO/IEC DIS 13818-2,“Technology-Generic Coding of Moving Pictures andAssociated Audio Information:Video”此数据流,亦采用事先约定的其它标准格式。
媒体服务器12的重要特征之一,数据流的个数N,可可全部被同时支持。依据媒体服务器,支持的数据流数量参数的限制,包括:(i)在储存子***中,位于相同磁盘的不同区块或不同磁盘上的数据流的给定部份检索之间的磁盘搜寻时间;(ii)数据流在磁盘上的分布;(iii)于每一磁盘检索的数据读取量;(iv)每一磁盘机可支持的数据流数目;以及(v)于磁盘至服务器之间数据传输的检索频宽;这些因素,应于多媒体服务器设计中予以考虑。
磁盘搜寻操作一般包括四个主要部份:(i)加速(ii)定速运动(iii)减速运动及(iv)磁盘的调整时间。平均磁盘搜寻时间的计算,是将所有可能搜寻的总时间除以搜寻的次数。最长的搜寻时间,发生在磁头必须搜寻的整个磁盘机,对于较常的时间的搜寻,加速、减速及磁盘的调整时间部份,可被视为定值,较短时间的搜寻,则因上述各部分时间难以估计,不能视为定值。最长搜寻时间与平均磁盘搜寻时间的差异(Variance),大约可达2比1的程度,举例而言,对Seagate ST32550的磁盘机,其最长搜寻时间大约是18ms,而平均磁盘搜寻时间,大约是8.5ms。
以下是几个影响服务器12的数据传送输出率及磁盘搜寻时间因素,其一,在一给定磁盘的储存数据的位置。位于磁盘外部边缘的磁轨(track),比位于磁盘内部边缘的磁轴为长,因此,外部边缘的磁轨储存容量,亦比内部边缘的磁轨储存容量大。如:Segate ST31250/ST32550外部磁轨的储存容量,为74900位元组,而内部磁轨的储存容量,只有51540位元组。对固定旋转速度而言,读取外部磁轨数据的频宽,要大于读取内部磁轨的频宽,另一影响服务器12数据传送输出率的因素,是一给定数据流在储存子***14磁盘上的分配状态。如,所储存的视讯数据流一般很大,因此,在不同储存数据流读取单元间很少有剩余位置。于每一磁盘读取及传送的数据的数量,亦影响服务器的性能。以一Seagate ST31250盘为例:以循序数据的方式读取区块的大小为100KBytes到500K Bytes时,其磁盘的输出率,均约为7M Bytes/s。以随机数据方式读取,当读取区块的大小是500K Bytes时,其磁盘输出率降为4.8M Bytes/s,但当读取区块的大小降为100K Bytes,其输出率降为2.8M Bytes/s。对循序数据的读取而言,绝大部份时间,是花费在数据传送上。只有小部时间,花费在数据搜寻上,因此可藉由增大每次传送的数据量,来降低磁盘的成本。
本发明提供一数据配置及检索排序技术。这些技术允许一类似循序化数据的检索,这种方式可减少服务器磁盘读写头的搜寻时间,以同时支持更多个订户。这种循序化的检索,可避免先前所提的一些传统技术,于交错化检索时,其倾向于导致似随机化的检索方式而产生限制订户数量的问题。本发明的似循序化检索方式,以经分开的或拆分化的数据流,依据事先订好的次序储存或分散储存于子***14的磁盘上。
图3表示本发明的多磁盘式储存装置的磁盘区块的分割状态示意图。一给定磁盘的X区块,其可包括一相同数量的储存空间,应注意的是,此并非本发明的必要条件。每一磁盘的X区及Y个磁盘的数目,于磁盘式(disk-based)储存子***,X及Y可为相对质数,即其中无共同大于1的公因素。如,x可被选为Y+1,因此X及Y为相对质数,且每一X区,可有等于给定的Y磁盘的数字的1/X或1/(Y+1)。相对的X可被选为Y-1,其亦将提供相对X及Y的质数值。任何其它适用于选择相对质数X及Y值技术,在此,皆可被适用。于一改良***10,其储存子***14, 可包括磁盘群15,每一磁盘可储存2至8Gbytes,且每一磁盘区分16个区块,每一区块有125至500Mbytes。而应强调的是,每一给定磁盘Y中之磁盘及每一X区,不需有相同的储存能力。如,磁盘群中任一磁机的容量,与X相比,可以为多于或少于X值。但是至少一Y磁盘的子集合,可包括近似于X的区区块,如图3所示。此为一给定储存子***14,可包括更多的磁盘。
本发明的数据摆置技术,可将一给定数据流分散(scatters)成多个部分,存储在数据储存子***14的不同磁盘及磁盘区。此技术利用一模组,其可避免复杂的对应表及减少磁盘寻求时间,因此相较于先前所述的习知数据摆置技术,有更显著的好处。
余数理表明若二相对互质数p及q为余数基底,则在0和p*q-1间的数目,可由p及q重组。在本发明的一较佳实施例中,X区的数目及磁盘群Y的数目,皆被视为余数基底。于每一Y磁盘群中的一磁盘的X区块数目,都可被选为磁盘数Y再加1,即X=Y+1。此处X与Y为相对质数。因此,给定X区的位置,可由相对质数基底的X及Y决定,不需复杂的对应表。本发明的数据流中的每一数据流,加以拆分或分别分至各区,若一被拆分化的数据流为V_Segs,则V_Segs分散或储存于磁盘的X区,如第i个位置或一给定数据流的V_Segs,被储存在磁盘(i mod Y)区(i mod X)内。这些于后将有更详细讨论,此摆置结合一检索排序技术,允许一储存数据流的循序化并行存取。
例如,对一磁盘基底的储存子***14,其包括4个磁盘,由0至3(即,Y=4)和每一磁盘有五个区块,自0至4(即,X=Y+1=5),依据上述方法,对一给定数据流V_seg的第i个部份的摆置,分隔为<磁盘,区>位置,可以<(i mod Y),(imod X)>表示,此给定数据流被储存依<磁盘,区>的次序:<0,0>,<1,1>,<2,2>,<3,3>,<0,4>,<1,0>,<2,1>,<3,2>,<0,3>,…另一较佳实施例为,可以间距(offset)摆置方法,借由<磁盘,区>定义起始值的方式表示。
在另一实施例中,一给定数据流的第i个部份,是储存在一磁盘(i mod Y+Y1)之(i mod X+Z1)中,其中Z1及Y1分别为一起始值之间距及一起始磁盘的间距。例如,一起始<磁盘,区><2,1>之间距可应用到上述次序的每一元素,而产生系列相关的次序值:<2,1>,<3,2>,<0,3>,<1,4>,<2,0>,<3,1>,<0,2>,<1,3>,<2,4>,…。本发明于交互区于邻近磁盘上的数据摆置技术,及依据先前磁盘循环下一指标中的自最后一个至第一个磁盘的持续区指标的转换。其中的储存子***14的磁盘,因而被构成如一整体的次序化储存元件,每一媒体数据流被分别分成多个部份或V_segs,并以先前方式储存着。多媒体服务器,依据本发明先前所提的较佳实施例,其亦可利用一检索排序技术,来说明图4及图5的连结关系。此检索排序技术排序区间的次序,其中所有请求用户,能自储存子***14的磁盘读取数据。
对于一给定数据流,在每一允序区的数据请求,是被储存在一V_Seg的磁盘上。数据流因不同的位元率一般亦有不同的V_Seg大小,亦典型地将与传送时间区间相关。此检索排序技术,可用来平行化读取操作。依据本发明的一读取允序技术的较佳实施例,每一Y磁盘于子***14中,利用一特定的独立允序器r_scheduler,于一给定的允序区间内。而Y中各个不同的r_scheduler总数可用在一Y磁群的储存子***上。
图4说明Y中不同的r_scheduler被循环使用于储存子***14的不同磁盘中,以因应不同的允序区间。图4的储存子***的范例,包括五个磁盘14-1至14-5,五个r_允序器R0至R4,用来控制自五个磁盘14-1至14-5的需求数据流读取。这些rscheduler被运用于各个允序区间之磁盘上,如一给定磁盘将使用一不同的r_scheduler,是由数据读取程序的允序区间来决定。对于允序区间相关于r_scheduler的指定在图4中做说明,磁盘14-1是用r_scheduler R3,磁盘14-2用r_scheduler R4,磁盘14-3用r_scheduler R0,磁盘14-4用r_scheduler R1,及磁盘14-5用r_scheduler R2,如上所述,指定将依允序区间而变化,其运用情形于图4中以箭号的连结做说明。例如,在下一允序区间,磁盘14-4将使用r_scheduler R0,磁盘14-5将用r_scheduler R1,依此类推。
图5表示r_scheduler R0,R1,及R2三个范例,来说明其适用于一三个磁盘数据储存子***于九个连续允序区间T0至T9。这些r_scheduler组织数据流需求群,以分享储存子***磁盘的读取,并处理磁碟读取频宽及时间。其是可被预见的,于图5r_scheduler范例的需求中,被组织为0-11群体,若B表示多媒体服务器12的一磁盘总频宽,其适用于,若全体目前的需求于r_scheduler,使一总频宽小于或等于B时。如上所述,r_scheduler的数目等于储存子***14的磁盘数目,且一给定r_scheduler,读取同一磁盘的需求,于一给定允序区间。在一给定r_scheduler内,这些需求被分成数群,其中群体的所有数目,总是读取同一磁盘区与一给定的允序区间。此指定可确保每一群体,要维持于一适当水平的需求读取总频宽。
因为每一个数据流的数据是以分散的方式储存于Y个磁盘机中磁盘的X个区块,一给定的r_scheduler,是为读取单一磁盘区(zone)的时间,故而在读取所请求的数据流时,必须依其储存分布的变化,如前所述,变换r_scheduler所连结使用的磁盘机。因为,每一r_scheduler在读取每一磁盘机中的区域时,是以循环的方式读取,当有新的请求加入时,则依照本发明的规则,可以利用其中之一个r_scheduler,其服务区域正好是所请求的数据流起始的区域。若此,r_scheduler已达饱和,则等待下一个r_scheduler,来服务该请求,以保证服务质量。
本发明的一服务器,包括一随机读取缓冲存储器,其使成读取率及消耗率平衡,而避免前述(starvation)问题。一简易的缓冲空间处理方法,适用于本发明,可牵涉对每一需求数据流的双缓冲空间规定,和缓冲空间之一用以传送需求数据流至用户端,当其他自磁盘中的数据读取充满。此避免上述不足(starvation-avoidance)状况,对如此的缓冲技术以一给定值Rs>Rt表示,其中Rs是自磁盘至缓冲空间的传输率,Rt为自缓冲空间至用户端数据流传送的消耗率,先前缓冲存储器(buffer-conserving)的需求,显示需求对每一多媒体数据流缓冲空间大小,应至少SB=Tacc×Rs×Rt/(Rs-Rt),其中Tacc是储存读取时间。自Rs>Rt及SB=Tacc*Rs*Rt/(Rs-Rt),对每一数据流的需求缓冲空间大小可被决定。因上述摆置及读取技术,产生总磁盘读取时间,对一适当的平均搜寻时间,此需求缓冲大小亦显著减少。举例。若Tacc=8.5ms,Rt=1.5Mbits/s,和Rs=1.55Mbit/s,此需求缓冲大小SB,仅50Kbytes左右。此多媒体数据流读取率Rs越大,则服务器12,所需要的缓冲空间就越小,有其显著的好处。
最后要提及的是,上述的较佳实施,仅为阐述本发明构思,在不脱离本发明的精神下,熟悉本技术的人员,所做的任何修改,皆应函盖在本发明的保护范围内。
Claims (20)
1、一媒体服务器数据存取的方法,包括由Y个磁盘机组成的磁盘群储存***,每一磁盘具有X个区块,其特征在于,包括下列步骤:
分割一给定的数字数据流成数个部分;
储存数据流的第i部份于Y个磁盘组成的磁盘群中的第i个磁盘上,并位于X区块中的第i个区块;以及
提供Y个独立检索程序机,以检索所储存数据流的各部分。
2、根据权利要求1所述的方法,其特征在于,所述储存数据流的第i个部分的步骤是直接存储该部分到(imod Y)磁盘的(imod X)区块。
3、根据权利要求1所述的方法,其特征在于,所述储存给定数据流的第i个部分的步骤,进一步包括以下步骤:
储存数据流的第i个部分的到磁盘(imod Y+Y1)的(imod X+Z1)区块,其中Z1及Y1分别为一与起始区块的间距及起始磁盘的间距。
4、根据权利要求1所述的方法,其特征在于,每一磁盘的区块数目X及磁盘数目Y为相应质数。
5、根据权利要求4所述的方法,其特征在于,所述每一磁盘的区块数X,等于磁盘数目Y加1。
6、根据权利要求1所述的方法,其特征在于,所述每一独立检索程序机,用于处理检索请求,以使给定的检索程序机的请求,在一给定的排序期间,访问同一磁盘。
7、根据权利要求6所述的方法,其特征在于,所述给定检索程序机的检索请求被区分成X组,根据一给定组的所有请求对相同磁盘区块于一给定期间进行访问。
8、根据权利要求1所述的方法,其特征在于,所述检索程序机被排列,以使每一检索请求,在多个程序期间依序访问多个磁盘存储***的Y个磁盘。
9、根据权利要求1所述的方法,其特征在于,所述给定的检索程序机被排列,以对检索程序机处理的X组请求的每一组提供大体相等的频宽。
10、根据权利要求1所述的方法,其特征在于,进一步包括以下步骤:
接收一请求储存数据流的附加检索请求;
设法放置附加请求到一给定检索程序机,该程序机将对包含存储数据流初始块的磁盘进行下一次访问。
若一给定的读取允序器不能容纳附加请 求时,对剩余的检索程序机顺序扫描直到有足够的频宽能容纳该附加请求。
11、一种多媒体服务器数据存取装置,其特征在于,包括:
至少二个磁盘储存***,该***包括Y个磁盘机组成的磁盘群,磁盘群中的每一个磁盘都具有X个区块;
一服务器,连结磁盘储存***,分割数字式数据流为至少二个部分,并储存此给定数据流的的第i部分在存储***的第(imod Y)盘的第(imod X)区块;以及
Y个独立检索程序机,连结磁盘储存***和服务器,以检索储存的数据流的各部分。
12、根据权利要求11所述的装置,其特征在于,所述服务器,将数据流的第i部分直接储存在磁盘(imod Y)的(imodX)区块内。
13、根据权利要求11所述的装置,其特征在于,所述服务器,进一步储存数据流的第i个部分于磁盘(imod Y+Y1)的第(imod X+Z1)区块中,其中Z1,Y1分别表示与原始区块之间的间距及与原始磁盘之间的间距。
14、根据权利要求11所述的装置,其特征在于,所述每一磁盘区块数目X及磁盘数Y为相应质数。
15、根据权利要求14所述的装置,其特征在于,所述每一磁盘区块X的数目,等于磁盘Y的数字加1。
16根据权利要求11所述的装置,其特征在于,所述每一独立检索程序机;处理大量检索请求,以使检索程序机的请求在给定期限访问相同磁盘。
17、根据权利要求16所述的装置,其特征在于,所述给定检索程序机的检索请求被分割为X组,于一给定程序区间,一给定组的请求对相同磁盘区块进行访问。
18、根据权利要求11所述的装置,其特征在于,所述检索程序机,被排列允许每一检索请求,依序在多个排序期访问多个磁盘储存***的y磁盘群。
19、根据权利要求11所述的装置,其特征在于,所述给定的检索程序机被排序,以给所处理的X组请求的每一组提供大体相等频宽。
20、根据权利要求11所述的装置,其特征在于,所述服务器,进一步接收一个请求检索数据流的附加检索请求,设法置放附加请求到检索程序机,程序机将对包含有一储存数据流的磁盘进行下一次访问;如果给定的检索程序机不能容纳所述附加请求,则依序对剩余的检索程序机进行扫描直到检索程序机有足够频宽容纳附加请求。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/736,215 US5926649A (en) | 1996-10-23 | 1996-10-23 | Media server for storage and retrieval of voluminous multimedia data |
US08/736,215 | 1996-10-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1182237A CN1182237A (zh) | 1998-05-20 |
CN1107267C true CN1107267C (zh) | 2003-04-30 |
Family
ID=24958980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN97117100.9A Expired - Fee Related CN1107267C (zh) | 1996-10-23 | 1997-10-22 | 媒体服务器数据存取的方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5926649A (zh) |
CN (1) | CN1107267C (zh) |
TW (1) | TW321765B (zh) |
Families Citing this family (106)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0886971B1 (en) * | 1996-12-23 | 2004-10-27 | Koninklijke Philips Electronics N.V. | Method and system for supplying data streams |
US6654933B1 (en) | 1999-09-21 | 2003-11-25 | Kasenna, Inc. | System and method for media stream indexing |
WO1998054646A2 (en) * | 1997-05-26 | 1998-12-03 | Koninklijke Philips Electronics N.V. | System for retrieving data in a stream server |
DE69830965T2 (de) * | 1997-05-26 | 2006-05-24 | Koninklijke Philips Electronics N.V. | System zur wiedergabe von daten in einem video-server |
JPH1118083A (ja) * | 1997-06-25 | 1999-01-22 | Sony Corp | ディジタル信号符号化方法及び装置、信号記録媒体並びに信号伝送方法 |
US6516356B1 (en) | 1997-09-30 | 2003-02-04 | International Business Machines Corporation | Application interface to a media server and a method of implementing the same |
US6189071B1 (en) * | 1997-10-06 | 2001-02-13 | Emc Corporation | Method for maximizing sequential output in a disk array storage device |
US6237063B1 (en) * | 1997-10-06 | 2001-05-22 | Emc Corporation | Load balancing method for exchanging data in different physical disk storage devices in a disk array storage device independently of data processing system operation |
US6061761A (en) * | 1997-10-06 | 2000-05-09 | Emc Corporation | Method for exchanging logical volumes in a disk array storage device in response to statistical analyses and preliminary testing |
US6141493A (en) * | 1997-11-04 | 2000-10-31 | Chen; Meng-Chang | Filing of variable-bit-rate video information on zoned disks |
US6330609B1 (en) | 1997-11-07 | 2001-12-11 | Lucent Technologies, Inc. | Admission control system and method for media-on-demand servers |
US6415373B1 (en) | 1997-12-24 | 2002-07-02 | Avid Technology, Inc. | Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner |
US6374336B1 (en) * | 1997-12-24 | 2002-04-16 | Avid Technology, Inc. | Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner |
US6094605A (en) * | 1998-07-06 | 2000-07-25 | Storage Technology Corporation | Virtual automated cartridge system |
US6571391B1 (en) * | 1998-07-09 | 2003-05-27 | Lucent Technologies Inc. | System and method for scheduling on-demand broadcasts for heterogeneous workloads |
US6134586A (en) * | 1998-07-31 | 2000-10-17 | Philips Electronics N.A. Corp. | Striping data across disk zones |
JP2002529878A (ja) * | 1998-10-30 | 2002-09-10 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 記憶システム |
US7107395B1 (en) | 1998-12-31 | 2006-09-12 | Emc Corporation | Apparatus and methods for operating a computer storage system |
US6487561B1 (en) | 1998-12-31 | 2002-11-26 | Emc Corporation | Apparatus and methods for copying, backing up, and restoring data using a backup segment size larger than the storage block size |
US6385706B1 (en) * | 1998-12-31 | 2002-05-07 | Emx Corporation | Apparatus and methods for copying a logical object to a primary storage device using a map of storage locations |
US6397308B1 (en) | 1998-12-31 | 2002-05-28 | Emc Corporation | Apparatus and method for differential backup and restoration of data in a computer storage system |
JP3255887B2 (ja) * | 1999-02-15 | 2002-02-12 | 松下電器産業株式会社 | 磁気ディスク装置およびそのディスクアクセス方法 |
US6401126B1 (en) * | 1999-03-10 | 2002-06-04 | Microsoft Corporation | File server system and method for scheduling data streams according to a distributed scheduling policy |
US6691208B2 (en) * | 1999-03-12 | 2004-02-10 | Diva Systems Corp. | Queuing architecture including a plurality of queues and associated method for controlling admission for disk access requests for video content |
US6378036B2 (en) * | 1999-03-12 | 2002-04-23 | Diva Systems Corporation | Queuing architecture including a plurality of queues and associated method for scheduling disk access requests for video content |
US6317808B1 (en) * | 1999-03-26 | 2001-11-13 | Adc Telecommunications, Inc. | Data storage system and method of routing or assigning disk write requests among a set of disks using weighted available disk space values |
US8200837B1 (en) * | 1999-04-26 | 2012-06-12 | Hewlett-Packard Development Company, L.P. | Method and system for maintaining a content server at safe load conditions |
US6385673B1 (en) | 1999-10-06 | 2002-05-07 | Sun Microsystems, Inc. | System and method for adjusting performance of a media storage by decreasing a maximum throughput by a primary derate parameter to specify available & guaranteed rate parameters and determining ring buffer sizes for streams |
US6721789B1 (en) | 1999-10-06 | 2004-04-13 | Sun Microsystems, Inc. | Scheduling storage accesses for rate-guaranteed and non-rate-guaranteed requests |
US6438630B1 (en) | 1999-10-06 | 2002-08-20 | Sun Microsystems, Inc. | Scheduling storage accesses for multiple continuous media streams |
US6496899B1 (en) | 2000-02-28 | 2002-12-17 | Sun Microsystems, Inc. | Disk scheduling system with bounded request reordering |
US7277956B2 (en) * | 2000-07-28 | 2007-10-02 | Kasenna, Inc. | System and method for improved utilization of bandwidth in a computer system serving multiple users |
US7310678B2 (en) * | 2000-07-28 | 2007-12-18 | Kasenna, Inc. | System, server, and method for variable bit rate multimedia streaming |
US6603625B1 (en) * | 2000-09-11 | 2003-08-05 | Western Digital Technologies, Inc. | Spindle synchronizing a plurality of spindles connected to a multi-dimensional computer network |
US7246369B1 (en) | 2000-12-27 | 2007-07-17 | Info Valve Computing, Inc. | Broadband video distribution system using segments |
US7143433B1 (en) | 2000-12-27 | 2006-11-28 | Infovalve Computing Inc. | Video distribution system using dynamic segmenting of video data files |
DE10101617A1 (de) * | 2001-01-16 | 2003-01-16 | Fenkart Informatik & Telekommu | Server und Verfahren zum Betrieb eines Servers |
US20030018978A1 (en) * | 2001-03-02 | 2003-01-23 | Singal Sanjay S. | Transfer file format and system and method for distributing media content |
AU2002247257A1 (en) * | 2001-03-02 | 2002-09-19 | Kasenna, Inc. | Metadata enabled push-pull model for efficient low-latency video-content distribution over a network |
US7274659B2 (en) | 2001-07-27 | 2007-09-25 | Western Digital Ventures, Inc. | Providing streaming media data |
US6961834B2 (en) * | 2001-10-12 | 2005-11-01 | Sonics, Inc. | Method and apparatus for scheduling of requests to dynamic random access memory device |
US7194561B2 (en) | 2001-10-12 | 2007-03-20 | Sonics, Inc. | Method and apparatus for scheduling requests to a resource using a configurable threshold |
US6804738B2 (en) | 2001-10-12 | 2004-10-12 | Sonics, Inc. | Method and apparatus for scheduling a resource to meet quality-of-service restrictions |
US6578117B2 (en) | 2001-10-12 | 2003-06-10 | Sonics, Inc. | Method and apparatus for scheduling requests using ordered stages of scheduling criteria |
US6892167B2 (en) * | 2001-11-28 | 2005-05-10 | Sypris Data Systems, Inc. | Real-time data acquisition and storage network |
US6925499B1 (en) | 2001-12-19 | 2005-08-02 | Info Value Computing, Inc. | Video distribution system using disk load balancing by file copying |
US7039784B1 (en) | 2001-12-20 | 2006-05-02 | Info Value Computing Inc. | Video distribution system using dynamic disk load balancing with variable sub-segmenting |
US7254643B1 (en) | 2002-08-08 | 2007-08-07 | At&T Corp. | System and method for providing multi-media services to communication devices over a communications network |
WO2004025405A2 (en) * | 2002-09-10 | 2004-03-25 | Thomson Licensing S.A. | Video on demand server system and method |
US20040199650A1 (en) * | 2002-11-14 | 2004-10-07 | Howe John E. | System and methods for accelerating data delivery |
US6862658B2 (en) * | 2002-11-18 | 2005-03-01 | Texas Instruments Incorporated | Retrieving streams of data from rotating storage medium while balancing various requirements |
US7552192B2 (en) * | 2002-12-18 | 2009-06-23 | Ronnie Gerome Carmichael | Massively parallel computer network-utilizing MPACT and multipoint parallel server (MPAS) technologies |
US7180912B1 (en) | 2003-01-06 | 2007-02-20 | At&T Corp. | System and method for providing a plurality of multi-media services using a number of media servers to form a preliminary interactive communication relationship with a calling communication device |
US7324555B1 (en) | 2003-03-20 | 2008-01-29 | Infovalue Computing, Inc. | Streaming while fetching broadband video objects using heterogeneous and dynamic optimized segmentation size |
US7877439B2 (en) | 2003-04-17 | 2011-01-25 | Thomson Licensing | Data requesting and transmitting devices and processes |
US7366163B1 (en) | 2003-04-25 | 2008-04-29 | At&T Corp. | Method for providing local and toll services with LNP, and toll-free services to a calling party which originates the call from an IP location connected to a sip-enabled IP network |
US7577636B2 (en) * | 2003-05-28 | 2009-08-18 | Fernandez Dennis S | Network-extensible reconfigurable media appliance |
JP4237549B2 (ja) * | 2003-05-29 | 2009-03-11 | 株式会社日立国際電気 | 循環記録装置 |
US7107423B2 (en) * | 2003-07-10 | 2006-09-12 | Hewlett-Packard Development Company, L.P. | Methods and apparatus for data retrieval |
US7844992B2 (en) * | 2003-09-10 | 2010-11-30 | Thomson Licensing | Video on demand server system and method |
US7665069B2 (en) * | 2003-10-31 | 2010-02-16 | Sonics, Inc. | Method and apparatus for establishing a quality of service model |
US9087036B1 (en) | 2004-08-12 | 2015-07-21 | Sonics, Inc. | Methods and apparatuses for time annotated transaction level modeling |
US8504992B2 (en) * | 2003-10-31 | 2013-08-06 | Sonics, Inc. | Method and apparatus for establishing a quality of service model |
US7644183B2 (en) * | 2003-12-11 | 2010-01-05 | Searete, Llc | Accelerated reception of spatial-to-temporal translated data |
WO2005060528A2 (en) * | 2003-12-11 | 2005-07-07 | Searete Llc | Spatial-to-temporal data translation and transmission |
US20050131863A1 (en) * | 2003-12-11 | 2005-06-16 | W. Daniel Hillis | Reception of spatial-to-temporal translated data |
US20050132415A1 (en) * | 2003-12-11 | 2005-06-16 | Hillis W. D. | Spatial-to-temporal data translation and transmission |
US20050132149A1 (en) * | 2003-12-11 | 2005-06-16 | W. Daniel Hillis | Spatial-to-temporal data translation and scheduling and control |
US7567555B1 (en) | 2004-03-22 | 2009-07-28 | At&T Corp. | Post answer call redirection via voice over IP |
US20050262245A1 (en) * | 2004-04-19 | 2005-11-24 | Satish Menon | Scalable cluster-based architecture for streaming media |
US7584324B2 (en) * | 2004-08-12 | 2009-09-01 | University Of Southern California | Statistical based admission control technique using three random variable admission control |
US7433319B2 (en) * | 2004-10-27 | 2008-10-07 | At&T Intellectual Property I, L.P. | System and method for collecting and presenting service level agreement metrics in a switched metro ethernet network |
US7822930B1 (en) * | 2005-12-01 | 2010-10-26 | Teradata Us, Inc. | Balanced allocation of multiple resources, or of multiple resources from multiple providers |
US7562195B2 (en) * | 2005-12-01 | 2009-07-14 | Teradata Us, Inc. | Balanced allocation of multiple resources, or of multiple resources from multiple providers |
US7793329B2 (en) * | 2006-02-06 | 2010-09-07 | Kasenna, Inc. | Method and system for reducing switching delays between digital video feeds using multicast slotted transmission technique |
US20080109557A1 (en) * | 2006-11-02 | 2008-05-08 | Vinay Joshi | Method and system for reducing switching delays between digital video feeds using personalized unicast transmission techniques |
US8868397B2 (en) * | 2006-11-20 | 2014-10-21 | Sonics, Inc. | Transaction co-validation across abstraction layers |
US7779175B2 (en) * | 2007-05-04 | 2010-08-17 | Blackwave, Inc. | System and method for rendezvous in a communications network |
US8554941B2 (en) * | 2007-08-30 | 2013-10-08 | At&T Intellectual Property I, Lp | Systems and methods for distributing video on demand |
US8799535B2 (en) * | 2008-01-11 | 2014-08-05 | Akamai Technologies, Inc. | Storage of data utilizing scheduling queue locations associated with different data rates |
US8364892B2 (en) * | 2008-01-11 | 2013-01-29 | Verivue, Inc. | Asynchronous and distributed storage of data |
WO2009089386A2 (en) * | 2008-01-11 | 2009-07-16 | Verivue, Inc. | Asynchronous and distributed storage of data |
US8161166B2 (en) * | 2008-01-15 | 2012-04-17 | Adobe Systems Incorporated | Information communication using numerical residuals |
US8510370B2 (en) * | 2008-02-26 | 2013-08-13 | Avid Technology, Inc. | Array-based distributed storage system with parity |
US8082320B1 (en) | 2008-04-09 | 2011-12-20 | Adobe Systems Incorporated | Communicating supplemental information over a block erasure channel |
US20090328115A1 (en) * | 2008-06-27 | 2009-12-31 | At&T Delaware Intellectual Property, Inc. | Systems and Methods for Distributing Digital Content |
US20100011091A1 (en) * | 2008-07-10 | 2010-01-14 | Blackwave Inc. | Network Storage |
US8954976B2 (en) * | 2008-07-10 | 2015-02-10 | Juniper Networks, Inc. | Data storage in distributed resources of a network based on provisioning attributes |
US9176779B2 (en) * | 2008-07-10 | 2015-11-03 | Juniper Networks, Inc. | Data access in distributed systems |
US8650270B2 (en) * | 2008-07-10 | 2014-02-11 | Juniper Networks, Inc. | Distributed computing with multiple coordinated component collections |
US8364710B2 (en) * | 2008-07-10 | 2013-01-29 | Juniper Networks, Inc. | Model-based resource allocation |
US8191070B2 (en) * | 2008-07-10 | 2012-05-29 | Juniper Networks, Inc. | Dynamic resource allocation |
US8706900B2 (en) * | 2008-07-10 | 2014-04-22 | Juniper Networks, Inc. | Dynamic storage resources |
US8099402B2 (en) * | 2008-07-10 | 2012-01-17 | Juniper Networks, Inc. | Distributed data storage and access systems |
US8887166B2 (en) * | 2008-07-10 | 2014-11-11 | Juniper Networks, Inc. | Resource allocation and modification using access patterns |
US9066141B2 (en) * | 2009-01-21 | 2015-06-23 | Juniper Networks, Inc. | Resource allocation and modification using statistical analysis |
US8750315B2 (en) * | 2009-01-23 | 2014-06-10 | Akamai Technologies, Inc. | Efficiently storing transport streams |
US9565397B2 (en) * | 2009-02-26 | 2017-02-07 | Akamai Technologies, Inc. | Deterministically skewing transmission of content streams |
US9906757B2 (en) * | 2009-02-26 | 2018-02-27 | Akamai Technologies, Inc. | Deterministically skewing synchronized events for content streams |
US8650602B2 (en) * | 2009-02-27 | 2014-02-11 | Akamai Technologies, Inc. | Input queued content switching using a playlist |
CN102833581B (zh) * | 2012-08-27 | 2015-09-16 | 中兴通讯股份有限公司 | 内容管理的方法和*** |
US9891866B1 (en) * | 2012-10-01 | 2018-02-13 | Amazon Technologies, Inc. | Efficient data retrieval based on random reads |
TWI524756B (zh) | 2013-11-05 | 2016-03-01 | 財團法人工業技術研究院 | 儲存影音資料的方法與裝置 |
US10055253B2 (en) * | 2014-03-25 | 2018-08-21 | Mellanox Technologies, Ltd. | Reducing processor loading during housekeeping operations |
TWI536816B (zh) | 2014-05-12 | 2016-06-01 | 財團法人工業技術研究院 | 網路資料平行傳輸排程的方法與系統 |
US10320906B2 (en) | 2016-04-29 | 2019-06-11 | Netapp, Inc. | Self-organizing storage system for asynchronous storage service |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0485110B1 (en) * | 1990-11-09 | 1999-08-25 | Emc Corporation | Logical partitioning of a redundant array storage system |
CA2069711C (en) * | 1991-09-18 | 1999-11-30 | Donald Edward Carmon | Multi-media signal processor computer system |
US5463758A (en) * | 1993-08-02 | 1995-10-31 | International Business Machines Corporation | System and method for reducing seek time for read operations in mirrored DASD files |
US5510905A (en) * | 1993-09-28 | 1996-04-23 | Birk; Yitzhak | Video storage server using track-pairing |
US5473362A (en) * | 1993-11-30 | 1995-12-05 | Microsoft Corporation | Video on demand system comprising stripped data across plural storable devices with time multiplex scheduling |
US5732239A (en) * | 1994-05-19 | 1998-03-24 | Starlight Networks | Method for operating a disk storage system which stores video data so as to maintain the continuity of a plurality of video streams |
US5579501A (en) * | 1994-11-30 | 1996-11-26 | Bull Hn Information Systems Inc. | Method for transforming a hash bucket number to a control interval to identify the physical location of information in a mass memory |
US5649093A (en) * | 1995-05-22 | 1997-07-15 | Sun Microsystems, Inc. | Server disk error recovery system |
US5678061A (en) * | 1995-07-19 | 1997-10-14 | Lucent Technologies Inc. | Method for employing doubly striped mirroring of data and reassigning data streams scheduled to be supplied by failed disk to respective ones of remaining disks |
-
1996
- 1996-10-23 US US08/736,215 patent/US5926649A/en not_active Expired - Lifetime
-
1997
- 1997-05-30 TW TW086107364A patent/TW321765B/zh not_active IP Right Cessation
- 1997-10-22 CN CN97117100.9A patent/CN1107267C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
TW321765B (en) | 1997-12-01 |
US5926649A (en) | 1999-07-20 |
CN1182237A (zh) | 1998-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1107267C (zh) | 媒体服务器数据存取的方法及装置 | |
Freedman et al. | The SPIFFI scalable video-on-demand system | |
US20030005457A1 (en) | Video file server cache management using movie ratings for reservation of memory and bandwidth resources | |
Vernick et al. | Adventures in building the stony brook video server | |
Ghandeharizadeh et al. | Design and implementation of scalable continuous media servers | |
Juhn et al. | Adaptive fast data broadcasting scheme for video-on-demand service | |
US5799174A (en) | Staggered striping in multimedia information systems | |
CN111263229B (zh) | 一种视频分发方法、装置及电子设备 | |
Sheu et al. | Virtual batching: A new scheduling technique for video-on-demand servers | |
Buddhikot et al. | Efficient data layout, scheduling and playout control in MARS | |
Wright | An efficient video-on-demand model | |
Garofalakis et al. | Resource scheduling in enhanced pay-per-view continuous media databases | |
CHIUEH et al. | Design and implementation of the stony brook video server | |
Mokbel et al. | Scalable multimedia disk scheduling | |
Ma et al. | Efficient real-time data retrieval through scalable multimedia storage | |
Wu et al. | Efficient support for interactive browsing operations in clustered CBR video servers | |
Shachnai et al. | The Role of Wait Tolerance in E ective Batching: A Paradigm for Multimedia Scheduling Schemes | |
Aggarwal et al. | The maximum factor queue length batching scheme for video-on-demand systems | |
Wong et al. | Video on demand service policies | |
Wu et al. | A scalable storage supporting multistream real-time data retrieval | |
Jin et al. | Clustered multimedia servers: architectures and storage systems | |
Garcı́a-Martı́nez et al. | Efficient memory management in video on demand servers | |
Wu et al. | Odyssey: a high‐performance clustered video server | |
Korst et al. | Comparing disk scheduling algorithms for VBR data streams | |
Philip et al. | Look-ahead scheduling to support pause-resume for video-on-demand applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20030430 Termination date: 20141022 |
|
EXPY | Termination of patent right or utility model |