JP6029451B2 - Resource use control device, resource use control method, and resource use control program - Google Patents

Resource use control device, resource use control method, and resource use control program Download PDF

Info

Publication number
JP6029451B2
JP6029451B2 JP2012277225A JP2012277225A JP6029451B2 JP 6029451 B2 JP6029451 B2 JP 6029451B2 JP 2012277225 A JP2012277225 A JP 2012277225A JP 2012277225 A JP2012277225 A JP 2012277225A JP 6029451 B2 JP6029451 B2 JP 6029451B2
Authority
JP
Japan
Prior art keywords
group
user
identifier
load
resource
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.)
Active
Application number
JP2012277225A
Other languages
Japanese (ja)
Other versions
JP2014121074A (en
Inventor
仁志 楓
仁志 楓
光義 山足
光義 山足
雅之 佐藤
雅之 佐藤
優 小杉
優 小杉
尚彦 勝山
尚彦 勝山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Mitsubishi Electric Information Network Corp
Original Assignee
Mitsubishi Electric Corp
Mitsubishi Electric Information Network Corp
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 Mitsubishi Electric Corp, Mitsubishi Electric Information Network Corp filed Critical Mitsubishi Electric Corp
Priority to JP2012277225A priority Critical patent/JP6029451B2/en
Publication of JP2014121074A publication Critical patent/JP2014121074A/en
Application granted granted Critical
Publication of JP6029451B2 publication Critical patent/JP6029451B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、例えば、リソースを使用するユーザ数を制限するためのリソース使用制御装置、リソース使用制御方法およびリソース使用制御プログラムに関するものである。   The present invention relates to a resource use control device, a resource use control method, and a resource use control program for limiting the number of users who use resources, for example.

クラウドやSaaS(Software As A Service)の実現において、一つのアプリケーションを複数の利用者に共有させる技術として、マルチテナント管理技術がある。
マルチテナント管理技術の目的の一つは、複数の利用者でシステムリソースを共有することによるH/W(ハードウェア)やS/W(ソフトウェア)のコスト削減である。
一つのアプリケーションを複数の利用者で共有する形態を実現するために考慮すべき項目として、データの管理方式がある。
In the realization of the cloud and SaaS (Software As A Service), there is a multi-tenant management technology as a technology for sharing one application with a plurality of users.
One of the purposes of the multi-tenant management technology is to reduce H / W (hardware) and S / W (software) costs by sharing system resources among a plurality of users.
As an item to be considered in order to realize a form in which one application is shared by a plurality of users, there is a data management method.

データの管理方式は、利用者が要求する運用、性能またはコストに対する要件に応じて、例えば以下の4つに大別される。
1.表を共有する方式、2.表を分離する方式、3.スキーマを分離する方式、4.インスタンスを分離する方式。
Data management methods are roughly classified into, for example, the following four types according to requirements for operation, performance, or cost required by the user.
1. 1. A method for sharing a table. 2. a method for separating tables; 3. Method for separating schemas A method of isolating instances.

マルチテナントシステムでは、複数の利用者がシステムを共有するため、多くの利用者から処理要求が寄せられる場合がある。この場合、マルチテナントシステムのリソースが枯渇し、応答性能が著しく劣化することが想定される。
また、特定の利用者からの操作要求が原因で、システム全体あるいは他の利用者の応答性能が劣化することがある。
In a multi-tenant system, since a plurality of users share the system, processing requests may be received from many users. In this case, it is assumed that the resources of the multi-tenant system are exhausted and the response performance is significantly deteriorated.
Further, the response performance of the entire system or other users may be deteriorated due to an operation request from a specific user.

特許文献1では、システムへ接続するユーザ数を制限する方式として、ユーザグループ毎に同時に接続できる接続数の上限を設ける方式が提案されている。ユーザグループの接続数の上限に達した場合、ユーザグループ内のユーザの接続を破棄して、優先度が高いユーザへの接続が許可される。
このように、従来技術においては、同時に接続する利用者の最大数が規定される。しかし、リソースを共有する利用者間の関係や、システム内で利用者情報に起因する応答性能の依存関係について、従来技術では述べられていない。
そのため、従来技術では、他の利用者に対するシステムの応答性能が利用者間の依存関係に起因して著しく劣化するような状況を回避することができない。
Patent Document 1 proposes a method of setting an upper limit of the number of connections that can be simultaneously connected for each user group as a method of limiting the number of users connected to the system. When the upper limit of the number of connections in the user group is reached, the connections of the users in the user group are discarded, and connections to users with high priority are permitted.
Thus, in the prior art, the maximum number of users who are connected simultaneously is defined. However, the relationship between users sharing resources and the dependency of response performance due to user information in the system are not described in the prior art.
For this reason, the conventional technology cannot avoid a situation in which the response performance of the system to other users is significantly deteriorated due to the dependency between users.

特開2006−148648号公報JP 2006-148648 A

本発明は、例えば、負荷が高いユーザグループに関連する波及グループによるリソースの使用を制限できるようにすることを目的とする。   An object of the present invention is to make it possible to limit the use of resources by a propagation group related to a user group having a high load, for example.

本発明のリソース使用制御装置は、
リソースを使用する複数のユーザが属する複数のユーザグループのユーザグループ毎に、ユーザグループを識別するグループ識別子と、ユーザグループに属するユーザのうち前記リソースを同時に使用することが許可されるユーザの数を示す許可ユーザ数と、を対応付けて記憶する許可ユーザ数記憶部と、
前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子と、ユーザグループが有する属性を示すグループ属性値と、を対応付けて記憶するグループ属性値記憶部と、
前記複数のユーザグループのユーザグループ毎に、ユーザグループによる前記リソースの使用量を取得するリソース使用量取得部と、
前記複数のユーザグループのうち、前記リソース使用量取得部によって取得された前記リソースの使用量が使用量に関する制限条件を満たしているユーザグループのグループ識別子を負荷グループ識別子として選択する負荷グループ選択部と、
前記グループ属性値記憶部に記憶されているグループ属性値のうち、前記負荷グループ選択部によって選択された前記負荷グループ識別子と同じグループ識別子に対応付けられたグループ属性値を負荷グループ属性値として取得する負荷グループ属性値取得部と、
前記グループ属性値記憶部に記憶されたグループ識別子のうち、前記負荷グループ属性値取得部によって取得された前記負荷グループ属性値と同じグループ属性値に対応付けられたグループ識別子であって前記負荷グループ識別子と異なるグループ識別子を波及グループ識別子として選択する波及グループ選択部と、
前記許可ユーザ数記憶部に記憶されている許可ユーザ数のうち、前記波及グループ選択部によって選択された前記波及グループ識別子と同じグループ識別子に対応付けられた許可ユーザ数を減らす波及グループ制御部とを備える。
The resource use control device of the present invention
For each user group of a plurality of user groups to which a plurality of users who use the resource belong, a group identifier for identifying the user group and the number of users who are allowed to use the resource simultaneously among the users belonging to the user group An authorized user number storage unit for storing the number of authorized users shown in association with each other;
A group attribute value storage unit that stores a group identifier of a user group and a group attribute value indicating an attribute of the user group in association with each other for each user group of the plurality of user groups;
For each user group of the plurality of user groups, a resource usage acquisition unit that acquires usage of the resource by a user group;
A load group selection unit that selects, as a load group identifier, a group identifier of a user group among the plurality of user groups, in which the resource usage acquired by the resource usage acquisition unit satisfies a restriction condition regarding the usage; ,
Among group attribute values stored in the group attribute value storage unit, a group attribute value associated with the same group identifier as the load group identifier selected by the load group selection unit is acquired as a load group attribute value. A load group attribute value acquisition unit;
Among the group identifiers stored in the group attribute value storage unit, a group identifier associated with the same group attribute value as the load group attribute value acquired by the load group attribute value acquisition unit, the load group identifier A propagation group selection unit that selects a group identifier different from the propagation group identifier;
A propagation group control unit that reduces the number of authorized users associated with the same group identifier as the propagation group identifier selected by the propagation group selection unit among the number of authorized users stored in the authorized user number storage unit; Prepare.

本発明によれば、例えば、負荷が高いユーザグループに関連する波及グループによるリソースの使用を制限することができる。   According to the present invention, for example, use of resources by a propagation group related to a user group having a high load can be restricted.

実施の形態1におけるデータアクセス制御装置100の構成図である。1 is a configuration diagram of a data access control device 100 according to Embodiment 1. FIG. 実施の形態1における依存情報管理テーブル191の一例を示す図である。6 is a diagram illustrating an example of a dependency information management table 191 according to Embodiment 1. FIG. 実施の形態1におけるテナント管理テーブル192の一例を示す図である。6 is a diagram illustrating an example of a tenant management table 192 according to Embodiment 1. FIG. 実施の形態1におけるモデル情報管理テーブル193の一例を示す図である。6 is a diagram illustrating an example of a model information management table 193 according to Embodiment 1. FIG. 実施の形態1におけるコネクション管理テーブル194の一例を示す図である。6 is a diagram illustrating an example of a connection management table 194 according to Embodiment 1. FIG. 実施の形態1におけるテナント切換制御テーブル195の一例を示す図である。6 is a diagram illustrating an example of a tenant switching control table 195 according to Embodiment 1. FIG. 実施の形態1における利用履歴管理テーブル196の一例を示す図である。6 is a diagram illustrating an example of a usage history management table 196 according to Embodiment 1. FIG. 実施の形態1における蓄積データ管理テーブル197の一例を示す図である。6 is a diagram illustrating an example of an accumulated data management table 197 according to Embodiment 1. FIG. 実施の形態1における波及範囲管理テーブル101の一例を示す図である。6 is a diagram illustrating an example of a spread range management table 101 according to Embodiment 1. FIG. 実施の形態1における挙動条件管理テーブル102の一例を示す図である。6 is a diagram illustrating an example of a behavior condition management table 102 according to Embodiment 1. FIG. 実施の形態1における蓄積条件管理テーブル103の一例を示す図である。6 is a diagram illustrating an example of an accumulation condition management table 103 according to Embodiment 1. FIG. 実施の形態1におけるデータアクセス制御方法の一例を示すフローチャートである。3 is a flowchart illustrating an example of a data access control method according to the first embodiment. 実施の形態1におけるテナント挙動監視部140の構成図である。3 is a configuration diagram of a tenant behavior monitoring unit 140 according to Embodiment 1. FIG. 実施の形態1におけるテナント挙動監視処理を示すフローチャートである。5 is a flowchart illustrating tenant behavior monitoring processing in the first embodiment. 実施の形態1における波及範囲最小化処理(S260)を示すフローチャートである。5 is a flowchart showing a spread range minimization process (S260) in the first embodiment. 実施の形態1におけるテナント蓄積監視部150の構成図である。3 is a configuration diagram of a tenant accumulation monitoring unit 150 according to Embodiment 1. FIG. 実施の形態1におけるテナント蓄積監視処理を示すフローチャートである。5 is a flowchart showing tenant accumulation monitoring processing in the first embodiment. 実施の形態1における波及範囲最小化処理(S360)を示すフローチャートである。5 is a flowchart showing a spread range minimization process (S360) in the first embodiment. 実施の形態1における処理対応管理データ104の一例を示す図である。6 is a diagram illustrating an example of processing correspondence management data 104 according to Embodiment 1. FIG. 実施の形態1におけるデータアクセス制御装置100のハードウェア資源の一例を示す図である。3 is a diagram illustrating an example of hardware resources of the data access control device 100 according to Embodiment 1. FIG. 実施の形態2におけるデータアクセス制御装置100の構成例を示す図である。6 is a diagram illustrating a configuration example of a data access control device 100 according to Embodiment 2. FIG. 実施の形態2におけるマルチテナントシステム107の構成例(1)を示す図である。It is a figure which shows the structural example (1) of the multi-tenant system 107 in Embodiment 2. FIG. 実施の形態2におけるマルチテナントシステム107の構成例(2)を示す図である。It is a figure which shows the structural example (2) of the multi-tenant system 107 in Embodiment 2. FIG.

実施の形態1.
負荷が高い負荷テナントに関連する波及テナントによるリソースの使用を制限する形態について説明する。
テナントとは、システム(またはコンピュータ)のリソースを使用するユーザグループ(例えば、企業)のことである。
以下、テナントに属するユーザをテナントユーザといい、テナント用のデータをテナントデータという。
Embodiment 1 FIG.
A mode for restricting the use of resources by a spreading tenant related to a load tenant having a high load will be described.
A tenant is a user group (for example, a company) that uses system (or computer) resources.
Hereinafter, a user belonging to a tenant is referred to as a tenant user, and tenant data is referred to as tenant data.

図1は、実施の形態1におけるデータアクセス制御装置100の構成図である。
実施の形態1におけるデータアクセス制御装置100の構成について、図1に基づいて説明する。
FIG. 1 is a configuration diagram of a data access control apparatus 100 according to the first embodiment.
The configuration of data access control apparatus 100 in the first embodiment will be described with reference to FIG.

データアクセス制御装置100(リソース使用制御装置の一例)は、テナントデータ181に対するアクセス制御を行うコンピュータである。   The data access control device 100 (an example of a resource usage control device) is a computer that performs access control on the tenant data 181.

データアクセス制御装置100は、インターネットまたはLAN(ローカルエリアネットワーク)などのネットワーク109を介して1つ以上のテナント端末108および1つ以上のDBサーバ180と通信する。
テナント端末108は、テナントデータ181に関するデータ処理(例えば、検索処理)を要求するコンピュータである。
DBサーバ180は、1つ以上のテナントデータ181(データベース)を管理するコンピュータである。
データアクセス制御装置100、テナント端末108およびDBサーバ180は、マルチテナントシステム(またはマルチユーザシステム)を構成する。
The data access control device 100 communicates with one or more tenant terminals 108 and one or more DB servers 180 via a network 109 such as the Internet or a LAN (local area network).
The tenant terminal 108 is a computer that requests data processing (for example, search processing) regarding the tenant data 181.
The DB server 180 is a computer that manages one or more tenant data 181 (database).
The data access control device 100, the tenant terminal 108, and the DB server 180 constitute a multi-tenant system (or multi-user system).

データアクセス制御装置100は、アプリケーション部110、データアクセス制御部120、コネクション制御部130、テナント挙動監視部140、テナント蓄積監視部150、蓄積データ監視部160および制御装置記憶部190を備える。   The data access control device 100 includes an application unit 110, a data access control unit 120, a connection control unit 130, a tenant behavior monitoring unit 140, a tenant accumulation monitoring unit 150, an accumulated data monitoring unit 160, and a control device storage unit 190.

アプリケーション部110は、テナント端末108から送信される処理要求を受信し、受信した処理要求に基づいて必要なテナントデータ181をデータアクセス制御部120に要求し、データアクセス制御部120から受け取ったテナントデータ181を用いてデータ処理を行う。
アプリケーション部110は、データアクセス制御装置100とは別の装置(例えば、テナント端末108またはアプリケーションサーバ)に実装しても構わない。
The application unit 110 receives the processing request transmitted from the tenant terminal 108, requests the necessary tenant data 181 from the data access control unit 120 based on the received processing request, and receives the tenant data received from the data access control unit 120. Data processing is performed using 181.
The application unit 110 may be mounted on a device (for example, the tenant terminal 108 or the application server) different from the data access control device 100.

データアクセス制御部120は、DBサーバ180と通信するためのコネクション情報をコネクション制御部130に要求し、コネクション制御部130から受け取ったコネクション情報を用いてDBサーバ180とコネクションを接続する。
データアクセス制御部120は、アプリケーション部110から要求されたテナントデータ181をDBサーバ180から取得し、取得したテナントデータ181をアプリケーション部110に渡す。
The data access control unit 120 requests connection information for communication with the DB server 180 from the connection control unit 130, and connects the DB server 180 and the connection using the connection information received from the connection control unit 130.
The data access control unit 120 acquires the tenant data 181 requested from the application unit 110 from the DB server 180 and passes the acquired tenant data 181 to the application unit 110.

コネクション制御部130は、DBサーバ180と通信するためのコネクション情報をデータアクセス制御部120に渡す。
但し、コネクション制御部130は、DBサーバ180の利用を許可するか否かを判定する。DBサーバ180の利用を許可する場合、コネクション制御部130はコネクション情報をデータアクセス制御部120に渡し、DBサーバ180の利用を許可しない場合、コネクション制御部130はコネクション情報をデータアクセス制御部120に渡さない。この場合、データアクセス制御部120はDBサーバ180からテナントデータ181を取得しない。
The connection control unit 130 passes connection information for communicating with the DB server 180 to the data access control unit 120.
However, the connection control unit 130 determines whether to permit the use of the DB server 180. When the use of the DB server 180 is permitted, the connection control unit 130 passes the connection information to the data access control unit 120. When the use of the DB server 180 is not permitted, the connection control unit 130 passes the connection information to the data access control unit 120. Don't give it. In this case, the data access control unit 120 does not acquire the tenant data 181 from the DB server 180.

テナント挙動監視部140は、DBサーバ180に対する負荷(データ処理の処理間隔または処理時間)が高い負荷テナントから要求されるデータ処理と、負荷テナントと関連する波及テナントから要求されるデータ処理とを制限する。   The tenant behavior monitoring unit 140 restricts data processing requested from a load tenant with a high load (data processing processing interval or processing time) on the DB server 180 and data processing requested from a spread tenant related to the load tenant. To do.

テナント蓄積監視部150は、DBサーバ180に対する負荷(テナントデータ181のデータ量または増加量)が高い負荷テナントから要求されるデータ処理と、負荷テナントと関連する波及テナントから要求されるデータ処理とを制限する。   The tenant accumulation monitoring unit 150 performs data processing requested from a load tenant with a high load on the DB server 180 (data amount or increase amount of the tenant data 181) and data processing requested from a spreading tenant related to the load tenant. Restrict.

蓄積データ監視部160は、定期的にDBサーバ180からテナントデータ181のデータ量を取得し、取得したデータ量を後述する蓄積データ管理テーブル197に設定する。   The accumulated data monitoring unit 160 periodically acquires the data amount of the tenant data 181 from the DB server 180 and sets the acquired data amount in an accumulated data management table 197 described later.

制御装置記憶部190は、データアクセス制御装置100で使用するデータを記憶する記憶部である。
例えば、制御装置記憶部190は、依存情報管理テーブル191、テナント管理テーブル192、モデル情報管理テーブル193、コネクション管理テーブル194、テナント切換制御テーブル195、利用履歴管理テーブル196および蓄積データ管理テーブル197を記憶する。
また、制御装置記憶部190は、波及範囲管理テーブル101、挙動条件管理テーブル102、蓄積条件管理テーブル103および処理対応管理データ104を記憶する。
各テーブルは1つ以上のレコード(行)を含んでいる。各テーブルの内容については別途説明する。
The control device storage unit 190 is a storage unit that stores data used in the data access control device 100.
For example, the control device storage unit 190 stores a dependency information management table 191, a tenant management table 192, a model information management table 193, a connection management table 194, a tenant switching control table 195, a usage history management table 196, and an accumulated data management table 197. To do.
In addition, the control device storage unit 190 stores a spread range management table 101, a behavior condition management table 102, an accumulation condition management table 103, and processing correspondence management data 104.
Each table contains one or more records (rows). The contents of each table will be described separately.

図2は、実施の形態1における依存情報管理テーブル191の一例を示す図である。
実施の形態1における依存情報管理テーブル191について、図2に基づいて説明する。
FIG. 2 is a diagram illustrating an example of the dependency information management table 191 according to the first embodiment.
The dependency information management table 191 in the first embodiment will be described with reference to FIG.

依存情報管理テーブル191(グループ属性値記憶部の一例)は、テナント間のテナントデータ181の依存関係に関する情報を設定したデータである。
依存情報管理テーブル191は、「テナントID」「依存情報(1)」「依存情報(2)」を対応付けている。但し、依存情報は2種類ではなく、1種類または3種類以上であっても構わない。
「テナントID」は、テナントを識別する識別子を示す。
「依存情報(1)」は、テナント間の依存関係に関する第一の情報を示す。例えば、1つ以上のテナントが入居するビル単位で、テナントデータ181がDBサーバ180によって管理されているものとする。この場合、依存情報(1)はテナントが入居するビルを識別する識別子を示す。
「依存情報(2)」は、テナント間の依存関係に関する第二の情報を示す。例えば、複数のテナントが共有する機器単位で、テナントデータ181がDBサーバ180によって管理されているものとする。この場合、依存情報(2)はテナントが他のテナントと共有する機器を識別する識別子を示す。
The dependency information management table 191 (an example of a group attribute value storage unit) is data in which information related to the dependency relationship of tenant data 181 between tenants is set.
The dependency information management table 191 associates “tenant ID”, “dependency information (1)”, and “dependency information (2)”. However, the dependency information may be one type or three or more types instead of two types.
“Tenant ID” indicates an identifier for identifying a tenant.
“Dependency information (1)” indicates first information regarding the dependency relationship between tenants. For example, it is assumed that tenant data 181 is managed by the DB server 180 in units of buildings in which one or more tenants occupy. In this case, the dependency information (1) indicates an identifier for identifying the building in which the tenant occupies.
“Dependency information (2)” indicates second information regarding the dependency relationship between tenants. For example, it is assumed that the tenant data 181 is managed by the DB server 180 in units of devices shared by a plurality of tenants. In this case, the dependency information (2) indicates an identifier for identifying a device that the tenant shares with other tenants.

図3は、実施の形態1におけるテナント管理テーブル192の一例を示す図である。
実施の形態1におけるテナント管理テーブル192について、図3に基づいて説明する。
FIG. 3 is a diagram illustrating an example of the tenant management table 192 according to the first embodiment.
The tenant management table 192 in the first embodiment will be described with reference to FIG.

テナント管理テーブル192(グループ属性値記憶部の一例)は、テナントが利用できるデータ処理を管理するためのデータである。
テナント管理テーブル192は、「テナントID」「処理識別子」を対応付けている。
「テナントID」は、テナントを識別する識別子を示す。
「処理識別子」は、テナントが利用できるデータ処理の種類を識別する識別子を示す。
The tenant management table 192 (an example of a group attribute value storage unit) is data for managing data processing that can be used by a tenant.
The tenant management table 192 associates “tenant ID” and “processing identifier”.
“Tenant ID” indicates an identifier for identifying a tenant.
“Processing identifier” indicates an identifier for identifying the type of data processing that can be used by the tenant.

図4は、実施の形態1におけるモデル情報管理テーブル193の一例を示す図である。
実施の形態1におけるモデル情報管理テーブル193について、図4に基づいて説明する。
FIG. 4 is a diagram illustrating an example of the model information management table 193 according to the first embodiment.
The model information management table 193 in the first embodiment will be described with reference to FIG.

モデル情報管理テーブル193(グループ属性値記憶部の一例)は、テナントが利用するテナントデータ181の管理方式を示す情報(以下、モデル情報という)を設定したデータである。
モデル情報管理テーブル193は、「テナントID」「配置ID」「モデルタイプ」を対応付けている。
「テナントID」は、テナントを識別する識別子を示す。
「配置ID」は、後述するコネクション管理テーブル194のレコードを識別する識別子を示す。
「モデルタイプ」は、テナントが利用するテナントデータ181の管理方式を示す。
テナントデータ181の管理方式には、表共有、表分離、スキーマ分離、インスタンス分離、DBサーバ分離などの方式(モデル)がある。
表共有は、1つ以上のテナントデータ181が設定されているテーブル(表)を他のテナントと共有するモデルである。
表分離は、テナント別のテーブル(表)を使用するモデルである。
スキーマ分離は、テナント別のスキーマを使用するモデルである。
インスタンス分離は、テナント別のインスタンスを使用するモデルである。
DBサーバ分離は、テナント別のDBサーバ180を使用するモデルである。
The model information management table 193 (an example of a group attribute value storage unit) is data in which information indicating the management method of the tenant data 181 used by the tenant (hereinafter referred to as model information) is set.
The model information management table 193 associates “tenant ID”, “placement ID”, and “model type”.
“Tenant ID” indicates an identifier for identifying a tenant.
“Arrangement ID” indicates an identifier for identifying a record in the connection management table 194 described later.
“Model type” indicates a management method of the tenant data 181 used by the tenant.
As management methods of the tenant data 181, there are methods (models) such as table sharing, table separation, schema separation, instance separation, and DB server separation.
Table sharing is a model in which a table (table) in which one or more tenant data 181 is set is shared with other tenants.
Table separation is a model that uses a table (table) for each tenant.
Schema separation is a model that uses a tenant-specific schema.
Instance separation is a model that uses tenant-specific instances.
DB server separation is a model that uses a tenant-specific DB server 180.

図5は、実施の形態1におけるコネクション管理テーブル194の一例を示す図である。
実施の形態1におけるコネクション管理テーブル194について、図5に基づいて説明する。
FIG. 5 is a diagram illustrating an example of the connection management table 194 according to the first embodiment.
The connection management table 194 in the first embodiment will be described with reference to FIG.

コネクション管理テーブル194は、DBサーバ180と通信するためのコネクション情報を管理するためのデータである。
コネクション管理テーブル194は、「配置ID」「モデルタイプ」「IPアドレス」「ポート番号」「最大数」「keepアイドル」「ユーザ名」「パスワード」「インスタンスID」を対応付けている。
「配置ID」は、コネクション管理テーブル194のレコードを識別する識別子を示す。
「モデルタイプ」は、テナントが利用するテナントデータ181の管理方式を示す。
「IPアドレス」は、DBサーバ180のIPアドレスを示す。
「ポート番号」は、DBサーバ180に設けられるポートのうち使用するポートを識別する識別子を示す。
「最大数」は、DBサーバ180が接続できるコネクションの上限の数を示す。
「keepアイドル」は、DBサーバ180が接続を維持するコネクションの数を示す。
「ユーザ名」は、DBサーバ180に定義されたユーザ名を示す。
「パスワード」は、DBサーバ180を利用するためのパスワードを示す。
「インスタンスID」は、DBサーバ180が有するインスタンスのうち使用するインスタンスを識別する識別子を示す。但し、インスタンスIDは、データ格納先(例えば、スキーマ)を識別する識別子に置き換えても構わない。
The connection management table 194 is data for managing connection information for communicating with the DB server 180.
The connection management table 194 associates “arrangement ID”, “model type”, “IP address”, “port number”, “maximum number”, “keep idle”, “user name”, “password”, and “instance ID”.
“Arrangement ID” indicates an identifier for identifying a record in the connection management table 194.
“Model type” indicates a management method of the tenant data 181 used by the tenant.
“IP address” indicates the IP address of the DB server 180.
“Port number” indicates an identifier for identifying a port to be used among the ports provided in the DB server 180.
“Maximum number” indicates the upper limit number of connections to which the DB server 180 can connect.
“Keep idle” indicates the number of connections that the DB server 180 maintains.
“User name” indicates a user name defined in the DB server 180.
“Password” indicates a password for using the DB server 180.
“Instance ID” indicates an identifier for identifying an instance to be used among instances of the DB server 180. However, the instance ID may be replaced with an identifier for identifying a data storage destination (for example, schema).

図6は、実施の形態1におけるテナント切換制御テーブル195の一例を示す図である。
実施の形態1におけるテナント切換制御テーブル195について、図6に基づいて説明する。
FIG. 6 is a diagram illustrating an example of the tenant switching control table 195 according to the first embodiment.
The tenant switching control table 195 in the first embodiment will be described with reference to FIG.

テナント切換制御テーブル195は、DBサーバ180と接続できるコネクションの数を管理するためのデータである。
テナント切換制御テーブル195は、「テナントID」「処理識別子」「接続残数」を対応付けている。
「テナントID」は、テナントを識別する識別子を示す。
「処理識別子」は、データ処理の種類を識別する識別子を示す。
「接続残数」は、DBサーバ180と接続できるコネクションの数を示す。
The tenant switching control table 195 is data for managing the number of connections that can be connected to the DB server 180.
The tenant switching control table 195 associates “tenant ID”, “processing identifier”, and “number of remaining connections”.
“Tenant ID” indicates an identifier for identifying a tenant.
“Processing identifier” indicates an identifier for identifying the type of data processing.
“Number of remaining connections” indicates the number of connections that can be connected to the DB server 180.

図7は、実施の形態1における利用履歴管理テーブル196の一例を示す図である。
実施の形態1における利用履歴管理テーブル196について、図7に基づいて説明する。
FIG. 7 is a diagram illustrating an example of the usage history management table 196 according to the first embodiment.
The usage history management table 196 according to Embodiment 1 will be described with reference to FIG.

利用履歴管理テーブル196は、実行したデータ処理の履歴を管理するためのデータである。
利用履歴管理テーブル196は、「テナントID」「処理識別子」「貸出時刻」「返却時刻」を対応付けている。
「テナントID」は、データ処理を要求したテナントを識別する識別子を示す。
「処理識別子」は、要求されたデータ処理の種類を識別する識別子を示す。
「貸出時刻」は、データ処理が開始された時刻(および日付)を示す。
「返却時刻」は、データ処理が終了した時刻(および日付)を示す。
The usage history management table 196 is data for managing the history of executed data processing.
The usage history management table 196 associates “tenant ID”, “processing identifier”, “lending time”, and “return time”.
“Tenant ID” indicates an identifier for identifying a tenant who has requested data processing.
“Processing identifier” indicates an identifier for identifying the type of requested data processing.
“Lending time” indicates the time (and date) at which data processing was started.
“Return time” indicates the time (and date) when the data processing ends.

図8は、実施の形態1における蓄積データ管理テーブル197の一例を示す図である。
実施の形態1における蓄積データ管理テーブル197について、図8に基づいて説明する。
FIG. 8 is a diagram illustrating an example of the accumulated data management table 197 according to the first embodiment.
The accumulated data management table 197 in the first embodiment will be described with reference to FIG.

蓄積データ管理テーブル197は、DBサーバ180に記憶されているテナントデータ181(レコード)の数を管理するためのデータである。
蓄積データ管理テーブル197は、「時刻」「テナントID」「データ領域」「レコード数」を対応付けている。
「時刻」は、レコード数を設定した時刻(および日付)を示す。
「テナントID」は、テナントを識別する識別子を示す。
「データ領域」は、テナントデータ181が設定されるデータ領域(例えば、テーブル)を識別する識別子(例えば、データ領域名またはテーブル名)を示す。
「レコード数」は、データ領域に含まれるレコードの数を示す。
The accumulated data management table 197 is data for managing the number of tenant data 181 (records) stored in the DB server 180.
The accumulated data management table 197 associates “time”, “tenant ID”, “data area”, and “number of records”.
“Time” indicates the time (and date) at which the number of records is set.
“Tenant ID” indicates an identifier for identifying a tenant.
“Data area” indicates an identifier (for example, a data area name or a table name) for identifying a data area (for example, a table) in which the tenant data 181 is set.
“Number of records” indicates the number of records included in the data area.

蓄積データ監視部160は、定期的(所定の蓄積データ監視時間が経過する毎)にDBサーバ180と通信を行い、DBサーバ180から各データ領域に含まれるレコードの数をテナントIDとテーブル名と共に取得する。
そして、蓄積データ監視部160は、取得したテナントIDとテーブル名(データ領域)とレコード数とを設定したレコードを生成し、生成したレコードを蓄積データ管理テーブル197に追加する。
The accumulated data monitoring unit 160 communicates with the DB server 180 periodically (every time the predetermined accumulated data monitoring time elapses), and the number of records included in each data area from the DB server 180 together with the tenant ID and the table name. get.
Then, the accumulated data monitoring unit 160 generates a record in which the acquired tenant ID, table name (data area), and number of records are set, and adds the generated record to the accumulated data management table 197.

図9は、実施の形態1における波及範囲管理テーブル101の一例を示す図である。
実施の形態1における波及範囲管理テーブル101について、図9に基づいて説明する。
FIG. 9 is a diagram illustrating an example of the spread range management table 101 according to the first embodiment.
The spreading range management table 101 in the first embodiment will be described with reference to FIG.

波及範囲管理テーブル101は、データ処理に対する応答性能の影響が生じるテナント(以下、波及範囲という)を特定するための情報が設定されるデータである。
波及範囲管理テーブル101は、「ID」「処理識別子」「データ領域」「波及範囲」を対応付けている。また、「波及範囲」は「波及種別」「波及対象」を含んでいる。
「ID」は、波及範囲管理テーブル101のレコードを識別する識別子を示す。
「処理識別子」は、データ処理の種類を識別する識別子を示す。
「データ領域」は、テナントデータ181が設定されるデータ領域(例えば、テーブル)を識別する識別子(例えば、データ領域名またはテーブル名)を示す。
「波及種別」は、「波及対象」の種類(依存情報またはモデルタイプ)を示す。
「波及対象」は、波及範囲を特定する情報を示す。
The spillover range management table 101 is data in which information for specifying a tenant (hereinafter referred to as spillover range) in which the influence of response performance on data processing occurs is set.
The spillover range management table 101 associates “ID”, “processing identifier”, “data area”, and “spillover range”. The “Ripple range” includes “Ripple type” and “Ripple target”.
“ID” indicates an identifier for identifying a record of the spread range management table 101.
“Processing identifier” indicates an identifier for identifying the type of data processing.
“Data area” indicates an identifier (for example, a data area name or a table name) for identifying a data area (for example, a table) in which the tenant data 181 is set.
“Ripple type” indicates the type (dependence information or model type) of “spread target”.
“Ripple target” indicates information for specifying a spread range.

図10は、実施の形態1における挙動条件管理テーブル102の一例を示す図である。
実施の形態1における挙動条件管理テーブル102について、図10に基づいて説明する。
FIG. 10 is a diagram illustrating an example of the behavior condition management table 102 according to the first embodiment.
The behavior condition management table 102 in the first embodiment will be described with reference to FIG.

挙動条件管理テーブル102は、データ処理の処理量に関する条件(以下、挙動条件という)を設定したデータである。
挙動条件管理テーブル102は、「ID」「対象テナント」「処理識別子」「挙動条件」を対応付けている。また、「挙動条件」は「条件種別」「条件値」を含んでいる。
「ID」は、挙動条件管理テーブル102のレコードを識別する識別子を示す。
「対象テナント」は、テナントを識別する識別子を示す。
「処理識別子」は、データ処理の種類を識別する識別子を示す。
「条件種別」は、「条件値」の種類(処理間隔、処理時間など)を示す。
「条件値」は、挙動条件の条件値を示す。
The behavior condition management table 102 is data in which a condition related to the amount of data processing (hereinafter referred to as behavior condition) is set.
The behavior condition management table 102 associates “ID”, “target tenant”, “processing identifier”, and “behavior condition”. The “behavior condition” includes “condition type” and “condition value”.
“ID” indicates an identifier for identifying a record in the behavior condition management table 102.
“Target tenant” indicates an identifier for identifying a tenant.
“Processing identifier” indicates an identifier for identifying the type of data processing.
“Condition type” indicates the type of “condition value” (processing interval, processing time, etc.).
“Condition value” indicates the condition value of the behavior condition.

図11は、実施の形態1における蓄積条件管理テーブル103の一例を示す図である。
実施の形態1における蓄積条件管理テーブル103について、図11に基づいて説明する。
FIG. 11 is a diagram illustrating an example of the storage condition management table 103 according to the first embodiment.
The accumulation condition management table 103 in the first embodiment will be described with reference to FIG.

蓄積条件管理テーブル103(グループ属性値記憶部の一例)は、テナントデータ181のデータ量に関する条件(以下、蓄積条件という)を設定したデータである。
蓄積条件管理テーブル103は、「ID」「対象テナント」「データ領域」「蓄積条件」を対応付けている。また、「蓄積条件」は「条件種別」「条件値」を含んでいる。
「ID」は、蓄積条件管理テーブル103のレコードを識別する識別子を示す。
「対象テナント」は、テナントを識別する識別子を示す。
「条件種別」は、「条件値」の種類(レコード数、増加数など)を示す。
「条件値」は、蓄積条件の条件値を示す。
The accumulation condition management table 103 (an example of a group attribute value storage unit) is data in which conditions relating to the data amount of the tenant data 181 (hereinafter referred to as accumulation conditions) are set.
The storage condition management table 103 associates “ID”, “target tenant”, “data area”, and “storage condition”. The “accumulation condition” includes “condition type” and “condition value”.
“ID” indicates an identifier for identifying a record in the storage condition management table 103.
“Target tenant” indicates an identifier for identifying a tenant.
“Condition type” indicates the type of “condition value” (number of records, number of increases, etc.).
“Condition value” indicates the condition value of the accumulation condition.

図12は、実施の形態1におけるデータアクセス制御方法の一例を示すフローチャートである。
実施の形態1におけるデータアクセス制御方法について、図12に基づいて説明する。
FIG. 12 is a flowchart illustrating an example of the data access control method according to the first embodiment.
A data access control method according to the first embodiment will be described with reference to FIG.

S110において、テナントユーザは、テナント端末108を操作し、テナント端末108とデータアクセス制御装置100との通信を開始する。
テナントユーザは、テナントデータ181に関するデータ処理を指定する処理情報をテナント端末108に入力する。例えば、テナントデータ181を検索する検索処理またはテナントデータ181のデータ値を集計する集計処理はデータ処理の一例である。
テナント端末108は、テナントユーザから入力された処理情報に基づいて処理要求を生成し、生成した処理要求をデータアクセス制御装置100に送信する。
処理要求は、テナントユーザが属するテナントを識別する「テナントID」、指定されたデータ処理を識別する「処理識別子」、データ処理の対象であるテナントデータ181を指定する「対象データ情報」などを含んだデータである。
データアクセス制御装置100のアプリケーション部110は、テナント端末108から送信された処理要求を受信する。
S110の後、処理はS120に進む。
In S110, the tenant user operates the tenant terminal 108 to start communication between the tenant terminal 108 and the data access control apparatus 100.
The tenant user inputs processing information for designating data processing related to the tenant data 181 to the tenant terminal 108. For example, a search process for searching for tenant data 181 or a tabulation process for totaling data values of tenant data 181 is an example of data processing.
The tenant terminal 108 generates a processing request based on the processing information input from the tenant user, and transmits the generated processing request to the data access control apparatus 100.
The processing request includes a “tenant ID” that identifies the tenant to which the tenant user belongs, a “processing identifier” that identifies the specified data processing, “target data information” that specifies the tenant data 181 that is the target of the data processing, and the like. It is data.
The application unit 110 of the data access control apparatus 100 receives the processing request transmitted from the tenant terminal 108.
After S110, the process proceeds to S120.

S120において、アプリケーション部110は、処理要求に含まれる対象データ情報によって指定されるテナントデータ181を要求するデータ要求を生成し、生成したデータ要求をデータアクセス制御部120に渡す。
データ要求は、処理要求に含まれるテナントIDと処理識別子と対象データ情報とを含んだデータである。
データアクセス制御部120は、アプリケーション部110からデータ要求を受け取る。
S120の後、処理はS130に進む。
In S120, the application unit 110 generates a data request for requesting the tenant data 181 specified by the target data information included in the processing request, and passes the generated data request to the data access control unit 120.
The data request is data including a tenant ID, a processing identifier, and target data information included in the processing request.
The data access control unit 120 receives a data request from the application unit 110.
After S120, the process proceeds to S130.

S130において、データアクセス制御部120は、DBサーバ180と通信するためのコネクション情報を要求するコネクション要求を生成し、生成したコネクション要求をコネクション制御部130に渡す。
コネクション要求は、データ要求に含まれるテナントIDと処理識別子とを含んだデータである。
コネクション制御部130は、データアクセス制御部120からコネクション要求を受け取る。
S130の後、処理はS140に進む。
In S <b> 130, the data access control unit 120 generates a connection request for requesting connection information for communicating with the DB server 180, and passes the generated connection request to the connection control unit 130.
The connection request is data including a tenant ID and a process identifier included in the data request.
The connection control unit 130 receives a connection request from the data access control unit 120.
After S130, the process proceeds to S140.

S140において、コネクション制御部130は、テナント切換制御テーブル195(図6参照)に含まれる接続残数のうち、コネクション要求に含まれるテナントIDと処理識別子と同じテナントIDと処理識別子とに対応付けられた接続残数を取得する。
コネクション制御部130は、取得した接続残数に基づいて、コネクションの空きがあるか否かを判定する。接続残数がゼロ(または残数閾値未満の値)である場合、コネクションの空きが無く、それ以外の場合、コネクションの空きが有る。
コネクションの空きが有ると判定した場合(YES)、処理はS150に進む。
コネクションの空きが無いと判定した場合(NO)、処理はS141に進む。
In S140, the connection control unit 130 is associated with the same tenant ID and processing identifier as the tenant ID and processing identifier included in the connection request among the remaining number of connections included in the tenant switching control table 195 (see FIG. 6). Get the remaining number of connections.
The connection control unit 130 determines whether there is a free connection based on the acquired number of remaining connections. When the remaining connection number is zero (or a value less than the remaining threshold value), there is no connection space, otherwise there is a connection space.
If it is determined that there is a free connection (YES), the process proceeds to S150.
If it is determined that there is no free connection (NO), the process proceeds to S141.

S141において、コネクション制御部130は、所定のコネクション待ち時間が経過するのを待つ。S141の後、処理はS140に戻る。
コネクション待ち時間中に、コネクション制御部130、テナント挙動監視部140またはテナント蓄積監視部150によって接続残数が増加された場合、S140でコネクションの空きが有ると判定され、処理はS150に進むことになる。
つまり、接続残数が増加されるまで、S140およびS141が繰り返される。
但し、アプリケーション部110が、接続残数の増加を待たずに、データ処理できなかったことを通知するエラーメッセージをテナント端末108に応答してもよい。この場合、データアクセス制御方法の処理は終了する。
In S141, the connection control unit 130 waits for a predetermined connection waiting time to elapse. After S141, the process returns to S140.
If the remaining number of connections is increased by the connection control unit 130, the tenant behavior monitoring unit 140, or the tenant accumulation monitoring unit 150 during the connection waiting time, it is determined in S140 that there is an empty connection, and the process proceeds to S150. Become.
That is, S140 and S141 are repeated until the remaining number of connections is increased.
However, the application unit 110 may respond to the tenant terminal 108 with an error message notifying that data processing could not be performed without waiting for an increase in the remaining number of connections. In this case, the process of the data access control method ends.

S150において、コネクション制御部130は、モデル情報管理テーブル193(図4参照)に含まれる配置IDのうち、コネクション要求に含まれるテナントIDと同じテナントIDに対応付けられた配置IDを取得する。
コネクション制御部130は、取得した配置IDが設定されているレコードをコネクション管理テーブル194から取得し、取得したレコードをコネクション情報としてデータアクセス制御部120に渡す。
データアクセス制御部120は、コネクション制御部130からコネクション情報を受け取る。
In S150, the connection control unit 130 acquires an arrangement ID associated with the same tenant ID as the tenant ID included in the connection request among the arrangement IDs included in the model information management table 193 (see FIG. 4).
The connection control unit 130 acquires a record in which the acquired arrangement ID is set from the connection management table 194, and passes the acquired record to the data access control unit 120 as connection information.
The data access control unit 120 receives connection information from the connection control unit 130.

また、コネクション制御部130は、テナント切換制御テーブル195(図6参照)に含まれる接続残数のうち、コネクション要求に含まれるテナントIDと処理識別子と同じテナントIDと処理識別子とに対応付けられた接続残数から接続数「1」を差し引いて接続残数を更新する。
S150の後、処理はS160に進む。
Further, the connection control unit 130 is associated with the same tenant ID and processing identifier as the tenant ID and processing identifier included in the connection request among the remaining number of connections included in the tenant switching control table 195 (see FIG. 6). The remaining number of connections is updated by subtracting the number of connections “1” from the remaining number of connections.
After S150, the process proceeds to S160.

S160において、データアクセス制御部120は、コネクション情報(DBサーバ180のIPアドレスおよびポート番号など)を用いて、DBサーバ180と通信するためのコネクションを接続する。
S160の後、処理はS161に進む。
In S160, the data access control unit 120 uses the connection information (such as the IP address and port number of the DB server 180) to connect a connection for communication with the DB server 180.
After S160, the process proceeds to S161.

S161において、データアクセス制御部120は、データ要求に含まれる対象データ情報によって指定されるテナントデータ181をDBサーバ180から取得し、取得したテナントデータ181をアプリケーション部110に渡す。
アプリケーション部110は、データアクセス制御部120からテナントデータ181を受け取る。
S161の後、処理はS170に進む。
In S <b> 161, the data access control unit 120 acquires the tenant data 181 specified by the target data information included in the data request from the DB server 180, and passes the acquired tenant data 181 to the application unit 110.
The application unit 110 receives the tenant data 181 from the data access control unit 120.
After S161, the process proceeds to S170.

S170において、アプリケーション部110は、データアクセス制御部120から受け取ったテナントデータ181を用いて、処理要求に含まれる処理識別子によって識別されるデータ処理を実行する。
S170の後、処理はS171に進む。
In S170, the application unit 110 uses the tenant data 181 received from the data access control unit 120 to execute data processing identified by the processing identifier included in the processing request.
After S170, the process proceeds to S171.

S171において、アプリケーション部110は、データ処理の処理結果を含んだデータを処理応答として生成し、生成した処理応答をテナント端末108に送信する。
テナント端末108は、処理応答を受信し、受信した処理応答に含まれる処理結果をディスプレイに表示する。
In S171, the application unit 110 generates data including a processing result of data processing as a processing response, and transmits the generated processing response to the tenant terminal 108.
The tenant terminal 108 receives the processing response and displays the processing result included in the received processing response on the display.

また、アプリケーション部110はデータ処理の終了をデータアクセス制御部120に通知し、データアクセス制御部120はS160で接続したコネクションを切断する。
そして、データアクセス制御部120はコネクションの切断をコネクション制御部130に通知し、コネクション制御部130はS150で接続数「1」を差し引いた接続残数に接続数「1」を加えて接続残数を更新する。
S171の後、データアクセス制御方法の処理は終了する。
Further, the application unit 110 notifies the data access control unit 120 of the end of the data processing, and the data access control unit 120 disconnects the connection connected in S160.
Then, the data access control unit 120 notifies the connection control unit 130 of the disconnection of the connection, and the connection control unit 130 adds the number of connections “1” to the number of remaining connections obtained by subtracting the number of connections “1” in S150, and the number of remaining connections. Update.
After S171, the process of the data access control method ends.

次に、DBサーバ180に対する負荷が高い負荷テナントから要求されるデータ処理と、負荷テナントと関連する波及テナントから要求されるデータ処理とを制限するために、テナント切換制御テーブル195に設定されている接続残数を調整するテナント挙動監視部140およびテナント蓄積監視部150について説明する。   Next, it is set in the tenant switching control table 195 in order to limit data processing requested from a load tenant having a high load on the DB server 180 and data processing requested from a spreading tenant related to the load tenant. The tenant behavior monitoring unit 140 and the tenant accumulation monitoring unit 150 that adjust the number of remaining connections will be described.

図13は、実施の形態1におけるテナント挙動監視部140の構成図である。
実施の形態1におけるテナント挙動監視部140の構成について、図13に基づいて説明する。
FIG. 13 is a configuration diagram of the tenant behavior monitoring unit 140 according to the first embodiment.
The configuration of the tenant behavior monitoring unit 140 in the first embodiment will be described with reference to FIG.

テナント挙動監視部140は、負荷テナント選択部141(負荷グループ選択部、負荷グループ属性値取得部の一例)と、負荷量取得部142(リソース使用量取得部の一例)と、接続残数最小化部143(波及グループ制御部の一例)と、波及テナント選択部144(波及グループ選択部の一例)とを備える。
負荷テナント選択部141は、複数のテナントのうち、負荷量取得部142によって取得されるテナントの負荷量が挙動条件管理テーブル102に設定されている挙動条件を満たすテナント(負荷テナント)を選択する。
負荷量取得部142は、利用履歴管理テーブル196に基づいて、テナント毎にDBサーバ180に対するテナントの負荷量(データ処理の処理間隔または処理時間)を取得する。
接続残数最小化部143は、テナント切換制御テーブル195に設定されている接続残数のうち、負荷テナント選択部141によって選択される負荷テナントの接続残数と、波及テナント選択部144によって選択される波及テナントの接続残数とを最小化する。
波及テナント選択部144は、波及範囲管理テーブル101に基づいて、負荷テナント選択部141によって選択される負荷テナントと関連する波及テナントを選択する。
The tenant behavior monitoring unit 140 includes a load tenant selection unit 141 (an example of a load group selection unit and a load group attribute value acquisition unit), a load amount acquisition unit 142 (an example of a resource usage amount acquisition unit), and a connection remaining number minimization. Unit 143 (an example of a propagation group control unit) and a propagation tenant selection unit 144 (an example of a propagation group selection unit).
The load tenant selection unit 141 selects a tenant (load tenant) satisfying the behavior condition set in the behavior condition management table 102 by the tenant load amount acquired by the load amount acquisition unit 142 from among a plurality of tenants.
Based on the usage history management table 196, the load amount acquisition unit 142 acquires the tenant load amount (data processing processing interval or processing time) for the DB server 180 for each tenant.
The connection remaining number minimizing unit 143 is selected by the load tenant connection remaining number selected by the load tenant selecting unit 141 from the connection remaining number set in the tenant switching control table 195 and the propagation tenant selecting unit 144. Minimize the remaining number of connected tenants.
The spread tenant selection unit 144 selects a spread tenant related to the load tenant selected by the load tenant selection unit 141 based on the spread range management table 101.

図14は、実施の形態1におけるテナント挙動監視処理を示すフローチャートである。
テナント挙動監視部140(図13参照)が実行するテナント挙動監視処理について、図14に基づいて説明する。
テナント挙動監視部140は、定期的(所定の挙動監視間隔の時間が経過する毎)または管理者がデータアクセス制御装置100にテナント挙動監視処理を指示したときに、図14に示すテナント挙動監視処理を実行する。
但し、テナント挙動監視部140は、その他のタイミング(例えば、テナント端末108から要求されたデータ処理を実行するタイミング)でテナント挙動監視処理を実行しても構わない。
FIG. 14 is a flowchart showing tenant behavior monitoring processing in the first embodiment.
Tenant behavior monitoring processing executed by the tenant behavior monitoring unit 140 (see FIG. 13) will be described with reference to FIG.
The tenant behavior monitoring unit 140 performs tenant behavior monitoring processing shown in FIG. 14 periodically (every time the predetermined behavior monitoring interval elapses) or when the administrator instructs the data access control device 100 to perform tenant behavior monitoring processing. Execute.
However, the tenant behavior monitoring unit 140 may execute the tenant behavior monitoring process at other timing (for example, the timing of executing the data processing requested from the tenant terminal 108).

S210において、負荷テナント選択部141は、テナント管理テーブル192(図3参照)から未選択のレコードを一つ選択する。
S210の後、処理はS211に進む。
In S210, the load tenant selection unit 141 selects one unselected record from the tenant management table 192 (see FIG. 3).
After S210, the process proceeds to S211.

S211において、負荷テナント選択部141は、S210で選択したレコードからテナントIDと処理識別子とを取得する。
S211の後、処理はS220に進む。
In S211, the load tenant selection unit 141 acquires a tenant ID and a processing identifier from the record selected in S210.
After S211, the process proceeds to S220.

S220において、負荷テナント選択部141は、S211で取得したテナントIDと処理識別子と同じテナントIDと処理識別子とが設定されているレコードが挙動条件管理テーブル102(図10参照)に有るか否かを判定する。
但し、1つ以上のテナントから成るグループテナントを識別するグループテナントIDを挙動条件管理テーブル102に定義しても構わない。また、1つ以上のテナントIDとグループテナントIDとを対応付けたグループテナントテーブルを設けても構わない。この場合、負荷テナント選択部141は、グループテナントテーブルに基づいて、S211で取得したテナントIDと同じテナントIDに対応付けられたグループテナントIDと、S211で取得した処理識別子と同じ処理識別子と、が設定されているレコードが挙動条件管理テーブル102に有るか否かを判定する。
該当するレコードが有る場合(YES)、処理はS221に進む。
該当するレコードが無い場合(NO)、処理はS270に進む。
In S220, the load tenant selection unit 141 determines whether or not there is a record in the behavior condition management table 102 (see FIG. 10) in which the same tenant ID and processing identifier as the tenant ID and processing identifier acquired in S211 are set. judge.
However, a group tenant ID for identifying a group tenant composed of one or more tenants may be defined in the behavior condition management table 102. In addition, a group tenant table in which one or more tenant IDs and group tenant IDs are associated may be provided. In this case, the load tenant selection unit 141 has, based on the group tenant table, the group tenant ID associated with the same tenant ID as the tenant ID acquired in S211 and the same processing identifier as the processing identifier acquired in S211. It is determined whether or not the set record exists in the behavior condition management table 102.
If there is a corresponding record (YES), the process proceeds to S221.
If there is no corresponding record (NO), the process proceeds to S270.

S221において、負荷テナント選択部141は、S220で該当したレコードから挙動条件を取得する。挙動条件には、条件種別と条件値とが含まれる(図10参照)。
S221の後、処理はS230に進む。
In S221, the load tenant selection unit 141 acquires the behavior condition from the record corresponding in S220. The behavior condition includes a condition type and a condition value (see FIG. 10).
After S221, the process proceeds to S230.

S230において、負荷量取得部142は、利用履歴管理テーブル196(図7参照)のレコードのうち、S211で取得したテナントIDと処理識別子と同じテナントIDと処理識別子とを含んだレコードを取得する。
負荷量取得部142は、取得したレコードを用いて、挙動条件に含まれる条件種別に応じた負荷量(データ処理の処理間隔または処理時間)を取得する。
例えば、負荷量取得部142は、以下のように負荷量を取得する。
In S230, the load amount acquisition unit 142 acquires a record including the same tenant ID and processing identifier as the tenant ID and processing identifier acquired in S211 among the records of the usage history management table 196 (see FIG. 7).
The load amount acquisition unit 142 uses the acquired record to acquire a load amount (data processing processing interval or processing time) according to the condition type included in the behavior condition.
For example, the load amount acquisition unit 142 acquires the load amount as follows.

挙動条件に含まれる条件種別が「処理間隔」である場合、負荷量取得部142は、取得したレコードのうち貸出時刻が最も新しい時刻である最新のレコードと、貸出時刻が2番目に新しい時刻である2番目のレコードとを選択する。
負荷量取得部142は、最新のレコードに設定されている貸出時刻と2番目のレコードに設定されている貸出時刻との時刻差を負荷量として算出する。この負荷量は、データ処理の処理間隔(時間)を示す。
但し、負荷量取得部142は、最新のレコードまたは2番目のレコード以外のレコードを用いて負荷量を算出しても構わない。
例えば、負荷量取得部142は、貸出時刻が新しい順にレコードを選択し、選択したレコード毎に選択したレコードと選択したレコードの一つ前のレコードとの貸出時刻の時刻差を算出する。そして、負荷量取得部142は、貸出時刻の時刻差の平均値を負荷量として算出する。
When the condition type included in the behavior condition is “processing interval”, the load amount acquisition unit 142 sets the latest record whose lending time is the newest among the acquired records and the second newest lending time. Select a second record.
The load amount acquisition unit 142 calculates a time difference between the lending time set in the latest record and the lending time set in the second record as a load amount. This load amount indicates a processing interval (time) of data processing.
However, the load amount acquisition unit 142 may calculate the load amount using a record other than the latest record or the second record.
For example, the load amount acquisition unit 142 selects records in order from the newest lending time, and calculates the time difference between the lending times of the record selected for each selected record and the record immediately before the selected record. And the load amount acquisition part 142 calculates the average value of the time difference of rental time as a load amount.

挙動条件に含まれる条件種別が「処理時間」である場合、負荷量取得部142は、取得したレコードのうち貸出時刻が最も新しい時刻である最新のレコードを選択する。
負荷量取得部142は、最新のレコードに設定されている貸出時刻と返却時刻との時刻差を負荷量として算出する。この負荷量は、データ処理に要した処理時間を示す。
但し、負荷量取得部142は、最新のレコード以外のレコードを用いて負荷量を算出しても構わない。
例えば、負荷量取得部142は、貸出時刻が新しい順にレコードを選択し、選択したレコード毎に選択したレコードに設定されている貸出時刻と返却時刻との時刻差を算出する。そして、負荷量取得部142は、貸出時刻と返却時刻との時刻差の平均値を負荷量として算出する。
また、負荷量取得部142は、貸出時刻と返却時刻との時刻差の合計値を負荷量として算出しても構わない。
S230の後、処理はS240に進む。
When the condition type included in the behavior condition is “processing time”, the load amount acquisition unit 142 selects the latest record having the latest lending time among the acquired records.
The load amount acquisition unit 142 calculates the time difference between the lending time and the return time set in the latest record as the load amount. This load amount indicates the processing time required for data processing.
However, the load amount acquisition unit 142 may calculate the load amount using a record other than the latest record.
For example, the load amount acquisition unit 142 selects records in order from the newest lending time, and calculates the time difference between the lending time and the return time set in the selected record for each selected record. Then, the load amount acquisition unit 142 calculates the average value of the time difference between the lending time and the return time as the load amount.
Moreover, the load amount acquisition unit 142 may calculate the total value of the time difference between the lending time and the return time as the load amount.
After S230, the process proceeds to S240.

S240において、負荷テナント選択部141は、挙動条件に含まれる条件値と、S230で取得した負荷量とを比較し、負荷量が挙動条件を満たすか否かを判定する。   In S240, the load tenant selection unit 141 compares the condition value included in the behavior condition with the load amount acquired in S230, and determines whether the load amount satisfies the behavior condition.

例えば、挙動条件に含まれる条件種別が「処理間隔」である場合、負荷テナント選択部141は以下のように判定する。
負荷量が条件値以下である短い時間を示す場合、負荷量は挙動条件を満たす。
負荷量が条件値より長い時間を示す場合、負荷量は挙動条件を満たさない。
For example, when the condition type included in the behavior condition is “processing interval”, the load tenant selection unit 141 determines as follows.
When the load amount indicates a short time that is less than or equal to the condition value, the load amount satisfies the behavior condition.
When the load amount indicates a time longer than the condition value, the load amount does not satisfy the behavior condition.

また、挙動条件に含まれる条件種別が「処理時間」である場合、負荷テナント選択部141は以下のように判定する。
負荷量が条件値以上である長い時間を示す場合、負荷量は挙動条件を満たす。
負荷量が条件値より短い時間を示す場合、負荷量は挙動条件を満たさない。
When the condition type included in the behavior condition is “processing time”, the load tenant selection unit 141 determines as follows.
When the load amount indicates a long time that is equal to or greater than the condition value, the load amount satisfies the behavior condition.
When the load amount indicates a time shorter than the condition value, the load amount does not satisfy the behavior condition.

負荷量が挙動条件を満たす場合(YES)、処理はS250に進む。
負荷量が挙動条件を満たさない場合(NO)、処理はS270に進む。
If the load amount satisfies the behavior condition (YES), the process proceeds to S250.
When the load amount does not satisfy the behavior condition (NO), the process proceeds to S270.

S250において、接続残数最小化部143は、テナント切換制御テーブル195(図6参照)に含まれるレコードのうち、S211で取得したテナントID(負荷テナントのテナントID)と処理識別子と同じテナントIDと処理識別子とが設定されているレコードを選択する。
そして、接続残数最小化部143は、選択したレコードに設定されている接続残数を最小化する。
例えば、接続残数最小化部143は、接続残数を接続最小値(例えば、ゼロ)に更新する。接続最小値は予め定められて記憶されるものとする。接続最小値はゼロ以外の値(例えば、1以上の値)でも構わない。また、接続最小値はテナントID毎、処理識別子毎またはテナントIDと処理識別子との組み合わせ毎に定められても構わない。
S250の後、処理はS260に進む。
In S250, the remaining connection number minimizing unit 143 sets the tenant ID that is the same as the processing identifier and the tenant ID (the tenant ID of the load tenant) acquired in S211 among the records included in the tenant switching control table 195 (see FIG. 6). Select a record with a process identifier.
Then, the remaining connection number minimizing unit 143 minimizes the remaining connection number set in the selected record.
For example, the remaining connection number minimizing unit 143 updates the remaining connection number to the minimum connection value (for example, zero). It is assumed that the minimum connection value is predetermined and stored. The connection minimum value may be a value other than zero (for example, a value of 1 or more). The minimum connection value may be determined for each tenant ID, for each processing identifier, or for each combination of tenant ID and processing identifier.
After S250, the process proceeds to S260.

S260において、波及テナント選択部144は波及範囲管理テーブル101に基づいて負荷テナントに関連する波及テナントのテナントIDと処理識別子とを選択し、接続残数最小化部143は波及テナントのテナントIDと処理識別子とに対応付けられた接続残数を最小化する。
波及範囲最小化処理(S260)の詳細について別途説明する。
S260の後、処理はS270に進む。
In S260, the propagation tenant selection unit 144 selects the tenant ID and processing identifier of the transmission tenant related to the load tenant based on the transmission range management table 101, and the connection remaining number minimization unit 143 performs the tenant ID and processing of the transmission tenant. Minimize the number of remaining connections associated with the identifier.
Details of the spread range minimizing process (S260) will be described separately.
After S260, the process proceeds to S270.

S270において、負荷テナント選択部141は、テナント管理テーブル192に含まれるレコードのうち、S210で選択していない未選択のレコードが有るか否かを判定する。
未選択のレコードが有る場合(YES)、処理はS210に戻る。
未選択のレコードが無い場合(NO)、テナント挙動監視処理は終了する。
In S270, the load tenant selection unit 141 determines whether there is an unselected record that is not selected in S210 among the records included in the tenant management table 192.
If there is an unselected record (YES), the process returns to S210.
If there is no unselected record (NO), the tenant behavior monitoring process ends.

テナント挙動監視部140は、テナント挙動監視処理が終了してから所定の接続制限時間が経過したときに、S250またはS260で最小化した接続残数を回復させてもよい。例えば、テナント挙動監視部140は、最小化した接続残数を接続残数の初期値に回復、または最小化したときに減らした数だけ増やした接続残数に回復する。
また、テナント挙動監視部140は、定期的(接続制限時間が経過する毎)に、S240と同様に負荷量が挙動条件を満たすか否かを判定してもよい。負荷量が挙動条件を満たさないと判定した場合、テナント挙動監視部140は、S250またはS260で最小化した接続残数を回復させる。
接続残数を最小化したレコード、最小化する前の接続残数、接続残数の初期値など、接続残数の回復に必要な情報は接続残数を最小化したときに記憶しておくものとする。
The tenant behavior monitoring unit 140 may recover the number of remaining connections minimized in S250 or S260 when a predetermined connection time limit has elapsed after the tenant behavior monitoring process is completed. For example, the tenant behavior monitoring unit 140 recovers the minimized number of remaining connections to the initial value of the number of remaining connections, or recovers the number of remaining connections increased by the number reduced when the number is minimized.
Further, the tenant behavior monitoring unit 140 may determine whether or not the load amount satisfies the behavior condition on a regular basis (every time when the connection limit time elapses) similarly to S240. When it is determined that the load amount does not satisfy the behavior condition, the tenant behavior monitoring unit 140 recovers the remaining connection number minimized in S250 or S260.
Information necessary for recovery of the remaining number of connections, such as the record that minimizes the remaining number of connections, the remaining number of connections before minimization, and the initial value of the remaining number of connections, is stored when the remaining number of connections is minimized And

図15は、実施の形態1における波及範囲最小化処理(S260)を示すフローチャートである。
実施の形態1における波及範囲最小化処理(S260)について、図15に基づいて説明する。
FIG. 15 is a flowchart showing the spread range minimization process (S260) in the first embodiment.
The spread range minimizing process (S260) in the first embodiment will be described with reference to FIG.

S261において、波及テナント選択部144は、波及範囲管理テーブル101(図9参照)に含まれるレコードのうち、S211(図14参照)で取得した処理識別子と同じ処理識別子が設定されているレコードを選択する。
S261の後、処理はS262に進む。
In S261, the transmission tenant selection unit 144 selects a record in which the same processing identifier as the processing identifier acquired in S211 (see FIG. 14) is set from among the records included in the transmission range management table 101 (see FIG. 9). To do.
After S261, the process proceeds to S262.

S262において、波及テナント選択部144は、S261で選択したレコードに設定されている波及種別を参照する。
波及種別が「モデルタイプ」である場合、処理はS263に進む。
波及種別が「依存情報(1)」または「依存情報(2)」である場合、処理はS265に進む。
In S262, the propagation tenant selection unit 144 refers to the propagation type set in the record selected in S261.
If the propagation type is “model type”, the process proceeds to S263.
If the propagation type is “dependency information (1)” or “dependence information (2)”, the process proceeds to S265.

S263において、波及テナント選択部144は、モデル情報管理テーブル193(図4参照)に含まれるレコードのうち、S261で選択したレコードに設定されている波及対象(例えば、表共有)と同じモデルタイプが設定されているレコードを選択する。
波及テナント選択部144は、選択したレコード毎にレコードに設定されているテナントIDを波及テナントのテナントIDとして取得する。
S263の後、処理はS264に進む。
In S263, the transmission tenant selection unit 144 has the same model type as the transmission target (for example, table sharing) set in the record selected in S261 among the records included in the model information management table 193 (see FIG. 4). Select a set record.
The spread tenant selection unit 144 acquires the tenant ID set in the record for each selected record as the tenant ID of the spread tenant.
After S263, the process proceeds to S264.

S264において、接続残数最小化部143は、S263で取得した波及テナントのテナントID毎に、テナント切換制御テーブル195(図6参照)に含まれるレコードのうち、波及テナントのテナントIDと同じテナントIDと、S211(図14参照)で取得した処理識別子と同じ処理識別子と、が設定されているレコードを選択する。
そして、接続残数最小化部143は、選択したレコード毎にレコードに設定されている接続残数を最小化する(図14のS250と同様)。
S264の後、波及範囲最小化処理(S260)は終了する。
In S264, the connection remaining number minimizing unit 143, for each tenant ID of the propagated tenant acquired in S263, out of the records included in the tenant switching control table 195 (see FIG. 6), the same tenant ID as the tenant ID of the propagated tenant. And a record in which the same process identifier as the process identifier acquired in S211 (see FIG. 14) is set.
Then, the remaining connection number minimizing unit 143 minimizes the remaining connection number set in the record for each selected record (similar to S250 in FIG. 14).
After S264, the spread range minimization process (S260) ends.

S265において、波及テナント選択部144は、依存情報管理テーブル191(図2参照)に含まれるレコードのうち、S261で選択したレコードに設定されている波及対象と同じ依存情報(1)または依存情報(2)が設定されているレコードを選択する。
波及テナント選択部144は、選択したレコード毎にレコードに設定されているテナントIDを波及テナントのテナントIDとして取得する。
S265の後、処理はS266に進む。
In S265, the transmission tenant selection unit 144 selects the same dependency information (1) or dependency information (1) as the transmission target set in the record selected in S261 among the records included in the dependency information management table 191 (see FIG. 2). 2) Select the record that is set.
The spread tenant selection unit 144 acquires the tenant ID set in the record for each selected record as the tenant ID of the spread tenant.
After S265, the process proceeds to S266.

S266において、接続残数最小化部143は、S265で取得した波及テナントのテナントID毎に、テナント切換制御テーブル195(図6参照)に含まれるレコードのうち、波及テナントのテナントIDと同じテナントIDと、S211(図14参照)で取得した処理識別子と同じ処理識別子と、が設定されているレコードを選択する。
そして、接続残数最小化部143は、選択したレコード毎にレコードに設定されている接続残数を最小化する(図14のS250と同様)。
S266の後、波及範囲最小化処理(S260)は終了する。
In S266, the connection remaining number minimizing unit 143, for each tenant ID of the propagated tenant acquired in S265, out of the records included in the tenant switching control table 195 (see FIG. 6), the same tenant ID as the tenant ID of the propagated tenant. And a record in which the same process identifier as the process identifier acquired in S211 (see FIG. 14) is set.
Then, the remaining connection number minimizing unit 143 minimizes the remaining connection number set in the record for each selected record (similar to S250 in FIG. 14).
After S266, the spread range minimizing process (S260) ends.

図16は、実施の形態1におけるテナント蓄積監視部150の構成図である。
実施の形態1におけるテナント蓄積監視部150の構成について、図16に基づいて説明する。
FIG. 16 is a configuration diagram of the tenant accumulation monitoring unit 150 according to the first embodiment.
The configuration of the tenant accumulation monitoring unit 150 in the first embodiment will be described with reference to FIG.

テナント蓄積監視部150は、負荷テナント選択部151(負荷グループ選択部、負荷グループ属性値取得部の一例)と、負荷量取得部152(リソース使用量取得部の一例)と、接続残数最小化部153(波及グループ制御部の一例)と、波及テナント選択部154(波及グループ選択部の一例)とを備える。
負荷テナント選択部151は、複数のテナントのうち、負荷量取得部152によって取得されるテナントの負荷量が蓄積条件管理テーブル103に設定されている蓄積条件を満たすテナント(負荷テナント)を選択する。
負荷量取得部152は、蓄積データ管理テーブル197に基づいて、テナント毎にDBサーバ180に対するテナントの負荷量(データ量またはデータの増加量)を取得する。
接続残数最小化部153は、テナント切換制御テーブル195に設定されている接続残数のうち、負荷テナント選択部151によって選択される負荷テナントの接続残数と、波及テナント選択部154によって選択される波及テナントの接続残数とを最小化する。
波及テナント選択部154は、波及範囲管理テーブル101に基づいて、負荷テナント選択部151によって選択される負荷テナントと関連する波及テナントを選択する。
The tenant accumulation monitoring unit 150 includes a load tenant selection unit 151 (an example of a load group selection unit and a load group attribute value acquisition unit), a load amount acquisition unit 152 (an example of a resource usage amount acquisition unit), and a connection remaining number minimization. Unit 153 (an example of a propagation group control unit) and a propagation tenant selection unit 154 (an example of a propagation group selection unit).
The load tenant selection unit 151 selects a tenant (load tenant) that satisfies the storage condition in which the load amount of the tenant acquired by the load amount acquisition unit 152 is set in the storage condition management table 103 from among a plurality of tenants.
The load amount acquisition unit 152 acquires the tenant load amount (data amount or data increase amount) for the DB server 180 for each tenant based on the accumulated data management table 197.
The remaining connection number minimizing unit 153 is selected by the load tenant remaining number selected by the load tenant selecting unit 151 from the remaining connection numbers set in the tenant switching control table 195 and the propagated tenant selecting unit 154. Minimize the remaining number of connected tenants.
The spread tenant selection unit 154 selects a spread tenant related to the load tenant selected by the load tenant selection unit 151 based on the spread range management table 101.

図17は、実施の形態1におけるテナント蓄積監視処理を示すフローチャートである。
テナント蓄積監視部150が実行するテナント蓄積監視処理について、図17に基づいて説明する。
FIG. 17 is a flowchart illustrating tenant accumulation monitoring processing according to the first embodiment.
Tenant accumulation monitoring processing executed by the tenant accumulation monitoring unit 150 will be described with reference to FIG.

S310において、負荷テナント選択部151は、テナント管理テーブル192(図3参照)から未選択のレコードの一つを選択する。
S310の後、処理はS311に進む。
In S310, the load tenant selection unit 151 selects one of the unselected records from the tenant management table 192 (see FIG. 3).
After S310, the process proceeds to S311.

S311において、負荷テナント選択部151は、S310で選択したレコードからテナントIDと処理識別子とを取得する。
S311の後、処理はS320に進む。
In S311, the load tenant selection unit 151 acquires a tenant ID and a process identifier from the record selected in S310.
After S311, the process proceeds to S320.

S320において、負荷テナント選択部151は、S311で取得したテナントIDと同じテナントIDが設定されているレコードが蓄積条件管理テーブル103(図11参照)に有るか否かを判定する。
該当するレコードが有る場合(YES)、処理はS321に進む。
該当するレコードが無い場合(NO)、処理はS370に進む。
In S320, the load tenant selection unit 151 determines whether there is a record in the storage condition management table 103 (see FIG. 11) in which the same tenant ID as the tenant ID acquired in S311 is set.
If there is a corresponding record (YES), the process proceeds to S321.
If there is no corresponding record (NO), the process proceeds to S370.

S321において、負荷テナント選択部151は、S320で該当したレコードからデータ領域と蓄積条件とを取得する。蓄積条件には、条件種別と条件値とが含まれる(図11参照)。
S321の後、処理はS330に進む。
In S321, the load tenant selection unit 151 acquires the data area and the accumulation condition from the record corresponding in S320. The accumulation condition includes a condition type and a condition value (see FIG. 11).
After S321, the process proceeds to S330.

S330において、負荷量取得部152は、蓄積データ管理テーブル197(図8参照)のレコードのうち、S311で取得したテナントIDと同じテナントIDと、S321で取得したデータ領域と同じデータ領域と、が設定されているレコードを取得する。
負荷量取得部152は、取得したレコードを用いて、蓄積条件に含まれる条件種別に応じた負荷量(テナントデータ181のレコード数またはレコードの増加数)を取得する。
例えば、負荷量取得部152は、以下のように負荷量を取得する。
In S330, the load amount acquisition unit 152 has the same tenant ID as the tenant ID acquired in S311 and the same data area as the data area acquired in S321 in the record of the accumulated data management table 197 (see FIG. 8). Get the set record.
The load amount acquisition unit 152 uses the acquired record to acquire a load amount (the number of records in the tenant data 181 or the increase in the number of records) according to the condition type included in the accumulation condition.
For example, the load amount acquisition unit 152 acquires the load amount as follows.

蓄積条件に含まれる条件種別が「レコード数」である場合、負荷量取得部152は、取得したレコードのうち最も新しい時刻が設定されている最新のレコードを選択し、選択した最新のレコードに設定されているレコード数を負荷量として取得する。
但し、負荷量取得部152は、最新のレコード以外のレコードを用いて負荷量を取得しても構わない。
When the condition type included in the accumulation condition is “number of records”, the load amount acquisition unit 152 selects the latest record in which the latest time is set from the acquired records, and sets it as the selected latest record. Get the number of records being loaded as the load.
However, the load amount acquisition unit 152 may acquire the load amount using a record other than the latest record.

蓄積条件に含まれる条件種別が「増加数」である場合、負荷量取得部152は、取得したレコードのうち最も新しい時刻が設定されている最新のレコードと、2番目に新しい時刻が設定されている2番目のレコードとを選択する。
負荷量取得部152は、最新のレコードに設定されているレコード数と2番目のレコードに設定されているレコード数との差と、最新のレコードに設定されている時刻と2番目のレコードに設定されている時刻との時刻差とを算出する。
負荷量取得部152は、レコード数の差と時刻差とを用いて、単位時間(例えば、1日)当たりのレコードの増加数を負荷量として算出する。
但し、負荷量取得部152は、最新レコードまたは2番目のレコード以外のレコードを用いて負荷量を算出しても構わない。
S330の後、処理はS340に進む。
When the condition type included in the accumulation condition is “increase number”, the load amount acquisition unit 152 sets the latest record with the newest time among the acquired records and the second newest time. Select the second record.
The load amount acquisition unit 152 sets the difference between the number of records set in the latest record and the number of records set in the second record, the time set in the latest record, and the second record. The time difference from the current time is calculated.
The load amount acquisition unit 152 calculates the increase number of records per unit time (for example, one day) as a load amount using the difference in the number of records and the time difference.
However, the load amount acquisition unit 152 may calculate the load amount using a record other than the latest record or the second record.
After S330, the process proceeds to S340.

S340において、負荷テナント選択部151は、蓄積条件に含まれる条件値と、S330で取得した負荷量とを比較し、負荷量が蓄積条件を満たすか否かを判定する。   In S340, the load tenant selection unit 151 compares the condition value included in the accumulation condition with the load amount acquired in S330, and determines whether the load amount satisfies the accumulation condition.

例えば、蓄積条件に含まれる条件種別が「レコード数」である場合、負荷テナント選択部151は以下のように判定する。
負荷量が条件値以上のレコード数である場合、負荷量は蓄積条件を満たす。
負荷量が条件値より少ないレコード数である場合、負荷量は蓄積条件を満たさない。
For example, when the condition type included in the accumulation condition is “number of records”, the load tenant selection unit 151 determines as follows.
When the load amount is the number of records equal to or greater than the condition value, the load amount satisfies the accumulation condition.
When the load amount is less than the condition value, the load amount does not satisfy the accumulation condition.

また、蓄積条件に含まれる条件種別が「増加数」である場合、負荷テナント選択部151は以下のように判定する。
負荷量が条件値以上の増加数である場合、負荷量は蓄積条件を満たす。
負荷量が条件値より少ない増加数である場合、負荷量は蓄積条件を満たさない。
Further, when the condition type included in the accumulation condition is “increase number”, the load tenant selection unit 151 determines as follows.
When the load amount is an increase number greater than or equal to the condition value, the load amount satisfies the accumulation condition.
When the load amount is an increase number smaller than the condition value, the load amount does not satisfy the accumulation condition.

負荷量が蓄積条件を満たす場合(YES)、処理はS350に進む。
負荷量が蓄積条件を満たさない場合(NO)、処理はS370に進む。
If the load amount satisfies the accumulation condition (YES), the process proceeds to S350.
If the load amount does not satisfy the accumulation condition (NO), the process proceeds to S370.

S350において、接続残数最小化部153は、テナント切換制御テーブル195(図6参照)に含まれるレコードのうち、S311で取得したテナントID(負荷テナントのテナントID)と処理識別子と同じテナントIDと処理識別子とが設定されているレコードを選択する。
そして、接続残数最小化部153は、選択したレコードに設定されている接続残数を最小化する(図14のS250と同様)。
S350の後、処理はS360に進む。
In S350, the remaining connection number minimizing unit 153 includes the tenant ID that is the same as the processing identifier and the tenant ID (the tenant ID of the load tenant) acquired in S311 among the records included in the tenant switching control table 195 (see FIG. 6). Select a record with a process identifier.
Then, the connection remaining number minimizing unit 153 minimizes the connection remaining number set in the selected record (similar to S250 in FIG. 14).
After S350, the process proceeds to S360.

S360において、波及テナント選択部154は波及範囲管理テーブル101に基づいて負荷テナントに関連する波及テナントのテナントIDと処理識別子とを選択し、接続残数最小化部153は波及テナントのテナントIDと処理識別子とに対応付けられた接続残数を最小化する。
波及範囲最小化処理(S360)の詳細について別途説明する。
S360の後、処理はS370に進む。
In S360, the transmission tenant selection unit 154 selects the tenant ID and processing identifier of the transmission tenant related to the load tenant based on the transmission range management table 101, and the connection remaining number minimization unit 153 performs the tenant ID and processing of the transmission tenant. Minimize the number of remaining connections associated with the identifier.
Details of the spread range minimizing process (S360) will be described separately.
After S360, the process proceeds to S370.

S370において、負荷テナント選択部151は、テナント管理テーブル192に含まれるレコードのうち、S310で選択していない未選択のレコードが有るか否かを判定する。
未選択のレコードが有る場合(YES)、処理はS310に戻る。
未選択のレコードが無い場合(NO)、テナント蓄積監視処理は終了する。
In S370, the load tenant selection unit 151 determines whether there is an unselected record that has not been selected in S310 among the records included in the tenant management table 192.
If there is an unselected record (YES), the process returns to S310.
When there is no unselected record (NO), the tenant accumulation monitoring process ends.

テナント蓄積監視部150は、テナント蓄積監視処理が終了してから所定の接続制限時間が経過したときに、S350またはS360で最小化した接続残数を回復させてもよい。例えば、テナント蓄積監視部150は、最小化した接続残数を接続残数の初期値に回復、または最小化したときに減らした数だけ増やした接続残数に回復する。
また、テナント蓄積監視部150は、定期的(接続制限時間が経過する毎)に、S340と同様に負荷量が蓄積条件を満たすか否かを判定してもよい。負荷量が蓄積条件を満たさないと判定した場合、テナント蓄積監視部150は、S350またはS360で最小化した接続残数を回復させる。
接続残数を最小化したレコード、最小化する前の接続残数、接続残数の初期値など、接続残数の回復に必要な情報は接続残数を最小化したときに記憶しておくものとする。
The tenant accumulation monitoring unit 150 may recover the number of remaining connections minimized in S350 or S360 when a predetermined connection time limit has elapsed after the tenant accumulation monitoring process is completed. For example, the tenant accumulation monitoring unit 150 recovers the minimized connection remaining number to the initial value of the connection remaining number, or increases the connection remaining number that is increased by the number reduced when it is minimized.
Further, the tenant accumulation monitoring unit 150 may determine whether or not the load amount satisfies the accumulation condition at regular intervals (every time when the connection limit time elapses) as in S340. When it is determined that the load amount does not satisfy the accumulation condition, the tenant accumulation monitoring unit 150 recovers the remaining connection number minimized in S350 or S360.
Information necessary for recovery of the remaining number of connections, such as the record that minimizes the remaining number of connections, the remaining number of connections before minimization, and the initial value of the remaining number of connections, is stored when the remaining number of connections is minimized And

図18は、実施の形態1における波及範囲最小化処理(S360)を示すフローチャートである。
実施の形態1における波及範囲最小化処理(S360)について、図18に基づいて説明する。
FIG. 18 is a flowchart showing the spread range minimizing process (S360) in the first embodiment.
The spread range minimizing process (S360) in the first embodiment will be described with reference to FIG.

S361aにおいて、波及テナント選択部154は、処理対応管理データ104に含まれる処理識別子のうち、S321で取得したデータ領域と同じデータ領域に対応付けられた処理識別子を取得する。   In S361a, the spreading tenant selection unit 154 acquires a process identifier associated with the same data area as the data area acquired in S321 among the process identifiers included in the process correspondence management data 104.

図19は、実施の形態1における処理対応管理データ104の一例を示す図である。
図19に示すように、処理対応管理データ104は、先頭行に記される処理識別子とfrom句に設定されるデータ領域とを含んだ1つ以上のSQL文を含んでいる。
処理対応管理データ104は、アプリケーション部110がデータ処理を実行する際に使用するデータであって、処理識別子とデータ領域とを対応付けたデータである。
FIG. 19 is a diagram illustrating an example of the processing correspondence management data 104 according to the first embodiment.
As shown in FIG. 19, the processing correspondence management data 104 includes one or more SQL statements including a processing identifier described in the first line and a data area set in the from phrase.
The processing correspondence management data 104 is data used when the application unit 110 executes data processing, and is data in which a processing identifier and a data area are associated with each other.

S361a(図18参照)の後、処理はS361bに進む。   After S361a (see FIG. 18), the process proceeds to S361b.

S361bにおいて、波及テナント選択部154は、波及範囲管理テーブル101(図9参照)に含まれるレコードのうち、S321で取得したデータ領域と同じデータ領域と、S361aで取得した処理識別子と同じ処理識別子とが設定されているレコードを選択する。
S361bの後、処理はS362に進む。
In S361b, the transmission tenant selection unit 154 includes the same data area as the data area acquired in S321 and the same processing identifier as the processing identifier acquired in S361a among the records included in the transmission range management table 101 (see FIG. 9). Select a record with.
After S361b, the process proceeds to S362.

S362において、波及テナント選択部154は、S362で選択したレコードに設定されている波及種別を参照する。
波及種別が「モデルタイプ」である場合、処理はS363に進む。
波及種別が「依存情報(1)」または「依存情報(2)」である場合、処理はS365に進む。
In S362, the transmission tenant selection unit 154 refers to the transmission type set in the record selected in S362.
If the propagation type is “model type”, the process proceeds to S363.
When the propagation type is “dependency information (1)” or “dependence information (2)”, the process proceeds to S365.

S363において、波及テナント選択部154は、モデル情報管理テーブル193(図4参照)に含まれるレコードのうち、S361bで選択したレコードに設定されている波及対象(例えば、表共有)と同じモデルタイプが設定されているレコードを選択する。
波及テナント選択部154は、選択したレコード毎にレコードに設定されているテナントIDを波及テナントのテナントIDとして取得する。
S363の後、処理はS364に進む。
In S363, the transmission tenant selection unit 154 has the same model type as the transmission target (for example, table sharing) set in the record selected in S361b among the records included in the model information management table 193 (see FIG. 4). Select a set record.
The spread tenant selection unit 154 acquires the tenant ID set in the record for each selected record as the tenant ID of the spread tenant.
After S363, the process proceeds to S364.

S364において、接続残数最小化部153は、S363で取得した波及テナントのテナントID毎に、テナント切換制御テーブル195(図6参照)に含まれるレコードのうち、波及テナントのテナントIDと同じテナントIDと、S361aで取得した処理識別子と同じ処理識別子とが設定されているレコードを選択する。
そして、接続残数最小化部153は、選択したレコード毎にレコードに設定されている接続残数を最小化する(図14のS250と同様)。
S364の後、波及範囲最小化処理(S360)は終了する。
In S364, the remaining connection number minimizing unit 153, for each tenant ID of the affected tenant acquired in S363, out of the records included in the tenant switching control table 195 (see FIG. 6), the same tenant ID as the tenant ID of the affected tenant. And a record in which the same processing identifier as the processing identifier acquired in S361a is set.
Then, the connection remaining number minimizing unit 153 minimizes the connection remaining number set in the record for each selected record (similar to S250 in FIG. 14).
After S364, the spread range minimization process (S360) ends.

S365において、波及テナント選択部154は、依存情報管理テーブル191(図2参照)に含まれるレコードのうち、S361bで選択したレコードに設定されている波及対象と同じ依存情報(1)または依存情報(2)が設定されているレコードを選択する。
波及テナント選択部154は、選択したレコード毎にレコードに設定されているテナントIDを波及テナントのテナントIDとして取得する。
S365の後、処理はS366に進む。
In S365, the transmission tenant selection unit 154 includes the same dependency information (1) or dependency information (1) as the transmission target set in the record selected in S361b among the records included in the dependency information management table 191 (see FIG. 2). 2) Select the record that is set.
The spread tenant selection unit 154 acquires the tenant ID set in the record for each selected record as the tenant ID of the spread tenant.
After S365, the process proceeds to S366.

S366において、接続残数最小化部153は、S365で取得した波及テナントのテナントID毎に、テナント切換制御テーブル195(図6参照)に含まれるレコードのうち、波及テナントのテナントIDと同じテナントIDと、S361aで取得した処理識別子と同じ処理識別子とが設定されているレコードを選択する。
そして、接続残数最小化部153は、選択したレコード毎にレコードに設定されている接続残数を最小化する(図14のS250と同様)。
S366の後、波及範囲最小化処理(S360)は終了する。
In S366, the remaining connection number minimizing unit 153, for each tenant ID of the affected tenant acquired in S365, out of the records included in the tenant switching control table 195 (see FIG. 6), the same tenant ID as the tenant ID of the affected tenant. And a record in which the same processing identifier as the processing identifier acquired in S361a is set.
Then, the connection remaining number minimizing unit 153 minimizes the connection remaining number set in the record for each selected record (similar to S250 in FIG. 14).
After S366, the spread range minimization process (S360) ends.

図20は、実施の形態1におけるデータアクセス制御装置100のハードウェア資源の一例を示す図である。
図20において、データアクセス制御装置100(コンピュータの一例)は、CPU901(Central Processing Unit)を備えている。CPU901は、バス902を介してROM903、RAM904、通信ボード905(通信装置)、ディスプレイ911(表示装置)、キーボード912、マウス913、ドライブ914、磁気ディスク装置920などのハードウェアデバイスと接続され、これらのハードウェアデバイスを制御する。ドライブ914は、FD(Flexible Disk)、CD(Compact Disc)、DVD(Digital Versatile Disc)などの記憶媒体を読み書きする装置である。
ROM903、RAM904、磁気ディスク装置920およびドライブ914は記憶装置の一例である。キーボード912、マウス913および通信ボード905は入力装置の一例である。ディスプレイ911および通信ボード905は出力装置の一例である。
FIG. 20 is a diagram illustrating an example of hardware resources of the data access control apparatus 100 according to the first embodiment.
20, the data access control device 100 (an example of a computer) includes a CPU 901 (Central Processing Unit). The CPU 901 is connected to hardware devices such as a ROM 903, a RAM 904, a communication board 905 (communication device), a display 911 (display device), a keyboard 912, a mouse 913, a drive 914, and a magnetic disk device 920 via a bus 902. Control hardware devices. The drive 914 is a device that reads and writes storage media such as an FD (Flexible Disk), a CD (Compact Disc), and a DVD (Digital Versatile Disc).
The ROM 903, the RAM 904, the magnetic disk device 920, and the drive 914 are examples of storage devices. A keyboard 912, a mouse 913, and a communication board 905 are examples of input devices. The display 911 and the communication board 905 are examples of output devices.

通信ボード905は、有線または無線で、LAN(Local Area Network)、インターネット、電話回線などの通信網に接続している。   The communication board 905 is wired or wirelessly connected to a communication network such as a LAN (Local Area Network), the Internet, or a telephone line.

磁気ディスク装置920には、OS921(オペレーティングシステム)、プログラム群922、ファイル群923が記憶されている。   The magnetic disk device 920 stores an OS 921 (operating system), a program group 922, and a file group 923.

プログラム群922には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラム(例えば、リソース使用制御プログラム)は、CPU901により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。   The program group 922 includes programs that execute the functions described as “units” in the embodiments. A program (for example, a resource use control program) is read and executed by the CPU 901. That is, the program causes the computer to function as “to part”, and causes the computer to execute the procedures and methods of “to part”.

ファイル群923には、実施の形態において説明する「〜部」で使用される各種データ(入力、出力、判定結果、計算結果、処理結果など)が含まれる。   The file group 923 includes various data (input, output, determination result, calculation result, processing result, etc.) used in “˜part” described in the embodiment.

実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
フローチャートなどに基づいて説明する実施の形態の処理はCPU901、記憶装置、入力装置、出力装置などのハードウェアを用いて実行される。
In the embodiment, arrows included in the configuration diagrams and flowcharts mainly indicate input and output of data and signals.
The processing of the embodiment described based on the flowchart and the like is executed using hardware such as the CPU 901, a storage device, an input device, and an output device.

実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。   In the embodiment, what is described as “to part” may be “to circuit”, “to apparatus”, and “to device”, and “to step”, “to procedure”, and “to processing”. May be. That is, what is described as “to part” may be implemented by any of firmware, software, hardware, or a combination thereof.

実施の形態1において、DBサーバ180のデータ領域はシステムリソース(コンピュータリソースともいう)の一例である。その他のシステムリソースとして、CPU、メモリ、入出力機器、通信機器またはネットワークなどが挙げられる。   In the first embodiment, the data area of the DB server 180 is an example of a system resource (also referred to as a computer resource). Other system resources include a CPU, a memory, an input / output device, a communication device, or a network.

実施の形態1は、例えば、以下のような効果を奏する。
データの管理方式(表共有、表分離、スキーマ分離、インスタンス分離など)を用いてシステムリソースを共有するマルチテナント管理技術において、利用者ごとにアプリケーションを利用する権利を制御する。
特定の企業(テナント)が短時間に不必要な対象の処理要求を発行してきた場合であっても、当該企業からの要求を最小限に縮小する。これにより、マルチテナントシステムのシステムリソースが枯渇し、他の企業へ割り当てるシステムリソースが不足することによって、システム全体の応答性能が劣化する事態を回避できる。
特定の企業からの処理要求が不必要に長時間の処理時間を要し、マルチテナントシステムのシステムリソースが枯渇し、他の企業へ割り当てるシステムリソースが不足することによって、システム全体の応答性能が劣化する事態を回避できる。
特定の企業が不必要に蓄積したデータが原因で不必要に長時間の処理時間を要し、マルチテナントシステムのシステムリソースが枯渇し、他の企業へ割り当てるシステムリソースが不足することによって、システム全体の応答性能が劣化する事態を回避ができる。
また、波及企業による高負荷な処理への処理要求を最小化することで、システム全体への影響範囲を最小限にとどめることができる。
Embodiment 1 has the following effects, for example.
In multi-tenant management technology that shares system resources using data management methods (table sharing, table separation, schema separation, instance separation, etc.), the right to use an application is controlled for each user.
Even when a specific company (tenant) issues an unnecessary processing request in a short time, the request from the company is reduced to the minimum. As a result, it is possible to avoid a situation in which the response performance of the entire system is deteriorated due to the depletion of the system resources of the multi-tenant system and the shortage of system resources allocated to other companies.
Processing requests from a specific company require an unnecessarily long processing time, system resources of the multi-tenant system are depleted, and system resources allocated to other companies are insufficient, resulting in degraded response performance of the entire system Can avoid the situation.
The entire system takes longer than necessary due to data accumulated unnecessarily by a specific company, the system resources of the multi-tenant system are depleted, and the system resources allocated to other companies are insufficient. The situation where the response performance of the system deteriorates can be avoided.
In addition, by minimizing processing requests for high-load processing by spreading companies, it is possible to minimize the range of influence on the entire system.

実施の形態1において、例えば、以下のようなリソース使用制御装置(100)について説明した。括弧内に対応する構成の符号または名称などを記す。
前記リソース使用制御装置は、許可ユーザ数記憶部(195)と、グループ属性値記憶部(191,192,193,103)と、リソース使用量取得部(142,152)と、負荷グループ選択部(141,151)と、負荷グループ属性値取得部(141,151)と、波及グループ選択部(144,154)と、波及グループ制御部(143,153)とを備える。
前記許可ユーザ数記憶部は、リソースを使用する複数のユーザ(テナントユーザ)が属する複数のユーザグループ(テナント)のユーザグループ毎に、ユーザグループを識別するグループ識別子(テナントID)と、ユーザグループに属するユーザのうち前記リソースを同時に使用することが許可されるユーザの数を示す許可ユーザ数(コネクションの接続数)と、を対応付けて記憶する。
前記グループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子と、ユーザグループが有する属性を示すグループ属性値(処理識別子、モデルタイプ、依存情報、データ領域)と、を対応付けて記憶する。
前記リソース使用量取得部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループによる前記リソースの使用量(負荷量)を取得する。
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソース使用量取得部によって取得された前記リソースの使用量が使用量に関する制限条件(挙動条件、蓄積条件)を満たしているユーザグループのグループ識別子を負荷グループ識別子として選択する。
前記負荷グループ属性値取得部は、前記グループ属性値記憶部に記憶されているグループ属性値のうち、前記負荷グループ選択部によって選択された前記負荷グループ識別子と同じグループ識別子に対応付けられたグループ属性値を負荷グループ属性値として取得する。
前記波及グループ選択部は、前記グループ属性値記憶部に記憶されたグループ識別子のうち、前記負荷グループ属性値取得部によって取得された前記負荷グループ属性値と同じグループ属性値に対応付けられたグループ識別子であって前記負荷グループ識別子と異なるグループ識別子を波及グループ識別子として選択する。
前記波及グループ制御部は、前記許可ユーザ数記憶部に記憶されている許可ユーザ数のうち、前記波及グループ選択部によって選択された前記波及グループ識別子と同じグループ識別子に対応付けられた許可ユーザ数を減らす。
In the first embodiment, for example, the following resource usage control device (100) has been described. The code | symbol or name of a corresponding structure is described in a parenthesis.
The resource usage control device includes an authorized user number storage unit (195), a group attribute value storage unit (191, 192, 193, 103), a resource usage acquisition unit (142, 152), and a load group selection unit ( 141, 151), a load group attribute value acquisition unit (141, 151), a propagation group selection unit (144, 154), and a propagation group control unit (143, 153).
The permitted user number storage unit includes a group identifier (tenant ID) for identifying a user group for each user group of a plurality of user groups (tenant) to which a plurality of users (tenant users) using the resource belong, and a user group The number of allowed users (number of connections) indicating the number of users who are allowed to use the resource at the same time among the users belonging to the user is stored in association with each other.
The group attribute value storage unit includes, for each user group of the plurality of user groups, a group identifier of the user group and a group attribute value (processing identifier, model type, dependency information, data area) indicating an attribute of the user group, and Are stored in association with each other.
The resource usage acquisition unit acquires the usage (load) of the resource by the user group for each user group of the plurality of user groups.
The load group selection unit is a user group whose usage amount acquired by the resource usage acquisition unit satisfies a restriction condition (behavioral condition, accumulation condition) regarding the usage amount among the plurality of user groups. Select the group identifier as the load group identifier.
The load group attribute value acquisition unit is a group attribute associated with the same group identifier as the load group identifier selected by the load group selection unit among the group attribute values stored in the group attribute value storage unit Get the value as a load group attribute value.
The spreading group selection unit is a group identifier associated with the same group attribute value as the load group attribute value acquired by the load group attribute value acquisition unit among the group identifiers stored in the group attribute value storage unit Then, a group identifier different from the load group identifier is selected as the spreading group identifier.
The spreading group control unit determines the number of allowed users associated with the same group identifier as the spreading group identifier selected by the spreading group selection unit among the number of permitted users stored in the permitted user number storage unit. cut back.

前記リソース使用制御装置は、前記許可ユーザ数記憶部に記憶されている許可ユーザ数のうち、前記負荷グループ識別子と同じグループ識別子に対応付けられた許可ユーザ数を減らす負荷グループ制御部(143,153)を備える。   The resource usage control device is configured to reduce a number of permitted users associated with the same group identifier as the load group identifier among the number of permitted users stored in the number of permitted users storage unit (143, 153). ).

前記リソース使用制御装置は、使用要求受信部(110)と、使用許可判定部(130)とを備える。
前記使用要求受信部は、前記複数のユーザのうち前記リソースの使用を要求する要求ユーザが使用するユーザ端末(108)から、前記要求ユーザが属するユーザグループを識別する要求グループ識別子を含んだ使用要求(処理要求)を受信する。
前記使用許可判定部は、前記ユーザ許可数記憶部に記憶されるユーザ許可数のうち、前記使用要求受信部によって受信された前記使用要求に含まれる要求グループ識別子と同じグループ識別子に対応付けられたユーザ許可数に基づいて、前記要求ユーザによる前記リソースの使用を許可するか否かを判定する。
The resource usage control device includes a usage request receiving unit (110) and a usage permission determining unit (130).
The use request receiving unit includes a use request including a request group identifier for identifying a user group to which the requesting user belongs from a user terminal (108) used by a requesting user who requests use of the resource among the plurality of users. (Processing request) is received.
The use permission determining unit is associated with the same group identifier as the request group identifier included in the use request received by the use request receiving unit among the user permission numbers stored in the user permission number storage unit. It is determined whether to permit the use of the resource by the requesting user based on the number of user permissions.

前記リソース使用制御装置は、前記複数のユーザグループのユーザグループ毎に、ユーザグループに属するユーザが前記リソースを使用した複数の使用時刻(貸出時刻、返却時刻)を記憶する履歴情報記憶部(196)を備える。
前記リソース使用量取得部は、前記履歴情報記憶部に記憶された前記複数の使用時刻に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループの前記リソースの使用量(処理間隔、処理時間)を算出する。
The resource usage control device stores, for each user group of the plurality of user groups, a history information storage unit (196) that stores a plurality of use times (lending time, return time) when a user belonging to the user group used the resource. Is provided.
The resource usage acquisition unit is configured to use the resource usage (processing interval, processing) of the user group for each user group of the plurality of user groups based on the plurality of usage times stored in the history information storage unit. Time).

前記リソース使用量取得部は、前記履歴情報記憶部に記憶された前記複数の使用時刻に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループが前記リソースを使用した時間間隔(処理間隔)を前記リソースの使用量として算出する。
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件である時間間隔より短い時間間隔であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する。
The resource usage acquisition unit is configured to determine, for each user group of the plurality of user groups, a time interval (processing interval) at which the user group uses the resource based on the plurality of usage times stored in the history information storage unit. ) As the usage amount of the resource.
The load group selection unit selects, as the load group identifier, a group identifier of a user group having a time interval shorter than a time interval that is the restriction condition among the plurality of user groups.

前記リソース使用量取得部は、前記履歴情報記憶部に記憶された前記複数の使用時刻に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループが前記リソースを使用した使用時間(処理時間)を前記リソースの使用量として算出する。
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件である使用時間より長い使用時間であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する。
The resource usage amount acquiring unit is configured to use a usage time (processing time) when a user group uses the resource for each user group of the plurality of user groups based on the plurality of usage times stored in the history information storage unit. ) As the usage amount of the resource.
The load group selection unit selects, as the load group identifier, a group identifier of a user group whose usage amount of the resource is longer than a usage time that is the restriction condition among the plurality of user groups.

前記リソース使用制御装置は、前記複数のユーザグループのユーザグループ毎に、ユーザグループ用のデータ量(レコード数)を記憶するデータ量記憶部(197)を備える。
前記リソース使用量取得部は、前記データ量記憶部に記憶されたデータ量に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループの前記リソースの使用量(データ量、増加量)を算出する。
The resource usage control device includes a data amount storage unit (197) that stores a data amount (number of records) for a user group for each user group of the plurality of user groups.
The resource usage acquisition unit calculates the usage (data amount, increase) of the resource of the user group for each user group of the plurality of user groups based on the data amount stored in the data amount storage unit. calculate.

前記リソース使用量取得部は、前記複数のユーザグループのユーザグループ毎に、前記データ量記憶部に記憶されたデータ量のうち、ユーザグループのデータ量を前記リソースの使用量として取得する。
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件であるデータ量より多いデータ量であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する。
The resource usage acquisition unit acquires, for each user group of the plurality of user groups, the data amount of the user group among the data amounts stored in the data amount storage unit as the usage amount of the resource.
The load group selection unit selects, as the load group identifier, a group identifier of a user group having a data amount that is larger than a data amount that is the restriction condition among the plurality of user groups.

前記データ量記憶部は、ユーザグループ毎の時刻別のデータ量を記憶する。
前記リソース使用量取得部は、前記データ量記憶部に記憶されたユーザグループ毎の時刻別のデータ量に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループ用のデータの増加量を前記リソースの使用量として算出する。
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件である増加量より多い増加量であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する。
The data amount storage unit stores a data amount according to time for each user group.
The resource usage amount acquiring unit calculates an increase amount of data for a user group for each user group of the plurality of user groups based on a data amount for each user group stored in the data amount storage unit. Calculated as the resource usage.
The load group selection unit selects, as the load group identifier, a group identifier of a user group in which the usage amount of the resource is an increase amount larger than the increase amount that is the restriction condition among the plurality of user groups.

前記リソース使用制御装置は、前記グループ属性値記憶部として、第一のグループ属性値記憶部(192)と第二のグループ属性値記憶部(193)とを備える。
前記第一のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループ用のデータ処理を識別する処理識別子を前記グループ属性値として記憶する。
前記第二のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループが使用する前記リソースの使用種別(モデルタイプ)を前記グループ属性値として記憶する。
前記リソース使用制御装置は、複数の処理識別子に含まれる処理識別子と複数の使用種別(波及種別)に含まれる使用種別とを対応付けて記憶する波及範囲記憶部(101)を備える。
前記負荷グループ属性値取得部は、前記第一のグループ属性値記憶部に記憶されている処理識別子のうち、前記負荷グループ識別子と同じグループ識別子に対応付けられた処理識別子を前記負荷グループ属性値として取得する。
前記波及グループ選択部は、前記波及範囲記憶部に記憶されている使用種別のうち前記負荷グループ属性値と同じ処理識別子に対応付けられた使用種別を負荷使用種別として取得する。
前記波及グループ選択部は、前記第二のグループ属性値記憶部に記憶されているグループ識別子のうち前記負荷使用種別と同じ使用種別に対応付けられたグループ識別子を前記波及グループ識別子として選択する。
The resource usage control device includes a first group attribute value storage unit (192) and a second group attribute value storage unit (193) as the group attribute value storage unit.
The first group attribute value storage unit stores, as the group attribute value, a process identifier for identifying data processing for a user group in association with a group identifier of the user group for each user group of the plurality of user groups. To do.
The second group attribute value storage unit associates, for each user group of the plurality of user groups, a usage identifier (model type) of the resource used by the user group in association with a group identifier of the user group. Store as a value.
The resource usage control device includes a propagation range storage unit (101) that stores processing identifiers included in a plurality of processing identifiers and usage types included in a plurality of usage types (spreading types) in association with each other.
The load group attribute value acquisition unit uses a process identifier associated with the same group identifier as the load group identifier among the process identifiers stored in the first group attribute value storage unit as the load group attribute value. get.
The propagation group selection unit acquires, as a load usage type, a usage type associated with the same processing identifier as the load group attribute value among the usage types stored in the transmission range storage unit.
The propagation group selection unit selects, as the propagation group identifier, a group identifier associated with the same usage type as the load usage type among the group identifiers stored in the second group attribute value storage unit.

前記リソース使用制御装置は、前記グループ属性値記憶部として、第一のグループ属性値記憶部(103)と第二のグループ属性値記憶部(191)とを備える。
前記第一のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループが使用するデータ領域を識別するデータ領域名を前記グループ属性値として記憶する。
前記第二のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループが使用する前記リソースの使用種別(依存情報)を前記グループ属性値として記憶する。
前記リソース使用制御装置は、波及範囲記憶部(101)と、処理対応記憶部(104)とを備える。
前記波及範囲記憶部は、複数の処理識別子に含まれる処理識別子と複数のデータ領域名に含まれるデータ領域名と複数の使用種別(波及種別)に含まれる使用種別とを対応付けて記憶する。
前記処理対応記憶部は、複数の処理識別子に含まれる処理識別子と複数のデータ領域名に含まれるデータ領域名とを対応付けて記憶する。
前記負荷グループ属性値取得部は、前記第一のグループ属性値記憶部に記憶されているデータ領域名のうち、前記負荷グループ識別子と同じグループ識別子に対応付けられたデータ領域名を前記負荷グループ属性値として取得する。
前記波及グループ選択部は、前記処理対応記憶部に記憶されている処理識別子のうち、前記負荷グループ属性値と同じデータ領域名に対応付けられた処理識別子を負荷処理識別子として取得する。
前記波及グループ選択部は、前記波及範囲記憶部に記憶されている使用種別のうち、前記負荷処理識別子と同じ処理識別子と、前記負荷グループ属性値と同じデータ領域名と、に対応付けられた使用種別を負荷使用種別として取得する。
前記波及グループ選択部は、前記第二のグループ属性値記憶部に記憶されているグループ識別子のうち、前記負荷使用種別と同じ使用種別に対応付けられたグループ識別子を前記波及グループ識別子として選択する。
The resource usage control device includes a first group attribute value storage unit (103) and a second group attribute value storage unit (191) as the group attribute value storage unit.
The first group attribute value storage unit associates, for each user group of the plurality of user groups, a data area name that identifies a data area used by the user group in association with a group identifier of the user group. Remember as.
The second group attribute value storage unit associates, for each user group of the plurality of user groups, a usage identifier (dependency information) of the resource used by the user group in association with a group identifier of the user group. Store as a value.
The resource usage control device includes a spread range storage unit (101) and a processing correspondence storage unit (104).
The propagation range storage unit stores a processing identifier included in a plurality of processing identifiers, a data region name included in a plurality of data region names, and a usage type included in a plurality of usage types (spreading types) in association with each other.
The process correspondence storage unit associates and stores a process identifier included in a plurality of process identifiers and a data area name included in a plurality of data area names.
The load group attribute value acquisition unit selects a data region name associated with the same group identifier as the load group identifier among the data region names stored in the first group attribute value storage unit. Get as a value.
The propagation group selection unit acquires, as a load process identifier, a process identifier associated with the same data area name as the load group attribute value among the process identifiers stored in the process correspondence storage unit.
The propagation group selection unit is a usage associated with the same processing identifier as the load processing identifier and the same data area name as the load group attribute value among the usage types stored in the propagation range storage unit. Acquires the type as the load usage type.
The propagation group selection unit selects, as the propagation group identifier, a group identifier associated with the same usage type as the load usage type among the group identifiers stored in the second group attribute value storage unit.

実施の形態2.
マルチテナントシステムの構成例について説明する。
Embodiment 2. FIG.
A configuration example of the multi-tenant system will be described.

図21は、実施の形態2におけるデータアクセス制御装置100の構成例を示す図である。
図21に示すように、データアクセス制御装置100は、複数のアプリケーション部110A・110Bを備えてもよい。
FIG. 21 is a diagram illustrating a configuration example of the data access control apparatus 100 according to the second embodiment.
As shown in FIG. 21, the data access control device 100 may include a plurality of application units 110A and 110B.

図22は、実施の形態2におけるマルチテナントシステム107の構成例(1)を示す図である。
図22に示すように、マルチテナントシステム107は、アプリケーション部110として機能するアプリケーション装置106を備えてもよい。
アプリケーション装置106は、データアクセス制御装置100の代わりにアプリケーション部110を備える。
FIG. 22 is a diagram illustrating a configuration example (1) of the multi-tenant system 107 according to the second embodiment.
As illustrated in FIG. 22, the multi-tenant system 107 may include an application device 106 that functions as the application unit 110.
The application device 106 includes an application unit 110 instead of the data access control device 100.

図23は、実施の形態2におけるマルチテナントシステム107の構成例(2)を示す図である。
図23に示すように、マルチテナントシステム107は、アプリケーション部110A・110Bとして機能する複数のアプリケーション装置106A・106Bを備えてもよい。
各アプリケーション装置106A・106Bは、データアクセス制御装置100の代わりにアプリケーション部110A・110Bを備える。
FIG. 23 is a diagram illustrating a configuration example (2) of the multi-tenant system 107 according to the second embodiment.
As shown in FIG. 23, the multi-tenant system 107 may include a plurality of application devices 106A and 106B that function as application units 110A and 110B.
Each of the application devices 106A and 106B includes application units 110A and 110B instead of the data access control device 100.

図21または図23に示すように、複数のアプリケーション部110A・110Bを設ける場合、アプリケーション部毎に異なる処理識別子を用いることにより、アプリケーション部110A・110Bを区別することができる。
例えば、アプリケーション部110Aは「j0001」から「j0100」までの処理識別子を用い、アプリケーション部110Bは「j0101」から「j0200」までの処理識別子を用いる。
As shown in FIG. 21 or FIG. 23, when a plurality of application units 110A and 110B are provided, the application units 110A and 110B can be distinguished by using different processing identifiers for each application unit.
For example, the application unit 110A uses process identifiers “j0001” to “j0100”, and the application unit 110B uses process identifiers “j0101” to “j0200”.

100 データアクセス制御装置、101 波及範囲管理テーブル、102 挙動条件管理テーブル、103 蓄積条件管理テーブル、104 処理対応管理データ、106 アプリケーション装置、107 マルチテナントシステム、108 テナント端末、109 ネットワーク、110 アプリケーション部、120 データアクセス制御部、130 コネクション制御部、140 テナント挙動監視部、141 負荷テナント選択部、142 負荷量取得部、143 接続残数最小化部、144 波及テナント選択部、150 テナント蓄積監視部、151 負荷テナント選択部、152 負荷量取得部、153 接続残数最小化部、154 波及テナント選択部、160 蓄積データ監視部、180 DBサーバ、181 テナントデータ、190 制御装置記憶部、191 依存情報管理テーブル、192 テナント管理テーブル、193 モデル情報管理テーブル、194 コネクション管理テーブル、195 テナント切換制御テーブル、196 利用履歴管理テーブル、197 蓄積データ管理テーブル、901 CPU、902 バス、903 ROM、904 RAM、905 通信ボード、911 ディスプレイ、912 キーボード、913 マウス、914 ドライブ、920 磁気ディスク装置、921 OS、922 プログラム群、923 ファイル群。   DESCRIPTION OF SYMBOLS 100 Data access control apparatus, 101 Ripple range management table, 102 Behavior condition management table, 103 Accumulation condition management table, 104 Process management management data, 106 Application apparatus, 107 Multi-tenant system, 108 Tenant terminal, 109 Network, 110 Application part, 120 Data access control unit, 130 Connection control unit, 140 Tenant behavior monitoring unit, 141 Load tenant selection unit, 142 Load amount acquisition unit, 143 Connection remaining number minimization unit, 144 Propagation tenant selection unit, 150 Tenant accumulation monitoring unit, 151 Load tenant selection unit, 152 Load amount acquisition unit, 153 Connection remaining number minimization unit, 154 Spread tenant selection unit, 160 Accumulated data monitoring unit, 180 DB server, 181 Tenant data, 190 Control device storage unit, 191 Dependent information management table, 192 Tenant management table, 193 Model information management table, 194 Connection management table, 195 Tenant switching control table, 196 Usage history management table, 197 Accumulated data management table, 901 CPU, 902 bus , 903 ROM, 904 RAM, 905 communication board, 911 display, 912 keyboard, 913 mouse, 914 drive, 920 magnetic disk device, 921 OS, 922 program group, 923 file group.

Claims (13)

リソースを使用する複数のユーザが属する複数のユーザグループのユーザグループ毎に、ユーザグループを識別するグループ識別子と、ユーザグループに属するユーザのうち前記リソースを使用することが許可されるユーザの数を示す許可ユーザ数と、を対応付けて記憶する許可ユーザ数記憶部と、
前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子と、ユーザグループが有する属性を示すグループ属性値と、を対応付けて記憶するグループ属性値記憶部と、
前記複数のユーザグループのユーザグループ毎に、ユーザグループによる前記リソースの使用量を取得するリソース使用量取得部と、
前記複数のユーザグループのうち、前記リソース使用量取得部によって取得された前記リソースの使用量が使用量に関する制限条件を満たしているユーザグループのグループ識別子を負荷グループ識別子として選択する負荷グループ選択部と、
前記グループ属性値記憶部に記憶されているグループ属性値のうち、前記負荷グループ選択部によって選択された前記負荷グループ識別子と同じグループ識別子に対応付けられたグループ属性値を負荷グループ属性値として取得する負荷グループ属性値取得部と、
前記グループ属性値記憶部に記憶されたグループ識別子のうち、前記負荷グループ属性値取得部によって取得された前記負荷グループ属性値と同じグループ属性値に対応付けられたグループ識別子であって前記負荷グループ識別子と異なるグループ識別子を波及グループ識別子として選択する波及グループ選択部と、
前記許可ユーザ数記憶部に記憶されている許可ユーザ数のうち、前記波及グループ選択部によって選択された前記波及グループ識別子と同じグループ識別子に対応付けられた許可ユーザ数を減らす波及グループ制御部と
を備えることを特徴とするリソース使用制御装置。
For each user group of a plurality of user groups to which a plurality of users using the resource belong, a group identifier for identifying the user group and the number of users allowed to use the resource among the users belonging to the user group are indicated. An authorized user number storage unit for storing the number of authorized users in association with each other;
A group attribute value storage unit that stores a group identifier of a user group and a group attribute value indicating an attribute of the user group in association with each other for each user group of the plurality of user groups;
For each user group of the plurality of user groups, a resource usage acquisition unit that acquires usage of the resource by a user group;
A load group selection unit that selects, as a load group identifier, a group identifier of a user group among the plurality of user groups, in which the resource usage acquired by the resource usage acquisition unit satisfies a restriction condition regarding the usage; ,
Among group attribute values stored in the group attribute value storage unit, a group attribute value associated with the same group identifier as the load group identifier selected by the load group selection unit is acquired as a load group attribute value. A load group attribute value acquisition unit;
Among the group identifiers stored in the group attribute value storage unit, a group identifier associated with the same group attribute value as the load group attribute value acquired by the load group attribute value acquisition unit, the load group identifier A propagation group selection unit that selects a group identifier different from the propagation group identifier;
A spreading group control unit that reduces the number of allowed users associated with the same group identifier as the spreading group identifier selected by the spreading group selection unit out of the number of permitted users stored in the permitted user number storage unit; A resource use control device comprising:
前記許可ユーザ数記憶部に記憶されている許可ユーザ数のうち、前記負荷グループ識別子と同じグループ識別子に対応付けられた許可ユーザ数を減らす負荷グループ制御部
を備えることを特徴とする請求項1記載のリソース使用制御装置。
The load group control part which reduces the number of authorized users matched with the same group identifier as the said load group identifier among the number of authorized users memorize | stored in the said authorized user number memory | storage part is provided. Resource usage controller.
前記複数のユーザのうち前記リソースの使用を要求する要求ユーザが使用するユーザ端末から、前記要求ユーザが属するユーザグループを識別する要求グループ識別子を含んだ使用要求を受信する使用要求受信部と、
前記ユーザ許可数記憶部に記憶されるユーザ許可数のうち、前記使用要求受信部によって受信された前記使用要求に含まれる要求グループ識別子と同じグループ識別子に対応付けられたユーザ許可数に基づいて、前記要求ユーザによる前記リソースの使用を許可するか否かを判定する使用許可判定部と
を備えることを特徴とする請求項1または請求項2記載のリソース使用制御装置。
A use request receiving unit that receives a use request including a request group identifier that identifies a user group to which the requesting user belongs, from a user terminal used by a requesting user that requests use of the resource among the plurality of users;
Based on the user permission number associated with the same group identifier as the request group identifier included in the use request received by the use request receiving unit among the user permission number stored in the user permission number storage unit, The resource usage control apparatus according to claim 1, further comprising: a use permission determination unit that determines whether to permit use of the resource by the requesting user.
前記リソース使用制御装置は、前記複数のユーザグループのユーザグループ毎に、ユーザグループに属するユーザが前記リソースを使用した複数の使用時刻を記憶する履歴情報記憶部を備え、
前記リソース使用量取得部は、前記履歴情報記憶部に記憶された前記複数の使用時刻に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループの前記リソースの使用量を算出する
ことを特徴とする請求項1から請求項3のいずれかに記載のリソース使用制御装置。
The resource usage control device includes a history information storage unit that stores, for each user group of the plurality of user groups, a plurality of use times when a user belonging to the user group uses the resource,
The resource usage acquisition unit calculates the resource usage of the user group for each user group of the plurality of user groups based on the plurality of usage times stored in the history information storage unit. 4. The resource use control device according to claim 1, wherein the resource use control device is characterized in that:
前記リソース使用量取得部は、前記履歴情報記憶部に記憶された前記複数の使用時刻に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループが前記リソースを使用した時間間隔を前記リソースの使用量として算出し、
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件である時間間隔より短い時間間隔であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する
ことを特徴とする請求項4記載のリソース使用制御装置。
The resource usage acquisition unit sets a time interval at which a user group uses the resource for each user group of the plurality of user groups based on the plurality of usage times stored in the history information storage unit. As usage of
The load group selection unit selects, as the load group identifier, a group identifier of a user group having a time interval shorter than a time interval that is the restriction condition among the plurality of user groups. The resource use control device according to claim 4.
前記リソース使用量取得部は、前記履歴情報記憶部に記憶された前記複数の使用時刻に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループが前記リソースを使用した使用時間を前記リソースの使用量として算出し、
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件である使用時間より長い使用時間であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する
ことを特徴とする請求項4記載のリソース使用制御装置。
The resource usage acquisition unit is configured to calculate, for each user group of the plurality of user groups, a usage time during which the user group used the resource based on the plurality of usage times stored in the history information storage unit. As usage of
The load group selection unit selects, as the load group identifier, a group identifier of a user group whose usage amount of the resource is longer than a usage time that is the restriction condition among the plurality of user groups. The resource use control device according to claim 4.
前記リソース使用制御装置は、前記複数のユーザグループのユーザグループ毎に、ユーザグループ用のデータ量を記憶するデータ量記憶部を備え、
前記リソース使用量取得部は、前記データ量記憶部に記憶されたデータ量に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループの前記リソースの使用量を算出する
ことを特徴とする請求項1から請求項3のいずれかに記載のリソース使用制御装置。
The resource usage control device includes a data amount storage unit that stores a data amount for a user group for each user group of the plurality of user groups,
The resource usage acquisition unit calculates the resource usage of the user group for each user group of the plurality of user groups based on the data amount stored in the data amount storage unit. The resource use control apparatus according to any one of claims 1 to 3.
前記リソース使用量取得部は、前記複数のユーザグループのユーザグループ毎に、前記データ量記憶部に記憶されたデータ量のうち、ユーザグループのデータ量を前記リソースの使用量として取得し、
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件であるデータ量より多いデータ量であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する
ことを特徴とする請求項7記載のリソース使用制御装置。
The resource usage amount acquiring unit acquires, for each user group of the plurality of user groups, a data amount of the user group out of the data amount stored in the data amount storage unit as a usage amount of the resource,
The load group selection unit selects, as the load group identifier, a group identifier of a user group having a data amount that is larger than a data amount that is the restriction condition among the plurality of user groups. The resource use control device according to claim 7.
前記データ量記憶部は、ユーザグループ毎の時刻別のデータ量を記憶し、
前記リソース使用量取得部は、前記データ量記憶部に記憶されたユーザグループ毎の時刻別のデータ量に基づいて、前記複数のユーザグループのユーザグループ毎に、ユーザグループ用のデータの増加量を前記リソースの使用量として算出し、
前記負荷グループ選択部は、前記複数のユーザグループのうち、前記リソースの使用量が前記制限条件である増加量より多い増加量であるユーザグループのグループ識別子を前記負荷グループ識別子として選択する
ことを特徴とする請求項7記載のリソース使用制御装置。
The data amount storage unit stores a data amount by time for each user group,
The resource usage amount acquiring unit calculates an increase amount of data for a user group for each user group of the plurality of user groups based on a data amount for each user group stored in the data amount storage unit. Calculate as the resource usage,
The load group selection unit selects, as the load group identifier, a group identifier of a user group whose usage amount of the resource is an increase amount larger than the increase amount that is the restriction condition among the plurality of user groups. The resource use control device according to claim 7.
前記リソース使用制御装置は、前記グループ属性値記憶部として、第一のグループ属性値記憶部と第二のグループ属性値記憶部とを備え、
前記第一のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループ用のデータ処理を識別する処理識別子を前記グループ属性値として記憶し、
前記第二のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループが使用する前記リソースの使用種別を前記グループ属性値として記憶し、
前記リソース使用制御装置は、複数の処理識別子に含まれる処理識別子と複数の使用種別に含まれる使用種別とを対応付けて記憶する波及範囲記憶部を備え、
前記負荷グループ属性値取得部は、前記第一のグループ属性値記憶部に記憶されている処理識別子のうち、前記負荷グループ識別子と同じグループ識別子に対応付けられた処理識別子を前記負荷グループ属性値として取得し、
前記波及グループ選択部は、前記波及範囲記憶部に記憶されている使用種別のうち前記負荷グループ属性値と同じ処理識別子に対応付けられた使用種別を負荷使用種別として取得し、
前記波及グループ選択部は、前記第二のグループ属性値記憶部に記憶されているグループ識別子のうち前記負荷使用種別と同じ使用種別に対応付けられたグループ識別子を前記波及グループ識別子として選択する
ことを特徴とする請求項1から請求項9のいずれかに記載のリソース使用制御装置。
The resource use control device includes a first group attribute value storage unit and a second group attribute value storage unit as the group attribute value storage unit,
The first group attribute value storage unit stores, as the group attribute value, a process identifier for identifying data processing for a user group in association with a group identifier of the user group for each user group of the plurality of user groups. And
The second group attribute value storage unit stores, as the group attribute value, the use type of the resource used by the user group in association with the group identifier of the user group for each user group of the plurality of user groups. ,
The resource usage control device includes a spread range storage unit that stores a processing identifier included in a plurality of processing identifiers and a usage type included in the plurality of usage types in association with each other,
The load group attribute value acquisition unit uses a process identifier associated with the same group identifier as the load group identifier among the process identifiers stored in the first group attribute value storage unit as the load group attribute value. Acquired,
The propagation group selection unit acquires, as a load usage type, a usage type associated with the same processing identifier as the load group attribute value among the usage types stored in the propagation range storage unit,
The propagation group selection unit selects, as the propagation group identifier, a group identifier associated with the same usage type as the load usage type among group identifiers stored in the second group attribute value storage unit. 10. The resource usage control device according to claim 1, wherein
前記リソース使用制御装置は、前記グループ属性値記憶部として、第一のグループ属性値記憶部と第二のグループ属性値記憶部とを備え、
前記第一のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループが使用するデータ領域を識別するデータ領域名を前記グループ属性値として記憶し、
前記第二のグループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子に対応付けて、ユーザグループが使用する前記リソースの使用種別を前記グループ属性値として記憶し、
前記リソース使用制御装置は、波及範囲記憶部と、処理対応記憶部とを備え、
前記波及範囲記憶部は、複数の処理識別子に含まれる処理識別子と複数のデータ領域名に含まれるデータ領域名と複数の使用種別に含まれる使用種別とを対応付けて記憶し、
前記処理対応記憶部は、複数の処理識別子に含まれる処理識別子と複数のデータ領域名に含まれるデータ領域名とを対応付けて記憶し、
前記負荷グループ属性値取得部は、前記第一のグループ属性値記憶部に記憶されているデータ領域名のうち、前記負荷グループ識別子と同じグループ識別子に対応付けられたデータ領域名を前記負荷グループ属性値として取得し、
前記波及グループ選択部は、前記処理対応記憶部に記憶されている処理識別子のうち、前記負荷グループ属性値と同じデータ領域名に対応付けられた処理識別子を負荷処理識別子として取得し、
前記波及グループ選択部は、前記波及範囲記憶部に記憶されている使用種別のうち、前記負荷処理識別子と同じ処理識別子と、前記負荷グループ属性値と同じデータ領域名と、に対応付けられた使用種別を負荷使用種別として取得し、
前記波及グループ選択部は、前記第二のグループ属性値記憶部に記憶されているグループ識別子のうち、前記負荷使用種別と同じ使用種別に対応付けられたグループ識別子を前記波及グループ識別子として選択する
ことを特徴とする請求項1から請求項9のいずれかに記載のリソース使用制御装置。
The resource use control device includes a first group attribute value storage unit and a second group attribute value storage unit as the group attribute value storage unit,
The first group attribute value storage unit associates, for each user group of the plurality of user groups, a data area name that identifies a data area used by the user group in association with a group identifier of the user group. Remember as
The second group attribute value storage unit stores, as the group attribute value, the use type of the resource used by the user group in association with the group identifier of the user group for each user group of the plurality of user groups. ,
The resource usage control device includes a spread range storage unit and a processing correspondence storage unit,
The spread range storage unit associates and stores process identifiers included in a plurality of process identifiers, data area names included in a plurality of data area names, and use types included in a plurality of use types,
The processing correspondence storage unit stores a processing identifier included in a plurality of processing identifiers and a data region name included in a plurality of data region names in association with each other,
The load group attribute value acquisition unit selects a data region name associated with the same group identifier as the load group identifier among the data region names stored in the first group attribute value storage unit. As a value,
The propagation group selection unit acquires, as a load process identifier, a process identifier associated with the same data area name as the load group attribute value among the process identifiers stored in the process correspondence storage unit,
The propagation group selection unit is a usage associated with the same processing identifier as the load processing identifier and the same data area name as the load group attribute value among the usage types stored in the propagation range storage unit. Get the type as a load usage type,
The propagation group selection unit selects, as the propagation group identifier, a group identifier associated with the same usage type as the load usage type among the group identifiers stored in the second group attribute value storage unit. 10. The resource usage control device according to claim 1, wherein
許可ユーザ数記憶部と、グループ属性値記憶部と、リソース使用量取得部と、負荷グループ選択部と、負荷グループ属性値取得部と、波及グループ選択部と、波及グループ制御部とを備えるリソース使用制御装置を用いたリソース使用制御方法であって、
前記許可ユーザ数記憶部は、リソースを使用する複数のユーザが属する複数のユーザグループのユーザグループ毎に、ユーザグループを識別するグループ識別子と、ユーザグループに属するユーザのうち前記リソースを使用することが許可されるユーザの数を示す許可ユーザ数と、を対応付けて記憶する記憶部であり、
前記グループ属性値記憶部は、前記複数のユーザグループのユーザグループ毎に、ユーザグループのグループ識別子と、ユーザグループが有する属性を示すグループ属性値と、を対応付けて記憶する記憶部であり、
前記リソース使用量取得部が、前記複数のユーザグループのユーザグループ毎に、ユーザグループによる前記リソースの使用量を取得し、
前記負荷グループ選択部が、前記複数のユーザグループのうち、前記リソース使用量取得部によって取得された前記リソースの使用量が使用量に関する制限条件を満たしているユーザグループのグループ識別子を負荷グループ識別子として選択し、
前記負荷グループ属性値取得部が、前記グループ属性値記憶部に記憶されているグループ属性値のうち、前記負荷グループ選択部によって選択された前記負荷グループ識別子と同じグループ識別子に対応付けられたグループ属性値を負荷グループ属性値として取得し、
前記波及グループ選択部が、前記グループ属性値記憶部に記憶されたグループ識別子のうち、前記負荷グループ属性値取得部によって取得された前記負荷グループ属性値と同じグループ属性値に対応付けられたグループ識別子であって前記負荷グループ識別子と異なるグループ識別子を波及グループ識別子として選択し、
前記波及グループ制御部が、前記許可ユーザ数記憶部に記憶されている許可ユーザ数のうち、前記波及グループ選択部によって選択された前記波及グループ識別子と同じグループ識別子に対応付けられた許可ユーザ数を減らす
ことを特徴とするリソース使用制御方法。
Resource use comprising an authorized user number storage unit, a group attribute value storage unit, a resource usage acquisition unit, a load group selection unit, a load group attribute value acquisition unit, a propagation group selection unit, and a propagation group control unit A resource usage control method using a control device,
The permitted user number storage unit may use a group identifier for identifying a user group for each user group of a plurality of user groups to which a plurality of users using the resource belongs, and use the resource among the users belonging to the user group. A storage unit that stores the number of permitted users indicating the number of permitted users in association with each other;
The group attribute value storage unit is a storage unit that stores a group identifier of a user group and a group attribute value indicating an attribute of the user group in association with each user group of the plurality of user groups,
The resource usage acquisition unit acquires the usage of the resource by a user group for each user group of the plurality of user groups,
The load group selection unit uses, as a load group identifier, a group identifier of a user group among the plurality of user groups whose usage amount of the resource acquired by the resource usage acquisition unit satisfies a restriction condition regarding the usage amount Selected,
The group attribute associated with the same group identifier as the load group identifier selected by the load group selection unit among the group attribute values stored in the group attribute value storage unit by the load group attribute value acquisition unit Get the value as a load group attribute value,
The group identifier associated with the same group attribute value as the load group attribute value acquired by the load group attribute value acquisition unit among the group identifiers stored in the group attribute value storage unit by the propagation group selection unit A group identifier different from the load group identifier is selected as a spreading group identifier,
The spreading group control unit, the number of authorized users associated with the same group identifier as the spreading group identifier selected by the spreading group selection unit among the number of authorized users stored in the authorized user number storage unit A resource usage control method characterized by reducing.
請求項1から請求項11のいずれかに記載のリソース使用制御装置としてコンピュータを機能させるためのリソース使用制御プログラム。   A resource use control program for causing a computer to function as the resource use control device according to claim 1.
JP2012277225A 2012-12-19 2012-12-19 Resource use control device, resource use control method, and resource use control program Active JP6029451B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012277225A JP6029451B2 (en) 2012-12-19 2012-12-19 Resource use control device, resource use control method, and resource use control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012277225A JP6029451B2 (en) 2012-12-19 2012-12-19 Resource use control device, resource use control method, and resource use control program

Publications (2)

Publication Number Publication Date
JP2014121074A JP2014121074A (en) 2014-06-30
JP6029451B2 true JP6029451B2 (en) 2016-11-24

Family

ID=51175506

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012277225A Active JP6029451B2 (en) 2012-12-19 2012-12-19 Resource use control device, resource use control method, and resource use control program

Country Status (1)

Country Link
JP (1) JP6029451B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019146098A1 (en) 2018-01-29 2019-08-01 三菱電機株式会社 Control system, control method, and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009176097A (en) * 2008-01-25 2009-08-06 Mitsubishi Electric Corp Service management apparatus and program
JP5123102B2 (en) * 2008-08-14 2013-01-16 株式会社三菱東京Ufj銀行 Online system and access control method
WO2011074516A1 (en) * 2009-12-15 2011-06-23 日本電気株式会社 Network system, method for controlling same, and controller

Also Published As

Publication number Publication date
JP2014121074A (en) 2014-06-30

Similar Documents

Publication Publication Date Title
EP2665228B1 (en) Method for adjusting resources dynamically and scheduling device
US20180198857A1 (en) Connection control device, connection control system, and non-transitory computer readable medium
TWI614703B (en) Information recommendation method and information recommendation device
CN106506490B (en) A kind of distributed computing control method and distributed computing system
KR101871383B1 (en) Method and system for using a recursive event listener on a node in hierarchical data structure
US20100138540A1 (en) Method of managing organization of a computer system, computer system, and program for managing organization
EP2897368B1 (en) Interactive personal/internet protocol television subscription system, and subscription plan management method and device
EP2998862A1 (en) Method, device, and system for memory management
US20160344582A1 (en) Call home cluster
JP2008152618A (en) Job assignment program, method and device
JP2016162389A (en) Thin client system, connection management device, virtual machine operating device, method, and program
US9497138B2 (en) Managing capacity in a data center by suspending tenants
JP2017091330A (en) Computer system and task executing method of computer system
JP6059558B2 (en) Load balancing judgment system
JP6029451B2 (en) Resource use control device, resource use control method, and resource use control program
JP6035934B2 (en) Data store management device, data providing system, and data providing method
JP2016177324A (en) Information processing apparatus, information processing system, information processing method, and program
US9742687B2 (en) Management system and method for execution of virtual machines
JP2017174038A (en) Information processing system, information processing method, and program
JP2019528521A (en) Method and aggregate storage system for aggregating statistics
US20150142960A1 (en) Information processing apparatus, information processing method and information processing system
KR20190074723A (en) System For Providing Remote Computing Service And Method Thereof
US10938701B2 (en) Efficient heartbeat with remote servers by NAS cluster nodes
JP6349786B2 (en) Virtual machine management apparatus, virtual machine management method, and virtual machine management program
CN110944033B (en) Equipment control method, device, edge layer server, system and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151008

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160822

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161018

R150 Certificate of patent or registration of utility model

Ref document number: 6029451

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250