JP2010146067A

Data processing program, server apparatus, and data processing method

Abstract

Problem to be solved.To dynamically determine the number of replicas of each data and to efficiently execute data processing in each server device.

Solution.In a server device 100, a number of replicas indicating how many server devices 100 are to be replicated is set for each data, and based on the number of replicas, which server device 100 to allocate data to is selected. .. Then, each server device 100 redetermines the server device 100 to which the data is arranged every time the number of replicas changes dynamically. The number of replicas increases, and the server device 100 newly added as a data allocation destination newly allocates the corresponding data. On the other hand, the number of replicas decreases, and the server device 100 excluded from the data allocation destination deletes the corresponding data. [Selection diagram] Fig. 1

JP2010146067A, drawing sheet 1
Sheet 1 of 16

Term

Projected expiry 16 December 2028.

  1. Priority and filed
  2. Published
  3. Today
  4. Projected expiry

5 claims: 3 independent, 2 dependent

  1. 1
    相互に通信可能なコンピュータ群を構成するコンピュータを、 任意のデータについての処理要求が入力されると、当該任意のデータに設定されている複製数を取得する取得手段、 前記コンピュータ群の中から、前記任意のデータの配置先となるコンピュータを、所定のアルゴリズムを用いて前記複製数分選択する選択手段、 前記取得手段によって取得された前記任意のデータの複製数を前記コンピュータ群すべてに送信する複製数送信手段、 前記選択手段によって選択された前記複製数分の各コンピュータに、前記処理要求を送信する処理要求送信手段、 自装置、または、他のコンピュータから送信された処理要求を受け付けた場合、当該処理要求に応じた処理を実行する実行手段、 任意のタイミングごとに、前記実行手段によって実行された前記任意のデータへの処理要求を参照して前記任意のデータの複製数を決定する決定手段、として機能させ、 前記複製数送信手段は、前記決定手段によって現在設定されている複製数とは異なる複製数が決定された場合に、当該決定された複製数を前記コンピュータ群すべてに送信し、 前記選択手段は、前記複製数送信手段によって前記決定された複製数が送信されてきた場合、あらたに、前記コンピュータ群の中から、前記任意のデータを配置するコンピュータを、所定のアルゴリズムに応じて前記決定された複製数分選択し、 前記実行手段は、自装置が、前記選択手段によって、あらたに前記任意のデータを配置するコンピュータに選択された場合に前記任意のデータを書き込み、前記選択手段によって、あらたに前記データを配置するコンピュータに選択されなくなった場合に前記データを削除することを特徴とするデータ処理プログラム。
  2. 2
    前記決定手段は、前記コンピュータ群の総数を前記任意のデータの複製数とした場合の前記任意のデータに対する処理時間の平均値が所定値以上の場合、前記コンピュータ群の総数を前記任意のデータの複製数に決定することを特徴とする請求項1に記載のデータ処理プログラム。
  3. 3
    前記決定手段は、前記任意のデータの複製数を1とした場合の前記任意のデータへの処理時間の平均値が所定値未満であった場合、前記任意のデータの複製数として設定可能な最小値を複製数に決定することを特徴とする請求項1または2に記載のデータ処理プログラム。
  4. 4
    相互に通信可能なサーバ装置群を構成するサーバ装置であって、 任意のデータについての処理要求が入力されると、当該任意のデータに設定されている複製数を取得する取得手段と、 前記サーバ装置群の中から、前記任意のデータの配置先となるサーバ装置を、所定のアルゴリズムを用いて前記複製数分選択する選択手段と、 前記取得手段によって取得された前記任意のデータの複製数を前記サーバ装置群すべてに送信する複製数送信手段と、 前記選択手段によって選択された前記複製数分の各サーバ装置に、前記処理要求を送信する処理要求送信手段と、 自装置、または、他のサーバ装置から送信された処理要求を受け付けた場合、当該処理要求に応じた処理を実行する実行手段と、 任意のタイミングごとに、前記実行手段によって実行された前記任意のデータへの処理要求を参照して前記任意のデータの複製数を決定する決定手段と、を備え、 前記複製数送信手段は、前記決定手段によって現在設定されている複製数とは異なる複製数が決定された場合に、当該決定された複製数を前記サーバ装置群すべてに送信し、 前記選択手段は、前記複製数送信手段によって前記決定された複製数が送信されてきた場合、あらたに、前記サーバ装置群の中から、前記任意のデータを配置するサーバ装置を、所定のアルゴリズムに応じて前記決定された複製数分選択し、 前記実行手段は、自装置が、前記選択手段によって、あらたに前記任意のデータを配置するサーバ装置に選択された場合に前記任意のデータを書き込み、前記選択手段によって、あらたに前記データを配置するサーバ装置に選択されなくなった場合に前記データを削除することを特徴とするサーバ装置。
  5. 5
    相互に通信可能なコンピュータ群を構成するコンピュータが、 任意のデータについての処理要求が入力されると、当該任意のデータに設定されている複製数を取得する取得工程と、 前記コンピュータ群の中から、前記任意のデータの配置先となるコンピュータを、所定のアルゴリズムを用いて前記複製数分選択する選択工程と、 前記取得工程によって取得された前記任意のデータの複製数を前記コンピュータ群すべてに送信する複製数送信工程と、 前記選択工程によって選択された前記複製数分の各コンピュータに、前記処理要求を送信する処理要求送信工程と、 自装置、または、他のコンピュータから送信された処理要求を受け付けた場合、当該処理要求に応じた処理を実行する実行工程と、 任意のタイミングごとに、前記実行工程によって実行された前記任意のデータへの処理要求を参照して前記任意のデータの複製数を決定する決定工程と、を実行し、 さらに、 前記複製数送信工程では、前記決定工程によって現在設定されている複製数とは異なる複製数が決定された場合に、当該決定された複製数を前記コンピュータ群すべてに送信し、 前記選択工程では、前記複製数送信工程によって前記決定された複製数が送信されてきた場合、あらたに、前記コンピュータ群の中から、前記任意のデータを配置するコンピュータを、所定のアルゴリズムに応じて前記決定された複製数分選択し、 前記実行工程では、自装置が、前記選択工程によって、あらたに前記任意のデータを配置するコンピュータに選択された場合に前記任意のデータを書き込み、前記選択工程によって、あらたに前記データを配置するコンピュータに選択されなくなった場合に前記データを削除することを特徴とするデータ処理方法。
Independent claims5