JP6296316B2 - 分散型セキュリティ保護データストレージ、およびストリーミングメディアコンテンツの送信 - Google Patents

分散型セキュリティ保護データストレージ、およびストリーミングメディアコンテンツの送信 Download PDF

Info

Publication number
JP6296316B2
JP6296316B2 JP2016565386A JP2016565386A JP6296316B2 JP 6296316 B2 JP6296316 B2 JP 6296316B2 JP 2016565386 A JP2016565386 A JP 2016565386A JP 2016565386 A JP2016565386 A JP 2016565386A JP 6296316 B2 JP6296316 B2 JP 6296316B2
Authority
JP
Japan
Prior art keywords
data
file
storage
slice
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2016565386A
Other languages
English (en)
Other versions
JP2017523493A (ja
Inventor
ヤノブスキー,デイヴィット
ナモレイゼ,テイムラズ
Original Assignee
クロード クラウディング コーポレイション
クロード クラウディング コーポレイション
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 クロード クラウディング コーポレイション, クロード クラウディング コーポレイション filed Critical クロード クラウディング コーポレイション
Publication of JP2017523493A publication Critical patent/JP2017523493A/ja
Application granted granted Critical
Publication of JP6296316B2 publication Critical patent/JP6296316B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • 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
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • H04L1/0058Block-coded modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/154Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial

Description

関連出願の相互参照
この非仮出願は、2014年5月13日に出願した「データストレージのための方法」という名称の米国仮特許出願第61/992,286号、および、2014年9月22日に出願した「メディアストリーミングのための方法」という名称の米国仮特許出願第62/053,255号の優先権を主張するものである。米国仮特許出願第61/992,286号および第62/053,255号の開示は、それら開示全体が参照により本明細書に組み込まれる。
本開示の主題は、一般的に、セキュリティ保護データストレージおよび送信に関し、より詳細には、分散型セキュリティ保護データストレージ、ならびに、メディアストリーミングおよび他のアプリケーションで使用するための送信に関する。
クラウドコンピューティングが情報技術(IT)インフラの状況に革命をもたらす将来性は、企業自体のデータセンタまたはローカルネットワーク内でかねてより維持されるハードウェアリソースおよびソフトウェアリソースの両方がサードパーティによってインターネット上でホストされるクラウドサーバのネットワークを通して利用可能とすることで、企業が、自身の複雑なITインフラおよびデータセンタを所有しかつ管理する必要性を軽減することができることに基づく。しかしながら、企業のデータストレージおよびコンピューティング要件をこのようなサードパーティの「クラウド」サーバ(複数可)に移行するように企業を納得させるために、クラウドサーバは、顧客の必要性およびセキュリティ上の懸念を満足させるようにするある程度の性能、データセキュリティ、スループット、および有用性基準を提供する必要がある。例えば、ストレージリソースには、エンタープライズ空間におけるクラウドコンピューティングの全面的な採用というボトルネックが残されている。現在のクラウドベースストレージリソースは、危険なセキュリティの脆弱性、可用性の不確定要素、および過剰な費用を含む深刻な性能上の懸念に苦しむ可能性がある。クラウドベースストレージまたはサービス型ストレージ(StAAS)は、エンタープライズのデータセンタにおいて見出される現在の組織内ストレージ容量に匹敵する可能性があるクラウドにおける仮想「ストレージデバイス」を作成しなければならない。
ファイルおよびファイルのグループ全体が1つの物理的なサーバロケーションに記憶される現在のクラウドベースストレージソルーションの大部分は、従来のファイルストレージ(CIFS、NFS)技術に基づくことが多い。このアプローチは、インターネット上で見出される典型的な通信条件下で受け入れ可能なデータ転送レートを供給できない。待ち時間は満足のいくものではなく、エンドユーザまたはコンシューマは、最良に設計されたクラウドアプリケーションにおいても性能上の障壁を知る。さらに、大量のデータの転送には法外な時間がかかる可能性があり、実際的ではない。例えば、現在の技術を使用したクラウドによる1Tbのデータ転送は、完了するには数週間を必要とする。
完全なファイルが単一のロケーションに記憶されるクラウドストレージはまた、機密の企業情報を危険にさらすことに関心があるハッカーにとって興味をかき立てる対象となっている。エンタープライズのデータセンタにおけるセキュリティ手順の設計に対する全ての尽力は、インターネット上で攻撃する腹積もりの1ハッカーによって消滅する可能性がある。従って、クラウドベースストレージシステムのセキュリティを高めることは非常に望ましい。
クラウドストレージソルーションはまた、エンタープライズクライアントとそのクラウドストレージサーバとの間のインターネット通信の混乱から生じる場合がある「停止状態」に対して非常に脆弱である。これらの停止状態は、継続時間が可変的である可能性があり、例えば、サービス妨害(DOS)攻撃発生時に非常に長くなる可能性がある。エンタープライズは、これらの停止状態中に業務を停止せざるを得ない場合、重大な損害を被る可能性がある。
1つのサーバのロケーションにファイル全てを記憶することに基づくクラウドストレージソルーションはまた、そのサーバロケーションが危険にさらされる場合、障害回復を潜在的に危険にする。レプリケーションおよびバックアップも同じ物理的サーバロケーションにおいて対応される場合、不具合および障害回復の問題は、エンタープライズに対して大量のデータ損失という真の危険性をもたらす可能性がある。
現在の技術によるクラウドストレージソルーションは、記憶されたエンタープライズデータの安全性を徹底する完全なレプリケーションおよびバックアップのストレージオーバーヘッドを必要とする。典型的な現在のクラウドストレージ技術セットアップにおいて、これには、記憶されるデータの800%までの冗長性を必要とする可能性がある。この大量の必要とされるデータ冗長性には、クラウドにおいてストレージ容量を維持するための費用にとてつもないオーバーヘッドが付加される。このような冗長性の必要性には、費用を増加させるだけでなく、データセキュリティに関する新しい問題が持ち込まれる。加えて、この冗長性全てによって、クラウドサーバが全てのサーバのデータトランザクションにおいてレプリケーションを常に使用する際の性能の低下ももたらされる。
インターネット接続は、データの高いスループットに対応する能力が改善されているため、メディアストリーミングは、悪徳なコピーの危険性を低減するように、ビデオおよび音楽などのメディアコンテンツを提供する非常に一般向けのやり方になっている。クラウドストレージは、多くのメディアコンテンツストリーミング方式における重要な役割を果たす。典型的には、メディアコンテンツは企業のウェブサーバ上にある。ユーザによって要求される時、メディアコンテンツは、メディアファイルの次のセグメントを表示するのに間に合うようにクライアントによって受信される連続するデータセグメントの一様のストリームでインターネット上でストリームされ、その結果、ユーザに対してオーディオまたはビデオのシームレスな再生らしきものが生じる。
現在、メディアストリーミング技術は、連続的な再生を提供するように、メディアファイルの次のセグメントを再生するのに間に合わせてクライアントによって受信されるデータのセグメント化されたストリームとして、圧縮形式で、ウェブサーバを通してメディアファイルを転送する概念に基づく。場合によっては、データ転送のレートは、データが再生されるレートを超え、追加のデータは将来的な使用のためにバッファに入れられる。データ転送のレートがデータ再生のレートより遅い場合、クライアントがメディアの次のセグメントを再生するために必要とされるデータを収集する間提示は停止することになる。ストリーミングメディア技術の利点は、クライアントが大型のメディアファイル全体(例えば、ノーカットの映画)をダウンロードするのを待つ必要がないこと、および、オンデマンドのダウンロードの特質がクライアントによってメディアコンテンツの不正コピーから保護するデジタル著作権管理(DRM)方式で処理するのに適していることにある。
現在のメディアストリーミング技術は、データのストリームを受信するためにクライアントが接続するウェブまたはメディアサーバ上に全メディアファイルの完全なコピーを記憶する。送信プロセス中のデータ損失は、転送プロセスに容易に割り込み、かつ、クライアントにおけるメディアコンテンツの再生を中断させる可能性がある。このような問題を回避するために、先行技術では、多くの場合、同じメディアファイルを複数のサーバノードに置くようにし、複数のデータはパブリックであろうとプライベートであろうと世界を通じて集まるため、ユーザはそれらデータ近くのサーバノードに接続することができる。これには、接続性の問題によるデータパケット損失に直面して必要とされる一様のデータ転送レートを保証する必要があり、同じファイルの複数のコピーを世界を通じて多くのサーバ上に展開することは、ストリーミングメディアプロバイダに大きな負担を課す。
本開示の主題は、上で説明した問題の1つまたは複数を軽減するおよび/または克服すること、および、よりセキュリティ保護されたデータストレージおよび送信方法を提供することに関し、より詳細には、メディアストリーミングおよび他のアプリケーションで使用するためのよりセキュリティ保護されたデータストレージおよび送信方法を提供することに関する。
とりわけ、ストリーミングメディアの必要性に適した分散型データストレージをセキュリティ保護するための方法およびシステムが開示される。
特定のデータストレージの実施形態は、メディアデータファイルを複数の別個の部分に分離すること、これらの別個の部分を消失訂正符号化すること、および、複数のストレージユニットの間でそれら部分を分散することを含み、この場合、データファイルを復元するのに十分なデータを有するストレージユニットは1つもない。データファイルの別個の部分のそれぞれがどのストレージユニットに記憶されるかを示すマップが生成される。特に、それぞれの別個の部分に一意の識別子が割り当てられ、一意の識別子のマップは、データファイルの再構成を容易にするために使用される。
別の実施形態では、本明細書に開示されるデータストレージ技法は、データファイルをスライスに分離すること、一意の識別子をそれぞれのスライスに割り当てること、再構成を容易にするために一意の識別子のマップを作成すること、それぞれのスライスを別個のスライスフラグメントにフラグメント化すること、スライスフラグメントを消失訂正符号化すること、データファイルを復元するのに十分なデータを有するストレージユニットは1つもない複数のストレージユニットの間で該フラグメントを分散すること、および、どのストレージユニットが何のフラグメントを収容しているかについてのマップを生成することを含む。
開示される消失訂正符号化プロセスによって、データセキュリティおよびパケット損失軽減という改善法が達成される。最初に、データは消失訂正符号化プロセス中に認識できない部分にコード化されることで高度のセキュリティを提供する。次に、消失訂正符号化されたデータは、データ損失発生時のエラー訂正を提供する。消失訂正符号化がデータ量を増加させる一方、データサイズの増加より少ないデータ損失を適応させかつ回復させることができる。特に、好ましい実施形態に従って記憶される、処理されかつ消失訂正符号化されたデータは、元のデータのいずれのレプリケーションも含まないため、セキュリティがかなり高まる。
一実施形態では、ストリーミングメディアコンテンツを記憶するための方法は、デジタルメディアコンテンツファイルを別個の部分またはフラグメントに分離することと、別個の部分を消失訂正符号化することと、別個の部分を複数のストレージユニットの間で分散することとを含み、メディアコンテンツを復元するのに十分なデータを有するストレージユニットは1つもない。好ましい実施形態では、別個の部分のそれぞれがどのストレージユニットに記憶されるかを明示するマップが生成される。メディアコンテンツのそれぞれの別個の部分に一意の識別子が割り当てられ、一意の識別子のマップは、メディアコンテンツの再構成を容易にするために使用される。例えば、マップは、メディアファイルを復元し、かつ、ブラウザまたはその他で、クライアントデバイス上のメディアコンテンツの再生を可能にするために、クライアントデバイスによって使用可能である。
別の実施形態では、データストレージの方法は、データファイルをスライスに分離するステップと、一意の識別子をそれぞれのスライスに割り当てるステップと、一意の識別子のマップを作成するステップと、スライスを別個の部分またはフラグメントにフラグメント化するステップと、別個の部分を消失訂正符号化するステップと、別個の部分を複数のストレージユニットの間で分散するステップであって、データファイルを復元するのに十分なデータを有するストレージユニットはない、分散するステップと、別個の部分のそれぞれがどのストレージユニットに記憶されるかを示すマップを生成するステップと、を含む。クライアントデバイス上で、マップを使用してストリームされたメディアファイルの再生および/またはさらなる記憶を可能にすることによって、復号が行われる。
本開示の前述の要約、好ましい実施形態、および他の態様は、添付の図面と併せて読むと、特有の実施形態の以下の詳細な説明を参照して最も良く理解されるであろう。
例示のストレージシステムの3つの層の概略図である。 例示の実施形態によるファイル処理のさまざまな段階を示す図である。 例示の実施形態によるファイル処理中に行われるさまざまなステップを略述する表である。 例示の実施形態によるファイル処理中に行われるさまざまなステップを略述する表である。 例示の実施形態によるファイル処理の第1のセクションの図である。 例示の実施形態による、分散させるためにスライスフラグメントを作り出すためのファイルスライスの消失訂正符号化の図である。 例示の実施形態による、データストレージノードに対するファイルのアップロードプロセスの詳細な図である。 例示の実施形態による、データストレージからクライアントへのデータのダウンロードプロセス中に行われるさまざまな詳細なステップの表である。 例示の実施形態による、データストレージからクライアントへのデータのダウンロードプロセス中に行われるさまざまな詳細なステップの表である。 例示の実施形態による、CSPに対してなされるクライアントダウンロード要求の図である。 例示の実施形態によるスライスフラグメントについての要求の図である。 ファイルダウンロードプロセス中のCSP、FEDP、およびSNNの間の対話の詳細な図である。 一実施形態によるデータガベージコレクションプロセスの図である。
さまざまな図面における同様の参照符号および名称は同様の要素を示す。
それぞれのデータファイルを、一連のクラウドサーバおいて記憶されるファイルスライスフラグメントに分解し、該フラグメントが好ましくは種々の地理的ロケーションの間で分散されるストリーミングメディアファイルのためのクラウドストレージ技術が本明細書に開示される。一実施形態では、クライアントエンタープライズメディアデータは、オブジェクトストレージ技術を使用してファイルスライスフラグメントに逆アセンブルされる。結果として生じるファイルスライスフラグメントの全ては暗号化され、かつ、一連のクラウドサーバに対する分散の前に、消失訂正符号化を使用してエラー訂正のために最適化される。これによってクラウドにおいて仮想「データデバイス」を作成する。クラウドにおけるデータストレージのために使用されるサーバは、データスループットの速度、ならびにデータセキュリティおよび信頼性両方に向けて最適化するためにクライアントによって選択可能である。取り出しのために、暗号化されかつ分散させたファイルスライスフラグメントは、取り出され、かつ、クライアントの要求時に元のファイルにリビルドされる。この分散アプローチは、メディアファイルが単一の物理的デバイスに記憶されるのではなく、クラウドにおいて、それぞれがファイルの暗号化された「フラグメント」のみを包含する一連の物理的デバイスの間で広がる、「仮想ハードドライブ」デバイスをもたらす。ファイルを移動させる、削除する、読み出す、または編集する目的のためのファイルへのアクセスは、ファイルフラグメントをリアルタイムで迅速に再構成することによって達成される。このアプローチによって、データ転送およびアクセスの速度、データセキュリティ、ならびにデータ可用性における多数の改善がもたらされる。該アプローチはまた、既存のハードウェアおよびソフトウェアインフラを活用することができ、ストレージ技術の分野における実質的な費用削減をもたらす。
クラウドサーバにおいて、特にストリーミングメディアデータを含むデータの分散型ストレージは1つのとりわけ有用なアプリケーションであるが、同技術は、LANまたはWANなどのいずれの可能な通信技術によっても接続できる複数のストレージデバイスにデータが記憶できる構成に応用可能である。開示された技術の速度およびセキュリティのメリットは、最終ストレージデバイスが複数の物理的ハードディスクまたは複数の仮想ハードディスクである、情報技術(IT)データセンタのデバイス内に存続させることが可能である。ITユーザは、本開示の技術が実装される高速度のLANによって接続される企業全体を通して利用可能な全てのストレージデバイスを使用することを選んでよい。複数のストレージデバイスは、サイバースペースにおける複数の個々のユーザにわたって広がってもよく、ファイルは、そのネットワークにおいて利用可能である複数の物理的または仮想ハードディスクに記憶される。それぞれの場合では、システムにおけるデータ転送の速度およびデータストレージのセキュリティは大幅に向上される。
開示された主題の使用は、バックアップまたは障害回復の目的のための二次データストレージを含む。開示された主題はまた、サーバ側の処理なしでファイルにアクセスする場合のプライマリーストレージの必要性に応用可能である。ある特定の実施形態では、これは、制限なくインターネットを通してストリームするのに利用可能とできるビデオまたはオーディオコンテンツを含むメディアコンテンツのストレージを含む。
データストレージの利点
開示されたストレージ技術は、既存のシステムにわたって多数の利点を提示する。これら利点の中には以下のものがある。
A.データ転送レート
既存のクラウドストレージ技術と比較すると、開示された実施形態は、典型的なインターネット通信条件下で、データ転送速度の実質的な改善を可能にする。300mbpsまでの速度が実証されており、このことは、例えば、いくつかの既存のシステムを使用すると1か月かかる可能性がある1Tbのファイルの転送が10時間で完了できることを意味することになる。この速度の改善は数個の要因から生じる。
ファイルを復元する際に、それに伴う「部分」は複数のサーバ間で並列に転送され、その結果、実質的にスループットが改善される。これは、今日使用される一般向けのダウンロードアクセラレータ技術のいくつかにたとえることができ、これによってまた、ファイルを部分でダウンロードするための複数のチャネルがオープンし、その結果、実質的にダウンロードレートが増大する。クラウドサーバの1つへの転送接続のうちの1つにおいて生じる場合がある待ち時間のボトルネックによって、通常の待ち時間の条件下で動作している他のサーバへの転送の速度は上昇し続ける。
分散型ストレージから生じるデータセキュリティおよび信頼性の固有の改善によって、レプリケーションによってデータの読み書きの連続的なミラーリングの必要性を排除し、その結果、スループットに対する速度がさらに改善される。
典型的には、データの最もリソース集約的な処理は、クラウドサーバストレージサイトおよびクライアントサイト両方に対する速度および接続性について最適化される、クラウドにおける1つまたは複数の非常に高い性能のサーバ上のサーバ側で生じる。
特に、ある特定の実施形態における消失訂正符号化は、例えば、本明細書にさらに記載されるように、複数のデータ処理サーバ上で、サーバ側で行われる。これらのサーバは、消失訂正符号化プロセスが典型的には中央処理装置(CPU)に集約するタスクであるため、高い処理性能を有するように選定されてよい。これによって、消失訂正符号化を効率的に行うためのハードウェアおよびソフトウェアインフラがない場合があるクライアント側で、または、単一のサーバ上で行われる消失訂正符号化と比較すると性能が改善されることになる。かかる処理を最適化されたサーバ群に移すことによって、既存の設計と比較して、クライアント側の負荷および性能要件が減少する。
B.データセキュリティ
開示された「仮想デバイス」ストレージは、以前の設計に対するデータセキュリティに関して大幅に改善されている。それぞれのメディアファイルを多くのファイルスライスフラグメントに分解し、かつ、該ファイルスライスフラグメントを、好ましくは地理的に分散したロケーションにおける多くのクラウドストレージロケーション上で分散させることによって、ハッカーは、ファイルをその元の形式に再構成することが極めて困難であることがわかるであろう。さらに、ファイルスライスフラグメントは、ある特定の実施形態において全て暗号化されて、将来的に可能性のあるハッカーをまごつかせるためにデータセキュリティの別の層を付加する。クラウドストレージロケーションのうちの1つへのハッキングの成功は、ハッカーが全メディアファイルを再構成できることにはならない。これは、以前の設計に対するデータセキュリティにおける大幅な改善である。
ある特定の実施形態では、ファイルスライスフラグメントの処理およびストレージ両方に使用されるサーバは、複数のクライアントによって共有されてよく、ハッカーは、該フラグメントがどのクライアントに属し得るかをデータスライスから識別することはできない。これによって、ハッカーにとって、この技術を使用して記憶されたファイルデータのセキュリティを危険にさらすことがより一層困難になる。ファイルスライスフラグメントは、種々のクラウドストレージサーバにランダムに分散させることができ、データストレージのセキュリティをさらに向上させる。ある特定の実施形態では、ファイルスライスフラグメント全てが直接分散されているロケーションをクライアントさえ正確に知ることができない。また、ファイルスライスフラグメントを再構成する、および/または、ファイルスライスフラグメントを解読するためのキー全てが記憶される場所は1つもない。最後に、データセキュリティをさらに向上させるために、メタデータストレージの2次元モデルが使用可能であり、ここで、データを復元するために必要とされるメタデータは、クライアント側およびリモートクラウドストレージサーバの両方で記憶される。
C.データ可用性
開示された「仮想デバイス」ストレージではまた、先行技術のストレージ技術と比較してデータの可用性が改善されている。ファイルを、いくつかの種々のクラウドサーバに記憶される複数のファイルスライスフラグメントに分割することによって、クライアントロケーションと物理的クラウドロケーションのうちの1つとの間の通信上の問題は、他のデータロケーションとの通常の通信および該ロケーションにおける待ち時間が少ないことによって補うことが可能である。ファイルフラグメントを複数のロケーションの間で分散させることによる全体的効果は、サイトのうちの1つにおける通信断絶による停止状態からシステム全体を隔離することである。
好ましくは、後述される中間サーバ処理ノードは、全て高性能プロセッサで構成され、待ち時間が少ない。これによって、データ転送についてクライアントに対する可用性が高くなる。
好ましくは、中間サーバ処理ノードは、クライアントが該ノードのサービスを要求する待ち時間を最小限に抑えるようにそれぞれのクライアント要求に応答して、動的に選ばれてよい。クライアントはまた、ファイルスライスフラグメントを記憶するために使用されるクラウドストレージサーバのリストから選択してよく、自身の地理的ロケーションおよびこれらのサーバの可用性に基づいてこのリストを最適化することができる。これによって、それぞれの転送要求時にそれぞれのクライアントに対するデータ可用性がさらに最大化される。
D.データ信頼性
開示された「仮想デバイス」ストレージではまた、クラウドデータストレージシステムの信頼性において先行技術に対して改善されている。それぞれのファイルをファイルスライスフラグメントに分離することは、ハードウェアもしくはソフトウェアの不具合、または、物理的クラウドストレージロケーションのうちの1つにおけるエラーが、ある特定のかねてより存在するシステムにおいてみられるような、ファイル全体が1つの物理的ロケーションに記憶される場合のように、ファイルへのアクセスを妨げるようなことにならないことを意味する。また、本明細書において論じられる消失訂正符号化技術の使用は、システムにおける高品質のエラー訂正能力を保証して、データセキュリティおよび信頼性両方共を向上させる。本明細書で使用されるファイルスライスフラグメントおよび消失訂正符号化技法の組み合わせは、クラウド技術のエンタープライズによる採用を促すような信頼性を大きく進展させる。
E.既存のクラウドインフラリソースの使用
開示された主題の要素は、パブリックリソースおよびプライベートリソース両方によって、既存のクラウドサーバインフラを活用することができる。現在のクラウドプロバイダは、開示された方法論による使用のために該プロバイダの既存のハードウェアおよびソフトウェアインフラによるセットアップを行うことができる。従って、本明細書に開示される技術によってもたらされる向上の大部分は、修正することなくまたは最小限の修正によって現在存在するクラウドリソースを使用できるため、最小限の投資で利用可能とすることができる。
F.インフラ費用の削減
ある特定の実施形態は、既存のクラウドストレージ技術ソルーションと比較して、必要とされる待ち時間ははるかに少ない。上記のように、先のストレージシステムは、ミラーリングおよびレプリケーションに当てられるストレージは、さらに500%必要とする可能性がある。本明細書に開示される実施形態は、固有の信頼性がより高いため、元のファイルサイズにわたって30%の冗長性のみでうまく動作することができる。30%の冗長性だけでも、既存のシステムよりも高いレベルの信頼性が達成できる。高い冗長性に対する必要性を低減することで、クラウドストレージ能力に対する費用は低下することになる。年々見られるエンタープライズデータおよびストレージの必要性における急激な増加によって、この冗長性の低減は、そのローカルデータセンタと完全に置き換えるためにエンタープライズにとってクラウドソルーションを経済的に実行可能にする重要な要因である。
本明細書にさらに開示されるように、開示された「仮想デバイス」ストレージ技術の実施形態は、ファイルを、最終的に所定の数のクラウドストレージロケーションに転送されることになるファイルスライスおよびファイルスライスフラグメントに分割すること;ファイルがどのように分割され、かつ、どのクラウドロケーションにおいてファイルスライスフラグメント群が記憶されるかを記述してクライアントによるファイルの再構成を可能にする、ファイルスライスおよびファイルスライスフラグメントのマップを作成すること;追加のデータセキュリティを提供するためにファイルスライスおよびファイルスライスフラグメントを暗号化すること;エラーチェックおよび回復のために部分的に消失訂正符号化情報を付加すること;および、適正に書き込まれなかったおよび逆アセンブルされなかった、または、読み出されなかったおよび再構成されなかった、取り残されたファイルスライスフラグメントのガベージコレクションを行うことといった、ある特定のタスクを達成する。
図1に示されるように、例示のシステムの実施形態の基本的構造は、3つの層を含むものとして視覚化されてよい。第1の層は、クライアントのバックオフィスまたはデータセンタに位置することができるクライアント側プロセッサ(CSP)である。(ブラウザにおいて実行しているウェブアプリなどの)クライアントアプリケーションは、CSPにアクセスして、アプリケーションパラメータを設定し、かつ、クライアントのデータセンタからストレージノードネットワークへのファイルのアップロード、および、ストレージノードネットワークからクライアントのデータセンタへのファイルのダウンロードを開始することができる。図において、「スライス」は全般的にファイルスライスに言及するために使用され、「atom」は全般的にファイルスライスフラグメントに言及するために使用される。
例示のシステムの第2の層は、中間データ処理を行うフロントエンドデータプロセッサ(FEDP)を含む。FEDPは、クラウドにおける複数の分散されたロケーションに位置してよい。複数のFEDPサーバは、それぞれのクライアントに対して利用可能であってよく、それぞれのFEDPサーバは、高い処理性能、および、クライアントのロケーションに対する接続の高い可用性を提供する。
例示のシステムの実施形態の第3の層は、ストレージノードネットワーク(SNN)である。SNNは、民間のクラウドリソースプロバイダによって動作可能であるさまざまなクラウドストレージセンタを含むことができる。SNNにおけるストレージノードの数および識別は、クライアントのロケーションからの最良の平均待ち時間および可用性を呈するストレージノードを選ぶことによってストレージ構成の待ち時間およびセキュリティを最適化するためにクライアントによって自身のクライアントアプリケーションを使用してオプションで選択できる。
図1は、CSP、FEDPおよびSNNの間の相互関係を示す概略図である。
これらの3つの層によって果たされる基本的機能は、以下のように説明できる。CSPは、クライアントアプリからSNNへのファイルのアップロードについての要求を受信しかつ開始できる。最初のステップとして、ファイルをそれぞれが一定のサイズを有するいくつかのスライスに分割する。スライスの数およびサイズは、クライアントアプリに対して利用可能なパラメータによって変化させてよい。それぞれのスライスは、クライアントキーで暗号化でき、一意の識別子が割り当てられる。CSPはまた、スライスを、元の完全なファイルに再構成できるようにするためにマッピングするメタデータファイルを作り出すことになる。このメタデータファイルは、クライアントのデータセンタに記憶されてよく、SNNに暗号化されかつコピーされてもよい。例示の実施形態では、CSPはその後、さらなる処理のために、スライスされたファイルを次の層であるフロントエンドデータプロセッサ(FEDP)に送ることができる。
FEDPは、スライスされたファイルをCSPから受信でき、それぞれのスライスをさらに処理することができる。この処理は、それぞれのスライスを一連のファイルスライスフラグメントに分けることができる。例えば、あるデータが送信プロセス中に損失される場合にエラー訂正されるように消失訂正符号化が行われる。消失訂正符号化は、本明細書にさらに説明されるように、エラー訂正を行うために、それぞれのファイルスライスフラグメントのサイズを大きくするようにする。FEDPはまた、自身の暗号化キーを使用してファイルスライスフラグメントを暗号化することができる。FEDPは、ファイルスライスフラグメントの全てをそれらの元のスライスにマッピングし戻し、かつ、ストレージノードネットワーク(SNN)サーバがそのファイルスライスフラグメントを記憶するために使用されるものとすることを記録する別のメタデータファイルを作成することになる。この中間処理が行われると、FEDPはファイルスライスフラグメント群をクラウドにおけるそれらの指定されたSNNサーバへ送り、かつ、作成されるメタデータファイルのコピーをそれぞれのSNNサーバへ送る。
第3の層において、SNNサーバはここで、ファイルのダウンロードについてシステムを通して将来的な要求を受信することを待つように、通常利用可能なクラウドホスティングサーバにおけるクラウドにおいて処理されたファイルスライスフラグメントをホストとして処理することになる。ダウンロードプロセスは、基本的に、3つの処理層において上記ステップを逆転することによって、CSPにおいて元のファイルまたはファイルスライスを復元する。
図2は、例示の実施形態による、SNNへのファイルのアップロード中に、CSP、FEDP、およびSNNのそれぞれについて上述されるファイル処理のさまざまな段階を示す。図3は、例示の実施形態に従って行われるファイルアップロードプロセスに含まれてよい詳細なステップの表である。
ファイルのアップロード
図4Aおよび図4Bはそれぞれ、CSPからFEDPへ、次いでSNNへのファイルのアップロードプロセス中の2つの基本的処理段階:CSPにおけるファイルのファイルスライスへの処理、および、FEDPにおける、SNNへの分散のためにファイル スライスフラグメントを作成するためのファイルスライスの処理を示す。図5は、中間ステップのいくつかを示す、段階的に行われるアップロードプロセスの別の例証である。
ファイルのダウンロード
先にSNNにアップロードされているファイルをダウンロードするプロセスは、アップロードプロセスにおいて使用されるステップの逆転を含む。多くのSNNにわたって記憶されるスライスフラグメントは、スライスフラグメントがどのようにスライスに再構成されるかをマッピングする第2のメタデータファイルを使用してファイルスライスに再構成されなければならない。これはFEDPによって行われる。そのように生成されるファイルスライスは、クライアントのデータセンタに送出するためにスライスがファイル全体にどのように再構成されるかをマッピングする第1のメタデータを使用して、CSPによって完全なファイルに再構成されなければならない。第2のメタデータファイルは、ファイルを記憶するために使用されるSNNのそれぞれに冗長的に記憶され、第1のメタデータファイルはクライアントのデータセンタに、および同様にそれぞれのSNNに記憶される。
図6は、ダウンロードプロセスに含まれてよい詳細なステップの表である。
図7Aは、CSPとFEDPとの間でなされる要求、およびFEDPとSNNとの間の要求を示す3つの層の間のダウンロードプロセスを示す。図7Bは、FEDPがSNNからスライスフラグメントを要求して、要求されたファイルスライスを第2のメタデータファイルを使用して再構成する時に含まれるステップを示す。
図8は、ダウンロードプロセス中にCSP、FEDPおよびSNNの間の対話の詳細なステップを示す。
技術の最適化
上述されるように、開示された方法およびシステムは、データスループット、データ可用性、データ信頼性、およびデータセキュリティにおいて大きく改善されている。
システムにおいて使用される倍の数のアップロードおよびダウンロードノードによってアップロードおよびダウンロード両方が加速されることになる。CSPとFEDPとの間の待ち時間を最適化し、かつ、利用可能な最良の現時点の待ち時間によるFEDPを選ぶことによって、スループットのさらなる加速が得られてよい。FEDPが、SNNに対する待ち時間を自動的に最小限に抑えるように設計される高性能高可用性のサーバとしてセットアップされるため、FEDPとSNNとの間の待ち時間を最適化する必要はない。複数のノードを使用することによってまた、1つの特定のサーバ経路が待ち時間が長いことに苦しむ場合に見られるパフォーマンスヒットを減少させる。
ファイルスライスフラグメントを記憶するための多くのストレージノードを使用することは、クライアントデータのストレージに利用可能なセキュリティを著しく増加させる。ハッカーが、多数のSNNにおける異種のスライスフラグメント全てと接触し、かつ、それらを使用可能なファイルに再構成するために必要な情報を見つけ出すタスクは非常に厄介である。
スライスフラグメントの分散のために消失訂正符号化を使用することは、システムが、固有のパフォーマンスヒットおよびセキュリティリスクと共に、複数のデータレプリケーションに対する必要性を不要にすることができるようにする、固有のエラーチェック/訂正によって追加の信頼性の層を加える。
さらなる問題
前に述べたように、非常にリソース集約的なままの一領域は、非常にCPU集約的である消失訂正符号化プロセスである。この問題に対処するために、非常に高性能のFEDPハードウェアは、これらのFEDPサーバにおいて使用されるCPU(または仮想CPU)がシステムの性能上の必要性を満たすことを保証する。さらに、ソフトウェアパッケージ全体は、FEDPサーバを含む「Go」言語で符号化されてよい。「Go」言語によって生成されるネイティブコードオブジェクトは、とりわけ、消失訂正符号化が主要なCPUリソースを取り入れるFEDPサーバにおいて、システム性能全体を改善するのに役立つ。
クライアントアプリは、クライアントのオペレーティングシステム(OS)プラットフォームで実行することができる任意のクライアントエージェントであってよい。オプションとして、クライアントアプリは、ブラウザにおいて実行させるためにジャバスクリプトで書き込まれてよい。これは、多種多様の物理的デバイスにわたってかかるクライアントアプリを利用可能にする際に役立つ。
上記のデータストレージ技法は、全体を通して仮想化サーバを使用するように設計できる。例えば、性能を改善させかつハードウェア非依存を保証するために、1つの実際のハードウェアサーバの代わりに、並列の3つの仮想サーバが使用可能である。現在のシステムは、いずれの特定のファイル構造にも関係なく、データを参照されるかたまりとして扱うオブジェクトストレージ技術に基づく。その目的は、データストレージにおける現在の仮想化標準に合うように、ブロックストレージ内に転送できるシステムを作成することであった。現在のオブジェクトモデルは、将来的にブロックストレージへ容易にマッピングできる。
ある特定の実施形態では、消失訂正符号化によるエラー訂正は、リードソロモン符号化を使用してFEDP上で行われる。FEDPおよびSNNの間の読み書きが不完全である場合、FEDPにおいてガベージコレクションシステムも用いられる。
図9は、ストレージノードに不完全に記憶されたオブジェクト、すなわち、マスクカーディナリティがk未満であるオブジェクトを削除する必要があるガベージコレクションプロセスのステップを示す。このようなオブジェクトは、何らかの理由で、n〜k個以上のデータブロックがアップロードに失敗し、かつ、アプリケーションが不意に終了した場合にシステムにまれに現れる場合がある。該フローは4つのステップから成る。
1.不完全なものをリストする:(構成可能な値であってよい)一定期間ごとに、メタデータストレージのLIST_INCOMPLETE関数を使用して不完全なオブジェクトのリストを取り出す。
2.UIDを取り出す:GET関数を使用して対応するデータブロックUIDを取り出す(テーブル2を参照)。
3.データを削除する:これらのUIDからストレージノードIDおよびデータブロックIDを抽出し、かつ、DELETE関数を使用してストレージノードから対応するデータブロックを削除する(テーブル1を参照)。
4.メタデータを削除する:削除されたオブジェクト記録を、DELETE関数を使用してメタデータストレージから除去する。
アプリケーション
企業のデータセンタからクラウド内へのエンタープライズデータの移送
開示された技術の著しく向上させたデータ転送速度、セキュリティ、信頼性、および可用性によって、エンタープライズが、特に、その企業のデータセンタからそのストリーミングメディアコンテンツを含むそのデータの大半をクラウドへ移送することを可能にする。これによって、その企業のデータは、社内および社外両方ではるかに幅広いデータコンシューマに対して利用可能となる。
開示された技術は、現在十分に活用されていないエンタープライズ全体のデータストレージリソースが、その後、セキュリティ保護されたストレージノードとして使用するために利用可能となることを可能にする。これによって、エンタープライズのストレージ費用が大幅に低減でき、かつ、セキュリティ保護された分散型ストレージネットワークを、データ構造全体を通して拡大させることを可能とすることができる。
最終的に、この、十分活用されていないデータストレージリソースの同使用は、十分に活用されていないストレージデバイスの集まりを有するコンピュータ所有者の母集団にたどり着くことができる。膨大な分散型ストレージネットワークは、BitTorrentの背景にあるより古い概念を取り入れ、かつ、それを、大いに改善された速度およびセキュリティを加えることによって増やすようにアセンブルできる。コンピュータ技術におけるモバイルデバイスの改革全ては、クラウドにおけるデータの可用性を前提としている。以前のシステムでは、この必要性は、クラウドストレージリソースにおける速度およびセキュリティの欠如によって、これらの結び付けられた技術において関連は弱いものになっている。このことは、より多くのプライベートおよびエンタープライズクライアントが、特にストリーミングメディアアプリケーションについてモバイルデバイスを通してデータにアクセスしていることが、とりわけここで必要とされる。デスクトップおよびより少ないモバイルラップトップを犠牲にして、モバイルデバイスの乱用へ向かうコンピュータ使用を前にして、ユーザに対するデータの可用性は、クラウドへのデータの大規模な移送を必要とする。開示された技術は、この移送を可能にする助けとなる。
デジタルメディアストリーミング
開示された技術は、デジタルメディアストリーミング技術の必要性に自然に適するものになる。速度およびセキュリティにおける開示された改善、および、利用可能なストレージリソースをより多く利用することによって、今日の通信プロトコルおよび技術を使用してストリーミングレートをより大きくすることができる。ビデオ、オーディオ、および他のメタデータのストレージに必要とされる膨大な量のストレージスペースは、本明細書に開示された例示の実施形態に従って、既存のリソースおよびインフラの向上させた可用性ならびに利用をさらに生かすことができる。
衛星TV
衛星TV技術に組み込まれる大型ハードドライブは、衛星TVユーザの一般大衆の間で高速でセキュリティ保護された分散型ストレージネットワークを確立するために開示された技術を使用するように適応できる。このリソースは、衛星TVネットワークの価値を著しく向上させ、かつ、新しい商機を全面的に市場開放することができる。
本開示によるある特定の実施形態では、高度にセキュリティ保護される消失訂正符号化アルゴリズムは、何らかのデータが送信プロセス時のエラーによって損失される場合にデータ回復をもたらすようにファイルフラグメントを符号化するために使用される。
特に、サイズL=|F|のオブジェクトFを、それぞれのサイズがL/m(m<n)のn個の認識できない部分F、F、…Fにコード化するデータミクサアルゴリズム(DMA)が用いられることで、元のオブジェクトFは任意のm個の部分から復元できる。DMAの核心はm−of−nミクサコードである。DMAによって処理されたフラグメントにおけるデータは機密とされ、これは、元のオブジェクトFにおいてm個の部分より少ないものから明示的に復元できるデータはないことを意味する。DMAの詳細な演算の例示の実施形態をここで説明する。
m−of−nミクサコードは順方向エラー訂正コード(FEC)であり、その出力はいずれの入力記号も包含せず、該コードは、m個の記号のメッセージをn個の記号のより長いメッセージに変換して、元のメッセージが長さmのn個の記号のサブセットから回復できるようにする。
元のオブジェクトFは、最初に、それぞれのサイズがL/mであるm個のセグメントS、S、…Sに分けられる。次いで、m個のセグメントは、例えば、
(S、S、…S)・Gm×n=(F、F、…F
のように、m−of−nミクサコードを使用してn個の認識できない部分F、F、…Fにコード化される。式中、Gm×nはミクサコードのジェネレータ行列であり、以下の条件を満たす。
1)Gm×nのいずれのカラムもm×m恒等行列のいずれのカラムにも等しくない
2)Gm×nの任意のm個のカラムはm×m正則行列を形成する
3)そのジェネレータ行列Gm×nの任意の正方部分行列は正則である
第1の条件は、符号化によってn個の認識できない部分が確実に生じるようにする。第2の条件は、元のオブジェクトFが、m<nである任意のm個の部分から確実に復元できるようにし、第3の条件は、DMAが強力な機密性を確実に有するようにする。
任意のm−of−(m+n)ミクサコードから強力な機密性によってDMAを構築する効果的なやり方は次になる。
1)任意のm−of−(m+n)ミクサコードを選ぶ。そのジェネレータ行列はGm×(m+n)=(Cm×m|Dm×n)である。
2)ジェネレータ行列が下記の数式1で表されるm−of−nミクサコードを採用するDMAを構築する。
例えば、ジェネレータ行列は下記の数式2で示されるコーシー行列であってよい。
コーシー行列の任意の正方部分行列は下記の数式2で示される。数式2中、x、…、x、y、…、y∈Z、x+y≠0;i≠j=>x≠xおよびy≠yは正則である。よって、この行列に基づくミクサコードは強力な機密性を有する。
別の例として、ジェネレータコードはヴァンデルモンド行列とすることができる。
ジェネレータ行列がヴァンデルモンド行列であるミクサコードから強力な機密性によるDMAを構築するために、下記の数式3で表されるジェネレータ行列を有するm−of−(m+n)ミクサコードを選ぶ。式中、a、a、…am+nは異なっている。
次いで、強力な機密性によるDMAは復元でき、ここで対応するジェネレータ行列は下記の数式4で表される。
コード化の例
サイズがL=|F|のオブジェクトFを有すると仮定する。その例では、L=1048576(1Mbファイル)である。それをコード化するために、以下のステップが行われる。
1.mおよびnを選ぶ(上の説明を参照)。例えば、m=4、n=6である。
2.ワードサイズwを選ぶ(通常、8、16、32であり、この例では8になる)。算術全てはGF(2)に対して行われることになる。
3.パケットサイズzを選ぶ(コンピュータのワードサイズの倍数でなければならず、この例では256になる)。
4.mの倍数ともする符号化ブロックサイズZ=w・zを計算する。この例では、Z=8・256=2048(バイト)であり、4の倍数である。
5.元のオブジェクトFを乱数のバイトでパディング処理して、サイズをLからL’へ増大させるため、L’はZの倍数になる。
6.オブジェクトFをサイズZの部分に分割する。以下のステップは全てこれらの部分に対して行われるが、それらは依然Fで示されることになる。
7.FをシーケンスF=(b、…b)、(bm+1、…b2m)にセグメント化する。ここで、bはwビットの長さの文字である。この例では、ほんの1バイトである。便宜上、S=(b、…b、)などと示す。
8.ミキシング方式を適用する:
=ci1、ci2、…、cin、ここで
ik=a・S=ai1・b(k−1)m+1+…+aim・bkmであり、
式中、aijはn×mコーシー行列の要素である(上記参照)
のサイズはL=L/mであり、今回の例ではこれは250kb(162144バイト)である。
復号例
ここで、サイズLのm個のオブジェクト部分Fを有すると仮定する。今回の例では、FおよびFが送信エラーによって損失されたと仮定して、i=1、3、5、6である。元のオブジェクトFを復号しかつ復元するために、以下のステップを行う:
1.数がiの行を除く行全てを除去することによってコード化するために使用されるn×mコーシー行列からm×m行列Aを構築する。今回の例では、行2および4は除去される。
2.行列Aを反転させ、それぞれのセグメントS=(b、…b、)、などについて、下記の数式5で表される非ミキシング方式を適用する。
3.セグメントSを加えて元のZ長の部分Fにする。
4.Z長のブロックを共に合わせて、元のパディング処理されたオブジェクトFを形成する。
5.Fからパディングを除去してサイズLに適合させる。
例示の実施形態では、元のデータを認識できないようにする分散型ストレージおよび消失訂正符号化のためにデータを処理する前述の方法論は、ストリーミングメディアコンテンツを処理するために使用される。上で説明されるように、コンテンツプロバイダのメディアファイルは、二段階プロセスで小ファイルスライスフラグメントに分解される。第1のステップは、(圧縮されているか圧縮されていない場合がある)ファイル全体を一連のファイルスライスに分解する。これらのファイルスライスは、暗号化されてよく、該スライスを元のファイルにどのようにアセンブルするかをマッピングするメタデータファイルが作成される。
第2のステップは、それぞれのファイルスライスを取り入れて、該スライスを、元のデータを認識できないようにするために前述の技法に従って消失訂正符号化されるより小さいデータフラグメントに分解する。消失訂正符号化は、高性能ファイルサーバのセットによって行われてよく、それぞれの別々のサーバはそのファイルスライス(複数可)に対して消失訂正符号化を行う。これは、n個の消失訂正符号化サーバユニットにわたって分散された仮想消失訂正符号化のシステムを表す。消失訂正符号化は、あらかじめ定められたレベルの冗長性をデータコレクションに付加し、その後一連のファイルフラグメントストレージノードに分散される一連のファイルスライスフラグメントを作成する。このプロセスにおいて使用される消失訂正符号化には、30%以上の最適な冗長性が望まれる。メディアファイルに頻繁にアクセスする場合、システムは、特定のスライスのファイルオブジェクト冗長性を増大させることができる。
本明細書に開示される消失訂正符号化技法は、パケット損失に関わらず、ストリームされたメディアファイルに対してクライアントが正しいデータパケットを受信することを保証する自動エラー訂正の高性能システムを加える。それぞれのデータフラグメントは、消失訂正符号化のプロセスにおいて暗号化されてもよい。第2のメタデータファイルは、ファイルスライスフラグメントを正しいストリームされたメディアパケットに再構成するために必要とされるプロセスをマッピングする。典型的には、ストリーミングのためにデータをうまく処理するために最低5ノードが必要とされる場合がある(が、ノードの数はシステムロードおよび他のパラメータに応じる)。これらのノードは、ストリームされたデータを受信することになるクライアントの近くに全て位置する必要はないが、幅広い地理的サービス領域上に位置してよい。
ストリーミングメディアコンテンツを再生するために、クライアントはサーバノードから、その後適正な順序で再構成される、必要とされるデータフラグメントをダウンロードする。該再構成は、データフラグメントが作成されたプロセスを逆転する。データフラグメントはファイルスライスに再構成され、ファイルスライスは次いで元のメディアファイルの少なくとも一部分に再構成される。全てのストリーミング技術におけるように、データフラグメントをダウンロードし処理するレートは、メディアを再生するのに現時点で必要とされるデータパケットの時間通りの処理を可能にするのに十分早いものでなければならない。ストリームされたメディアを再生することができる任意のデバイスを含むことができるクライアントアプリケーションは、ストリームされたメディアファイルの再生を始める適正な順序でファイルスライスフラグメントを取り出す。
ストリームされたメディアでは、データフラグメント全ては、メディアを開始から終了まで見るまたは聞くために適正な順序で順次再構成されることが不可欠である。クライアントデバイスは、メタデータファイルからのマップデータを使用することによってデータフラグメントを再構成して、フラグメントをそれらの適正なシーケンスで適正に得る。現在のストリーミング技術と同様に、ダウンロードレートがメディアデータの次のパケットを表示するために必要とされる時間より速い場合、読み手は、メディアプレーヤがその時間セグメントに達する時に使用するためにバッファに記憶される未来時のフラグメントをダウンロードしかつアセンブルすることになる。ファイルフラグメントは、実際には元のメディアファイルにこれまでにアセンブルされなくてよく、単に適正な時間に再生され、かつデータフラグメントとして記憶されてよい。これによって、ユーザがメディアファイルに対して法的権利を有さない場合、再生されているデジタルメディアのセキュリティが高められる。当然ながら、ユーザが元のメディアファイルに対する法的権利を有する場合、フラグメントは、フラグメント全てがダウンロードされると、完全な元のメディアファイルの形式でクライアントのデバイス上でアセンブルできる。メディアファイルが複数のノードから送信されるため、ファイルダウンロードレートは、先行技術に見られる典型的なレートをはるかに超えることになる。好ましくは、目下、データフラグメントのダウンロードのためにクライアントに対する最良の接続性を有するノードが用いられる。ノードにおけるデータが冗長的であるため、ストリームされたデータを読み出す時のクライアントソフトウェアは、ダウンロード時に使用するためのデータ転送の最高レートのノードを優先的に選ぶことができる。
この技術は、クライアントデバイスの全タイプ:デスクトップ、ラップトップ、タブレット、スマートフォンなどに応用可能である。該技術は、現在のストリーミング技術ソフトウェアに取って代わる必要はなく、要求されるデータフラグメントを適正な順序で再構成するためにマップファイルを使用するために上にもう1つ層を単に加えることができる。
以前のシステムに勝る利点
開示された分散型ストレージおよび消失訂正符号化ベースのストリーミング技術は、先行技術のストリーミング技術において上述される制限に対して実質的な改善をもたらす。
A.データ転送の速度
上述される理由のために、開示された実施形態は、先行技術のストリーミング技術と比較して、典型的なインターネット通信条件に対して、データ転送の速度における実質的な改善をもたらす。
メディアコンテンツプロバイダは、クラウドにおいて高性能のサーバにデータフラグメントを分散することを選ぶことができ、また、該データフラグメントを、任意の他のタイプのネットワークにおいて接続される複数のストレージデバイスに記憶することを選ぶこともできる。メディアファイルを復元する時、その「部分」は、複数のサーバの間で並列に転送可能であり、その結果、実質的にスループットが改善されることになる。これは、今日使用される一般向けのダウンロードアクセラレータ技術にたとえることができ、これによって、ファイルのダウンロード部分に対して複数のチャネルをオープンし、その結果、実質的にダウンロードレートが増大する。ノードサーバのうちの1つへの転送接続のうちの1つにおける待ち時間のボトルネックは、通常の待ち時間の条件下で動作している他のサーバへの転送の速度を上げ続けることになる。データ転送の速度が上がることによって、大型の圧縮されていないメディアファイルをリアルタイムで再生することができるため、ストリーミングメディアに対する高忠実度の再現をもたらす。
クライアント側のソフトウェア技術は、そのロケーションで特定のクライアントに最高の現時点のスループットをもたらすようなノードから優先的にダウンロードすることを選ぶことができ、その結果、スループットに対する速度の改善がさらにもたらされる。利用可能なノードの全世界のプールから、各クライアントアプリケーションは、その時点で最高のスループットをもたらすようなノードからメディアストリームからの読み出しを選ぶことができる。消失訂正符号化の冗長性はまた、1つ以上のノードが次の必要とされるフラグメントを包含することを意味し、クライアントは、利用可能な最高のスループットノードを選ぶことができる。
データストレージノードへのデータフラグメントの分散はまた、現時点のスループット条件に基づいて最適化できる。最良の接続性を有するノードを、大量のデータフラグメントを記憶するために選ぶことができるため、分散プロセス中にデータ転送の最大速度を利用可能なストレージノードが最適化される。
具体的には、該技術で使用される消失訂正符号化は、消失訂正符号化がCPUに集約するタスクとすることができるため、高性能について選んだサーバに対してサーバ側で行われてよい。
B.データセキュリティ
上述されるように、本明細書に開示される分散型「仮想消失訂正符号化」ストリーミング技法は、単一の物理的クラウドストレージロケーションにおいてファイル全てを記憶する先行技術のストリーミング技術に対してデータセキュリティの大幅な改善をもたらす。
さらに、ファイルスライスフラグメントの処理およびストレージ両方に使用されるサーバは複数のクライアントによって共有されてよく、ハッカーは、該フラグメントがどのクライアントに属するかをスライスから識別することはできない。これによって、ハッカーにとって、この技術を使用して記憶されたメディアファイルデータのセキュリティを危険にさらすことがより一層困難になる。
C.データ可用性
上述されるように、本明細書に開示される分散型ストレージおよび「仮想消失訂正符号化」ストリーミング技法はまた、先行技術のストリーミング技術と比較して、データの可用性が改善されている。ファイルを、好ましくは種々のロケーションに位置するいくつかの物理的ノードに記憶される複数のファイルスライスフラグメントに分割することによって、クライアントロケーションと物理的ノードのうちの1つとの間の通信問題は、他のデータロケーションとの通常の通信によってオフセットされてよい。複数のロケーションを有する効果全体は、サイトのうちの1つにおける通信断絶による停止状態からシステムを隔離することである。
元のデータを認識できなくする消失訂正符号化、および冗長的なデータによる複数のノードの使用は、高性能でセキュリティ保護されたエラー訂正技術を加える。先行技術のストリーミング技術を悩ますパケット損失問題は、もはや検討事項に該当しない。先行技術のストリーミング技術は、しばしば、各クライアントが再生したいデータストリームを記憶するサーバへの良好な接続性を確実に有するようにするために、地理的サービス領域を通して多くのサーバで同じメディアファイルの複数のコピーを処理しなければならない。開示されたストリーミング技術は、サービス領域を通して複数のサーバでの元のメディアファイルの完全な冗長性を有するコピーの必要性を排除する。
D.データ信頼性
本明細書に開示される分散型ストレージおよび「仮想消失訂正符号化」ストリーミング技術はまた、先行技術に対するストリーミングメディアの信頼性における大幅な改善をもたらす。各ファイルをファイルスライスフラグメントに分離することは、物理的サーバストレージロケーションのうちの1つにおけるハードウェアまたはソフトウェアの不具合またはエラーが、先行技術におけるように、全ファイルが1つの物理的ロケーションに記憶される場合のように、ファイルへのアクセスを排除することはないことを意味する。元のデータを認識できないようにするための消失訂正符号化技術は、高品質のエラー訂正能力を保証し、メディアコンテンツのセキュリティを向上させる。
E.デジタル著作権管理セキュリティ
デジタル著作権の保護(DRM)は、ストリーミングメディアファイルにおけるとりわけ重要な問題である。ストリーミングメディアにおけるDRM保護方式を回避できる多くのサードパーティ製品が利用可能である。開示された技術がデータストリームを、暗号化できるデータフラグメントに分解し、それぞれが元のデータを認識できないようにすることができる消失訂正符号化で処理されるため、DRM保護方式は著しく向上される。ストリーミングデータを要求するクライアントがそのファイル自体に対する権利を有さず、ファイルを再生する権利のみ有する場合、暗号化されかつ消失訂正符号化されたデータフラグメントは、再生中でもクライアントデバイスにおいて実際のメディアファイルに物理的にアセンブルされる必要はない。このことは、今日使用される際に普通のサードパーティ技術によって容易に回避できないはるかに強力なDRM方式を誘引する。
要約すると、例示の実施形態では、本明細書に開示される分散型ストレージおよび「仮想消失訂正符号化」ストリーミング技術は、以下の基本的なタスクを達成する。
1)認識できない部分をもたらすために分散型消失訂正符号化サーバにおいて消失訂正符号化されるファイルフラグメントに最終的にさらに分解されることになる部分またはファイルスライスへのコンテンツプロバイダのメディアファイルスライスの分割。
2)クライアントにおいてデータの再構成を可能にするためにファイルがどのように分割されたかを記述する、ファイルスライスのマップの作成。このマップはメタデータファイルに記憶される。
3)追加のデータセキュリティのためのファイルスライスのオプションの暗号化。
4)データストレージのサイズを縮小し、かつ、転送速度を改善するためのファイルスライスのオプションの圧縮。
5)エラー訂正およびデータ回復の向上を可能にするためのファイルスライスの消失訂正符号化。スライスは消失訂正符号化プロセスによってファイルスライスフラグメントに分けられる。
6)ファイルスライスフラグメントをファイルスライスに再構成するために必要とされる、該フラグメントのマップの作成。このマップは第2のメタデータファイルに記憶される。
7)追加のデータセキュリティのためのファイルスライスフラグメントのオプションの暗号化。
8)ストレージ空間要件を低減し、かつ、転送速度を改善するためのファイルスライスフラグメントのオプションの圧縮。
9)クライアントデバイスにおけるファイルスライスフラグメントの復号、および、クライアントメディアプレーヤ(またはブラウザ)において再生するために、ファイルスライスへ、次いでメディアファイル全体への再構成。フラグメントは、適正な順序でスライスにアセンブルされなければならず、該スライスは、適正な順序でファイル全体にアセンブルされなければならない。クライアントソフトウェアは、2つのメタデータファイルによって提供されるマッピング情報を使用してこれらの2つの段階においてメディアファイルを再構成する。
この技術の基本構造は以下の4つの層によって実装されるように視覚化されてよい。
1.CSP(図1を参照)は、コンテンツプロバイダのメディアファイルを、ファイルスライスにスライス処理し、オプションで該スライスを暗号化し、スライスが元のメディアファイルにどのように再構成できるかについてのマップでメタデータファイルを生成する。メタデータファイルはまた、それぞれのファイルスライスが、該スライスを適正な順序でアセンブルするために必要とされる順序についての情報を維持する。
2.FEDP(図1を参照)は、認識できない部分を作り出す消失訂正符号化を使用して、それぞれのファイルスライスをファイルスライスフラグメントに分解する。例示の実施形態では、消失訂正符号化はデータ冗長性の30%を加える。第2のメタデータファイルは、ファイルスライスフラグメントがファイルスライスにどのように再構成されるかをマッピングする。第2のメタデータファイルはまた、クライアントデバイスにおけるフラグメントの再生中、スライスを適正な順序でアセンブルするために必要とされる各フラグメントの順序についての情報を維持する。
3.SNN(図1を参照)は、データフラグメントを分散させるために使用されるさまざまなストレージノードである。ストレージノードは、必ずしもクラウドにおける全サーバではない。該ノードは、データセンタ、コンピュータにおけるハードディスク、モバイルデバイス、または、データストレージ可能な何らかの他のマルチメディアデバイスであってよい。これらのストレージノードの数および識別は、最も低い平均待ち時間および最良の可用性を有するノードによってストレージ構成の待ち時間およびセキュリティを最適化するためにコンテンツプロバイダによって選択できる。
4.現在の技術のストリーミングメディアプレーヤソフトウェアより優位に立って実装できるエンドユーザクライアントデコーダ(ECD)。この第4の層は、コンテンツプロバイダにストリーミングメディアに対する要求を開始し、次いで、層(1)および(2)に形成される2つのメタデータファイルから導出されるマッピングファイルを受信し、それら層より上で、メディアファイルの再生またはストレージのために、ECDはファイルスライスフラグメントをスライスに、かつ、該スライスを元のメディアファイルにアセンブルできる。明らかなように、メディアファイルは要求に応じてメディアコンテンツを再生するために必要とされる適正な順序でアセンブルされなければならない。クライアントが完全なファイルをダウンロードするためのストリームされたメディアに対する購入権を有する場合、ECDは、元のメディアファイルを、完全にダウンロードすると再生およびアセンブル両方を行うことになる。クライアントがメディアファイルを再生する権利しか有さない場合、ECDは適正な順序でメディアファイルの再生のみを行い、ファイルスライスフラグメントを完全なファイルにこれまでにアセンブルすることなく可能とされる再生のために該フラグメントを記憶することになる。ECDはまた、ほとんどの場合生じるに違いないが、ダウンロードレートがメディア再生レートを超える場合、データフラグメントをクライアントデバイスにおけるストレージのバッファに入れることになる。ECDはまた、現時点のメディアファイル再生の前または後に位置するメディアファイルセグメントに対する要求を受信しかつ処理するために、メディアプレーヤと対話することもできる。
追加の性能上の検討事項
特定のメディアファイルについて複数のクライアントからの需要が多い場合、高まる需要を満たすために取ることができる2つの主要なアプローチがある。
第1に、多数のフラグメントストレージノードは消失訂正符号化されたデータフラグメントの分散のために用いられてよい。需要が主に1つの地理的領域から生じる場合、その領域におけるクライアントにとって最良のデータスループットレートで分散させるためのノードを選ぶことが可能である。
第2に、消失訂正符号化ステップのためのより高いレベルの冗長性を選ぶことができる。例えば、30%の冗長性の代わりに、より高いレベルの冗長性が負荷をかけられた状態で確実に大幅に利用可能になるようにするのに役立つことになる。
これら2つのステップは、リアルタイムで生じる際に特定的な需要および負荷要件を満たすために動的に行われてよい。
さらに、ある特定のスライスまたはフラグメントは、可用性を改善するためにより高いレベルの冗長性について選び出されてよい。具体的には、メディアファイルの第1のセグメントは、高まる需要の必要性を満たすために最も高いレベルの冗長性を与えることが可能とされる。
開示された主題はそのある特定の例示の実施形態に関して説明されかつ示されているが、開示された実施形態の特徴は、本開示の範囲内で追加の実施形態を作り出すために、組み合わせ、再構成および修正が可能であり、本発明の趣旨および範囲を逸脱することなく、本明細書に対して、さまざまな他の変更、省略、および追加がなされてよいことは、当業者によって理解されるべきである。

Claims (15)

  1. i)それぞれが一意に割り当てられた識別子を有するスライスにそれぞれ分離されたデータファイルを、および、ii)前記一意の識別子にそれぞれ関連付けられたマップを記憶および処理する方法であって、
    前記マップはクライアントのデータセンタとストレージノードネットワークに記憶され、
    データミクサアルゴリズム(DMA)を適用する少なくとも1つのプロセッサを使用して、サイズL=|F|のオブジェクトFを、それぞれのサイズがL/m(m<n)のn個の認識できない部分F、F、…Fにコード化することを含み、
    任意のm個の部分のコレクションから復元でき、
    前記オブジェクトFにおいてm個の部分より少ないものから明示的に復元できるデータはなく、
    前記DMAの少なくとも一部は順方向エラー訂正コード(FEC)を含み、
    前記FECからの出力は入力記号を包含せず、
    さらに、前記FECからの出力は、m個の記号のメッセージをn個の記号のより長いメッセージに変換して、元のメッセージが長さmの前記n個の記号のサブセットから回復できるようにする、方法。
  2. 少なくとも1つのプロセッサを使用して、実行される時に、プロセッサが、データを前記スライスに、一部は前記認識できない部分に、および、一部は前記認識できない部分から物理的に離れたロケーションに再構成可能にする少なくともコードの一部を記憶することをさらに含む、請求項1に記載の方法。
  3. 前記スライスを前記認識できない部分にコード化することは、複数の分散されたロケーションで生じさせる、請求項1に記載の方法。
  4. 少なくとも1つのプロセッサを使用して、複数のストレージユニットの間で前記認識できない部分を分散することであって、前記データファイルのうちの任意の1つを復元するのに十分なデータを有するストレージユニットは1つもない、分散することをさらに含む、請求項1に記載の方法。
  5. 少なくとも1つのプロセッサを使用して、オブジェクトFを、それぞれのサイズがL/mのm個のスライスS 、S 、…S に分けることであって、前記m個のスライスは、
    (S 、S 、…S )・G m×n =(F 、F 、…F
    のように、m−of−nミクサコードを使用してn個の認識できない部分F 、F 、…F にコード化される、分けることをさらに含み、式中、G m×n は前記ミクサコードのジェネレータ行列であり、以下の条件:
    1)G m×n のいずれのカラムもm×m恒等行列のいずれのカラムにも等しくない、
    2)G m×n の任意のm個のカラムはm×m正則行列を形成する、および、
    3)そのジェネレータ行列G m×n の任意の正方部分行列は正則である、を満たす、請求項1に記載の方法。
  6. 1)ジェネレータ行列がG m×(m+n) =(C m×m |D m×n )である、任意のm−of−(m+n)ミクサコードを選ぶこと、
    2)ジェネレータ行列が
    であるm−of−nミクサコードを採用するように前記DMAを構築することによって、任意のm−of−(m+n)ミクサコードから強力な機密性によって前記データミクサアルゴリズムを構築することをさらに含む、請求項1に記載の方法。
  7. 前記ジェネレータ行列はコーシー行列またはヴァンデルモンド行列である、請求項6に記載の方法。
  8. 請求項1に記載のステップを行うように動作する1つまたは複数のプロセッサを含む、請求項1に記載のステップを行うためのストレージおよび処理システム。
  9. 前記1つまたは複数のプロセッサは請求項2に記載のステップを行うように動作する、請求項8に記載のシステム。
  10. 前記1つまたは複数のプロセッサは請求項3に記載のステップを行うように動作する、請求項8に記載のシステム。
  11. 前記1つまたは複数のプロセッサは請求項4に記載のステップを行うように動作する、請求項8に記載のシステム。
  12. 前記1つまたは複数のプロセッサは請求項5に記載のステップを行うように動作する、請求項8に記載のシステム。
  13. 前記1つまたは複数のプロセッサは請求項6に記載のステップを行うように動作する、請求項8に記載のシステム。
  14. 前記1つまたは複数のプロセッサは請求項7に記載のステップを行うように動作する、請求項13に記載のシステム。
  15. メディアコンテンツを処理する方法であって、
    前記メディアコンテンツを複数のファイルスライスに分離するステップと、
    前記ファイルスライスからメディアコンテンツを再構成するために第1のメタデータを生成して、クライアントのデータセンタとストレージノードネットワークに記憶されるステップと、
    前記ファイルスライスを消失訂正符号化するステップであって、前記消失訂正符号化にはデータミクサアルゴリズム(DMA)が用いられ、前記DMAの少なくとも一部は順方向エラー訂正コード(FEC)を含み、前記FECからの出力は入力記号を包含せず、前記スライスは別個のファイルスライスフラグメントに分けられ、さらに、前記メディアコンテンツは前記消失訂正符号化されたファイルスライスフラグメントから認識できない、消失訂正符号化するステップと、
    前記ファイルスライスフラグメントから前記ファイルスライスを再構成するために第2のメタデータを生成して、ストレージノードネットワークに記憶されるステップと、
    前記ファイルスライスフラグメントを複数の分散型ネットワーク化ストレージノードに送るステップであって、前記ノードから、前記メディアコンテンツが前記第2のメタデータを使用して取り出されかつ復元可能である、送るステップと、
    クライアントデコーダにおいて、前記ネットワーク化ストレージノードから前記ファイルスライスフラグメントを受信するステップと、
    前記第1及び第2のメタデータに従って前記メディアコンテンツを復元するステップと、を含み、
    前記メディアコンテンツを復元するステップは前記メディアコンテンツの再生中に同時に行われる、方法。
JP2016565386A 2014-05-13 2015-05-11 分散型セキュリティ保護データストレージ、およびストリーミングメディアコンテンツの送信 Expired - Fee Related JP6296316B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461992286P 2014-05-13 2014-05-13
US61/992,286 2014-05-13
US201462053255P 2014-09-22 2014-09-22
US62/053,255 2014-09-22
PCT/US2015/030163 WO2015175411A1 (en) 2014-05-13 2015-05-11 Distributed secure data storage and transmission of streaming media content

Publications (2)

Publication Number Publication Date
JP2017523493A JP2017523493A (ja) 2017-08-17
JP6296316B2 true JP6296316B2 (ja) 2018-03-20

Family

ID=54480500

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016565386A Expired - Fee Related JP6296316B2 (ja) 2014-05-13 2015-05-11 分散型セキュリティ保護データストレージ、およびストリーミングメディアコンテンツの送信

Country Status (14)

Country Link
US (1) US20170048021A1 (ja)
EP (1) EP3143525A4 (ja)
JP (1) JP6296316B2 (ja)
KR (1) KR101896048B1 (ja)
CN (1) CN106462605A (ja)
AU (1) AU2015259417B2 (ja)
BR (1) BR112016026524A2 (ja)
CA (1) CA2948815A1 (ja)
EA (1) EA031078B1 (ja)
IL (1) IL248808A (ja)
MX (1) MX364334B (ja)
PH (1) PH12016502261A1 (ja)
SG (1) SG11201609471TA (ja)
WO (1) WO2015175411A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7152723B2 (ja) 2020-02-04 2022-10-13 株式会社Terada Oaタップ格納ボックス

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9256904B1 (en) 2008-08-14 2016-02-09 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US10735137B2 (en) 2016-03-15 2020-08-04 ClineHair Commercial Endeavors Distributed storage system data management and security
GB2532039B (en) 2014-11-06 2016-09-21 Ibm Secure database backup and recovery
US11188665B2 (en) * 2015-02-27 2021-11-30 Pure Storage, Inc. Using internal sensors to detect adverse interference and take defensive actions
US10437676B2 (en) * 2015-02-27 2019-10-08 Pure Storage, Inc. Urgent reads and using data source health to determine error recovery procedures
JP6055023B2 (ja) * 2015-05-11 2016-12-27 レノボ・シンガポール・プライベート・リミテッド クラウド環境にデータを保存する情報処理装置、端末装置および保存方法
US10891058B2 (en) * 2015-05-29 2021-01-12 Pure Storage, Inc. Encoding slice verification information to support verifiable rebuilding
US10235240B2 (en) * 2015-07-03 2019-03-19 Acronis International Gmbh System and method of reliable distributed data storage with controlled redundancy
US10229004B2 (en) * 2015-07-31 2019-03-12 International Business Machines Corporation Data transfer priority levels
US11782789B2 (en) 2015-07-31 2023-10-10 Pure Storage, Inc. Encoding data and associated metadata in a storage network
US10375144B2 (en) * 2015-09-28 2019-08-06 Sony Corporation Uploading over parallel requests
EP3331204A4 (en) * 2015-09-30 2018-08-29 Ntt Docomo, Inc. Service allocation determining method
US10757154B1 (en) 2015-11-24 2020-08-25 Experian Information Solutions, Inc. Real-time event-based notification system
KR102482324B1 (ko) * 2016-01-05 2022-12-29 삼성전자주식회사 클라우드 스토리지 서비스를 지원하는 무선 통신 시스템에서 파일 송/수신 장치 및 방법
US10931402B2 (en) 2016-03-15 2021-02-23 Cloud Storage, Inc. Distributed storage system data management and security
US10116629B2 (en) 2016-05-16 2018-10-30 Carbonite, Inc. Systems and methods for obfuscation of data via an aggregation of cloud storage services
US10356158B2 (en) 2016-05-16 2019-07-16 Carbonite, Inc. Systems and methods for aggregation of cloud storage
US11100107B2 (en) 2016-05-16 2021-08-24 Carbonite, Inc. Systems and methods for secure file management via an aggregation of cloud storage services
US10404798B2 (en) * 2016-05-16 2019-09-03 Carbonite, Inc. Systems and methods for third-party policy-based file distribution in an aggregation of cloud storage services
CN106170014A (zh) * 2016-07-11 2016-11-30 安徽斗转星移信息科技有限公司 一种云存储系统和方法
EP3321846A1 (en) * 2016-11-15 2018-05-16 Mastercard International Incorporated Systems and methods for secure biometric sample raw data storage
US10491378B2 (en) * 2016-11-16 2019-11-26 StreamSpace, LLC Decentralized nodal network for providing security of files in distributed filesystems
US11227001B2 (en) 2017-01-31 2022-01-18 Experian Information Solutions, Inc. Massive scale heterogeneous data ingestion and user resolution
CN108696559B (zh) * 2017-04-11 2021-08-20 华为技术有限公司 流处理方法及装置
SG11201909731SA (en) * 2017-04-27 2019-11-28 Financial & Risk Organisation Ltd Systems and methods for distributed data mapping
US10430350B1 (en) * 2017-06-27 2019-10-01 Wells Fargo Bank, N.A. Secure storage of data through a multifaceted security scheme
US10735183B1 (en) 2017-06-30 2020-08-04 Experian Information Solutions, Inc. Symmetric encryption for private smart contracts among multiple parties in a private peer-to-peer network
CN107689926B (zh) * 2017-08-03 2021-01-26 深圳市盛路物联通讯技术有限公司 一种通讯协议的数据传输方法及系统
WO2019033368A1 (zh) * 2017-08-17 2019-02-21 深圳市优品壹电子有限公司 数据存储方法及装置
WO2019037877A1 (en) * 2017-08-25 2019-02-28 Huawei Technologies Co., Ltd. APPARATUS AND METHOD FOR DEDUPLICATING DATA
CN107506153B (zh) * 2017-09-26 2021-07-02 深信服科技股份有限公司 一种数据压缩方法、数据解压方法及相关系统
WO2019125069A1 (ko) * 2017-12-21 2019-06-27 바스아이디 랩 재팬 컴퍼니 리미티드 블록체인을 이용한 개인정보 분리 후 조합을 통한 인증 시스템
WO2019125041A1 (ko) * 2017-12-21 2019-06-27 바스아이디 랩 재팬 컴퍼니 리미티드 블록체인을 이용한 개인정보 분리 후 분산저장을 통한 인증 시스템
WO2019125081A1 (ko) * 2017-12-21 2019-06-27 문인식 블록체인을 이용한 일회성 접근 권한 부여 시스템
WO2019124610A1 (ko) * 2017-12-21 2019-06-27 문인식 블록체인을 이용한 개인정보 분리 후 분산 저장 및 조합을 통한 인증 방법
KR102288521B1 (ko) * 2017-12-22 2021-08-09 주식회사 케이티 블록체인 기반의 데이터 저장 장치 및 방법
CN109995821A (zh) * 2017-12-29 2019-07-09 中移(苏州)软件技术有限公司 文件上传的方法及系统、客户端、服务器、对象存储系统
MA51797A (fr) 2018-02-07 2020-12-16 Medicapture Inc Système et procédé de stockage décentralisé de données
CN108551450B (zh) * 2018-04-18 2021-04-20 何小林 一种基于无线协议的数据分段传输方法和系统
CN108777803A (zh) * 2018-06-05 2018-11-09 四川师范大学 广电云平台视频流处理方法、装置、设备及介质
CN108897497B (zh) * 2018-06-29 2021-10-08 吴俊杰 一种无中心的数据管理方法及装置
RU2714219C1 (ru) 2018-09-14 2020-02-13 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для планирования передачи операций ввода/вывода
RU2718215C2 (ru) 2018-09-14 2020-03-31 Общество С Ограниченной Ответственностью "Яндекс" Система обработки данных и способ обнаружения затора в системе обработки данных
RU2731321C2 (ru) 2018-09-14 2020-09-01 Общество С Ограниченной Ответственностью "Яндекс" Способ определения потенциальной неисправности запоминающего устройства
CN109302391B (zh) * 2018-09-21 2021-03-02 深圳市九洲电器有限公司 一种安防数据上传方法及装置、客户端
CN109088729B (zh) * 2018-09-28 2021-03-26 北京金山安全软件有限公司 一种密钥存储方法及装置
RU2721235C2 (ru) 2018-10-09 2020-05-18 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для маршрутизации и выполнения транзакций
RU2714602C1 (ru) 2018-10-09 2020-02-18 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для обработки данных
RU2711348C1 (ru) 2018-10-15 2020-01-16 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для обработки запросов в распределенной базе данных
CN109753809B (zh) * 2018-11-27 2021-07-06 国网浙江省电力有限公司 一种基于云存储系统的电网数据块分割方法
RU2714373C1 (ru) 2018-12-13 2020-02-14 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для планирования выполнения операций ввода/вывода
RU2749649C2 (ru) 2018-12-21 2021-06-16 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для планирования обработки операций ввода/вывода
RU2720951C1 (ru) * 2018-12-29 2020-05-15 Общество С Ограниченной Ответственностью "Яндекс" Способ и распределенная компьютерная система для обработки данных
US11620403B2 (en) 2019-01-11 2023-04-04 Experian Information Solutions, Inc. Systems and methods for secure data aggregation and computation
EP3918484A4 (en) 2019-01-29 2023-03-29 Cloud Storage, Inc. METHOD FOR REPAIRING ENCODE AND MEMORY NODES FOR MINIMUM MEMORY REGENERATION CODES FOR DISTRIBUTED MEMORY SYSTEMS
WO2020160259A1 (en) * 2019-01-30 2020-08-06 Practechal Solutions,Inc A method and system for surveillance system management
RU2746042C1 (ru) 2019-02-06 2021-04-06 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для передачи сообщения
CN109936769B (zh) * 2019-04-23 2021-06-04 深圳大学 一种视频卡顿检测方法、检测系统、移动终端及存储装置
EP3973687A4 (en) * 2019-05-22 2023-09-13 Myota, Inc. METHOD AND SYSTEM FOR DISTRIBUTED DATA STORAGE WITH ENHANCED SECURITY, RESILIENCE AND CONTROL
KR102295263B1 (ko) * 2019-06-13 2021-08-30 주식회사 한컴위드 블록체인을 기반으로 데이터의 분산 암호화 관리를 가능하게 하는 데이터 관리 장치 및 그 동작 방법
US10990324B2 (en) 2019-06-25 2021-04-27 Western Digital Technologies, Inc. Storage node processing of predefined data functions
US11055018B2 (en) 2019-06-25 2021-07-06 Western Digital Technologies, Inc. Parallel storage node processing of data functions
US11281531B2 (en) 2019-06-25 2022-03-22 Western Digital Technologies, Inc. Serial storage node processing of data functions
US11314593B2 (en) * 2019-06-25 2022-04-26 Western Digital Technologies, Inc. Storage node processing of data functions using overlapping symbols
CN110381061A (zh) * 2019-07-19 2019-10-25 广东省新一代通信与网络创新研究院 文件的多云存储方法、下载方法、装置及存储介质
SG11202002912XA (en) * 2019-08-01 2021-03-30 Advanced New Technologies Co Ltd Shared blockchain data storage based on error correction code
US11277467B1 (en) * 2019-09-30 2022-03-15 Cadence Design Systems, Inc. Method, system, and product for orchestrating uploads of very large design files to selected cloud providers in a multi-cloud arrangement
KR102275389B1 (ko) * 2019-10-22 2021-07-08 한국항공대학교산학협력단 블록 동기화 과정 생략 및 원격 저장소 제공을 위한 분산파일시스템 활용 블록 데이터 매핑 방법 및 노드 장치
US11308041B2 (en) * 2019-10-31 2022-04-19 Seagate Technology Llc Distributed secure edge storage network utilizing redundant heterogeneous storage
KR102496436B1 (ko) * 2019-12-30 2023-02-06 주식회사 안랩 블록체인 네트워크에서 저장소에 복수의 데이터 조각들을 저장하는 방법 및 저장된 복수의 데이터 조각들을 수신하는 방법
CN111459940B (zh) * 2020-04-02 2023-09-19 中电工业互联网有限公司 一种高效可靠的数据集成方法
CN114070576B (zh) * 2020-08-07 2024-03-08 腾讯科技(深圳)有限公司 内容显示方法、内容生成方法、装置、设备及存储介质
JP2022074807A (ja) * 2020-11-05 2022-05-18 株式会社日立製作所 ファイルストレージ及びコンピュータシステム
CN112612411A (zh) * 2020-12-01 2021-04-06 北京亿智云科技有限公司 基于分布式云存储的数据备份和即时访问的系统及方法
CN112612668A (zh) * 2020-12-24 2021-04-06 上海立可芯半导体科技有限公司 一种数据处理方法、装置和计算机可读介质
CN112860189B (zh) * 2021-02-19 2022-12-30 山东大学 一种成本驱动的冷热分层云存储冗余存储方法与系统
CN113194330A (zh) * 2021-03-25 2021-07-30 电子科技大学 一种碎片化多云视频资源管理方法及系统
US11936699B2 (en) 2022-06-03 2024-03-19 Micro Focus Llc Optimal usage of content storage in a managed network
CN115982503B (zh) * 2023-02-07 2023-10-13 深圳慧梧科技有限公司 一种基于云平台的网站信息采集方法及系统

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6307868B1 (en) * 1995-08-25 2001-10-23 Terayon Communication Systems, Inc. Apparatus and method for SCDMA digital data transmission using orthogonal codes and a head end modem with no tracking loops
US6665308B1 (en) * 1995-08-25 2003-12-16 Terayon Communication Systems, Inc. Apparatus and method for equalization in distributed digital data transmission systems
JP2007018563A (ja) * 2005-07-05 2007-01-25 Toshiba Corp 情報記憶媒体、情報記録方法及び装置、情報再生方法及び装置
US8694668B2 (en) * 2005-09-30 2014-04-08 Cleversafe, Inc. Streaming media software interface to a dispersed data storage network
US8285878B2 (en) * 2007-10-09 2012-10-09 Cleversafe, Inc. Block based access to a dispersed data storage network
US7574579B2 (en) * 2005-09-30 2009-08-11 Cleversafe, Inc. Metadata management system for an information dispersed storage system
JP4772752B2 (ja) * 2007-06-14 2011-09-14 日本電信電話株式会社 分散型マルチメディアサーバシステム、そのためのバッファサーバ、およびその分割マルチメディア情報蓄積配信方法
US20100218037A1 (en) * 2008-09-16 2010-08-26 File System Labs Llc Matrix-based Error Correction and Erasure Code Methods and Apparatus and Applications Thereof
US7818445B2 (en) * 2008-10-15 2010-10-19 Patentvc Ltd. Methods and devices for obtaining a broadcast-like streaming content
US8572282B2 (en) * 2009-10-30 2013-10-29 Cleversafe, Inc. Router assisted dispersed storage network method and apparatus
US8352831B2 (en) * 2009-12-29 2013-01-08 Cleversafe, Inc. Digital content distribution utilizing dispersed storage
US20110314070A1 (en) * 2010-06-18 2011-12-22 Microsoft Corporation Optimization of storage and transmission of data
US8473778B2 (en) * 2010-09-08 2013-06-25 Microsoft Corporation Erasure coding immutable data
US8627066B2 (en) * 2011-11-03 2014-01-07 Cleversafe, Inc. Processing a dispersed storage network access request utilizing certificate chain validation information
US8868647B2 (en) * 2012-01-11 2014-10-21 Alcatel Lucent Reducing latency and cost in resilient cloud file systems
WO2014005279A1 (zh) * 2012-07-03 2014-01-09 北京大学深圳研究生院 一种可精确再生的分布式存储码的构建方法及装置
CN103281400A (zh) * 2013-06-18 2013-09-04 清华大学 用于云存储网关的数据切分编码和恢复方法
US9241044B2 (en) * 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7152723B2 (ja) 2020-02-04 2022-10-13 株式会社Terada Oaタップ格納ボックス

Also Published As

Publication number Publication date
WO2015175411A1 (en) 2015-11-19
MX2016014221A (es) 2017-05-04
AU2015259417B2 (en) 2016-09-22
EA201650049A1 (ru) 2017-04-28
PH12016502261A1 (en) 2017-02-06
CA2948815A1 (en) 2015-11-19
AU2015259417A1 (en) 2016-09-01
CN106462605A (zh) 2017-02-22
EP3143525A1 (en) 2017-03-22
JP2017523493A (ja) 2017-08-17
EA031078B1 (ru) 2018-11-30
WO2015175411A9 (en) 2016-07-07
IL248808A (en) 2017-07-31
BR112016026524A2 (pt) 2017-08-15
EP3143525A4 (en) 2017-03-22
US20170048021A1 (en) 2017-02-16
SG11201609471TA (en) 2016-12-29
KR101896048B1 (ko) 2018-09-06
KR20170010787A (ko) 2017-02-01
MX364334B (es) 2019-04-23

Similar Documents

Publication Publication Date Title
JP6296316B2 (ja) 分散型セキュリティ保護データストレージ、およびストリーミングメディアコンテンツの送信
US20190036648A1 (en) Distributed secure data storage and transmission of streaming media content
US10613776B2 (en) Appyling multiple hash functions to generate multiple masked keys in a secure slice implementation
US10656998B2 (en) End-to-end secure data storage in a dispersed storage network
US10387249B2 (en) Migrating data slices within a dispersed storage network
US10326740B2 (en) Efficient secret-key encrypted secure slice
JP6704856B2 (ja) 通信ネットワーク上の情報の安全な記憶と加速された伝送
US20170091031A1 (en) End-to-end secure data retrieval in a dispersed storage network
US10180912B1 (en) Techniques and systems for data segregation in redundancy coded data storage systems
US9215476B2 (en) Media distribution to a plurality of devices utilizing buffered dispersed storage
US10693640B2 (en) Use of key metadata during write and read operations in a dispersed storage network memory
US20130305046A1 (en) System and Method for Virtual Machine Data Protection in a Public Cloud
US20130136258A1 (en) Encrypting Data for Storage in a Dispersed Storage Network
US11005663B2 (en) Secure audit scheme in a distributed data storage system
US9413393B2 (en) Encoding multi-media content for a centralized digital video storage system
US10055283B2 (en) Securely distributing random keys in a dispersed storage network
US11336428B1 (en) Blinded passwords for a distributed storage system
US9940474B1 (en) Techniques and systems for data segregation in data storage systems
US20190007380A1 (en) De-duplication of data streams
US10360391B2 (en) Verifiable keyed all-or-nothing transform
US10402271B2 (en) Overcoming bottlenecks in zero information gain (ZIG) rebuild operations

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170905

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20171020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171208

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: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180207

R150 Certificate of patent or registration of utility model

Ref document number: 6296316

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees