JP2024038276A - ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法 - Google Patents

ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法 Download PDF

Info

Publication number
JP2024038276A
JP2024038276A JP2024000847A JP2024000847A JP2024038276A JP 2024038276 A JP2024038276 A JP 2024038276A JP 2024000847 A JP2024000847 A JP 2024000847A JP 2024000847 A JP2024000847 A JP 2024000847A JP 2024038276 A JP2024038276 A JP 2024038276A
Authority
JP
Japan
Prior art keywords
metadata
data
media object
storage
object data
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.)
Pending
Application number
JP2024000847A
Other languages
English (en)
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
Priority claimed from PCT/US2019/044534 external-priority patent/WO2020028583A1/en
Application filed by マーベル ワールド トレード リミテッド filed Critical マーベル ワールド トレード リミテッド
Publication of JP2024038276A publication Critical patent/JP2024038276A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/41Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • G06F12/1054Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17331Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
    • 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/11File system administration, e.g. details of archiving or snapshots
    • G06F16/116Details of conversion of file system types or formats
    • 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/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/383Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/387Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/483Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/683Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9038Presentation of query results
    • 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
    • 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/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device
    • 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/254Distributed memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Memory System (AREA)

Abstract

【課題】ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するデータストレージコントローラ及び方法はを提供する。【解決手段】ストレージデバイスに結合され、かつ、ホストデバイスから遠く離れて配置されるストレージ制御デバイスであって、ホストデバイスからメディアオブジェクトデータを受信し、メディアオブジェクトデータのタイプを識別し、識別されたタイプに基づいて、ストレージ制御デバイスの計算エンジンにより使用される複数の計算モデルの中から計算モデルを選択する。計算エンジンは、選択された計算モデルを使用して、メディアオブジェクトデータを記述するメタデータを生成し、メタデータを、メディアオブジェクトデータとは別個にストレージデバイスから選択的に検索できるようにストレージデバイスに記憶する。【選択図】図7

Description

[関連出願の相互参照]
本開示は、同時係属の共通に付与された、2018年7月31日に出願された米国仮出願第62/712,823号、2018年8月3日に出願された米国仮出願第62/714,563号、2018年8月8日に出願された米国仮出願第62/716,269号、2018年9月4日に出願された米国仮出願第62/726,847号、および2018年9月4日に出願された米国仮出願第62/726,852号の米国特許法第119条(e)に基づく利益を主張するものである。以下の共通に付与された米国非仮特許出願の各々も、前述の米国仮特許出願の利益を主張するものであり、これと同時に出願されている。
1.米国特許出願第16/264,473号、
2.米国特許出願第16/264,248号、
3.米国特許出願第16/262,975号、および、
4.米国特許出願第16/262,971号
前述の仮特許出願および非仮特許出願の各々は、それぞれの全体がここで参照により本明細書に組み込まれる。
[使用分野]
本開示は、計算エンジンを使用したストレージエッジにおけるメディアオブジェクトデータを記述するメタデータの生成に関する。
本明細書で提供する背景説明は、本開示の文脈を一般的に提示することを目的としている。本明細書の発明者の研究は、その研究がこの背景欄に記載されている範囲で、および、出願時に先行技術として別段の資格を持たない説明の側面は、本開示に対する先行技術であることが明示的にも暗示的にも認められない。
メディアデータなどの非構造化データを記述するメタデータを生成するための典型的なシステムは、取り込みサーバ(ingest server)または他の集中型ネットワーク処理位置などの、データが最初に受信される位置(取り込みポイント(ingest point))で、生成することができる。取り込みポイントは、システムのユーザと物理的に併置されてもよいし、クラウドストレージの位置であってもよい。例えば、映像データは、メディアのトランスコード、および、メディアを記述するメタデータの生成の両方を担うサーバで、カメラまたは他の映像ソースから受信され得る。これらのシステムは通常、受信またはトランスコードされたメディアデータを有するメディアデータストリームにメタデータを埋め込み、その結果、メディアデータを記述する全てのメタデータにアクセスするためにメディアデータ全体を検索する必要がある。これによって、メタデータを埋め込むかまたは含めるために処理されるメディアデータの量に起因して、取り込みポイントにおける負荷が増加し得る。典型的なシステムは、取り込みポイントまたは集中型サーバでメディアデータを記述するメタデータを生成する。これによって、集中型サーバの取り込みポイントからストレージに転送されるデータの量が増加し、その結果、ストレージ操作の実行に必要なネットワーク帯域幅が増加し得る。例えば、遠く離れて配置される処理位置と記憶位置との間で大量のデータを伝送する必要がある場合がある。
本明細書に記載の実装は、メディアオブジェクトデータを記憶および管理するための装置および方法を提供する。ストレージデバイスに結合され、かつ、ホストデバイスから遠く離れてストレージエッジに配置される、ストレージ制御デバイスが、ホストデバイスからメディアオブジェクトデータを受信する。ストレージ制御デバイスは、メディアオブジェクトデータのタイプを識別し、識別されたタイプに基づいて、ストレージ制御デバイスの計算エンジンにより使用される複数の計算モデルの中から計算モデルを選択する。計算エンジンは、選択された計算モデルを使用して、メディアオブジェクトデータを記述するメタデータを生成する。メタデータは、メディアオブジェクトデータとは別個にストレージデバイスから選択的に検索できるようにストレージデバイスに記憶される。
幾つかの実装では、ストレージ制御デバイスは、データ入力インタフェースを使用してメディアオブジェクトデータにアクセスする。各計算モデルは、計算モデルが構成されるデータ形式を識別する、関連付けられる入力データインタフェースパラメータを有する。ストレージ制御デバイスは、入力データインタフェースパラメータを使用してメディアオブジェクトデータにアクセスし、メディアオブジェクトデータを識別されたデータ形式に変換する。
幾つかの実装では、各計算モデルは、関連付けられるハードウェアインタフェースパラメータを有する。ストレージ制御デバイスは、ハードウェアインタフェースパラメータを検索し、ハードウェアインタフェースパラメータをハードウェアインタフェースに適用する。ストレージ制御デバイスは、ハードウェアインタフェースを使用して第1物理的接続からメディアオブジェクトデータにアクセスし、ハードウェアインタフェースを使用して第2物理的接続を介してストレージデバイスにメディアオブジェクトデータおよびメタデータを記憶する。
幾つかの実装では、各計算モデルは、関連付けられる復号パラメータを有する。ストレージ制御デバイスは、復号パラメータを検索し、復号パラメータを使用してメディアオブジェクトデータを復号する。
幾つかの実装では、ストレージ制御デバイスは、第1計算モデルを使用してメタデータが既に生成されているメディアオブジェクトデータをストレージデバイスから検索する。ストレージ制御デバイスは、第1計算モデルを識別し、第2計算モデルを選択して、第1メタデータとは異なる第2メタデータを生成する。ストレージ制御デバイスは、第2メタデータを、第1メタデータおよびメディアオブジェクトデータから選択的に検索できるように記憶することができる。ストレージ制御デバイスは、第1メタデータおよび第2メタデータを組み合わせて、組み合わされたメタデータを生成し、組み合わされたメタデータを、メディアオブジェクトデータから選択的に検索できるように記憶することができる。
幾つかの実装では、ストレージ制御デバイスは、1または複数の基準を満たすメディアオブジェクトデータの要求をホストデバイスから受信する。この要求に応答して、幾つかの実装では、ストレージ制御デバイスは、メディアオブジェクトデータを記述するメタデータのみを、メディアオブジェクトデータとは別個にストレージデバイスから検索する。ストレージ制御デバイスは、検索されたメタデータに基づいて、1または複数の基準を満たすメディアオブジェクトデータの1または複数の部分を識別する。次に、ストレージ制御デバイスは、メディアオブジェクトデータの識別された部分のみを、メディアオブジェクトデータを記述するメタデータとは別個にストレージデバイスから検索する。
幾つかの実装では、ストレージ制御デバイスは、メディアオブジェクトデータのコピーを生成し、メディアオブジェクトデータを、記憶するためにストレージデバイスに提供すること、および、メディアオブジェクトデータのコピーを、処理してメタデータを生成するために計算エンジンに提供することを同時に行う。
幾つかの実装では、ストレージ制御デバイスは、メディアオブジェクトデータを、互いに別々に選択的に検索できるように論理的に分離された方式で記憶する。
添付の図面と併せて以下の詳細な説明を検討することで、本開示の更なる特徴、その性質、および様々な利点が明らかになるであろう。ここで、同様の参照文字は、全体を通じて同様の部分を指す。
本開示の幾つかの実装に係る、非構造化データオブジェクトを記述するメタデータを生成するためのコンポーネントおよびそれらの間のデータフローを示すブロック図である。
本開示の幾つかの実装に係る、非構造化データオブジェクトを記述するメタデータを生成するためのコンポーネントおよびそれらの間のデータフローを示す別のブロック図である。
本開示の幾つかの実装に係る、不揮発性ストレージデバイスへのメタデータおよびメディアデータの記憶を示すブロック図である。
本開示の幾つかの実装に係る、不揮発性ストレージデバイスへのメタデータおよびメディアデータの記憶を示す別のブロック図である。
本開示の幾つかの実装に係る、計算エンジンのコンポーネントを示すブロック図である。
本開示の幾つかの実装に係る、計算モデルが抽出されるデータ構造のコンポーネントを示すブロック図である。
本開示の幾つかの実装に係る、非構造化データオブジェクトを記述するメタデータを生成するためのプロセスを表すフローチャートである。
本開示の幾つかの実装に係る、データオブジェクトを記述するメタデータを生成するための別のプロセスを表すフローチャートである。
本開示の幾つかの実装に係る、データオブジェクトを記述する別個に検索されたメタデータに基づいてデータオブジェクトの一部を検索するためのプロセスを表すフローチャートである。
本明細書に記載の実装は、ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するための装置および方法を提供する。ストレージエッジとは、1または複数のソリッドステートストレージドライブまたはハードディスクドライブなどのストレージデバイスに対してローカルな環境を指す。ストレージエッジに配置されるストレージ制御デバイスは、1または複数のストレージデバイスにおけるデータの記憶および検索を制御するために使用される。各ストレージデバイスは、それぞれのストレージ制御デバイスに結合され、それぞれのストレージ制御デバイスにより制御され得る。代替的に、幾つかのストレージデバイスは、上で組み込まれた米国特許出願第16/264,248号に記載されているようなストレージアグリゲータなどの単一のストレージ制御デバイスに結合され、単一のストレージ制御デバイスにより制御され得る。ストレージ制御デバイスは、記述メタデータがまだ生成されていないメディアオブジェクトなどの非構造化データオブジェクトを受信する。ストレージ制御デバイスの制御回路は、データタイプなどのデータオブジェクトのタイプを識別する。そのタイプに基づいて、複数の計算モデルの中から計算モデルが選択される。計算エンジン、例えば、ストレージエッジまたはストレージデバイスに対してローカルな計算エンジンは、選択された計算モデルを使用して、データオブジェクトを記述するメタデータを生成する。ストレージ制御デバイスは、当該メタデータを、データオブジェクトのデータとは別個に選択的に検索できるようにデータオブジェクト内にまたはデータオブジェクトと関連付けて記憶するために、ストレージデバイスに提供する。メタデータは、データオブジェクトとは別個に検索され得る、ヘッダ内のデータオブジェクトまたはデータオブジェクトの他の個別の部分に埋め込まれ得る。例えば、データオブジェクトは映像データを含んでよく、メタデータはテキストファイルとして生成され得る。ストレージ制御デバイスは、メタデータテキストと映像データとを組み合わせて、論理的に分離されたテキスト部分と映像部分とを有する単一のファイルにする。次に、メタデータは、ファイルのテキスト部分のみにアクセスすることにより別個に検索され得る。代替的に、メタデータは、データオブジェクトのデータとインタリーブされ得る。例えば、映像データに含まれる各キーフレームは、それぞれのキーフレームが適用される映像データの部分を記述する幾らかのメタデータを含む。第3代替案として、メタデータは、物理的に別個のストレージデバイスに記憶されてもよいし、データオブジェクトが記憶されるストレージデバイスの論理的に別個の部分に記憶されてもよい。例えば、データオブジェクトは、第1ソリッドステートドライブに記憶されてよく、メタデータは、第2ソリッドステートドライブに記憶されてよい。別の例として、データオブジェクトは、ソリッドステートドライブの第1パーティションに記憶されてよく、メタデータは、同じソリッドステートドライブの第2パーティションに記憶されてよい。データの任意の他の適切な物理的または論理的な分離が使用されてもよい。
本開示は、ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成し、かつ、当該メタデータを、データオブジェクトのデータとは別個に選択的に検索できるように記憶するための方法およびシステムについて説明する。ストレージ制御デバイスは、制御回路と、適切な人工知能(AI)または機械学習(ML)のエンジンなどの計算エンジンとを含む。ストレージ制御デバイスは、ストレージエッジに配置され、ストレージデバイスに記憶されるメディアオブジェクトなどの非構造化データを受信する。ストレージ制御デバイスは、非構造化メディアオブジェクトのメディアデータに関するメタデータを生成し、当該メタデータを、非構造化メディアデータとは別個に選択的に検索できるようにストレージデバイスに記憶する。
本明細書で使用する場合、「ストレージエッジ」という用語は、不揮発性ストレージデバイスに対してローカルなモジュールまたはコンポーネントを意味する。例えば、不揮発性メモリの1または複数のインスタンスでデータを記憶または検索するために1または複数のストレージデバイスの動作を制御するコントローラが、ストレージエッジ上に配置される。ストレージエッジは、例えば、専用ストレージデバイスまたはストレージネットワークにあり、例えば、ホストコンピュータまたはデータセンタに遠く離れて配置されるプロセッサから分離される。ストレージエッジとリモートホストとの間の通信は、コンピュータネットワーク接続を介して行われる。
本明細書で使用する場合、「メディアデータオブジェクト」、「データオブジェクト」、「メディアオブジェクト」、または「オブジェクト」という用語は、ホストシステム上で実行されるアプリケーションにより発行され、かつ、ストレージデバイス上に記憶され得る、様々なタイプのデータを意味する。「メディアオブジェクト」または「オブジェクト」の例には、以下に限定されるわけではないが、映像、録音物、静止画像、テキストメッセージ、および電子メールなどのテキストオブジェクト、自動車センサおよびモノのインターネット(IoT)センサなどの様々なタイプのセンサから取得されるデータ、データベースオブジェクト、および/または任意の他の適切なオブジェクトが含まれ得る。多くの場合、メディアオブジェクトは構造化されていない。本明細書で使用する場合、「非構造化オブジェクト」という用語は、オブジェクト(例えば、テキストコンテンツ、オーディオコンテンツ、画像コンテンツ、または映像コンテンツ)のメディアコンテンツ(「コンテンツメディアデータ」)が生の形態で提供され、固定フィールド形式に従って予め編成されていないことを意味する。非構造化オブジェクトは、フレームごとのコンテンツまたは他のコンテンツ部分の任意の側面を定義するメタデータで先験的にタグ付けされない。非構造化データは非トランザクショナルであり、その形式は関係データベーススキーマに容易に準拠しない。
本明細書で使用する場合、「メタデータ」という用語は、不揮発性ストレージデバイスに記憶されるメディアオブジェクトの実際のデータコンテンツの概略的表現を指す。「メタデータ」は、実際のデータコンテンツの抽象化レイヤであってよく、データコンテンツの説明または意味をコンパクトな形式で提供する。メタデータは、ほとんどの場合は構造化されていないメディアオブジェクトから、様々な方法で生成され得る。メタデータの例には、ラベル、タグ、データのタイプ、データコンテンツで検出されるオブジェクト/概念/感情、データコンテンツ内の係るオブジェクト/概念/感情の空間的/時間的位置などが含まれ得る。
本明細書で使用する場合、「人工知能(AI)モデル」という用語は、例えば、ディープニューラルネットワークまたは任意のリカレントニューラルネットワークまたはそれらの任意の変形に実装される任意の適切なAIアルゴリズムを指す。幾つかの実装では、AIモデルは、適切には、任意の他の教師あり学習または教師なし学習または強化学習のアルゴリズムである。AIモデルは、「トレーニングセット」、すなわち、メディアオブジェクトの本体と、正確であることが分かっている対応するメタデータとを使用してトレーニングされる。次に、トレーニングされたAIモデルは、他のメディアオブジェクトに関するメタデータを生成するために適用される。本明細書では、予めトレーニングされたAIモデルを受信し、かつ、それを使用してオブジェクトのメタデータを計算する、ソフトウェアまたはハードウェアのモジュールは、「AIエンジン」または「AIインタフェースエンジン」と呼ばれる。幾つかの実装では、幾つかの異なるAIモデルが、構造化されていないか、または部分的に構造化されたメディアオブジェクトに適用される。
本開示の一態様によれば、ストレージ制御デバイスは、インターネットまたは他の適切なネットワーキングプロトコルを使用して、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)などのネットワークを介してホストデバイスから非構造化データを受信する。代替的に、非構造化データは、コンピュータにローカルに接続される撮像デバイス(例えば、映像レコーダ、オーディオレコーダ、センサ)から受信される。係る実装では、ストレージ制御デバイスは、コンピュータのストレージデバイスに組み込まれ、コンピュータの他の部分からバスを介してデータを受信する。ストレージ制御デバイスは、データオブジェクトのコピーを作成し、当該コピーを使用してメタデータを生成するために計算エンジンを使用しながら、元のデータオブジェクトをストレージデバイスに記憶する。メタデータを生成した後、データオブジェクトのコピーは必要なくなる。メタデータは、非構造化データから選択的に検索できる方式で記憶され、データオブジェクトのコピーは、削除されるか、削除のマークが付けられるか、上書きされるか、またはストレージ制御デバイスから除去される。
メタデータは、関連付けられる非構造化データの検索を必要とすることなくメタデータの選択的な検索を容易にするために、以下に説明するように、非構造化データとは別個に記憶される。例えば、メタデータおよび非構造化データは、データファイルまたは他のデータ構造の1または複数の論理的に分離された部分に記憶され得る。ある実装では、メタデータを含む1または複数の部分は、非構造化データの文脈外でストレージ制御デバイスがアクセスおよび読み取りできる自己完結型のデータファイルとして構造化される。更に、メタデータを含む1または複数の部分は、データファイルまたはデータ構造内でタグ付けまたは識別されて、ストレージ制御デバイスがそれらを容易に見つけ、検索できるようにすることができる。更に、メタデータは、それが記述する非構造化データとの関連付けを識別するか、または含む。これによって、ストレージ制御デバイスは、メタデータの確認または分析に基づいて、非構造化データの関連部分を検索することができる。この実装および他の実装は、上で組み込まれた米国特許出願第16/262,971号に更に記載されている。
非構造化データから選択的に検索できる方式でメタデータを記憶すると、インデックス作成機能およびサーチ機能の効率を高めることができる場合がある。非構造化データオブジェクトからメタデータを解析する必要はなく、サーチエンジンまたはインデクサは単独で、メタデータにアクセスするか、またはメタデータを検索することができる。この選択的検索によって、メタデータまたは非構造化データオブジェクトの関連部分を検索するためにアクセスする必要があるデータの量が削減され、サーチ機能もしくはインデックス作成機能、または、メディアオブジェクトの関連部分などの以前に構造化されていなかったデータの関連部分の検索を実行するときの、プロセッサの負荷が軽減される。
ホストデバイスではなくストレージエッジでメタデータを生成すると、ストレージエッジに伝送されるデータが少なくなり、その結果、取り込みポイントまたは中央データ処理センタからの全体的なデータ転送速度が速くなる。例えば、メタデータが取り込みポイント、データ処理センタ、またはクラウドサーバ(すなわち、ストレージエッジに対して遠く離れた位置)で生成される場合は、メタデータはまた、非構造化データオブジェクトと共にストレージエッジに転送されなければならない。これによって、転送されるデータの量が増加するので、データの転送に必要な時間が増加する。別の例として、非構造化データは、最初にメディアを生成することなくストレージに直接伝送されてよく、次に、非構造化データの一部が、メタデータの生成のためにコンピュータネットワークを介してデータ処理センタに返送される。これによって、コンピュータネットワークを介して転送されるデータの量が増加し、全体的なネットワークの速度および/または性能に影響を与える可能性がある。メタデータの生成をストレージエッジに移動することにより、かなり大量の非構造化データについてメタデータを容易に生成することができるので、メタデータを使用して、記憶されている非構造化コンテンツメディアデータの関連部分を識別することが容易になる。より大量のコンテンツメディアを、関連するセグメントについてフィルタリングすることができ、当該関連するセグメントを、ストレージデバイスから転送することができ、非構造化コンテンツメディアデータの膨大な集まり全体を、ストレージからコンピュータネットワークを介してデータセンタ施設に転送することはない。これによって、転送する必要があるコンテンツメディアデータの量の大幅な削減が容易になり、コンテンツメディアデータの当該関連するセグメントのみをより迅速に特定および確認する能力が促進される。従って、非構造化データの関連部分をストレージエッジからの検索に利用できるようにするために必要な時間は、一方でデータセンタの計算エンジンを使用してメタデータを生成するために必要な大量のコンテンツデータメディアをデータセンタ施設に転送するために必要な時間と、ストレージエッジで生成されるメタデータ、および、コンテンツデータの当該関連するセグメントの両方を含む、特定のニーズに応えるための比較的少量のデータをデータ処理施設に転送するために必要な時間との差だけ短縮される。例えば、監視映像で撮像される人々の気分、または、監視映像で撮像される特定の人々または活動の存在にタグを付けるために、監視映像についてメタデータが生成される。更なる分析のために、所望の人物、気分、または活動を含む関連フレームのみを(例えば、データ処理センタまたは人間のオペレータに)送信する必要があるかもしれない。別の例として、ロボットサービスデスクなどで特定の音声シーケンスにタグを付けるために、オーディオ記録についてメタデータが生成される。メタデータの特定の音声シーケンスがサーチされ、録音全体ではなく、関連するシーケンスを含む関連する録音部分のみが施設に送信され、当該施設では、自動化された会話におけるロボットの応答を改善するために、これらの録音部分が分析および使用される。
本開示の別の態様によれば、第1計算モデルを使用して以前にメタデータが生成された、以前に受信された非構造化データが、ストレージデバイスから検索される。第1計算モデルとは異なる第2計算モデルを使用して、検索された非構造化データについて第2メタデータが生成される。第2計算モデルは、第1計算モデルと同じタイプのメタデータをより正確に生成する第1計算モデルの更新バージョンであってよい。第2メタデータは、第1メタデータと比較され、第1メタデータの対応するメタデータとは異なる第2メタデータの任意のメタデータ、または、第1メタデータに存在しない第2メタデータの任意のメタデータが記憶される。代替的に、第2計算モデルは、第1計算モデルとは異なるタイプのメタデータを生成するように構成され得る。第2メタデータは、以前に記憶された非構造化データおよび以前に生成された第1メタデータの両方とは別個に選択的に検索できるように記憶されてもよい。代替的に、第2メタデータは、第1メタデータとマージされ、マージされたメタデータは、以前に記憶された非構造化メディアとは別個に選択的に検索できるように記憶される。
図1は、本開示の幾つかの実装に係る、非構造化データオブジェクトを記述するメタデータを生成するためのコンポーネントおよびそれらの間のデータフローを示すブロック図である。ストレージ制御デバイス102は、ストレージエッジ100に配置される。ストレージ制御デバイスでは、オーディオレコーダ、映像レコーダ、画像センサ(例えば、赤外線センサ)、環境センサ(例えば、温度計)、運動センサ(例えば、加速度計、レーダ、ライダ)、または任意の係るレコーダまたはセンサからのデータが最初に受信されるサーバ(「取り込みサーバ」)などのホストデバイスからネットワークを介して非構造化データオブジェクト104が受信される。
幾つかの実装では、制御回路106が、入力データインタフェースを使用して、非構造化データ104を受信するか、検索するか、または非構造化データ104にアクセスすることができる。入力データインタフェースは、必要に応じて様々なタイプの非構造化データにアクセスするように構成可能である。入力データインタフェースの構成は、入力データインタフェースパラメータを入力データインタフェースに適用することにより実現され得る。図6との関連で以下に説明するように、特定の形式の非構造化データを処理するように構成される特定の計算モデルと関連付けて、入力データインタフェースパラメータが記憶され得る。非構造化データ104が特定の形式以外の形式で受信される場合は、制御回路106は、非構造化データ104を特定の形式に変換して、非構造化データを記述するメタデータの生成を容易にすることができる。例えば、映像データはH.262などの圧縮形式で受信され得るが、計算モデルは、H.264映像データを処理するように構成される。入力データインタフェースパラメータは、必要とされるH.264形式に変換され得る映像圧縮形式のセットを識別し、更には、映像データをH.264形式に変換するために制御回路106により使用される形式変換ツールを供給することができる。別の例として、画像データはJPEG形式で受信され得るが、計算モデルは、ビットマップ形式で画像を処理するように構成される。入力データインタフェースパラメータは、ビットマップ形式への変換に適した入力形式としてJPEGを識別し、制御回路106により使用される変換ツールを提供する。
幾つかの実装では、制御回路106は、ハードウェアインタフェースを使用して、非構造化データ104を受信するか、検索するか、または非構造化データ104にアクセスすることができる。ハードウェアインタフェースは、ストレージ制御デバイス102の様々な物理的または論理的なポートおよび/または接続からデータにアクセスするように構成可能である。ハードウェアインタフェースの構成は、ハードウェアインタフェースパラメータをハードウェアインタフェースに適用することにより実現され得る。図6との関連で以下に説明するように、特定の計算モデルと関連付けてハードウェアインタフェースパラメータが記憶され得る。特定の計算モデルの選択に応答して(例えば、非構造化データの受信前に受信され得る命令118に応答して)、制御回路106は、ハードウェアインタフェースパラメータをハードウェアインタフェースに適用する。ハードウェアインタフェースパラメータは、TCPポート20(FTP)、80(HTTP)、または115(SFTP)などのネットワーク接続の特定の論理的ポートを指定することができる。ハードウェアインタフェースパラメータは、イーサネット(登録商標)ポート、シリアルポート、USBポート、または、ストレージ制御デバイス102が非構造化データを受信できる際に用いる他のデータポートなどの、物理的なポートまたは接続を指定することができる。ハードウェアインタフェースは、指定されたポートを待ち受け、制御回路106が、指定されたポートを介して受信されるデータにアクセスできるようにする。
幾つかの実装では、非構造化データ104は、ストレージエッジへ伝送するために暗号化される。非構造化データ104の処理ができるように、制御回路106は、復号パラメータを使用して非構造化データ104を復号する。図6との関連で以下に説明するように、特定の計算モデルと関連付けて復号パラメータが記憶され得る。特定の計算モデルの選択に応答して(例えば、非構造化データの受信前に受信され得る命令118に応答して)、制御回路106は復号パラメータを検索する。復号パラメータは、予め定義された復号キー、またはRSAアルゴリズムなどの復号キー生成ルーチンを含み得る。制御回路は、復号キーを適用するか、または、RSAアルゴリズムを使用して復号キーを生成および適用して、非構造化データ104にアクセスする。
非構造化データ104にアクセスするか、または非構造化データ104を受信すると、ストレージ制御デバイス102の制御回路106は、2つの同一のデータストリームを作成する。第1データストリームは、最初に受信される非構造化データ104を含み、第2データストリームは、制御回路106により生成される非構造化データ104の同一のコピーを含む。次に、制御回路106は、不揮発性ストレージ110に第1データストリーム108を記憶する。不揮発性ストレージ110は、ハードドライブ、フラッシュメモリアレイ(例えば、NOR型フラッシュメモリまたはNAND型フラッシュメモリ)、または任意の他の適切なタイプのデータストレージ媒体などの、任意の不揮発性データストレージデバイスであってよい。上記の復号および/または形式変換は、最初に受信される非構造化データ104に対して、または、計算エンジン116により処理される第2データストリームのみに対して実行され得る。
制御回路106はまた、映像データ、画像データ、オーディオデータ、または任意の他のデータタイプなどの非構造化データのデータタイプを決定する。制御回路106は、データストリーム108と同一の第2データストリーム114を、ストレージ制御デバイス102の計算エンジン116に向ける。計算エンジン116は、計算モデルを使用してメタデータを生成する。例えば、計算エンジン116は、機械学習エンジン、人工知能エンジン、または他の適切なメタデータ生成エンジンであってよい。計算エンジン116により使用される計算モデルは、AIモデルであってよく、行列乗算演算、畳み込み演算、ニューラルネットワークで定義される他の演算、または任意の他の適切なデータ処理の方法または演算を採用することができる。ストレージ制御デバイス102は、計算エンジン116により使用される計算モデルを選択し、選択されたモデルを使用するように命令118を計算エンジン116に伝送する。ストレージ制御デバイス102は、決定されたデータタイプ、またはコンテンツからの抽出が望まれるメタデータのタイプに対応する計算モデルを選択する。例えば、幾つかの計算モデルは、画像フレーム内の顔または録音物のセグメント内の声を識別するのに適しているが、他の計算モデルは、例えば、画像フレーム内の人物の行動または気分を識別するように設計される。幾つかの計算モデルは、フレームまたはデータストリーム内のオブジェクトの位置を識別する。幾つかの計算モデルは、メディアデータのセグメントの複数の異なる特性を識別するように構成される。
計算エンジン116は、ある実装では、非構造化データのコピーを処理して、非構造化データをフレームにセグメント化し、例えば、非構造化データ内のコンテンツおよび当該コンテンツの位置を記述するメタデータを生成する。次に、メタデータ120は、図3および図4との関連で以下に説明するように、非構造化データとは別個に選択的に検索できるように不揮発性ストレージ110に記憶される。これによって、メタデータ内のインデックス作成機能およびサーチ機能の効率を高めて、例えば、コンテンツメディアデータの関連するセグメントを抽出することができる場合がある。
幾つかの実装では、不揮発性ストレージ110におけるメディアデータおよびメタデータの上記のストレージは、上記のハードウェアインタフェースパラメータを使用して構成されるハードウェアインタフェースを使用して実現され、これらのハードウェアインタフェースパラメータは、ストレージ制御デバイス102がメディアオブジェクトデータおよびメタデータを不揮発性ストレージ110に記憶する際に用いる特定のポートまたは接続を更に指定することができる。例えば、ハードウェアインタフェースパラメータは、メディアオブジェクトデータおよびメタデータを記憶するための特定のサーバまたはデータストレージデバイスの物理的または論理的なアドレスを指定することができる。代替的または追加的に、ハードウェアインタフェースパラメータは、イーサネットポート、シリアルポート、USBポート、または、ストレージ制御デバイス102が不揮発性ストレージ110にアクセスできる際に用いる他のデータポートなどの、特定のポートを指定することができる。
図2は、本開示の幾つかの実装に係る、非構造化データオブジェクトを記述するメタデータを生成するためのコンポーネントおよびそれらの間のデータフローを示す別のブロック図である。不揮発性ストレージ110に既に記憶されている非構造化データオブジェクトについてメタデータが生成されていない場合、または、非構造化データオブジェクトについて更なるメタデータが生成される場合は、ストレージ制御デバイス102は、不揮発性ストレージ110からコンテンツメディアデータ200を検索する。制御回路106は、図1との関連で先ほど説明したように、メディアデータ200のデータタイプを識別する。制御回路106は、コンテンツメディアデータ202を処理するために計算エンジン116に提供する。幾つかのシナリオでは、コンテンツデータが構造化されていないが、他のシナリオでは、コンテンツが部分的に構造化されており、コンテンツについて部分的なメタデータが以前に生成されている。ストレージ制御デバイス102は計算モデルを選択し、選択された計算モデルを使用するように命令204を計算エンジン116に伝送する。図1との関連で先ほど説明したように、ストレージ制御デバイス102は、メディアデータ200の決定されたデータタイプに基づいて計算モデルを選択する。非構造化データオブジェクトを記述するメタデータが既に存在している場合は、制御回路106は、メタデータを生成するために使用された第1計算モデルを決定し、使用される第2計算モデルを選択する。例えば、監視映像内の顔を識別するための計算モデルを使用して、メタデータが既に生成されている場合がある。制御回路106は、同じ監視映像内の顔の表情、行動、気分、または声を識別するための計算モデルを、第2計算モデルとして選択することができる。次に、第2計算モデルを使用して生成されるメタデータ206は、図3および図4との関連で以下に説明するように、非構造化データとは別個に選択的に検索できるように不揮発性ストレージ110に記憶される。第1計算モデルを使用して生成されるメタデータ、および第2計算モデルを使用して生成されるメタデータは、選択的に検索できるようにするために互いに別々に記憶され得る。代替的または追加的に、第2計算モデルを使用して生成されるメタデータは、第1計算モデルを使用して生成されるメタデータと組み合わされて、非構造化データとは別個に選択的に検索できる方式で記憶されるメタデータの単一のセットを生成することができる。
図3は、本開示の幾つかの実装に係る、不揮発性ストレージ110へのメタデータおよびメディアデータの記憶を示すブロック図である。不揮発性ストレージ110内の単一のデータファイル300内にメタデータおよびメディアデータが記憶される。データファイル300は、テキストベースのメタデータおよび非構造化メディアデータの両方を、メタデータ部分302およびメディアデータ部分304でそれぞれホストできるファイル形式である。非構造化メディアデータを含むデータストリーム108は、不揮発性ストレージ110で受信され、データファイル300は、例えば、メディアデータ部分304に非構造化メディアデータを含むように作成される。計算エンジン116により生成されるメタデータ120も、不揮発性ストレージ110で受信される。不揮発性ストレージ110は、データファイル300のメタデータ部分302にメタデータを記憶する。ある実装では、メタデータ部分302は、メディアデータ部分304とは別個に記憶される。別の実装では、それぞれのメタデータ部分302およびメディアデータ部分304は、例えば、インタリーブされるが、相互に分離可能であるように、一緒に記憶される。データファイル300は、メタデータ部分302およびメディアデータ部分304の両方で作成され得る。代替的に、非構造化メディアデータ108がメタデータ120の前に不揮発性ストレージ110で受信される場合は、データファイル300は、メディアデータ部分304のみで作成されてよく、メタデータ120の受信時に、メタデータ部分302は、メディア部分304の末尾に付加されるか、メディア部分304の先頭に付加されるか、メディア部分304と連結されるか、またはメディア部分304とインタリーブされ得る。メタデータ120をメディアデータ108から分離できるように記憶することにより、メタデータ120を、メディアデータ108とは別個に選択的に検索できるようにすることができ、その結果、上記のように、メタデータ120にアクセスする際、またはメタデータ120に基づいてメディアデータ108の特定の部分にアクセスする際の効率が高まる。
図4は、本開示の幾つかの実装に係る、不揮発性ストレージ110へのメタデータおよびメディアデータの代替的な記憶を示す別のブロック図である。不揮発性ストレージ110は、物理的に別個のストレージ領域(例えば、幾つかのハードディスクドライブまたはソリッドステートドライブ)または論理的に別個のストレージ領域(例えば、単一のハードディスクまたはソリッドステートドライブ上の幾つかのパーティション)を含み得る。不揮発性ストレージ110は、メタデータストレージ用の第1ストレージ領域400、およびデータオブジェクトストレージ用の第2ストレージ領域402を指定することができる。データストリーム108は、不揮発性ストレージ110で受信される。不揮発性ストレージ110は、受信されたデータストリーム108が非構造化メディアデータを含むと判断し、非構造化メディアデータをデータオブジェクトストレージ402に記憶する。不揮発性ストレージ110は、計算エンジン116により生成されるメタデータ120も受信する。不揮発性ストレージ110は、受信されるデータがテキストベースのメタデータであると判断し、メタデータ120をメタデータストレージ400に記憶する。上記のように、メタデータ120をメディアデータ108から分離できるように記憶することで、メタデータ120を、メディアデータ108とは別個に検索できるようにすることができ、その結果、メタデータ120にアクセスする際、またはメタデータ120に基づいてメディアデータ108の特定の部分にアクセスする際の効率が高まる。
幾つかの実装では、計算モデルは、ストレージ制御デバイス102のメモリ内のそれぞれのデータ構造に記憶される。計算エンジン116または制御回路106は、選択された計算モデルを、計算エンジン116により使用されるそのそれぞれのデータ構造から抽出する。図5は、本開示の幾つかの実装に係る、計算エンジンのコンポーネントを示すブロック図である。計算エンジン116は、データ構造ランタイムモジュール500を含む。データ構造ランタイムモジュール500は、データ構造のコンテンツが計算エンジン116により実行されるか、または計算エンジン116に適用され得る環境を提供する。更に、データ構造ランタイムモジュール500は、特定のデータ構造に必要な仮想システムリソースを割り当てる。すなわち、データ構造ランタイムモジュール500は、データ構造のコンテンツが、図6との関連で以下に説明するように、CPU506およびハードウェアアクセラレータ512などの計算エンジン116のハードウェアを使用して実行され得る、アプリケーション層を提供する。計算エンジン116は、オーケストレーションエージェント502も含む。データ構造ランタイムモジュール500は、データ構造(図6との関連で以下に説明するようなデータ構造514nなど)の実行を担うが、オーケストレーションエージェント502は、実行するデータ構造を決定する。オーケストレーションエージェント502は、特定のデータ構造を選択するための命令118などのコマンドを受信するか、または、処理される非構造化データオブジェクトの決定されたデータタイプの指示を受信し、適切なデータ構造を決定する。オーケストレーションエージェント502は、ストレージ制御デバイス102のメモリに要求516を伝送して、複数のデータ構造(514a、514b、514c、...514n)の中からデータ構造(例えば、データ構造514b)を検索する。ストレージ制御デバイス102のメモリは、選択されたデータ構造514bを含む応答318を伝送し、次に、データ構造514bは、計算エンジン116によりデータ構造ランタイムモジュール500にロードされる。
データ構造ランタイムモジュール500は、データ構造514bから計算モデルを抽出する。データ構造ランタイムモジュール500は、抽出された計算モデル520を計算エンジン116の揮発性メモリ510にロードする。データ構造ランタイムモジュール500は、抽出された計算モデル520を使用して、メディアデータを処理するために必要とされる選択されたデータ構造から他のデータおよびパラメータを抽出することもできる。計算エンジン116は、ある実装では、CPU506上で実行されるオペレーティングシステム504を含み、それを介して、データ構造ランタイムモジュール500およびオーケストレーションエージェント502は、上記の動作を実行する。
ある実装では、計算エンジン116は、ハードウェアアクセラレータ512を更に含む。計算モデルには、CPU506上で効率的に実行できない何千もの動作が含まれる。計算エンジン116は、ハードウェアアクセラレータ512を使用して、抽出された計算モデルを実行する。
図6は、本開示の幾つかの実装に係る、計算モデルが抽出されるデータ構造のコンポーネントを示すブロック図である。幾つかの実装では、コンパイルされた計算モデル600に加えて、データ構造514nなどのデータ構造は、非構造化データオブジェクトを処理する際に計算エンジン116により使用され得る幾つかの他の項目およびパラメータを含む。例えば、入力データインタフェース602が、非構造化データの入力形式用のパラメータを提供する。例えば、特定のデータ構造内に含まれる計算モデルは、ビットマップタイプの形式で画像を処理するように構成され得る。メディアオブジェクトデータがJPEGなどの圧縮形式で画像を供給する場合は、計算エンジン116は、圧縮された画像をビットマップに変換しなければならない。メディアオブジェクトデータは暗号化され得る。例えば、メディアデータは、セキュリティ上の懸念または著作権の対象になり得る。データ暗号化/復号604は、例えば、データを復号することにより、非構造化データにアクセスするために必要な暗号化または復号のアルゴリズムおよびキーを提供する。データ前処理モジュール606は、上記のように入力データインタフェース602により必要とされる非構造化データの変換など、処理に備えて非構造化データの準備をするためのメカニズムを提供する。更に、データ前処理モジュール606は、メディアオブジェクトデータから個々の映像フレームまたはオーディオサンプルを抽出するためのメカニズムを提供することができる。データ後処理モジュール608は、ある実装では、計算モデル600により生成されるメタデータをフォーマットするためのパラメータを提供する。例えば、データ後処理モジュールは、メディアオブジェクトデータに関連するメタデータが配置される特定のデータ構造および/またはデータフィールドを提供する。データ構造またはデータフィールドは、処理されているデータのタイプおよびコンパイルされた計算モデル600の構成の両方に固有である。ハードウェアインタフェース610は、ネットワークインタフェースまたはシリアルデータ接続などの特定のコンポーネントを使用してデータにアクセスするためのパラメータを提供する。
図7は、本開示の幾つかの実装に係る、非構造化データオブジェクトを記述するメタデータを生成するためのプロセス700を表すフローチャートである。非限定的な例として、非構造化データオブジェクトは、コンテンツメディアデータオブジェクトである。702では、ストレージ制御デバイス102は、制御回路106を使用して、ホストデバイスからメディアオブジェクトを受信する。例えば、制御回路106は、データがリモートソースから受信される際に用いるネットワークインタフェースまたは他のデータ入力接続を含み得る。リモートソースは、映像レコーダ、オーディオレコーダ、取り込みサーバ、およびクラウドサーバなどといった、メディアオブジェクトが生成されるおよび/またはストレージエッジに伝送される任意のホストデバイスまたはサーバを含む。データストレージセンタまたは分散ストレージシステム(すなわち、クラウドストレージ)に記憶されるデータではなく、ストレージエッジで受信されるか、またはストレージエッジに既に存在しているデータに関するメタデータの生成をストレージエッジで実行すると、ネットワークにわたって転送する必要があるデータの量が大幅に削減される。幾つかの実装では、ストレージ制御デバイス102は、メディアオブジェクトデータを不揮発性ストレージ110に記憶する要求をホストデバイスから受信することができる。704では、制御回路106は、メディアオブジェクトデータのコピーを作成し、それにより、同じコンテンツデータを含む2つのデータストリームがもたらされる。706では、制御回路106は、1つのデータストリームを記憶するために不揮発性ストレージ110に提供する。708では、制御回路106は、メディアオブジェクトデータのデータタイプを識別する。例えば、メディアオブジェクトデータは、映像ストリームであってよい。制御回路106は、パケットヘッダを処理、検査、または調査して、ホストデバイスから受信されるデータのタイプを決定することができる。制御回路106は、MPEG-2、MPEG-4、または他の映像データ形式などのデータ形式を更に決定することができる。別の例として、メディアオブジェクトデータは、オーディオストリームであってよい。制御回路106は、パケットヘッダを処理、検査、または調査して、受信されるデータのタイプを決定することができ、MP3、WAV、または他の適切なオーディオデータ形式などのデータ形式を更に決定することができる。第3の例として、メディアオブジェクトデータは、赤外線センサなどの画像センサから撮像されるセンサデータであってよい。制御回路106は、センサの署名などのパケットヘッダデータからセンサのタイプを識別することができる。
710では、制御回路106は、識別されたデータタイプに基づいて、計算エンジン116により使用される複数の計算モデルの中から計算モデルを選択する。例えば、制御回路106は、映像データの連続フレームに対する画像処理を実行するための計算モデルを選択して、各フレームに描写されるオブジェクトを識別する。幾つかの実装では、制御回路106による計算モデルの選択は、生成が望まれるメタデータのタイプに更に基づく。例えば、映像データを処理するために幾つかの計算モデルが利用可能であってよく、各々がメタデータの異なるセットを生成する。1つの計算モデルが映像データ内の顔を識別できる一方で、別の計算モデルが映像データ内の行動を識別する。制御回路106は、ユーザから、またはストレージエッジで実行されているプログラムからの入力を受信して、特定のタイプのメタデータを生成することができる。従って、制御回路106は、映像データを処理し、かつ、所望のメタデータを生成するように構成される計算モデルを選択する。上で組み込まれた米国特許出願第16/262,971号には、更なる概念が記載されている。
712では、計算エンジン116は、選択された計算モデルを使用して第2データストリームを処理して、メディアオブジェクトデータを記述するメタデータを生成する。714では、制御回路106は、図3および図4との関連で先ほど説明した方法を使用して、当該メタデータを、メディアオブジェクトデータとは別個に不揮発性ストレージ110から選択的に検索できるように記憶するために、不揮発性ストレージ110に提供する。このように、メタデータをメディアオブジェクトデータとは別個に検索することができ、それにより、上記のプロセスでは、第1計算モデルにより生成されるメタデータのみを、メディアオブジェクトデータとは無関係に検索することができる。
図8は、本開示の幾つかの実装に係る、データオブジェクトを記述するメタデータを生成するための別のプロセス800を表すフローチャートである。幾つかの実装では、第1メタデータを生成するために第1計算モデルを使用して既に処理されているメディアオブジェクトデータは、追加的または補足的なメタデータを生成するために第2計算モデルを使用して再び処理される。802では、制御回路106は、第1計算モデルを使用して以前に生成されたメディアオブジェクトデータを記述する第1メタデータを検索する。例えば、制御回路806は、SQL「選択」コマンドを使用してクエリ不揮発性ストレージ110またはメタデータストレージ400を使用することができ、当該コマンドに応答して、不揮発性ストレージ110は第1メタデータを提供する。代替的に、制御回路106は、不揮発性ストレージ110のファイル割り当てテーブルにアクセスして、第1メタデータが記憶されるメモリ位置またはメモリアドレス範囲を識別し、識別された位置またはアドレス範囲から第1メタデータを検索することができる。
804では、制御回路106は、第1メタデータを生成するために使用される第1計算モデルを識別する。例えば、ある実装では、制御回路106は、以前に生成されたメタデータのタイプ、または、1または複数の計算モデルに関して第1メタデータ内に含まれる特定のメタデータフィールド、または、メタデータのタイプまたは第1メタデータ内に含まれる特定のメタデータフィールドを生成する、識別されたデータタイプを処理するための第2計算モデルを識別するための利用可能な計算モデルのインデックスを分析することができる。例えば、顔および顔の位置を経時的に記述するフィールドを第1メタデータが含む場合は、制御回路106は、映像コンテンツ内の顔を識別するように構成される計算モデルを使用して第1メタデータが生成されたと判断する。
806では、制御回路106は、生成されるメタデータのタイプを決定する。制御回路106は、第1計算モデルの更新バージョンが存在するかどうかを判断することができる。例えば、制御回路106は、第1計算モデルがコンパイルされた日時、または第1計算モデルを含むデータ構造が最初に利用可能になったときを識別する。第1計算モデルの更新バージョンが存在する場合は、制御回路106は、第1メタデータと同じタイプのメタデータが生成されるべきであると判断する。代替的に、制御回路106は、第1メタデータを補足するためにメタデータのタイプを自動的に選択してもよいし、生成される特定のタイプのメタデータを識別するユーザからの入力を受信してもよい。例えば、制御回路106は、第1計算モデルを、映像フレームに描写される顔などのオブジェクトを識別するための画像処理モデルとして識別する。次に、制御回路106は、気分などの、顔と関連付けられる更なる特性を識別するメタデータが生成されると判断する。代替的に、制御回路106は、映像データ内の話し言葉を記述するメタデータが生成されると判断する。
808では、制御回路106は、生成されるメタデータの決定されたタイプに基づいて計算モデルを選択する。例えば、制御回路106が、生成されるメタデータのタイプが第1メタデータのタイプと同じであると判断し、第1計算モデルの更新バージョンが存在することを示す場合は、制御回路106は、更新された計算モデルを選択する。代替的に、異なるタイプのメタデータが生成される場合は、制御回路106は、そのタイプのメタデータを生成するように構成される計算モデルを選択する。例えば、気分を記述するメタデータが生成される場合は、制御回路106は、気分を識別するために顔が識別されるフレームを処理するように構成される計算モデルを選択する。話し言葉を記述するメタデータが生成される場合は、制御回路106は、映像全体の、または顔を含む映像のセグメントのオーディオデータを処理するためのオーディオ処理計算モデルを選択して、映像内の話し言葉を含むセグメントを識別し、次に、同じまたは異なる計算モデルを使用して、話し言葉をテキスト化する、および/または音声のコンテンツを分析することができる。代替的または追加的に、制御回路106は、コンテンツメディア内の、またはコンテンツメディアと関連付けられるクローズドキャプションなどのテキストを抽出および/または処理するためのテキスト処理計算モデルを選択することができる。
810では、制御回路106は、選択された計算モデルの構成に基づいて、不揮発性ストレージ110からメディアオブジェクトデータの少なくとも一部を検索する。例えば、第1計算モデルは、映像コンテンツ内の顔を識別するように構成され、選択された計算モデルは、映像データ内の顔に基づいて気分を識別するように構成される。制御回路106は、不揮発性ストレージ110から映像コンテンツ全体を検索するのではなく、第1計算モデルにより生成される第1メタデータを使用して、選択された計算モデルを使用して計算エンジン116により処理するための顔を含む映像コンテンツの部分を識別する。次に、制御回路106は、映像コンテンツの当該識別された部分のみを検索する。
812では、計算エンジン116は、第2計算モデルを使用して、メディアオブジェクトデータ内のコンテンツを記述する第2メタデータを生成する。814では、制御回路106は、図3および図4との関連で先ほど説明した方法を使用して、第2メタデータを、メディアオブジェクトデータとは別個にストレージデバイスから選択的に検索できるように記憶するために、不揮発性ストレージ110に提供する。このように、メタデータをメディアオブジェクトデータとは別個に検索することができ、それにより、上記のプロセスでは、第1計算モデルにより生成されるメタデータのみを、メディアオブジェクトデータとは無関係に検索することができる。
図9は、本開示の幾つかの実装に係る、データオブジェクトを記述する別個に検索されたメタデータに基づいてデータオブジェクトの一部を検索するためのプロセス900を表すフローチャートである。902では、ストレージ制御デバイス102は、1または複数の基準を満たすメディアオブジェクトの要求をホストデバイスから受信する。例えば、メディアオブジェクトは監視映像であり、ホストデバイスは、人間の顔を含む映像データを要求する。904では、ストレージ制御デバイス102は、メディアオブジェクトデータを記述するメタデータのみを不揮発性ストレージ110から検索する。例えば、ストレージ制御デバイス102は、監視映像を記述するメタデータが記憶されるメディアオブジェクトの論理的に別個の部分にアクセスし、監視映像データのいずれをも検索することなく、その論理的に別個の部分に含まれるメタデータを抽出、コピー、または検索する。
906では、ストレージ制御デバイス102は、制御回路106を使用して、メタデータを分析して、1または複数の基準を満たすメディアオブジェクトデータの部分を識別する。例えば、制御回路106は、監視映像を記述するメタデータを分析し、人間の顔を含む監視映像の部分を識別する。908では、ストレージ制御デバイス102は、メディアオブジェクトデータの識別された部分のみを、メディアオブジェクトデータを記述するメタデータとは別個に検索する。例えば、ストレージ制御デバイス102は、メタデータに基づいて識別される人間の顔を含む監視映像の部分のみを検索する。ストレージ制御デバイス102は、監視映像の当該部分を、映像を記述するメタデータとは別個に検索する。
以下に限定されるわけではないが、集積回路、特定用途向け集積回路(ASIC)、および/またはDSPなどといった1または複数の電子回路の様々な電子コンポーネントにより、図1から図9と併せて説明する様々な実装が実行される。以下に限定されるわけではないが、制御回路およびハードウェアアクセラレータ(例えば、制御回路106およびハードウェアアクセラレータ312)、および/または同様のものなどの、本開示全体を通じて説明する様々なコンポーネントが、電子回路コンポーネントのセットを含み、かつ、1または複数の電子回路上で通信可能に動作するように構成される。各電子回路は、以下に限定されるわけではないが、論理ゲート、メモリセル、増幅器、および/またはフィルタなどのいずれかを含むように構成される。本明細書で開示する様々な実装およびコンポーネントが、1または複数の一時的または非一時的なプロセッサ可読媒体上に記憶されるプロセッサ実行可能命令により少なくとも部分的に操作および/または実装されるように構成される。
本明細書では本開示の主題の様々な実装を図示および説明してきたが、係る実装はほんの一例として提供されている。本明細書に記載の実装に関連する数々の変形、変更、および置換が、本開示から逸脱することなく適用可能である。なお、本開示を実施する際には、本明細書に記載の開示の実装に対する様々な代替案が採用され得る。以下の請求項が本開示の範囲を画定することと、これらの請求項の範囲内の方法および構造並びにそれらの均等物が当該請求項により包含されることとが意図されている。
図面には動作が特定の順序で描写されているが、これは、係る動作を、示されている特定の順序でまたは順番に実行すべきであること、または、望ましい結果を実現するために、図示されている全ての動作を実行しなければならないことを要求するものとして解釈されるべきではない。
本明細書の主題について特定の態様の観点から説明してきたが、他の態様が実装されてもよく、それらは以下の請求項の範囲内にある。例えば、請求項に列挙する動作は、異なる順序で実行されても望ましい結果を実現することができる。一例として、図7、図8、および図9に描写するプロセスは必ずしも、望ましい結果を実現するために、示されている特定の順序、または順番である必要はない。特定の実装では、マルチタスク処理および並列処理が有利な場合がある。以下の請求項の範囲内には他の変形が含まれる。
[他の考えられる項目]
[項目1]
メディアオブジェクトデータを記憶および管理するための方法であって、
ストレージ制御デバイスでメディアオブジェクトデータを受信する段階であって、上記ストレージ制御デバイスは、ホストデバイスから遠く離れて配置され、ストレージデバイスに結合される、段階と、
上記ストレージ制御デバイスで、上記ストレージ制御デバイスの制御回路を使用して上記メディアオブジェクトデータのタイプを識別する段階と、
上記ストレージ制御デバイスで、上記識別されたタイプに基づいて、上記ストレージ制御デバイスの計算エンジンにより使用される複数の計算モデルの中から計算モデルを選択する段階と、
上記計算エンジンが、上記選択された計算モデルを使用して、上記メディアオブジェクトデータを記述するメタデータを生成する段階と、
上記生成されたメタデータを、上記メディアオブジェクトデータとは別個に上記ストレージデバイスから選択的に検索できるように記憶するために、上記メタデータを上記ストレージデバイスに提供する段階と
を備える方法。
[項目2]
上記複数の計算モデルの各計算モデルは、複数のデータ構造の中のそれぞれのデータ構造に記憶され、上記ストレージ制御デバイスは、ストレージエッジに配置され、上記方法は、
上記ストレージ制御デバイスで、上記選択された計算モデルを上記それぞれのデータ構造から抽出する段階と、
上記計算モデルを上記ストレージ制御デバイスのメモリにロードする段階と
を更に備える、項目1に記載の方法。
[項目3]
上記ストレージエッジで、入力データインタフェースを使用して上記メディアオブジェクトデータにアクセスする段階であって、上記複数のデータ構造の各データ構造は、上記それぞれのデータ構造に含まれる上記計算モデルが構成されるデータ形式を識別する入力データインタフェースパラメータを含む、段階と、
上記メディアオブジェクトデータを上記識別されたデータ形式に変換する段階と
を更に備える項目2に記載の方法。
[項目4]
上記ストレージ制御デバイスが、上記複数のデータ構造のうちのデータ構造からハードウェアインタフェースパラメータを検索する段階と、
上記ハードウェアインタフェースパラメータをハードウェアインタフェースに適用する段階と、
上記ストレージエッジで、上記ハードウェアインタフェースを使用して特定の物理的接続から上記メディアオブジェクトデータにアクセスする段階と
を更に備える項目2に記載の方法。
[項目5]
上記メディアオブジェクトデータは暗号化され、上記方法は、
上記ストレージ制御デバイスが、上記複数のデータ構造のうちのデータ構造から復号パラメータを検索する段階と、
上記ストレージエッジで、上記復号パラメータを使用して上記メディアオブジェクトデータを復号する段階と
を更に備える、項目2に記載の方法。
[項目6]
上記メディアオブジェクトデータは、上記ストレージデバイスから検索され、上記方法は、
上記メタデータを生成するために使用される上記計算モデルを識別する段階であって、上記計算モデルは第1計算モデルであり、上記メタデータは第1メタデータである、段階と、
上記第1計算モデルとは異なる第2計算モデルを選択して、上記第1メタデータとは異なる第2メタデータを生成する段階と、
上記第1メタデータおよび上記メディアオブジェクトデータから選択的に検索できるように上記第2メタデータを記憶する段階と
を更に備える、項目1に記載の方法。
[項目7]
上記第1メタデータと上記第2メタデータとを組み合わせて、組み合わされたメタデータを生成する段階と、
上記組み合わされたメタデータを、上記メディアオブジェクトデータとは別個に上記ストレージデバイスから選択的に検索できるように記憶するために、上記組み合わされたメタデータを上記ストレージデバイスに提供する段階と
を更に備える項目6に記載の方法。
[項目8]
メディアオブジェクトデータを検索することは、
生成されるメタデータのタイプを決定することと、
上記第1メタデータと上記生成されるメタデータのタイプとに基づいて、処理される上記メディアオブジェクトデータの少なくとも1つの部分を識別することと、
上記ストレージエッジで、上記メディアオブジェクトデータの上記識別された部分のみを上記ストレージデバイスから検索することと
を更に含む、項目6に記載の方法。
[項目9]
上記メディアオブジェクトデータのコピーを生成する段階と、
上記ストレージ制御デバイスが、上記メディアオブジェクトデータを、記憶するために上記ストレージデバイスに提供すること、および、上記メディアオブジェクトデータの上記コピーを、処理してメタデータを生成するために上記計算エンジンに提供することを同時に行う段階と
を更に備える項目1に記載の方法。
[項目10]
上記メディアオブジェクトデータを第1記憶位置に、上記メタデータを第2記憶位置に記憶する段階であって、上記第2記憶位置は、物理的分離および論理的分離のうちの一方により上記第1記憶位置と区別される、段階
を更に備える項目1に記載の方法。
[項目11]
ホストデバイスから遠く離れて配置され、かつ、1または複数のストレージデバイスに結合される、データストレージコントローラであって、
上記ストレージデバイスに対してローカルな制御回路であって、
メディアオブジェクトデータを、上記ストレージデバイスに記憶するために受信し、
上記メディアオブジェクトデータのタイプを識別する
ように構成される制御回路と、
上記制御回路と関連付けられる計算エンジンであって、
上記識別されたタイプに基づいて、上記計算エンジンにより使用される複数の計算モデルの中から計算モデルを選択して、上記メディアオブジェクトデータを記述するメタデータを生成するように構成されるオーケストレーションエージェント
を有し、
上記選択された計算モデルを使用して、上記メディアオブジェクトデータを記述するメタデータを生成し、かつ、
上記生成されたメタデータを、上記メディアオブジェクトデータとは別個に上記ストレージデバイスから選択的に検索できるように記憶するために、上記メタデータを上記ストレージデバイスに提供する、
計算エンジンと
を備えるデータストレージコントローラ。
[項目12]
上記データストレージコントローラは、ストレージエッジに配置され、複数のデータ構造の中のそれぞれのデータ構造に上記複数の計算モデルの各計算モデルを記憶するように更に構成され、
上記計算エンジンは、
上記選択された計算モデルを上記それぞれのデータ構造から抽出し、かつ、
上記選択された計算モデルを、上記メディアオブジェクトデータを処理する際に上記計算エンジンが実行するために、上記計算エンジンの揮発性メモリにロードする
ように更に構成される、
項目11に記載のデータストレージコントローラ。
[項目13]
上記複数のデータ構造の各データ構造は、上記それぞれのデータ構造に含まれる上記計算モデルが構成される形式を識別する入力データインタフェースパラメータを含み、上記計算エンジンは、
上記入力データインタフェースパラメータを使用して、上記ストレージエッジで上記メディアオブジェクトデータにアクセスし、かつ、
上記メディアオブジェクトデータを上記識別されたデータ形式に変換する
ように更に構成される、項目12に記載のデータストレージコントローラ。
[項目14]
上記制御回路は、
上記ストレージエッジに記憶される上記複数のデータ構造のうちのデータ構造からハードウェアインタフェースパラメータを検索し、
上記ハードウェアインタフェースパラメータをハードウェアインタフェースに適用し、かつ、
ネットワーク帯域幅を消費することなく、上記ハードウェアインタフェースを使用して特定の物理的接続を介して上記ストレージエッジで上記ストレージデバイスから上記メディアオブジェクトデータにアクセスする
ように更に構成される、項目12に記載のデータストレージコントローラ。
[項目15]
上記制御回路は、
上記ストレージエッジに記憶される上記複数のデータ構造のうちのデータ構造から復号パラメータを検索し、かつ、
上記ストレージエッジで、上記復号パラメータを使用して上記メディアオブジェクトデータを復号する
ように更に構成される、項目12に記載のデータストレージコントローラ。
[項目16]
上記メディアオブジェクトデータは、上記ストレージデバイスから検索され、上記制御回路は、
上記メタデータを生成するために使用される上記計算モデルを識別することであって、上記計算モデルは第1計算モデルであり、上記メタデータは第1メタデータである、識別することと、
上記第1計算モデルとは異なる第2計算モデルを選択して、上記第1メタデータとは異なる第2メタデータを生成することと、
上記第1メタデータおよび上記メディアオブジェクトデータから選択的に検索できるように上記第2メタデータを記憶することと
を行うように更に構成される、項目11に記載のデータストレージコントローラ。
[項目17]
上記制御回路は、
上記第1メタデータと上記第2メタデータとを組み合わせて、組み合わされたメタデータを生成し、かつ、
上記組み合わされたメタデータを、上記メディアオブジェクトデータとは別個に上記ストレージデバイスから選択的に検索できるように記憶するために、上記組み合わされたメタデータを上記ストレージデバイスに提供する
ように更に構成される、項目16に記載のデータストレージコントローラ。
[項目18]
上記制御回路は、メディアオブジェクトデータを、
生成されるメタデータのタイプを決定することと、
上記第1メタデータと上記生成されるメタデータのタイプとに基づいて、処理される上記メディアオブジェクトデータの少なくとも1つの部分を識別することと、
上記ストレージエッジで、上記メディアオブジェクトデータの上記識別された部分のみを上記ストレージデバイスから検索することと
により、検索するように構成される、項目16に記載のデータストレージコントローラ。
[項目19]
上記制御回路は、
上記メディアオブジェクトデータのコピーを生成し、かつ、
上記メディアオブジェクトデータを、記憶するために上記ストレージデバイスに提供すること、および、上記メディアオブジェクトデータの上記コピーを、処理してメタデータを生成するために上記計算エンジンに提供することを同時に行う
ように更に構成される、項目11に記載のデータストレージコントローラ。
[項目20]
上記制御回路は、上記メディアオブジェクトデータを第1記憶位置に、上記メタデータを第2記憶位置に記憶することであって、上記第2記憶位置は、物理的分離および論理的分離のうちの一方により上記第1記憶位置と区別される、記憶することを行うように更に構成される、項目11に記載のデータストレージコントローラ。

Claims (20)

  1. ホストデバイスから遠く離れてストレージエッジに配置され、かつ、1または複数のストレージデバイスに結合される、データストレージコントローラであって、
    前記1または複数のストレージデバイスのストレージデバイスに対してローカルな制御回路であって、
    メディアオブジェクトデータを、前記ストレージデバイスに記憶するために受信し、かつ、
    前記メディアオブジェクトデータのタイプを識別する
    ように構成される制御回路と、
    前記制御回路と関連付けられる計算エンジンであって、
    前記識別されたタイプに少なくとも基づいて、前記計算エンジンにより使用される複数の計算モデルの中から計算モデルを選択し、ここで、前記複数の計算モデルの各計算モデルは、前記複数の計算モデルのそれぞれ他の計算モデルから独立してメタデータを生成するように構成されている、
    前記選択された計算モデルを使用して、前記メディアオブジェクトデータを記述するメタデータを生成し、かつ、
    前記生成されたメタデータを、前記メディアオブジェクトデータとは別個に前記ストレージデバイスから選択的に検索できるように記憶するために、前記生成されたメタデータを前記ストレージデバイスに提供する
    ように構成される計算エンジンと
    を備えるデータストレージコントローラ。
  2. 前記制御回路は、
    前記選択された計算モデルと関連付けられる入力データインタフェースパラメータを検索することであって、前記入力データインタフェースパラメータは、前記選択された計算モデルが処理できるデータ形式を識別する、検索することと、
    前記メディアオブジェクトデータを前記識別されたデータ形式に変換することと
    を行うように更に構成される、請求項1に記載のデータストレージコントローラ。
  3. 前記制御回路は、
    前記選択された計算モデルと関連付けられるハードウェアインタフェースパラメータを検索し、
    前記ハードウェアインタフェースパラメータをハードウェアインタフェースに適用し、
    前記ストレージエッジで、前記ハードウェアインタフェースを使用して第1物理的接続を介して前記メディアオブジェクトデータにアクセスし、かつ、
    前記ハードウェアインタフェースを使用して第2物理的接続を介して前記ストレージデバイスに前記メディアオブジェクトデータおよびメタデータを記憶する
    ように更に構成される、請求項1または2に記載のデータストレージコントローラ。
  4. 前記制御回路は、
    前記選択された計算モデルと関連付けられる復号パラメータを検索し、かつ、
    前記ストレージエッジで、前記復号パラメータを使用して前記メディアオブジェクトデータを復号する
    ように更に構成される、請求項1から3のいずれか一項に記載のデータストレージコントローラ。
  5. 前記メディアオブジェクトデータは、前記ストレージデバイスから検索され、前記制御回路は、
    前記メタデータを生成するために使用される前記計算モデルを識別することであって、前記計算モデルは第1計算モデルであり、前記メタデータは第1メタデータである、識別することと、
    前記第1計算モデルとは異なる第2計算モデルを選択して、前記第1メタデータとは異なる第2メタデータを生成することと、
    前記第1メタデータおよび前記メディアオブジェクトデータから選択的に検索できるように前記第2メタデータを記憶することと
    を行うように更に構成される、請求項1から4のいずれか一項に記載のデータストレージコントローラ。
  6. 前記制御回路は、
    前記第1メタデータと前記第2メタデータとを組み合わせて、組み合わされたメタデータを生成し、かつ、
    前記組み合わされたメタデータを、前記メディアオブジェクトデータとは別個に前記ストレージデバイスから選択的に検索できるように記憶するために、前記組み合わされたメタデータを前記ストレージデバイスに提供する
    ように更に構成される、請求項5に記載のデータストレージコントローラ。
  7. 前記制御回路は、1または複数の基準を満たすメディアオブジェクトデータの要求を前記ホストデバイスから受信するように更に構成される、請求項1から6のいずれか一項に記載のデータストレージコントローラ。
  8. 前記制御回路は、
    1または複数の基準を満たすメディアオブジェクトデータの前記要求に応答して、
    前記メディアオブジェクトデータを記述する前記メタデータのみを、前記メディアオブジェクトデータとは別個に前記ストレージデバイスから検索し、
    前記検索されたメタデータに基づいて、前記1または複数の基準を満たす前記メディアオブジェクトデータの1または複数の部分を識別し、かつ、
    前記メディアオブジェクトデータの前記識別された1または複数の部分のみを、前記メディアオブジェクトデータを記述する前記メタデータとは別個に前記ストレージデバイスから検索する
    ように更に構成される、請求項7に記載のデータストレージコントローラ。
  9. 前記制御回路は、
    前記メディアオブジェクトデータのコピーを生成し、かつ、
    前記メディアオブジェクトデータを、記憶するために前記ストレージデバイスに提供すること、および、前記メディアオブジェクトデータの前記コピーを、処理してメタデータを生成するために前記計算エンジンに提供することを同時に行う
    ように更に構成される、請求項1から8のいずれか一項に記載のデータストレージコントローラ。
  10. 前記制御回路は、前記メディアオブジェクトデータおよび前記メタデータを、互いに別々に選択的に検索できるように論理的に分離された方式で記憶するように更に構成される、請求項1から9のいずれか一項に記載のデータストレージコントローラ。
  11. メディアオブジェクトデータを記憶および管理するための方法であって、
    ストレージ制御デバイスの制御回路が、メディアオブジェクトデータを受信する段階であって、前記ストレージ制御デバイスは、ホストデバイスから遠く離れてストレージエッジに配置され、ストレージデバイスに結合される、段階と、
    前記制御回路が、前記メディアオブジェクトデータのタイプを識別する段階と、
    前記ストレージ制御デバイスの計算エンジンが、前記識別されたタイプに基づいて、前記計算エンジンにより使用される複数の計算モデルの中から計算モデルを選択する段階であって、前記複数の計算モデルの各計算モデルは、前記複数の計算モデルのそれぞれ他の計算モデルから独立してメタデータを生成するように構成されている、段階と、
    前記計算エンジンが、前記選択された計算モデルを使用して、前記メディアオブジェクトデータを記述するメタデータを生成する段階と、
    前記計算エンジンが、前記生成されたメタデータを、前記メディアオブジェクトデータとは別個に前記ストレージデバイスから選択的に検索できるように記憶するために、前記生成されたメタデータを前記ストレージデバイスに提供する段階と
    を備える方法。
  12. 前記制御回路が、前記選択された計算モデルと関連付けられる入力データインタフェースパラメータを検索する段階であって、前記入力データインタフェースパラメータは、前記選択された計算モデルが処理できるデータ形式を識別する、段階と、
    前記制御回路が、前記メディアオブジェクトデータを前記識別されたデータ形式に変換する段階と
    を更に備える請求項11に記載の方法。
  13. 前記制御回路が、前記選択された計算モデルと関連付けられるハードウェアインタフェースパラメータを検索する段階と、
    前記制御回路が、前記ハードウェアインタフェースパラメータをハードウェアインタフェースに適用する段階と、
    前記制御回路が、前記ストレージエッジで、前記ハードウェアインタフェースを使用して第1物理的接続から前記メディアオブジェクトデータにアクセスする段階と、
    前記制御回路が、前記ハードウェアインタフェースを使用して第2物理的接続を介して前記ストレージデバイスに前記メディアオブジェクトデータおよびメタデータを記憶する段階と
    を更に備える請求項11または12に記載の方法。
  14. 前記メディアオブジェクトデータは暗号化され、前記方法は、
    前記制御回路が、前記選択された計算モデルと関連付けられる復号パラメータを検索する段階と、
    前記制御回路が、前記ストレージエッジで、前記復号パラメータを使用して前記メディアオブジェクトデータを復号する段階と
    を更に備える、請求項11から13のいずれか一項に記載の方法。
  15. 前記メディアオブジェクトデータは、前記ストレージデバイスから検索され、前記方法は、
    前記制御回路が、前記メタデータを生成するために使用される前記計算モデルを識別する段階であって、前記計算モデルは第1計算モデルであり、前記メタデータは第1メタデータである、段階と、
    前記制御回路が、前記第1計算モデルとは異なる第2計算モデルを選択して、前記第1メタデータとは異なる第2メタデータを生成する段階と、
    前記制御回路が、前記第1メタデータおよび前記メディアオブジェクトデータから選択的に検索できるように前記第2メタデータを記憶する段階と
    を更に備える、請求項11から14のいずれか一項に記載の方法。
  16. 前記制御回路が、前記第1メタデータと前記第2メタデータとを組み合わせて、組み合わされたメタデータを生成する段階と、
    前記制御回路が、前記組み合わされたメタデータを、前記メディアオブジェクトデータとは別個に前記ストレージデバイスから選択的に検索できるように記憶するために、前記組み合わされたメタデータを前記ストレージデバイスに提供する段階と
    を更に備える請求項15に記載の方法。
  17. 前記制御回路が、1または複数の基準を満たすメディアオブジェクトデータの要求を前記ホストデバイスから受信する段階を更に備える請求項11から16のいずれか一項に記載の方法。
  18. 前記1または複数の基準を満たすメディアオブジェクトデータの前記要求に応答して、
    前記制御回路が、前記メディアオブジェクトデータを記述する前記メタデータのみを、前記メディアオブジェクトデータとは別個に前記ストレージデバイスから検索する段階と、
    前記制御回路が、前記検索されたメタデータに基づいて、前記1または複数の基準を満たす前記メディアオブジェクトデータの1または複数の部分を識別する段階と、
    前記制御回路が、前記メディアオブジェクトデータの前記識別された1または複数の部分のみを、前記メディアオブジェクトデータを記述する前記メタデータとは別個に前記ストレージデバイスから検索する段階と
    を更に備える請求項17に記載の方法。
  19. 前記制御回路が、前記メディアオブジェクトデータのコピーを生成する段階と、
    前記制御回路が、前記メディアオブジェクトデータを、記憶するために前記ストレージデバイスに提供すること、および、前記メディアオブジェクトデータの前記コピーを、処理してメタデータを生成するために前記計算エンジンに提供することを同時に行う段階と
    を更に備える請求項11から18のいずれか一項に記載の方法。
  20. 前記制御回路が、前記メディアオブジェクトデータおよび前記メタデータを、互いに別々に選択的に検索できるように論理的に分離された方式で記憶する段階
    を更に備える請求項11から19のいずれか一項に記載の方法。
JP2024000847A 2018-07-31 2024-01-05 ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法 Pending JP2024038276A (ja)

Applications Claiming Priority (22)

Application Number Priority Date Filing Date Title
US201862712823P 2018-07-31 2018-07-31
US62/712,823 2018-07-31
US201862714563P 2018-08-03 2018-08-03
US62/714,563 2018-08-03
US201862716269P 2018-08-08 2018-08-08
US62/716,269 2018-08-08
US201862726847P 2018-09-04 2018-09-04
US201862726852P 2018-09-04 2018-09-04
US62/726,852 2018-09-04
US62/726,847 2018-09-04
US16/264,248 2019-01-31
US16/262,975 2019-01-31
US16/262,971 US11294965B2 (en) 2018-07-31 2019-01-31 Metadata generation for multiple object types
US16/264,473 2019-01-31
US16/262,971 2019-01-31
US16/264,473 US11080337B2 (en) 2018-07-31 2019-01-31 Storage edge controller with a metadata computational engine
US16/264,248 US11748418B2 (en) 2018-07-31 2019-01-31 Storage aggregator controller with metadata computation control
US16/262,975 US11036807B2 (en) 2018-07-31 2019-01-31 Metadata generation at the storage edge
US16/263,387 US11068544B2 (en) 2018-07-31 2019-01-31 Systems and methods for generating metadata describing unstructured data objects at the storage edge
US16/263,387 2019-01-31
PCT/US2019/044534 WO2020028583A1 (en) 2018-07-31 2019-07-31 Systems and methods for generating metadata describing unstructured data objects at the storage edge
JP2021504383A JP2021533446A (ja) 2018-07-31 2019-07-31 ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021504383A Division JP2021533446A (ja) 2018-07-31 2019-07-31 ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法

Publications (1)

Publication Number Publication Date
JP2024038276A true JP2024038276A (ja) 2024-03-19

Family

ID=65520347

Family Applications (8)

Application Number Title Priority Date Filing Date
JP2021503769A Active JP7326667B2 (ja) 2018-07-31 2019-01-31 ストレージエッジにおけるメタデータ生成
JP2021503760A Active JP7419621B2 (ja) 2018-07-31 2019-07-29 複数のオブジェクトタイプのためのメタデータ生成
JP2021503799A Active JP7351057B2 (ja) 2018-07-31 2019-07-31 メタデータ演算制御を有するストレージアグリゲータコントローラ
JP2021504432A Pending JP2021533447A (ja) 2018-07-31 2019-07-31 メタデータ計算エンジンを備えるストレージエッジコントローラ
JP2021504383A Pending JP2021533446A (ja) 2018-07-31 2019-07-31 ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法
JP2023169249A Abandoned JP2023171874A (ja) 2018-07-31 2023-09-29 複数のオブジェクトタイプのためのメタデータ生成
JP2023176582A Pending JP2023179680A (ja) 2018-07-31 2023-10-12 メタデータ計算エンジンを備えるストレージエッジコントローラ
JP2024000847A Pending JP2024038276A (ja) 2018-07-31 2024-01-05 ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法

Family Applications Before (7)

Application Number Title Priority Date Filing Date
JP2021503769A Active JP7326667B2 (ja) 2018-07-31 2019-01-31 ストレージエッジにおけるメタデータ生成
JP2021503760A Active JP7419621B2 (ja) 2018-07-31 2019-07-29 複数のオブジェクトタイプのためのメタデータ生成
JP2021503799A Active JP7351057B2 (ja) 2018-07-31 2019-07-31 メタデータ演算制御を有するストレージアグリゲータコントローラ
JP2021504432A Pending JP2021533447A (ja) 2018-07-31 2019-07-31 メタデータ計算エンジンを備えるストレージエッジコントローラ
JP2021504383A Pending JP2021533446A (ja) 2018-07-31 2019-07-31 ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法
JP2023169249A Abandoned JP2023171874A (ja) 2018-07-31 2023-09-29 複数のオブジェクトタイプのためのメタデータ生成
JP2023176582A Pending JP2023179680A (ja) 2018-07-31 2023-10-12 メタデータ計算エンジンを備えるストレージエッジコントローラ

Country Status (6)

Country Link
US (7) US11080337B2 (ja)
EP (8) EP3830713A1 (ja)
JP (8) JP7326667B2 (ja)
KR (2) KR20210039394A (ja)
CN (5) CN112534423A (ja)
WO (4) WO2020026036A1 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10652594B2 (en) 2016-07-07 2020-05-12 Time Warner Cable Enterprises Llc Apparatus and methods for presentation of key frames in encrypted content
WO2018033137A1 (zh) * 2016-08-19 2018-02-22 北京市商汤科技开发有限公司 在视频图像中展示业务对象的方法、装置和电子设备
US10958948B2 (en) * 2017-08-29 2021-03-23 Charter Communications Operating, Llc Apparatus and methods for latency reduction in digital content switching operations
US10939142B2 (en) 2018-02-27 2021-03-02 Charter Communications Operating, Llc Apparatus and methods for content storage, distribution and security within a content distribution network
WO2020026036A1 (en) 2018-07-31 2020-02-06 Marvell World Trade Ltd. Metadata generation at the storage edge
US11863844B2 (en) * 2019-03-29 2024-01-02 Intel Corporation On-demand generation and personalization of video content
CN111782577B (zh) * 2019-04-04 2023-03-24 安徽寒武纪信息科技有限公司 数据处理装置及方法以及相关产品
US10942846B2 (en) * 2019-06-25 2021-03-09 Micron Technology, Inc. Aggregated and virtualized solid state drives accessed via multiple logical address spaces
US10942881B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Parallel operations in aggregated and virtualized solid state drives
US11055249B2 (en) 2019-06-25 2021-07-06 Micron Technology, Inc. Access optimization in aggregated and virtualized solid state drives
US11762798B2 (en) 2019-06-25 2023-09-19 Micron Technology, Inc. Aggregated and virtualized solid state drives with multiple host interfaces
US11768613B2 (en) 2019-06-25 2023-09-26 Micron Technology, Inc. Aggregation and virtualization of solid state drives
US11573708B2 (en) * 2019-06-25 2023-02-07 Micron Technology, Inc. Fail-safe redundancy in aggregated and virtualized solid state drives
US11513923B2 (en) 2019-06-25 2022-11-29 Micron Technology, Inc. Dynamic fail-safe redundancy in aggregated and virtualized solid state drives
KR20210012439A (ko) * 2019-07-25 2021-02-03 삼성전자주식회사 마스터 지능 소자 및 이의 제어 방법
US11388487B2 (en) 2019-10-14 2022-07-12 Palantir Technologies Inc. Systems and methods for generating, analyzing, and storing data snippets
US11636438B1 (en) 2019-10-18 2023-04-25 Meta Platforms Technologies, Llc Generating smart reminders by assistant systems
CN114730324A (zh) 2019-12-13 2022-07-08 马维尔亚洲私人有限公司 具有有效率的元数据生成和导出的汽车数据处理系统
CN111240743B (zh) * 2020-01-03 2022-06-03 格兰菲智能科技有限公司 人工智能集成电路
US11216348B2 (en) * 2020-03-02 2022-01-04 Silicon Motion, Inc. All flash array server and control method thereof
US11321340B1 (en) * 2020-03-31 2022-05-03 Wells Fargo Bank, N.A. Metadata extraction from big data sources
US20210357119A1 (en) * 2020-05-15 2021-11-18 Rey Bruce Artificial intelligence-based hybrid raid controller device
US11321341B2 (en) * 2020-05-15 2022-05-03 National Instruments Corporation Dynamic metadata extraction workflow for measurement data storage
CN111782886A (zh) * 2020-06-28 2020-10-16 杭州海康威视数字技术股份有限公司 元数据管理的方法和装置
US11683453B2 (en) * 2020-08-12 2023-06-20 Nvidia Corporation Overlaying metadata on video streams on demand for intelligent video analysis
KR20220034542A (ko) 2020-09-11 2022-03-18 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
KR20220056986A (ko) 2020-10-29 2022-05-09 삼성전자주식회사 메모리 확장기, 이종 컴퓨팅 장치, 및 이종 컴퓨팅 장치의 동작 방법
US20220365718A1 (en) * 2021-05-13 2022-11-17 Micron Technology, Inc. Workload profile data and performance-based memory management
US11483630B1 (en) 2021-08-17 2022-10-25 Rovi Guides, Inc. Systems and methods to generate metadata for content
US11829619B2 (en) 2021-11-09 2023-11-28 Western Digital Technologies, Inc. Resource usage arbitration in non-volatile memory (NVM) data storage devices with artificial intelligence accelerators

Family Cites Families (127)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1012909A (en) 1909-10-28 1911-12-26 Safety Power Transmission Company Shaft-protector.
US6012068A (en) 1997-06-30 2000-01-04 International Business Machines Corporation Media manager for access to multiple media types
US6215749B1 (en) * 1998-10-26 2001-04-10 Samsung Electronics Co., Ltd. Signal distortion minimization apparatus in high speed optical disc reproducing device
US7127120B2 (en) 2002-11-01 2006-10-24 Microsoft Corporation Systems and methods for automatically editing a video
US7509321B2 (en) 2003-01-21 2009-03-24 Microsoft Corporation Selection bins for browsing, annotating, sorting, clustering, and filtering media objects
US8200775B2 (en) * 2005-02-01 2012-06-12 Newsilike Media Group, Inc Enhanced syndication
US7707320B2 (en) 2003-09-05 2010-04-27 Qualcomm Incorporated Communication buffer manager and method therefor
US7707590B2 (en) 2004-09-01 2010-04-27 Microsoft Corporation Computer system and method for providing robust file system information for non-native file system devices
US7788592B2 (en) 2005-01-12 2010-08-31 Microsoft Corporation Architecture and engine for time line based visualization of data
US7478102B2 (en) * 2005-03-28 2009-01-13 Microsoft Corporation Mapping of a file system model to a database object
US10210159B2 (en) * 2005-04-21 2019-02-19 Oath Inc. Media object metadata association and ranking
US20060274949A1 (en) * 2005-06-02 2006-12-07 Eastman Kodak Company Using photographer identity to classify images
US20070038647A1 (en) 2005-08-04 2007-02-15 Microsoft Corporation Management of media sources in memory constrained devices
US20070078896A1 (en) 2005-09-30 2007-04-05 Yahoo! Inc. Identifying portions within media files with location tags
US7801910B2 (en) 2005-11-09 2010-09-21 Ramp Holdings, Inc. Method and apparatus for timed tagging of media content
US8930496B2 (en) 2005-12-19 2015-01-06 Commvault Systems, Inc. Systems and methods of unified reconstruction in storage systems
US9275157B2 (en) * 2005-12-21 2016-03-01 Digimarc Corporation Content metadata directory services
US7801847B2 (en) * 2006-03-27 2010-09-21 Microsoft Corporation Media file conversion using plug-ins
CN101449538A (zh) * 2006-04-04 2009-06-03 约翰逊控制技术公司 媒体文件的文本-语法改进
US20070239780A1 (en) * 2006-04-07 2007-10-11 Microsoft Corporation Simultaneous capture and analysis of media content
US7730047B2 (en) * 2006-04-07 2010-06-01 Microsoft Corporation Analysis of media content via extensible object
US8589973B2 (en) * 2006-09-14 2013-11-19 At&T Intellectual Property I, L.P. Peer to peer media distribution system and method
EP2177010B1 (en) 2006-12-13 2015-10-28 Quickplay Media Inc. Mobile media platform
JP2008192102A (ja) 2007-02-08 2008-08-21 Sony Computer Entertainment Inc メタデータ生成装置およびメタデータ生成方法
JP4891802B2 (ja) 2007-02-20 2012-03-07 日本電信電話株式会社 コンテンツ検索・推薦方法、コンテンツ検索・推薦装置およびコンテンツ検索・推薦プログラム
US8166076B2 (en) * 2007-03-08 2012-04-24 Microsoft Corporation Digital media metadata management
US7929766B2 (en) * 2007-06-08 2011-04-19 Apple Inc. Identifiers for digital media
EP2149264B1 (en) * 2007-07-02 2011-01-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for processing and reading a file having a media data container and a metadata container
US20090077561A1 (en) * 2007-07-05 2009-03-19 International Business Machines Corporation Pipeline Processing Method and Apparatus in a Multi-processor Environment
US9824006B2 (en) 2007-08-13 2017-11-21 Digital Kiva, Inc. Apparatus and system for object-based storage solid-state device
KR101432994B1 (ko) * 2007-08-13 2014-08-22 삼성전자주식회사 미디어 객체 기반 메타데이터의 생성 방법, 재생 방법 및그 장치
KR101268987B1 (ko) * 2007-09-11 2013-05-29 삼성전자주식회사 메타데이터를 자동적으로 생성/갱신하는 멀티미디어 데이터기록 방법 및 장치
US20090132462A1 (en) 2007-11-19 2009-05-21 Sony Corporation Distributed metadata extraction
US9465892B2 (en) 2007-12-03 2016-10-11 Yahoo! Inc. Associating metadata with media objects using time
US7996431B2 (en) 2008-02-25 2011-08-09 International Business Machines Corporation Systems, methods and computer program products for generating metadata and visualizing media content
US9966112B1 (en) * 2013-04-18 2018-05-08 Gracenote, Inc. Systems and methods to associate multimedia tags with user comments and generate user modifiable snippets around a tag time for efficient storage and sharing of tagged items
US8452855B2 (en) 2008-06-27 2013-05-28 Yahoo! Inc. System and method for presentation of media related to a context
JP2010039966A (ja) 2008-08-08 2010-02-18 Hitachi Ltd データ管理方式
US8867779B2 (en) 2008-08-28 2014-10-21 Microsoft Corporation Image tagging user interface
CN101754056B (zh) * 2008-12-17 2013-01-02 中国科学院自动化研究所 支持海量数据自动处理的数字内容编目管理系统及方法
US8831276B2 (en) * 2009-01-13 2014-09-09 Yahoo! Inc. Media object metadata engine configured to determine relationships between persons
US20100179874A1 (en) * 2009-01-13 2010-07-15 Yahoo! Inc. Media object metadata engine configured to determine relationships between persons and brands
CN101605210B (zh) * 2009-05-31 2014-01-08 上海东方传媒集团有限公司 财经数据制播综合系统
US8938492B1 (en) 2009-09-11 2015-01-20 Symantec Corporation Enabling efficient review of media objects associated with a client device
JP5595701B2 (ja) 2009-09-16 2014-09-24 株式会社日立製作所 ファイル管理方法及びストレージシステム
US20120278560A1 (en) 2009-10-04 2012-11-01 Infinidat Ltd. Pre-fetching in a storage system that maintains a mapping tree
US8589871B2 (en) * 2009-12-18 2013-11-19 Avid Technology, Inc. Metadata plug-in application programming interface
US8843815B2 (en) 2010-01-18 2014-09-23 Hewlett-Packard Development Company, L. P. System and method for automatically extracting metadata from unstructured electronic documents
US8611678B2 (en) 2010-03-25 2013-12-17 Apple Inc. Grouping digital media items based on shared features
US20110289458A1 (en) * 2010-05-18 2011-11-24 Rovi Technologies Corporation User interface animation for a content system
US8763068B2 (en) * 2010-12-09 2014-06-24 Microsoft Corporation Generation and provision of media metadata
US20130097172A1 (en) 2011-04-04 2013-04-18 Zachary McIntosh Method and apparatus for indexing and retrieving multimedia with objective metadata
JP2012221322A (ja) 2011-04-11 2012-11-12 Toshiba Corp オーサリング支援装置、オーサリング支援方法およびプログラム
US9380356B2 (en) 2011-04-12 2016-06-28 The Nielsen Company (Us), Llc Methods and apparatus to generate a tag for media content
CN102439574B (zh) 2011-04-18 2015-01-28 华为技术有限公司 系统缓存中数据替换方法及多核通信处理器
US8917971B2 (en) 2011-12-30 2014-12-23 United Video Properties, Inc. Methods and systems for providing relevant supplemental content to a user device
US8990263B2 (en) 2012-03-15 2015-03-24 International Business Machines Corporation Policy-based management of storage functions in data replication environments
US20130289991A1 (en) 2012-04-30 2013-10-31 International Business Machines Corporation Application of Voice Tags in a Social Media Context
US20140074855A1 (en) 2012-09-13 2014-03-13 Verance Corporation Multimedia content tags
US9678961B2 (en) * 2012-09-13 2017-06-13 Canon Europa N.V. Method and device for associating metadata to media objects
US8775372B2 (en) 2012-11-01 2014-07-08 Red Hat Israel, Ltd. Retrieving historical object-related configuration data
WO2014133495A1 (en) 2013-02-27 2014-09-04 Hitachi Data Systems Corporation Content class for object storage indexing system
JP6009097B2 (ja) 2013-02-27 2016-10-19 ヒタチ データ システムズ コーポレーションHitachi Data Systems Corporation 分散オブジェクトストレージエコシステムにおけるコンテンツとメタデータの分離
US9405771B2 (en) 2013-03-14 2016-08-02 Microsoft Technology Licensing, Llc Associating metadata with images in a personal image collection
WO2014170953A1 (ja) 2013-04-16 2014-10-23 株式会社日立製作所 計算機、計算機システム及びキャッシュ制御方法
JP6224356B2 (ja) 2013-06-11 2017-11-01 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置
EP3014888A4 (en) 2013-06-28 2017-02-22 INTEL Corporation Live crowdsourced media streaming
US9639969B1 (en) 2013-07-25 2017-05-02 Overlay Studio, Inc. Collaborative design
KR20150029402A (ko) 2013-09-10 2015-03-18 에스케이하이닉스 주식회사 데이터 저장 시스템 및 그것의 동작 방법
WO2015054361A1 (en) * 2013-10-08 2015-04-16 The Echo Nest Corporation Systems, methods, and computer program products for providing contextually-aware video recommendation
EP3060993B1 (en) 2013-10-21 2023-03-08 FLC Global, Ltd. Final level cache system and corresponding method
WO2015061964A1 (en) 2013-10-29 2015-05-07 Hua Zhong University Of Science Technology Simulataneous metadata extraction of moving objects
US9170746B2 (en) * 2014-01-07 2015-10-27 Netapp, Inc. Clustered raid assimilation management
CN106463145B (zh) 2014-05-02 2019-08-30 马维尔国际贸易有限公司 用于硬盘驱动器和混合驱动器的高速缓存系统和方法
US20180107660A1 (en) * 2014-06-27 2018-04-19 Amazon Technologies, Inc. System, method and apparatus for organizing photographs stored on a mobile computing device
US9729542B2 (en) * 2014-09-24 2017-08-08 Oracle International Corporation Compartmentalizing application distribution for disparate electronic devices
GB2532075A (en) 2014-11-10 2016-05-11 Lego As System and method for toy recognition and detection based on convolutional neural networks
CN104575595B (zh) * 2014-12-12 2017-07-07 杭州华澜微电子股份有限公司 非易失性随机存取的存储装置
US9916237B2 (en) 2014-12-12 2018-03-13 Sandisk Technologies Llc Model based configuration parameter management
JP5953384B1 (ja) 2015-02-04 2016-07-20 エヌ・ティ・ティ・コムウェア株式会社 学習装置、学習方法、およびプログラム
US10198498B2 (en) 2015-05-13 2019-02-05 Rovi Guides, Inc. Methods and systems for updating database tags for media content
US10140149B1 (en) * 2015-05-19 2018-11-27 Pure Storage, Inc. Transactional commits with hardware assists in remote memory
US9990159B2 (en) 2015-06-26 2018-06-05 Xitore, Inc. Apparatus, system, and method of look-ahead address scheduling and autonomous broadcasting operation to non-volatile storage memory
US20170083519A1 (en) * 2015-09-22 2017-03-23 Riffsy, Inc. Platform and dynamic interface for procuring, organizing, and retrieving expressive media content
AU2016329200B2 (en) 2015-09-30 2021-03-04 Tivo Solutions Inc. Synchronizing media content tag data
US10528613B2 (en) 2015-11-23 2020-01-07 Advanced Micro Devices, Inc. Method and apparatus for performing a parallel search operation
US20170169358A1 (en) * 2015-12-09 2017-06-15 Samsung Electronics Co., Ltd. In-storage computing apparatus and method for decentralized machine learning
US9881236B2 (en) 2015-12-28 2018-01-30 Google Llc Organizing images associated with a user
US10592357B2 (en) 2015-12-30 2020-03-17 Commvault Systems, Inc. Distributed file system in a distributed deduplication data storage system
US10902043B2 (en) 2016-01-03 2021-01-26 Gracenote, Inc. Responding to remote media classification queries using classifier models and context parameters
US10089401B2 (en) 2016-01-12 2018-10-02 Fox Broadcasting Company Method and pluggable system for trend-based allocation of media assets between global and local storage
KR102466412B1 (ko) * 2016-01-14 2022-11-15 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
KR101936950B1 (ko) * 2016-02-15 2019-01-11 주식회사 맴레이 컴퓨팅 디바이스, 코프로세서와 비휘발성 메모리 사이의 데이터 이동 방법 및 이를 포함하는 프로그램
US10180788B2 (en) * 2016-04-06 2019-01-15 Sandisk Technologies Inc. Data storage device having internal tagging capabilities
US10346700B1 (en) * 2016-05-03 2019-07-09 Cynny Spa Object recognition in an adaptive resource management system
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
US10509407B2 (en) 2016-07-01 2019-12-17 Samsung Electronics Co., Ltd. Apparatus and method for a vehicle platform
KR20180011376A (ko) 2016-07-21 2018-02-01 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
US10403044B2 (en) * 2016-07-26 2019-09-03 tagSpace Pty Ltd Telelocation: location sharing for users in augmented and virtual reality environments
EP3496969A4 (en) 2016-08-10 2020-09-16 Xevo Inc. PROCEDURE AND SYSTEM FOR PROVIDING INFORMATION ON COLLECTED AND STORED METADATA WITH A DERIVED ATTENTION MODEL
KR20180027710A (ko) * 2016-09-06 2018-03-15 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법
US10701377B2 (en) * 2016-09-14 2020-06-30 Amazon Technologies, Inc. Media storage
US10853233B2 (en) * 2016-10-18 2020-12-01 Toshiba Memory Corporation Reconstruction of address mapping in a host of a storage system
US10535355B2 (en) * 2016-11-18 2020-01-14 Microsoft Technology Licensing, Llc Frame coding for spatial audio data
US10162563B2 (en) 2016-12-02 2018-12-25 International Business Machines Corporation Asynchronous local and remote generation of consistent point-in-time snap copies
MX2019006588A (es) 2016-12-05 2019-10-09 Avigilon Corp Sistema y metodo de busqueda por apariencia.
US20180173619A1 (en) * 2016-12-21 2018-06-21 Sandisk Technologies Llc System and Method for Distributed Logical to Physical Address Mapping
US11010431B2 (en) * 2016-12-30 2021-05-18 Samsung Electronics Co., Ltd. Method and apparatus for supporting machine learning algorithms and data pattern matching in ethernet SSD
US10970605B2 (en) 2017-01-03 2021-04-06 Samsung Electronics Co., Ltd. Electronic apparatus and method of operating the same
US10963393B1 (en) 2017-01-13 2021-03-30 Lightbits Labs Ltd. Storage system and a method for application aware processing
US11221939B2 (en) 2017-03-31 2022-01-11 Commvault Systems, Inc. Managing data from internet of things devices in a vehicle
US10223272B2 (en) 2017-04-25 2019-03-05 Seagate Technology Llc Latency sensitive metadata object persistence operation for storage device
US10860508B2 (en) * 2017-05-25 2020-12-08 Western Digital Technologies, Inc. Offloaded disaggregated storage architecture
KR102444606B1 (ko) 2017-08-28 2022-09-20 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
CN107622281B (zh) * 2017-09-20 2021-02-05 Oppo广东移动通信有限公司 图像分类方法、装置、存储介质及移动终端
US10817565B2 (en) * 2017-11-06 2020-10-27 Disney Enterprises, Inc. Automation of media content tag selection
US10884996B1 (en) 2018-02-27 2021-01-05 NTT DATA Services, LLC Systems and methods for optimizing automatic schema-based metadata generation
KR20190106005A (ko) 2018-03-07 2019-09-18 에스케이하이닉스 주식회사 메모리 시스템, 그것의 동작 방법 및 전자 장치
JP7119630B2 (ja) 2018-06-20 2022-08-17 日本電信電話株式会社 情報処理装置、情報交換システム、情報処理方法および情報処理プログラム
EP3836037A4 (en) 2018-07-10 2022-09-21 The Fourth Paradigm (Beijing) Tech Co Ltd METHOD AND SYSTEM FOR PERFORMING A MACHINE LEARNING PROCESS
WO2020026036A1 (en) 2018-07-31 2020-02-06 Marvell World Trade Ltd. Metadata generation at the storage edge
US20200042888A1 (en) 2018-07-31 2020-02-06 Gyrfalcon Technology Inc. Self-sufficient artificial intelligence edge devices
US20210279603A1 (en) 2018-12-13 2021-09-09 SparkCognition, Inc. Security systems and methods
FR3094511B1 (fr) 2019-03-25 2021-04-09 Alstom Transp Tech Procédé d’acquisition de données capturées par un module de capture embarqué dans un engin mobile suivant une trajectoire prédéterminée, programme d’ordinateur et dispositif correspondants
WO2020205655A1 (en) 2019-03-29 2020-10-08 Intel Corporation Autonomous vehicle system
US20200402328A1 (en) 2019-06-20 2020-12-24 Volvo Car Corporation Closed loop parallel batch data logging in a vehicle
CN111125442B (zh) 2019-12-11 2022-11-15 苏州智加科技有限公司 数据标注方法及装置

Also Published As

Publication number Publication date
CN112639768A (zh) 2021-04-09
EP4220437A1 (en) 2023-08-02
US11080337B2 (en) 2021-08-03
EP3830717B1 (en) 2023-04-12
EP3830716B1 (en) 2023-08-30
EP3830713A1 (en) 2021-06-09
KR20210037684A (ko) 2021-04-06
JP7326667B2 (ja) 2023-08-16
WO2020026036A1 (en) 2020-02-06
US20210342395A1 (en) 2021-11-04
US11734363B2 (en) 2023-08-22
JP7351057B2 (ja) 2023-09-27
JP2023179680A (ja) 2023-12-19
US11068544B2 (en) 2021-07-20
JP7419621B2 (ja) 2024-01-23
EP3830714A1 (en) 2021-06-09
JP2023171874A (ja) 2023-12-05
WO2020028594A1 (en) 2020-02-06
JP2021533446A (ja) 2021-12-02
US11294965B2 (en) 2022-04-05
EP4266194A1 (en) 2023-10-25
JP2022511233A (ja) 2022-01-31
CN112673368A (zh) 2021-04-16
WO2020028597A1 (en) 2020-02-06
JP2021533447A (ja) 2021-12-02
CN112771515A (zh) 2021-05-07
WO2020026112A1 (en) 2020-02-06
US20200045110A1 (en) 2020-02-06
US20210256062A1 (en) 2021-08-19
US11727064B2 (en) 2023-08-15
JP2021532472A (ja) 2021-11-25
EP3830715A1 (en) 2021-06-09
EP3830717A1 (en) 2021-06-09
US20200042548A1 (en) 2020-02-06
JP2021532473A (ja) 2021-11-25
US11036807B2 (en) 2021-06-15
EP3830714B1 (en) 2023-06-21
US20200042557A1 (en) 2020-02-06
EP3830716A1 (en) 2021-06-09
WO2020028594A9 (en) 2020-04-23
CN112513834A (zh) 2021-03-16
US11748418B2 (en) 2023-09-05
KR20210039394A (ko) 2021-04-09
US20200042549A1 (en) 2020-02-06
EP3830715B1 (en) 2023-02-22
US20200042240A1 (en) 2020-02-06
EP4206951A1 (en) 2023-07-05
CN112534423A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
JP2024038276A (ja) ストレージエッジで非構造化データオブジェクトを記述するメタデータを生成するためのシステムおよび方法
US10943600B2 (en) Systems and methods for interrelating text transcript information with video and/or audio information
US10685236B2 (en) Multi-model techniques to generate video metadata
US20200175332A1 (en) Out-of-sample generating few-shot classification networks
US20130325865A1 (en) Method and Server for Media Classification
CN112732949A (zh) 一种业务数据的标注方法、装置、计算机设备和存储介质
Sunny et al. Map-Reduce based framework for instrument detection in large-scale surgical videos
KR101640317B1 (ko) 오디오 및 비디오 데이터를 포함하는 영상의 저장 및 검색 장치와 저장 및 검색 방법
CN105045914B (zh) 信息归纳分析方法及装置
WO2020028583A1 (en) Systems and methods for generating metadata describing unstructured data objects at the storage edge
US11526548B1 (en) Image-based query language system for performing database operations on images and videos
US11941051B1 (en) System for performing programmatic operations using an image-based query language
KR20160120861A (ko) 영상 검색 방법, 장치 및 시스템
Bulysheva et al. Image database management architecture: logical structure and indexing methods
Feng Human-efficient Discovery of Edge-based Training Data for Visual Machine Learning
Iqbal Chowdhury et al. A Cascaded Long Short-Term Memory (LSTM) Driven Generic Visual Question Answering (VQA)
US20170315975A1 (en) Annotations for digital media items during capture
US20170315976A1 (en) Annotations for digital media items post capture

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240118