TW202205106A - 內容提供商系統及用於內容提供商系統的方法 - Google Patents
內容提供商系統及用於內容提供商系統的方法 Download PDFInfo
- Publication number
- TW202205106A TW202205106A TW110107217A TW110107217A TW202205106A TW 202205106 A TW202205106 A TW 202205106A TW 110107217 A TW110107217 A TW 110107217A TW 110107217 A TW110107217 A TW 110107217A TW 202205106 A TW202205106 A TW 202205106A
- Authority
- TW
- Taiwan
- Prior art keywords
- storage
- content
- pool
- storage device
- processing circuits
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- 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
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0813—Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- 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
-
- 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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4295—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/16—General purpose computing application
- G06F2212/163—Server or database system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/22—Employing cache memory using specific memory technology
- G06F2212/224—Disk storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/26—Using a specific storage system architecture
- G06F2212/261—Storage comprising a plurality of storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/283—Plural cache memories
- G06F2212/284—Plural cache memories being distributed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/313—In storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3808—Network interface controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一種內容提供商系統,包含:儲存庫,儲存內容目錄;儲存裝置集區,將來自內容目錄的內容自儲存庫加載至儲存裝置集區的一或多個儲存裝置中;第一代管裝置,可通信地連接至儲存裝置集區,且執行儲存在儲存裝置集區中的內容以將內容提供至第一使用者裝置;第二代管裝置,可通信地連接至儲存裝置集區,且執行儲存在儲存裝置集區中的內容以將內容提供至第二使用者裝置;以及一或多個處理電路,識別儲存裝置集區的一或多個儲存裝置中用於將所請求內容伺服至第一代管裝置及第二代管裝置中的請求裝置的可用儲存裝置。
Description
本揭露的一或多個實例實施例的態樣係關於分解式分層快取記憶體,且更特定言之,係關於用於雲端內容儲存的分解式分層快取記憶體的系統及方法。
[相關申請案的交叉參考]
本申請案主張2020年7月24日申請的名稱為「用於雲端遊戲的分解式分層快取(DISAGGREGATED TIERED CACHE FOR CLOUD GAME)」的美國臨時申請案第63/056474號的優先權及權益,所述申請案的全部內容以引用的方式併入本文中。
隨著資訊技術社會發展,增加量的資料被儲存且遠端地伺服,例如自資料中心、雲端儲存系統及/或類似者。舉例而言,資料中心、雲端儲存系統及/或類似者通常可包含計算資源及儲存資源的網路。計算資源可處理儲存在儲存資源中的資料以向使用者提供處理後資料。然而,歸因於資料處理資源限制,儲存資源的有效使用可受限。
此背景技術部分中揭露的上述資訊用於增強對本揭露的背景技術的理解,且因此,其可含有不構成先前技術的資訊。
本揭露的一或多個實例實施例是針對一種雲端內容儲存系統以及其分解式分層快取記憶體共用的方法。
根據本揭露的一或多個實例實施例,一種內容提供商系統包含:儲存庫,經組態以儲存內容目錄;儲存裝置集區,經組態以將來自所述內容目錄的內容自所述儲存庫加載至所述儲存裝置集區的一或多個儲存裝置中;第一代管裝置,可通信地連接至所述儲存裝置集區,且所述第一代管裝置經組態以執行儲存在所述儲存裝置集區中的所述內容以將所述內容提供至第一使用者裝置;第二代管裝置,可通信地連接至所述儲存裝置集區,且所述第二代管裝置經組態以執行儲存在所述儲存裝置集區中的所述內容以將所述內容提供至第二使用者裝置;以及一或多個處理電路,經組態以識別所述儲存裝置集區的所述一或多個儲存裝置中用於將所請求內容伺服至所述第一代管裝置及所述第二代管裝置中的請求裝置的可用儲存裝置。
在一實施例中,所述第一代管裝置及所述第二代管裝置可經組態以使用外圍組件互連高速(Peripheral Component Interconnect Express,PCIe)進行通信。
在一實施例中,所述第一代管裝置及所述第二代管裝置可藉由網路介面卡(network interface card,NIC)或PCIe匯流排連接至所述儲存裝置集區。
在一實施例中,所述儲存裝置集區的一或多個儲存裝置可包含一或多個共用名稱空間,所述一或多個共用名稱空間與儲存在所述一或多個儲存裝置中的所述內容相關聯且包含對應於儲存在所述一或多個儲存裝置中的所述內容的分區資訊及邏輯單元數目(logical unit number,LUN)。
在一實施例中,所述一或多個處理電路可經組態以:自所述第一代管裝置及所述第二代管裝置中的至少一者接收對於所述所請求內容的請求;識別所述儲存裝置集區中其一或多個共用名稱空間中儲存有所述所請求內容的第一儲存裝置;以及判定所述第一儲存裝置用於將所述所請求內容伺服至所述請求裝置的可用頻寬。
在一實施例中,所述一或多個處理電路可經組態以:判定所述第一儲存裝置的所述可用頻寬小於臨限頻寬;以及識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的第二儲存裝置。
在一實施例中,所述一或多個處理電路可經組態以:判定所述所請求內容並未儲存在所述第二儲存裝置的一或多個共用名稱空間中;判定所述第二儲存裝置具有可用名稱空間,所述可用名稱空間具有用於儲存所述所請求內容的足夠空間;判定所述第二儲存裝置的可用頻寬大於所述臨限頻寬;以及將所述所請求內容自所述儲存庫加載至所述第二儲存裝置的所述可用名稱空間。
在一實施例中,所述一或多個處理電路可經組態以:識別儲存在所述第二儲存裝置的所述可用名稱空間中的非當前內容;判定所述可用名稱空間藉由移除所述非當前內容而具有足夠空間;以及自所述可用名稱空間移除所述非當前內容以為所述所請求內容提供空間。
在一實施例中,所述請求裝置可包含本端檔案系統,且所述一或多個處理電路可經組態以將所述所請求內容的裝載位置提供至所述請求裝置的所述本端檔案系統。
根據本揭露的一或多個實例實施例,提供一種用於內容提供商系統的方法,所述內容提供商系統包含:儲存庫,儲存內容目錄;儲存裝置集區,儲存來自所述內容目錄的至少一些內容;第一代管裝置,可通信地連接至所述儲存裝置集區以執行儲存在所述儲存裝置集區中的所述內容;以及第二代管裝置,可通信地連接至所述儲存裝置集區以執行儲存在所述儲存裝置集區中的所述內容,所述方法包含:藉由一或多個處理電路自所述第一代管裝置及所述第二代管裝置中的請求裝置接收對於所請求內容的請求;以及藉由所述一或多個處理電路識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的可用儲存裝置。
在一實施例中,所述第一代管裝置及所述第二代管裝置可使用外圍組件互連高速(PCIe)進行通信。
在一實施例中,所述第一代管裝置及所述第二代管裝置可藉由網路介面卡(NIC)或PCIe匯流排連接至所述儲存裝置集區。
在一實施例中,所述儲存裝置集區的一或多個儲存裝置可包含一或多個共用名稱空間,所述一或多個共用名稱空間與儲存在所述儲存裝置集區中的所述內容相關聯且包含對應於儲存在所述儲存裝置集區中的所述內容的分區資訊及邏輯單元數目(LUN)。
在一實施例中,所述方法可更包含:藉由所述一或多個處理電路識別所述儲存裝置集區中其一或多個共用名稱空間中儲存有所述所請求內容的第一儲存裝置;以及藉由所述一或多個處理電路判定所述第一儲存裝置用於將所述所請求內容伺服至所述請求裝置的可用頻寬。
在一實施例中,所述方法可更包含:藉由所述一或多個處理電路判定所述第一儲存裝置的所述可用頻寬小於臨限頻寬;以及藉由所述一或多個處理電路識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的第二儲存裝置。
在一實施例中,所述方法可更包含:藉由所述一或多個處理電路判定所述所請求內容並未儲存在所述第二儲存裝置的一或多個共用名稱空間中;藉由所述一或多個處理電路判定所述第二儲存裝置具有可用名稱空間,所述可用名稱空間具有用於儲存所述所請求內容的足夠空間;藉由所述一或多個處理電路判定所述第二儲存裝置的可用頻寬大於所述臨限頻寬;以及藉由所述一或多個處理電路將所述所請求內容自所述儲存庫加載至所述第二儲存裝置的所述可用名稱空間。
在一實施例中,所述方法可更包含:藉由所述一或多個處理電路識別儲存在所述第二儲存裝置的所述可用名稱空間中的非當前內容;藉由所述一或多個處理電路判定所述可用名稱空間藉由移除所述非當前內容而具有足夠空間;以及藉由所述一或多個處理電路自所述可用名稱空間移除所述非當前內容以為所述所請求內容提供空間。
在一實施例中,所述請求裝置可包含本端檔案系統,且所述方法可更包含:藉由所述一或多個處理電路將所述所請求內容的裝載位置提供至所述請求裝置的所述本端檔案系統。
根據本揭露的一或多個實例實施例,一種內容提供商系統包含:儲存庫,經組態以儲存內容目錄;儲存裝置集區,經組態以將來自所述內容目錄的內容自所述儲存庫加載至所述儲存裝置集區的一或多個儲存裝置中;第一代管裝置,經組態以使用外圍組件互連高速(PCIe)介面與所述儲存裝置集區通信以存取儲存在所述儲存裝置集區中的所述內容,且執行儲存在所述儲存裝置集區中的所述內容以將所述內容串流傳輸至第一使用者裝置;第二代管裝置,經組態以使用所述PCIe介面與所述儲存裝置集區通信以存取儲存在所述儲存裝置集區中的所述內容,且執行儲存在所述儲存裝置集區中的所述內容以將所述內容串流傳輸至第二使用者裝置;網路介面卡或PCIe匯流排,經組態以將所述儲存裝置集區可通信地連接至所述第一代管裝置及所述第二代管裝置;以及一或多個處理電路,經組態以:自所述第一代管裝置及所述第二代管裝置中的請求裝置接收對於所請求內容的請求;識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的可用儲存裝置;以及將所述所請求內容的裝載位置提供至所述請求裝置的本端檔案系統以用於執行所述所請求內容。
在一實施例中,所述一或多個處理電路可經組態以:識別所述儲存裝置集區中儲存所述所請求內容的第一儲存裝置;判定所述第一儲存裝置用於將所述所請求內容伺服至所述請求裝置的可用頻寬;判定所述第一儲存裝置的所述可用頻寬小於臨限頻寬;識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的第二儲存裝置;將所述所請求內容自所述儲存庫加載至所述第二儲存裝置;以及將儲存在所述第二儲存裝置中的所述所請求內容的所述裝載位置提供至所述請求裝置的所述本端檔案系統。
在下文中,將參看隨附圖式更詳細地描述實例實施例,在所述圖式中,相同圖式元件符號始終指相同元件。然而,本揭露可以各種不同形式體現,且不應解釋為僅限於本文中的所說明實施例。確切而言,提供這些實施例作為實例,使得本揭露將為透徹且完整的,且將向所屬技術領域中具通常知識者充分傳達本揭露的態樣及特徵。因此,可能未描述不為於本領域具有通常知識者完整理解本揭露的態樣及特徵所必需的過程、元件以及技術。除非另外指出,否則相同圖式元件符號貫穿附圖及書面描述指相同元件,且因此,可不重複其描述。
大體而言,用於基於控制台的遊戲平台的雲端遊戲服務使得此類基於控制台的遊戲平台的使用者能夠遠端地運行及進行儲存在雲端中的遊戲。舉例而言,這些雲端遊戲服務可代管框架伺服器中的多個實體控制台裝置,使得代管裝置中的每一者加載遊戲、執行遊戲,且將遊戲直接串流傳輸至使用者個人裝置。換言之,由框架伺服器代管的實體控制台裝置中的每一者可加載儲存在雲端中的遊戲,可在本端執行遊戲,且可將遊戲直接串流傳輸至使用者的個人裝置以使得使用者能夠遠端地玩遊戲而不必在使用者的個人裝置上直接下載遊戲(例如全部遊戲或遊戲的一部分)。
舉例而言,每一代管裝置可對應於基於控制台的遊戲平台的實體控制台裝置,使得代管裝置中的每一者可具有:本端處理器,例如中央處理單元(例如CPU)、圖形處理單元(例如GPU)或應用處理單元(例如APU),所述應用處理單元可對應於CPU/GPU的組合;及本端儲存資源,例如固態磁碟機(Solid State Drive,SSD)。在此情況下,所請求的遊戲可視需要自遊戲儲存庫(例如自雲端儲存器)直接加載於本端儲存資源中。然而,每一代管裝置的本端處理器可例如在玩遊戲期間變得飽和,使得即使在本端儲存資源具有例如用以伺服其他使用者的頻寬及/或容量時,亦可能無法充分利用每一代管裝置的本端儲存資源。因此,雖然可例如藉由在每一代管裝置上代管多個使用者來最大化每一代管裝置的本端處理器的利用率,但可能仍無法充分利用其本端儲存資源,因為本端儲存資源的利用率可受其本端處理器的飽和度限制。
根據本揭露的一或多個實例實施例,並非使用本端儲存資源作為代管裝置的主儲存資源,而是可提供分解式分層快取記憶體,使得包含多個儲存裝置的儲存裝置集區可由多個代管裝置共用,例如使得儲存裝置集區可並行地(例如同步或同時地)伺服多個代管裝置。舉例而言,代管裝置所請求的遊戲可分佈至儲存裝置集區中的儲存裝置中的合適儲存裝置,使得儲存裝置集區可有效地伺服所請求的遊戲。在此情況下,儲存裝置集區中上面儲存有所請求遊戲的儲存裝置中的一個合適儲存裝置可被指派用於將所請求遊戲伺服至請求代管裝置,或所請求遊戲可自儲存庫加載至儲存裝置集區中的儲存裝置中的一個合適儲存裝置中以將所請求遊戲伺服至請求代管裝置。因此,代管裝置中的每一者的本端儲存資源可用作本端快取記憶體,例如以儲存對應代管裝置的熱門遊戲或暫時儲存對應代管裝置的當前使用者的遊戲以防共用儲存器由於空間及/或頻寬限制而無法伺服所述遊戲,或所述本端儲存資源可視需要或視期望省略。因此,儲存資源的利用率可提高。
圖1示出根據本揭露的一或多個實例實施例的內容提供商系統的方塊圖。
參考圖1,內容提供商系統100可包含內容提供商平台102及一或多個使用者裝置104至106。一或多個使用者裝置104至106可經由通信網路(例如廣域網路(wide area network,WAN)、區域網路(local area network,LAN)、網際網路(Internet)、蜂巢式網路及/或類似者)108存取內容提供商平台102以存取由內容提供商平台102伺服的內容。舉例而言,在一些實施例中,內容提供商平台102可提供視訊內容、遊戲內容及/或類似者,所述內容可藉由一或多個使用者裝置104至106經由通信網路108串流傳輸。下文中,為方便起見,內容提供商系統100可在用於基於控制台的遊戲平台的雲端遊戲服務的上下文中得以描述,使得內容提供商平台對應於雲端遊戲提供商平台,但本揭露不限於此,且在各種實施例中,內容提供商系統100可向使用者裝置提供任何合適種類的內容,諸如視訊串流內容、音訊串流內容、資料搜尋內容及/或類似者。
一或多個使用者裝置104至106中的每一者可對應於合適的計算裝置以使得使用者裝置(例如使用者裝置104或使用者裝置106)的使用者能夠自內容提供商平台102接收(例如串流傳輸)內容(例如遊戲內容),且將控制信號提供至內容提供商平台102以控制內容(例如以控制遊戲中內容)。舉例而言,在一些實施例中,一或多個使用者裝置104至106中的每一者可包含對應於與內容提供商平台102相關聯的基於控制台的遊戲平台的控制台裝置,但本揭露不限於此。舉例而言,使用者裝置104至使用者裝置106中的每一者可包含具有安裝於其上的至少薄殼應用或仿真器應用的任何合適的計算裝置,以接收及控制由內容提供商平台102(諸如行動電話、智慧型手機、平板電腦、個人電腦PC、膝上型電腦、智慧型可穿戴裝置及/或類似者)伺服的內容。在其他實例中,使用者裝置104至使用者裝置106中的每一者可包含智慧型電視、媒體串流裝置、媒體串流伺服器鑰及/或類似者以使得使用者能夠串流傳輸由內容提供商平台102伺服的媒體。在一些實施例中,使用者裝置104至使用者裝置106中的每一者可經由通信網路108與內容提供商平台102通信,以使得其使用者能夠遠端地選擇、加載及/或執行(例如運行)儲存於內容提供商平台102處的遊戲。
圖2示出根據本揭露的一或多個實例實施例的內容提供商平台的方塊圖。
參考圖2,在本揭露的一或多個實例實施例中,內容提供商平台102可包含遊戲伺服器202、雲端儲存器204以及儲存裝置集區206。遊戲伺服器202可包含一或多個框架伺服器208及一或多個處理電路232。一或多個框架伺服器208中的每一者可包含多個裝置板210至216。裝置板210至裝置板216中的每一者可對應於控制台裝置的裝置板,使得裝置板210至裝置板216中的每一者可執行(例如可運行)控制台裝置的遊戲。舉例而言,在一些實施例中,裝置板210至裝置板216中的每一者可包含處理電路(例如CPU、GPU、APU及/或類似者)218、控制台裝置的操作系統220、本端檔案系統222以及本端儲存器(例如本端儲存裝置,諸如SSD)224。雖然圖2示出框架伺服器208包含4個或多於4個裝置板210至216,但本揭露不限於此,且框架伺服器208可包含任何合適數目個裝置板,諸如8個或多於8個裝置板。
在本揭露的一或多個實例實施例中,一或多個框架伺服器208的裝置板210至裝置板216中的每一者可共用同一儲存裝置集區206。舉例而言,框架伺服器208的裝置板210至裝置板216可經由網路介面控制器(NIC)230或匯流排(例如外圍組件互連高速(PCIe)匯流排)可通信地連接至儲存裝置集區206,以寫入儲存裝置集區206的一或多個儲存裝置236至242及/或自所述一或多個儲存裝置236至242讀取。舉例而言,在一些實施例中,裝置板210至裝置板216中的每一者可經由合適的儲存介面234連接至遊戲伺服器202的處理電路232,且遊戲伺服器202的處理電路232可經由NIC 230或匯流排(例如PCIe匯流排)可通信地連接至儲存裝置集區206。
儲存介面234可促進裝置板210至裝置板216與儲存裝置集區206之間(例如經由NIC 230)的通信(例如使用連接件及協定)。在一些實施例中,儲存介面234可促進儲存請求及回應在裝置板210至裝置板216與儲存裝置集區206之間(例如經由NIC 230或PCIe匯流排)的交換。在一些實施例中,儲存介面234可促進藉由儲存裝置集區206進行的去往及來自裝置板210至裝置板216的(例如經由NIC 230的)資料傳送。舉例而言,在一些實施例中,裝置板210至裝置板216可經由儲存介面234與處理電路232交換儲存請求及回應,且處理電路232可將所述儲存請求及回應自第一議定(例如儲存介面234的協定)轉換為與NIC 230相關聯的第二協定(例如應用程式設計介面(application programming interface,API)及/或類似者)及/或自所述第二協定轉換為所述第一協定,以促進裝置板210至裝置板216與儲存裝置集區206之間的通信。
在一實施例中,儲存介面234(例如連接件及其協定)可包含(或可符合)外圍組件互連高速(PCIe)及/或類似者。然而,本揭露不限於此,且在其他實施例中,儲存介面234(例如連接件及其協定)可符合其他合適的儲存介面,諸如小型電腦系統介面(Small Computer System Interface,SCSI)、串列附接SCSI(Serial Attached SCSI,SAS)、經由乙太網路的遠端直接記憶體存取(remote direct memory access,RDMA)、串列進階附接技術(Serial Advanced Technology Attachment,SATA)、光纖通道、非揮發性記憶體高速(Non Volatile Memory Express,NVMe)、經由組構的NVMe(NVMe-oF)及/或類似者。在其他實施例中,儲存介面234(例如連接件及其協定)可包含(或可符合)各種通用介面,諸如乙太網路、通用串列匯流排(Universal Serial Bus,USB)及/或類似者。為方便起見,儲存介面234在下文可在PCIe介面的上下文中加以描述,但本揭露不限於此。
雖然儲存裝置集區206在圖2中繪示為在遊戲伺服器202外部且經由NIC 230可通信地連接至遊戲伺服器202,但本揭露不限於此。舉例而言,在其他實施例中,如圖2中所繪示的儲存裝置集區206可在遊戲伺服器202外部,且經由PCIe匯流排可通信地連接至遊戲伺服器202。在另一實例中,在其他實施例中,儲存裝置集區206可實施為遊戲伺服器202的內部儲存裝置,其介面(例如儲存介面234、NIC 230及/或類似者)具有適當修改。此外,但本揭露不限於此,且共用名稱空間402中的每一者可具有任何合適數目個名稱空間,且每個名稱空間視其資源(例如儲存裝置介面(諸如PCIe Gen3/4/5)、遊戲的頻寬需求、容量、重調大小功能及/或類似者)而定可具有任何合適數目個串流。
圖3示出根據本揭露的一或多個實例實施例的儲存管理器的方塊圖。圖4示出根據本揭露的一或多個實例實施例的儲存裝置組態的方塊圖。雖然圖4繪示對應遊戲伺服器的裝置板210至裝置板216中的每一者皆連接至儲存裝置集區206,但本揭露不限於此,且裝置板210至裝置板216中的每一者可對應於任何合適的磁碟、儲存媒體或伺服器實施,諸如獨立磁碟冗餘陣列(redundant array of independent disk,RAID)、刀片式伺服器、框架伺服器及/或類似者。
參考圖3及圖4,目錄管理器308可使用(例如可監視或可存取)共用名稱空間402中的每一者以判定正在對應儲存裝置上加載的遊戲的各種狀態。舉例而言,目錄管理器308可(例如藉由資料協調器312)監視共用名稱空間402的更新,以判定其中正加載的遊戲是否已完成加載。然而,本揭露不限於此,且在其他實施例中,目錄管理器308可在共用名稱空間402中的任一者更新時(例如自資料協調器312)接收通知。
儲存排程器310可判定儲存裝置集區206中可將所請求遊戲伺服至請求裝置板的合適儲存裝置。在一些實施例中,儲存排程器310可識別儲存裝置集區206中可伺服所請求遊戲而不自雲端儲存器204加載所述遊戲的一或多個儲存裝置。舉例而言,儲存排程器310可識別儲存裝置集區206中其共用名稱空間402中目前已加載有所請求遊戲的一或多個儲存裝置。在一些實施例中,儲存排程器310可基於度量識別上面儲存有所請求遊戲的一或多個儲存裝置中用於將所請求遊戲伺服至請求裝置板的一個合適儲存裝置。舉例而言,在一些實施例中,儲存排程器310可判定其中目前已加載有所請求遊戲的一或多個儲存裝置中的任一者是否具有足夠頻寬以將所請求遊戲伺服至請求裝置板。在一些實施例中,若儲存裝置集區206中多於一個儲存裝置中目前儲存有所請求遊戲且具有足夠頻寬以伺服所請求遊戲,則儲存排程器310可基於目前儲存所述遊戲的儲存裝置的可用頻寬比較來選擇所述儲存裝置中的一個合適儲存裝置,使得加載可分佈在所述儲存裝置上。
在一些實施例中,儲存排程器310可判定儲存裝置集區206中的儲存裝置236至儲存裝置242中的每一者上均未儲存有所請求遊戲。在此情況下,儲存排程器310可基於各種度量而選擇儲存裝置236至儲存裝置242中的一個合適儲存裝置以用於將所請求遊戲自雲端儲存器204加載至其名稱空間402中,使得所選擇的儲存裝置可將所請求遊戲伺服至請求裝置板。舉例而言,在一些實施例中,儲存裝置集區206中的一儲存裝置可在所述儲存裝置中目前尚未加載有所請求遊戲(例如其名稱空間402中的任一者中尚未加載有所請求遊戲)時加載所述所請求遊戲,所述儲存裝置具有足夠空間以用於所述所請求遊戲,且包含所述所請求遊戲的當前遊戲(例如,目前由所述儲存裝置伺服或自所述儲存裝置串流傳輸的遊戲)的聚合頻寬小於所述儲存裝置的頻寬(例如,可用頻寬或總可用頻寬)。
資料協調器312可組態儲存裝置集區206的儲存裝置236至儲存裝置242,且可控制至儲存裝置集區206的寫入(例如加載)及自儲存裝置集區206的讀取。舉例而言,當儲存排程器310判定所請求遊戲應加載至儲存裝置集區206中的合適儲存裝置的可用名稱空間402中時,資料協調器312可自雲端儲存器204讀取所請求遊戲(例如所請求遊戲標題),且可將所請求遊戲加載(例如可寫入)至儲存裝置集區206的所述合適儲存裝置。在一些實施例中,資料協調器312可更新裝置板210至裝置板216中的每一者的本端檔案系統,以確保裝置板210至裝置板216中的每一者的本端檔案系統222具有儲存裝置236至儲存裝置242的最新更新(例如對名稱空間402的更新)。因此,在一些實施例中,資料協調器312可視需要或視期望(例如當存在對儲存裝置236至儲存裝置242的名稱空間402中的任一者的更新時)將名稱空間402重新裝載至裝置板210至裝置板216中的每一者的本端檔案系統222,而非使用分散式檔案系統,諸如數位檔案系統及/或類似者,其可增加潛時、複雜度以及成本。
圖5A至圖5D為根據本揭露的一或多個實例實施例的用於分解式分層快取記憶體共用的方法的流程圖。
然而,本揭露不限於圖5A至圖5D中所展示的方法500的操作的序列或數目,且可變更為如所屬領域中具通常知識者所辨識的操作的任何所需序列或數目。舉例而言,在一些實施例中,次序可變化,或方法可包含更少或額外操作。此外,方法500中所展示的操作可由上文所描述的一或多個實例實施例的那些的組件中的任何合適一者或組件的任何合適組合執行。
參考圖5A,方法500開始,且在方塊502處,自與裝置板(例如裝置板)相關聯的使用者裝置接收對遊戲的選擇。舉例而言,在一些實施例中,使用者可使用使用者裝置(例如使用者裝置104或使用者裝置106)來與裝置板210至裝置板216中的一者通信,以自由內容提供商平台102伺服的遊戲目錄選擇遊戲。在方塊504處請求遊戲的位置。舉例而言,裝置板可向目錄管理器308請求遊戲的位置,且方法500可在方塊516處繼續,其將在下文參考圖5B更詳細地描述。
仍參考圖5A,在方塊506處判定是否接收到有效位置。舉例而言,在一些實施例中,在方塊506處,裝置板可判定是否自目錄管理器308接收到有效位置,且若未接收到(例如在506處為否),則在方塊508處判定是否自目錄管理器308返回加載完成通知。舉例而言,在一些實施例中,在方塊506處,裝置板可判定目錄管理器308是否返回遊戲位置及時戳(例如參見圖5B中的方塊520),且在方塊508處,裝置板可判定目錄管理器308是否返回具有遊戲位置及時戳的加載完成通知(例如參見圖5B中的方塊540)。若未返回(例如在508處為否),則裝置板可繼續等待直至在方塊508處接收到加載完成通知。
另一方面,若裝置板接收位置及時戳(例如在506或508處為是),則在方塊510處可判定裝置板的本端檔案系統222是否可用。舉例而言,在一些實施例中,在方塊510處,裝置板可請求資料協調器312檢查裝置板的本端檔案系統222是否具有更新的遊戲位置,且方法500可在方塊544處繼續,其將在下文參考圖5C更詳細地描述。
仍參考圖5A,在方塊512處可判定遊戲在本端檔案系統上是否可用。舉例而言,在一些實施例中,裝置板可等待指示其本端檔案系統222已經更新的通知(例如參見圖5C中的方塊552)。若尚未接收到通知(例如在方塊512處為否),則裝置板可繼續等待其本端檔案系統222被裝載(例如參見圖5C中的方塊546)或重新裝載(例如參見圖5C中的方塊550)。另一方面,若接收到通知(例如在方塊512處為是),則在方塊514處,裝置板可經由其本端檔案系統222將遊戲加載至其內部記憶體中以運行(例如執行)遊戲,且方法500可結束。
參考圖5B,當在方塊504處裝置板向目錄管理器308請求遊戲的位置時,方法500可如圖5B中所繪示繼續,使得在方塊516處可請求用於伺服遊戲的合適儲存裝置。舉例而言,在一些實施例中,目錄管理器308可與儲存排程器310通信以判定儲存裝置集區206中可伺服所請求遊戲的合適儲存裝置,且方法500可在方塊554處繼續,其將在下文參考圖5D更詳細地描述。在方塊518處,可判定是否接收到伺服儲存裝置資訊。舉例而言,在一些實施例中,目錄管理器308可判定儲存排程器310是否返回可伺服遊戲的合適儲存裝置的儲存裝置資訊(例如參見圖5D中的方塊558)而不必自儲存庫(例如雲端儲存器204)加載遊戲。若返回(例如在方塊518處為是),則在方塊520處目錄管理器308可返回遊戲位置及時戳,且方法500可在圖5A中的方塊506處繼續,使得裝置板在方塊510處請求本端檔案系統可用性。
另一方面,若未接收到伺服儲存裝置資訊(例如在方塊518處為否),則在方塊522處可判定是否接收到快取儲存裝置資訊。舉例而言,在一些實施例中,目錄管理器308可判定儲存排程器310是否返回可自儲存庫(例如雲端儲存器204)加載(例如可儲存)所請求遊戲以用於伺服所請求遊戲的合適儲存裝置的快取儲存裝置資訊(例如參見圖5D中的方塊564)。
若未返回(例如在方塊522處為否),則在方塊523處判定請求裝置板是否具有本端儲存器224。舉例而言,目錄管理器308可檢查請求裝置板是否具有本端儲存器224。若具有(例如在方塊523處為是),則在方塊525處,所請求遊戲可自儲存庫直接加載至請求裝置板的本端儲存器224。舉例而言,目錄管理器308可將遊戲自雲端儲存器204直接加載至請求裝置板的本端儲存器224中(例如藉由資料協調器312),且在此情況下,可旁路儲存裝置集區206。否則(例如在方塊523處為否),方法可回環至方塊516,使得使用者可需要等待直至合適儲存裝置可用。
另一方面,若接收到快取儲存裝置資訊(例如在方塊522處為是),則在方塊524處遊戲的狀態可改變為加載,在方塊526處可針對加載完成通知登記使用者,且在方塊528處可開始遊戲的加載。舉例而言,在一些實施例中,根據自儲存排程器310接收到的快取儲存裝置資訊,目錄管理器308可告知資料協調器312將遊戲自雲端儲存器204加載至可用儲存裝置。在此情況下,資料協調器312可自雲端儲存器204讀取遊戲以將遊戲加載至可用儲存裝置(例如可用儲存裝置的可用名稱空間)中,且在方塊530處可返回等待訊息。舉例而言,由於在方塊506處尚未接收到有效位置(例如參見圖5A),因此在方塊508處裝置板可繼續等待加載完成通知,且方法500可在操作532處繼續判定遊戲是否已成功加載。
在方塊532處可判定遊戲是否成功加載。舉例而言,在一些實施例中,資料協調器312可在結束自雲端儲存器204讀取遊戲時通知目錄管理器308遊戲的加載已完成。若未如此(例如在方塊532處為否),則在方塊532處目錄管理器308可繼續等待更新。另一方面,若遊戲已成功地加載(例如在方塊532處為是),則在方塊534處遊戲的狀態可改變為「快取」,且在方塊536處可判定任何使用者是否在等待加載完成。舉例而言,在一些實施例中,目錄管理器308可判定請求遊戲加載的使用者是否仍在線,及/或對於等待遊戲加載的使用者是否存在任何待辦等待訊息。
若無(例如在方塊536處為否),則在方塊538處可出現錯誤狀態,且方法500可結束。另一方面,若在方塊536處存在等待加載完成的使用者,則在方塊540處可返回具有遊戲位置及時戳的通知(例如加載完成通知),且方法可在操作510處繼續(例如參見圖5A)。舉例而言,在一些實施例中,目錄管理器308可將通知發送至請求裝置板,且在方塊510處,裝置板可針對所加載遊戲請求本端檔案系統可用性。
參考圖5C,當裝置板在方塊510處針對所加載遊戲請求本端檔案系統可用性時,方法500可如圖5C中所示繼續,使得在方塊544處,可判定是否將遊戲位置(例如名稱空間、分區、LUN及/或類似者)裝載至請求裝置板的本端檔案系統222。舉例而言,在一些實施例中,資料協調器312可與同裝置板相關聯的本端檔案系統222的FS協調器通信,以判定本端檔案系統222是否具有對應於所加載遊戲的更新的名稱空間資訊。在此情況下,由於裝置板(例如裝置板)中的每一者可具有其自身本端檔案系統222,且可各自在任何時間將遊戲加載至儲存裝置集區206的儲存裝置236至儲存裝置242中的任一者,因此當藉由裝置板中的一者對儲存裝置集區206進行更新時,另一裝置板可能未察覺所述更新,此是因為其本端檔案系統222可具有過期的名稱空間資訊。因此,在一些實施例中,資料協調器312可(例如經由FS協調器)將對應於所加載遊戲的更新的名稱空間資訊裝載或重新裝載至本端檔案系統222。
舉例而言,在一些實施例中,若遊戲位置(例如名稱空間、分區、LUN及/或類似者)並未裝載至本端檔案系統222(例如在方塊544處為否),則在方塊546處遊戲位置可裝載至本端檔案系統222,且在方塊552處可返回本端檔案系統222可用的通知。舉例而言,在一些實施例中,資料協調器312可與目錄管理器308通信,以判定本端檔案系統222是否具有當前遊戲位置,且若無(例如在操作544處為否),則資料協調器312可將對應於遊戲位置的名稱空間(例如分區及LUN)裝載至本端檔案系統222。
另一方面,若遊戲位置已裝載於本端檔案系統上(例如在方塊544處為是),則在方塊548處可判定遊戲位置的裝載點是否過期。舉例而言,因為裝置板的資料協調器312可在任何時間修改儲存裝置集區206的儲存裝置236至儲存裝置242中所儲存的內容;因此遊戲位置可改變,且裝載於本端檔案系統222上的遊戲位置可包含過期的遊戲位置資訊。
若裝載於本端檔案系統222上的遊戲位置並未過期(例如在方塊548處為否),則在方塊552處可返回本端檔案系統222可用的通知,且方法可在方塊514處繼續(例如參見圖5A),使得遊戲經由本端檔案系統222加載至請求裝置板(例如對應裝置板)的內部記憶體中以運行(例如執行)所述遊戲。另一方面,若裝載點過期(例如在方塊548處為是),則在方塊550處遊戲位置可重新裝載至本端檔案系統222,且可返回通知,使得方法500可在方塊514處繼續(例如參見圖5A)。
參考圖5D,當在方塊516處目錄管理器308請求儲存裝置集區206中可伺服所請求遊戲的可用儲存裝置時(例如參見圖5B),方法500可如圖5D中所示繼續,使得在方塊554處,可判定儲存裝置集區206的儲存裝置236至儲存裝置242中的任一者目前是否快取(例如目前是否儲存)所請求遊戲。舉例而言,在一些實施例中,儲存排程器310可檢查儲存裝置236至儲存裝置242中的每一者的名稱空間,以判定儲存裝置236至儲存裝置242中的任一者目前是否具有所請求遊戲(例如藉由目錄管理器308)。
若具有(例如在方塊554處為是),則在方塊556處,可判定目前快取所請求遊戲的儲存裝置中的任一者是否具有足夠頻寬以伺服所請求遊戲。舉例而言,儲存排程器310可判定目前快取所請求遊戲的儲存裝置目前所伺服的加載量(例如使用者數目)是否大於或等於所述儲存裝置的臨限加載值。若目前快取所請求遊戲的儲存裝置具有足夠頻寬以將所請求遊戲伺服至請求裝置板(例如在方塊556處為是),則在操作558處返回所述儲存裝置的儲存資訊,且方法500可在方塊520處繼續(例如參見圖5B)。
另一方面,若儲存裝置集區206中的儲存裝置236至儲存裝置242中無一者目前快取所請求遊戲(例如在方塊554處為否)及/或具有足夠頻寬以伺服所請求遊戲(例如在方塊556處為否),則在方塊560處,可判定儲存裝置236至儲存裝置242中的任一者是否可用於自儲存庫(例如雲端儲存器204)快取(例如加載)所請求遊戲。舉例而言,在一些實施例中,儲存排程器310可檢查儲存裝置236至儲存裝置242中的每一者的名稱空間,以判定儲存裝置236至儲存裝置242中的任一者是否具有擁有可快取所請求遊戲的足夠空間的可用名稱空間(例如空閒名稱空間)。
若具有(例如在方塊560處為是),則在方塊562處,可判定可用的儲存裝置236至儲存裝置242中的任一者是否具有足夠頻寬以伺服所請求遊戲。舉例而言,儲存排程器310可判定可用儲存裝置目前伺服的加載量(例如使用者數目)是否大於或等於所述儲存裝置的臨限加載值。若可用儲存裝置具有足夠頻寬以將所請求遊戲伺服至請求裝置板(例如在方塊562處為是),則在方塊564處返回所述可用儲存裝置的儲存資訊,且方法500可在方塊524處繼續(例如參見圖5B),使得所請求遊戲加載(例如保存)在可用儲存裝置中。
另一方面,若儲存裝置集區206中的儲存裝置236至儲存裝置242中無一者可用於快取遊戲(例如在方塊560處為否)及/或具有足夠頻寬以伺服所請求遊戲(例如在方塊562處為否),則在方塊566處,可判定儲存裝置236至儲存裝置242中的任一者是否具有一或多個非當前遊戲。舉例而言,在一些實施例中,儲存排程器310可檢查儲存裝置236至儲存裝置242中的每一者的名稱空間,以判定儲存裝置236至儲存裝置242中的任一者是否具有快取非當前遊戲(例如目前並未在裝置板上執行的遊戲)的名稱空間(例如藉由目錄管理器308)。若具有(例如在方塊566處為是),則在方塊568處,可判定具有非當前遊戲的儲存裝置236至儲存裝置242中的任一者在逐出(例如移除)所述非當前遊戲時是否具有足夠空間。舉例而言,在一些實施例中,儲存排程器310可判定若自具有非當前遊戲的名稱空間逐出非當前遊戲,所述名稱空間的大小是否足夠大以快取所請求遊戲。
若名稱空間的大小足以快取所請求遊戲(例如在方塊568處為是),則在方塊570處,可判定具有非當前遊戲的儲存裝置是否具有足夠頻寬以伺服所請求遊戲。舉例而言,儲存排程器310可判定具有非當前遊戲的儲存裝置目前所伺服的加載量(例如使用者數目)是否大於或等於所述儲存裝置的臨限加載值。若儲存裝置具有足夠頻寬以將所請求遊戲伺服至請求裝置板(例如在方塊570處為是),則在方塊574處自所述儲存裝置逐出(例如移除)非當前遊戲,且在方塊564處返回所述儲存裝置的儲存資訊。在此情況下,方法500可在方塊524處繼續(例如參見圖5B),使得所請求遊戲加載(例如保存)在所識別儲存裝置中。
另一方面,若儲存裝置集區206中的儲存裝置236至儲存裝置242中無一者具有非當前遊戲(例如在方塊566處為否)、即使自其中逐出非當前遊戲亦無一者具有足夠空間(例如在方塊568處為否)及/或無一者具有足夠頻寬以伺服所請求遊戲(例如在方塊570處為否),則在方塊572處可出現錯誤狀態且方法500可結束,使得請求裝置板可等待直至合適的儲存裝置變得可用於伺服所請求遊戲。
在圖中,出於明晰之目的,可放大及/或簡化元件、層以及區域的相對尺寸。出於便於解釋的目的,在本文中可使用空間相對術語,諸如「在…以下(beneath)」、「在…下方(below)」、「下部(lower)」、「在…下面(under)」、「在…上方(above)」、「上部(upper)」及類似者,來描述如圖中所示出的一個元件或特徵與另一(些)元件或特徵的關係。應理解,空間相對術語意欲涵蓋在使用或操作裝置時除圖中描繪之定向外的不同定向。舉例而言,若圖式中的裝置翻轉,則描述為「在」其他元件或特徵「下方」或「以下」或「下面」的元件將被定向為「在」其他元件或特徵「上方」。因此,實例術語「在…下方」及「在…下面」可涵蓋在…上方及在…下方兩個定向。裝置可以其他方式定向(例如旋轉90度或處於其他定向),且本文中所使用的空間相對描述詞可相應地進行解釋。
應理解,儘管在本文中可使用術語「第一」、「第二」、「第三」等來描述各種元件、組件、區域、層及/或區段,但這些元件、組件、區域、層及/或區段不應受這些術語限制。這些術語用於區別一個元件、組件、區域、層或區段與另一元件、組件、區域、層或區段。因此,在不脫離本揭露的精神及範疇的情況下,下文所描述的第一元件、組件、區域、層或區段可被稱為第二元件、組件、區域、層或區段。
應理解,當稱元件或層在另一元件或層「上」、「連接至」另一元件或層或「耦接至」另一元件或層時,其可直接在所述另一元件或層上、連接至所述另一元件或層或耦接至所述另一元件或層,或可存在一或多個介入元件或層。另外,亦將理解,當元件或層被稱作「在兩個元件或層之間」時,所述元件或層可為在兩個元件或層之間的唯一元件或層,或亦可存在一或多個介入元件或層。
本文中所使用的術語是出於描述特定實施例的目的且並不意欲限制本揭露。如本文中所使用,除非上下文另外明確地指示,否則單數形式「一(a/an)」意欲亦包含複數形式。應進一步理解,術語「包括(comprises/comprising)」、「包含(includes及including)」、「具有(has、have及having)」在用於本說明書中時,指定所陳述的特徵、整數、步驟、操作、元件及/或組件的存在,但不排除一或多個其他特徵、整數、步驟、操作、元件、組件及/或其群組的存在或添加。如本文所使用,術語「及/或」包含相關聯所列項目中的一或多者的任何及所有組合。諸如「…中的至少一者」的表述在位於元件清單之前時修飾元件的整個清單,而並不修飾清單的個別元件。
如本文所使用,術語「實質上」、「約」以及類似術語用作表示近似的術語且並不用作表示程度的術語,且意欲考慮將由所屬領域中具有通常知識者識別的量測值或計算值的固有偏差。此外,當描述本揭露的實施例時,「可」的使用指代「本揭露的一或多個實施例」。如本文中所使用,術語「使用(use/using/used)」可分別被視為與術語「利用(utilize/utilizing/utilized)」同義。此外,術語「例示性」意欲指實例或說明。
除非另外定義,否則本文所使用的所有術語(包含技術及科學術語)具有與本揭露所屬領域的一般技術者通常理解的相同含義。應進一步理解,術語(諸如,常用詞典中所定義的那些術語)應被解釋為具有與其在相關領域及/或本說明書的上下文中的含義一致的含義,且不應以理想化或過分正式意義來進行解釋,除非本文中明確地如此定義。
雖然已描述一些實例實施例,但本領域的技術人員將易於理解在不脫離本揭露的精神及範疇的情況下各種修改在實例實施例中為可能的。將理解,除非另外描述,否則每一實施例內的特徵或態樣的描述應通常視為可用於其他實施例中的其他類似特徵或態樣。因此,如於所屬領域中具通常知識者將顯而易見,除非另外具體指示,否則關於特定實施例所描述的特徵、特性及/或要素可單獨使用或與結合其他實施例所描述的特徵、特性及/或要素組合使用。因此,應理解,前述內容為各種實例實施例的說明且並不解釋為限於本文中揭露的特定實例實施例,且對所揭露實例實施例以及其他實例實施例的各種修改意欲包含於如隨附申請專利範圍及其等效物所定義的本揭露的精神及範疇內。
100:內容提供商系統
102:內容提供商平台
104、106:使用者裝置
108:通信網路
202:遊戲伺服器
204:雲端儲存器
206:儲存裝置集區
208:框架伺服器
210、212、214、216:裝置板
218、232、302:處理電路
220:操作系統
222:本端檔案系統
224:本端儲存器
226:雲端儲存器介面
228:通信介面
230:網路介面控制器
234:儲存介面
236、238、240、242:儲存裝置
244:儲存管理器
246:加載平衡器
304:處理器
306:記憶體
308:目錄管理器
310:儲存排程器
312:資料協調器
402:名稱空間
404、406、408、410:遊戲
500:方法
502、504、506、508、510、512、514、516、518、520、522、523、524、525、526、528、530、532、534、536、538、540、544、546、548、550、552、554、556、558、560、562、564、566、568、570、572、574:方塊
參考隨附圖式,本揭露的以上及其他態樣及特徵將自實例實施例的以下詳細描述變得對本領域的技術人員更顯而易見。
圖1示出根據本揭露的一或多個實例實施例的內容提供商系統的方塊圖。
圖2示出根據本揭露的一或多個實例實施例的內容提供商平台的方塊圖。
圖3示出根據本揭露的一或多個實例實施例的儲存管理器的方塊圖。
圖4示出根據本揭露的一或多個實例實施例的儲存裝置組態的方塊圖。
圖5A至圖5D為根據本揭露的一或多個實例實施例的用於分解式分層快取記憶體共用的方法的流程圖。
100:內容提供商系統
102:內容提供商平台
104、106:使用者裝置
108:通信網路
Claims (20)
- 一種內容提供商系統,包括: 儲存庫,經組態以儲存內容目錄; 儲存裝置集區,經組態以將來自所述內容目錄的內容自所述儲存庫加載至所述儲存裝置集區的一或多個儲存裝置中; 第一代管裝置,可通信地連接至所述儲存裝置集區,且所述第一代管裝置經組態以執行儲存在所述儲存裝置集區中的所述內容以將所述內容提供至第一使用者裝置; 第二代管裝置,可通信地連接至所述儲存裝置集區,且所述第二代管裝置經組態以執行儲存在所述儲存裝置集區中的所述內容以將所述內容提供至第二使用者裝置;以及 一或多個處理電路,經組態以識別所述儲存裝置集區的所述一或多個儲存裝置中用於將所請求內容伺服至所述第一代管裝置及所述第二代管裝置中的請求裝置的可用儲存裝置。
- 如請求項1所述的內容提供商系統,其中所述第一代管裝置及所述第二代管裝置經組態以使用外圍組件互連高速進行通信。
- 如請求項2所述的內容提供商系統,其中所述第一代管裝置及所述第二代管裝置藉由網路介面卡或外圍組件互連高速匯流排連接至所述儲存裝置集區。
- 如請求項1所述的內容提供商系統,其中所述儲存裝置集區的所述一或多個儲存裝置包括一或多個共用名稱空間,所述一或多個共用名稱空間與儲存在所述一或多個儲存裝置中的所述內容相關聯且包括對應於儲存在所述一或多個儲存裝置中的所述內容的分區資訊及邏輯單元數目。
- 如請求項4所述的內容提供商系統,其中所述一或多個處理電路經組態以: 自所述請求裝置接收對於所述所請求內容的請求; 識別所述儲存裝置集區中其一或多個共用名稱空間中儲存有所述所請求內容的第一儲存裝置;以及 判定所述第一儲存裝置用於將所述所請求內容伺服至所述請求裝置的可用頻寬。
- 如請求項5所述的內容提供商系統,其中所述一或多個處理電路經組態以: 判定所述第一儲存裝置的所述可用頻寬小於臨限頻寬;以及 識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的第二儲存裝置。
- 如請求項6所述的內容提供商系統,其中所述一或多個處理電路經組態以: 判定所述所請求內容並未儲存在所述第二儲存裝置的一或多個共用名稱空間中; 判定所述第二儲存裝置具有可用名稱空間,所述可用名稱空間具有用於儲存所述所請求內容的足夠空間; 判定所述第二儲存裝置的可用頻寬大於所述臨限頻寬;以及 將所述所請求內容自所述儲存庫加載至所述第二儲存裝置的所述可用名稱空間。
- 如請求項7所述的內容提供商系統,其中所述一或多個處理電路經組態以: 識別儲存在所述第二儲存裝置的所述可用名稱空間中的非當前內容; 判定所述可用名稱空間藉由移除所述非當前內容而具有足夠空間;以及 自所述可用名稱空間移除所述非當前內容以為所述所請求內容提供空間。
- 如請求項1所述的內容提供商系統,其中所述請求裝置包括本端檔案系統,且所述一或多個處理電路經組態以將所述所請求內容的裝載位置提供至所述請求裝置的所述本端檔案系統。
- 一種用於內容提供商系統的方法,所述內容提供商系統包括:儲存庫,儲存內容目錄;儲存裝置集區,儲存來自所述內容目錄的至少一些內容;第一代管裝置,可通信地連接至所述儲存裝置集區以執行儲存在所述儲存裝置集區中的所述內容;以及第二代管裝置,可通信地連接至所述儲存裝置集區以執行儲存在所述儲存裝置集區中的所述內容,所述方法包括: 藉由一或多個處理電路自所述第一代管裝置及所述第二代管裝置中的請求裝置接收對於所請求內容的請求;以及 藉由所述一或多個處理電路識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的可用儲存裝置。
- 如請求項10所述的方法,其中所述第一代管裝置及所述第二代管裝置使用外圍組件互連高速進行通信。
- 如請求項11所述的方法,其中所述第一代管裝置及所述第二代管裝置藉由網路介面卡或外圍組件互連高速匯流排連接至所述儲存裝置集區。
- 如請求項10所述的方法,其中所述儲存裝置集區的一或多個儲存裝置包括一或多個共用名稱空間,所述一或多個共用名稱空間與儲存在所述儲存裝置集區中的所述內容相關聯且包括對應於儲存在所述儲存裝置集區中的所述內容的分區資訊及邏輯單元數目。
- 如請求項13所述的方法,更包括: 藉由所述一或多個處理電路識別所述儲存裝置集區中其一或多個共用名稱空間中儲存有所述所請求內容的第一儲存裝置;以及 藉由所述一或多個處理電路判定所述第一儲存裝置用於將所述所請求內容伺服至所述請求裝置的可用頻寬。
- 如請求項14所述的方法,更包括: 藉由所述一或多個處理電路判定所述第一儲存裝置的所述可用頻寬小於臨限頻寬;以及 藉由所述一或多個處理電路識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的第二儲存裝置。
- 如請求項15所述的方法,更包括: 藉由所述一或多個處理電路判定所述所請求內容並未儲存在所述第二儲存裝置的一或多個共用名稱空間中; 藉由所述一或多個處理電路判定所述第二儲存裝置具有可用名稱空間,所述可用名稱空間具有用於儲存所述所請求內容的足夠空間; 藉由所述一或多個處理電路判定所述第二儲存裝置的可用頻寬大於所述臨限頻寬;以及 藉由所述一或多個處理電路將所述所請求內容自所述儲存庫加載至所述第二儲存裝置的所述可用名稱空間。
- 如請求項16所述的方法,更包括: 藉由所述一或多個處理電路識別儲存在所述第二儲存裝置的所述可用名稱空間中的非當前內容; 藉由所述一或多個處理電路判定所述可用名稱空間藉由移除所述非當前內容而具有足夠空間;以及 藉由所述一或多個處理電路自所述可用名稱空間移除所述非當前內容以為所述所請求內容提供空間。
- 如請求項10所述的方法,其中所述請求裝置包括本端檔案系統,且所述方法更包括: 藉由所述一或多個處理電路將所述所請求內容的裝載位置提供至所述請求裝置的所述本端檔案系統。
- 一種內容提供商系統,包括: 儲存庫,經組態以儲存內容目錄; 儲存裝置集區,經組態以將來自所述內容目錄的內容自所述儲存庫加載至所述儲存裝置集區的一或多個儲存裝置中; 第一代管裝置,經組態以使用外圍組件互連高速介面與所述儲存裝置集區通信以存取儲存在所述儲存裝置集區中的所述內容,且執行儲存在所述儲存裝置集區中的所述內容以將所述內容串流傳輸至第一使用者裝置; 第二代管裝置,經組態以使用所述外圍組件互連高速介面與所述儲存裝置集區通信以存取儲存在所述儲存裝置集區中的所述內容,且執行儲存在所述儲存裝置集區中的所述內容以將所述內容串流傳輸至第二使用者裝置; 網路介面卡或外圍組件互連高速匯流排,經組態以將所述儲存裝置集區可通信地連接至所述第一代管裝置及所述第二代管裝置;以及 一或多個處理電路,經組態以: 自所述第一代管裝置及所述第二代管裝置中的請求裝置接收對於所請求內容的請求; 識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的可用儲存裝置;以及 將所述所請求內容的裝載位置提供至所述請求裝置的本端檔案系統以用於執行所述所請求內容。
- 如請求項19所述的內容提供商系統,其中所述一或多個處理電路經組態以: 識別所述儲存裝置集區中儲存所述所請求內容的第一儲存裝置; 判定所述第一儲存裝置用於將所述所請求內容伺服至所述請求裝置的可用頻寬; 判定所述第一儲存裝置的所述可用頻寬小於臨限頻寬; 識別所述儲存裝置集區中用於將所述所請求內容伺服至所述請求裝置的第二儲存裝置; 將所述所請求內容自所述儲存庫加載至所述第二儲存裝置;以及 將儲存在所述第二儲存裝置中的所述所請求內容的所述裝載位置提供至所述請求裝置的所述本端檔案系統。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063056474P | 2020-07-24 | 2020-07-24 | |
US63/056,474 | 2020-07-24 | ||
US17/008,509 US11782833B2 (en) | 2020-03-12 | 2020-08-31 | System and method of determining available bandwidth in disaggregated tiered cache for cloud content storage |
US17/008,509 | 2020-08-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202205106A true TW202205106A (zh) | 2022-02-01 |
Family
ID=79586086
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110107217A TW202205106A (zh) | 2020-07-24 | 2021-03-02 | 內容提供商系統及用於內容提供商系統的方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11782833B2 (zh) |
KR (1) | KR20220013294A (zh) |
CN (1) | CN113971000A (zh) |
TW (1) | TW202205106A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11616849B2 (en) * | 2021-02-15 | 2023-03-28 | Lilac Cloud, Inc. | Distributed split edge application architecture |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100740635B1 (ko) | 2005-12-26 | 2007-07-18 | 엠텍비젼 주식회사 | 휴대형 단말기 및 휴대형 단말기에서의 공유 메모리 제어방법 |
US8613673B2 (en) * | 2008-12-15 | 2013-12-24 | Sony Computer Entertainment America Llc | Intelligent game loading |
US20100333116A1 (en) | 2009-06-30 | 2010-12-30 | Anand Prahlad | Cloud gateway system for managing data storage to cloud storage sites |
JP5378467B2 (ja) | 2011-08-03 | 2013-12-25 | 株式会社バンダイナムコゲームス | 情報提供装置、情報提供システムおよびプログラム |
US20190235777A1 (en) | 2011-10-11 | 2019-08-01 | Donglin Wang | Redundant storage system |
US9345966B2 (en) | 2012-03-13 | 2016-05-24 | Sony Interactive Entertainment America Llc | Sharing recorded gameplay to a social graph |
US9015527B2 (en) | 2013-01-29 | 2015-04-21 | Hewlett-Packard Development Company, L.P. | Data backup and recovery |
WO2014193403A1 (en) | 2013-05-31 | 2014-12-04 | Empire Technology Development Llc | Cache-influenced video games |
US9619389B1 (en) | 2013-07-11 | 2017-04-11 | Unigen Corporation | System for a backward and forward application environment compatible distributed shared coherent storage |
JP6317707B2 (ja) | 2014-06-13 | 2018-04-25 | エヌエイチエヌ エンターテインメント コーポレーションNHN Entertainment Corporation | グローバルゲームサービスのためのゲームサービスシステムおよびゲームサービス方法 |
US10394573B2 (en) | 2015-04-07 | 2019-08-27 | Avago Technologies International Sales Pte. Limited | Host bus adapter with built-in storage for local boot-up |
US11010054B1 (en) | 2015-06-10 | 2021-05-18 | EMC IP Holding Company LLC | Exabyte-scale data processing system |
US10315108B2 (en) | 2015-08-19 | 2019-06-11 | Sony Interactive Entertainment America Llc | Local application quick start with cloud transitioning |
US11040281B2 (en) | 2015-09-30 | 2021-06-22 | Sony Interactive Entertainment LLC | Multi-user demo streaming service for cloud gaming |
US11054886B2 (en) * | 2017-04-01 | 2021-07-06 | Intel Corporation | Supporting multiple refresh rates in different regions of panel display |
US11372580B2 (en) | 2018-08-07 | 2022-06-28 | Marvell Asia Pte, Ltd. | Enabling virtual functions on storage media |
US11311800B2 (en) | 2019-08-09 | 2022-04-26 | Sony Interactive Entertainment LLC | Systems implementing high-speed data communication fabric for cloud gaming data storage and retrieval |
US20190387634A1 (en) | 2019-08-29 | 2019-12-19 | Intel Corporation | System, apparatus and method for providing a symmetric multi-processor high-speed link |
US20210245047A1 (en) | 2020-02-10 | 2021-08-12 | Intel Corporation | Continuum architecture for cloud gaming |
US11321259B2 (en) * | 2020-02-14 | 2022-05-03 | Sony Interactive Entertainment Inc. | Network architecture providing high speed storage access through a PCI express fabric between a compute node and a storage server |
-
2020
- 2020-08-31 US US17/008,509 patent/US11782833B2/en active Active
-
2021
- 2021-01-19 KR KR1020210007275A patent/KR20220013294A/ko not_active Application Discontinuation
- 2021-03-02 CN CN202110230802.1A patent/CN113971000A/zh active Pending
- 2021-03-02 TW TW110107217A patent/TW202205106A/zh unknown
-
2023
- 2023-09-01 US US18/241,767 patent/US20230409479A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220027272A1 (en) | 2022-01-27 |
US11782833B2 (en) | 2023-10-10 |
KR20220013294A (ko) | 2022-02-04 |
US20230409479A1 (en) | 2023-12-21 |
CN113971000A (zh) | 2022-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11311801B2 (en) | Methods for using high-speed data communication fabric to enable cross-system command buffer reading for data retrieval in cloud gaming | |
Li et al. | Accelerating relational databases by leveraging remote memory and RDMA | |
US8433770B2 (en) | Combined local and network storage interface | |
US20210303480A1 (en) | Managing least recently used cache using reduced memory footprint sequence container | |
US10168912B2 (en) | Short stroking and data tiering for a distributed filesystem | |
TWI793654B (zh) | 雲端遊戲系統及操作雲端遊戲系統之方法 | |
US20070038749A1 (en) | Combined local and network storage interface | |
US8122182B2 (en) | Electronically addressed non-volatile memory-based kernel data cache | |
US9378218B2 (en) | Apparatus and method for enabling clients to participate in data storage in distributed file system | |
US11544812B2 (en) | Resiliency schemes for distributed storage systems | |
WO2022050998A1 (en) | Pooled memory controller for thin-provisioning disaggregated memory | |
US20230409479A1 (en) | System and method of disaggregated tiered cache for cloud content storage | |
Islam et al. | Efficient data access strategies for Hadoop and Spark on HPC cluster with heterogeneous storage | |
US20220382672A1 (en) | Paging in thin-provisioned disaggregated memory | |
US10848555B2 (en) | Method and apparatus for logical mirroring to a multi-tier target node | |
GB2502288A (en) | Modifying the order of checking virtual machines for cached disc data | |
US11765235B2 (en) | System and method of disk sharing for cloud content storage | |
CN113704165B (zh) | 一种超融合服务器、数据处理方法及装置 | |
Bach et al. | Supporting Hardware |