CN105144121B - 高速缓存内容可寻址数据块以供存储虚拟化 - Google Patents
高速缓存内容可寻址数据块以供存储虚拟化 Download PDFInfo
- Publication number
- CN105144121B CN105144121B CN201480015103.3A CN201480015103A CN105144121B CN 105144121 B CN105144121 B CN 105144121B CN 201480015103 A CN201480015103 A CN 201480015103A CN 105144121 B CN105144121 B CN 105144121B
- Authority
- CN
- China
- Prior art keywords
- cache
- computing machine
- block
- data
- content addressable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/137—Hash-based
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1748—De-duplication implemented within the file system, e.g. based on file segments
- G06F16/1752—De-duplication implemented within the file system, e.g. based on file segments based on file chunks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及使用主数据去重复概念来实现经由内容可寻址高速缓存的更高效数据访问。数据块(诸如经去重复的数据块)被维护在快速访问客户机侧高速缓存(诸如基于访问模式来包含块)中。经块化的内容是可经由散列或该内容在系统中的其他唯一标识符来寻址的内容。在需要块时,在去往文件服务器查找块之前,检查一个(或多个)客户机侧高速缓存以查找块。文件服务器同样可维护内容可寻址(块)高速缓存。还描述了高速缓存维护、管理和组织,包括用块来预先填充高速缓存以及使用RAM和/或固态存储设备高速缓存。
Description
背景
虚拟化是许多当代数据中心和云计算基础结构中期望的技术。一般来说,虚拟化通过在瘦虚拟机监控程序(VMM)或系统管理程序(Hyper-V)层上运行处于经隔离容器(虚拟机或VM)中的多个应用来提供对服务器的较高利用率。Hyper-V虚拟化机器上的资源,以便给予每一VM容器它是正在服务器上运行的唯一操作系统的假象。实际上,每一容器可在操作系统上运行各应用,这些应用可跨各容器不同。
虚拟化涉及跨各VM复用CPU、存储器和存储资源,并且在虚拟化领域中许多设计工作都考虑如何以性能和资源高效的方式来完成这样的操作。CPU是使用各个核内以及跨各个核的调度来虚拟化的。存储器通常是每VM进行分配的,并使用动态存储器管理技术来共享。由于同一心轴上的磁盘磁头寻道会导致各VM之间的干扰,因此盘存储更难以虚拟化。此外,当存储跨越网络(如在单独的存储群集中或跨越公共云中的WAN)时,对存储的访问还涉及网络等待时间,并且必须处理网络带宽约束,因为数据中心网络是跨许多应用共享的,并且通常被过度订阅。
虚拟硬盘(VHD)文件包括在每一虚拟机看来好像它是该虚拟机自己的硬盘驱动器的文件内容。使得存储在尺寸和访问方面更高效的一种尝试是使用只读VHD,这些只读VHD使用“黄金”主映像作为其底层内容,并且随后在硬盘驱动器内容随时间改变时跟踪各个体差异/增量链。出于各种原因,这是不合乎需要的。
一个示例场景是其中虚拟桌面引导并消耗VHD的虚拟桌面基础结构(VDI)。即使使用黄金映像和增量,VDI的通常很差的虚拟化存储性能也可导致很慢的引导/登录性能以及降低的应用性能,这会影响用户体验并使用户体验降级。例如,当许多用户在大体同一时间(诸如刚好在午饭后)进行重新引导或登录时,用户可花费相当长的时间(在几分钟的量级上)来得到适度工作的机器。
概述
提供本概述以便以简化形式介绍将在以下的详细描述中进一步描述的一些代表性概念的选集。本概述不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在以限制所要求保护的主题的范围的任何方式来使用。
简言之,本文中描述的主题的各个方面涉及一种技术,在该技术中,计算机器包括被配置成将对数据范围的请求转换成对内容可寻址数据的请求的逻辑。如果内容可寻址数据被高速缓存在客户机侧高速缓存中的话,可访问一个或多个客户机侧内容可寻址高速缓存来获得该内容可寻址数据。如果并非如此,则请求文件服务器机器返回内容可寻址数据;服务器可经由一个或多个服务器侧内容可寻址高速缓存来访问该内容可寻址数据。
在一个方面,使用主数据去重复来满足通过访问一个或多个数据块的对数据范围的请求,其中每一数据块具有唯一地标识该块数据的标识符。如果块数据被高速缓存的话,则访问至少一个快速访问块高速缓存来返回该块数据。如果块数据没有被高速缓存的话,则从另一存储设备返回该块。响应于对数据范围的请求,将所返回的块数据转换成所请求的数据范围。
在一方面,描述了运行多个虚拟机,每一虚拟机与一虚拟硬盘相关联。在从正在虚拟机上运行的程序接收到对与虚拟硬盘文件相关联的数据范围的请求之际,将对数据范围的请求转换成包括一个或多个块标识符的块标识符集合。该块标识符集合被使用来访问快速层高速缓存中的一个或多个数据块。将此一个或多个数据块转换成数据范围,该数据范围响应于请求被返回。
结合附图阅读以下详细描述,本发明的其他优点会变得显而易见。
附图简述
作为示例而非限制,在附图中示出了本发明,附图中相同的附图标号指示相似的元素,附图中:
图1是根据一个示例实施例的表示用于使用内容可寻址高速缓存来将数据块(等)返回给虚拟机的示例组件的框图。
图2是根据一个示例实施例的使用多个客户机侧高速缓存来(在可能时)避免向服务器请求内容可寻址数据的表示。
图3是根据一个示例实施例的使用多个服务器侧高速缓存来(在可能时)避免向硬盘驱动器请求内容可寻址数据的表示。
图4是根据一个示例实施例的表示客户端计算机器可采用来获得和返回内容可寻址数据的示例步骤的流程图。
图5是根据一个示例实施例的表示文件服务器机器可采用来获得和返回内容可寻址数据的示例步骤的流程图。
图6是表示其中可实现本文所描述的各种实施例的示例非限制联网环境的框图。
图7是表示其中可实现本文所描述各实施例的一个或多个方面的示例非限制计算系统或运行环境的框图。
详细描述
本文中描述的技术的各方面一般涉及标识跨(例如,VM的)工作负载访问的公共数据,并将公共数据放置在快速访问层(例如,包含RAM和/或固态存储设备SSD的高速缓存介质)上。例如,通过(例如使用主数据去重复)将文件范围访问转换成块散列访问,可使得存储层变为内容可寻址。与其中整个文件被高速缓存的常规的基于文件的高速缓存不同,数据块被维护在内容可寻址的快速访问层(高速缓存)中,该内容可寻址的快速访问层提供数据块(例如,块),这些数据块各自具有唯一标识符(例如,那个数据块的SHA散列)。
在一方面,定位一个或多个高速缓存,以便缓解存储瓶颈。在一个实现中,这包括正在运行虚拟机的计算机器上的高速缓存以及文件服务器机器上的高速缓存,正在运行虚拟机的计算机器上的高速缓存用于减少线路上的字节并减轻网络等待时间和带宽瓶颈,文件服务器机器上的高速缓存用于减少该文件服务器内的盘IOP。此外,在具有多个计算机器的计算环境中(例如在同一机架上),机架内通信等可用于提供更大的机架内(或,简单的“机架”)高速缓存以避免网络等待时间和带宽瓶颈。服务器侧机架高速缓存等也是可行的。
在一方面,数据去重复技术被利用来改善虚拟化存储的性能。数据去重复(其已在许多虚拟化计算环境中使用)提供用于将文件数据块进行块化,并唯一地标识每一块,以使得例如有相同内容的多个块仅需要被存储一次,其中需要那个块的数据以得到文件数据范围的每一文件均仅需要包含对那个重复的块的引用。
应当理解,本文中的任何示例均是非限制的。例如,数据去重复技术和组件在本文中被例示,部分因为这些数据去重复技术和组件已经存在并因此是方便在所例示的虚拟化环境中利用的,然而不要求某数据量(例如块)真正地被去重复以实现存储节省。因此,在一个示例实现中利用“主”去重复技术和组件。对于另一示例,在其中进行虚拟桌面引导并消耗VHD的虚拟桌面基础结构(VDI)是作为示例被使用的,因为底层虚拟机在引导/登录期间以及在运行公共应用时往往访问类似的内容,并且可从本文中描述的技术中极大地获益;然而,这仅是一个示例,并且被理解为在更宽的应用方面是非限制的。该技术可等同地应用于通过因特网来访问web内容和/或云内容,其中范围访问请求可被转换成可从当前技术中获益的内容可寻址访问请求。此外,当本文中的一些示例使用“文件”内容时,该内容可包括未结构化、半结构化或结构化数据存储环境中的“数据流”的任何集合,例如文件、数字文档、流、团块、表格、数据库等或可能其他数据。
因此,本发明不限制于在此描述的任何具体的实施例、方面、概念、结构、功能或示例。相反,本文中描述的实施例、方面、概念、结构、功能或示例中的任一者都是非限制性的,且本发明可以按一般而言在计算和数据访问、数据通信和/或数据存储方面提供好处和优点的各种方式来使用。
图1示出了一个实现的示例概念,其中计算机器102包括内容可寻址高速缓存104,例如包括一个或多个相对快速访问存储设备的块高速缓存。在一个实现中,块高速缓存可包括一个或多个固态存储设备(SSD),诸如闪存、或RAM或两者的组合。例如,SSD每GB比RAM便宜10倍的量级,并且比硬盘驱动器存取时间快约100-1000倍,并由此适合在RAM-HDD分层结构之间。SSD也是非易失性的,并且由此用作可被预先填充(例如,如以下所描述的)的高速缓存而没有通过重新引导等而丢失数据的风险。该存储可被组织成用于底层介质,例如固态设备的基于日志的存储(例如SSD上的高速缓存)可以用日志结构化方式来组织以减轻SSD的随机写入瓶颈,并用具有相对较低锁使用的多线程化高速缓存设计来提供高访问并发性。美国专利申请S.N.13/531,455“Multi-Tiered Cache with Storage MediumAwareness(具有存储介质知悉性的多层高速缓存)”描述了可适合于用作如本文中描述的内容可寻址块高速缓存中的任何一者的高速缓存技术。
当虚拟机(作为示例,例如为1061-106n,统称或简称为106)需要访问内容时,正在主操作系统110中运行的文件系统驱动程序108(例如,VHD过滤器驱动程序)跟踪对虚拟机的请求。此外,高速缓存(例如,去重复)过滤器112从内容元数据中确定该数据驻留在何处(例如在文件范围本地或在块(例如经去重复的块)中),并处理从合适的位置的读取或到该合适的位置的写入。注意,写入会改变该内容,并由此高速缓存(例如去重复)过滤器112可被配置成跟踪哪些内容范围因写入而变脏了,以及哪些内容范围留在干净的块中,以使得任何改变的内容都不会被丢失,而整个内容集合(例如文件)不需要被完整地召回以允许对其进行修改。
当旨在重启虚拟机106、在各计算机器之间移动虚拟机106(例如,以实现负载平衡)等时,包括数据在内的各种资源不随着该虚拟机106而移动。因此,文件服务器机器120维护这些VHD文件122,以便可被运行虚拟机的每一计算机器访问。
每一VHD文件往往是大型的(例如,表示整个硬盘驱动器卷),并且按需在逻辑上移动到不同的物理计算机器。因此,将每一VHD文件分开地高速缓存在每一计算机器上是不切实际的。
本文中描述的是对内容可寻址(例如块)高速缓存的使用,藉此高速缓存过滤器112可避免许多从远程文件服务器120机器的块读取,该块读取具有对块存储124的服务器侧访问。仅当需要远程访问时,高速缓存过滤器112(结合远程存储重定向器114和网卡116)才需要“仔细检查线路”118以实现对所需内容进行数据中心网络(例如,LAN)访问或云(例如,WAN)访问。如可容易地领会的,这会节省带宽并减少等待时间。
在一个实现中,数据去重复已经被用于节省需要被存储的块数。数据去重复的一个主要部分涉及用唯一地标识每一数据块的散列值来跟踪该数据块。一般来说,对于经去重复的文件或其他内容片段,可例如在块存储124中维护对那个块的引用而非实际的文件数据。在诸如其中许多VHD数据相同(例如,许多虚拟机的操作系统组件可对应于相同的版本,并且许多程序代码版本、数据、图片、视频剪辑等可相同)的虚拟化之类的情况下,这提供极大的节省。然而,应当理解,即使没有通过完全去重复来实现存储容量节省,但也可通过使用主去重复概念来避免跨网络连接移动每一块来获得带宽节省和等待时间改善。因此,如本文中所使用的,“块”指可被唯一地标识和高速缓存的任何数据块,而不管那个数据块是否也是常规数据去重复方案的一部分。
此外,服务器侧性能可通过类似的(或相同的)内容可寻址高速缓存技术来改善。为此,当在文件服务器机器120处(例如经由其网卡130)接收到对内容的请求时,文件系统袖珍过滤器132可使用内容可寻址(例如,块)高速缓存134,而非从可呈现以供数据去重复的另一源(例如,块存储124)访问所请求的内容。当经常请求相同的块时(这往往会在本文中描述的虚拟化环境中发生),这节省了极大的盘IOP(或可能甚至其他网络通信)。
转至另一方面,图2示出了块数据的网络通信可如何被进一步减少,也就是通过在块不在计算机器的内容可寻址高速缓存104中的情况下,与其他客户机侧计算机器2201-220m协作以(例如,经由块222和223)有效地访问其高速缓存的数据来减少块数据的网络通信。在图2中,图1的计算机器102被配置成经由机架内机器通信(框224,包括任何中间组件,诸如文件系统、重定向器等)与同其在同一机架中的其他机器进行通信,该通信相对于其他类型的网络通信而言具有非常低的等待时间。然而,在同一“机架”中不是经由降低的块传输实现网络和带宽等待时间节省的要求。例如,在同一建筑内的机架中的机器相比于离得较远的那些机器可更快地通信,计算机群集经由其他通信介质相比于经由LAN或WAN连接等可更快地通信。因此,本文中描述的一个方面通常是以尽可能最高效的方式(诸如,经由“客户机侧”高速缓存,例如机架高速缓存)来获得所需的数据。
可按任何合适的方式来同步或以其他方式传达高速缓存的内容元数据。例如,内容可寻址高速缓存协调器226可维护或交换每一高速缓存的块标识符的列表,该列表可随着块被插入高速缓存或从高速缓存被移除而改变。协调器226可以在一个机器上、或在每一机器上、或是其某个子集。因此,当需要来自不同高速缓存的块(例如,另一机架机器的块)时,计算机器知道到哪里去找到那个块。替换地,计算机器可请求高速缓存协调器从另一机器检索块。这些块可被协调以避免在同一机架内重复,或至少基于速度使这些块中的一些与具有更多数目的“较本地”的块平衡。不管在给定实现中使用哪个或哪些机制,一个概念都是有效地具有共享的或更大的“较本地”的高速缓存,该高速缓存不一定要与实际的物理本地高速缓存一样快,但与网络连接相比相对更快且有更少的带宽消耗。
图3示出了服务器侧上的相同概念,其中可提供各服务器,这些服务器处于同一机架中、被群集在一起、和/或以允许通常比前往盘更快速的高速缓存共享的其他某种方式耦合在一起。出于简明的目的,不再重复相同的概念,只是应注意在图3中相同的组件是类似地用3xx来标记而非用2xx来标记的,并且可存在不需要与图2所示的机架机器的数目(例如,m个机架机器)相同数量的服务器(例如,j个服务器)。
转至另一方面,作为常规的高速缓存管理技术(诸如,驱逐最不经常使用的/最近最少使用的数据)的补充或替换,还可评估实际的数据访问模式和其他信息。例如,当文件被优化成块(例如,在那个文件的去重复期间)时,可知道关于那个文件的信息,诸如其底层文件格式。已知作为操作系统组件的一部分的块可在其首次使用之前被放入本地和/或服务器块高速缓存中的一者或多者中。高速缓存可在访问之前(例如,在新的操作系统版本发布时,在优化(或对操作系统文件的任何其他合适的块化)期间)按其他方式被预先填充,这些块可被高速缓存。
图4概述了在处理对内容的请求时的一些示例步骤,该请求被示为在步骤402从给定计算机程序读取文件数据范围的请求。如所知道的,与那个文件相关联的元数据指示该文件是否已被块化,例如主数据去重复使得存储层内容可通过将文件范围访问转换成块散列访问来寻址,如由步骤404概括地表示的。注意,如文本中使用的“主数据去重复”包括这样的转换操作,而不管此后是否发生实际的数据去重复。
步骤406表示搜索机器高速缓存以查找标识出的块;(注意,一次可处理一个以上的块,例如通过分开地处理各高速缓存查找表,这可至少部分地并行进行;然而,出于简要的目的仅描述了一个块)。如果找到了,则在步骤408访问该块,在步骤420将该块转换回所请求的一个或多个范围,并将其返回给驱动程序。注意步骤404和420已作为具有该能力的系统中的主数据去重复的一部分来执行。
如果在步骤406,计算机器高速缓存不包含该块,则执行步骤412,步骤412表示检查副本地高速缓存中的块,该副本地高速缓存在本示例中为机架高速缓存。这可以是例如对机架协调器的请求或对当前机架高速缓存块ID的查找如果找到了,则步骤414访问机架高速缓存中的该内容,并且步骤420将块数据转换回所请求的一个或多个范围,以供响应于范围请求来返回。
如果在副本地高速缓存中没有找到,则步骤416将对块的请求发送给文件服务器,该文件服务器在步骤418(在假设没有差错的情况下)返回该块,并在步骤420将块数据转换成范围数据以供返回。注意,尽管出于简要的目的而没有示出,但如可容易地领会的,在发送给远程文件服务器之前,可存在一个以上级别的副高速缓存用于查找块,例如首先为机架高速缓存,随后为在机架外部的邻近对等设备处的高速缓存并以此类推,以促成与前往更远程的服务器以寻找块数据相比更快的访问。
图5例示了服务器操作中的一些(出于简要的目的,示出了针对单个块的服务器操作),这些服务器操作在步骤502开始,在步骤502,接收对内容可寻址数据的请求,例如该请求可包括元数据,元数据包括块标识符。步骤504在文件服务器机器的高速缓存中查找块,并且如果找到了,则在步骤508访问该块,并且步骤514将该块返回至例如图4的步骤418。
如果没有找到,则步骤508评估(其可包括对对等或中间设备的查找和/或请求)对等机器在其快速高速缓存中是否具有该块。对等方可以是机架中的另一服务器、附近机架中的另一服务器、数据中心建筑中的服务器等等。如果找到了,则步骤510访问该块,并且步骤514将该块返回至例如图4的步骤418。
如果在高速缓存中没有找到(并且如在本示例中不再有供检查的更多高速缓存),则步骤512例如经由去重复块存储来从盘访问该内容。步骤514将内容返回至例如图4的步骤418。
如可看见的,对主数据去重复/将数据块化成各唯一块的使用提供用于内容可寻址高速缓存。当跨各虚拟机存在(例如,针对VDI的)相似的数据访问模式时,这些块访问模式可被利用来通过将数据块高速缓存在快速访问层(基于闪存的SSD和/或其他存储器,诸如RAM)上来改善存储利用性能。当存储驻留在远程服务器上(如在分开的存储群集中或跨越公共云中的WAN)时,该方法也转化为用于节省线路上传输的字节,由此减轻了数据中心网络或WAN瓶颈。
在示例实施例中,在文件服务器机器上实现主数据去重复。有内容可寻址高速缓存的存储栈去重复过滤器驻留在计算机器和存储机器两者上,从而获得减少盘IOP和节省网络等待时间/带宽两者的好处。
示例联网以及分布式环境
本领域技术人员可以理解,此处描述的各实施例和方法可结合任何计算机或其它客户机或服务器设备来实现,其可被部署为计算机网络的部分或在分布式计算环境中,并且可以被连接到任何类型一个或多个数据存储。在这一点上,此处描述的各实施例可在具有任何数量的存储器或存储单元的、并且任何数量的应用和进程跨任何数量的存储单元发生的任何计算机系统或环境中实现。这包括但不限于具有部署在具有远程或本地存储的网络环境或分布式计算环境中的服务器计算机和客户计算机的环境。
分布式计算通过计算设备和系统之间的通信交换来提供计算机资源和服务的共享。这些资源和服务包括信息的交换、对于诸如文件之类的对象的高速缓存存储和盘存储。这些资源和服务还包括多个处理单元之间的处理能力共享以便进行负载平衡、资源扩展、处理专门化等等。分布式计算利用网络连接,从而允许客户机利用其集体力量来使整个企业受益。就此,各种设备可具有可如参考本发明的各实施例描述地参与资源管理机制的应用、对象或资源。
图6提供了示例性的联网或分布式计算环境的示意图。该分布式计算环境包括计算对象610、612等以及计算对象或设备620、622、624、626、628等,这些计算对象或设备可包括如由示例应用630、632、634、636、638表示的程序、方法、数据存储、可编程逻辑等。可以理解,计算对象610、612等以及计算对象或设备620、622、624、626、628等可包括不同的设备,诸如个人数字助理(PDA)、音频/视频设备、移动电话、MP3播放器、个人计算机、膝上型计算机等。
每一个计算对象610、612等以及计算对象或设备620、622、624、626、628等可通过通信网络640直接或间接与一个或多个其他计算对象610、612等以及计算对象或设备620、622、624、626、628等进行通信。尽管在图6中被示为单个元件,但通信网络640可包括向图6的系统提供服务的其他计算对象和计算设备和/或可表示未示出的多个互连网络。每个计算对象610、612等或计算对象或设备620、622、624、626、628等还可以包含应用,诸如可以利用API或其他对象、软件、固件和/或硬件的、适于根据本发明的各实施例所提供的应用实现与其进行通信的应用630、632、634、636、638。
存在支持分布式计算环境的各种系统、组件和网络配置。例如,计算系统可由有线或无线系统、本地网络或广泛分布的网络连接在一起。当前,许多网络被耦合至因特网,因特网为广泛分布的计算提供了基础结构并包含许多不同的网络,但任何网络基础结构都可用于便于与如各实施例中所描述的系统的示例通信。
由此,可使用诸如客户机/服务器、对等、或混合体系结构之类的网络拓扑结构和网络基础结构的主机。“客户机”是使用与其无关的另一类或组的服务的一类或组中的成员。客户机可以是进程,例如大致上是请求由另一程序或进程提供的服务的一组指令或任务。客户机进程使用所请求的服务,而无需“知道”关于其他程序或服务本身的任何工作细节。
在客户机/服务器体系结构中,尤其在联网系统中,客户机通常是访问另一计算机(例如,服务器)所提供的共享网络资源的计算机。在图6的图示中,作为非限制性示例,计算对象或设备620、622、624、626、628等可被认为是客户机而计算对象610、612等可被认为是服务器,其中计算对象610、612等作为提供数据服务的服务器,诸如从客户机计算对象或设备620、622、624、626、628等接收数据、存储数据、处理数据、向客户机计算对象或设备620、622、624、626、628等发送数据,但任何计算机都可取决于环境而被认为是客户机、服务器、或两者。
服务器通常是可通过诸如因特网或无线网络基础架构之类的远程网络或本地网络访问的远程计算机系统。客户机进程可在第一计算机系统中活动,而服务器进程可在第二计算机系统中活动,它们通过通信介质相互通信,由此提供分布式功能性并允许多个客户机利用服务器的信息收集能力。
在通信网络640或总线是因特网的网络环境中,例如,计算对象610、612等可以是其他计算对象或设备620、622、624、626、628等经由诸如超文本传输协议(HTTP)之类的多种已知协议中的任一种与其通信的web服务器。计算对象610、612等作为服务器还可用作例如计算对象或设备620、622、624、626、628等的客户机,这可以是如分布式计算环境的特性。
示例计算设备
如上所述,有利地,本文所描述的技术可应用于任何设备。因此,应当理解,构想了结合各实施例使用的所有种类的手持式、便携式和其它计算设备和计算对象。因此,以下在图7中所述的通用远程计算机只是计算设备的一个示例。
各实施例可部分地经由操作系统来实现,以供设备或对象的服务开发者使用和/或被包括在用于执行本文中所述的各实施例的一个或多个功能方面的应用软件内。软件可以在由诸如客户机工作站、服务器或其它设备等一个或多个计算机执行的诸如程序模块等计算机可执行指令的通用上下文中描述。本领域的技术人员将理解,计算机系统具有可用于传递数据的各种配置和协议,并且由此没有特定配置或协议应当被认为是限制性的。
图7由此示出了其中可实现本文所述的各实施例的一个或多个方面的合适的计算系统环境700的一个示例,尽管如上所述,计算系统环境700仅为合适的计算环境的一个示例,并非对使用范围或功能提出任何限制。另外,计算系统环境700也不旨在被解释为对在示例计算系统环境700中所例示的组件中的任何一个或其组合有任何依赖。
参考图7,用于实现一个或多个实施例的示例性远程设备包括计算机710形式的通用计算设备。计算机710的组件可包括,但不限于,处理单元720、系统存储器730、以及将包括系统存储器的各种系统组件耦合到处理单元720的系统总线722。
计算机710通常包括各种计算机可读介质,并且可以是可由计算机710访问的任何可用介质。系统存储器730可包括易失性存储器和/或非易失性存储器(诸如只读存储器(ROM)和/或随机存取存储器(RAM))形式的计算机存储介质。作为示例而非限定,系统存储器730还可包括操作系统、应用程序、其它程序模块、和程序数据。
用户可通过输入设备740向计算机710输入命令和信息。监视器或其它类型的显示设备也经由诸如输出接口750之类的接口连接至系统总线722。除了监视器,计算机也可包括诸如扬声器和打印机之类的其它外围输出设备,这些外围输出设备可通过输出接口750连接。
计算机710可使用到一个或多个其他远程计算机(诸如远程计算机770)的逻辑连接在联网或分布式环境中操作。远程计算机770可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点、或者任何其他远程媒体消费或传输设备,并且可包括以上关于计算机710所述的任何或全部元件。图7所示的逻辑连接包括诸如局域网(LAN)或广域网(WAN)之类的网络772,但也可包括其他网络/总线。这些联网环境在家庭、办公室、企业范围的计算机网络、内联网和因特网中是常见的。
如上所述,尽管结合各种计算设备和网络体系结构描述了各示例性实施例,但基本概念可被应用于其中期望改进资源使用的效率的任何网络系统和任何计算设备或系统。
而且,存在实现相同或相似功能性的多种方法,例如适当的API、工具箱、驱动程序代码、操作系统、控件、独立或可下载软件对象等,它们使得应用和服务能够利用本文中提供的技术。由此,本文中的各实施例从API(或其他软件对象)的观点以及从实现如本文中描述的一个或多个实施例的软件或硬件对象构想。由此,本文中所述的各实施例可具有完全采用硬件、部分采用硬件并且部分采用软件、以及采用软件的方面。
本文中所使用的词语“示例”意味着用作示例、实例、或说明。为避免疑惑,本文所公开的主题不限于这些示例。另外,在此所述的被描述为“示例”的任意方面或设计并不一定要被解释为相比其它方面或设计更优选或有利。此外,在使用术语“包括”、“具有”、“包含”和其他类似词语的程度上,为避免疑惑,这些术语旨在当用于权利要求中时以类似于术语“包括”作为开放的过渡词的方式是包含性的而不排除任何附加或其他元素。
如所述的,本文中所述的各种技术可结合硬件或软件或,在适当时,以两者的组合来实现。如此处所使用的,术语“组件”、“模块”、“系统”等旨在指计算机相关实体,或者是硬件、硬件和软件的组合、软件或者是执行中的软件。例如,组件可以是,但不限于,在处理器上运行的进程、处理器、对象、可执行的、执行线程、程序和/或计算机。作为说明,在计算机上运行的应用和该计算机两者都可以是组件。一个或多个组件可留驻在执行的进程和/或线程中,并且组件可位于一个计算机上和/或分布在两个或更多个计算机之间。
如前所述的系统已经参考若干组件之间的交互来描述。可以理解,这些系统和组件可包括组件或指定的子组件、某些指定的组件或子组件和/或附加的组件,并且根据上述内容的各种置换和组合。子组件还可作为通信地耦合到其他组件的组件来实现,而不是被包括在父组件内(层次性)。另外,应注意到一个或多个组件可被组合成提供聚集功能性的单个组件,或被分成若干单独的子组件,且诸如管理层等任何一个或多个中间层可被设置成通信耦合到这样的子组件以便提供集成功能性。此处所述的任何组件也可与一个或多个此处未专门描述的但本领域技术人员一般已知的其他组件进行交互。
鉴于以上所述的示例系统,参考各附图的流程图还可理解根据所述的主题实现的方法。尽管为了说明简洁起见,作为一系列框示出和描述的方法,但是应当理解,各实施例不仅仅限于框的次序,因为一些框可以与本文中所描绘和描述的框不同的次序发生和/或与其他框并发地发生。尽管经由流程图示出了非顺序或分支的流程,但可以理解,可实现达到相同或类似结果的各种其他分支、流程路径和框的次序。此外,一些所示的框在实现下面所述的方法时是任选的。
结论
由此,尽管本发明易于作出各种修改和替换构造,但其某些图示实施例在附图中示出并且在上文中已详细描述。然而应当理解,这不旨在将本发明限于所公开的具体形式,而是相反地,本发明旨在覆盖落入本发明的精神和范围之内的所有修改、替换构造和等效方案。
除本文中所述的各实施例以外,应当理解,可使用其他类似实施例,或者可对所述实施例作出修改和添加以便执行对应实施例的相同或等效功能而不背离这些实施例。此外,多个处理芯片或多个设备可共享此处所述的一个或多个功能的性能,并且类似地,存储可跨多个设备实现。因此,本发明不限于任何单个实施例,而是要根据所附权利要求书的广度、精神和范围来解释。
Claims (8)
1.一种在计算环境中的系统,所述系统包括计算机器,所述计算机器包括被配置成将对数据范围的请求转换成对内容可寻址数据的请求的逻辑,并且所述逻辑还被配置成a)在所述内容可寻址数据被高速缓存在所述计算机器的计算机器高速缓存中的情况下,访问所述计算机器的所述计算机器高速缓存来获得所述内容可寻址数据,b)在所述内容可寻址数据没有被高速缓存在所述计算机器的所述计算机器高速缓存中而被高速缓存在与所述计算机器在共同机架中的另一计算机器的客户机侧机架高速缓存中的情况下,访问所述另一计算机器的客户机侧机架高速缓存来获得所述内容可寻址数据,以及c)在所述内容可寻址数据没有被高速缓存在所述计算机器的所述计算机器高速缓存中也没有被高速缓存在所述另一计算机器的客户机侧机架高速缓存中的情况下,请求文件服务器机器返回所述内容可寻址数据。
2.如权利要求1所述的系统,其特征在于,所述计算机器的所述计算机器高速缓存和所述另一计算机器的客户机侧机架高速缓存的至少一者包括以下中的至少一者:固态存储设备、至少部分地基于内容访问模式来预先填充的非易失性存储设备、或作为数据块化操作的一部分来预先填充的非易失性存储设备。
3.如权利要求1所述的系统,其特征在于,被配置成将对数据范围的请求转换成对内容可寻址数据的请求的逻辑包括在至少一个文件系统过滤器驱动程序中实现的使用散列值来标识内容可寻址数据的块的主数据去重复代码。
4.如权利要求1所述的系统,其特征在于,进一步包括文件服务器,所述文件服务器被配置成a)在所述内容可寻址数据被高速缓存在服务器侧高速缓存中的情况下,访问一个或多个服务器侧内容可寻址高速缓存来获得所述内容可寻址数据,以及b)在所述内容可寻址数据没有被高速缓存在服务器侧高速缓存中的情况下,向存储请求所述内容可寻址数据。
5.一种获得并返回内容可寻址数据的方法,包括使用主数据去重复以通过访问一个或多个数据块来满足对数据范围的请求,其中每一数据块具有唯一地标识所述块数据的内容的标识符,所述方法包括在块数据被高速缓存的情况下,访问至少一个快速访问内容可寻址块高速缓存来返回所述块数据,或者在所述块数据没有被高速缓存的情况下,从另一存储设备返回所述块;
其中在所述块数据被高速缓存的情况下,访问至少一个快速访问内容可寻址块高速缓存来定位所述块数据包括评估所述块是否在本地计算机器的计算机器高速缓存中,以及在所述块在所述本地计算机器的计算机器高速缓存中的情况下,从所述本地计算机器的所述计算机器高速缓存满足对所述块的所述请求,在所述块不在所述本地计算机器的所述计算机器高速缓存中而在与所述本地计算机器在共同机架中的另一计算机器的客户机侧机架高速缓存中的情况下,从所述另一计算机器的客户机侧机架高速缓存满足对所述块的所述请求,在所述块不在所述本地计算机器的计算机器高速缓存中也不在所述另一计算机器的客户机侧机架高速缓存中的情况下,向文件服务器请求所述块。
6.一种获得并返回内容可寻址数据的方法,包括:
运行多个虚拟机,每一虚拟机都与虚拟硬盘相关联;
从正在虚拟机上运行的程序接收对与虚拟硬盘文件相关联的数据范围的请求;
将对数据范围的请求转换成包括一个或多个块标识符的块标识符集合;
使用所述块标识符集合来访问在快速层高速缓存中的一个或多个数据块;
将所述一个或多个数据块转换成数据范围;以及
响应于所述请求而返回所述数据范围;
其中使用所述块标识符集合来访问在快速层高速缓存中的一个或多个数据块包括基于所述集合中的块标识符来评估块是否在本地计算机器的计算机器高速缓存中,并且如果所述块在所述本地计算机器的计算机器高速缓存中,则从所述本地计算机器的所述计算机器高速缓存返回所述块,并且如果所述块不在所述本地计算机器的所述计算机器高速缓存中,则基于所述块标识符来评估所述块是否在与所述本地计算机器在共同机架中的另一计算机器的客户机侧机架高速缓存中,并且如果所述块在在所述另一计算机器的客户机侧机架高速缓存中,则从所述另一计算机器的客户机侧机架高速缓存返回所述块,如果所述块不在所述本地计算机器的所述计算机器高速缓存中也不在所述另一计算机器的客户机侧机架高速缓存中,则基于所述块标识符来评估所述块是否在服务器侧高速缓存中,并且如果所述块在服务器侧高速缓存中,则从所述服务器侧高速缓存返回所述块。
7.一种存储指令的计算机可读存储介质,所述指令在被执行时,使得计算机器执行权利要求5或权利要求6所述的方法。
8.一种计算机系统,所述计算机系统包括用于执行权利要求5或权利要求6所述的方法的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/830,950 US9729659B2 (en) | 2013-03-14 | 2013-03-14 | Caching content addressable data chunks for storage virtualization |
US13/830,950 | 2013-03-14 | ||
PCT/US2014/025111 WO2014159781A2 (en) | 2013-03-14 | 2014-03-12 | Caching content addressable data chunks for storage virtualization |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105144121A CN105144121A (zh) | 2015-12-09 |
CN105144121B true CN105144121B (zh) | 2018-08-10 |
Family
ID=50729770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480015103.3A Active CN105144121B (zh) | 2013-03-14 | 2014-03-12 | 高速缓存内容可寻址数据块以供存储虚拟化 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9729659B2 (zh) |
EP (1) | EP2972893B1 (zh) |
CN (1) | CN105144121B (zh) |
WO (1) | WO2014159781A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106936901A (zh) * | 2017-02-27 | 2017-07-07 | 烽火通信科技股份有限公司 | 一种基于msa协议的双向通信系统及其实现方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9424058B1 (en) * | 2013-09-23 | 2016-08-23 | Symantec Corporation | File deduplication and scan reduction in a virtualization environment |
CN106104480A (zh) | 2014-04-03 | 2016-11-09 | 斯特拉托斯卡莱有限公司 | 使用相似性保留签名的集群范围的内存管理 |
US20150312366A1 (en) * | 2014-04-24 | 2015-10-29 | Strato Scale Ltd. | Unified caching of storage blocks and memory pages in a compute-node cluster |
US9917894B2 (en) | 2014-08-06 | 2018-03-13 | Quest Software Inc. | Accelerating transfer protocols |
US9990352B2 (en) | 2014-08-06 | 2018-06-05 | Quest Software Inc. | Chunk compression in a deduplication aware client environment |
US9984093B2 (en) | 2014-08-06 | 2018-05-29 | Quest Software Inc. | Technique selection in a deduplication aware client environment |
US10459886B2 (en) * | 2014-08-06 | 2019-10-29 | Quest Software Inc. | Client-side deduplication with local chunk caching |
US9390028B2 (en) | 2014-10-19 | 2016-07-12 | Strato Scale Ltd. | Coordination between memory-saving mechanisms in computers that run virtual machines |
US9912748B2 (en) | 2015-01-12 | 2018-03-06 | Strato Scale Ltd. | Synchronization of snapshots in a distributed storage system |
WO2016135570A1 (en) | 2015-02-26 | 2016-09-01 | Strato Scale Ltd. | Using access-frequency hierarchy for selection of eviction destination |
US10698829B2 (en) * | 2015-07-27 | 2020-06-30 | Datrium, Inc. | Direct host-to-host transfer for local cache in virtualized systems wherein hosting history stores previous hosts that serve as currently-designated host for said data object prior to migration of said data object, and said hosting history is checked during said migration |
CN106411986A (zh) * | 2015-12-29 | 2017-02-15 | 深圳市瑞铭无限科技有限公司 | 位置查询的方法和装置 |
US10176102B2 (en) * | 2016-03-30 | 2019-01-08 | Infinio Systems, Inc. | Optimized read cache for persistent cache on solid state devices |
US10521389B2 (en) * | 2016-12-23 | 2019-12-31 | Ati Technologies Ulc | Method and apparatus for accessing non-volatile memory as byte addressable memory |
WO2018119657A1 (zh) * | 2016-12-27 | 2018-07-05 | 日彩电子科技(深圳)有限公司 | 应用于数据去重的数据路由方法 |
US10210170B2 (en) | 2017-01-28 | 2019-02-19 | Microsoft Technology Licensing, Llc | Chunk storage deduplication using graph structures |
CN106980471B (zh) * | 2017-03-27 | 2020-08-25 | 联想(北京)有限公司 | 一种提高智能设备的硬盘写入性能的方法及装置 |
US10664405B2 (en) * | 2017-11-03 | 2020-05-26 | Google Llc | In-memory distributed cache |
WO2019127104A1 (zh) * | 2017-12-27 | 2019-07-04 | 华为技术有限公司 | 高速缓存中资源调整方法、数据访问方法及装置 |
US11210312B2 (en) | 2018-06-08 | 2021-12-28 | Microsoft Technology Licensing, Llc | Storing data items and identifying stored data items |
US10534708B1 (en) | 2018-06-25 | 2020-01-14 | Microsoft Technology Licensing, Llc | Shallow cache for content replication |
US10733044B2 (en) * | 2018-07-09 | 2020-08-04 | Microsoft Technology Licensing, Llc | Use of cache for content validation and error remediation |
JP7102460B2 (ja) | 2020-05-27 | 2022-07-19 | 株式会社日立製作所 | 分散ストレージ装置および分散ストレージ装置におけるデータ管理方法 |
US11442937B2 (en) * | 2020-06-11 | 2022-09-13 | Google Llc | Optimal admission control for caches |
CN114629894B (zh) * | 2022-03-19 | 2024-03-19 | 敦和万物信息技术(苏州)有限公司 | 一种用于电子数据取证的物联网数据的传输方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3848234A (en) * | 1973-04-04 | 1974-11-12 | Sperry Rand Corp | Multi-processor system with multiple cache memories |
US7979509B1 (en) * | 2005-09-15 | 2011-07-12 | Juniper Networks, Inc. | Clustered network acceleration devices having shared cache |
CN102880626A (zh) * | 2007-09-05 | 2013-01-16 | 伊姆西公司 | 在虚拟化服务器和虚拟化存储环境中的去重复 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6792507B2 (en) * | 2000-12-14 | 2004-09-14 | Maxxan Systems, Inc. | Caching system and method for a network storage system |
US8880797B2 (en) * | 2007-09-05 | 2014-11-04 | Emc Corporation | De-duplication in a virtualized server environment |
US9286293B2 (en) * | 2008-07-30 | 2016-03-15 | Microsoft Technology Licensing, Llc | Populating and using caches in client-side caching |
US20100088296A1 (en) | 2008-10-03 | 2010-04-08 | Netapp, Inc. | System and method for organizing data to facilitate data deduplication |
WO2010045262A1 (en) * | 2008-10-14 | 2010-04-22 | Wanova Technologies, Ltd. | Storage-network de-duplication |
US20110131341A1 (en) | 2009-11-30 | 2011-06-02 | Microsoft Corporation | Selective content pre-caching |
US8396936B2 (en) | 2010-10-28 | 2013-03-12 | Hewlett-Packard Development Company, L.P. | Computer system with cooperative cache |
US8959293B2 (en) * | 2010-12-14 | 2015-02-17 | Microsoft Corporation | Data deduplication in a virtualization environment |
US20120194534A1 (en) * | 2011-02-02 | 2012-08-02 | Alcatel-Lucent Usa Inc. | System and Method for Managing Cache Storage in Adaptive Video Streaming System |
US8996807B2 (en) | 2011-02-15 | 2015-03-31 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a multi-level cache |
WO2012116117A2 (en) * | 2011-02-22 | 2012-08-30 | Sandisk Enterprise Ip Llc | Storage management and acceleration of storage media in clusters |
US8812566B2 (en) * | 2011-05-13 | 2014-08-19 | Nexenta Systems, Inc. | Scalable storage for virtual machines |
-
2013
- 2013-03-14 US US13/830,950 patent/US9729659B2/en active Active
-
2014
- 2014-03-12 CN CN201480015103.3A patent/CN105144121B/zh active Active
- 2014-03-12 WO PCT/US2014/025111 patent/WO2014159781A2/en active Application Filing
- 2014-03-12 EP EP14724193.9A patent/EP2972893B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3848234A (en) * | 1973-04-04 | 1974-11-12 | Sperry Rand Corp | Multi-processor system with multiple cache memories |
US7979509B1 (en) * | 2005-09-15 | 2011-07-12 | Juniper Networks, Inc. | Clustered network acceleration devices having shared cache |
CN102880626A (zh) * | 2007-09-05 | 2013-01-16 | 伊姆西公司 | 在虚拟化服务器和虚拟化存储环境中的去重复 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106936901A (zh) * | 2017-02-27 | 2017-07-07 | 烽火通信科技股份有限公司 | 一种基于msa协议的双向通信系统及其实现方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2014159781A3 (en) | 2014-12-11 |
US20140280664A1 (en) | 2014-09-18 |
WO2014159781A2 (en) | 2014-10-02 |
EP2972893B1 (en) | 2020-10-07 |
EP2972893A2 (en) | 2016-01-20 |
CN105144121A (zh) | 2015-12-09 |
US9729659B2 (en) | 2017-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105144121B (zh) | 高速缓存内容可寻址数据块以供存储虚拟化 | |
US8972986B2 (en) | Locality-aware resource allocation for cloud computing | |
Rao et al. | Performance issues of heterogeneous hadoop clusters in cloud computing | |
CN108885582B (zh) | 存储器池结构的多租户存储器服务 | |
CN105893139B (zh) | 在云存储环境中用于向租户提供存储服务的方法和装置 | |
US10496613B2 (en) | Method for processing input/output request, host, server, and virtual machine | |
CA2892889C (en) | Scaling computing clusters | |
US10140066B2 (en) | Smart partitioning of storage access paths in shared storage services | |
US10579272B2 (en) | Workload aware storage platform | |
EP3039575B1 (en) | Scalable distributed storage architecture | |
US10922316B2 (en) | Using computing resources to perform database queries according to a dynamically determined query size | |
Lai et al. | Towards a framework for large-scale multimedia data storage and processing on Hadoop platform | |
KR101430649B1 (ko) | 클라우드 환경 내의 데이터 분석 서비스 제공 시스템 및 방법 | |
US20120096473A1 (en) | Memory maximization in a high input/output virtual machine environment | |
TW201441937A (zh) | 用於提供多個虛擬機器之統一的資源檢視之方法及設備 | |
US20180067963A1 (en) | File management in thin provisioning storage environments | |
CN103491155B (zh) | 一种实现移动计算和获取移动数据的云计算方法及系统 | |
US11080207B2 (en) | Caching framework for big-data engines in the cloud | |
CN103595799A (zh) | 一种实现分布式共享数据库的方法 | |
KR101765725B1 (ko) | 대용량 방송용 빅데이터 분산 병렬처리를 위한 동적 디바이스 연결 시스템 및 방법 | |
CN106570151A (zh) | 一种海量文件的数据收集处理方法及系统 | |
US11714573B1 (en) | Storage optimization in a distributed object store | |
US11093493B1 (en) | Dynamically switching between query and scan for optimizing table reads | |
US11336519B1 (en) | Evaluating placement configurations for distributed resource placement | |
US11782882B2 (en) | Methods for automated artifact storage management and devices thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |