JP2007164794A - ネットワーク内のノードを自動的に分類する方法および装置 - Google Patents

ネットワーク内のノードを自動的に分類する方法および装置 Download PDF

Info

Publication number
JP2007164794A
JP2007164794A JP2006336393A JP2006336393A JP2007164794A JP 2007164794 A JP2007164794 A JP 2007164794A JP 2006336393 A JP2006336393 A JP 2006336393A JP 2006336393 A JP2006336393 A JP 2006336393A JP 2007164794 A JP2007164794 A JP 2007164794A
Authority
JP
Japan
Prior art keywords
data
storage
node
total
class
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
JP2006336393A
Other languages
English (en)
Other versions
JP5007111B2 (ja
Inventor
Hui Li
リー フイ
Meinolf Blawat
ブラヴァート マイノルフ
Dietmar Hepper
ヘッパー ディートマー
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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2007164794A publication Critical patent/JP2007164794A/ja
Application granted granted Critical
Publication of JP5007111B2 publication Critical patent/JP5007111B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】自立的な構成要素として機能し、中央のストレージ制御装置を要せずに分散ストレージシステムを形成することができ、よりインテリジェントなストレージデバイスを使用可能にする、ネットワーク内のノードを自動的に分類する方法および装置を提供する。
【解決手段】少なくとも1つのデータクラスを検出し、データクラスに従いノードに格納されているデータを自動的に分類し、データクラスに従い分類されたデータの量を検出し、ここでファイルの数およびこのファイルの平均サイズを検出し、データクラスに分類されているデータの検出された量から優先値を計算し、この優先値はデータクラスに従いノードに格納されているデータの相対的な優先度に対する尺度であり、データクラスに従いデータタイプを表すリクエストを受信し、データクラスに従いデータの相対的な優先度に対する尺度である優先値をリクエストに応じて提供する。
【選択図】図6

Description

本発明は、ネットワーク内のノードを自動的に分類する方法および装置に関する。
ストレージエリアネットワーク(SAN)は、多数のサーバを集中型のディスクストレージプールに接続する、ストレージディスクのネットワークとして公知である。接続されている全てのストレージを単一のリソースとして処理することによって、システムの保守は容易になる。SANは集中型か分散型が考えられる。集中型のSANは多数のサーバをディスクコレクションに接続し、これに対し分散型のSANは建物内のノードを接続するために典型的に1つまたは複数のスイッチを使用する。しかしながら両方のタイプとも集中型の制御構造、すなわちクライアントサーバ構造を使用する。
一般的な分散ストレージシステム(DSS)においては、データが格納されるべきデバイスをアプリケーションが決定することができる。このようなデバイスを本明細書においては「要求されたストレージターゲット」と称する。ユーザは特定のストレージデバイスの選択を要求されることが多い。DSS内の個々のストレージデバイスを自動的にする選択するインテリジェンスなやり方は存在しない。
DSSに依存せずに、改善されたデータの安全性、可用性、アクセス可能性のためにストレージデバイスを複製することができる。データをパーティションに区切り、そのパーティションを異なるストレージデバイスに記憶するコンセプトをDSSの単一のノードにおいても適用することができる。
自立的な構成要素として機能し、中央のストレージ制御装置を要することなく分散ストレージシステムを形成することができる、よりインテリジェントなストレージデバイスを使用できるようにすることが所望される。
さらには、分散ストレージシステム全体が「モノリシックストレージブロック」のように振る舞うこと、すなわちアプリケーションおよびユーザには1つの(大きな)凝集したストレージファシリティとみなされるが、内部的には個々のデバイスを備えた構造を維持することが所望される。これは慣例のストレージクラスタとは異なるDSSの直交的な振る舞いである。何故ならば、各ストレージデバイスはDSS内で別個のタスクを有する個々のデバイスのままであるが、外部からはDSSをデータの格納の際に1つのユニットとしてアドレッシングすることができる、すなわち外部からでなくDSS内において個々のデバイスをアドレッシングする必要はないからである。その結果、ストレージデバイスを自由にDSSに接続することができ、またDSSから切断することができ、ストレージデバイスは有効データ、例えば映画のようなオーディオヴィジュアル(AV)データを持ち込むまたは受け取ることができる。有利には、DSS内のデバイスはクライアントサーバ構造ではないが、例えばピア・ツー・ピア(P2P)ネットワークの場合のようにクライアントとサーバの両方の役割を果たすことができる。
従って本発明の課題は、自立的な構成要素として機能し、中央のストレージ制御装置を要することなく分散ストレージシステムを形成することができ、よりインテリジェントなストレージデバイスを使用できるようにし、さらには、分散ストレージシステム全体が「モノリシックストレージブロック」のように振る舞うこと、すなわちアプリケーションおよびユーザには1つの(大きな)凝集したストレージファシリティとみなされるが、内部的には個々のデバイスを備えた構造を維持することができる、ネットワーク内のノードを自動的に分類する方法および装置を提供することである。
方法に関する課題は、この方法が、少なくとも1つのデータクラスを検出するステップを有し、データクラスに従いノードに格納されているデータを自動的に分類するステップを有し、データクラスに従い分類されたデータの量を検出するステップを有し、ここでファイルの数およびこのファイルの平均サイズを検出し、データクラスに分類されているデータの検出された量から優先値を計算するステップを有し、この優先値はデータクラスに従いノードに格納されているデータの相対的な優先度に対する尺度であり、データクラスに従いデータタイプを表すリクエストを受信するステップを有し、データクラスに従いデータの相対的な優先度に対する尺度である優先値をリクエストに応じて提供するステップを有することにより解決される。
装置に関する課題は、この装置が、少なくとも1つのデータクラスを検出する手段を有し、データクラスに従いノードに格納されているデータを自動的に分類する手段を有し、データクラスに従い分類されたデータの量を検出する手段を有し、ここでファイルの数およびこのファイルの平均サイズが検出され、データクラスに分類されているデータの検出された量から優先値を計算する手段を有し、この優先値はデータクラスに従いノードに格納されているデータの相対的な優先度に対する尺度であり、データクラスに従いデータタイプを表すリクエストを受信する手段を有し、データクラスに従いデータの相対的な優先度に対する尺度である優先値をリクエストに応じて提供する手段を有することにより解決される。
本発明により構成されており、且つモノリシックストレージブロックのように振る舞うDSSネットワークにおいては、ストレージデバイスに関連する優先的なデータタイプが求められる。この情報は特定のデータタイプのデータが格納されるべき場合にストレージデバイスを選択するために使用される。またこの情報は特定のデータタイプのデータがサーチされる場合にも使用することができる:このケースではそのような情報を特定のタイプのデータが大量に格納されているストレージデバイスにおいて優先的に/最初にサーチすることができる。
本発明はネットワーク内のノードを自動的に分類する方法を提供し、この方法は以下のステップを有する:
−少なくとも1つのデータクラス、例えばビデオ、オーディオまたはテキストを検出するステップ。
−前述のデータクラスに従いノードに格納されているデータを自動的に分類するステップ。
−前述のデータクラスに従い分類されたデータの量を検出するステップ。この際ファイルの数およびこのファイルの平均サイズが検出される。
−前述のデータクラスに分類されているデータの検出された量からデータタイプ優先値を計算するステップ。この優先値は前述のデータクラスに従いノードに格納されているデータの相対的な優先度に対する尺度である。
−前述のデータクラスに従いデータタイプを表すリクエストを受信するステップ。
−前述のデータクラスに従いデータの相対的な優先度に対する尺度である前述の優先値を前述のリクエストに応じて提供するステップ。
さらに本発明によれば、ネットワーク内のノードを自動的に編成する方法は以下のステップを有する:
−データを格納するためのリクエストを受信するステップ。ここでリクエストは所定のデータクラスに従いデータタイプを表す。
−複数のストレージノードにリクエストを伝送するステップ。
−ストレージノードからそれぞれの優先値を受信するステップ。この優先値は前述のデータクラスに従いそれぞれのノードに格納されているデータの相対的な優先度に対する尺度である。
−それぞれのノードの優先値を比較するステップ。
−データを格納するために最も高い優先値を有するノードを選択するステップ。
さらに本発明による方法を、ファイルサイズとファイルの数の組み合わせに関してデータの量が分類されることによりさらに特定することができる。
さらに本発明による方法を、データタイプに関連するノードの優先値が次式により計算されることによって特定することができる。
dominant,type=RPSC * Atotal * k1
ここで、
total=Ntotal * Stotal
RPSC=k2−k3(k4+Saverage+Cused)/Ctotal
ここで、k1,k2,k3,k4は定数であり、Ntotalは前述のデータタイプのデータファイルの総数であり、Stotalはデータタイプのファイルの累算されたサイズであり、Saverageはデータタイプのファイルの平均サイズであり、Cusedはノードの占有されている記憶容量であり、Ctotalはノードの総記憶容量である。
1つの実施形態においては、データクラスの分類および/または検出はデータに関連するメタデータに従い行われる。しかしながら別の実施形態においては、データクラスの分類および/または検出は他の指示、例えばファイル拡張またはファイルヘッダ分析に従い行われる。
1つの実施形態においては、ノードがピア・ツー・ピアネットワークにおけるピアである。
本発明の1つの実施形態においては、ノードの選択はノードの相対的な空き記憶容量(RFSC)を基礎としており、この相対的な空き記憶容量は次式により計算される。
RFSC=c1−c2(c3+Sin_data+Cused)/Ctotal
ここでc1,c2,c3は定数であり、Sin_dataは格納すべきデータのサイズであり、Cusedはノードの占有されている記憶容量であり、Ctotalはノードの総記憶容量である。
本発明によるネットワークプロトコルコマンドは優先値(Edominant,type)の要求または提供に適しており、ここで要求または提供された優先値はデータタイプおよびネットワークノードに関し、またコマンドはデータタイプの指示を包含する。特定のノードの優先値は次式に従い計算される。
dominant,type=RPSC * Atotal * k1
ここで、
total=Ntotal * Stotal
RPSC=k2−k3(k4+Saverage+Cused)/Ctotal
ここで、k1,k2,k3,k4は定数であり、Ntotalはノードに格納された前述のデータタイプのデータファイルの総数であり、Stotalはノードに格納されたデータタイプのファイルの累算されたサイズであり、Saverageはノードに格納されたデータタイプのファイルの平均サイズであり、Cusedはノードの占有されている記憶容量であり、Ctotalはノードの総記憶容量である。単純なケースにおいて、定数はk1=k2=k3=1且つk4=0である。
ネットワーク内のノードを自動的に分類するための相応の装置は以下の手段を包含する:
−少なくとも1つのデータクラス(例えばビデオ、オーディオまたはテキスト)を検出する手段。
−前述のデータクラスに従いノードに格納されているデータを自動的に分類する手段。
−前述のデータクラスに従い分類されたデータの量を検出する手段。ここで、ファイルの数およびこのファイルの平均サイズが検出される。
−前述のデータクラスに分類されているデータの検出された量からデータタイプ優先値を計算する手段。この優先値は前述のデータクラスに従いノードに格納されているデータの相対的な優先度に対する尺度である。
−前述のデータクラスに従いデータタイプを表すリクエストを受信する手段。
−前述のデータクラスに従いデータの相対的な優先度に対する尺度である前述の優先値を前述のリクエストに応じて提供する手段。
さらに本発明によれば、ネットワーク内のノードを自動的に編成する装置は以下の手段を包含する:
−データを格納するためのリクエストを受信する手段。リクエストは所定のデータクラスに従いデータタイプを表す。
−複数のストレージノードにリクエストを伝送する手段。
−ストレージノードからそれぞれの優先値を受信する手段。この優先値は前述のデータクラスに従いそれぞれのノードに格納されているデータの相対的な優先度に対する尺度である。
−それぞれのノードの優先値を比較する手段。
−データを格納するために最も高い優先値を有するノードを選択する手段。
本発明の有利な実施形態は従属請求項、以下の説明ならびに図面に記載されている。
分散ストレージシステム(DSS)が個々のストレージデバイスから構築される場合には、DSSの2つの異なる直交的な振る舞いを選択することができる。つまり、データが格納されるべきデバイスをアプリケーションが選択するか(要求されたストレージターゲット)、DSS全体が1つの大きな凝集したストレージファシリティとみなされ、1つのユニットのように振る舞うかである。これを本明細書においては「モノリシックストレージブロック」と称する。
アプリケーションがデータを格納するために所定のストレージデバイスを選択することを意図している場合には、DSS内のノードが先ず自身のノードの状態およびケイパビリティに関する情報をアプリケーションに提供し、それによりアプリケーションはデータを何処に格納するかを決定することができる。他方ユーザは何処にコンテントが記憶されるかには関心がないので、ユーザは便利な自動的な「記憶管理」に関心を持つ可能性がある。このケースにおいては、DSSがモノリシックストレージブロックのように振る舞えば有利である。
要求されたストレージターゲットのコンセプトにおいて、1つの明示的なノードがデータを格納するためのターゲットとして要求されると、DSS内のノードは自身のリソースに関する適切な情報を供給する。この場合にはアプリケーションは適切なやり方で決定することができるが、他方ではDSS内のノードは適切なシステム状態およびケイパビリティデータを供給すべきである。
モノリシックブロックのコンセプトにおいて明示的なノードがデータを格納するためのターゲットとして要求されていない場合には、DSSは1つのユニットのようにアクセス可能である。アプリケーションはDSSを記憶容量のモノリシックブロックとみなす。DSS自体は自律的に、空き記憶容量および十分な伝送レートにマッチするストレージデバイスを探す。これはネットワーク上で実現されており、且つネットワーク内の各(記憶)ノードによって遵守されている規則のセットに基づき実現される。
アプリケーションはノードの中間制御層(ICL)を介してDSSにアクセスする。ICLはアプリケーションによって使用されるモードを収容し、また対応するアプリケーションインタフェースを提供する。ICLはそのインタラクションによってDSSの論理シェルを形成する。図1はアプリケーションがどのようにDSSを見るかを示す。モードは実際のところ制御メッセージシーケンスの明確なプロシージャである。以下では種々のモードを先ずは、選択されたノードに直接アクセスすることができる、いわゆる「要求されたストレージターゲット」に関して説明する。次に「ファイル分割」機能を説明する。このファイル分割機能は例えばレコーディング装置の容量が無い場合のレコーディングの実行を可能にする。
ノードおよびエッジの数が増すに連れネットワークの複雑性も急激に増すので、そのような着実に増していく複雑性を検討し続けることは非現実的であるか、それどころか不可能なタスクである。消費者に実際に付加される値を構成するために、ストレージネットワークは自身を編成すべきである。以下では、アプリケーションが単一の凝集されたストレージブロックとしてのストレージネットワークにアクセスすることができる「モノリシックストレージの振る舞い」の概略を述べる。「モノリシックストレージの振る舞い」は最も複雑なシステムモードであるが、ユーザに対しては最善の利便性を提供する。何故ならば、このモードにおいてはシステムが可能な限り自己管理的なやり方で動作するからである。このモードにおいてはアプリケーションがストレージネットワークを1つの凝集されたストレージブロックと「みなす」。2つの極端なケースを考慮することができる。つまり、システムは「無秩序な」システムとして振る舞うか、「良好にソートされた/自己ソート型の」システムとして振る舞う。前者の場合には、全てのコンテントが可能とされる場所であればどこでも格納されるが、後者の場合にはコンテントが以下例示的に定義するような規則に従いソートされて格納される。本発明は、単純性の原理に従い、これら両方の機能の態様を参照する。
「要求されたストレージターゲット」モードは直接的なアプローチであり、ここでは完備性についてのみ言及する。ユーザがDSSに特定のストレージデバイスにデータを格納することを要求する場合には、所望のストレージデバイスに直接的にアドレッシングする手段を利用することができる。このモードが図2に示されており、ここではアプリケーション(またはユーザ)が特定のデバイスAにデータを格納することを決定する。この非常に基本的なモードはユーザにストレージネットワークを管理することを要求し、したがって煩雑である。
以下では、モノリシックブロックアプリケーションを説明する。
DSSにおいてはストレージデバイスを管理するための集中サーバが存在しないと想定する。各ストレージデバイスはサーバに依存せずに機能する。デバイスは例えばピア・ツー・ピアネットワークの場合のようなメッセージ、通常はリクエストおよび応答を介して通信する。制御メッセージを交換することによって非集中ネットワークデバイスは相互に通信することができ、また自身を編成することができる。「モノリシックブロック」のコンセプトは論理的なグループを形成するストレージノードのグループを参照し、ここでDSSの記憶容量は外部からは包括的なものとみなされ、また個々のノードは外部からは区別されない。その代わりに、ストレージは各ストレージデバイスが従う一定の規則に従い管理される。そのような規則は例示的に以下のように定義される。ストレージノードのグループが1つのユニット、すなわちモノリシックブロックのように振る舞うことによって、それらの規則をDSSにおいてソフトウェアで(中間層として)実現することができる。
本発明はこのことをどのように実施することができるか、また記憶および検索を要求するアプリケーションとDSSとの間の協働がどのように行われるかを表す。さらに本発明は、モノリシックブロックの外部から到来するストレージリクエストがどのように処理されるか、モノリシックブロックにおけるノードの内の1つから到来するストレージリクエストがどのように処理されるか、またどのメッセージおよび制御メタデータをこのコンセプトの実現のために使用することができるかを説明する。
本発明によれば、表1に示されている層を区別することができる。
Figure 2007164794
ストレージリクエストはアプリケーション層(AL)から開始される。これらのストレージリクエストは制御メッセージを使用して制御言語層(CLL)において実施される。モノリシックブロック層(MBL)はこれらの層間のリンクを形成し、したがってノード間の通信を管理することによって、また制御メタデータを適切に使用することによってモノリシックブロックのコンセプトを実現する。インタフェースは適切に層間に存在すると想定する。例えばAL−MBLインタフェースおよびCLL−PPLインタフェース。メッセージおよび制御メタデータはピア・ツー・ピア技術層(PPL)に関連付けられている。
MBLは全ての関連するストレージデバイスを単一のストレージブロックとみなす仮想効果をユーザに提供する。事前定義されたデフォルトマッチングストラテジに基づき、MBLは到来するデータをストレージデバイスに自動的に割り当てるために保存する。
例えば、本発明の1つの実施形態においては、ネットワークに接続されている全てのストレージデバイスがモノリシックブロック(MB)を形成し、ストレージリクエストはネットワークにおけるノードの内の1つから到来する。ネットワークは例えば、欧州特許明細書EP1427149号に記載されているような、オーナーゾーン(OwnerZone)として実現されているホームネットワークでもよい。このケースにおいては、ネットワークまたはオーナーゾーンにおけるノードの内の1つにおいて実行されるアプリケーションがMB上のコンテントの部分をレコードすることを要求する。すなわち要求を行うノード自体も含めて、オーナーゾーン内のどこかにコンテントの部分がレコードされ、この際アプリケーションはコンテントが何処に格納されるかを知らない。
外部からみるとホームネットワークでは、ホームネットワーク内のDSSにコンテントの部分を記憶することが許可されているか否かという問題が生じる。この問題は例えば、携帯装置またはモバイル装置を介して遠隔地から家にアクセスする場合に解決する必要がある。遠隔装置またはノードを、少なくともホームネットワークにアクセスしている時間にわたり、許可されたものとして識別できる場合、例えばホームネットワークの一部として識別できる場合には、それらの遠隔装置またはノードはホームネットワーク内に存在し、またネットワークノード、したがってDSSにアクセスすることができる。
以下では、MBアプリケーションのストラテジの概略を述べる。
MBアプリケーションに関する一般的なタスクはデータ記憶およびデータ検索である。すなわち到来するデータをモノリシックストレージブロックに保存し、モノリシックストレージブロックから保存されたデータを検索する。MBアプリケーションのデータ記憶機能はデータ検索よりも高度なアルゴリズムを必要とする。
MBシステムに到来するデータを保存している間に、理想的な場合にはデータを直接的に所定の宛先ストレージデバイス上に良好にソートして保存することができる。したがってこの保存を本明細書においては「ソートされた記憶」と称する。しかしながらユーザはむしろ「無秩序なストック管理」でデータを格納することを所望することもある。適切な時点において、またはユーザ取り決めに応じて、一時的な記憶データがより良い宛先デバイスへとさらにソートされる。
無秩序なストック管理および良好にソートされた記憶は例示的に事前定義された2つのモノリシックストレージストラテジである。両方のストラテジをシステム定義型のストレージデバイスマッチング判定基準によって実現することができる。
「無秩序な」ストック管理に関するデバイスのサーチは良好にソートされた記憶に関する場合よりも簡潔且つ迅速である。「無秩序な」ストック管理とはMB内のデータがいずれかの判定基準、例えば論理的なマッチング判定基準によってソートされていないことを意味している。ストレージデバイスの幾つかの基本的で物理的な特性(例えば記憶容量、伝送レート)のみが考慮される。したがって、無秩序なストレージは何らかのやり方で決定されるが、良好にソートされるケースよりも構造化されていない。しかしながら術語「無秩序」はここでは単純性に対して使用される。無秩序なストック管理に関しては、ストレージデバイスがMBアプリケーションの物理的なマッチング判定基準を満たすことができる場合にはこのストレージデバイスを選択することができる。
良好にソートされた記憶に関するデバイスのサーチの場合、システムは例えばデータが付随するメタデータ(MD)を介して、格納されているデータを分析する。分析の結果に依存して、モノリシックな振る舞いを例えば「メタデータによりなされるソートされたストレージの振る舞い」に切り換えることができ、このことはMD内で定義されているような異なるコンテントカテゴリが別個のデバイスに記憶されることを意味する。例えば全てのスポーツイベントはドライブAに格納され、映画はドライブBに格納される。続いて、システムはソートされたコンテントをその新たなシステム振る舞いに従い適切に再配置することができる。動作フェーズの間に、時々(例えばデータ記憶/検索統計に依存して)、システムはソートされたコンテントを分析し、実施されている振る舞いが良好にフィットしているか否かを判定する。
順応できていない振る舞い特性の場合には、システムがその動作モードを変更し、より適した動作モードを選択することができる。
良好にソートされた記憶とは、MB内のデータが物理的なマッチング判定基準および論理的なマッチング判定基準の両方によってソートされることを意味している。例えば、ストレージデバイスが所定のジャンルに関連付けられる、またはビデオデータをビデオにとって優先的なデバイス内に一緒に保存することができる、またはMP3をオーディオ収集デバイスに保存することができる、など。
ストラテジをデフォルトによって、またはアプリケーションによって、またはユーザの代わりに、またはユーザによって選択することができる。ユーザが選択するケースは、(据え置き型の媒体か取り外し可能な媒体を装備している)所定の1つまたは複数のノードをユーザが関心のある所定の対象と関連付けることをユーザが所望する場合に生じる可能性がある。事前に割り当てられていないノードをデフォルトに従い、またはユーザの代わりにアプリケーションによって選択された他の規則に従い処理することができる。
2つのストラテジをシステム要求に従い相互に変換することができる。MBシステムの無秩序なストック管理状態をメンテナンスプロセスによって良好にソートされた記憶状態に変換することができる。良好にソートされた記憶状態を、論理的なマッチングプロセスおよび特定の物理的なマッチングプロセスを放棄することによって無秩序なストック管理状態に変更することができる。
無秩序なストック管理および良好にソートされた記憶の両方に関して、デバイスサーチプロセスはMBシステムのコアタスクである。適切な宛先デバイスを発見するために、到来するデータとストレージデバイスの両方の物理的なパラメータおよび論理的なパラメータが評価される。無秩序なストック管理に関しては、単純化された物理的なマッチング判定基準のみが必要とされる。良好にソートされた記憶に関しては、物理的なマッチングプロセスと論理的なマッチングプロセスの両方が実行される。
以下では、図4に示されているような、到来するデータのために適切なストレージデバイスを評価するプロシージャを「デバイスマッチング」と称する。一般的にデバイスマッチングプロセスは物理的な判定と論理的な判定を含む。物理的な判定に関しては、到来するデータおよびストレージデバイスの物理的なパラメータが考慮される。論理的な判定に関しては、到来するデータ、ストレージデバイスのMDの特徴、また他のMDソースからのMDの特徴がデバイスサーチのために考慮される。
物理的な判定の適用時には以下の物理的なパラメータが評価される:ノードの空き記憶容量、ノードの自由に利用可能な伝送レートおよびノードの優先的なデータタイプ。ここでは、これらの全てのパラメータが物理的なパラメータとして処理される。
論理的な判定においては、記述的なメタデータが評価される。モノリシックなストレージシステムに関して割り当てられた記述的なMDカテゴリが規定され、またこのMDカテゴリを例えば以下詳細に説明するようにALにおいて使用されるパラメータテンプレートに包含させることができる。
これら全ての実現は制御言語を用いることにより可能である。MBLソフトウェアは関連する全てのノード、すなわち(論理的な)ネットワーク、例えばオーナーゾーン内の全てのノードでは同一であると想定する。アプリケーションが動作を実行するノードにおけるMBLソフトウェアは関連するプロセスを管理する。すなわち、MBのコンセプトは各ノードのMBLソフトウェアとして実現されている規則のセットによって実現され、また一般的に動作を実行するノードによって適用される。
モノリシックストレージシステム ストレージプリファレンス
モノリシックストレージシステムは、無秩序なストック管理および良好にソートされた記憶の両方に関して、システムプリファレンスおよびユーザプリファレンスの制御下で動作する。
システムプリファレンスに従いシステムの振る舞いは事前に、例えば製造時または購入時に定義され、またシステムはデフォルトパラメータセッティングに基づき自動的に実行することができる。特定のシステムコンフィギュレーションの生存期間の間に、全体のシステムの振る舞い、つまり無秩序なストック管理か良好にソートされた記憶を制御するために、1つのシステムプリファレンスのみを適用することができる。システムプリファレンスをユーザプリファレンスに置き換えることができる。
システムのモノリシックな振る舞いに関する何らかのユーザプリファレンスが存在する場合には、プリファレンスを自動的なセッティングに可能なときに何時でも置き換える。システムの特徴的な振る舞いのユーザのプリファレンスを手動でALに入力することができる。
モノリシックブロックアプリケーション セットアップ
無秩序なストック管理に関しては、MBアプリケーションのシステムセットアップがALにおいて実施される。図5に示されているように、システムセットアップはユーザプリファレンスの入力から構成される。
良好にソートされた記憶に関しても、MBアプリケーションのシステムセットアップがALにおいて実施される。ここでシステムセットアップはユーザの好みの入力、デバイス定義およびシステムメンテナンスを包含する。システムセットアッププロシージャはユーザにモノリシックブロックシステムへのAPIを提供する。初期システム状態はシステムセットアップ段階の間に定義される。システムのフィードバックに応じて、MBアプリケーションの比較的長い生存期間を達成するために、規則的なシステムメンテナンスを実行する。
ユーザプリファレンス入力
ユーザプリファレンス入力は無秩序なストック管理においても良好にソートされた記憶においても行われる。ユーザプリファレンスを入力している間にパラメータ制御テンプレートがユーザに提示され、このテンプレートはユーザの入力に従い満たされる。テンプレートのカテゴリは目下のMBシステム規則に従い事前定義されている。テンプレートのパラメータカテゴリを用いることにより、ユーザは好みの物理的なパラメータを入力することができるか、(良好にソートされた記憶に関しては)論理的なパラメータ、例えば記憶場所、デバイスプロパティ、メディアデータのタイプおよび記述的なMDを、ユーザ自身の関心に従いデバイスマッチングプロシージャを制御するために入力することができる。ユーザの好みのパラメータが存在しない場合、または考慮されない場合には、テンプレートはシステム利用に関するデフォルトの物理的または論理的なパラメータのグループを使用することができる。テンプレートにおけるパラメータはシステムの物理的および論理的なマッチングプロセスによって使用される。
無秩序なストック管理に関しては、単純化されたパラメータ制御テンプレートが物理的なパラメータを入力するために使用される。良好にソートされた記憶に関しては、物理的なパラメータも論理的なパラメータも包含する完全なパラメータ制御テンプレートが使用される。
良好にソートされた記憶ストラテジに関してはユーザプリファレンスを入力している間に、ユーザは制御デバイス初期化プロシージャを決定することもできる。ユーザはデバイスラベルカテゴリを定義または変更することができ、また空のデバイスにラベルを付与することもできる。
デバイス初期化
デバイス初期化機能は良好にソートされた記憶ストラテジにおいてのみ存在する。システム初期化の間に、目下の分散しているデバイスの全てのデバイスプロパティが収集され、全てのデバイスにはデバイスプリファレンスMD、例えばデータタイプおよび他の記述的なメタデータによってラベルが付与される。空のデバイスに関しては、デバイスプリファレンスラベルが目下のデバイスプロパティに従いユーザによって直接定義される。占有されているデバイスに関しては、デバイスプリファレンスがMBシステムによって計算される。
自動的なシステムストレージマッチングに関しては、ストレージデバイスの優先的なデータにはシステム初期化段階の間にラベルが付与される。目下のシステムに対して使用することができるラベルの全てのカテゴリは事前定義されるべきである。通常の場合、これらのラベルのカテゴリは記述的なMDであり、この記述的なMDはデバイスの優先的なデータの種類、例えばデータフォーマット、ジャンル、コンテントタイトルなどを表す。異なるMBシステムに関しては、異なる種類のラベルカテゴリを設計することができる。初期化段階の間に、各モノリシックブロックシステムはそのアプリケーションに対して1種類のラベルカテゴリを選択することができる。
1つの実施形態においては、システム内の目下の全てのストレージデバイスに少なくとも1つのラベルカテゴリに従いラベルが付与される。空のストレージデバイスに関しては、ユーザはデバイスの記憶容量、伝送レートおよび他の特性を分析し、続いてデバイスにラベルカテゴリにおいて定義されているラベルを付与することができる。マルチメディアシステムアプリケーションに関しては、重要なラベルカテゴリは「データタイプ」であり、したがってこのラベルカテゴリがデフォルトとして使用される。例えばデータはそのデータタイプ、例えばビデオ、オーディオ、テキストに従いストレージデバイスにおいてソートされ、そのようなデータタイプはさらにDVD(映画)、MP3(オーディオ)、XML(汎用)、DOC(テキスト)などに細分化される。
占有されているデバイス、すなわちデータが格納されているデバイスに関しては、その優先的なデータタイプが計算される。占有されているデバイスにはその優先的なデータタイプを表すラベルが付与される。以下ではこのことを詳述する。
デバイス初期化段階はMBシステムの初期状態を形成する。後に、システムアプリケーションの間にシステム状態を変更し、システムメンテナンスプロセスによって操作することができる。
システムメンテナンス
DSSのメンテナンスはMBシステムの動作状態を維持するために良好にソートされた記憶ストラテジにおいて使用される。2種類のシステムメンテナンスが存在する、すなわち能動的なシステムメンテナンスと受動的なシステムメンテナンスである。能動的なシステムメンテナンスは事前定義された周期またはシステム状態に従い規則的に実行される。受動的なメンテナンスは、いずれかのシステム限界に達したときに、MBシステムのリクエストによって起動される。
メンテナンスブロックがメンテナンスリクエストを受信すると、図6に示されているように、メンテナンスオーガナイザが全てのストレージデバイスを自動的に分析し、新たなデバイスラベルをストレージデバイスに割り当てる。デバイスの分析後に、メンテナンスオーガナイザはユーザに対するメンテナンス指示を形成することもでき、ユーザは例えば古いデータ、ソートされているデータを削除することによって、もしくは新たな記憶ディスクを購入することによってシステムを「手動で」改善することができる。
占有されているストレージデバイスにおける優先的なデータタイプ
良好にソートされた記憶に関するデバイス初期化の間の重要なタスクは占有されているストレージデバイスにおける優先的なデータタイプを発見することである。占有されているデバイスへのラベル付与は空のデバイスへのラベル付与とは異なり、そのデバイスの容量および特性に応じてユーザによってラベルを付与することができる。占有されているストレージデバイスが既に、ユーザ自身の関心に従いユーザによって最適に使用されていると想定する。システムが実施しなければならないことは占有されているデバイスにおける優先的なデータタイプを発見することである。本発明によれば、以下の優先付けストラテジが使用される。
ストレージデバイスが、例えばビデオ(例えばDVD)、オーディオ(例えばMP3)、テキスト(DOC)などのような1つ以上のデータタイプのデータを包含すると想定する。
ストレージデバイスの優先的なデータタイプとはストレージデバイスにおいて優先的なファイル総数またはファイル総サイズを有するデータタイプである。つまりこれらは両方とも優先度を表すものだからである。これら2つの値の積が計算され、また優先的なデータタイプはこの積の最も高い値を有するデータタイプと解される。優先的なデータタイプはそれぞれのデバイスの優先的なデータタイプとして定義され、またデバイスにはこのデータタイプを表すラベルが付与される。
新たに到来するデータは優先的なデータタイプおよびこのタイプに関連する潜在的な空き記憶容量に従い格納される。新たなデータが格納されるべき場合には、以下のプロセスを実施することができる:先ず、データタイプまた可能であれば新たなデータのデータサイズが検出され、メッセージがデータタイプおよびデータサイズ(または算出されたデータサイズ)を表す、接続されているストレージデバイスに送信され、これに基づき受信デバイスがリクエストを評価し、マッチングデバイス(すなわち、その優先的なデータタイプが要求されたデータタイプに等しいデバイス)が例えばその利用可能な容量および伝送帯域幅を用いて応答し、これらの応答から最高にマッチするデバイスが記憶のために選択される。
実際のアプリケーションである実施例においては、好みのデータタイプは次式に従い計算される:
total=Ntotal×Stotal
average=Stotal/Ntotal
RPSC=1−(Saverage+Cused)/Ctotal
dominant=RPSC×Atotal
ここで、
totalは所定のデータタイプのデータファイルの総数であり、
total[Gバイト]は所定のデータタイプの総ファイルサイズであり、
average[Gバイト]は所定のデータタイプの平均ファイルサイズであり、
used[Gバイト]はデバイスの占有されている記憶容量、すなわち全てのデータタイプの全てのStotalの合計であり、
total[Gバイト]はデバイスの総記憶容量であり、
totalはデータの優先的な「図表領域」(下記参照)であり、ファイル数とファイルサイズの上述の積であり、
RPSCは所定のデータタイプのストレージデバイス相対的潜在的記憶容量であり、ここでの正の値は同一のデータタイプの別のファイルがデバイス内でフィットすることが期待されることを意味し、大きい値は同一のタイプの別のファイルのために多くの容量が残っていることを意味し、また、
dominantは優先的なデータタイプを検出するための所定のデータタイプの評価値であり、このデータタイプはEdominantの最も高い値を有するタイプである。
より一般化された形態では上記の式は、
dominant,type−RPSCtype * Atotal,type * K1
RPSCtype=k2−k3(k4+Saverage+Cused)/Ctotal
であり、ここで、k1,k2,k3,k4は定数である(または異なるノードのEdominant,type値の評価時間にわたり準定数である)。上記の式の形において定数はk1=k2=k3=1且つk4=0である。
totalの値は、総ファイルサイズとファイル数の両方を考慮したデータタイプの量子化された量を表し、また図7に示されている矩形の領域に対応する。例示的に図7においてはストレージデバイスがビデオデータ、オーディオデータおよびテキストデータを有している。横軸はファイルサイズを表し、縦軸はそれぞれのデータタイプの全てのファイルの数を表す。総ファイルサイズは最大デバイスストレージ容量内にある。各データタイプ(ビデオ、オーディオ、テキスト)の総データ「領域」(Atotal)はこのストレージデバイスにおけるデータタイププリファレンスを表す。
averageは目下のデバイスにおける各データタイプの単位データの平均ファイルサイズを表す。到来する未知のサイズのデータストリームに関しては、そのサイズを関連するSaverageから推定することができる。RPSC(相対的潜在的記憶容量)は、既に格納されている同一のタイプのデータの平均ファイルサイズに従い、データタイプの予期すべき到来するデータのための目下のストレージデバイス潜在的記憶容量を評価することができる。一般的に、RPSCはそれぞれのデータタイプのファイルサイズ統計、例えば平均ファイルサイズ、平均ファイルサイズ偏差などから計算され、また未知のサイズの到来するデータを格納できるか否かを評価するためにこのRPSCを使用することができる。到来するデータを評価できないことが判明すると、残りのデータを他のデバイスに保存するためにファイル分割を使用することができる。
最終的には、目下のデバイス内の優先的なデータタイプをRPSCとAtotalの乗算によって評価することができる。結果として生じる値Edominant,typeは、占有されているストレージデバイスにおける優先的なデータタイプが、データファイルの総数と総データサイズの両方の点において最大値を有するデータタイプであり、また目下のデバイスは新たに到来する同一タイプのデータを潜在的に受信できることを意味する。
ストレージデバイスには自身の優先的なデータタイプを表すラベルが付与される。このことは、そのデータタイプのデータがこのストレージデバイスに格納するには「歓迎すべき」ものであることを意味する。
Figure 2007164794
表2は占有されているストレージデバイスにおける優先的なデータタイプに関する計算例を示す。この例においてデバイスAは200Gバイトの記憶容量を有する。この記憶容量は3つのデータタイプのグループ、すなわちビデオデータ、オーディオデータおよびテキストデータによって占有されている。「ビデオタイプ」がデバイスAの最大Edominant値を有するので、上述の式を使用してデバイスAにおける優先的なデータタイプは「ビデオタイプ」であると評価することができる。
デバイスBはデバイスAと同じ総記憶容量を有するが、ビデオデータ、オーディオデータおよびテキストデータの数およびサイズは異なる。全てのデータタイプグループは図7によるグラフにおいては同一の「データ領域」を有する。このケースにおいては、優先的なデータタイプがEdominantの値によって評価される。デバイスBにおいては優先的なデータタイプは「テキスト」である。何故ならばその値Edominant,textはビデオおよびオーディオに対する値Edominant,video、Edominant,audioよりも高いからである。他のタイプのデータが格納されていない場合、そのような他のタイプのデータの量がビデオ、オーディオおよびテキストに比べて少なければこの他のタイプのデータを無視することができるか、別個の評価値Edominantが計算される。
この例において示したように、この章における上述の式は占有されているストレージデバイスにおける優先的なデータタイプの評価にとって有効である。
モノリシックブロックシステム
ストレージデバイスの検索がMBLにおいて実施される。この検索はALからの入力パラメータにより制御される。到来するデータをモノリシックなストレージブロックに保存する場合には、ユーザは関連するサーチストラテジおよびパラメータをALを介して定義することができる。続いて、このストラテジおよびパラメータに従い、MBLは適切なストレージデバイスを自動的にサーチすることができる。ユーザ入力パラメータが存在しない場合には、MBシステムは適切なストレージデバイスを探すためにデフォルトマッチングストラテジに従い実行されることになる。以下これをより詳細に説明する。
上述のシステム初期化プロセスの後に、MBLはさらにストレージデバイスサーチアクティビティを実施することができる。サーチアクティビティはデフォルトパラメータまたはユーザが割り当てたパラメータに基づき自動的に実行される。図8はモノリシックブロック(MB)システム全体の概観を示す。MBシステムを上述した2つのストレージストラテジ、すなわち無秩序なストック管理および良好にソートされた記憶の内のいずれかに従い実現することができる。両方のストラテジ形態は「ストレージデバイスの物理的な決定」および「ユーザプリファレンスの決定」と称される類似する評価プロシージャを使用する。
ストレージデバイスの物理的な決定は、MBアプリケーションのためのストレージデバイスの選択において最初の役割を果たす。このストレージデバイスの物理的な決定は基本的で物理的なパラメータを評価し、また以下のステップを含む:デバイスの空き記憶容量の計算、デバイス伝送レートの計算、(良好にソートされた記憶のケースにおいては)デバイスの優先的なデータタイプの問合せ、また必要に応じてファイル分割の起動。データの量が格納の前に未知である場合、またはいずれのストレージデバイスも十分な空き容量を有していない場合には、データを種々のストレージデバイスに分散させることができる。このいわゆる「ファイル分割」モードを、図3に示されているように、DSSによって支援することができる。
無秩序なストック管理と良好にソートされた記憶とではストレージデバイスの物理的な決定の異なるバージョンを使用する。つまり、無秩序なストック管理は良好にソートされた記憶に比べて単純化されたバージョンの物理的な決定を使用する。
ユーザプリファレンスの決定はアプリケーションに関する最終的な選択の役割を果たし、したがって最終的な決定はユーザプリファレンスに残される。最終的な選択を行うために、事前定義されたデフォルトパラメータまたはユーザアップデータの論理的なパラメータ(記述的なメタデータ)が使用される。このパラメータを物理的なストレージマッチングおよび(良好にソートされた記憶に関しては)論理的なストレージマッチングのステップから構成することができる。
物理的なストレージマッチングは事前定義された公式およびストラテジに基づき、デバイスの物理的なパラメータを評価する。「ストレージデバイスの物理的な決定」と「物理的なストレージマッチング」の主な相違点は、前者がデバイスの物理的なパラメータの絶対値を評価するのに対し、後者はデバイスの物理的なパラメータの相対値を評価することである。
物理的なストレージマッチングは以下のステップを含む:到来するデータのための相対的な記憶容量の計算、(良好にソートされた記憶に関しては)事前定義されたストラテジによるシステム平衡評価、および(ユーザによって起動される場合には、良好にソートされた記憶に関しては)セーフコピーアクションの起動。
良好にソートされた記憶に関して、論理的なストレージマッチングは(ALから受信した)ユーザ入力メタデータのみに従いデバイスを評価する。論理的なストレージマッチングに基づき、モノリシックなストレージシステムはユーザの全ての種類のストレージ要求を満たすことができる。
モノリシックブロック層に関するさらなる詳細を以下説明する。
無秩序なストック管理
図8に示されているように、「無秩序なストック管理」状態のデバイスをサーチするプロシージャを以下の2つのステップに基づき実現することができる。すなわち、ストレージデバイスの物理的な決定およびユーザプリファレンスの決定。良好にソートされた記憶状態のデバイスに比べて、無秩序なストック管理状態のデバイスのサーチはこれらのステップに関する単純化されたプロセスのみを使用する。例えば、ストレージデバイスの物理的な決定プロセスにおいては、デバイスの絶対的な空き記憶容量および伝送レートのみが評価され、ユーザプリファレンスの決定においては、(サブカテゴリの物理的なマッチングのもとで)デバイスの相対的な空き記憶容量のみが評価される。
無秩序なストック管理のデバイスに関する基本的なタスクは到来するデータのための記憶空間を提供し、他方ではよりメタデータに依存する最適なデバイス評価およびデータソートは考慮されない。
一時的な無秩序なストック管理を適切な時点において、良好にソートされた記憶にさらに変形することができる。
良好にソートされた記憶
良好にソートされた記憶状態のデバイスのサーチをストレージデバイスの物理的な決定およびユーザプリファレンスの決定の2つのステップで実現することができる。オペレーションのステップは無秩序なストック管理のステップと類似するが、関連するプロセスの完全なバージョンを使用する。ストレージデバイスの物理的な決定プロセスにおいては、絶対的なデバイス空き記憶容量およびデバイスの伝送レートに加えて、デバイスの優先的なデータタイプが評価され、ユーザプリファレンスの決定プロセスにおいては、(サブカテゴリの物理的なマッチングのもとでの)相対的なデバイス空き記憶容量に加え、(物理的なマッチングにおける)システムパラメータ平衡評価および論理的なマッチングが実施される。論理的なマッチングにおいては、より記述的なメタデータの特徴が考慮される。「セーフコピー」プロセスは最終的に割り当てられるストレージに対しても可能である。
ストレージデバイスの物理的な決定
ストレージデバイスの物理的な決定は無秩序なストック管理および良好にソートされた記憶の両方の状態のデバイスに関する初期選択プロセスである。このプロセスは、図9に示されているように、4つのオペレーション、すなわちデバイス空き記憶容量の評価、デバイス伝送レートの評価、(良好にソートされた記憶に関しては)デバイスの優先的なデータタイプの評価、また必要に応じてファイル分割コマンドの形成により形成される。
全てのストレージストラテジはデバイス空き記憶容量の評価およびデバイス伝送レートの評価を使用することができる。絶対的な空き記憶容量および伝送レートという物理的なパラメータが計算される。
デバイスの優先的なデータタイプの評価は、そのデータタイプ、例えばビデオ、オーディオ(MP3)などに従い到来するデータを分類する、良好にソートされた記憶状態のデバイスをサーチする場合にのみ使用される。
到来するデータのサイズが単一のデバイスにロードするには過度に大きい場合には、ファイル分割コマンドが形成される。このプロセスをユーザ定義によりALにおいて起動することができる。ファイル分割コマンドが形成されると、MBシステムは残りのデータを保存するための他のストレージデバイスを検出する。
通常の場合、ファイル分割は自動的な機能である。しかしながら、場合によっては、ユーザがデータを分割するためのコマンドをトリガすることもできる。
ユーザプリファレンスの決定
ユーザプリファレンスの決定は無秩序なストック管理および良好にソートされた記憶状態のデバイスのサーチの両方に関する最終的な選択プロセスである。このプロセスが図10に示されており、また物理的なストレージマッチングおよび(良好にソートされた記憶のための)論理的なストレージマッチングから構成することができる。
これらのマッチングプロセスに対してデフォルトパラメータおよびアップデートされたユーザ入力パラメータの両方を適用することができる。デフォルトパラメータはMBアプリケーションによって事前定義されている。これらの事前定義されたパラメータをALにおいて使用されるパラメータ制御テンプレートに含ませることができる。これらのデフォルトパラメータに基づき、MBシステムはいかなるユーザコマンドを要することなくマッチングタスクを自動的に実行することができる。ユーザはパラメータテンプレートにおける関連付けられた値を変更することによりデフォルトパラメータをアップデートすることができる。目下のユーザ入力パラメータにより、ユーザはこのユーザの優先的なストレージデバイスを発見するためにシステムを制御することができる。
物理的なストレージマッチング
物理的なストレージマッチングは、図11に示されているように、以下の機能を含む。すなわち、相対的な空き記憶容量(RFSC)の評価、システムパラメータ平衡の評価、およびセーフコピーコマンドの形成。
相対的な空き記憶容量(RFSC)の評価プロセスは、無秩序なストック管理および良好にソートされた記憶の両方によって使用される。上述のRPSC(相対的潜在的記憶容量)と同様に、RFSCは到来するデータのデータタイプに関する以下の式により計算される:
RFSC=1−(Sin_data+Cused)/Ctotal
ここで、
used[GB]はデバイスの使用されている記憶容量であり、
total[GB]はデバイスの総記憶容量であり、
in_data[GB]は所定のデータタイプを有する到来するデータのサイズであり、
RFSCはこのデータタイプに対するストレージデバイスの相対的な空き記憶容量である。
より一般化された形では上記の式は以下のようになる。
RFSC=c1−c2(c3+Sin_data+Cused)/Ctotal
ここで、c1,c2,c3は定数である(または異なるノードのRFSC値の評価時間にわたり準定数である)。
上記の式の形においては、定数はk1=k2=k3=1且つk4=0である。
システムパラメータ平衡の評価は良好にソートされた記憶によってのみ使用される。このシステムパラメータ平衡の評価は基本的なパラメータに基づき複雑なデバイスマッチングストラテジを定義することができる。例えば、上述の相対的な空き記憶容量の評価においては、最大のRFSC値を有するデバイスが到来するデータに対して最高の伝送レートを提供しない可能性がある。このケースにおいては、より低いRFSC値を有するが、適切な伝送レートを有する他のデバイスを到来するデータにとっての最善のストレージ候補として選択することができる。システムパラメータ平衡の評価においては、ユーザがMBアプリケーションに対して異なる実用的なストラテジを定義することができる。
物理的なストレージマッチングの場合においてセーフコピー機能がユーザによってALにおいて起動される場合には、このセーフコピー機能はセーフコピーコマンドを形成し、到来するデータを保存するための他のストレージデバイスを発見するために上述のデバイスサーチプロセスを再び実行する。この付加的なデータ記憶は、必要に応じて、後のディザスタリカバリに対して有効である。
表3は相対的な空き記憶容量に従いデバイスを選択するための例を示す。デバイスAは200Gバイトの総記憶容量を有し、またその優先的なデータタイプは「ビデオ」である。デバイスBは100Gバイトの総記憶容量を有し、またその優先的なデータタイプはやはり「ビデオ」である。10Gバイトの到来するデータをデバイスAに保存する場合には、デバイスAにおける到来するデータのRPSC値は0.67である。10Gバイトの到来するデータをデバイスBに保存する場合には、デバイスBにおける到来するデータのRPSC値は0.72である。したがって、到来するデータに対してデバイスBはデバイスAよりも多くの相対的な空き記憶容量を提供するので、デバイスBが選択されることになる。
Figure 2007164794
上記の例は、上述の式があらゆる到来するデータに対するストレージデバイスの選択に関する量的な評価を提供することを示す。
論理的なストレージマッチング
物理的なストレージマッチングの後に、候補ストレージデバイスを論理的なストレージマッチングプロセスによってさらにフィルタリングすることができる。論理的なストレージマッチングは、到来するデータを適切なデバイスに配置するための記述的なメタデータを使用するために設計されている。
原理的にはMDベースの全ての種類のマッチングが許容される。事前定義されたMDマッチングストラテジおよびアップデートされたMDマッチングストラテジの両方を論理的なストレージマッチングに適用することができる。論理的なストレージマッチングストラテジの目的は、ユーザが良好にソートされた記憶状態のデバイスにデータを保存することができる最大限の機会を提供することにある。
実際のシステムアプリケーションに関してはメタデータベースのマッチング方法が考えられ、これは図12に示されている。システム初期化段階においては、ユーザは好みのMDを入力することができるか、好みのMDコンテナに直接リンクすることができ、その結果コンテナ内のMDコンテントはユーザの好みのMDとして読み取られることになる。アプリケーション層においては、ユーザは上述のMDコンテントを入力するためにパラメータ制御テンプレートを使用することができる。システムが許容できる全ての記述的なMDカテゴリをパラメータテンプレートにおいて事前定義することができる。パラメータテンプレートはデフォルトMDコンテントも含むことができる。アップデートされたユーザの好みのMDが設定されていない場合には、システムは論理的なストレージマッチングプロセスを実行するためにデフォルトMDを使用する。
図12に示されているように、MBシステムはユーザプリファレンスと同じメタデータによってラベルが付与されているストレージデバイスをサーチする。最終的に、到来するデータは物理的なストレージ要求および論理的なストレージ要求の両方を満たすストレージデバイスに保存される。
例示的なシナリオおよびそのメッセージ並びにメタデータの流れ
以下では、分散的なストレージ管理のために要求されるシステムモデルおよび制御言語の実現可能性を実証するためにDSSの考えられるアプリケーションを表す幾つかの単純なシナリオを、例示的な関連するメッセージおよび制御メタデータも含めて説明する。このシナリオは、図13に示されているように、分散型のストレージ用の例示的なネットワークを基礎としている。このネットワークは据え置き型のストレージデバイス/ノードS0,...,S(個人用ディジタルレコーダ、例えばHDD、光ディスク)およびポータブルなストレージデバイス/ノードPを包含する。各ノードはアプリケーションを実行することができ、またこれらのノードはユーザインタフェース/遠隔制御部を有し、これらのユーザインタフェース/遠隔制御部を別個のデバイス/ノードとみなすこともできる。ホームネットワークに対して考えられる拡張として、チューナ/受信装置(例えばDVB−SまたはDVB−Cなど)、AVディスプレイ/出力装置、インターネットアクセス用のADSLモデムまたはゲートウェイ等を挙げることができる。ここで例示されているシナリオにおいては、ノードS0が一般的にDSSと対話するために使用される。
シナリオ1:容量が制限されているケースにおけるコンテントのコピーおよびネットワーク内の記憶容量のバランスの良い使用。
ユーザはデバイスPに格納されているコンテントを据え置き型のストレージデバイスS0,..,S3のいずれかにコピーしようとする。コンテントは最も大きい空き記憶容量を提供する据え置き型のデバイスにコピーされる。他の実施形態においては、コンテントが空き記憶容量の最高のマッチング量を提供するデバイス、すなわち残りの容量が最も少ないデビスにコピーされ、ギャップが最適に使用される。
シナリオ2:休止および再開ならびにトリックモード(早送り、スローモーション)
(例えば表示装置Pにおいてコンテントを見るために)デバイスS1〜Pに格納されているコンテントを伝送している間に、ユーザは(S0を介して)伝送(例えば再生)を休止し、数分後に再生を再開する。後に再び通常の速度で再生している間に、ユーザは早送りまたはスローモーションのような何らかのトリック再生(サムネイルのブラウズ、ビデオグループシーンのブラウズなども考えられる)を選択する。デバイスS1がトリックモードケイパビリティについて検査されて、そのケイパビリティが確認されると、デバイスS0が早送りリクエストメッセージをデバイスS1に送信し、所望の早送りモードおよび速度に変更される。
シナリオ3:ストレージデバイスS1からの読み出しとストレージデバイスS1への書き込み(レコーディングと再生)を同時に行うマルチタスク
ノードS1は2つのタスク、すなわちノードS2から受信したコンテントの部分のレコーディング、およびノードPについてコンテントの別の部分の再生を同時に実行する。
シナリオ4:タスクの衝突および伝送遅延を伴う同時的な読み出しと書き込み
シナリオS2と同様に、ユーザはデバイスS2からS1へのレコード伝送を設定しようとし、またデバイスケイパビリティはこのレコード伝送の設定を実施することができる。しかしながら伝送を開始する前に、別のユーザがデバイスS1からPへの別の再生伝送を開始すると、デバイスS1の自由に利用可能な伝送レートはデバイスS2からS1への伝送を容易にするにはもはや十分なものではなく、したがってこの伝送は拒否される。ユーザは伝送が後の時点に行われるようにスケジューリングすることを決定する。したがってデバイスS2からS1への伝送が設定される。
シナリオ5:デバイスの接続および切断
ユーザは自身のポータブルデバイス(P)をデバイスS0,..,S3から構成されている既存のネットワークに接続し、後の時点に切断する。ソフトウェアによってトリガされる「ソフト切断」と強制的に切断される「ハード切断」は区別される。
シナリオ6:タスクの衝突および非リアルタイムの伝送を伴う同時的な読み出しと書き込み
伝送遅延の代わりに非リアルタイム伝送が実施される点を除いてシナリオ4に類似する。コンテントはファイルとして比較的低いビットレートで伝送され、したがって比較的長い時間にわたり伝送され、記憶空間である積は一定のままである。
シナリオ7:コンテントの分割を伴うレコーディング
いずれのノードもコンテント全体を格納することができないので、コンテントの部分が種々のノードにわたりレコードおよび分散される。
シナリオ8:分割されたコンテントの再生
種々のノードにわたり分散しているコンテントの部分がシームレスに再生される。
シナリオ9:事後的なコンテントの分割を伴う瞬間的なレコーディング
記録は1つのノードにおいて開始されるが、いつ終了するかは分からず、デバイスがほぼ一杯になると、レコーディングは別のノードにおいて継続される。
シナリオ10:コンテントの消去
サーチおよび発見されたコンテントの一部が消去される。
シナリオ11:マルチキャスト/ブロードキャスト
コンテントの部分が種々のノードに伝送される(マルチキャスト)か、全てのノードに同時に伝送される(ブロードキャスト)。
シナリオ12:伝送の中断および再開
ソースまたは宛先がハード切断に起因して一時的に利用不能になるので、コンテントの部分の伝送が中断される。3と2のケースが区別され、これらの内の2においては伝送が中断された点から再開される。
以下の構造は例示的に上述のピア・ツー・ピア技術層、または他の対応する層を参照する。上記のシナリオの実現にあたり、異なるメッセージまたはタスクが、メッセージパラメータまたは引き数として包含されている固有の制御メタデータと共に使用される。表記を容易にするために、メッセージはメッセージ名および引き数、例えばDeviceCapabilitiesInformation(Sender, Receiver, TaskID, DeviceType, DeviceServices, MaxBitRate, FreeStorageCapacity, ...)によって表される。全てのメッセージは自身の固有のメッセージID(MessageID)を有しているが、見やすくため上記の表記においてこのメッセージIDは省略されている。
各シナリオに関して、先ずシナリオの初期条件、次にシナリオの詳細な説明、最後にメッセージフローが挙げられている。
シナリオ1:容量が制限されている場合のコンテントのコピーおよびオーナーゾーン内の記憶容量のバランスの良い使用
初期条件:ノードS0,...,S3およびPから成るネットワークが図14に示されているように構成され実行される。コンテントの伝送は実施されず、全てのノードはアイドル状態にある。
シナリオ:ユーザはデバイスPに格納されているコンテントをストレージデバイスS1,S2またはS3のいずれかにコピーしようとする。最も大きい空き記憶容量を提供する据え置き型のストレージデバイスが検出され、そのストレージデバイスにコンテントがコピーされる。
ユーザはコンテントの所望の部分をサーチするためにデバイスS0を使用する。したがって、デバイスS0はサーチリクエストメッセージをネットワーク/オーナーゾーン内の全てのデバイスに送信する。デバイスPはコンテントを有し、したがってデバイスS0に応答する。ただしこのシナリオに対する変形実施形態「A」として、コンテントのサーチおよびコピーのタスクを開始するためにデバイスPをデバイスS0の代わりに使用することができる。このケースにおいては、ノードPはリクエストに整合するコンテントに関する応答を自身には送信せず、ノードPは相応の情報を自身のコンテントデータベースから受け取ることになる。
ユーザはいずれかの据え置き型のストレージデバイスにコンテントを格納しようとするので、デバイスS0がデバイスS1,S2およびS3にそれらの記憶容量および伝送ケイパビリティを問い合わせるために使用される。S1,S2,S3はそれらのデバイスケイパビリティに関してS0に情報を提供し、それらの全てのデバイスは自由に利用可能である十分な伝送レートを有する。この場合、デバイスS1に対しては空き記憶容量の制限が観測されているのに対し、デバイスS3は最大空き容量を提供する。したがってデバイスS0はデバイスPに対してコンテントをデバイスS3に伝送するようリクエストし、したがってこれによりネットワーク内でよくバランスのとれた形で記憶容量を利用できるようになる。関連するデータ伝送が終了すると、デバイスPはS3にメッセージを通知する。コンテントのレコーディング後には、デバイスS3がうまく完了したことに関する情報をS0に通知する。
オーナーゾーン内での記憶容量のバランスのとれた利用、すなわち各ノードの記憶空間の管理とは例えば、(このシナリオにおけるように)最大の絶対的な空き記憶容量または相対的な空き記憶容量または自由に利用できる最高の伝送レートを実施形態に依存して提供するノードにおいてコンテントの部分をレコーディングすることを意味する。しかしながら、バランスのとれた記憶容量の利用は、ネットワーク内の記憶容量を管理するための1つの可能なやり方にすぎない。例えば容量が制限されているケースにおいてコンテントをコピーする場合に、他のストラテジも同様に適用することができる。
メッセージフロー:このシナリオにおいてはメッセージの以下のシーケンスが生じる。全てのメッセージは送信側(Sender)および受信側(Receiver)を含む。これらはまたそれぞれのメッセージタイプに固有のパラメータも包含する。
ユーザはコンテントの所定の部分またはタイプをサーチしようとする。ユーザ入力の結果として、デバイスS0は以下のサーチリクエストを全てのデバイスに送信し、その際、S0はS2に関していくつかの事前の知識があるという理由から、あるいは殊にS2に関心があるという理由から、S0は特にS2に対しメッセージを送信する。
Figure 2007164794
全てのデバイスは、タスクID(TaskID)の関係およびタスクに関連するパラメータを一時的に格納し、自身のデータベースをサーチする。Pは要求されたコンテントの部分を発見し、したがって以下のメッセージをデバイスS0に送り返す。
Figure 2007164794
S0の代わりのデバイスPがコンテントのサーチおよびコピーのタスクを開始するために使用される、このシナリオについての変形実施形態「A」においては、このメッセージは発生せず、ノードPは単にそのコンテントデータベースから発見されたコンテントに関する情報を取得しようとするに過ぎない。
「全ての」受信側がContentInfoRequest("search")メッセージでアドレッシングされているので、受信側はリクエストに整合するコンテントが発見されるまでリクエストに応答する必要はない。しかしながらS2は明示的に受信側として挙げられているので、所望のコンテントを保持しているか否かというリクエストに対しては応答する必要がある。S2は時々自身のデータベースをサーチする必要があり、またサーチを開始するときに以下のメッセージをS0に送信する:
Figure 2007164794
この場合デバイスS2は要求されたコンテントの部分を発見しない。デバイスS2は「応答しなければならない」受信側としてContentInfoRequest("search")メッセージでアドレッシングされているので、デバイスS2内で所望のコンテントが発見されなかったにもかかわらず、このデバイスは以下のメッセージをデバイスS0へ送り返す。
Figure 2007164794
全てのデバイスのサーチプロセスが完了する前に、ユーザが所望の何らかのコンテントを発見した場合には、ユーザはS0に以下のメッセージを使用してサーチプロセスをキャンセルさせることができる。
Figure 2007164794
このメッセージを受信した後に全てのデバイスは自身のサーチプロセスを停止する。デバイスS2は「応答しなければならない」受信側としてContentInfoRequest("search")メッセージでアドレッシングされているので、CancelTaskRequest("search")リクエストの受領確認としてデバイスS2は以下のメッセージをデバイスS0へ送り返す。
Figure 2007164794
ContentInfoResponseメッセージをデバイスS0に送信した後に、ノードPおよびS2はタスクIDおよび関連するパラメータを自身のテンポラリメモリから削除する。同じことはCancelTaskResponseメッセージを送信した全てのデバイスについてもあてはまる。
この場合ユーザはサーチ結果に満足し、それらのデバイスの空き記憶容量および伝送レートを取得するために、デバイスS0はこのときリクエストメッセージをデバイスS1,S2,S3に送信し、それらのデバイスケイパビリティについて問い合わる。デバイスS1,S2,S3は、自身のデバイスケイパビリティに関する情報をデバイスS0に提供することによって応答する。
Figure 2007164794
択一的に、デバイスS0は以下のようなRequestDeviceCapabilityメッセージをこれら3つの全てのノードに送信することができる。
Figure 2007164794
デバイスS0はデバイスS1,S2,S3の空き記憶容量および伝送レートを評価する。デバイスS1は十分な空き記憶容量をもっていないのに対し、デバイスS3は最大記憶容量を提供する。ネットワーク内の据え置き型のストレージデバイスの記憶容量をバランスよく利用するために、デバイスS0はコンテントをデバイスPからレコーディングするために、ユーザの対話を必要とすることなく自動的にデバイスS3を選択し、伝送を実行するようデバイスS3およびPに要求する。
Figure 2007164794
このシナリオに対する変形実施形態「A」においては、1つの受信側が省略され、メッセージが即座にスタートすることである。
InitiateTransferRequest (Sender = NodeID(P), Receiver = NodeID(S3), TaskID = fgh, ...).このケースでは、ノードPにおいて必要とされるリソースを利用できる場合にのみ、ノードPに対しこのInitiateTransferRequestの送信が許可される。
このメッセージはノードPのロケーションにあるコンテントの部分をノードS3に伝送し、そこにレコードすることを要求する。コンテントID(ContentID)は、ノードPにおけるデータのロケーションを特定するUUIDである。タスクID(TaskID)はUUIDであり、これは例えば関与するデバイスのノードID(NodeID)と、伝送すべきデータのロケーションと、タスクが開始された時点とに基づき定義することができる。デバイスPおよび/またはデバイスS3がそれらのFreeTransferRate(自由に利用可能な伝送レート)によればその時点で過度にビジー状態である場合、それらはInitiateTransferResponse("denied")メッセージ(伝送応答開始「拒否」)をデバイスS0に送信することになり、ついでS0によりCancelTaskRequestメッセージがデバイスPとデバイスS3に送信されることによりタスクがキャンセルされ、それらのデバイスはCancelTaskResponseメッセージをデバイスS0に送ることにより返答するか、レコーディングが後の時点で再び試みられることになるか、またはDeviceCapabilitiesInformationメッセージから得られるUntil(いつまで)に従いAfter(以降)パラメータを使用してレコーディングがスケジューリングされることになる。
上記のメッセージの受信後に、デバイスS3およびデバイスPはリクエストに対し受領確認を行い、個々のリソースを割り当てる。このシナリオに対する変形実施形態「A」においては、ノードPが受領確認メッセージを自身とデバイスS3には送信しない。何故ならば、それらには十分なリソースを利用可能であることが暗黙的に既知であり、したがって第2の以下の2つのInitiateTransferResponseメッセージは発生しない。この場合、ユーザは自身が管理する所定の人員グループに、自身で定義した"John’s James Bond friends"というラベルでコンテントのコピーに対するアクセスの許可を与えたいと望んでおり、それ応じてS0に命令する。
Figure 2007164794
TransferPurposeパラメータの値が「Record」であるので、宛先ノードS3はデータ転送プロセスを制御することになる。続いて(またはAfterパラメータに従い後の時点において)デバイスS3はデバイスPに対してそれぞれのコンテントデータを自身に送信することを要求する。
Figure 2007164794
デバイスPはデバイスS3からのリクエストを受け取り、要求されたコンテントと共に以下の応答メッセージをデバイスS3に送信し、これによってデバイスPからデバイスS3へのコンテントデータの伝送が開始される。
Figure 2007164794
デバイスS3は次にS0に対しレコーディングプロセスの開始に関する情報を提供し、これによってユーザに対し以下のことを知らせることができる。
Figure 2007164794
デバイスS3は(ForwardDataRequestメッセージにより開始される)伝送を制御するので、デバイスS3はTransferStatusInformation("starting")メッセージ(伝送ステータス情報「スタート」)をデバイスS0へ送信する。デバイスPがデータ伝送を完了すると、このデバイスは以下の情報メッセージをデバイスS3に送信し、したがって全てのデータが伝送されたことが確認される(このメッセージを受け取らなかった場合には、デバイスS3はそのことを、例えば強制的にデバイスが切断されるなど何らかの理由で伝送が完了しなかったことの合図として用いることができる):
Figure 2007164794
デバイスS3はレコーディングを完了し、レコーディングがうまく完了したことに関する以下の情報メッセージをデバイスS0に送信し、これによりそのことをユーザに通知することができる。
Figure 2007164794
デバイスPおよびデバイスS3は自身のリソースの割り当て解除を行い、ここでデバイスS0はユーザに対して伝送タスクがうまく完了したことに関する通知を行う。
これらのステップを図15に示されているように、メッセージのシーケンス図によって表すことができる。
本発明を有利には自己完結型のネットワークに適用することができ、このネットワークにおいてはネットワークデバイスがある程度の自律性を有する。殊に、ネットワークデバイスはクライアントサーバアーキテクチャにおけるクライアント以上のものであるとみなされる。例えば欧州特許明細書EP1427149号に記載されているように、有利にはネットワークデバイスはクライアントとサーバの役割を同時に果たすことができ、例えばP2Pアーキテクチャにおけるピアとして機能することができる。さらにネットワークを他のネットワークと接続することができるが、このコネクションは明示的に「内部」ネットワークと定義されない限り、一般的には「外部」ネットワークとみなされる。外部コネクションを介して接続されているストレージデバイスは外部デバイスとみなされ、また一般的にはモノリシックブロック(MB)に含まれるものではない。
ネットワーク内の複数のストレージデバイスを1つのMBとみなし、そこではユーザがそれらのデバイスを区別する必要がない場合は考慮すべき問題である。1つの可能性は全てのネットワークデバイスがMBの部分であるということである。このことは、僅かな記憶容量しか有さない小さいデバイスも考慮されるということを意味する。
1つの実施形態においては、自動的に検出されたストレージデバイスがプロポーザルとみなされ、ユーザによって確認されることが必要とされる。
別の可能性はこれらのネットワークデバイスのみが、少なくとも最小限のリソース、例えば総記憶容量、データ伝送レート、または所定のサービスを提供するMBに含まれることである。そのようなデバイスに対する最小限の要求を局所的に定義することができ、またユーザによって修正することができ、さらにはこの要求はデバイスが接続されると自動的に検出される。
例えば新たに接続されたデバイスには自身のケイパビリティを他のデバイスまたは特定のサービスに提供することが要求される。そのデバイスが例えば1Gバイトまたはそれ以上の総記憶容量を有し、そのコネクション帯域幅が他の目的のためには決して割り当てられない場合には、そのデバイスはMBに含まれることになる。そのデバイスが接続されたときに既にデータが格納されている場合には、(保護されていなければ)それらのデータをネットワーク内でMBアプリケーションを介して利用することができる。デバイスケイパビリティが十分でない場合には、このデバイスはMBに関してストレージノードとはみなされないが、例えば入力/出力ノードまたは他の特別な目的のノードとみなすことはできる。しかしながら、明示的にMB内のデバイスを排除するか、MB内に包含させるため、および/または、どのデバイスがMBの一部として考慮されるかを定める規則を修正するために、ユーザは自身のネットワークをコンフィギュレートすることができる。
アプリケーションが分散ストレージシステムをどのように見るかを示す。 「要求されたストレージターゲット」モードを示す。 ファイル分割の原理を示す。 モノリシックブロックシステムのコアタスクである適切なストレージデバイスの識別(「デバイスマッチング」)を示す。 無秩序なストック管理に関するモノリシックブロックAPIを示す。 良好にソートされたストレージに関するモノリシックブロックのセットアップを示す。 ストレージデバイス内のデータタイプの総「領域」を示す。 モノリシックブロックシステムの概観を示す。 ストレージデバイスの物理的な決定を示す。 ユーザプリファレンスの決定を示す。 物理的なストレージマッチングを示す。 論理的なストレージマッチングを示す。 分散ストレージシナリオにおける例示的なホームネットワークを示す。 容量が制限されているケースでのコンテントのコピーを示す。 容量が制限されているケースでのコンテントのコピーに関するメッセージのシーケンス図を示す。

Claims (10)

  1. ネットワーク内のノードを自動的に分類する方法において、
    −少なくとも1つのデータクラス(ビデオ、オーディオ、テキスト)を検出するステップを有し、
    −前記データクラスに従いノードに格納されているデータを自動的に分類するステップを有し、
    −前記データクラスに従い分類されたデータの量を検出するステップを有し、ここでファイルの数および該ファイルの平均サイズを検出し、
    −前記データクラスに分類されているデータの検出された量から優先値(Edominant)を計算するステップを有し、該優先値(Edominant)は前記データクラスに従いノードに格納されているデータの相対的な優先度に対する尺度であり、
    −前記データクラスに従いデータタイプを表すリクエストを受信するステップを有し、
    −前記データクラスに従いデータの相対的な優先度に対する尺度である前記優先値(Edominant)を前記リクエストに応じて提供するステップを有することを特徴とする、ネットワーク内のノードを自動的に分類する方法。
  2. ファイルサイズとファイルの数の組み合わせに関してデータの量を検出する、請求項1記載の方法。
  3. ストレージデバイスの残りの潜在的な記憶容量を自動的に推定し、さらに、
    −前記ストレージデバイスに既に格納されているデータのデータタイプを検出するステップを有し、
    −前記データタイプの既に格納されているデータのファイルサイズ統計を検出するステップを有し、
    −前記ストレージデバイスにおける残りの空き記憶容量を検出するステップを有し、
    −前記データタイプのデータを格納するためのリクエストを受信するステップを有し、該リクエストはファイルサイズを表さず、
    −検出された前記ファイルサイズ統計に従い、前記データタイプのデータの予測されるサイズを検出するステップを有し、
    −前記ストレージデバイスの前記残りの空き記憶容量が、前記データタイプのデータの予測されるサイズよりも大きい場合には、前記データの記憶を受諾するステップを有する、請求項1または2記載の方法。
  4. データタイプに関連するノードの前記優先値(Edominant)を次式により計算し、
    dominant,type=RPSC * Atotal * k1
    ここで、
    total=Ntotal * Stotal
    RPSC=k2−k3(k4+Saverage+Cused)/Ctotal
    ここで、k1,k2,k3,k4は定数であり、Ntotalは前記データタイプのデータファイルの総数であり、Stotalは前記データタイプのファイルの累算されたサイズであり、Saverageは前記データタイプのファイルの平均サイズであり、Cusedは前記ノードの占有されている記憶容量であり、Ctotalは前記ノードの総記憶容量である、請求項1から3までのいずれか1項記載の方法。
  5. データクラスの分類および/または検出をデータに関連するメタデータに従い行う、請求項1から4までのいずれか1項記載の方法。
  6. 前記ノードはピア・ツー・ピアネットワークにおけるピアである、請求項1から5までのいずれか1項記載の方法。
  7. ノードの選択はノードの相対的な空き記憶容量(RFSC)を基礎とし、該相対的な空き記憶容量を次式により計算し、
    RFSC=c1−c2(c3+Sin_data+Cused)/Ctotal
    ここでc1,c2,c3は定数であり、Sin_dataは格納すべきデータのサイズであり、Cusedは前記ノードの占有されている記憶容量であり、Ctotalは前記ノードの総記憶容量である、請求項1から6までのいずれか1項記載の方法。
  8. ネットワーク内のノードを自動的に分類する装置において、該装置は、
    −少なくとも1つのデータクラス(ビデオ、オーディオ、テキスト)を検出する手段を有し、
    −前記データクラスに従いノードに格納されているデータを自動的に分類する手段を有し、
    −前記データクラスに従い分類されたデータの量を検出する手段を有し、ここでファイルの数および該ファイルの平均サイズが検出され、
    −前記データクラスに分類されているデータの検出された量から優先値(Edominant)を計算する手段を有し、該優先値(Edominant)は前記データクラスに従いノードに格納されているデータの相対的な優先度に対する尺度であり、
    −前記データクラスに従いデータタイプを表すリクエストを受信する手段を有し、
    −前記データクラスに従いデータの相対的な優先度に対する尺度である前記優先値(Edominant)を前記リクエストに応じて提供する手段を有することを特徴とする、ネットワーク内のノードを自動的に分類する装置。
  9. ファイルサイズとファイルの数の組み合わせに関してデータの量が検出される、請求項8記載の装置。
  10. ストレージデバイスの残りの潜在的な記憶容量を自動的に推定し、さらに、
    −前記ストレージデバイスに既に格納されているデータのデータタイプを検出する手段を有し、
    −前記データタイプの既に格納されているデータのファイルサイズ統計を検出する手段を有し、
    −前記ストレージデバイスにおける残りの空き記憶容量を検出する手段を有し、
    −前記データタイプのデータを格納するためのリクエストを受信する手段を有し、該リクエストはファイルサイズを表さず、
    −検出された前記ファイルサイズ統計に従い、前記データタイプのデータの予測されるサイズを検出する手段を有し、
    −前記ストレージデバイスの前記残りの空き記憶容量が、前記データタイプのデータの予測されるサイズよりも大きい場合には、前記データの記憶を受諾する手段を有する、請求項8または9記載の装置。
JP2006336393A 2005-12-13 2006-12-13 ネットワーク内のノードを自動的に分類する方法および装置 Expired - Fee Related JP5007111B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05112058A EP1798934A1 (en) 2005-12-13 2005-12-13 Method and apparatus for organizing nodes in a network
EP05112058.2 2005-12-13

Publications (2)

Publication Number Publication Date
JP2007164794A true JP2007164794A (ja) 2007-06-28
JP5007111B2 JP5007111B2 (ja) 2012-08-22

Family

ID=36143703

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006336393A Expired - Fee Related JP5007111B2 (ja) 2005-12-13 2006-12-13 ネットワーク内のノードを自動的に分類する方法および装置

Country Status (4)

Country Link
US (1) US7801895B2 (ja)
EP (2) EP1798934A1 (ja)
JP (1) JP5007111B2 (ja)
CN (1) CN1984118B (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187188A (ja) * 2008-02-05 2009-08-20 Fujitsu Ltd 仮想化スイッチ、コンピュータシステムおよびデータコピー方法
WO2010116608A1 (ja) * 2009-03-30 2010-10-14 日本電気株式会社 データ挿入システム
JP2016539419A (ja) * 2014-04-30 2016-12-15 華為技術有限公司Huawei Technologies Co.,Ltd. ハードディスク間のインタラクションのための方法、装置、およびシステム
JP2017514216A (ja) * 2014-03-31 2017-06-01 華為技術有限公司Huawei Technologies Co.,Ltd. イベント処理システム
JP2020038623A (ja) * 2018-09-04 2020-03-12 北京百度网▲訊▼科技有限公司Beijing Baidu Netcom Science And Technology Co.,Ltd. データを記憶するための方法、装置及びシステム

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8238624B2 (en) 2007-01-30 2012-08-07 International Business Machines Corporation Hybrid medical image processing
US20100085916A1 (en) * 2007-01-31 2010-04-08 Noosphere Communications, Inc. Systems and Methods for Hybrid Wired and Wireless Universal Access Networks
US8462369B2 (en) 2007-04-23 2013-06-11 International Business Machines Corporation Hybrid image processing system for a single field of view having a plurality of inspection threads
US8331737B2 (en) 2007-04-23 2012-12-11 International Business Machines Corporation Heterogeneous image processing system
US8326092B2 (en) 2007-04-23 2012-12-04 International Business Machines Corporation Heterogeneous image processing system
US8675219B2 (en) 2007-10-24 2014-03-18 International Business Machines Corporation High bandwidth image processing with run time library function offload via task distribution to special purpose engines
US9135073B2 (en) 2007-11-15 2015-09-15 International Business Machines Corporation Server-processor hybrid system for processing data
US9332074B2 (en) 2007-12-06 2016-05-03 International Business Machines Corporation Memory to memory communication and storage for hybrid systems
US20090150556A1 (en) * 2007-12-06 2009-06-11 Kim Moon J Memory to storage communication for hybrid systems
US8229251B2 (en) 2008-02-08 2012-07-24 International Business Machines Corporation Pre-processing optimization of an image processing system
US7430584B1 (en) 2008-03-12 2008-09-30 Gene Fein Data forwarding storage
US9203928B2 (en) 2008-03-20 2015-12-01 Callahan Cellular L.L.C. Data storage and retrieval
US7599997B1 (en) 2008-08-01 2009-10-06 Gene Fein Multi-homed data forwarding storage
US7636761B1 (en) 2008-09-29 2009-12-22 Gene Fein Measurement in data forwarding storage
US8458285B2 (en) 2008-03-20 2013-06-04 Post Dahl Co. Limited Liability Company Redundant data forwarding storage
US7636759B1 (en) 2008-09-29 2009-12-22 Gene Fein Rotating encryption in data forwarding storage
US8379963B2 (en) 2008-03-28 2013-02-19 International Business Machines Corporation Visual inspection system
US7877456B2 (en) 2008-04-08 2011-01-25 Post Dahl Co. Limited Liability Company Data file forwarding storage and search
US8386585B2 (en) 2008-04-25 2013-02-26 Tajitshu Transfer Limited Liability Company Real-time communications over data forwarding framework
US8452844B2 (en) 2008-05-07 2013-05-28 Tajitshu Transfer Limited Liability Company Deletion in data file forwarding framework
US8370446B2 (en) 2008-07-10 2013-02-05 Tajitshu Transfer Limited Liability Company Advertisement forwarding storage and retrieval network
US8599678B2 (en) 2008-07-10 2013-12-03 Tajitshu Transfer Limited Liability Company Media delivery in data forwarding storage network
US8478823B2 (en) 2008-09-29 2013-07-02 Tajitshu Transfer Limited Liability Company Selective data forwarding storage
US8352635B2 (en) 2008-09-29 2013-01-08 Tajitshu Transfer Limited Liability Company Geolocation assisted data forwarding storage
CN101729442B (zh) * 2008-10-23 2013-03-20 华为技术有限公司 一种实现内容共享的方法和装置
SE533007C2 (sv) 2008-10-24 2010-06-08 Ilt Productions Ab Distribuerad datalagring
EP2712149B1 (en) * 2010-04-23 2019-10-30 Compuverde AB Distributed data storage
US9148691B2 (en) * 2011-04-26 2015-09-29 Cox Communications, Inc. Multiple recording devices connected in a home network
JP5733684B2 (ja) * 2011-05-02 2015-06-10 日本電気株式会社 データ配置装置、データ配置方法およびデータ配置プログラム
US8997124B2 (en) 2011-09-02 2015-03-31 Compuverde Ab Method for updating data in a distributed data storage system
US9021053B2 (en) 2011-09-02 2015-04-28 Compuverde Ab Method and device for writing data to a data storage system comprising a plurality of data storage nodes
US8650365B2 (en) 2011-09-02 2014-02-11 Compuverde Ab Method and device for maintaining data in a data storage system comprising a plurality of data storage nodes
US9626378B2 (en) 2011-09-02 2017-04-18 Compuverde Ab Method for handling requests in a storage system and a storage node for a storage system
US8645978B2 (en) 2011-09-02 2014-02-04 Compuverde Ab Method for data maintenance
US8769138B2 (en) 2011-09-02 2014-07-01 Compuverde Ab Method for data retrieval from a distributed data storage system
US9160697B2 (en) * 2012-01-01 2015-10-13 Qualcomm Incorporated Data delivery optimization
US9003135B2 (en) 2013-01-15 2015-04-07 International Business Machines Corporation Efficient allocation and reclamation of thin-provisioned storage
WO2015085467A1 (zh) * 2013-12-09 2015-06-18 华为技术有限公司 一种用于内容缓存的装置、方法
US9864658B1 (en) * 2014-12-01 2018-01-09 Vce Company, Llc Automation of deduplication storage capacity sizing and trending analysis
US9953081B2 (en) 2015-02-26 2018-04-24 Accenture Global Services Limited System for linking diverse data systems
KR102396435B1 (ko) 2015-08-11 2022-05-11 삼성전자주식회사 불휘발성 메모리 장치, 버퍼 메모리 및 컨트롤러를 포함하는 스토리지 장치를 포함하는 컴퓨팅 장치의 동작 방법
US20170116117A1 (en) * 2015-10-26 2017-04-27 Sandisk Technologies Inc. Identifying storage descriptors based on a metric
US10089178B2 (en) * 2016-02-29 2018-10-02 International Business Machines Corporation Developing an accurate dispersed storage network memory performance model through training
US10116745B2 (en) 2016-03-28 2018-10-30 Samsung Electronics Co., Ltd. Automatic client-server role detection among data storage systems in a distributed data store
US10223172B2 (en) * 2016-05-10 2019-03-05 International Business Machines Corporation Object storage workflow optimization leveraging storage area network value adds
US10225343B2 (en) * 2016-05-10 2019-03-05 International Business Machines Corporation Object storage workflow optimization leveraging underlying hardware, operating system, and virtualization value adds
US11115705B2 (en) 2016-11-15 2021-09-07 Siden, Inc. Method and system for providing non-real-time content distribution services
US11252456B2 (en) 2016-11-15 2022-02-15 Siden, Inc. Method and system for providing non-real-time content distribution services
US10433022B2 (en) * 2016-11-15 2019-10-01 Siden, Inc. A Delaware C Corp Method and system for providing non-real-time content distribution services
US10554530B2 (en) * 2016-12-20 2020-02-04 The Nielsen Company (Us), Llc Methods and apparatus to monitor media in a direct media network
CN109348236B (zh) * 2018-09-20 2021-04-27 武汉斗鱼网络科技有限公司 一种存储容量评估方法、装置、服务器及存储介质
US11228923B2 (en) 2019-05-23 2022-01-18 Siden, Inc. Dymnamic wireless broadcast system and method for operating the same
US11533366B2 (en) 2020-10-04 2022-12-20 Siden, Inc. Method and system for controlling the use of dormant capacity for distributing data
EP4282150A1 (en) 2021-01-22 2023-11-29 Siden, Inc. Method and system for delivering real-time content using broadcasting and unicasting
US11848990B2 (en) 2021-10-15 2023-12-19 Siden, Inc. Method and system for distributing and storing content using local clouds and network clouds
JP2023151189A (ja) * 2022-03-31 2023-10-16 株式会社日立製作所 ストレージシステム及びその制御方法
CN114691698B (zh) * 2022-04-24 2022-11-08 山西中汇数智科技有限公司 一种计算机系统的数据处理系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004109517A1 (ja) * 2003-06-09 2004-12-16 Fujitsu Limited ストレージ管理装置、ストレージ装置、ファイル処理システム、ファイル管理システム、並びにこれらの方法およびプログラム
US20050154821A1 (en) * 2004-01-09 2005-07-14 Ryoji Furuhashi Information processing system and management device
US6981005B1 (en) * 2000-08-24 2005-12-27 Microsoft Corporation Partial migration of an object to another storage location in a computer system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6745311B2 (en) * 2001-01-24 2004-06-01 Networks Associates Technology, Inc. Method of allocating clusters of computer readable medium to a file while minimizing fragmentation of the computer readable medium
JP4457185B2 (ja) * 2001-02-13 2010-04-28 ネットアップ,インコーポレイテッド シリコンベースのストレージ仮想化サーバ
US7092977B2 (en) 2001-08-31 2006-08-15 Arkivio, Inc. Techniques for storing data based upon storage policies
US7171626B2 (en) * 2001-10-29 2007-01-30 Microsoft Corporation System and method for presenting the contents of a content collection based on content type
US7269612B2 (en) * 2002-05-31 2007-09-11 International Business Machines Corporation Method, system, and program for a policy based storage manager
US20030233446A1 (en) * 2002-06-12 2003-12-18 Earl William J. System and method for managing a distributed computing system
US7539702B2 (en) * 2004-03-12 2009-05-26 Netapp, Inc. Pre-summarization and analysis of results generated by an agent
US7539706B1 (en) * 2004-03-30 2009-05-26 Emc Corporation Methods and apparatus for collecting and processing file system data
CN1304961C (zh) * 2005-03-11 2007-03-14 清华大学 基于元数据服务器的存储虚拟化管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6981005B1 (en) * 2000-08-24 2005-12-27 Microsoft Corporation Partial migration of an object to another storage location in a computer system
WO2004109517A1 (ja) * 2003-06-09 2004-12-16 Fujitsu Limited ストレージ管理装置、ストレージ装置、ファイル処理システム、ファイル管理システム、並びにこれらの方法およびプログラム
US20050154821A1 (en) * 2004-01-09 2005-07-14 Ryoji Furuhashi Information processing system and management device
JP2005196625A (ja) * 2004-01-09 2005-07-21 Hitachi Ltd 情報処理システムおよび管理装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187188A (ja) * 2008-02-05 2009-08-20 Fujitsu Ltd 仮想化スイッチ、コンピュータシステムおよびデータコピー方法
JP4674242B2 (ja) * 2008-02-05 2011-04-20 富士通株式会社 仮想化スイッチ、コンピュータシステムおよびデータコピー方法
WO2010116608A1 (ja) * 2009-03-30 2010-10-14 日本電気株式会社 データ挿入システム
US8566555B2 (en) 2009-03-30 2013-10-22 Nec Corporation Data insertion system, data control device, storage device, data insertion method, data control method, data storing method
JP5516575B2 (ja) * 2009-03-30 2014-06-11 日本電気株式会社 データ挿入システム
JP2017514216A (ja) * 2014-03-31 2017-06-01 華為技術有限公司Huawei Technologies Co.,Ltd. イベント処理システム
US11138177B2 (en) 2014-03-31 2021-10-05 Huawei Technologies Co., Ltd. Event processing system
JP2016539419A (ja) * 2014-04-30 2016-12-15 華為技術有限公司Huawei Technologies Co.,Ltd. ハードディスク間のインタラクションのための方法、装置、およびシステム
JP2020038623A (ja) * 2018-09-04 2020-03-12 北京百度网▲訊▼科技有限公司Beijing Baidu Netcom Science And Technology Co.,Ltd. データを記憶するための方法、装置及びシステム
KR20200027413A (ko) * 2018-09-04 2020-03-12 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 데이터 저장 방법, 장치 및 시스템
KR102240557B1 (ko) 2018-09-04 2021-04-14 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 데이터 저장 방법, 장치 및 시스템

Also Published As

Publication number Publication date
US20070136384A1 (en) 2007-06-14
US7801895B2 (en) 2010-09-21
JP5007111B2 (ja) 2012-08-22
CN1984118B (zh) 2012-05-30
EP1798937A1 (en) 2007-06-20
EP1798934A1 (en) 2007-06-20
CN1984118A (zh) 2007-06-20

Similar Documents

Publication Publication Date Title
JP5007111B2 (ja) ネットワーク内のノードを自動的に分類する方法および装置
JP4652237B2 (ja) ネットワークにおけるデータ伝送に対しプライオリティを割り当てる方法および該方法を使用したネットワーク
US7689510B2 (en) Methods and system for use in network management of content
US7779097B2 (en) Methods and systems for use in network management of content
JP5134203B2 (ja) ネットワーク内の装置によって利用可能になったタスクを順位付ける方法及びシステム
US8583671B2 (en) Mediaset generation system
US7502859B2 (en) Dynamic resource management for distributed retrieval system for security
US20080080392A1 (en) Virtual peer for a content sharing system
US20070005768A1 (en) Method and system for providing streaming service in home network
JP2004501556A (ja) 選択的ルーティング
JP2003248611A (ja) 記憶管理統合システム、および、その記憶管理制御方法
JP2012516503A (ja) 分散された資産とメタデータを管理するシステム
JP2003296274A (ja) データ取得システム
WO2009079948A1 (fr) Procédé de mise en tampon et d'interrogation de contenu, et système de transmission multimédia point à point
CN100568201C (zh) 信息处理设备、存储设备、信息处理方法和存储方法
JPH11317937A (ja) 放送蓄積視聴装置
US7872970B2 (en) Method for selecting a determinator of priority to access a network
EP1627500B1 (en) Service management using multiple service location managers
JP2005252325A (ja) 放送番組コンテンツ管理配信システムおよび方法
JP5867161B2 (ja) データアクセス制御装置、データアクセス制御方法およびプログラム
US20070136314A1 (en) Contents providing system and method for preventing improper contents purging and method for managing contents
TWI385966B (zh) 多媒體系統、媒體中央控制器及其管理媒體檔案的方法
JP2003108393A (ja) ビデオストリーム送信プロセスの負荷分散方法及びその装置と負荷分散プログラムと該プログラムを記録した記録媒体
JP2007213149A (ja) 配信システム、制御装置、配信先装置、ノード装置、制御用プログラム、配信先装置用プログラム及びノード装置用プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100727

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20100727

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100729

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120120

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20120213

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120213

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120417

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120515

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120528

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150601

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees