JP2013130960A - 情報処理装置、データ制御方法およびデータ制御プログラム - Google Patents
情報処理装置、データ制御方法およびデータ制御プログラム Download PDFInfo
- Publication number
- JP2013130960A JP2013130960A JP2011278804A JP2011278804A JP2013130960A JP 2013130960 A JP2013130960 A JP 2013130960A JP 2011278804 A JP2011278804 A JP 2011278804A JP 2011278804 A JP2011278804 A JP 2011278804A JP 2013130960 A JP2013130960 A JP 2013130960A
- Authority
- JP
- Japan
- Prior art keywords
- message
- server
- identifier
- queue
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
【解決手段】サーバは、記憶部と付与部と記憶制御部と応答部とを有する。付与部は、クライアント端末から受信した、データの送信要求または受信要求を示すアクセス要求に、受信した順に基づく識別子を付与する。記憶制御部は、データの送受信処理を分散させる分散型ネットワークを形成するサーバから、付与部による付与予定の識別子が付与されるアクセス要求を処理対象とするサーバを探索する。そして、記憶制御部は、探索されたサーバを特定する情報と付与予定の識別子とを対応付けて記憶部に記憶させる。応答部は、付与部によってアクセス要求に識別子が付与された場合に、付与された識別子に対応付けて記憶部に記憶される情報を、クライアント端末に応答する。
【選択図】図1
Description
図3は、実施例2に係るクライアント端末の構成を示す機能ブロック図である。図3に示すように、クライアント端末10は、通信インタフェース11と、記憶部12と、制御部13とを有するコンピュータ装置である。なお、ここで示した処理部は、あくまで例示であり、これに限定されるものではない。例えば、クライアント端末10は、ディスプレイなどの表示部、マウスなどの入力部、媒体からデータを読み取る媒体読取装置等を有しいてもよい。
図4は、実施例2に係るサーバの構成を示す機能ブロック図である。図4に示すように、サーバA50は、通信インタフェース51と、記憶部52と、制御部53とを有する。なお、ここで示した処理部は、あくまで例示であり、これに限定されるものではない。例えば、サーバA50は、ディスプレイなどの表示部、マウスなどの入力部、媒体からデータを読み取る媒体読取装置等を有しいてもよい。
次に、図8から図27を用いて図1等に示したシステムにおける処理の流れを説明する。ここでは、各処理について全体的な流れ、メッセージ遷移、フローチャートを説明する。なお、システムでやり取りされるメッセージは、通信種別、キュー名ハッシュ値、転送元サーバ識別子、宛先情報、メッセージ識別子を含むヘッダ部と、メッセージ実データを含む実データ部とを有しているものとする。
図8から図13を用いてキューオープン処理を説明する。キューオープンとは、メッセージ・キューを利用するための接続処理のことである。図8は、キューオープン処理の全体的な流れを説明する図である。図9は、キューオープン処理におけるメッセージの遷移を説明する図である。図10から図13は、キューオープン処理の流れを示すフローチャートである。なお、ここではクライアント端末10がキューオープン処理を依頼する例について説明する。
図8に示すように、クライアント端末10は、参加ゲートウェイとなる任意のサーバA50に接続し、メッセージキューのキュー名であるキューAを指定してオープン依頼を実行する。具体的には、図9に示すように、クライアント端末10は、通信種別に「接続依頼(初回)」を設定し、メッセージ実データに「キューA」を設定したメッセージをサーバA50に送信する。なお、この接続先サーバは、利用者のポリシーによって決定することができる。
続いて、図10から図13を用いて上記した処理のフローチャートを説明する。ここでは、クライアント端末10がキューAのオープンを依頼する例で説明する。図10に示すように、クライアント端末10は、任意のサーバA50に接続する(S101)。そして、クライアント端末10は、通信種別に「接続依頼(初回)」を設定し(S102)、メッセージ実データに「キューA」を設定したメッセージを生成して(S103)、サーバA50に送信して接続依頼を実行する(S104)。
次に、図14から図17を用いて、クライアント端末10がメッセージキューに対してデータを送信する処理を説明する。図14は、メッセージキューに対するデータ送信処理の全体的な流れを説明する図である。図15は、データ送信処理におけるメッセージの遷移を説明する図である。図16から図17は、データ送信処理の流れを示すフローチャートである。なお、ここではクライアント端末10が、サーバB60に対して、キューAへのデータ送信を実行する例について説明する。
図14に示すように、クライアント端末10は、サーバB60に対して、キュー名を指定したメッセージ送信依頼を実行する。具体的には、図15に示すように、クライアント端末10は、通信種別に「メッセージ送信(初回)」を設定し、メッセージ実データに「メッセージデータ」を設定したメッセージをサーバB60に送信する。なお、メッセージデータが送信対象データである。
続いて、図16と図17を用いて上記した処理のフローチャートを説明する。なお、ここでは、メッセージキューAを指定して処理が実行されるものとする。図16に示すように、クライアント端末10は、通信種別に「メッセージ送信(初回)」を設定し(S501)、メッセージ実データに「メッセージデータ」を格納して(S502)、当該メッセージをサーバB60に送信して通信を実行する(S503)。
次に、図18から図22を用いて、クライアント端末10がメッセージキューからデータを受信する処理を説明する。図18は、メッセージキューに対するデータ受信処理の全体的な流れを説明する図である。図19は、データ受信処理におけるメッセージの遷移を説明する図である。図20から図22は、データ受信処理の流れを示すフローチャートである。なお、ここではクライアント端末10が、キュー名がキューAからデータを受信する例について説明する。
図18に示すように、クライアント端末10は、サーバB60に対して、キュー名を指定したメッセージ受信依頼を実行する。具体的には、図19に示すように、クライアント端末10は、通信種別に「メッセージ受信(初回)」を設定したメッセージをサーバB60に送信する。なお、メッセージデータが送信対象データである。
続いて、図20と図21を用いて上記した処理のフローチャートを説明する。なお、ここでは、メッセージキューAを指定して処理が実行されるものとする。図20に示すように、クライアント端末10は、通信種別に「メッセージ受信(初回)」を設定し(S701)、当該メッセージをサーバB60に送信して通信を実行する(S702)。
次に、図23から図25を用いて、サーバB60が送信用先読み格納部62bに格納されるキューAの情報を更新する例について説明する。なお、各サーバは同一の処理を実行することができる。また、受信用先読み格納部62cについても、後述する処理におけるメッセージ識別子生成用カウンタを処理済メッセージ管理用カウンタに読み替えた処理を実行することで、同様に処理することができる。
図23は、送信用先読み格納部処理の全体的な流れを説明する図である。図24は、送信用先読み格納部処理におけるメッセージの遷移を説明する図である。図25は、送信用先読み格納部処理の流れを示すフローチャートである。
続いて、図25を用いて上記した処理のフローチャートを説明する。図25に示すように、サーバB60の先読み制御部68は、送信用先読み格納部62bに格納されているエントリ数「n」が最大数「m」よりも小さいか否かを判定する(S1001)。なお、nとmは自然数である。
図26は、サーバBがCH空間から離脱する場合のキューディクショナリデータの挙動を説明する図である。図26に示すように、サーバBは、キューディクショナリデータ格納部52aに「キュー名、属性、カウンタ値」として「Que1、1、1000」と「Que1、2、950」とを記憶する。つまり、サーバBは、キュー名をキーとしたキーバリュー構造でキューディクショナリデータを保持するので、一般的なCH空間のデータ複製論理で冗長化することができる。また、1サーバが保持する他のサーバのキューディクショナリデータの数、つまり、複製数についても一般的なCH空間のデータ複製論理で冗長化する。
図27は、サーバXがCH空間に参加する場合のキューディクショナリデータの挙動を説明する図である。CH空間に新たなサーバが追加された場合も、図26と同様、一般的なCH空間の複製論理にしたがって処理することができる。
例えば、Chordの方式では、自サーバが死活監視可能なサーバは全体の一部である。トラフィックの増大を防ぐために、開示するサーバは、使用するルーティングアルゴリズムの監視範囲に従い、構成変更を検出しない範囲では対処しないように制御してもよい。例えば、監視域外のサーバ構成が変動していた場合、接続したサーバにデータが無い、もしくはサーバ自体が存在しない可能性がある。その場合は、開示するサーバは、接続したサーバまたはキューディレクトリのあるサーバから、メッセージ識別子をもとに改めて探索を行うなどの対応を行うようにしてもよい。また、開示するサーバは、サーバ構成の変動を検出した場合は、各先読み格納部を補正する。例えば、各先読み格納部のエントリを走査し、影響箇所を補正してもよいし、エントリを全て再構築してもよい。これはメッセージの送受信依頼とは非同期に行う。
実施例2等で図示したメッセージのフォーマット例はあくまで例示であり、これに限定されるものではない。また、各実施例を説明する際に使用したIPアドレス、ホスト名、キュー名などの情報は、あくまで例示であり、数値等に意味ははく、限定するものでもない。また、実施例2では、クライアント端末10がサーバA50にキューAのオープンを要求し、担当するサーバB60を介してサーバC70にデータを格納する例等について説明したが、これらの例をあくまで例示であり、処理等を限定するものではない。
実施例2では、メッセージ識別子として、受信順に1ずつ増加するカウンタを利用する場合を説明したが、これに限定されるものではない。例えば、受信順に1ずつ減少するカウンタを用いることもでき、文字+単純増加するカウンタなど一定の規則性を有するカウンタ値を用いることができる。
例えば、システム内のネットワークの帯域幅に余裕がある場合には、受信用と送信用の先読み格納部を統合して、1つの先読み格納部として共有することもできる。なお、ネットワークの帯域幅に余裕がない場合に、受信用と送信用と分けて保持することで、トラフィックを削減することもできる。また、先読み制御処理は、データの送信処理や処理とは非同期で実行してもよく、送信されたら実行するなど同期させて実行してもよい。
実施例では、記憶部52が有する各格納部が、KVS形式でデータを保存する例を説明したが、これに限定されるものではない。例えば、関係データベースなどの任意のデータ構造を用いることができる。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
50 サーバA
51 通信インタフェース
52 記憶部
52a キューディクショナリデータ格納部
52b 送信用先読み格納部
52c 受信用先読み格納部
52d メッセージ格納部
52e 受信待ちカウンタ
53 制御部
54 クラスタ制御部
55 種別判定部
56 オープン処理部
57 メッセージ処理部
58 先読み制御部
60 サーバB
70 サーバC
Claims (7)
- クライアント端末から受信した、データの送信要求または受信要求を示すアクセス要求に、受信した順に基づく識別子を付与する付与部と、
データの送受信処理を分散させる分散型ネットワークを形成する情報処理装置から、前記付与部による付与予定の識別子が付与されるアクセス要求を処理対象とする情報処理装置を探索し、探索された情報処理装置を特定する情報と前記付与予定の識別子とを対応付けて記憶部に記憶させる記憶制御部と、
前記付与部によってアクセス要求に識別子が付与された場合に、付与された識別子に対応付けて前記記憶部に記憶される情報を、前記クライアント端末に応答する応答部と
を有することを特徴とする情報処理装置。 - 前記付与部によってアクセス要求に付与された最新の識別子を記憶する識別子記憶部をさらに有し、
前記記憶制御部は、前記識別子記憶部に記憶される最新の識別子を増加または減少させた識別子を用いてハッシュ値を算出し、算出したハッシュ値によって特定された前記データの格納先と前記ハッシュ値の算出に用いた識別子とを対応付けて、前記記憶部に記憶させることを特徴とする請求項1に記載の情報処理装置。 - 前記記憶制御部は、前記識別子記憶部に記憶される最新の識別子を所定回数増加または減少させた各識別子を用いてハッシュ値を算出し、算出した各ハッシュ値によって特定された各格納先と前記各識別子とを対応付けて、前記最新の識別子を増加または減少させた順に前記記憶部に記憶させることを特徴とする請求項2に記載の情報処理装置。
- 前記記憶制御部は、前記応答部によって応答された前記データの格納先を前記記憶部から削除するたびに、前記識別子記憶部に記憶される最新の識別子を用いて前記データの格納先を特定し、特定したデータの格納先と識別子とを対応付けて、前記記憶部に記憶させることを特徴とする請求項2に記載の情報処理装置。
- 前記受信されたアクセス要求のうち、既に処理が実行された最新のアクセス要求に付与された識別子を記憶する処理済記憶部と、
前記付与部によって識別子が付与されたアクセス要求に対応する処理を実行する場合に、付与された識別子と前記処理済記憶部に記憶される識別子とを比較し、未処理のアクセス要求が存在すると判定した場合には、前記受信されたアクセス要求に先立って、当該未処理のアクセス要求に対応する処理を実行する処理実行部とをさらに有することを特徴とする請求項1に記載の情報処理装置。 - コンピュータが、
クライアント端末から受信した、データの送信要求または受信要求を示すアクセス要求に、受信した順に基づく識別子を付与し、
データの送受信処理を分散させる分散型ネットワークを形成する情報処理装置から、付与予定の識別子が付与されるアクセス要求を処理対象とする情報処理装置を探索し、探索された情報処理装置を特定する情報と前記付与予定の識別子とを対応付けて記憶部に記憶させ、
アクセス要求に識別子が付与された場合に、付与された識別子に対応付けて前記記憶部に記憶される情報を、前記クライアント端末に応答する
各処理を実行することを特徴とするデータ制御方法。 - コンピュータに、
クライアント端末から受信した、データの送信要求または受信要求を示すアクセス要求に、受信した順に基づく識別子を付与し、
データの送受信処理を分散させる分散型ネットワークを形成する情報処理装置から、付与予定の識別子が付与されるアクセス要求を処理対象とする情報処理装置を探索し、探索された情報処理装置を特定する情報と前記付与予定の識別子とを対応付けて記憶部に記憶させ、
アクセス要求に識別子が付与された場合に、付与された識別子に対応付けて前記記憶部に記憶される情報を、前記クライアント端末に応答する
各処理を実行させることを特徴とするデータ制御プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011278804A JP5845877B2 (ja) | 2011-12-20 | 2011-12-20 | 情報処理装置、データ制御方法およびデータ制御プログラム |
US13/713,642 US9197715B2 (en) | 2011-12-20 | 2012-12-13 | Information processing apparatus and data control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011278804A JP5845877B2 (ja) | 2011-12-20 | 2011-12-20 | 情報処理装置、データ制御方法およびデータ制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013130960A true JP2013130960A (ja) | 2013-07-04 |
JP5845877B2 JP5845877B2 (ja) | 2016-01-20 |
Family
ID=48611372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011278804A Active JP5845877B2 (ja) | 2011-12-20 | 2011-12-20 | 情報処理装置、データ制御方法およびデータ制御プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9197715B2 (ja) |
JP (1) | JP5845877B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108243237A (zh) * | 2016-12-27 | 2018-07-03 | 中国移动通信集团浙江有限公司 | 宽带定向提速方法及设备 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104202309B (zh) * | 2014-08-18 | 2017-12-15 | 深圳市江波龙电子有限公司 | 一种数据传输的控制方法及装置 |
CN106850710B (zh) * | 2015-12-03 | 2020-02-28 | 杭州海康威视数字技术股份有限公司 | 一种数据云存储系统、客户终端、存储服务器及应用方法 |
US10339063B2 (en) * | 2016-07-19 | 2019-07-02 | Advanced Micro Devices, Inc. | Scheduling independent and dependent operations for processing |
US10701176B1 (en) * | 2016-09-23 | 2020-06-30 | Amazon Technologies, Inc. | Messaging using a hash ring with host groups |
US11956135B2 (en) * | 2018-11-07 | 2024-04-09 | Xerox Corporation | Network measurement in an enterprise environment |
CN112698965B (zh) * | 2020-12-25 | 2021-09-21 | 百度在线网络技术(北京)有限公司 | 用于实现消息队列的系统、方法及消息调度系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008191904A (ja) * | 2007-02-05 | 2008-08-21 | Nec Corp | 分散データ管理システムおよび方法 |
WO2008105099A1 (ja) * | 2007-02-28 | 2008-09-04 | Fujitsu Limited | アプリケーション連携制御プログラム、アプリケーション連携制御方法およびアプリケーション連携制御装置 |
JP2008234445A (ja) * | 2007-03-22 | 2008-10-02 | Brother Ind Ltd | コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム |
JP2011041006A (ja) * | 2009-08-11 | 2011-02-24 | Fujitsu Ltd | 負荷分散装置、負荷分散方法および負荷分散プログラム |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1117769A (ja) | 1997-06-20 | 1999-01-22 | Nec Corp | 確認型メッセージ通信方式 |
US5924096A (en) * | 1997-10-15 | 1999-07-13 | Novell, Inc. | Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand |
US7362762B2 (en) * | 2003-11-12 | 2008-04-22 | Cisco Technology, Inc. | Distributed packet processing with ordered locks to maintain requisite packet orderings |
JP4591745B2 (ja) * | 2003-12-02 | 2010-12-01 | 富士ゼロックス株式会社 | 画像形成装置、パターン形成方法及びそのプログラム |
US7925624B2 (en) | 2006-03-31 | 2011-04-12 | Amazon Technologies, Inc. | System and method for providing high availability data |
US8139488B2 (en) * | 2008-05-30 | 2012-03-20 | Cisco Technology, Inc. | Cooperative flow locks distributed among multiple components |
-
2011
- 2011-12-20 JP JP2011278804A patent/JP5845877B2/ja active Active
-
2012
- 2012-12-13 US US13/713,642 patent/US9197715B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008191904A (ja) * | 2007-02-05 | 2008-08-21 | Nec Corp | 分散データ管理システムおよび方法 |
WO2008105099A1 (ja) * | 2007-02-28 | 2008-09-04 | Fujitsu Limited | アプリケーション連携制御プログラム、アプリケーション連携制御方法およびアプリケーション連携制御装置 |
JP2008234445A (ja) * | 2007-03-22 | 2008-10-02 | Brother Ind Ltd | コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム |
JP2011041006A (ja) * | 2009-08-11 | 2011-02-24 | Fujitsu Ltd | 負荷分散装置、負荷分散方法および負荷分散プログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108243237A (zh) * | 2016-12-27 | 2018-07-03 | 中国移动通信集团浙江有限公司 | 宽带定向提速方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
US20130159525A1 (en) | 2013-06-20 |
US9197715B2 (en) | 2015-11-24 |
JP5845877B2 (ja) | 2016-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5845877B2 (ja) | 情報処理装置、データ制御方法およびデータ制御プログラム | |
Ascigil et al. | A keyword-based ICN-IoT platform | |
US10291696B2 (en) | Peer-to-peer architecture for processing big data | |
JP4938074B2 (ja) | リソースの位置情報の要求方法、当該方法のためのユーザノードおよびサーバ | |
WO2018000993A1 (zh) | 一种分布式存储的方法和系统 | |
US8190630B2 (en) | Data search device, data search system, data search method and data search program | |
JP2007066161A (ja) | キャッシュシステム | |
US9367261B2 (en) | Computer system, data management method and data management program | |
CN101640623A (zh) | 在对等网络中搜索资源的方法和设备 | |
US11354152B2 (en) | Self-evolving microservices | |
EP2856355A1 (en) | Service-aware distributed hash table routing | |
George et al. | Hadoop MapReduce for mobile clouds | |
JP2012155717A (ja) | キャッシュクラウド構造を用いたキャッシュシステムおよびキャッシングサービス提供方法 | |
US20170070593A1 (en) | Systems and methods for remote network topology discovery | |
Yoichi et al. | Consistency preservation of replicas based on access frequency for content sharing in hybrid peer-to-peer networks | |
EP3685567B1 (en) | Load shedding of traffic based on current load state of target capacity | |
CN114143090B (zh) | 基于网络安全架构的防火墙部署方法、装置、设备及介质 | |
US20240176762A1 (en) | Geographically dispersed hybrid cloud cluster | |
KR102503958B1 (ko) | 분산 네트워크 환경에서의 쿼리 배치 장치 및 그 방법 | |
US9319245B2 (en) | Information processing device, recording medium storing information search program, and information search method | |
WO2011136261A1 (ja) | ストレージシステム、ストレージシステムの制御方法、及びコンピュータプログラム | |
JP7515693B2 (ja) | 複数のパーティショングループ間のハートビート通信のランダム化 | |
JP2014203329A (ja) | ストレージシステム、ノード装置及びデータ管理方法 | |
JP5508346B2 (ja) | 分散データ管理システム、分散データ管理方法及び分散データ管理プログラム | |
JP6383338B2 (ja) | サーバ、データ一覧作成方法、および、データ一覧作成プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140904 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150625 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150707 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150907 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20151027 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151109 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5845877 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |