JP2016513316A - データアクセスシステム、メモリ共有装置及びデータ読み取り方法 - Google Patents

データアクセスシステム、メモリ共有装置及びデータ読み取り方法 Download PDF

Info

Publication number
JP2016513316A
JP2016513316A JP2015556369A JP2015556369A JP2016513316A JP 2016513316 A JP2016513316 A JP 2016513316A JP 2015556369 A JP2015556369 A JP 2015556369A JP 2015556369 A JP2015556369 A JP 2015556369A JP 2016513316 A JP2016513316 A JP 2016513316A
Authority
JP
Japan
Prior art keywords
memory
memory sharing
data
sharing device
resource pool
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.)
Granted
Application number
JP2015556369A
Other languages
English (en)
Other versions
JP6373876B2 (ja
Inventor
良偉 莫
良偉 莫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2016513316A publication Critical patent/JP2016513316A/ja
Application granted granted Critical
Publication of JP6373876B2 publication Critical patent/JP6373876B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/084Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1008Correctness of operation, e.g. memory ordering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/15Use in a specific computing environment
    • G06F2212/154Networked environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/16General purpose computing application
    • G06F2212/163Server or database system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/254Distributed memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/26Using a specific storage system architecture
    • G06F2212/263Network storage, e.g. SAN or NAS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本発明は、少なくとも2つのメモリ共有装置により構成されるメモリ共有リソースプールと、メモリ共有装置に対応する少なくとも2つの制御装置とを有するデータアクセスシステムに関し、少なくとも2つのメモリ共有装置における何れかのメモリ共有装置は、データを記憶するよう構成される統一的にアドレッシングされるメモリユニットを有し、何れかのメモリ共有装置は、少なくとも2つの制御装置のメモリ共有装置に対応する1つの制御装置の制御の下で、メモリ共有リソースプールの何れかのメモリ共有装置のメモリユニットのデータを取得し、少なくとも2つの制御装置における何れかの制御装置は、通信インタフェースを利用することによって少なくとも2つのメモリ共有装置に接続され、何れかの制御装置に対応し、メモリ共有リソースプール内のメモリ共有装置を利用することによって、統一的なアドレッシングを受けたアドレス情報に従って、メモリ共有リソースプールにおける少なくとも1つのメモリ共有装置の何れかのメモリユニットのデータを取得する。

Description

本発明は、インターネット分野に関し、特にデータアクセスシステム、メモリ共有装置及びデータ読み取り方法に関する。
現在、インターネットの発展及び普及によって、分散システムがより広範に適用されている。分散ファイルシステム(Distributed file system、DFS)は、ネットワーク上に確立されたソフトウェアシステムを表す。分散ファイルシステムは、高い結合性及び透明性によって特徴付けされる。結合性は、システムにおける分散化された各データベースノードが高度な自律性を有することを意味し、透明性は、分散化された各データベースノードがユーザのアプリケーションに透過であることを意味する。しかしながら、分散システムの間の共有アクセスに対するレスポンスの速度は、分散システムの全体的な性能に影響を与える。
従来技術では、分散システムの間の情報共有の問題を解決するため、図1に示される交換ネットワークベースの情報共有方式が通常利用される。図1では、取得側として機能する制御システムAにおけるCPUは、提供側として機能する制御システムBにおけるメモリユニットのデータを取得することを所望し、処理は以下の通りである。(1)制御システムAにおけるCPUは、制御システムBにおけるCPUにリクエストメッセージを送信し、(2)制御システムBにおけるCPUは、リクエストメッセージに従って制御システムBにおけるメモリユニットからデータを読み出し、(3)制御システムBにおけるCPUは、制御システムAにおけるCPUに当該データを含む実行結果を返し、(4)制御システムAにおけるCOUは、実行結果からデータを抽出し、当該データを処理のため上位システムに転送する。上記の処理では、データの全ての送信が制御システムA及び制御システムBにおける中央処理ユニット(Central Processing Unit、CPU)の参加による処理を受ける必要がある。
一例として既存の交換ネットワークベースの情報共有方式を利用することによって、図2に示される処理では、制御システムAにおけるCPUは、制御システムBにおけるメモリユニットのデータを取得することを所望し、これは、制御システムAが取得側として機能し、制御システムBが提供側として機能することを意味する。具体的な処理は以下である。実線を利用することによって図2に示される手順では、プログラムを実行すると、制御システムAにおけるCPUは、制御システムBのメモリのデータを取得する必要があり、制御システムAにおけるCPUは、交換網を介し制御システムBにおけるCPUにリクエストメッセージを送信し、当該リクエストメッセージを解析した後、制御システムBにおけるCPUは、制御システムAにおけるCPUが制御システムBのメモリのデータを取得する必要があることを知り、このとき、制御システムBにおけるCPUは、リクエストメッセージに従って制御システムBのメモリのメモリユニットにアクセスし、当該メモリユニットからデータを取得し、メモリユニットからデータを取得した後、制御システムBにおけるCPUは、制御システムAにおけるCPUに取得したデータをフィードバックし、これは、破線を利用することによって図2に示される手順である。制御システムBにおけるCPUは、交換網を利用することによって、制御システムAにおけるCPUにデータを含む実行結果を返す。制御システムAにおけるCPUは、実行結果からデータを取得し、当該データを処理のため上位システムに送信する。従って、従来技術における交換ネットワークベース情報共有方式では、制御システムAが他の制御システムのデータを取得するとき、制御システムAと制御システムBにおけるCPUの双方が処理に参加する必要がある。特に、複数の制御システムが他の制御システムのデータを相互に取得するとき、複数の制御システムにおけるCPUの全てが処理に参加し、これにより、提供側として機能する制御システムにおけるCPUの性能は、情報共有処理全体において過剰に消費され、CPUの浪費を生じする。さらに、実行中のCPUが提供側として機能する何れかの制御システムにおいて故障すると、制御システムにより所持されるデータは他の制御システムによりアクセス不可となり、これにより、システム全体の信頼性を低下させる。
従って、従来技術は以下の欠点を有する。(1)制御システムAと制御システムBとにおけるCPUの双方が情報の共有制御に参加する必要があり、これにより、提供側として機能する制御システムにおけるCPUの性能が情報共有処理全体において過剰に消費され、CPUの浪費を招き、(2)実行中のCPUが提供側として機能する制御システムBにおいて故障すると、制御システムBにより所持されるデータが他の端末によりアクセス不可となり、これにより、システム全体の信頼性を低下させる。
本発明の課題は、提供側として機能する制御システムにおけるCPUの性能が過剰に消費されるため、CPUの浪費を生じさせ、システム全体の信頼性が低下する従来技術における問題点を解決するため、データアクセスシステムを提供することである。情報処理のための方法、装置及びシステムが提供される。
第1の態様によると、本発明の実施例は、データアクセスシステムであって、当該システムは、少なくとも2つのメモリ共有装置により構成されるメモリ共有リソースプールと、前記メモリ共有リソースプールにおける前記メモリ共有装置に対応する少なくとも2つの制御装置とを有し、
前記メモリ共有装置の何れかは、データを記憶するよう構成される統一的にアドレッシングされるメモリユニットを有し、前記メモリ共有装置における第1メモリ共有装置がアドレス情報を含み、前記第1メモリ共有装置に対応する第1制御装置により送信されたメモリアクセスリクエストを受信すると、
前記アドレス情報に対応するメモリユニットが前記第1メモリ共有装置におけるメモリユニットである場合、前記第1メモリ共有装置は、前記第1メモリ共有装置におけるメモリユニットからデータを読み取り、前記データを前記第1制御装置にフィードバックし、前記アドレス情報に対応するメモリユニットが前記メモリ共有リソースプールの第2メモリ共有装置におけるメモリユニットである場合、前記第1メモリ共有装置は、前記第2メモリ共有装置に前記メモリアクセスリクエストを転送し、前記第2メモリ共有装置におけるメモリユニット内にあって、前記第2メモリ共有装置によりフィードバックされたデータを受信し、
前記メモリ共有装置の何れかにおける前記第1メモリ共有装置が、アドレス情報を含み、前記第2メモリ共有装置により転送されたメモリアクセスリクエストを受信すると、前記第1メモリ共有装置は、データを読み取り、前記読み取られたデータを前記第2メモリ共有装置にフィードバックするデータアクセスシステムを提供する。
第1の態様に基づき、第1の可能な実現方式では、前記メモリ共有装置は、記憶モジュール、処理モジュール及び通信ユニットを有し、
前記記憶モジュールは、前記処理モジュールに接続され、前記記憶モジュールは、前記メモリ共有リソースプールにおける少なくとも1つの統一的にアドレッシングされるメモリユニットを有し、前記メモリユニットはデータを記憶するよう構成され、
前記処理モジュールは、通信インタフェースを利用することによって1つの制御装置に接続され、前記通信ユニットを介し前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置に接続され、前記通信インタフェースを介し前記処理モジュールに接続された前記制御装置により送信されたメモリアクセスリクエストを受信し、前記通信ユニットを利用することによって、前記1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信し、及び/又は前記制御装置により送信されたメモリアクセスリクエストを前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置に転送し、前記1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストは対応する制御装置から前記1以上の他のメモリ共有装置により受信され、前記メモリアクセスリクエストは前記メモリ共有リソースプールの複数のメモリ共有装置における統一的なアドレッシングを受けたメモリユニットのアドレス情報を有し、前記アドレス情報は、前記メモリ共有リソースプールの何れかのメモリ共有装置のメモリユニットにおけるデータを取得するのに利用される。
第1の態様の第1の可能な実現方式に基づき、第1の態様の第2の可能な実現方式では、前記メモリ共有装置は、前記メモリ共有リソースプールにおける統一的なアドレッシングを受けたメモリユニットのアドレッシングデータを取得するため、前記通信ユニットを利用することによって、前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置にクエリメッセージをブロードキャストし、前記取得したアドレッシングデータを前記処理モジュールに記憶する。
第1の態様に基づき、第1の態様の第3の可能な実現方式では、前記2つの制御装置における何れかの制御装置は、通信モジュールを有し、前記何れかの制御装置の通信モジュールは、プラグ着脱可能なメモリ共有モジュールを接続することによって当該データアクセスシステムにアクセスする。
第1の態様又は第1の態様の第1〜3の可能な実現方式に基づき、第1の態様の第4の可能な実現方式では、前記通信インタフェースは、高速システムバス、スイッチ又はイーサネットインタフェースである。
第2の態様によると、本発明の実施例は、記憶モジュール、処理モジュール及び通信ユニットを有するメモリ共有装置であって、
前記記憶モジュールは、前記処理モジュールに接続され、データを記憶するよう構成され、
前記処理モジュールは、通信インタフェースを利用することによって1つの制御装置に接続され、当該メモリ共有装置が配置されるメモリ共有リソースプールにおける1以上の他のメモリ共有装置に前記通信ユニットを介し接続され、前記通信インタフェースを介し前記処理モジュールに接続された前記制御装置により送信されたメモリアクセスリクエストを受信し、前記通信ユニットを利用することによって、前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信し、及び/又は前記制御装置により送信されたメモリアクセスリクエストを前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置に転送し、前記1以上の他のメモリ共有装置に転送されたメモリアクセスリクエストは、対応する制御装置から前記1以上の他のメモリ共有装置により受信され、前記メモリアクセスリクエストは、前記メモリ共有リソースプールの複数のメモリ共有装置における統一的なアドレッシングを受けたメモリユニットのアドレス情報を有し、前記アドレス情報は、前記メモリ共有リソースプールの何れかのメモリ共有装置のメモリユニットにおけるデータを取得するため利用されるメモリ共有装置を提供する。
第2の態様に基づき、第2の態様の第1の可能な実現方式では、前記通信ユニットを利用することによって前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信した後、前記処理モジュールは、前記メモリアクセスリクエストに含まれるアドレス情報に対応するメモリユニットからデータを取得し、前記通信ユニットを利用することによって前記1以上の他のメモリ共有装置に結果を返し、前記1以上の他のメモリ共有装置は、前記通信インタフェースを介し前記メモリアクセスリクエストを前記1以上の他のメモリ共有装置に送信した前記制御装置に前記結果を返す。
第2の態様に基づき、第2の態様の第2の可能な実現方式では、前記処理モジュールは更に判断ユニットを有する。前記アドレス情報に対応するメモリユニットにおけるメモリユニットの第1部分がローカルな当該メモリ共有装置にあり、第2部分が第2メモリ共有装置にあると前記判断ユニットが判断した場合、前記処理モジュールは、当該ローカルなメモリ共有装置における記憶モジュールから前記メモリユニットの第1部分におけるデータを読み取り、前記メモリアクセスリクエストのアドレス情報におけるメモリユニットの第1部分のアドレスを削除し、前記通信ユニットを利用することによって、前記メモリユニットの第2部分のアドレスのみを有するメモリアクセスリクエストを前記1以上の他のメモリ共有装置に転送する。
第2の態様又は第2の態様の第1若しくは第2の可能な実現方式に基づき、第2の態様の第3の可能な実現方式では、当該メモリ共有装置は更に、外部電源がないとき、ストレージ用の電気エネルギーを提供するよう構成される電源モジュールを有し、当該メモリ共有装置は、前記電源モジュールを利用することによってプラグ着脱可能な不揮発性ランダム・アクセス・メモリNVRAMを構成する。
第2の態様又は第2の態様の第1〜3の可能な実現方式に基づき、第2の態様の第4の可能な実現方式では、当該メモリ共有装置は更に、前記記憶モジュールにおけるアプリケーションプログラムをデバッグし、前記通信ユニットにおけるトラフィックを制御するよう構成される管理モジュールを有する。
第2の態様又は第2の態様の第1〜4の可能な実現方式に基づき、第2の態様の第5の可能な実現方式では、前記処理モジュールは、フィールド・プログラマブル・ゲート・アレイFPGAである。
第3の態様によると、本発明の実施例は、データ読み取り方法であって、
メモリ共有リソースプールにおける第1メモリ共有装置が、前記第1メモリ共有装置を制御する第1制御装置により送信されたメモリアクセスリクエストを受信するステップであって、前記メモリアクセスリクエストはアドレス情報を有し、前記アドレス情報はデータを記憶するよう構成され、前記メモリ共有リソースプールの少なくとも2つのメモリ共有装置において統一的なアドレッシングを受けた1以上のメモリユニットのアドレスであり、前記少なくとも2つのメモリ共有装置における何れかのメモリ共有装置は、少なくとも2つの制御装置における1つの制御装置の制御の下でデータを読み取り、前記第1メモリ共有装置は前記少なくとも2つのメモリ共有装置の1つである、受信するステップと、
前記第1メモリ共有装置が、前記アドレス情報に従って、前記アドレス情報に対応するメモリユニットが配置されるメモリ共有装置を決定するステップと、
前記アドレス情報に対応するメモリユニットが配置されるメモリ共有装置が前記第1メモリ共有装置である場合、前記第1メモリ共有装置が、前記第1メモリ共有装置自体におけるアドレス情報に対応するメモリユニットからデータを取得するか、又は、
前記アドレス情報に対応するメモリユニットが配置されるメモリ共有装置が第2メモリ共有装置である場合、前記第1メモリ共有装置が、前記メモリアクセスリクエストを前記第2メモリ共有装置に転送し、前記第2メモリ共有装置により返されたデータを受信するステップと、
前記第1メモリ共有装置が、前記データを読み取り、前記データを前記第1制御装置にフィードバックするステップと、
を有する方法を提供する。
第3の態様に基づき、第1の可能な実現方式では、前記メモリ共有リソースプールにおける第1メモリ共有装置が前記第1メモリ共有装置を制御する第1制御装置により送信されたメモリアクセスリクエストを受信する前、当該方法は更に、
前記メモリ共有リソースプールにおける第1メモリ共有装置が、前記メモリ共有リソースプールの全てのメモリ共有装置のメモリユニットのアドレッシングデータを取得するため、前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置にクエリメッセージをブロードキャストするステップを有する。
本発明の実施例において提供されるデータアクセスシステムは、少なくとも2つのメモリ共有装置により構成されるメモリ共有リソースプールと、メモリ共有リソースプールにおけるメモリ共有装置に対応する少なくとも2つの制御装置とを有し、何れかのメモリ共有装置は、データを記憶するよう構成される統一的にアドレッシングされるメモリユニットを有し、メモリ共有装置は、メモリ共有装置に対応する制御装置に従ってメモリユニットからデータを読み取る。データがメモリ共有リソースプールにおける1以上の他のメモリ装置から読み取られると、従来技術における提供側として機能する制御装置のワークロードが低減し、提供側として機能する制御装置の利用が増加し、一方、各制御システムにより必要とされるデータがメモリ共有リソースプールに記憶され、各制御システムは他の制御システムのデータを共有可能であり、これにより、分散システムにおける記憶されたデータの信頼性を向上させる。
本発明の実施例における技術的方策をより明確に説明するため、以下において、実施例又は従来技術を説明するのに必要な添付図面が簡単に紹介される。明らかに、以下の説明における添付図面は本発明の単なるいくつかの実施例を示し、当業者は、創作的な努力なく、これらの添付図面から他の図面を依然として導出してもよい。
図1は、従来技術による情報共有方式の構成図である。 図2は、従来技術による情報共有方式の概略的なフローチャートである。 図3は、本発明の実施例による情報データアクセスシステムの概略図である。 図4は、本発明の実施例によるデータアクセスシステムにおけるメモリ共有装置の概略図である。 図5Aは、本発明の実現方式におけるメモリ共有装置のワーキングプロセスの概略図である。 図5Bは、本発明の他の実現方式におけるメモリ共有装置のワーキングプロセスの概略図である。 図5Cは、本発明の他の実現方式におけるメモリ共有装置のワーキングプロセスの概略図である。 図6は、本発明の実施例によるデータアクセスシステムの他の実現方式の構成図である。 図7は、本発明の実施例によるデータアクセスシステムの他の実施例の構成図である。 図8は、本発明の実施例によるデータ読み取り方法のフローチャートである。 図9は、本発明の実施例によるデータ読み取り方法の他の実施例のフローチャートである。 図10は、本発明によるメモリ共有装置の実現方式の概略的な構成図である。 図11は、本発明によるメモリ共有装置の他の実現方式の概略的な構成図である。
以下は更に、添付した図面及び実施例を参照して本発明の技術的方策を詳細に説明する。
本発明の実施例は、少なくとも2つのメモリ共有装置と、通信インタフェースを利用することによってメモリ共有装置に接続される少なくとも2つの制御装置とを含むデータアクセスシステムを提供する。少なくとも2つのメモリ共有装置は、データアクセスシステムにおけるメモリ共有リソースプールを構成し、各制御装置は各メモリ共有装置に対応し、少なくとも2つの制御装置における1つの制御装置がメモリ共有リソースプールにおけるデータを読み取ることを所望するとき、制御装置は、制御装置に対応するメモリ共有装置を利用することによってメモリ共有リソースプールにおける必要とされるデータを読み取る。
図3に示されるように、本発明の本実施例はデータアクセスシステムを提供し、当該システムは、少なくとも2つのメモリ共有装置により構成されるメモリ共有リソースプールと、通信インタフェースを利用することによってメモリ共有装置に接続される複数の制御装置とを有する。通信インタフェースは、限定することなく、高速システムバス、スイッチ又はイーサネットインタフェースである。複数のメモリ共有装置はメモリ共有リソースプールを構成し、各メモリ共有装置は、複数の制御装置の1つに対応し、複数の制御装置の1つとの制御関係を確立する。各メモリ共有装置と複数の制御装置の1つとが、高速システムバスを利用することによって接続される場合、各メモリ共有装置に接続される制御装置はメモリ共有装置を制御し、制御装置がスイッチ又はイーサネットインタフェースを利用することによってネットワーク上でメモリ共有装置に接続される場合、1つの制御装置が1つのメモリ共有装置を制御するか、又は1つの制御装置がメモリ共有リソースプールにおける何れかのメモリ共有装置を制御するという課題を解決するため、ポートコンフィギュレーションやIP割当てなどの方式によりメモリ共有装置と制御装置との間の対応関係が確立できる。
メモリ共有リソースプールにおける何れかのメモリ共有装置は、データを記憶するよう構成される統一的にアドレッシングされるメモリユニットを有し、メモリ共有装置における第1メモリ共有装置が、アドレス情報を含み、第1メモリ共有装置に対応する第1制御装置により送信されたメモリアクセスリクエストを受信すると、
アドレス情報に対応するメモリユニットが第1メモリ共有装置におけるメモリユニットである場合、第1メモリ共有装置は、第1メモリ共有装置におけるメモリユニットからデータを読み取り、データを第1制御装置にフィードバックし、アドレス情報に対応するメモリユニットがメモリ共有リソースプールの第2メモリ共有装置におけるメモリユニットである場合、第1メモリ共有装置は、第2メモリ共有装置にメモリアクセスリクエストを転送し、第2メモリ共有装置におけるメモリユニット内にあって、第2メモリ共有装置によりフィードバックされたデータを受信し、
メモリ共有装置の何れかにおける第1メモリ共有装置が、アドレス情報を含み、第2メモリ共有装置により転送されたメモリアクセスリクエストを受信すると、第1メモリ共有装置は、第1メモリ共有装置からデータを読み取り、読み取られたデータを第2メモリ共有装置にフィードバックする。
図4に示されるように、各メモリ共有装置は、処理モジュール501、記憶モジュール502及び通信ユニット503を有する。通信ユニット503を利用することによって、メモリ共有装置は1以上の他のメモリ共有装置と通信可能であり、これらのメモリ共有装置は同じメモリ共有リソースプールに属し、記憶モジュール502は複数のメモリユニットを有し、メモリユニットはメモリ共有リソースプール全体における統一的なアドレッシングを受け、メモリユニットはデータを記憶するよう構成され、処理モジュール501は、制御装置から受信したメモリアクセスリクエストを処理し、記憶モジュール502からデータを読み取るよう構成される。各メモリ共有装置の処理モジュール501は1つのアドレステーブルを記憶してもよく、アドレステーブルはメモリ共有リソースプールにおける全てのメモリユニットのアドレスを記録する。
メモリ共有装置における処理モジュール501は、通信インタフェースを利用することによって1つの制御装置に接続され、通信インタフェースを介し処理モジュール501に接続された制御装置により送信されたメモリアクセスリクエストを受信し、通信ユニット503を介しメモリ共有リソースプールにおける1以上の他のメモリ共有装置に接続され、通信ユニット503を利用することによって、1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信する。さらに、処理モジュール501が処理モジュール501に接続された制御装置により送信されたメモリアクセスリクエストを受信した後、メモリアクセスリクエストによりアクセスされるメモリユニットが1以上の他のメモリ共有装置内にあるとき、処理モジュール501は、通信ユニット503を利用することによって、アクセス対象のメモリユニットが配置されるメモリ共有装置に当該リクエストを転送する。メモリアクセスリクエストはアドレス情報を有する。処理モジュール501は、制御装置がアクセスすることを所望するメモリユニットが配置されるメモリ共有装置を決定し、メモリ共有リソースプールにおける何れかのメモリ共有装置のデータを取得し、当該データは、メモリ共有装置の記憶モジュール502のメモリユニットに配置されている。
本発明の本実施例におけるバーチャルメモリ共有リソースプールは、以下の方式により実現可能である。メモリ共有装置は、通信ユニットを利用することによってデータ交換ドメインを構成し、データ交換ドメインに含まれるメモリユニットに対して統一的なアドレッシングを実行し、交換ドメインにおけるメモリ共有装置にアドレッシングを受けたアドレス情報を送信する。
図3に示されるように、取得側として機能する第1制御装置110が、メモリ共有リソースプールから必要とされるデータを取得する必要があるとき、第1制御装置110は、第1制御装置110に対応する第1メモリ共有装置210にメモリアクセスリクエストを送信し、メモリアクセスリクエストは、第1制御装置110が取得することを所望するデータのアドレス情報を含み、第1メモリ共有装置210は、処理モジュール501におけるアドレステーブル及びアドレス情報に従ってクエリを実行し、第1制御装置110により必要とされるデータの記憶位置を決定する。第1制御装置110により必要とされるデータが第1メモリ共有装置210の記憶モジュール502のメモリユニットにあるとき、記憶モジュール502のメモリユニットのデータは直接アクセスされ、第1制御装置110にフィードバックされ、第1制御装置110により必要とされるデータが第1メモリ共有装置210における記憶モジュール502内にないとき、アクセスリクエストが、第1メモリ共有装置210における通信ユニット503を利用することによって、メモリアクセスリクエストのアドレス情報に対応するメモリ共有装置(例えば、第2メモリ共有装置220)に送信され、これにより、第1制御装置により必要とされるデータが取得される。第1制御装置110により必要とされるデータが第1メモリ共有装置210内にないとき、データを取得する処理の全体は、第2制御装置120における処理モジュール501のリソースを消費することなく、第2制御装置120の参加を必要としない。本発明の本実施例では、メモリユニットにおけるデータにアクセス及び取得する具体的な処理はメモリ共有装置により完結され、これにより、従来技術において提供側として機能する制御装置におけるプロセッサのワークロードを低減し、提供側として機能する制御装置におけるプロセッサの利用を増加させ、一方、各制御装置により必要とされるデータはメモリ共有リソースプールに格納され、各制御装置は他の制御装置のデータを共有可能であり、これにより、分散システムにおける情報共有の問題を解決し、分散システムの間の情報共有のリアルタイムな実行を向上させる。
以下は更に、添付した図面を参照して上記のシステムの複数の具体的な実施例を詳細に説明する。
図5Aに示されるように、図5Aは、本発明の実施例によるメモリ共有装置のメモリユニットのアドレッシング情報の概略図である。図5Aでは、説明のための具体例として、4つのメモリ共有装置がメモリ共有リソースプールを構成することが利用され、実際の適用では、それは、メモリ共有リソースプールを構成するため4つのメモリ共有装置に限定されない。4つのメモリ共有装置は、高速システムバスを介し制御装置に別々に接続され、各メモリ共有装置における処理モジュール501は、各メモリ共有装置の記憶スペースを定義するため、各メモリ共有装置の記憶モジュール502におけるメモリユニットのアドレッシングを実現する。第1メモリ共有装置210、第2メモリ共有装置220、第3メモリ共有装置230及び第4メモリ共有装置240は、メモリ共有リソースプールを構成する。各メモリ共有装置210のアドレッシング情報は、図5Aに示され、第1メモリ共有装置210の第1アドレッシング情報は0〜99であり、第2メモリ共有装置220の第2アドレッシング情報は100〜199であり、第3メモリ共有装置230の第3アドレッシング情報は200〜299であり、第4メモリ共有装置240の第4アドレッシング情報は300〜399である。
メモリ共有リソースプールが構成された後、各メモリ共有装置における処理モジュールは、各メモリ共有装置の記憶モジュール502におけるメモリユニットのアドレッシング情報を定義し、通信ユニット503を利用することによって、メモリ共有リソースプールにおける他の3つのメモリ共有装置にクエリメッセージを送信し、他のメモリ共有装置における内部のメモリユニットのアドレッシング情報を取得する。
各メモリ共有装置における処理モジュール501は、各メモリ共有装置におけるメモリユニットのアドレッシング情報と他のメモリ共有装置における内部のメモリユニットのアドレッシング情報とに従ってアドレス情報テーブルを生成し、ここで、アドレス情報テーブルは、メモリ共有装置がメモリユニットの位置を迅速に検索するのに利用される。
第1の好適な実施例では、図5Bに示されるように、第1制御装置110は、オフセット58及び長さ10によるメモリユニットのデータにアクセスすることを所望する。第1制御装置110は、高速システムバスを介し第1メモリ共有装置210にメモリアクセスリクエストを送信し、メモリアクセスリクエストはメモリアドレス情報を含む。メモリアクセスリクエストを受信した後、第1メモリ共有装置210の処理モジュール502は、メモリアクセスリクエストを解析し、メモリアクセスリクエストのアドレス情報を抽出し、第1制御装置110はオフセット58及び長さ10によるメモリユニットのデータ、すなわち、アドレッシング情報が58〜67であるメモリユニットのデータにアクセスすることを所望していると判断する。処理モジュール501は、検索を実行し、アドレス情報テーブルに従ってメモリユニット58〜67の位置を決定する。処理モジュール501は、アドレス情報テーブルに従って、アドレッシング情報が58〜67であるメモリユニットがローカル記憶モジュール502に存在すると判断し、処理モジュール501は、アドレッシング情報が58〜67であるメモリユニットにアクセスする。当該アクセスを終了した後、処理モジュール501は結果メッセージを生成し、結果メッセージは、メモリユニット58〜67に記憶されているデータを含む。処理モジュール501は、取得したデータを高速システムバスを介し第1制御装置110に送信する。
第2の好適な実施例では、図5Cに示されるように、第2制御装置120は、オフセット58及び長さ10によるメモリユニットのデータにアクセスすることを所望する。第2制御装置120は、高速システムバスを介し第2メモリ共有装置220の処理モジュール501にメモリアクセスリクエストを送信し、メモリアクセスリクエストはメモリアドレス情報を含む。メモリアクセスリクエストを受信した後、第2メモリ共有装置220の処理モジュール501は、メモリアクセスリクエストを解析し、メモリアクセスリクエストの情報を抽出し、第2制御装置120がオフセット58及び長さ10によるメモリユニットのデータ、すなわち、アドレッシング情報が58〜67であるメモリユニットのデータにアクセスすることを所望していると判断する。第2メモリ共有装置220の処理モジュール501は、検索を実行し、アドレス情報テーブルに従ってメモリユニット58〜67の位置を決定する。第2メモリ共有装置220の処理モジュール501は、アドレス情報テーブルに従って、アドレッシング情報が58〜67であるメモリユニットがローカルな第2メモリ共有装置220の記憶モジュール502に存在せず、第1メモリ共有装置210の記憶モジュール502に存在すると判断し、第2メモリ共有装置220の処理モジュール501は、通信ユニットを利用することによって、第1メモリ共有装置210にメモリアクセスリクエストを転送する。メモリアクセスリクエストを受信した後、第1メモリ共有装置210は、当該メッセージを第1メモリ共有装置210の処理モジュール501に送信し、第1メモリ共有装置210の処理モジュール501は、対応する処理を実行する。検索を実行し、アドレス情報テーブルに従って、メモリアクセスリクエストに含まれるメモリアドレス情報がローカルな記憶モジュール502に存在すると判断した後、第1メモリ共有装置210の処理モジュール501は、アドレッシング情報が58〜67であるメモリユニットにアクセスする。当該アクセスを終了した後、第1メモリ共有装置210の処理モジュール501は結果メッセージを生成する。第1メモリ共有装置210の処理モジュール501は、通信ユニット503を利用することによって、第2メモリ共有装置の処理モジュール501に結果メッセージを送信し、それから、第2メモリ共有装置220の処理モジュール501は、高速システムバスを介し第2制御装置120に結果メッセージを送信し、結果メッセージはメモリユニット58〜67に記憶されているデータを含む。本発明の本実施例では、第2制御装置120がメモリ共有リソースプールからデータを取得する必要があるとき、第2制御装置120により必要とされるデータが第2制御装置120により制御される第2メモリ共有装置220内になかったとしても、第2メモリ共有装置220は第2メモリ共有装置220により受信されたメモリアクセスリクエストを転送し、他の制御装置の参加なく1以上の他のメモリ共有装置から第2制御装置120により必要とされるデータを取得しさえすればよく、これにより、他の制御装置の消費を節約する。
第3の好適な実施例では、図5Cに示されるように、第2制御装置120は、オフセット58及び長さ100によるメモリユニットのデータにアクセスすることを所望する。第2制御装置120は、高速システムバスを介し第2メモリ共有装置220にメモリアクセスリクエストを送信し、メモリアクセスリクエストはメモリアドレス情報を含む。第2メモリ共有装置220の処理モジュール501は、メモリアクセスリクエストを解析し、メモリアクセスリクエストの情報を抽出し、第2制御装置120がオフセット58及び長さ100によるメモリユニットのデータ、すなわち、アドレッシング情報が58〜157であるメモリユニットのデータにアクセスすることを所望していると判断する。第2メモリ共有装置220の処理モジュール501は、検索を実行し、アドレス情報テーブルに従ってメモリユニット58〜157の位置を決定する。第2メモリ共有装置220の処理モジュール501は、アドレス情報テーブルに従って、アドレッシング情報が58〜157であるメモリユニットの必ずしも全てがローカルな第2メモリ共有装置220の記憶モジュール502に存在せず、第1メモリ共有装置210の記憶モジュール501に部分的に存在し(58〜99)、第2メモリ共有装置220の記憶モジュール502に部分的に存在する(100〜157)と判断し、第2メモリ共有装置220の処理モジュール501は、メモリアクセスリクエストを第1メモリ共有装置に転送し、メモリアクセスリクエストはメモリアドレス情報を含む。第2メモリ共有装置220の処理モジュールは、アドレッシング情報が100〜157であるメモリユニットが第2メモリ共有装置220の記憶モジュール502に存在すると判断し、第2メモリ共有装置220の処理モジュール501は、アドレッシング情報が100〜157であるメモリユニットにアクセスする。当該アクセスを終了した後、第2メモリ共有装置220の処理モジュール501は第1結果メッセージを生成し、第1結果メッセージはメモリユニット100〜157に記憶されているデータを含む。
第1メモリ共有装置210が第2メモリ共有装置220により転送されたメモリアクセスリクエストを受信した後、第1メモリ共有装置210の処理モジュール501は対応する処理を実行する。検索を実行し、メモリアクセスリクエストに含まれるメモリアドレス情報がローカルな第1メモリ共有装置210の記憶モジュール502に存在すると判断した後、第1メモリ共有装置210の処理モジュール501は、アドレッシング情報が58〜99であるメモリユニットにアクセスする。当該アクセスを終了した後、第1メモリ共有装置210の処理モジュール501は第2結果メッセージを生成し、第2結果メッセージはメモリユニット58〜99に記憶されているデータを含む。第1メモリ共有装置210の処理モジュール501は、第2結果メッセージを第2メモリ共有装置220の処理モジュール501に送信する。
第2メモリ共有装置220の処理モジュール501は、高速システムバスを介し、第2制御装置220により必要されるデータを含み、第2メモリ共有装置220の処理モジュール501により生成された第1結果メッセージと、受信した第2結果メッセージとを第2制御装置120に送信する。第3実施例によると、第2制御装置120がメモリ共有リソースプールからデータを取得する必要があるとき、第2制御装置120により必要とされるデータが第2制御装置120により制御される第2メモリ共有装置220のみに記憶されておらず、分散して記憶されていたとしても、第2メモリ共有装置220は、第2メモリ共有装置220に記憶されているデータの一部をローカルに読み取り、さらに、第2メモリ共有装置220は、第2メモリ共有装置220により受信されたメモリアクセスリクエストを再処理した後、残りのデータの記憶アドレスのみを含むメモリアクセスリクエストを1以上の他のメモリ共有装置に転送し、他の制御装置の参加なく、1以上の他のメモリ共有装置から第2制御装置120により必要とされるデータを取得し、これにより、他の制御装置の消費を節約する。
上記の複数の実施例は、制御装置とメモリ共有装置との間の通信と、メモリ共有装置の間の通信とを詳細に説明している。実際の適用では、それは上記の実施例において説明された2つのメモリ共有装置の間の通信に限定されるものでない。上記の複数の実施例によると、取得側として機能する制御装置がメモリ共有装置においてデータを共有することは、簡単且つ便利に実現可能である。
上記の実施例の適用方式では、図6に示されるように、CPUサブシステムと代替的に呼ばれる各制御装置と、制御装置に対応するメモリ共有装置とが分散化されたノードを構成する。ハードウェアに対応して、分散化された各ノードは1つのラックであってもよく、各ラックサーバは1つの制御装置である。1つのメモリ共有装置がプラグインされた後、複数のラックにおいてスイッチを介し相互接続されるメモリ共有装置は、1つのメモリ共有リソースプールを構成する。各ラックサーバは、メモリ共有リソースプールの何れかのメモリ共有装置のデータにアクセス可能である。
他の可能な実現方式では、図7に示されるように、各制御装置は、通信インタフェースを利用することによってメモリ共有リソースプールのメモリ共有装置に接続され、通信インタフェースは、例えば、スイッチ又はイーサネットインタフェースである。データアクセスシステムに接続されていない制御装置がデータアクセスシステムにアクセスする必要がある場合、制御装置は、スロット及びフラットケーブルを利用することによって、一致したスロット及びフラットケーブルインタフェースを含むメモリ共有装置に単に接続されればよく、このとき、メモリ共有装置は、メモリ共有リソースプールのメモリ共有装置の全てにおけるメモリユニットのアドレッシングを取得するため、クエリメッセージを再ブロードキャストし、これにより、制御装置はデータアクセスシステム全体にアクセス可能であり、ここでは更には説明されない。拡張可能なメモリ共有リソースプールを利用することによって、メモリスペースはPBレベルより大きく到達できる。
本発明の実施例では、制御装置がメモリ共有リソースプールのメモリ共有装置のメモリユニットのデータを取得する処理がメモリ共有装置によって完結され、これにより、従来技術における提供側として機能する制御装置のCPUを置換し、従来技術における提供側として機能する制御装置のCPUのワークロードを低減し、提供側として機能する制御装置におけるCPUの利用を増加させ、一方、各制御装置により必要とされるデータはメモリ共有リソースプールに記憶され、各制御装置は他の制御装置のデータを共有可能であり、これにより、分散システムにおける情報共有の問題を解決し、分散システムの間の情報共有のリアルタイムな実行を向上させる。
対応して、本発明の実施例では、データ読み取り方法を提供し、データ読み取り方法は、上記の実施例におけるメモリ共有装置により実行される。図8に示されるように、当該方法は以下を含む。
801.メモリ共有リソースプールにおける第1メモリ共有装置が、第1メモリ共有装置を制御する第1制御装置により送信されたメモリアクセスリクエストを受信し、メモリアクセスリクエストは統一的なアドレッシングを受けたアドレス情報を有する。
アドレス情報は、統一的なアドレッシングを受けた複数のメモリユニットのアドレス情報であり、複数のメモリユニットは、データを記憶するよう構成され、メモリ共有リソースプールの少なくとも2つのメモリ共有装置に配置される。少なくとも2つのメモリ共有装置における何れかのメモリ共有装置は、少なくとも2つの制御装置における1つの制御装置の制御の下でデータを読み取り、第1メモリ共有装置は少なくとも2つのメモリ共有装置の1つである。
メモリ共有リソースプールにおける第1メモリ共有装置が第1制御装置により送信されたメモリアクセスリクエストを受信する前、当該方法は更に以下を含む。
第1メモリ共有装置が、メモリ共有リソースプールの全てのメモリ共有装置のメモリユニットのアドレッシングデータを取得するため、メモリ共有リソースプールにおける1以上の他のメモリ共有装置にクエリメッセージをブロードキャストし、それから、第1メモリ共有装置は、アドレス情報テーブルの形式によりアドレッシングデータを記憶してもよく、これは、第1メモリ共有装置がアドレス情報に対応するメモリユニットを検索するのに便利である。
802.第1メモリ共有装置が、アドレス情報に従って、メモリ共有リソースプールにおいてアドレス情報に対応するメモリスペースが配置されるメモリ共有装置を決定する。
具体的には、第1メモリ共有装置は、アドレス情報に従って、アドレス情報に対応するメモリスペースが配置される具体的な位置を、第1メモリ共有装置の処理モジュールにおけるアドレス情報テーブルにおいて検索方式により決定できる。
アドレス情報に対応するメモリユニットが配置されるメモリ共有装置が第1メモリ共有装置である場合、第1メモリ共有装置は、第1メモリ共有装置におけるメモリユニットからデータを読み取る。
アドレス情報に対応するメモリユニットが配置されるメモリ共有装置が、例えば、第2メモリ共有装置など、メモリ共有リソースプールにおける他のメモリ共有装置である場合、第1メモリ共有装置は、メモリアクセスリクエストを第2メモリ共有装置に転送し、それから、第2メモリ共有装置がメモリアクセスリクエストのアドレス情報に従って第2メモリ共有装置のメモリユニットからデータを読み取った後、第1メモリ共有装置にフィードバックされたデータ読み取り結果を待機することができる。
第1メモリ共有装置が、アドレス情報に従って、アドレス情報に対応するメモリユニットが配置されるメモリ共有装置を決定した後、アドレス情報に対応するメモリユニットにおけるメモリユニットの第1部分が第1メモリ共有装置内にあって、第2部分が第2メモリ共有装置内にある場合、第1メモリ共有装置は、第1メモリ共有装置におけるメモリユニットからのメモリユニットの第1部分のデータを読み取り、
第1メモリ共有装置は、メモリアクセスリクエストのアドレス情報のメモリユニットの第1部分のアドレスを消去し、メモリユニットの第2部分のアドレスのみを含むメモリアクセスリクエストを第2メモリ共有装置に転送し、
それから、第1メモリ共有装置は、第2メモリ共有装置により返されたデータ読み取り結果を受信する。
803.第1メモリ共有装置は、データ読み取り結果を第1制御装置にフィードバックする。
具体的には、第1メモリ共有装置は、第1メモリ共有装置自体のメモリユニットから第1制御装置により必要とされるデータを読み取るか、又は第1メモリ共有装置により必要とされ、メモリ共有リソースプールにおける第2メモリ共有装置にフィードバックされたデータを受信するか、又はローカルに読み取られたデータと第2メモリ共有装置から読み取られたデータとをデータ読み取り結果として通信インタフェースを介し第1制御装置に送信する。
上記の方法によると、データアクセスシステムにおける特定の制御装置がメモリ共有リソースプールからデータを読み取る必要があるとき、必要とされたデータが制御装置により制御されるメモリ共有装置内になかったとしても、他の制御装置が参加する必要がなく、これにより、データアクセスシステムにおける制御装置のCPUの消費を減少させる。
対応して、制御装置の観点から、データ読み取り処理が図9に示され、当該方法は以下を含む。
901.第1制御装置は、メモリアクセスリクエストをメモリ共有リソースプールにおける第1メモリ共有装置に送信し、メモリアクセスリクエストは、制御装置がアクセスする必要があるメモリユニットのアドレス情報を含む。
具体的には、アドレス情報は、メモリ共有リソースプール全体の全てのメモリ共有装置における統一的なアドレッシングを受けたメモリユニットのアドレス情報であり、メモリ共有リソースプールにおける何れかのメモリ共有装置が、少なくとも2つの制御装置における1つの制御装置の制御の下でデータを読み取り、第1メモリ共有装置は少なくとも2つのメモリ共有装置の1つである。
902.第1制御装置は、第1メモリ共有装置によりフィードバックされたデータ読み取り結果を受信する。
具体的には、アドレス情報に対応するメモリスペースが配置されるメモリ共有装置が第1メモリ共有装置である場合、第1メモリ共有装置によりフィードバックされるデータ読み取り結果は、第1メモリ共有装置が第1メモリ共有装置におけるメモリユニットからデータを読み取った後、第1メモリ共有装置により生成される。
アドレス情報に対応するメモリユニットが配置されるメモリ共有装置が第2メモリ共有装置である場合、第1メモリ共有装置によりフィードバックされたデータ読み取り結果は、第2メモリ共有装置によって送信され、第1メモリ共有装置により受信されたデータ読み取り結果である。
アドレス情報に対応するメモリユニットにおけるメモリユニットの第1部分が第1メモリ共有装置内にあって、第2部分が第2メモリ共有装置内にある場合、
第1メモリ共有装置によりフィードバックされるデータ読み取り結果は、第1メモリ共有装置におけるメモリユニットの第1部分におけるデータと、第2メモリ共有装置におけるメモリユニットの第2部分におけるデータとである。
上記の実施例において提供されるデータ読み取り方法によると、メモリ共有リソースプールの何れかのメモリ共有装置におけるデータは、他の制御装置のCPUの参加なく、1つの制御装置を利用することによって読み取り可能である。
対応して、本発明の実施例はメモリ共有装置を提供する。図10に示されるように、メモリ共有装置は、記憶モジュール1101、処理モジュール1102及び通信ユニット1103を有する。
記憶モジュール1101は、処理モジュール1102に接続され、データを記憶するよう構成される。
処理モジュール1102は、通信インタフェースを利用することによって1つの制御装置に接続され、当該メモリ共有装置が配置されるメモリ共有リソースプールにおける1以上の他のメモリ共有装置に通信ユニット1103を介し接続され、通信インタフェースを介し処理モジュール1102に接続された制御装置により送信されたメモリアクセスリクエストを受信し、通信ユニット1103を利用することによって、メモリ共有リソースプールにおける1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信し、及び/又は制御装置により送信されたメモリアクセスリクエストをメモリ共有リソースプールにおける1以上の他のメモリ共有装置に転送し、1以上の他のメモリ共有装置に転送されたメモリアクセスリクエストは、対応する制御装置から1以上の他のメモリ共有装置により受信され、メモリアクセスリクエストは、メモリ共有リソースプールの複数のメモリ共有装置における統一的なアドレッシングを受けたメモリユニットのアドレス情報を有し、アドレス情報は、メモリ共有リソースプールの何れかのメモリ共有装置のメモリユニットにおけるデータを取得するため利用される。
より詳細には、処理モジュール1102に接続される記憶モジュール1101は、データを記憶するよう構成される複数のメモリユニットを有し、メモリユニットは、メモリ共有リソースプールの複数のメモリ共有装置において統一的なアドレッシングを受ける。
好ましくは、処理モジュール1102は、フィールド・プログラマブル・ゲート・アレイ(Field−Programmable Gate Array、FPGA)又は中央処理ユニットチップにより実現されてもよい。
具体的には、例えば、処理モジュール1102は更にクエリユニットを有してもよく、クエリユニットは、通信ユニット1103を利用することによってメモリ共有リソースプールにおけるメモリ共有装置の全てにクエリメッセージをブロードキャストし、メモリ共有リソースプールにおける全てのメモリ共有装置のメモリユニットのアドレッシング情報を取得し、アドレッシング情報をアドレス情報テーブルの形式により記憶する。
処理モジュール1102は、通信インタフェース(例えば、高速システムバス、イーサネットインタフェース又はスイッチ)からメモリアクセスリクエストを受信し、メモリアクセスリクエストのアドレス情報と処理モジュール1102に記憶されるアドレス情報テーブルとに従って、アドレス情報に対応するメモリスペースが配置されるメモリ共有装置を決定する。
アドレス情報に対応するメモリスペースが配置されるメモリ共有装置がローカルなメモリ共有装置である場合、処理モジュール1102は、記憶モジュール1101にあって、アドレス情報に対応するメモリユニットからデータを読み取る。
アドレス情報に対応するメモリスペースが配置されるメモリ共有装置が、通信ユニット1103に接続される1以上の他のメモリ共有装置である場合、処理モジュール1102は、通信ユニットを利用することによって、メモリアクセスリクエストを1以上の他のメモリ共有装置に転送する。
アドレス情報に対応するメモリユニットにおけるメモリユニットの第1部分がローカルなメモリ共有装置内にあって、メモリユニットの第2部分が1以上の他のメモリ共有装置内にある場合、処理モジュール1102は、ローカルなメモリ共有装置における記憶モジュール1101からメモリユニットの第1部分のデータを読み取り、メモリアクセスリクエストのアドレス情報におけるメモリユニットの第1部分のアドレスを消去し、通信ユニット1103を利用することによって、メモリユニットの第2部分のアドレスのみを含むメモリアクセスリクエストを第2メモリ共有装置に転送する。
メモリ共有装置と1以上の他のメモリ共有装置とはまず、バーチャルメモリ共有リソースプールを構成し、バーチャルメモリ共有リソースプールを構成する処理は、具体的には、各メモリ共有装置における処理モジュール1102が、各メモリ共有装置の記憶モジュール1101のメモリユニットのアドレッシングを実行し、各メモリ共有装置の記憶スペースを定義し、同じ通信インタフェースを利用することによって、複数のメモリ共有装置を一緒に接続し、これにより、複数のメモリ共有装置は同じ交換ドメインに属し、交換ドメインにおいて複数のメモリ共有装置の記憶モジュール1101のメモリユニットに対して統一的なアドレッシングパーティションを実行し、各メモリ共有装置の処理モジュール1102にパーティションアドレッシング情報を通知し、バーチャルメモリ共有リソースプールを構成するというものである。
メモリ共有装置における処理モジュール1102は、記憶モジュール1101のメモリユニットにデータを書き込み、これにより、制御システムにより必要とされるデータがメモリユニットに記憶される。制御装置がデータを書き込む処理において、制御装置は、メモリ共有装置の処理モジュール1102にデータの記憶位置を通知し、これにより、メモリ共有装置の処理モジュール1102は、メモリ共有装置のメモリユニットのアドレッシングパーティションに従ってコンテンツユニットにデータを正しく書き込む。
取得側として機能する第1制御装置がメモリ共有リソースプールからデータを取得する必要があるというメモリアクセスリクエストをメモリ共有装置が受信するとき、メモリアクセスリクエストは、第1制御装置が取得することを所望するデータのアドレス情報を含む。処理モジュール1102は、アドレス情報に従って、メモリ共有リソースプールにおけるアドレス情報に対応するメモリユニットが配置されるメモリ共有装置を決定する。
処理モジュール1102は、判断ユニットを利用することによって、アドレス情報に従って、処理モジュール1102のアドレス情報テーブルにおいて検索方式により、アドレス情報に対応するメモリユニットが配置される具体的な位置を決定する。
具体的には、アドレス情報に対応するメモリユニットが配置されるメモリ共有装置がローカルなメモリ共有装置である場合、メモリ共有装置の処理モジュール1102は、記憶モジュール1101のメモリユニットからデータを読み取る。
アドレス情報に対応するメモリスペースが配置されるメモリ共有装置が、例えば、第2メモリ共有装置などのメモリ共有リソースプールにおける他のメモリ共有装置である場合、メモリ共有装置は、処理モジュール1102及び通信ユニット1103を利用することによって、メモリアクセスリクエストを第2メモリ共有装置に転送し、それから、第2メモリ共有装置がメモリアクセスリクエストのアドレス情報に従って第2メモリ共有装置のメモリユニットからデータを読み取った後、第1メモリ共有装置にフィードバックされるデータ読み取り結果を待機することができる。
メモリ共有装置は、メモリ共有装置の記憶モジュールから第1制御装置により必要とされるデータを読み取るか、又は、制御装置により必要とされ、メモリ共有リソースプールの第2メモリ共有装置によりフィードバックされたデータを受信した後、通信インタフェースを介し制御装置にデータ読み取り結果を送信する。
図11に示されるように、好適な実現方式では、メモリ共有装置は更に、外部電源が故障したとき、メモリ共有装置に電力を提供するよう構成される電源モジュール1105を有する。メモリ共有装置は、電源モジュール1105を利用することによって、不揮発性ランダム・アクセス・メモリ(Non−Volatile Random Access Memory,NVRAM)を構成可能である。電源モジュール1105は、スーパーキャパシタ又はバッテリ・バックアップ・ユニットBBU(Battery Backup Unit,BBU)であってもよい。
好適な実現方式では、メモリ共有装置は更に、アプリケーションプログラムを記憶するよう構成されるフラッシュメモリモジュール1104を有してもよく、アプリケーションプログラムは、処理モジュールにより実行される命令を含む。
好適な実現方式では、メモリ共有装置は更に、記憶モジュール1101におけるアプリケーションプログラムをデバッグし、通信ユニット1103におけるトラフィックを制御するよう構成される管理モジュール1106を更に有してもよく、管理モジュール1106はCPU IPカーネルにより実現されてもよい。
本発明の本実施例において提供されるメモリ共有装置は、検索を実行し、受信したメモリアクセスリクエストに従って対応するメモリユニットの位置を決定し、対応するメモリユニットがローカルな記憶モジュール内にあるとき、メモリ共有装置は、当該メモリユニットに直接アクセスし、メモリユニットからデータを取得し、取得したデータを含む結果メッセージを制御装置にフィードバックする。本発明の本実施例では、メモリユニットのデータにアクセス及び取得する具体的な処理は第1メモリ共有装置により完結され、これにより、従来技術において提供側として機能する制御装置のCPUを置換し、従来技術において提供側として機能する制御装置のCPUのワークロードを低減し、提供側として機能する制御装置のCPUの利用を増加させる。
当業者は更に、本明細書において開示された実施例において説明される具体例に関して、ユニット及びアルゴリズムのステップが電子ハードウェア、コンピュータソフトウェア又はこれらの組み合わせにより実現されてもよいことを認識してもよい。ハードウェアとソフトウェアとの間の互換性を明確に説明するため、上記は機能に従って各具体例の構成及びステップを全体的に説明した。当該機能がハードウェア又はソフトウェアにより実行されるかは、技術的方策の特定の適用及び設計制約条件に依存する。当業者は、異なる方法を利用して、各特定の適用のために説明された機能を実現してもよいが、当該実現は本発明の範囲を超えるとみなされるべきでない。
本明細書に開示された実施例に関連して、方法又はアルゴリズムのステップは、ハードウェア、プロセッサにより実行されるソフトウェアモジュール又はこれらの組み合わせにより実現されてもよい。ソフトウェアモジュールは、ランダム・アクセス・メモリ(RAM)、メモリ、読み出し専用メモリ(ROM)、電気的にプログラム可能なROM、電気的に消去可能なプログラム可能なROM、レジスタ、ハードディスク、着脱可能なディスク、CD−ROM又は当該技術において周知な他の何れかの形態による記憶媒体において構成されてもよい。
上記の特定の実施例は、本発明の課題、技術的方策及び効果を詳細に明らかにしている。上記の説明は本発明の単なる特定の実施例であり、本発明の保護範囲を限定することを意図するものでないことが理解されるべきである。本発明の精神及び原理から逸脱することなくなされた何れの修正、等価な置換又は改良は、本発明の保護範囲に属する。
従来技術では、分散システムの間の情報共有の問題を解決するため、図1に示される交換ネットワークベースの情報共有方式が通常利用される。図1では、取得側として機能する制御システムAにおけるCPUは、提供側として機能する制御システムBにおけるメモリユニットのデータを取得することを所望し、処理は以下の通りである。(1)制御システムAにおけるCPUは、制御システムBにおけるCPUにリクエストメッセージを送信し、(2)制御システムBにおけるCPUは、リクエストメッセージに従って制御システムBにおけるメモリユニットからデータを読み出し、(3)制御システムBにおけるCPUは、制御システムAにおけるCPUに当該データを含む実行結果を返し、(4)制御システムAにおけるCUは、実行結果からデータを抽出し、当該データを処理のため上位システムに転送する。上記の処理では、データの全ての送信が制御システムA及び制御システムBにおける中央処理ユニット(Central Processing Unit、CPU)の参加による処理を受ける必要がある。

Claims (14)

  1. データアクセスシステムであって、当該システムは、少なくとも2つのメモリ共有装置により構成されるメモリ共有リソースプールと、前記メモリ共有リソースプールにおける前記メモリ共有装置に対応する少なくとも2つの制御装置とを有し、
    前記メモリ共有装置の何れかは、データを記憶するよう構成される統一的にアドレッシングされるメモリユニットを有し、前記メモリ共有装置における第1メモリ共有装置がアドレス情報を含み、前記第1メモリ共有装置に対応する第1制御装置により送信されたメモリアクセスリクエストを受信すると、
    前記アドレス情報に対応するメモリユニットが前記第1メモリ共有装置におけるメモリユニットである場合、前記第1メモリ共有装置は、前記第1メモリ共有装置におけるメモリユニットからデータを読み取り、前記データを前記第1制御装置にフィードバックし、前記アドレス情報に対応するメモリユニットが前記メモリ共有リソースプールの第2メモリ共有装置におけるメモリユニットである場合、前記第1メモリ共有装置は、前記第2メモリ共有装置に前記メモリアクセスリクエストを転送し、前記第2メモリ共有装置におけるメモリユニット内にあって、前記第2メモリ共有装置によりフィードバックされたデータを受信し、
    前記メモリ共有装置の何れかにおける前記第1メモリ共有装置が、アドレス情報を含み、前記第2メモリ共有装置により転送されたメモリアクセスリクエストを受信すると、前記第1メモリ共有装置は、データを読み取り、前記読み取られたデータを前記第2メモリ共有装置にフィードバックするデータアクセスシステム。
  2. 前記メモリ共有装置は、記憶モジュール、処理モジュール及び通信ユニットを有し、
    前記記憶モジュールは、前記処理モジュールに接続され、前記記憶モジュールは、前記メモリ共有リソースプールにおける少なくとも1つの統一的にアドレッシングされるメモリユニットを有し、前記メモリユニットはデータを記憶するよう構成され、
    前記処理モジュールは、通信インタフェースを利用することによって1つの制御装置に接続され、前記通信ユニットを介し前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置に接続され、前記通信インタフェースを介し前記処理モジュールに接続された前記制御装置により送信されたメモリアクセスリクエストを受信し、前記通信ユニットを利用することによって、前記1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信し、及び/又は前記制御装置により送信されたメモリアクセスリクエストを前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置に転送し、前記1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストは対応する制御装置から前記1以上の他のメモリ共有装置により受信され、前記メモリアクセスリクエストは前記メモリ共有リソースプールの複数のメモリ共有装置における統一的なアドレッシングを受けたメモリユニットのアドレス情報を有し、前記アドレス情報は、前記メモリ共有リソースプールの何れかのメモリ共有装置のメモリユニットにおけるデータを取得するのに利用される、請求項1記載のデータアクセスシステム。
  3. 前記メモリ共有装置は、前記メモリ共有リソースプールにおける統一的なアドレッシングを受けたメモリユニットのアドレッシングデータを取得するため、前記通信ユニットを利用することによって、前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置にクエリメッセージをブロードキャストし、前記取得したアドレッシングデータを前記処理モジュールに記憶する、請求項2記載のデータアクセスシステム。
  4. 前記2つの制御装置における何れかの制御装置は、通信モジュールを有し、前記何れかの制御装置の通信モジュールは、プラグ着脱可能なメモリ共有モジュールを接続することによって当該データアクセスシステムにアクセスする、請求項1記載のデータアクセスシステム。
  5. 前記通信インタフェースは、高速システムバス、スイッチ又はイーサネットインタフェースである、請求項1乃至5何れか一項記載のデータアクセスシステム。
  6. 記憶モジュール、処理モジュール及び通信ユニットを有するメモリ共有装置であって、
    前記記憶モジュールは、前記処理モジュールに接続され、データを記憶するよう構成され、
    前記処理モジュールは、通信インタフェースを利用することによって1つの制御装置に接続され、当該メモリ共有装置が配置されるメモリ共有リソースプールにおける1以上の他のメモリ共有装置に前記通信ユニットを介し接続され、前記通信インタフェースを介し前記処理モジュールに接続された前記制御装置により送信されたメモリアクセスリクエストを受信し、前記通信ユニットを利用することによって、前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信し、及び/又は前記制御装置により送信されたメモリアクセスリクエストを前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置に転送し、前記1以上の他のメモリ共有装置に転送されたメモリアクセスリクエストは、対応する制御装置から前記1以上の他のメモリ共有装置により受信され、前記メモリアクセスリクエストは、前記メモリ共有リソースプールの複数のメモリ共有装置における統一的なアドレッシングを受けたメモリユニットのアドレス情報を有し、前記アドレス情報は、前記メモリ共有リソースプールの何れかのメモリ共有装置のメモリユニットにおけるデータを取得するため利用されるメモリ共有装置。
  7. 前記通信ユニットを利用することによって前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置により転送されたメモリアクセスリクエストを受信した後、前記処理モジュールは、前記メモリアクセスリクエストに含まれるアドレス情報に対応するメモリユニットからデータを取得し、前記通信ユニットを利用することによって前記1以上の他のメモリ共有装置に結果を返し、前記1以上の他のメモリ共有装置は、前記通信インタフェースを介し前記メモリアクセスリクエストを前記1以上の他のメモリ共有装置に送信した前記制御装置に前記結果を返す、請求項6記載のメモリ共有装置。
  8. 前記処理モジュールは更に判断ユニットを有し、前記アドレス情報に対応するメモリユニットにおけるメモリユニットの第1部分がローカルな当該メモリ共有装置にあり、第2部分が第2メモリ共有装置にあると前記判断ユニットが判断した場合、前記処理モジュールは、当該ローカルなメモリ共有装置における記憶モジュールから前記メモリユニットの第1部分におけるデータを読み取り、前記メモリアクセスリクエストのアドレス情報におけるメモリユニットの第1部分のアドレスを削除し、前記通信ユニットを利用することによって、前記メモリユニットの第2部分のアドレスのみを有するメモリアクセスリクエストを前記1以上の他のメモリ共有装置に転送する、請求項6記載のメモリ共有装置。
  9. 前記処理モジュールは更に、前記通信ユニットを利用することによって前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置にクエリメッセージをブロードキャストし、前記メモリ共有リソースプールにおける統一的なアドレッシングを受けたメモリユニットのアドレッシングデータを取得し、前記取得したアドレッシングデータを前記処理モジュールに記憶するよう構成されるクエリユニットを有する、請求項6乃至8何れか一項記載のメモリ共有装置。
  10. 当該メモリ共有装置は更に、外部電源がないとき、ストレージ用の電気エネルギーを提供するよう構成される電源モジュールを有し、当該メモリ共有装置は、前記電源モジュールを利用することによってプラグ着脱可能な不揮発性ランダム・アクセス・メモリNVRAMを構成する、請求項6乃至9何れか一項記載のメモリ共有装置。
  11. 前記記憶モジュールにおけるアプリケーションプログラムをデバッグし、前記通信ユニットにおけるトラフィックを制御するよう構成される管理モジュールを更に有する、請求項6乃至10何れか一項記載のメモリ共有装置。
  12. 前記処理モジュールは、フィールド・プログラマブル・ゲート・アレイFPGAである、請求項6乃至11何れか一項記載のメモリ共有装置。
  13. データ読み取り方法であって、
    メモリ共有リソースプールにおける第1メモリ共有装置が、前記第1メモリ共有装置を制御する第1制御装置により送信されたメモリアクセスリクエストを受信するステップであって、前記メモリアクセスリクエストは統一的なアドレッシングを受けたアドレス情報を有し、前記アドレス情報はデータを記憶するよう構成され、前記メモリ共有リソースプールの少なくとも2つのメモリ共有装置において統一的なアドレッシングを受けた1以上のメモリユニットのアドレス情報であり、前記少なくとも2つのメモリ共有装置における何れかのメモリ共有装置は、少なくとも2つの制御装置における1つの制御装置の制御の下でデータを読み取り、前記第1メモリ共有装置は前記少なくとも2つのメモリ共有装置の1つである、受信するステップと、
    前記第1メモリ共有装置が、前記アドレス情報に従って、前記アドレス情報に対応するメモリユニットが配置されるメモリ共有装置を決定するステップと、
    前記アドレス情報に対応するメモリユニットが配置されるメモリ共有装置が前記第1メモリ共有装置である場合、前記第1メモリ共有装置が、前記第1メモリ共有装置自体におけるアドレス情報に対応するメモリユニットからデータを取得するか、又は、
    前記アドレス情報に対応するメモリユニットが配置されるメモリ共有装置が第2メモリ共有装置である場合、前記第1メモリ共有装置が、前記メモリアクセスリクエストを前記第2メモリ共有装置に転送し、前記第2メモリ共有装置により返されたデータを受信するステップと、
    前記第1メモリ共有装置が、前記データを読み取り、前記データを前記第1制御装置にフィードバックするステップと、
    を有する方法。
  14. 前記メモリ共有リソースプールにおける第1メモリ共有装置が前記第1メモリ共有装置を制御する第1制御装置により送信されたメモリアクセスリクエストを受信する前、当該方法は更に、
    前記メモリ共有リソースプールにおける第1メモリ共有装置が、前記メモリ共有リソースプールの全てのメモリ共有装置のメモリユニットのアドレッシングデータを取得するため、前記メモリ共有リソースプールにおける1以上の他のメモリ共有装置にクエリメッセージをブロードキャストするステップを有する、請求項13記載の方法。
JP2015556369A 2013-02-06 2013-07-23 データアクセスシステム、メモリ共有装置及びデータ読み取り方法 Active JP6373876B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310046412.4A CN103152394B (zh) 2013-02-06 2013-02-06 数据存取系统、内存共享设备及数据读取方法
CN201310046412.4 2013-02-06
PCT/CN2013/079841 WO2014121588A1 (zh) 2013-02-06 2013-07-23 数据存取系统、内存共享设备及数据读取方法

Publications (2)

Publication Number Publication Date
JP2016513316A true JP2016513316A (ja) 2016-05-12
JP6373876B2 JP6373876B2 (ja) 2018-08-15

Family

ID=48550253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015556369A Active JP6373876B2 (ja) 2013-02-06 2013-07-23 データアクセスシステム、メモリ共有装置及びデータ読み取り方法

Country Status (5)

Country Link
US (1) US9594682B2 (ja)
EP (1) EP2940966B1 (ja)
JP (1) JP6373876B2 (ja)
CN (1) CN103152394B (ja)
WO (1) WO2014121588A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103152394B (zh) 2013-02-06 2016-09-28 华为技术有限公司 数据存取系统、内存共享设备及数据读取方法
CN103984601A (zh) * 2014-05-12 2014-08-13 浪潮电子信息产业股份有限公司 基于共享资源池的计算机系统
CN107643991B (zh) * 2017-09-22 2023-09-19 北京算能科技有限公司 数据处理芯片和系统、数据存储转发处理方法
CN111049566B (zh) * 2019-11-20 2022-03-08 中国航空工业集团公司西安航空计算技术研究所 信息传递方法和机载lrm模块
CN112860506B (zh) * 2019-11-28 2024-05-17 阿里巴巴集团控股有限公司 监控数据的处理方法、装置、系统和存储介质
WO2022188887A1 (zh) * 2021-03-12 2022-09-15 华为技术有限公司 实现内存共享控制的方法、设备、计算机设备和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02244253A (ja) * 1989-03-17 1990-09-28 Hitachi Ltd 分散共有メモリを持つマルチプロセッサシステム
JPH05290000A (ja) * 1992-04-13 1993-11-05 Mitsubishi Electric Corp 並列計算機及びデータ交換制御装置
WO2011161787A1 (ja) * 2010-06-23 2011-12-29 富士通株式会社 通信装置、通信方法、および通信プログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4410944A (en) * 1981-03-24 1983-10-18 Burroughs Corporation Apparatus and method for maintaining cache memory integrity in a shared memory environment
US5633865A (en) * 1995-03-31 1997-05-27 Netvantage Apparatus for selectively transferring data packets between local area networks
US6055605A (en) * 1997-10-24 2000-04-25 Compaq Computer Corporation Technique for reducing latency of inter-reference ordering using commit signals in a multiprocessor system having shared caches
US6745293B2 (en) * 2000-08-21 2004-06-01 Texas Instruments Incorporated Level 2 smartcache architecture supporting simultaneous multiprocessor accesses
US7133972B2 (en) * 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US6920521B2 (en) 2002-10-10 2005-07-19 International Business Machines Corporation Method and system of managing virtualized physical memory in a data processing system
US6904490B2 (en) 2002-10-10 2005-06-07 International Business Machines Corporation Method and system of managing virtualized physical memory in a multi-processor system
US7543133B1 (en) * 2003-08-18 2009-06-02 Cray Inc. Latency tolerant distributed shared memory multiprocessor computer
JP5031195B2 (ja) * 2005-03-17 2012-09-19 株式会社日立製作所 ストレージ管理ソフトウェア及びグルーピング方法
WO2007083197A1 (en) * 2006-01-18 2007-07-26 Freescale Semiconductor Inc. Device having data sharing capabilities and a method for sharing data
CN100495312C (zh) * 2007-08-17 2009-06-03 杭州华三通信技术有限公司 存储控制系统及其处理节点
CN100489815C (zh) * 2007-10-25 2009-05-20 中国科学院计算技术研究所 一种内存共享的系统和装置及方法
US8275963B2 (en) * 2008-02-01 2012-09-25 International Business Machines Corporation Asynchronous memory move across physical nodes with dual-sided communication
CN101840309B (zh) * 2009-10-28 2011-10-26 创新科存储技术有限公司 多路径环境下双控磁盘阵列的访问控制方法及系统
CN101876925B (zh) * 2009-11-27 2012-05-02 成都市华为赛门铁克科技有限公司 内存镜像处理方法、装置和系统
US8375171B2 (en) * 2010-04-08 2013-02-12 Unisys Corporation System and method for providing L2 cache conflict avoidance
KR101671494B1 (ko) * 2010-10-08 2016-11-02 삼성전자주식회사 공유 가상 메모리를 이용한 멀티 프로세서 및 주소 변환 테이블 생성 방법
CN102122257A (zh) * 2011-03-11 2011-07-13 浪潮(北京)电子信息产业有限公司 一种磁盘阵列缓存数据的保存方法以及磁盘阵列
EP2702474A1 (en) * 2011-08-04 2014-03-05 Hitachi, Ltd. Data storage system using method for dynamically allocating physical data storage space
US8656137B2 (en) * 2011-09-01 2014-02-18 Qualcomm Incorporated Computer system with processor local coherency for virtualized input/output
CN102609466B (zh) * 2012-01-13 2014-12-24 从兴技术有限公司 一种共享内存的控制方法及系统
CN102650932A (zh) * 2012-04-05 2012-08-29 华为技术有限公司 数据的访问方法、设备和系统
CN104321750B (zh) * 2012-04-25 2019-03-08 英特尔公司 在共享存储器编程中保持释放一致性的方法和系统
CN103152394B (zh) * 2013-02-06 2016-09-28 华为技术有限公司 数据存取系统、内存共享设备及数据读取方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02244253A (ja) * 1989-03-17 1990-09-28 Hitachi Ltd 分散共有メモリを持つマルチプロセッサシステム
JPH05290000A (ja) * 1992-04-13 1993-11-05 Mitsubishi Electric Corp 並列計算機及びデータ交換制御装置
WO2011161787A1 (ja) * 2010-06-23 2011-12-29 富士通株式会社 通信装置、通信方法、および通信プログラム

Also Published As

Publication number Publication date
EP2940966B1 (en) 2017-06-21
JP6373876B2 (ja) 2018-08-15
US20150324289A1 (en) 2015-11-12
CN103152394A (zh) 2013-06-12
WO2014121588A1 (zh) 2014-08-14
CN103152394B (zh) 2016-09-28
EP2940966A1 (en) 2015-11-04
EP2940966A4 (en) 2016-01-13
US9594682B2 (en) 2017-03-14

Similar Documents

Publication Publication Date Title
JP6373876B2 (ja) データアクセスシステム、メモリ共有装置及びデータ読み取り方法
EP3479535B1 (en) Remote memory operations
US9936024B2 (en) Storage sever with hot plug and unplug capabilities
JP2021190125A (ja) メモリリソースを管理するためのシステム及び方法
Kant Data center evolution: A tutorial on state of the art, issues, and challenges
US11966612B2 (en) Solid-state disk (SSD) data migration
CN113904938B (zh) 一种动态配置PCIe终端设备的系统和方法
EP2667296A1 (en) Method and apparatus of data processing
US10534541B2 (en) Asynchronous discovery of initiators and targets in a storage fabric
JP6514329B2 (ja) メモリアクセス方法、スイッチ、およびマルチプロセッサシステム
TW201250455A (en) System and method for controlling power devices in data center
US20220327068A1 (en) Mechanism to autonomously manage ssds in an array
WO2022120992A1 (zh) 基于虚拟环境的内存共享系统及方法
JP2018524751A (ja) コンピュータデバイス及びコンピュータデバイスによりデータを読み取る/書き込むための方法
EP2913759B1 (en) Memory access processing method based on memory chip interconnection, memory chip, and system
US20120191896A1 (en) Circuitry to select, at least in part, at least one memory
CN116028232B (zh) 跨机柜服务器内存池化方法、装置、设备、服务器及介质
CN110737618B (zh) 内嵌处理器进行快速数据通信的方法、装置及存储介质
JP7330694B2 (ja) コンピュータシステム及びその動作方法
JP2015007967A (ja) 電力消費状態の変更を要求する少なくとも1つのパケットの少なくとも一部の受信および/または少なくとも一部の発行
CN103577382A (zh) 一种配置节点控制器的方法和装置
CN109150810B (zh) 机顶盒融合网关及其启动方法、装置和存储介质
CN114253733B (zh) 一种内存管理方法、装置、计算机设备和存储介质
CN116436787B (zh) 网络接口管理方法、使用方法、装置、设备和存储介质
CN117499373A (zh) 资产信息管理方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170228

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180718

R150 Certificate of patent or registration of utility model

Ref document number: 6373876

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250