JP2009544070A - グローバルアセット管理 - Google Patents

グローバルアセット管理 Download PDF

Info

Publication number
JP2009544070A
JP2009544070A JP2009519532A JP2009519532A JP2009544070A JP 2009544070 A JP2009544070 A JP 2009544070A JP 2009519532 A JP2009519532 A JP 2009519532A JP 2009519532 A JP2009519532 A JP 2009519532A JP 2009544070 A JP2009544070 A JP 2009544070A
Authority
JP
Japan
Prior art keywords
node
manifest
asset
user
nodes
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
JP2009519532A
Other languages
English (en)
Other versions
JP2009544070A5 (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 JP2009544070A publication Critical patent/JP2009544070A/ja
Publication of JP2009544070A5 publication Critical patent/JP2009544070A5/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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本システム及び方法では、複数の機器、サーバ及びシステム間でデータを管理するため、ユーザが所有するアセットのメタデータをシステム内の各ノード乃至機器から取得し、ユーザ毎に且つそのメタデータに基づき、そのユーザが所有するアセットについての論理統合型総目録を作成する。その目録を管理するため、ユーザ所有仮想コレクションに属するアセットを網羅するデータを含むファイル乃至データベース、即ちマニフェストを使用する。

Description

本願は、2006年7月12日付米国暫定特許出願第60/830241号に基づく利益を享受する出願である。本発明は、複数個の機器、サーバ及びシステムに跨るデータ管理アーキテクチャ、サービス及び方法に関する。本発明は、特に、あらゆるシステムノード乃至機器からメタデータを取得し、それらに基づきユーザ所有アセットの論理統合型総目録(logically unified and aggregated view)を提供する技術に関する。
本願でいうアセット(digital asset)とは、静止画、動画、音声等のディジタルファイルのうち、個人的に楽しめるよう作成されておりパーソナルコンピュータ(PC)にダウンロードして保存することができるもののことである。ユーザは、通常、そのアセットを再生、聴取、視聴等したいときにそれらのアセットにアクセスする。また、アセットの提供や利用に関わる機器及びインターネットサービスは数多くある。例えばPDA(携帯情報端末)、ディジタルカメラ、PC、メディアサーバ、メディア端末、メディア提供サイト等である。
米国特許出願公開第2005/0055352号明細書 米国特許出願公開第2006/0107297号明細書 "Replication: Optimistic Approaches", Yashushi Saito and Marc Shapiro, Internet Systems and Storage Laboratory, HP Laboratories Palo Alto, HPL-2002-33, February 8, 2002 "Optimistic Replication Algorithms", Yashushi Saito, August 17,2000 "Timestamps in Message-Passing Systems That Preserve the Partial Ordering", Colin J. Fidge, Department of Computer Science, Australian National University, Canberra, ACT, Australian Computer Science Communications, Vol. 10, No. 1, pp. 56-66, February 1988 "Virtual Time and Global States of Distributed Systems", Friedemann Mattern, Department of Computer Science, University of Kaiserslautern, D6750, Kaiserslautern, German
一般に、それらの機器乃至サービスプロバイダで作成・提供されるアセットコレクション間の結合は疎結合であり、現今の同期手法では高々二機器間例えばPC・メディア端末間でしか同期させ得ない。特に問題なのは、特定のアセットにアクセスできない機器乃至サービスがあることや、アセット間同期をとるのに複数個所に同時ログインする必要があることや、アセット間同期を保てないと序列(organization)の乱れやデータ損失が生じることである。分散データシステムや特殊同期プログラムの分野では解決策が検討されているが確たる成功には至っていない。
上述した諸問題又はその一部を解決するため、本発明の一実施形態では、1個又は複数個のノードに散在するユーザ所有アセット(共有アセットを含む)を網羅するよう総目録(aggregated view)を作成することにより、それらのアセット全てにそのユーザがアクセスできるようにする。また、本実施形態では、この総目録即ちユーザ所有アセット(共有アセットを含む)の仮想コレクション(virtual collection)を維持するのにマニフェストを使用する。マニフェストとはアセットについてのデータを含むファイル乃至データベースであり、そのユーザが所有する仮想コレクション内の全アセットを網羅するよう作成・維持される。そして、仮想コレクションを維持するシステムとしては、仮想コレクションの作成、維持等に関わる幾つかの手順を組み合わせたアーキテクチャを使用する。
本発明の他の実施形態では、仮想コレクション維持用のデータ担体、アセット識別手法及び序列化手法、特に配下機器数及びアセット数が多いユーザメディアエコシステムで優れたパフォーマンスを発揮するものを提供する。そのため、データベース複製の分野でよく知られているバージョンベクトルをユニークなやり方で仮想コレクション管理に応用する。
本発明の更に他の実施形態では、ユーザの仮想コレクションに対する機器乃至コレクションの追加及び除去を簡便且つ効率的に行えるシステム乃至アーキテクチャを提供する。本実施形態によれば、消えてしまったデータの復元や多機器分散的な自動冗長化を優れた形態で実行して信頼性及び有用性を高めることができ、複数の機器に散在格納されているアセットを自動アーカイブ化することができ、CD、DVD等の名称及びコンテンツを追跡・把握することができ、更には差分アップデートを自動実行することもできる。
以下、その好適な実施形態を参照しつつ本発明について詳細に説明する。なお、これから説明する実施形態を変形乃至改良したものも本発明の技術的範囲に含まれうるので了解されたい。
[定義]
本願にて「アセット」とは、静止画(写真等)、動画(映画等)、音声又はマルチメディアプレゼンテーションを表すディジタルファイルのことである。その規格フォーマットはアセット種類毎に様々にある。
「所有者」とはアセットを所有する人物、即ちそのアセットを序列化及び管理する権限を有する人物のことである。従って所有者は他人に自分のアセット(オブジェクト)を見せることや改変を行わせることができる。但し、その場合でも、そのアセットに対する管理例えばアクセス制御は所有者だけが行うことができる。
「コレクション」とはその所有者が利用できるアセット例えば画像の全体集合のことである。
「個人的コレクション」とは“所有者”即ち“管理者”がいるアセットの集合のことである。その一部を他者と“共有”することもできる。共有されているアセットは各所有者の“拡張コレクション”の一部となるが、そうなった後もその所有者の個人的コレクションの一部であることに変わりはない。
「拡張コレクション」とはある人物からアクセス可能な範囲内にあるアセットの全体集合のことである。拡張コレクションには、その人物が専ら所有しているアセットだけでなく、例えば他の人物又は集団と“共用”しているアセット等も含まれる。
コレクションの「管理」とは、そのコレクションの所有者即ち管理者が、自らの好みに合うよう自コレクション内アセットの論理目録を序列化乃至調整することや、“共有”目的による他人のアクセスを許諾することや、そのアクセスのレベルを設定することである。
「GAM」とはグローバルアセット管理のことである。
「レンディション」とは、見た目の同一性が保たれるよう作成されユーザ向けに提示される内部表現、例えば低解像度機器でもその概略がわかるように質を落として画像を表現したもののことである。この仕組みはシステム構成上都合がよい。
[概観]
まず、ディジタル写真の普及及び大衆化は、ユーザによってディジタル撮影される写真及び動画の本数の増大やその形態の多様化をもたらしている。また、そのために開発された様々な機器、システム、ネットワーク、サービス等によって、ユーザメディアエコシステムと呼ばれるシステムが形成されている。
図1に例示する通り、ユーザメディアエコシステム10は三種類の主要ハブ乃至ノード、即ちユーザ家庭内メディア環境20、オンラインフォトサービスサイト30及び携帯機器40から構成される。そのうちユーザ家庭内メディア環境20は、テレビジョン受像器(TV)21、ノートPC22、プリンタ23、在宅執務用PC24、メディアボックス25等、家庭でよく見られるメディア録再機器と、それらの間を接続するホームネットワークとにより構成される。ネットワーク形成を担うのはメディアボックス25であり、このボックス25に通例通りTV21を接続すればケーブルTVチャネルを、またPC24やPC22に接続すればそれらに格納されている媒体即ちアセットを、家庭内のTV21で視聴することができる。
ユーザメディアエコシステム10を構成する二種類目の主要ノードはインターネット経由でアクセスされるオンラインフォトサービスサイト30である。ユーザは、ユーザ家庭内メディア環境20をインターネットにブロードバンド接続又はダイアルアップ接続しておき、サイト30のうちいずれかをPC操作で選んでそこにアクセスする。アクセス先サイト30では、ユーザ側から任意にアップロードされるアセットを、自サイトのサーバに保存し、ユーザからの指示に応じ印刷出力し、或いは他ユーザとのインターネット経由データ共有に供する。
ユーザメディアエコシステム10を構成する三種類目の主要ノードはディジタルカメラ41、カメラ付携帯電話42等といった機器に代表される携帯機器40である。この種の機器40を使えば、ユーザは、自分の好きな場所で写真を撮ったり眺めたりすることができる。カメラ付携帯電話42のように通信機能があるものなら、ユーザ家庭内メディア環境20内機器やオンラインフォトサービスサイト30にリモート接続することもできる。例えば携帯電話42・サイト30間をリモート接続するには、その携帯電話42を無線経由で携帯電話サービスに接続し、そのサービス経由でデータを転送してもらえばよい。
このユーザメディアエコシステム10には、ユーザがアセットの格納及びアクセスに使用できる機器が複数個ある。本発明で実現されるのはこうした分散システムの自動化である。自動化とは、自コレクション内アセットに対しユーザがいつでもまたシステム内のどのノードからでもアクセス、視聴、改変及び利用を行えるようにすること、とりわけそのアセットの所在ノード及び検索・発見手法を具体的に知らなくてもそれを行えるようにすることである。本願では、このシステム即ちコンピュータ、宅内機器、携帯機器、オンラインサービス等、1個又は複数個の機器乃至サービス上に所在しているユーザ所有アセット(静止画や動画等)を管理するシステムのことを、グローバルアセット管理システム即ちGAMシステムと呼んでいる。本発明に係るGAMシステムは、ユーザが自分のものだと思っている全アセットのメタデータからなる論理統合型総目録即ち「仮想コレクション」を形成する方式で実施するのが望ましいが、仮想コレクションが非常に大規模になりそうな場合等には、全アセットではなく一部のアセットのメタデータで仮想コレクションを形成する方式で実施してもよい。
自動化分散システムたるGAMシステムの下では、ユーザは、自分の仮想コレクションの配下にあるアセットに対し、いつでもまたシステム内のどのノードからでもアクセス、視聴、改変及び利用を行うことができる。そのアセットの所在ノード及び検索・発見手法を具体的に知っている必要はない。これを実現するには基本的にアクセス、集成及び維持の三能力が求められる。「アクセス」とはリモートノード上に存するアセット及びそれに付随するメタデータに到達する能力のことであり、「集成」とはシステム内に散在する諸アセットを網羅しアセットの物理的分布に関わりなくコレクション全体の“仮想的な”目録を作成する能力のことであり、「維持」とは接続の変更やノードの接続/遮断を反映しつつこの仮想的な目録を記憶に保つ能力のことである。
図2に、GAMシステムの一例たるGAMフォトシステム100のアーキテクチャを示す。図中、オンラインフォトサービスサイト110のノードではアセットコレクションデータベース111、アセットレポジトリ112及び一組のGAMサービス113が稼働している。データベース111は一種のデータ担体であり、ユーザを一群のアセット例えば画像に導くのに必要な全情報が蓄積されている。ただ、画像それ自体はデータベース111上にはなく、レポジトリ112内や各機器内のアセットキャッシュ131上に格納されている。データベース111に蓄積されているのは、ユーザプロファイル情報、どのレポジトリのどこにアセットがあるかを示すマップ、アセットを各種コンテナで表すユーザ向け目録等である。また、レポジトリ112はアセット例えば画像を長期に“保存”できるストレージ例えば物理メモリであり、それらの画像はいずれもデータベース111から参照を受ける。こうしたレポジトリ112では単純なファイルシステムを採用できるが、標準的なOSレベル機構等でアクセスできるなら他形式の外部データストレージを使用してもよい。そして、キャッシュ131は、GAM接続サービスによって選択的に要求されたアセットを一時記憶する部材であり、これにより待ち時間が短縮されまた普通は各機器へのアクセスが容易になる。なお、キャッシュ131内のアセット例えば画像はデータベース111による追跡、把握の対象外である。
各ローカルノードでは、コレクションのディレクトリがこうした単純なファイルシステムを用いそのデータベース上に形成される。このコレクションについての知識それ自体もまたアセットの一種であり、マニフェストとしてノード間でやりとりされる。マニフェストの記述には、コレクションの内容を序列化するコンテナオブジェクト(アルバム、イベント等)が用いられる。各コンテナオブジェクトによって個別のアセット(静止画、動画等)が参照されるので、アプリケーションは、そのコンテナオブジェクトのコンテンツたるアセットを操作、例えば検索、コピー等することができる。また、各マニフェストの符号化には、MPV、DIDL−Lite等のオープンスタンダードが用いられる。これは、このスタンダードでアセットを作成及び送受信できる機器の種類が多いためである。図5にマニフェストファイルのXMLコード例を示す。
なお、別の実施形態としては、マニフェストを複数個のパーティションの寄せ集めとし個々のノードにパーティションを持たせる(即ち1個のマニフェストで一括してカバーするのではない)形態もありうる。そのノードがネットワークに接続されているときだけそのノード向けにパーティションを提供すればよいので、各ノードが他ノードによるマニフェストを自コレクションに集成即ち維持する必要はない。
更に、ユーザコミュニティをサポートするため“共有グループ“なる扱いをすることもできる。共有グループは仮想的に一人の人間として扱える。例えばアセットアクセス許諾は、共有グループに対しても個々の人間に対してと同じ要領で行える。
また、あるノードはほとんど常時接続だが(オンライン)他のノードはそれほどには接続しない(ニアライン)、というように、接続頻度はノード毎に違う。システムで追跡しているアセットのうち何個かが、アーカイブ等のようなオフラインの場所乃至メディアに取り込まれることすらある。GAMシステムならば、どの場合でも仮想コレクションに対し存分にアクセスすることができる。
更に、ユーザは、アセットのコレクションを視聴できれば満足するわけではなく、その改変、再序列化、更には他者との共有化等の操作を様々な接続状態で行いたいと望むかもしれない。所望のアセット又はアセット群のアーカイブをリムーバブルメディア上へのコピー操作で作成することや、そのアセットへの参照を恒久記録内に残すことを、望むかもしれない。ユーザのなかには、ロケーショントランスパレントであればよい(システムのどこにアセットがあるかがすっきりとわかればよい)とする者もあれば、バックアップや最新情報へのアップデート等を目的としたノード間アセット移動によりアセットの所在を自分で把握したいと望む者もあろう。これらのことから、GAMシステムでは、各アセットが改変を受けたか否かを追跡的に調べ、全システムに対し改変の事実を遺漏なく且つインテリジェントに知らせるようにしている。
例えばGAMシステムの主要サービスの一つであるGAM接続サービスは、GAMシステムの稼働環境を監視し、稼働しているノードを認識し、また他ノードとの間でデータの共有化を図る役割を有している。アセット管理用データベースのアップデート情報を共有することや、画像その他のアセットを移動させること等、GAMシステムにおけるアセット共有形態をサポートするのに必要な種々のバックエンドサービスも、このGAM接続サービスの役割である。そして、個々のノードの特性及び能力を機器捜索中の仲間に知らせるサービスも、GAM接続サービスの役割である。
次に、GAMシステムを構成する諸要素についてより詳細に説明する。まず、GAMシステムに不可欠な機能の一つはノード間マニフェスト交換である。これは、調和サービスによって他ノード上のマニフェストを取得し、それを利用して他ノード上のアセット用ディレクトリにアクセスできるようにする機能である。また、ノード間マニフェスト交換を好適に実行するため、マニフェスト内メタデータをオープンスタンダードに従い符号化する。各アプリケーションは、他ノード上のアセットを自ノードに取り込むことなく、例えば家庭内他ノード上の仮想コレクションの部分目録を利用例えば提示することができる。
また、GAMシステムでは、全ノードに亘りアセットを網羅する共有ディレクトリ記述即ち総目録を作成する。これは共有ディレクトリ記述であるので、マニフェストと同じくファイル化することも、またアプリケーション用のデータベースに格納することもできる。加えて、GAMシステム内の各ノードは、家庭環境等の様々な場所で生じる修正、改変に対し自ノード上の仮想コレクションを調和させ、その修正、改変の影響を記憶即ち保持する。
図3に、概念アーキテクチャレベルにて、GAMシステム構成要素及びそれらの間で交わされる一連のメッセージを示す。図示した構成要素及びメッセージは、マニフェスト間調和によって家庭等に散在するアセットの統合型総目録を作成及び保持するためのものである。なかでも調和サービス320は、他ノード上における仮想コレクション350の内容をマニフェスト交換で取得し、そのマニフェスト360を部分目録の内容としてアプリケーション340の利用に供する。また、調和サービス320には、そのマニフェスト360のバージョンを解釈及び分析する論理も組み込まれている。即ち、起動直後やスケジュール上で実行時期が到来したとき他ノードに対して調和を呼びかける(ポーリングを実行する)ことにより、アプリケーション340によって参照される目録即ち仮想コレクション350を、例えば家庭内他ノード上のそれに同期させる機能を有している。例えば調和を呼びかける側のノードは、他ノードに対しマニフェスト要求を送信し(メッセージ301〜303)、そのノードからマニフェストを受信して復号し、復号したマニフェストと自ノード上のマニフェストとの違いを調べ、データアクセスサービスを稼働させて自ノード上の仮想コレクションのバージョンを適宜アップデートする。調和の呼びかけを受ける側のノードは、自ノードに対するマニフェスト要求を受信すると、自ノード上の仮想コレクションにアクセスし、そのマニフェストを符号化して送信する(メッセージ372)ことによって、そのマニフェスト要求に応答する。なお、他ノードから調和の呼びかけを受けつつ他ノードに調和を呼びかけることもある。
また、自ノード上の仮想コレクションにローカルな修正、改変を反映させる際にはアプリケーションがデータアブストラクションレイヤを呼び出し、調和サービスが受信したマニフェストに基づき他ノード上での修正、改変を反映させる際にもそのデータアブストラクションレイヤを呼び出す。即ち、各ノードは、仮想コレクション配下のメタデータを、データアクセスサービスにより提供される一組のアクセッサを使って読み出し(メッセージ373及び374)、また同じくデータアクセスサービスにより提供される一組のミューテイタを使って修正、改変する(メッセージ305、307、375及び374)。仮想コレクションが自ノード内のアプリケーションデータベース上にあるなら、そのアプリケーションはそのデータベースに直接アクセスしてローカルな修正、改変を反映させることもできる。
更に、GAMシステム構成ノード間情報交換を効率化するには、そのアルゴリズムとしてバージョンベクトル利用型のアルゴリズムを使用する。即ち、仮想コレクション配下アセット数の増加につれ交換対象たるマニフェストのサイズが増すので、マニフェストまるごと送信だと家庭内ネットワークの帯域幅条件に抵触して顕著なパフォーマンス低下が生じてしまう。そこで、家庭ドメイン等に新規加入したノードにはマニフェストをまるごと送り込むが、既存のノードにはマニフェストまるごとではなく仮想コレクション内の修正、改変部分の情報のみを送り込む、というアルゴリズムを提供する。このアルゴリズムでは、バージョンベクトルを利用し散在ノード間でアセットのメタデータを複製、同期させる。
本アルゴリズムでは、他ノード上における仮想コレクションの変化を知るため、調和サービスがノードバージョンベクトルをやりとりする。例えば調和呼びかけ側ノードの調和サービスは、スケジュールに従い他ノードにバージョンベクトル要求を送信し、そのノードのノードバージョンベクトルを受信して復号し、復号したノードバージョンベクトルと自ノード上の諸オブジェクトバージョンベクトルとの違いを(他ノードに対しアップデート版のメタデータを要求することによって)調べ、その結果に従いデータアクセスサービスを稼働させることによって、自ノード上の仮想コレクションを適宜アップデートする。
調和の呼びかけを受ける側のノードは、自ノードに対するバージョンベクトル要求を受信したとき、自ノード上の仮想コレクションにアクセスして自ノードのノードバージョンベクトルを調べ、それを符号化して送信することによってバージョンベクトル要求に応答する。なお、他ノードからバージョンベクトル要求を受信しつつ他ノードにバージョンベクトル要求を送信して自ノード上の目録をアップデートすることもある。
更に、データアクセスサービスは、仮想コレクションの内容に修正、改変が施されるとオブジェクトバージョンベクトルをアップデートする。即ち、データアクセスサービスは、仮想コレクションを構成するオブジェクトのうちそのメタデータが修正、改変されたものに係るバージョンベクトルをアップデートし、その仮想コレクション内修正・改変オブジェクトの付加情報として保存する。
従って、ユーザは、いつでもまたどのノードでも、コレクションの全体即ちグローバルコレクションを一覧することができる。また、このバージョンベクトル利用型アルゴリズムは楽観的な複製アルゴリズムであり、ノードi,jのデータベースDi,Dj間に一時的に違いが生じることを許容している。そのため、ノードi,j間で、ユーザに示される目録が食い違うこともある。しかし、それら2ノードi,j間が接続されている状態が十分に長い時間に亘り続けば、またその間に新たなアップデートが発生しなければ、データベースDi,Djはいずれ同じ内容に収束する。
なお、本アルゴリズムで使用するバージョンベクトルのうちノードバージョンベクトルは、個々の瞬間におけるデータベースの状態を1個のバージョンベクトルで表現したもの、即ちデータベース別のバージョンベクトルである。こうしたノードバージョンベクトルを利用することによって、自ノードを他ノードと同期させる必要があるか否かを各ノードで簡便且つ迅速に判別することができる。また、オブジェクトバージョンベクトルは個々のオブジェクトに関連づけられたバージョンベクトルである。これらのバージョンベクトルの実体はタイムスタンプ又はそのアレイであり、タイムスタンプは正の整数値である。この整数値即ちノードの論理時刻は、そのノードが自ノード内のデータベースをアップデートするたびに自ノード内の論理タイマをインクリメントすることによって、生成されたものである。
次に、下記諸点を前提として本アルゴリズムにつき説明する。
1.各ノードni内にデータベースDiがあり、また各ノードniにノードバージョンベクトルVViが対応付けられていること。
2.各ノードni内のデータベースDiによって、そのノードniにわかる限りで、各オブジェクトobjの最新状態を保持させること。具体的には、データベースDiが、四成分量{id(obj),value(obj),vv,ts}で表されるオブジェクトobjからなること。但し、id(obj)は各オブジェクトに対しユニークに割り振られたグローバルな識別子、value(obj)はそのオブジェクトの値、vvはそのオブジェクトに係るオブジェクトバージョンベクトル、tsはそのオブジェクトの値が最後にアップデートされ又はそのノードiのデータベースDiに追加された論理時刻におけるVVi[i]の値である。
3.VVi[k](但しk=i)で表される論理時刻が、ノードiにおける現在の論理時刻であること。なお、VVi[i]は、ノードiが自ノード内のデータベースDiを修正、改変するたびにそれに先立ちインクリメントされる。
4.VVi[k](但しk≠i)で表される論理時刻が、ノードiがノードkから受信した情報についてのタイムスタンプのなかで最も最近のもののそれであること。なお、ノードi,k間同期による直接受信だけでなく他ノード間同期を介した間接受信も含める。
5.同じ長さを有する2個のノードバージョンベクトルv1,v2があるとき、1≦i≦length(v1)を満たす全てのiについて、v1[i]<v2[i]ならv1<v2が成り立ち、v1[i]≧v2[i]なら成り立たないこと。1≦i≦length(v1)を満たす全てのiについて、v1[i]>v2[i]ならv1>v2が成り立ち、v1[i]≦v2[i]なら成り立たないこと。1≦i≦length(v1)を満たす全てのiについて、v1[i]=v2[i]ならv1=v2が成り立ち、v1[i]≠v2[i]なら成り立たないこと。これらを満たさない2個のノードバージョンベクトルは両立し得ない。言い換えれば、あるノードバージョンベクトル(第1ベクトル)の各要素が別のノードバージョンベクトル(第2ベクトル)の対応する要素未満の値ならば第1ベクトルが第2ベクトルより短小になるということ、並びに第1ベクトルが第2ベクトルより短いという条件を完全に成り立たせるには第1ベクトルの要素のうち少なくとも1個が第2ベクトルの対応する要素より小さいという条件を完全に成り立たせなければならないということ。2個のノードバージョンベクトルが両立し得ない値になるのは、対応するオブジェクトが同時期にアップデートされた結果その値に不整合(コンフリクト)が生じたときであり、それを解決するのにユーザの介入が必要になることもありうる。
6.オブジェクトバージョンベクトルとオブジェクトとの対応関係が下記アルゴリズムに記載の要領で維持されること。即ちそのオブジェクトが直近にアップデートされた論理時刻が保存されること。
7.各ノードniがノード集合Siを構成すること。即ち、現存ノードniの集合をシステム構成部分として扱い同期の対象にすること。
このアルゴリズムに従い同期処理を実行する場合、まずノードiにて次の処理
Figure 2009544070
を実行する。
この処理では、VVi[d]<VVd[d]が成り立ったときに、前回ノードi,d間で通信が行われた後ノードdが自ノード内のデータベースDdを修正、改変したと見なしている。これが生じるのは、ノードdが、独自に1個又は複数個のオブジェクトをアップデートした場合や別のノードからアップデートを受信した場合である。また、この処理を相互排他(mutex)ブロック内で実行するのは、同期手順実行中にローカルなアップデートが生じることや、また他ノードからの同期要求に応答しているノードが他ノードに同期を呼びかけることを、防ぐためである。
requestUpdatesメソッドでは次の処理
Figure 2009544070
を実行する。
即ち、requestUpdatesメソッドではまず、タイムスタンプVVd[i]に係る時刻以後に発生した全アップデート分を欲する旨の要求を他ノードdに送信し、ノードdからアップデート分を1個ずつ受信する。全アップデート分を受信し終えたら、自ノードバージョンベクトルの各要素をノードdのバージョンベクトルの対応要素と比較し、いずれか大きい方を以て自ノード側要素をアップデートする。このアップデートを実行することによって、ノードiは、自ノードiで未受信の新規アップデート分だけを他の諸ノードから受信できる状態になる。但し、アップデート分を受信する処理でタイムアップが生じた場合、このノードiのノードバージョンベクトルはアップデートされない。
他方、sendRequestメソッドにより生成された要求を受信した側のノード(recipient)では、次の処理
Figure 2009544070
を実行する。
即ち、要求受信側ノードは、次の処理
Figure 2009544070
に係るsendUpdatesメソッドを実行する。
sendUpdatesメソッドでは、従前のアップデート分を送信しながら自ノードにおけるアップデート発生分を処理する、という厄介な問題を回避するため、送信対象オブジェクトをmutexブロック内で選択している。選択されるオブジェクトは、アップデート要求元ノード(requestor)との最近の通信以後に改変、修正された可能性があるオブジェクトである。即ち、要求側ノードのバージョンベクトルの要素に比しそのタイムスタンプobj.tsが小さいオブジェクトを選び出す。obj.ts値を利用するのは、他ノードに送信した方がよいオブジェクト即ち候補オブジェクトを効率よく選び出すためである。タイムスタンプであるobj.ts値は単純なスカラー値であるので、バージョンベクトル全体を比較するのに比べかなり効率的に、候補オブジェクトを選定することができる。
その後、このアップデート送信元ノードは要求元ノードへの送信を実行する。送信されるのはそのバージョンベクトルの値が要求元ノード側の対応するそれより大きなオブジェクトだけであるので、要求元ノードが既に他ノードから受信済のデータがアップデート送信元ノードから送られることはない。また、アップデート分のオブジェクトをタイムスタンプ順にソートして送信するので、通信処理が終了する前に一方又は双方のノードがクラッシュした場合でも、そのノードを再起動させればアップデート分の損失なしにアップデートを行うことができる。これは、要求受信側ノードがアップデート送信元ノードとして送信するオブジェクトが、要求受信側ノードがこれまでに受信したアップデート分のなかで最新のものになるからである。
また、アップデート分のオブジェクトは一旦バファリングされsendUpdateメソッドによりひとまとまりに送信される。これはパフォーマンスを高めるためである。アップデート分を全て送信し終えたら、アップデート送信元ノードは更に最新のノードバージョンベクトルを送信する。このベクトルの中身は、初期要求に応じそのノードから既に送信済のノードバージョンベクトルに比べ、新しくなっていることがある。
翻って、そのアップデート分を受信する側のノードでは、実行中のgetUpdateメソッド
Figure 2009544070
内でreceiveUpdateメソッドを呼び出し、送信されてくるアップデート分を次から次へと受信する。
アップデート分を受信したら、まず自ノードにおける修正乃至改変とコンフリクトしていないか調べる。その際には、受信したオブジェクトバージョンベクトルと、自ノード上の対応するオブジェクトバージョンベクトルとを比べる。前者が後者より大きい(即ち新しい)場合には、自ノードオブジェクトを受信オブジェクトによってアップデートするためdoUpdateObjectメソッドを実行する。但し、既にその内容でのアップデートが済んでいる諸ノードに対する不要なオブジェクト送信を避けるため、doUpdateObjectメソッドを呼び出す際にその2個目のパラメタにfalse(偽)をセットすることにより、オブジェクトバージョンベクトルの値は変えないでおく。逆に、受信したオブジェクトバージョンベクトルの値が自ノード上の対応するオブジェクトバージョンベクトル以下である場合は、受信したオブジェクトのコピーでアップデートせずに自ノード上の対応するオブジェクトを使用し続けるようにする。アップデート送信元ノードはその種のオブジェクトを送信しないので通常ならこの種の状況は発生しないが、アップデート処理中断を経たノードが他ノードにアップデート分を要求する際に発生する可能性がある。そして、オブジェクトバージョンベクトル間の比較が成り立たない場合即ちそれらの値の間にコンフリクトが発生している場合には、コンフリクトリゾルバを用いてそのコンフリクトを解消する必要がある。次に示すresolveConflict関数
Figure 2009544070
は、自動的に又はユーザとのやりとりを通じてそのコンフリクトを解消する関数である。
この関数では、まずそのコンフリクトを解消可能か否かを調べる。解消可能であれば、対をなす2個のオブジェクトバージョンベクトルのうち大きな方をそのオブジェクトのオブジェクトバージョンベクトルとする。この場合、コンフリクト解消結果を他ノードへも広める必要があるので、自ノード上の対応するオブジェクトバージョンベクトルもインクリメントさせる。
オブジェクトを実際にアップデートするのは次のdoUpdateObjectメソッド
Figure 2009544070
である。
このメソッドが実行されると自ノード側のタイムスタンプVVi[i]は必ずインクリメントされ、そのオブジェクトのタイムスタンプにも必ずその値がセットされる。また、オブジェクトバージョンベクトルをアップデートするか否かはupdateObjVVフラグの値で決まる。他ノードから受信したオブジェクトの値に従い単純にデータベースをアップデートする場合でも、オブジェクトバージョンベクトルはアップデートせずに元の値のままにする。そうしないと、そのオブジェクトの送信元たる他ノードを含む他の諸ノードに対しこのオブジェクトが広まり、そのオブジェクトがローカルに修正、改変されたものと見なされてしまうからである。但し、コンフリクト解消のために呼び出された場合はオブジェクトバージョンベクトルもアップデートする。
そして、自ノードにおけるローカルなアップデートは、次のメソッド
Figure 2009544070
で処理する。
以上述べた通り、本アルゴリズムは本質的に一方向性のアルゴリズムとして設計されている。即ち、2ノード間を完全に同期させるため、本アルゴリズムを各ノードで個別実行させるように設計されている。従って、一時期切り離されていたノードをネットワークに再接続した場合、そのノードは、他の全てのノードとのやりとりを通じ自ノードに未反映のアップデート分を取得しなければならない。ただ、私的画像管理等のようにノードの個数がさほど多くない用途ならば、これはさほど問題にならない。
また、本アルゴリズムを実行できないシステム状態下でユーザが同一アセットに対し別々のノードで修正乃至改変を施した場合、コンフリクトになる可能性がある。そうしたコンフリクトでも本アルゴリズムの実行で検知することができる。更に、アセット1個当たり1個のバージョンベクトルを配するのではなく、各アセットのメタデータフィールド1個当たり1個のバージョンベクトルを配することもできる。システム側でメタデータレベルのバージョン追跡が実行されていれば、ユーザは、同一アセットに係る別々のメタデータ構成要素を、コンフリクトなしでアップデートすることができる。
そして、バージョンベクトルは、メッセージ伝達システムやデータベース複製システムでは広範に利用されているが、これまでにピアトゥピアファイル共有に広く適用されたことはない。特に、本アルゴリズムでは、バージョンベクトルを使用することによって、末端のユーザが自分のアセットに対しロケーショントランスパレントな(どこにあるのかすっきりわかる)形態にてアクセスできるようにしている。ユーザは、自宅のメディアサーバ経由でも、自分の無線カメラ等の携帯機器経由でも、或いはオンラインサービス経由でも、自分のアセットにアクセスしこれを管理することができる。ユーザがアクセスするレンディションが常にそのアセットの高解像度レンディションになるとは限らないが、本アルゴリズム下では、ユーザは自コレクションのブラウズ、操作、序列化等といった一般的操作を実行することができ、また各アセットの(システム構築者やユーザが複製対象に選定した)低解像度レンディションを一覧することもできる。
図4に、GAMシステム構成要素及びそれらの間で交わされる一連のメッセージのうち、アセット操作及びノード間移動(即ち検索処理)を実行するためのものを示す。
まず、ユーザの家庭等にあるノード上で実行されるアプリケーションは、そのアセットに係るファイルがどのノード上にあろうとも、そのアセットを検索、アップデート、保存及びコピーできねばならない。そのため、アセットアクセスサービス440は、アプリケーション460からの要求に応じアセットに関する次のような処理を実行する。即ち、編集又は印刷の対象となるアセットを検索し(メッセージ401)、編集されたアセットをアップデートして保存し、追加又は編集したセットを格納又はコピー保存し、ユーザが使用するアプリケーション上でデータアクセスサービスを稼働させる手順を制御し(メッセージ407〜409)、仮想コレクションにおける諸レンディションのアセットの所在を調べ、そしてレポジトリサービス430を介して仮想コレクション470外アセットのレンディションの所在を把握する。また、レポジトリサービス430は、ストレージサーバ上にあるアセットの目録へのアクセスを可能にするほか、他ノード上にあるアセットに関する情報も提供する。当該情報を提供するには、その他ノードがリモートからの要求に応じてアセットのファイルを送り返してくれなければならない。即ち、アセット管理開始側ノードのレポジトリサービス430は、アセット管理に関する要求(メッセージ402)を受け取ったとき、そのうち幾つかの要求(検索、アップデート乃至保存)については自ノード上で満足させ、他の要求(検索乃至コピー)については例えば家庭内にある他ノードにアクセスして満足させる(メッセージ404〜406)。
また、レポジトリサービスは、他ノードからアセットのファイルを受信したとき、それを保存する一方自ノードの仮想コレクションをアップデートする(メッセージ403,409)。
他方、アセット管理に関する要求を受信した方のノードでは、それに応じてアセットを探し(メッセージ405,494,496)、見つかったファイルを要求元ノードに送信する(メッセージ492〜493)。従って、レポジトリサービスは、アーカイブ化、バックアップ、リストア等に際し、ノード内アセット移動やノード間アセット移動の実行に役立つ。
こうしたアセット移動や前掲の調和に際しては他ノードへの要求送信及び当該他ノードからの回答受信が必要になるが、メッセージアブストラクションレイヤが介在するので、調和サービス及びレポジトリサービスではそうした通信の細部を把握する必要がない。ノード間通信に使用する送信フォーマット及びプロトコル(ソケット、FTP、ウェブサービス等)へのバインディングも、メッセージアブストラクションレイヤで適合させることができる。メッセージサービスは、送信側ノード側に立つときはアセットを他ノードとやりとりしたいとの要求を送信し、アセットの要求を受ける受信側ノード側に立つときはその種のメッセージを受信する。
また、各ノードは自ノードのプロパティを知っているが、自ドメイン内他ノードのそれは知らないことがあるので、自ドメイン内他ノードを動的に探してノードプロファイルの送信を要求する。接続サービスはプロファイルを通じそのノードについての情報を認識する。ノードプロファイルはメタデータのエントリの一つであり、要求に応じ送信される情報である。ノードプロファイルは、そのノードだけがアプリオリに知っている静的なプロパティを定義している。ノードプロパティに含まれるのは、例えばサービス及び能力についての情報(例えばマニフェスト付ストレージノードである等の情報)や、そのノードと連絡を付ける手段についての情報(例えばプロトコルや証明書についての情報)である。
更に、グローバルユーザアカウント、諸ユーザ及びグループに対するアセットアクセス優先度制御、ノード間移動時交換情報保護等を伴うセキュリティエリアを、GAMシステム内に幾つか設けてもよい。
そして、アーカイブ化機能及びバックアップ/リストア機能をイベントサービスによって提供してもよい。これらは、データベースやディジタルアセットのコピーを作成する機能であり、システム障害への予備的対策になるだけでなく、記憶/記録空間の解放等につながることもある。
アーカイブ化とは、アセットをオフラインストレージ等といった比較的信頼の置ける媒体上にコピー又は移動すること、特にいつでもまたいつまでもそれを視聴できるようにしておくことである。アーカイブ化したアセットはユーザによるマニュアル操作等特定の操作乃至指令で随時呼び出すことができる。アーカイブの所在はアセット管理用のデータベースで把握できる。対応するアセットに改変、修正等が施された後もアーカイブ内のアセットについての情報は保持される。ノード間を跨ったアーカイブ化も可能である。そして、ユーザは、アプリケーション上で明示的に指示することにより、アーカイブ内のアセットをシステム内に移動させることもできる。
これに対しバックアップとは、システム障害発生後に自分のコレクションを復元することができるよう、任意時点でノードの“スナップショット”を撮ること、即ちユーザ所有コレクションのうちそのノード内のデータベースやレポジトリ上にある部分に係るデータをコピーしておくことである。アーカイブ内ではアセットのコンテキストが原状通り保たれるがバックアップセット内ではそうでないので、通常の動作でバックアップセット内アセットにアクセスすることはできない。また、ユーザ所有コレクションに属するアセットは様々なノードに散在しているので、それらを一個所にまとめてバックアップするのは難しい。従ってバックアップは個々のノード内で行った方がよいが、全アセットを記憶させうる程にリソースが豊富なノードがあるのであれば、そのノードにアセットが“自動コピー”されるようシステムをセッティングすることもできる。この自動コピーモードでは、ユーザ所有コレクション全体をそのノードにまとめてバックアップすることができる。更に、GAMシステムやバックアップ装置がサポートしている標準的な序列化方式に則り、バックアップ範囲を指定することや、一括バックアップか差分バックアップかを指定することや、バックアップ周期を指定することもできる。GAMシステムのデータベースには、アセット(アセット自体やデータベース上のデータ)がバックアップされた日時を記録しておく。バックアップが行われていれば、所要ノード上のGAM情報にバックアップセットをコピー、上書きすることによって、そのノードをバックアップ時そのままの状態に戻すことができる。
なお、本発明は本願で図示説明した実施形態には限定されない。別紙特許請求の範囲による定義からわかる通り、本発明の技術的範囲内で更なる変形乃至改良をこらすことが可能である。
ユーザメディアエコシステムを示す図である。 システムアーキテクチャを示す図である。 仮想コレクション調和用コンポーネントを示す図である。 アセットレポジトリ管理用コンポーネントを示す図である。 XMLで記述したマニフェストを示す図である。
10 ユーザメディアエコシステム、20 ユーザ家庭内メディア環境、21 TV(テレビジョン受像器)、22 ノートPC(パーソナルコンピュータ)、23 プリンタ、24 在宅執務用PC、25 メディアボックス、30,110 オンラインフォトサービスサイト、40 携帯機器、41 ディジタルカメラ、42 カメラ付携帯電話、100 GAM(グローバルアセット管理)フォトシステム、111 アセットコレクションデータベース、112 アセットレポジトリ、113 GAMサービス、120 宅内システム、130 ユーザ携帯機器、131 アセットキャッシュ、140 小売りサービス、150 バックオフィスサポート、160 基本サービス、170 付加サービス、180 メタデータ交換方式、300,400 第1ノード、301,376 目録調和要求、302,404,492 ノードチェック、303 マニフェスト要求、304 マニフェスト受信、305,375 目録修正要求、306 データアクセス要求、307,374 仮想コレクションアップデート、310,420 接続サービス、320 調和サービス、330,450 データアクセスサービス、340,460 家庭用アプリケーション、350,470 仮想コレクション、360 コレクションのマニフェスト、370,490 第2ノード、371 接続サービス要求、372 マニフェスト生成送信、373 目録取得要求、401 検索要求、402 アセット取得要求、403 ファイル格納、405 ファイル要求、406 アセットファイル受信、407 情報格納要求、408,494,495 情報取得要求、409 仮想コレクションアクセス/アップデート、410 ファイルストレージ、415 アセットのファイル、430 レポジトリサービス、440 アセットアクセスサービス、491 ファイル取得、493 アセットファイル送信、496 仮想コレクション読出、497 アセットアクセス要求。

Claims (13)

  1. そのマニフェストの各エントリがユーザ所有アセットに係るメタデータ並びに各ユーザ所有アセットの序列及び所在を表すこととなるようマニフェストを作成し、複数のノード間で同一のマニフェストを保持することにより、ユーザ所有アセットをネットワーク上で管理するシステム。
  2. 請求項1記載のシステムであって、上記複数のノードが通信ネットワーク経由で接続されたノードを含むシステム。
  3. 請求項1記載のシステムであって、各ノードが家庭内機器、オンラインフォトサービス又は携帯機器を含むシステム。
  4. 請求項3記載のシステムであって、ノード内の家庭内機器がテレビジョン受像器、パーソナルコンピュータ、プリンタ又はメディアボックスであるシステム。
  5. 請求項1記載のシステムであって、ユーザ所有アセットが静止画、動画、音声又はマルチメディアプレゼンテーションであるシステム。
  6. 第1ノード第2ノード間に通信用の接続を確立するステップと、
    第2ノード上のマニフェストのバージョンベクトルを第2ノードから送信するステップと、
    第2ノードがマニフェストのアップデート分を送信するステップと、
    第1ノード上のマニフェストを第2ノードから送信されたアップデート分に基づきアップデートするステップと、
    を有し、ネットワーク上に存する複数のノードのマニフェストであって各エントリがユーザ所有アセットに係るメタデータ並びに各アセットの序列及び所在を表すよう作成されたものを、アップデートする方法。
  7. 請求項6記載の方法であって、上記複数のノードが通信ネットワーク経由で接続されたノードを含む方法。
  8. 請求項6記載の方法であって、各ノードが家庭内機器、オンラインフォトサービス又は携帯機器を含む方法。
  9. 請求項8記載の方法であって、ノード内の家庭内機器がテレビジョン受像器、パーソナルコンピュータ、プリンタ又はメディアボックスである方法。
  10. 請求項6記載の方法であって、ユーザ所有アセットが静止画、動画、音声又はマルチメディアプレゼンテーションである方法。
  11. 請求項6記載の方法であって、第1,第2各ノード上のマニフェストが更にエントリ別バージョンベクトルを含み、第1ノード上のマニフェストのアップデートに第2ノードから受信したアップデート分のうちどれを使用すべきかを、それらエントリ別バージョンベクトルに基づき判別する方法。
  12. 請求項6記載の方法であって、各ノードで保持されるマニフェストを構成する個々のエントリが、そのアセットに係る1個又は複数個のメタデータ構成要素を含み、各エントリにエントリ別バージョンベクトルが付随し、第1ノード上のマニフェストのアップデートに第2ノードから受信したアップデート分のうちどれを使用すべきかを、それらエントリ別バージョンベクトルに基づき判別する方法。
  13. 請求項6記載の方法であって、第2ノードから受信したバージョンベクトルを第1ノード上のバージョンベクトルと比較することによって、第1ノード上のマニフェストについてそのアップデートの要否を判別する方法。
JP2009519532A 2006-07-12 2007-07-12 グローバルアセット管理 Pending JP2009544070A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US83024106P 2006-07-12 2006-07-12
US11/776,199 US20090030952A1 (en) 2006-07-12 2007-07-11 Global asset management
PCT/US2007/015916 WO2008008448A2 (en) 2006-07-12 2007-07-12 Global asset management

Publications (2)

Publication Number Publication Date
JP2009544070A true JP2009544070A (ja) 2009-12-10
JP2009544070A5 JP2009544070A5 (ja) 2010-09-09

Family

ID=38923902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009519532A Pending JP2009544070A (ja) 2006-07-12 2007-07-12 グローバルアセット管理

Country Status (5)

Country Link
US (1) US20090030952A1 (ja)
EP (1) EP2038778A2 (ja)
JP (1) JP2009544070A (ja)
CN (1) CN101490680B (ja)
WO (1) WO2008008448A2 (ja)

Families Citing this family (126)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8590013B2 (en) 2002-02-25 2013-11-19 C. S. Lee Crawford Method of managing and communicating data pertaining to software applications for processor-based devices comprising wireless communication circuitry
US20070192318A1 (en) * 2005-09-14 2007-08-16 Jorey Ramer Creation of a mobile search suggestion dictionary
US8156128B2 (en) * 2005-09-14 2012-04-10 Jumptap, Inc. Contextual mobile content placement on a mobile communication facility
US20070118533A1 (en) * 2005-09-14 2007-05-24 Jorey Ramer On-off handset search box
US7577665B2 (en) 2005-09-14 2009-08-18 Jumptap, Inc. User characteristic influenced search results
US8209344B2 (en) 2005-09-14 2012-06-26 Jumptap, Inc. Embedding sponsored content in mobile applications
US7769764B2 (en) 2005-09-14 2010-08-03 Jumptap, Inc. Mobile advertisement syndication
US9058406B2 (en) 2005-09-14 2015-06-16 Millennial Media, Inc. Management of multiple advertising inventories using a monetization platform
US20090240568A1 (en) * 2005-09-14 2009-09-24 Jorey Ramer Aggregation and enrichment of behavioral profile data using a monetization platform
US20070061246A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Mobile campaign creation
US20070061211A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Preventing mobile communication facility click fraud
US8688671B2 (en) 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
US20110313853A1 (en) 2005-09-14 2011-12-22 Jorey Ramer System for targeting advertising content to a plurality of mobile communication facilities
US8290810B2 (en) * 2005-09-14 2012-10-16 Jumptap, Inc. Realtime surveying within mobile sponsored content
US8027879B2 (en) * 2005-11-05 2011-09-27 Jumptap, Inc. Exclusivity bidding for mobile sponsored content
US20070073717A1 (en) * 2005-09-14 2007-03-29 Jorey Ramer Mobile comparison shopping
US9471925B2 (en) * 2005-09-14 2016-10-18 Millennial Media Llc Increasing mobile interactivity
US8819659B2 (en) 2005-09-14 2014-08-26 Millennial Media, Inc. Mobile search service instant activation
US7912458B2 (en) 2005-09-14 2011-03-22 Jumptap, Inc. Interaction analysis and prioritization of mobile content
US20070073718A1 (en) * 2005-09-14 2007-03-29 Jorey Ramer Mobile search service instant activation
US20070061198A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Mobile pay-per-call campaign creation
US20080214152A1 (en) * 2005-09-14 2008-09-04 Jorey Ramer Methods and systems of mobile dynamic content presentation
US20080215429A1 (en) * 2005-11-01 2008-09-04 Jorey Ramer Using a mobile communication facility for offline ad searching
US8503995B2 (en) 2005-09-14 2013-08-06 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US8615719B2 (en) * 2005-09-14 2013-12-24 Jumptap, Inc. Managing sponsored content for delivery to mobile communication facilities
US20090234861A1 (en) * 2005-09-14 2009-09-17 Jorey Ramer Using mobile application data within a monetization platform
US8805339B2 (en) 2005-09-14 2014-08-12 Millennial Media, Inc. Categorization of a mobile user profile based on browse and viewing behavior
US20090234711A1 (en) * 2005-09-14 2009-09-17 Jorey Ramer Aggregation of behavioral profile data using a monetization platform
US8195133B2 (en) 2005-09-14 2012-06-05 Jumptap, Inc. Mobile dynamic advertisement creation and placement
US8989718B2 (en) * 2005-09-14 2015-03-24 Millennial Media, Inc. Idle screen advertising
US10592930B2 (en) * 2005-09-14 2020-03-17 Millenial Media, LLC Syndication of a behavioral profile using a monetization platform
US20090029687A1 (en) * 2005-09-14 2009-01-29 Jorey Ramer Combining mobile and transcoded content in a mobile search result
US20110143731A1 (en) * 2005-09-14 2011-06-16 Jorey Ramer Mobile Communication Facility Usage Pattern Geographic Based Advertising
US9201979B2 (en) * 2005-09-14 2015-12-01 Millennial Media, Inc. Syndication of a behavioral profile associated with an availability condition using a monetization platform
US8131271B2 (en) * 2005-11-05 2012-03-06 Jumptap, Inc. Categorization of a mobile user profile based on browse behavior
US9703892B2 (en) 2005-09-14 2017-07-11 Millennial Media Llc Predictive text completion for a mobile communication facility
US20070060173A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Managing sponsored content based on transaction history
US20080214204A1 (en) * 2005-11-01 2008-09-04 Jorey Ramer Similarity based location mapping of mobile comm facility users
US20080214154A1 (en) * 2005-11-01 2008-09-04 Jorey Ramer Associating mobile and non mobile web content
US20080214149A1 (en) * 2005-09-14 2008-09-04 Jorey Ramer Using wireless carrier data to influence mobile search results
US8832100B2 (en) * 2005-09-14 2014-09-09 Millennial Media, Inc. User transaction history influenced search results
US20080242279A1 (en) * 2005-09-14 2008-10-02 Jorey Ramer Behavior-based mobile content placement on a mobile communication facility
US20070061247A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Expected value and prioritization of mobile content
US20070288427A1 (en) * 2005-09-14 2007-12-13 Jorey Ramer Mobile pay-per-call campaign creation
US8660891B2 (en) * 2005-11-01 2014-02-25 Millennial Media Interactive mobile advertisement banners
US8364540B2 (en) 2005-09-14 2013-01-29 Jumptap, Inc. Contextual targeting of content using a monetization platform
US8238888B2 (en) * 2006-09-13 2012-08-07 Jumptap, Inc. Methods and systems for mobile coupon placement
US20080214155A1 (en) * 2005-11-01 2008-09-04 Jorey Ramer Integrating subscription content into mobile search results
US20090234745A1 (en) * 2005-11-05 2009-09-17 Jorey Ramer Methods and systems for mobile coupon tracking
US7702318B2 (en) 2005-09-14 2010-04-20 Jumptap, Inc. Presentation of sponsored content based on mobile transaction event
US8302030B2 (en) 2005-09-14 2012-10-30 Jumptap, Inc. Management of multiple advertising inventories using a monetization platform
US20080214151A1 (en) * 2005-09-14 2008-09-04 Jorey Ramer Methods and systems for mobile coupon placement
US7860871B2 (en) * 2005-09-14 2010-12-28 Jumptap, Inc. User history influenced search results
US8515400B2 (en) 2005-09-14 2013-08-20 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US8229914B2 (en) * 2005-09-14 2012-07-24 Jumptap, Inc. Mobile content spidering and compatibility determination
US8364521B2 (en) * 2005-09-14 2013-01-29 Jumptap, Inc. Rendering targeted advertisement on mobile communication facilities
US7752209B2 (en) 2005-09-14 2010-07-06 Jumptap, Inc. Presenting sponsored content on a mobile communication facility
US8103545B2 (en) 2005-09-14 2012-01-24 Jumptap, Inc. Managing payment for sponsored content presented to mobile communication facilities
US20110143733A1 (en) * 2005-09-14 2011-06-16 Jorey Ramer Use Of Dynamic Content Generation Parameters Based On Previous Performance Of Those Parameters
US20070239724A1 (en) * 2005-09-14 2007-10-11 Jorey Ramer Mobile search services related to direct identifiers
US20070061317A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Mobile search substring query completion
US20070060129A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Mobile communication facility characteristic influenced search results
US20070100806A1 (en) * 2005-11-01 2007-05-03 Jorey Ramer Client libraries for mobile content
US8666376B2 (en) * 2005-09-14 2014-03-04 Millennial Media Location based mobile shopping affinity program
US20070073722A1 (en) * 2005-09-14 2007-03-29 Jorey Ramer Calculation and presentation of mobile content expected value
US7660581B2 (en) * 2005-09-14 2010-02-09 Jumptap, Inc. Managing sponsored content based on usage history
US20080215623A1 (en) * 2005-09-14 2008-09-04 Jorey Ramer Mobile communication facility usage and social network creation
US9076175B2 (en) * 2005-09-14 2015-07-07 Millennial Media, Inc. Mobile comparison shopping
US8311888B2 (en) * 2005-09-14 2012-11-13 Jumptap, Inc. Revenue models associated with syndication of a behavioral profile using a monetization platform
US20080215557A1 (en) * 2005-11-05 2008-09-04 Jorey Ramer Methods and systems of mobile query classification
US8812526B2 (en) 2005-09-14 2014-08-19 Millennial Media, Inc. Mobile content cross-inventory yield optimization
US20080214153A1 (en) * 2005-09-14 2008-09-04 Jorey Ramer Mobile User Profile Creation based on User Browse Behaviors
US7676394B2 (en) 2005-09-14 2010-03-09 Jumptap, Inc. Dynamic bidding and expected value
US10038756B2 (en) * 2005-09-14 2018-07-31 Millenial Media LLC Managing sponsored content based on device characteristics
US20100312572A1 (en) * 2005-09-14 2010-12-09 Jump Tap, Inc. Presentation of Interactive Mobile Sponsor Content
US20070061334A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Search query address redirection on a mobile communication facility
US20080214148A1 (en) * 2005-11-05 2008-09-04 Jorey Ramer Targeting mobile sponsored content within a social network
US20070061242A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Implicit searching for mobile content
US10911894B2 (en) 2005-09-14 2021-02-02 Verizon Media Inc. Use of dynamic content generation parameters based on previous performance of those parameters
US7548915B2 (en) * 2005-09-14 2009-06-16 Jorey Ramer Contextual mobile content placement on a mobile communication facility
US8175585B2 (en) 2005-11-05 2012-05-08 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US20100121705A1 (en) * 2005-11-14 2010-05-13 Jumptap, Inc. Presentation of Sponsored Content Based on Device Characteristics
US8571999B2 (en) 2005-11-14 2013-10-29 C. S. Lee Crawford Method of conducting operations for a social network application including activity list generation
JP2008059188A (ja) * 2006-08-30 2008-03-13 Seiko Epson Corp 情報処理装置
US20090157849A1 (en) * 2007-10-02 2009-06-18 Seamus Mcdonald Systems and methods for photo management
US8005272B2 (en) * 2008-01-03 2011-08-23 International Business Machines Corporation Digital life recorder implementing enhanced facial recognition subsystem for acquiring face glossary data
US8014573B2 (en) * 2008-01-03 2011-09-06 International Business Machines Corporation Digital life recording and playback
US9164995B2 (en) * 2008-01-03 2015-10-20 International Business Machines Corporation Establishing usage policies for recorded events in digital life recording
US9105298B2 (en) * 2008-01-03 2015-08-11 International Business Machines Corporation Digital life recorder with selective playback of digital video
US9270950B2 (en) * 2008-01-03 2016-02-23 International Business Machines Corporation Identifying a locale for controlling capture of data by a digital life recorder based on location
US7894639B2 (en) * 2008-01-03 2011-02-22 International Business Machines Corporation Digital life recorder implementing enhanced facial recognition subsystem for acquiring a face glossary data
US8635196B2 (en) * 2008-01-04 2014-01-21 Apple Inc. Systems and methods for providing pre-populated media devices
US7873745B2 (en) * 2008-04-30 2011-01-18 International Business Machines Corporation Message receipt version management in network
US8656054B2 (en) * 2008-04-30 2014-02-18 International Business Machines Corporation Message send version management in network
US8122037B2 (en) 2008-05-12 2012-02-21 Research In Motion Limited Auto-selection of media files
US8095566B2 (en) 2008-05-12 2012-01-10 Research In Motion Limited Managing media files from multiple sources
US10552384B2 (en) 2008-05-12 2020-02-04 Blackberry Limited Synchronizing media files available from multiple sources
US8086651B2 (en) 2008-05-12 2011-12-27 Research In Motion Limited Managing media files using metadata injection
EP2120166A1 (en) * 2008-05-12 2009-11-18 Research In Motion Limited Synchronizing media files available from multiple sources
US20090282078A1 (en) * 2008-05-12 2009-11-12 Motion Limited Unified media file architecture
US8706690B2 (en) 2008-05-12 2014-04-22 Blackberry Limited Systems and methods for space management in file systems
FR2932289B1 (fr) * 2008-06-06 2012-08-03 Active Circle Procede et systeme de synchronisation de modules logiciels d'un systeme informatique distribue en grappe de serveurs, application au stockage de donnees.
US8805846B2 (en) * 2008-09-30 2014-08-12 Apple Inc. Methods and systems for providing easy access to information and for sharing services
US8734872B2 (en) 2008-09-30 2014-05-27 Apple Inc. Access control to content published by a host
US8832023B2 (en) * 2009-01-30 2014-09-09 Apple Inc. System for managing distributed assets and metadata
US9760573B2 (en) 2009-04-28 2017-09-12 Whp Workflow Solutions, Llc Situational awareness
US10419722B2 (en) 2009-04-28 2019-09-17 Whp Workflow Solutions, Inc. Correlated media source management and response control
US8311983B2 (en) 2009-04-28 2012-11-13 Whp Workflow Solutions, Llc Correlated media for distributed sources
US10565065B2 (en) 2009-04-28 2020-02-18 Getac Technology Corporation Data backup and transfer across multiple cloud computing providers
US9569543B2 (en) 2010-01-15 2017-02-14 International Business Machines Corporation Sharing of documents with semantic adaptation across mobile devices
JP5464267B2 (ja) * 2010-03-19 2014-04-09 富士通株式会社 資産管理装置、資産管理方法および資産管理プログラム
US9131147B2 (en) * 2011-10-07 2015-09-08 Fuji Xerox Co., Ltd. System and method for detecting and acting on multiple people crowding a small display for information sharing
CN103067797B (zh) * 2013-01-30 2015-04-08 烽火通信科技股份有限公司 智能odn管理系统的维护方法
US9423922B2 (en) 2013-12-24 2016-08-23 Dropbox, Inc. Systems and methods for creating shared virtual spaces
US9544373B2 (en) 2013-12-24 2017-01-10 Dropbox, Inc. Systems and methods for maintaining local virtual states pending server-side storage across multiple devices and users and intermittent network connections
US10067652B2 (en) 2013-12-24 2018-09-04 Dropbox, Inc. Providing access to a cloud based content management system on a mobile device
US10057618B2 (en) 2014-06-06 2018-08-21 Microsoft Technology Licensing, Llc System for filtering media manifests using manifest attributes
US9628551B2 (en) 2014-06-18 2017-04-18 International Business Machines Corporation Enabling digital asset reuse through dynamically curated shared personal collections with eminence propagation
US9846703B2 (en) 2014-09-30 2017-12-19 Vivint, Inc. Page-based metadata system for distributed filesystem
US10156842B2 (en) 2015-12-31 2018-12-18 General Electric Company Device enrollment in a cloud service using an authenticated application
CN107451918B (zh) * 2016-05-31 2020-11-03 创新先进技术有限公司 资产数据管理方法及装置
CN107341207B (zh) * 2017-06-23 2020-03-17 深圳市盛路物联通讯技术有限公司 一种节点信息管理方法及装置
WO2019126265A1 (en) * 2017-12-22 2019-06-27 Scripps Networks Interactive, Inc. Cloud hybrid application storage management (chasm) system
US10915606B2 (en) * 2018-07-17 2021-02-09 Grupiks Llc Audiovisual media composition system and method
US11609898B2 (en) * 2020-06-18 2023-03-21 Apple Inc. Ensuring consistent metadata across computing devices
US11513905B2 (en) * 2020-06-23 2022-11-29 EMC IP Holding Company LLC Controlling search access to assets in a data protection product

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319748A (ja) * 1994-05-23 1995-12-08 Internatl Business Mach Corp <Ibm> データ処理システム内で複写データ一貫性を維持するためのシステムおよび方法
JPH08305714A (ja) * 1995-04-28 1996-11-22 Fujitsu Ltd 分散データベース管理システム
JP2000057032A (ja) * 1998-07-03 2000-02-25 Mitsubishi Electric Inf Technol Center America Inc 複数のサ―バでオブジェクトを同期させる汎用システム、2つのサ―バでオブジェクトを同期させるシステム、2つのサ―バでオブジェクトを同期させる方法、2つのサ―バに存在するオブジェクトがオブジェクトのタイプに関係なく同期される汎用同期システム、2つのサ―バでのオブジェクトの同期における競合を検出して解消する方法
US20040039754A1 (en) * 2002-05-31 2004-02-26 Harple Daniel L. Method and system for cataloging and managing the distribution of distributed digital assets
JP2005509979A (ja) * 2001-11-15 2005-04-14 ヴィスト・コーポレーション 非同期型同期のシステムおよび方法
JP2005293560A (ja) * 2004-04-01 2005-10-20 Microsoft Corp 項目収束(すなわち、データ収束)を施行するための競合解決を伝播するシステムおよび方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765171A (en) * 1995-12-29 1998-06-09 Lucent Technologies Inc. Maintaining consistency of database replicas
US7068309B2 (en) * 2001-10-09 2006-06-27 Microsoft Corp. Image exchange with image annotation
US7956272B2 (en) * 2002-07-30 2011-06-07 Apple Inc. Management of files in a personal communication device
BR0313804A (pt) * 2002-08-21 2005-07-05 Disney Entpr Inc Biblioteca digital doméstica de filmes
US7406499B2 (en) * 2003-05-09 2008-07-29 Microsoft Corporation Architecture for partition computation and propagation of changes in data replication
US20050055352A1 (en) * 2003-09-08 2005-03-10 Sony Corporation Content directory and synchronization bridge
EP1583005A3 (en) * 2004-04-02 2007-01-10 Samsung Electronics Co., Ltd. File management and apparatus for controlling digital contents in multimedia appliances and information recording medium therefor
KR100677116B1 (ko) * 2004-04-02 2007-02-02 삼성전자주식회사 사이클릭 레퍼런싱 방법/장치, 파싱 방법/장치 및 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한기록매체
US7420956B2 (en) * 2004-04-16 2008-09-02 Broadcom Corporation Distributed storage and aggregation of multimedia information via a broadband access gateway
AU2005248691A1 (en) * 2004-05-25 2005-12-08 Samsung Electronics Co., Ltd. Method of reproducing multimedia data using musicphotovideo profiles and reproducing apparatus using the method
JP4774806B2 (ja) * 2005-05-25 2011-09-14 セイコーエプソン株式会社 ファイル検索装置、印刷装置、ファイル検索方法及びそのプログラム
US7693958B2 (en) * 2005-06-20 2010-04-06 Microsoft Corporation Instant messaging with data sharing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319748A (ja) * 1994-05-23 1995-12-08 Internatl Business Mach Corp <Ibm> データ処理システム内で複写データ一貫性を維持するためのシステムおよび方法
JPH08305714A (ja) * 1995-04-28 1996-11-22 Fujitsu Ltd 分散データベース管理システム
JP2000057032A (ja) * 1998-07-03 2000-02-25 Mitsubishi Electric Inf Technol Center America Inc 複数のサ―バでオブジェクトを同期させる汎用システム、2つのサ―バでオブジェクトを同期させるシステム、2つのサ―バでオブジェクトを同期させる方法、2つのサ―バに存在するオブジェクトがオブジェクトのタイプに関係なく同期される汎用同期システム、2つのサ―バでのオブジェクトの同期における競合を検出して解消する方法
JP2005509979A (ja) * 2001-11-15 2005-04-14 ヴィスト・コーポレーション 非同期型同期のシステムおよび方法
US20040039754A1 (en) * 2002-05-31 2004-02-26 Harple Daniel L. Method and system for cataloging and managing the distribution of distributed digital assets
JP2005293560A (ja) * 2004-04-01 2005-10-20 Microsoft Corp 項目収束(すなわち、データ収束)を施行するための競合解決を伝播するシステムおよび方法

Also Published As

Publication number Publication date
CN101490680A (zh) 2009-07-22
US20090030952A1 (en) 2009-01-29
CN101490680B (zh) 2012-08-29
WO2008008448A2 (en) 2008-01-17
WO2008008448A3 (en) 2008-07-24
EP2038778A2 (en) 2009-03-25

Similar Documents

Publication Publication Date Title
JP2009544070A (ja) グローバルアセット管理
CN107861686B (zh) 文件存储方法、服务端和计算机可读存储介质
EP2035976B1 (en) System and method for managing images over a network
US8176061B2 (en) Tracking digital assets on a distributed network
US8832023B2 (en) System for managing distributed assets and metadata
US8825598B2 (en) Media file synchronization
US20070073766A1 (en) System, Method, and Computer-Readable Medium for Mobile Media Management
US8880698B2 (en) Storage of content data in a peer-to-peer network
EP1452978A2 (en) Method and system for synchronizing data shared among peer computer devices
EP1819131B1 (en) Method of and apparatus for managing distributed contents
US7933972B1 (en) Method and system for organizing categories of content in a distributed network
US20030187868A1 (en) Data acquisition system
US20070143377A1 (en) Media content router
US20040261082A1 (en) System and method for managing cached objects using notification bonds
CN1656480A (zh) 允许同步具备不同能力的不同设备中的数据的方法和设备
WO2004066362A2 (en) System and method for sharing objects among two or more electronic devices
US20080126363A1 (en) Content retrieving device and content retrieving method
CN109600410A (zh) 数据存储系统以及方法
US20090150332A1 (en) Virtual file managing system and method for building system configuration and accessing file thereof
KR101467583B1 (ko) 미디어-장치 컨텐츠에 대한 변화를 식별하기 위한 객체-기반 프로토콜 활용 방법 및 실체적인 기계-판독가능 매체
JP4933573B2 (ja) Webシステムにおける分散処理方法およびwebシステムにおける分散処理システム
US20090077162A1 (en) Medium Management Device and Medium Management Method
US20150227534A1 (en) Method for processing data query using information-centric network
US20070097436A1 (en) Data-control device and method of controlling same
EP4391463A1 (en) Data processing system, data processing method and related apparatus

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100706

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100706

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130404

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20130521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130731

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140122