Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7464503B2 - Data request processing device, data request processing method and storage medium - Google Patents
[go: Go Back, main page]

JP7464503B2 - Data request processing device, data request processing method and storage medium - Google Patents

Data request processing device, data request processing method and storage medium Download PDF

Info

Publication number
JP7464503B2
JP7464503B2 JP2020189329A JP2020189329A JP7464503B2 JP 7464503 B2 JP7464503 B2 JP 7464503B2 JP 2020189329 A JP2020189329 A JP 2020189329A JP 2020189329 A JP2020189329 A JP 2020189329A JP 7464503 B2 JP7464503 B2 JP 7464503B2
Authority
JP
Japan
Prior art keywords
priority
data
request
unit
data request
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
JP2020189329A
Other languages
Japanese (ja)
Other versions
JP2022078575A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020189329A priority Critical patent/JP7464503B2/en
Publication of JP2022078575A publication Critical patent/JP2022078575A/en
Application granted granted Critical
Publication of JP7464503B2 publication Critical patent/JP7464503B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データ連携及び流通の優先度制御に関する技術に関する。 The present invention relates to technology related to priority control of data linkage and distribution.

近年、日本政府は、ネットワーク化やサイバー空間利用の飛躍的な発展により、新しいサービスが次々と創出され、社会の主体となる人々に豊かさをもたらす「超スマート社会」を未来社会の姿として定義し、その実現に向けた一連の取組を「Society 5.0」として推進している。 In recent years, the Japanese government has defined the future society as a "super smart society" in which new services are constantly being created through rapid developments in networking and the use of cyberspace, bringing prosperity to the people who are the main players in society, and is promoting a series of initiatives to realize this society, known as "Society 5.0."

Society 5.0では、IoT(Internet of Things)で人と物がつながり、様々なデータ(知識・情報)が流通・連携されることで新たな価値が生み出すことが期待されており、データ流通・連携の取組が活発に行われている。 In Society 5.0, it is expected that new value will be created by connecting people and things through the Internet of Things (IoT) and distributing and linking various types of data (knowledge and information), and active efforts are being made to distribute and link data.

一例として、スマートシティに関する取組(例えば、非特許文献1)では、行政が保有するデータや、建物や道路等のインフラのIoTデータなどを横断的に連携することができるデータ連携・流通のプラットフォーム(以下、都市OS)が提唱されている。以下、都市OSにおける、データ流通・連携の事例を説明する。 As an example, smart city initiatives (e.g., Non-Patent Document 1) propose a data linkage and distribution platform (hereafter, City OS) that can cross-link data held by the government and IoT data on infrastructure such as buildings and roads. Below, we explain examples of data linkage and distribution in City OS.

都市OSは、データを提供元から利用者(又は、アプリケーション・サービス)へ仲介するが、社会状況の変化に伴う変更に対して、ダイナミックでかつ柔軟に対応できるイベント処理機能(非特許文献1:7.2.4.2)が要求されている。 The City OS mediates data from data providers to users (or application services), but it is required to have an event processing function (Non-Patent Document 1: 7.2.4.2) that can dynamically and flexibly respond to changes that accompany changes in social conditions.

また、データ利用者が提供するサービス・アプリケーションは、データのリアルタイム性を要するもの(例えば、監視カメラによる犯罪の抑止やインフラの災害監視)、リアルタイム性が要求されないものまで様々であり、都市OSが仲介するデータにもリアルタイム性、即ち即座に利用者に仲介するものと、そうでないものが混在する。 In addition, the services and applications provided by data users vary from those that require real-time data (for example, crime prevention using surveillance cameras or disaster monitoring of infrastructure) to those that do not, and the data mediated by the City OS also includes a mixture of real-time data, meaning that data is mediated to users immediately, and data that is not.

リアルタイム性が要求されるデータ仲介においては、従来のデータ連携では、特許文献1、2のような優先制御の手法が用いられてきた。 In data intermediation, which requires real-time performance, conventional data linkage has used priority control methods such as those described in Patent Documents 1 and 2.

特許文献1の技術は、予め提供させるデータに優先度を設定し、優先順位の高いデータを提供元から受信した場合に、仲介する処理をジョブとして優先度管理する。現在実行中のジョブによって仲介するジョブを実行するためのリソースを確保できない場合に、実行中のジョブの優先度情報に基づいて、実行中のジョブのうち、受信したジョブよりも優先度が低いジョブの少なくとも1つを停止する、ことが開示されている。 The technology in Patent Document 1 sets a priority for data to be provided in advance, and when high-priority data is received from the data provider, the intermediate process is managed as a job with a high priority. When the resources to execute the intermediate job cannot be secured by the currently executing job, at least one of the currently executing jobs that has a lower priority than the received job is stopped based on the priority information of the currently executing job.

これにより、仲介するデータ量が増加しても、リアルタイム性が必要なデータに優先度を予め設定することにより、優先順位の高いデータをリアルタイムに仲介することができる。 As a result, even if the amount of data being mediated increases, by presetting priorities for data that requires real-time performance, data with high priority can be mediated in real time.

特許文献2の技術は、アプリケーションからのデータ取得のリクエストの頻度を用いて、レスポンスの遅延を解消する技術である。特許文献2によれば、優先度ルール記憶部に、受け取られた各リクエストを、種別毎に、時刻と共に格納している優先度テーブル、及び各リクエストの時刻を時系列にそって格納している時刻記録テーブルを格納する。 The technology in Patent Document 2 uses the frequency of requests for data acquisition from an application to eliminate response delays. According to Patent Document 2, the priority rule storage unit stores a priority table that stores each received request by type along with the time, and a time record table that stores the time of each request in chronological order.

優先度設定部は、最新のリクエストを対象として、優先度テーブルから、最新のリクエストの種別と同一の種別のリクエストの数を特定し、さらに、特定したリクエストの数と時刻記録テーブルに格納されている時刻の数とに基づいて、最新リクエストの発生頻度を算出し、処理順序を決定する際の指標となる優先度を設定する、ことが開示されている。これにより、仲介するデータが増加した場合に、予めプログラムされた優先度ルールにより、頻度の高いデータをリアルタイムに仲介することができる。 The priority setting unit identifies the number of requests of the same type as the latest request from the priority table for the latest request, and further calculates the occurrence frequency of the latest request based on the number of identified requests and the number of times stored in the time recording table, and sets a priority that serves as an index for determining the processing order. In this way, when the amount of data to be mediated increases, it is possible to mediate frequent data in real time according to pre-programmed priority rules.

特開2020-24636号公報JP 2020-24636 A 特開2012-79190号公報JP 2012-79190 A

“スマートシティリファレンスアーキテクチャ ホワイトペーパー(日本語版)”、内閣府 発行、2020/4/1更新"Smart City Reference Architecture White Paper (Japanese version)", published by the Cabinet Office, updated April 1, 2020

一方で、都市OSは、前述の通り、社会状況の変化に伴う変更に対して、ダイナミックでかつ柔軟に対応できる必要があり、予め設定されたリアルタイム性に関する優先度を変更する場合がある。 On the other hand, as mentioned above, the Urban OS needs to be able to dynamically and flexibly respond to changes that accompany changes in social conditions, and there may be cases where the pre-set priorities regarding real-time performance need to be changed.

例えば、道路等のインフラ保守に関するアプリケーションにおいて、通常時において都市OSではリアルタイム性を必要としない優先度で設定されているが、アクシデントが発生した緊急時には、アクシデント発生箇所に関して仲介するデータの優先度を一時的に高くするなどである。 For example, in an application related to infrastructure maintenance such as roads, the City OS normally sets priorities that do not require real-time performance, but in the event of an emergency such as an accident, the priority of the data mediated by the location of the accident can be temporarily increased.

また、事故や災害などが発生した場合でも、都市OSは、状況に応じてダイナミックでかつ柔軟に対応し、安定的にデータの利用者がデータを取得し続けられるようにすることが要求される。 In addition, even in the event of an accident or disaster, the City OS will be required to respond dynamically and flexibly to the situation, and ensure that data users can continue to obtain data stably.

ここで、特許文献1、2を適用した場合でも、上記のダイナミックでかつ柔軟なデータの仲介は実現できない。特許文献1では、予め提供元から送付されるデータに優先度を設定しておくことが必要であり、緊急時にダイナミックに優先度を変える方法については開示されていない。 Here, even if Patent Documents 1 and 2 are applied, the dynamic and flexible data mediation described above cannot be realized. Patent Document 1 requires that the priority of data sent from the provider be set in advance, and does not disclose a method for dynamically changing the priority in an emergency.

特許文献2は、頻度を用いて優先度を設定する方法に関して開示しており、頻度の増加するケース以外のケースに関しては開示されていない。このように特許文献1、2のどちらを適用しても、状況が変わった場合に優先度の変更ができず、緊急時に必要なデータの仲介処理ができなくなる可能性があった。 Patent Document 2 discloses a method for setting priorities using frequency, but does not disclose cases other than those in which frequency increases. In this way, whether Patent Document 1 or 2 is applied, it is not possible to change priorities when the situation changes, and there is a possibility that mediation processing of data required in an emergency will not be possible.

そこで本発明は、上記問題点に鑑みてなされたもので、データの仲介を行う際に、状況に応じてダイナミックでかつ柔軟にデータを要求するリクエストの優先度を制御することを目的とする。 The present invention was made in consideration of the above problems, and aims to dynamically and flexibly control the priority of data requests depending on the situation when mediating data.

本発明は、プロセッサとメモリを有するデータ要求処理装置であって、データベースに格納されているデータをリクエストするメッセージを受信し、前記メッセージに含まれるデータ要求に優先度を設定して、前記優先度に応じて前記データ要求の処理順序を決定する優先度制御部を有し、前記優先度制御部は、前記メッセージを受信する受信部と、前記メッセージに含まれるデータ要求を取得し、前記データ要求を分析して前記優先度の設定に必要なパラメータを生成する分析部と、前記パラメータを用いて前記データ要求に優先度を設定する優先度設定部と、を有し、前記優先度設定部は、前記パラメータを受け付けて、所定のルールで前記パラメータを分類し、前記分類の結果に応じて前記データ要求の優先度を設定する。 The present invention is a data request processing device having a processor and memory, and includes a priority control unit that receives a message requesting data stored in a database, sets a priority for the data request included in the message, and determines the processing order of the data requests according to the priority. The priority control unit includes a receiving unit that receives the message, an analysis unit that obtains the data request included in the message, analyzes the data request, and generates parameters necessary for setting the priority, and a priority setting unit that sets a priority for the data request using the parameters. The priority setting unit accepts the parameters, classifies the parameters according to a predetermined rule, and sets the priority of the data request according to the result of the classification.

本発明によれば、状況に応じてダイナミックでかつ柔軟にリクエストの優先度を制御して、リアルタイム性が必要なアプリケーションは安定的にデータを取得することができる。 According to the present invention, the priority of requests can be dynamically and flexibly controlled according to the situation, allowing applications that require real-time performance to stably obtain data.

本明細書において開示される主題の、少なくとも1つの実施の詳細は、添付されている図面と以下の記述の中で述べられる。開示される主題のその他の特徴、態様、効果は、以下の開示、図面、請求項により明らかにされる。 Details of at least one implementation of the subject matter disclosed herein are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the disclosed subject matter will become apparent from the following disclosure, drawings, and claims.

本発明の実施例1によるデータ要求処理システムの構成の一例を示すブロック図である。1 is a block diagram showing an example of a configuration of a data request processing system according to a first embodiment of the present invention. 本発明の実施例1によるデータ要求処理システムで行われる処理の一例を示すシーケンス図である。4 is a sequence diagram showing an example of processing performed in the data request processing system according to the first embodiment of the present invention; FIG. 本発明の実施例1によるリクエストの構造の一例を示す図である。FIG. 4 is a diagram showing an example of a request structure according to the first embodiment of the present invention. 本発明の実施例1によるリクエスト分析部の構成の一例を示すブロック図である。2 is a block diagram showing an example of a configuration of a request analysis unit according to the first embodiment of the present invention. FIG. 本発明の実施例1によるリクエスト分析部の処理を示すフローチャートである。11 is a flowchart showing a process of a request analysis unit according to the first embodiment of the present invention. 本発明の実施例1による優先度設定部の構成の一例を示すブロック図である。2 is a block diagram showing an example of a configuration of a priority setting unit according to the first embodiment of the present invention; FIG. 本発明の実施例1による優先度設定部の処理を示すフローチャートである。5 is a flowchart showing a process of a priority setting unit according to the first embodiment of the present invention. 本発明の実施例1によるレスポンス時間テーブルの一例を示す図である。FIG. 11 is a diagram illustrating an example of a response time table according to the first embodiment of the present invention. 本発明の実施例2によるリクエスト分析部の構成の一例を示すブロック図である。FIG. 11 is a block diagram showing an example of a configuration of a request analysis unit according to a second embodiment of the present invention. 本発明の実施例2によるリクエスト分析部と管理部間の処理を示すフローチャートである。13 is a flowchart showing a process between a request analysis unit and a management unit according to the second embodiment of the present invention. 本発明の実施例2によるリクエスト分析部の処理を示すフローチャートである。13 is a flowchart illustrating a process of a request analysis unit according to the second embodiment of the present invention. 本発明の実施例3によるリクエスト分析部の構成の一例を示すブロック図である。FIG. 13 is a block diagram showing an example of a configuration of a request analysis unit according to a third embodiment of the present invention. 本発明の実施例3によるリクエスト分析部の処理を示すフローチャートである。13 is a flowchart illustrating a process of a request analysis unit according to a third embodiment of the present invention.

以下、本発明の実施の形態について、図面を参照して詳細に説明する。なお、各図において共通する部分には、同一の符号が付与されている。 The following describes in detail an embodiment of the present invention with reference to the drawings. Note that the same reference numerals are used to designate common parts in each drawing.

実施例1で説明する都市OS(データ連携・流通のプラットフォーム)のデータ仲介では、都市OSの内部に仲介するデータを格納しておくためのデータベース(内部データベース)を用意し、データ提供者が都市OSの内部データベースにデータを格納しておく。 In the data brokerage of City OS (a platform for data linkage and distribution) described in Example 1, a database (internal database) is prepared inside City OS to store the data to be brokered, and data providers store their data in the internal database of City OS.

データ利用者は、都市OSの内部データベースに格納されたデータを都市OSに対してリクエストする方法と、データ利用者が提供元のデータベース(外部データベース)に格納されているデータについて都市OSを介してリクエストして取得する方法がある。 Data users can either request data stored in the City OS's internal database from the City OS, or request and obtain data stored in the provider's database (external database) via the City OS.

実施例1で説明する都市OSのデータ仲介において、リクエストからレスポンス(リクエストされたデータをアプリケーションに返すこと)までの時間を保証するために、プランを作成しておき、プランに加入したデータ利用者は、プランで決められた最低レスポンス時間内にデータを取得できるようにする仕組みを実装することができる。 In the data brokerage of City OS described in Example 1, in order to guarantee the time from request to response (returning the requested data to the application), a plan can be created and a mechanism can be implemented that allows data users who subscribe to the plan to obtain data within the minimum response time determined by the plan.

実施例1は、上記の外部データベースに都市OSがデータをリクエストする場合に、状況に応じてレスポンス時間テーブルを参照してリクエストからレスポンスまでかかった時間(以下、実測レスポンス時間)を用いて、リクエストの優先順位を変更し、処理遅延を解消するデータ要求処理システムに関して説明する。なお、上記状況は、例えば、レスポンスに時間がかかる状況や、上記の都市OSのプランで決められた最低限のレスポンス時間より遅れそうな状況、又は、カテゴリ(種類)や属性(自治体、民間、企業、等)別にデータの取得に時間がかかる状況である。 In the first embodiment, a data request processing system is described that, when the City OS requests data from the external database, refers to a response time table depending on the situation and uses the time taken from the request to the response (hereinafter, the actual response time) to change the priority of the request and eliminate processing delays. Note that the above situation is, for example, a situation where the response takes a long time, a situation where the response time is likely to be slower than the minimum response time determined in the plan of the City OS, or a situation where it takes a long time to obtain data by category (type) or attribute (municipal government, private sector, company, etc.).

図1は、実施例1によるデータ要求処理システムの構成の一例を示すブロック図である。 Figure 1 is a block diagram showing an example of the configuration of a data request processing system according to the first embodiment.

データ要求処理システムは、データ要求処理装置1と、アプリケーション2-1~2-3をそれぞれ実行する端末100-1~100-3と、ネットワーク3、ネットワーク4、データベース5、外部データベース6、データ送信部7から構成される。なお、データベース5と、データ送信部7はデータ要求処理装置1が提供する例を示すが、他の計算機が提供してもよい。また、端末を個々に特定しない場合には、「-」以降を省略した符号「100」を用いる。他の構成要素の符号についても同様である。 The data request processing system is composed of a data request processing device 1, terminals 100-1 to 100-3 which execute applications 2-1 to 2-3, respectively, a network 3, a network 4, a database 5, an external database 6, and a data transmission unit 7. Note that while the database 5 and data transmission unit 7 are shown as being provided by the data request processing device 1 in this example, they may also be provided by other computers. Furthermore, when the terminals are not to be individually specified, the symbol "100" is used with everything after "-" omitted. The same applies to the symbols of the other components.

データ要求処理装置1は、プロセッサ21と、メモリ22と、ストレージ装置23と、通信インターフェース24と、入出力装置25を含む計算機である。 The data request processing device 1 is a computer that includes a processor 21, a memory 22, a storage device 23, a communication interface 24, and an input/output device 25.

メモリ22には、都市OS30がロードされて、プロセッサ21によって実行される。都市OS30は、優先度制御部11と、スケジューリング部12と、データ送信部7の機能部を含む。優先度制御部11は、リクエスト受信部111と、リクエスト分析部112と、優先度設定部113の機能部を含む。 City OS 30 is loaded into memory 22 and executed by processor 21. City OS 30 includes the functional units of a priority control unit 11, a scheduling unit 12, and a data transmission unit 7. Priority control unit 11 includes the functional units of a request receiving unit 111, a request analysis unit 112, and a priority setting unit 113.

都市OS30の各機能を提供する優先度制御部11と、スケジューリング部12と、データ送信部7は、プログラムとしてメモリ22にロードされる。 The priority control unit 11, the scheduling unit 12, and the data transmission unit 7, which provide each function of the city OS 30, are loaded into the memory 22 as programs.

プロセッサ21は、各機能部のプログラムに従って処理を実行することによって、所定の機能を提供する機能部として稼働する。例えば、プロセッサ21は、優先度制御プログラムに従って処理を実行することで優先度制御部11として機能する。他のプログラムについても同様である。さらに、プロセッサ21は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。 The processor 21 operates as a functional unit that provides a specific function by executing processing according to the program of each functional unit. For example, the processor 21 functions as the priority control unit 11 by executing processing according to a priority control program. The same applies to other programs. Furthermore, the processor 21 also operates as a functional unit that provides each function of the multiple processes executed by each program. A computer and a computer system are devices and systems that include these functional units.

ストレージ装置23は、データベース5を格納する。データベース5は都市OS30の内部のデータベースとして管理される。通信インターフェース24は、ネットワーク3、4に接続されて、端末100や外部データベース6と通信を行う。入出力装置25は、キーボードやマウス或いはタッチパネル等の入力装置と、ディスプレイ等の出力装置を含む。 The storage device 23 stores the database 5. The database 5 is managed as an internal database of the city OS 30. The communication interface 24 is connected to the networks 3 and 4 and communicates with the terminal 100 and the external database 6. The input/output device 25 includes input devices such as a keyboard, mouse, or touch panel, and an output device such as a display.

優先度制御部11は、後述するように、アプリケーション2から受け付けたデータのリクエストメッセージに優先度を設定して、スケジューリング部12に出力する。スケジューリング部12は優先度(優先順位)の高い順にリクエストメッセージを処理してデータベース5又は外部データベース6にアクセスする。なお、外部データベース6は、外部の都市OS(図示省略)によって管理される。 As described below, the priority control unit 11 sets priorities for data request messages received from the application 2 and outputs them to the scheduling unit 12. The scheduling unit 12 processes the request messages in descending order of priority (priority order) and accesses the database 5 or the external database 6. The external database 6 is managed by an external city OS (not shown).

なお、スケジューリング部12は、リクエストメッセージから抽出したクエリ(データ要求)をデータベース5又は外部データベース6に出力してもよいし、データベース5又は外部データベース6がリクエストメッセージを受け付け可能な場合には、リクエストメッセージを送信すればよい。 The scheduling unit 12 may output a query (data request) extracted from the request message to the database 5 or the external database 6, or if the database 5 or the external database 6 is capable of accepting the request message, it may send the request message.

データ送信部7は、データベース5又は外部データベース6の応答を受け付けると、レスポンスメッセージを生成して、アプリケーション2に送信する。 When the data transmission unit 7 receives a response from the database 5 or the external database 6, it generates a response message and sends it to the application 2.

図2は、データ要求処理システムのシーケンスを示す。なお、以下の説明では、端末100-1~100-3のアプリケーション2-1~2-3の構成は同様であるので、アプリケーション2-1について説明する。 Figure 2 shows the sequence of the data request processing system. In the following explanation, the configurations of applications 2-1 to 2-3 of terminals 100-1 to 100-3 are the same, so application 2-1 will be explained.

端末100が実行するアプリケーション2は、ネットワーク3を介して、データ要求処理装置1に接続し、データ取得のためのリクエストメッセージを送信する(S1)。 The application 2 executed by the terminal 100 connects to the data request processing device 1 via the network 3 and transmits a request message for acquiring data (S1).

データ要求処理装置1は、優先度制御部11で設定された優先度(可変優先度)に従って、リクエストメッセージの処理順位を決定し、スケジューリング部12で処理順位の高いリクエストメッセージのクエリを送信してデータベース5にアクセスする。 The data request processing device 1 determines the processing priority of the request message according to the priority (variable priority) set by the priority control unit 11, and the scheduling unit 12 sends a query for the request message with the highest processing priority to access the database 5.

スケジューリング部12は、データの所在によっては、データベース5かネットワーク4を介して接続された外部データベース6にアクセスする。データベース5又は外部データベース6から取得したデータはデータ送信部7に出力され、データ送信部7はレスポンスメッセージを生成して、アプリケーション2にデータを送信する。 Depending on the location of the data, the scheduling unit 12 accesses the database 5 or an external database 6 connected via the network 4. The data acquired from the database 5 or the external database 6 is output to the data transmission unit 7, which generates a response message and transmits the data to the application 2.

優先度制御部11のリクエスト受信部111は、アプリケーション2から送信されたリクエストメッセージを記録する。リクエスト分析部112は、リクエスト受信部111に記録されているリクエストメッセージを取得し(S2、S3)、リクエストメッセージを分析し(S4)、分析結果のパラメータ(リアルタイム性)を生成し(S5)、優先度設定部113に出力する(S6、S7)。 The request receiving unit 111 of the priority control unit 11 records the request message sent from the application 2. The request analysis unit 112 acquires the request message recorded in the request receiving unit 111 (S2, S3), analyzes the request message (S4), generates a parameter (real-timeness) of the analysis result (S5), and outputs it to the priority setting unit 113 (S6, S7).

優先度設定部113は、リクエスト分析部112からの全パラメータが入力されると、パラメータからリクエストメッセージ毎に優先度の変更を判断し、判断に応じて可変優先度を算出する(S8)。優先度設定部113は、リクエストメッセージと可変優先度をスケジューリング部12へ送信する(S9)。 When all parameters are input from the request analysis unit 112, the priority setting unit 113 determines whether to change the priority for each request message from the parameters, and calculates a variable priority according to the determination (S8). The priority setting unit 113 sends the request message and the variable priority to the scheduling unit 12 (S9).

スケジューリング部12は、受信したリクエストメッセージの可変優先度に従って、リクエストメッセージに含まれるクエリを送信して、データベース5にデータを要求する(S10)。データベース5はリクエストメッセージのクエリで要求されたデータを検索した結果をデータ送信部7に送信する(S11)。 The scheduling unit 12 sends a query included in the received request message according to the variable priority of the request message to request data from the database 5 (S10). The database 5 sends the results of a search for the data requested by the query in the request message to the data sending unit 7 (S11).

スケジューリング部12は、リクエストメッセージで要求されたデータが外部データベース6の場合には、外部データベース6にデータを要求する(S12)し、外部データベース6はリクエストメッセージで要求されたデータを検索した結果(データ)をデータ送信部7に送信する(S13)。 When the data requested in the request message is an external database 6, the scheduling unit 12 requests the data from the external database 6 (S12), and the external database 6 transmits the search results (data) for the data requested in the request message to the data transmission unit 7 (S13).

データ送信部7は、データベース5又は外部データベース6から受信したデータからレスポンスメッセージを生成して(S14)アプリケーション2へ送信する(S15)。 The data transmission unit 7 generates a response message from the data received from the database 5 or the external database 6 (S14) and transmits it to the application 2 (S15).

図3は、実施例1によるリクエストメッセージ300の構造の一例を示す図である。requestID301は、アプリケーション2から送信されたリクエストメッセージを識別するための項目で、リクエスト受信部111で付与される。 Figure 3 is a diagram showing an example of the structure of a request message 300 according to the first embodiment. The request ID 301 is an item for identifying the request message sent from the application 2, and is assigned by the request receiving unit 111.

requestTime302は、リクエストメッセージ300がリクエスト受信部111に記録(又は受信)された時刻であり、リクエスト受信部111で付与される。appricationID303は、アプリケーション2を識別するための項目であり、アプリケーション2から送信されるリクエストメッセージ300に含まれる。 The requestTime 302 is the time when the request message 300 is recorded (or received) in the request receiving unit 111, and is assigned by the request receiving unit 111. The applicationID 303 is an item for identifying the application 2, and is included in the request message 300 sent from the application 2.

priorty304は、予め決められたアプリケーション2毎の優先度(アプリ優先度)であり、アプリケーション2から送信されるリクエストメッセージ300に含まれる。アプリ優先度(304)は、例えば、自然数を用いて優先順位の値を設定する(例えば、1~7)。なお、優先度設定部113で設定される可変優先度の値の範囲も前記のアプリ優先度(304)と同じレンジとする。なお、優先順位は値が小さいほど優先度が高いものとする。 Priority 304 is a predetermined priority (app priority) for each application 2, and is included in the request message 300 sent from application 2. For example, the app priority (304) is set as a priority value using a natural number (e.g., 1 to 7). The range of variable priority values set by the priority setting unit 113 is also the same as the above-mentioned app priority (304). Note that the smaller the priority value, the higher the priority.

query305は、リクエストメッセージ300に含まれるデータ要求であり、要求されるデータ名3051や、データのカテゴリ(種別・図中dataCatalog)3052や、サイズ3053、属性(図中property)3054など、データを取得するために必要な情報の全てが含まれる。query305は、アプリケーション2から送信されるリクエストメッセージ300に含まれている。 Query 305 is a data request included in request message 300, and includes all of the information necessary to acquire data, such as the requested data name 3051, data category (type, dataCatalog in the figure) 3052, size 3053, and attributes (property in the figure) 3054. Query 305 is included in request message 300 sent from application 2.

図4は、実施例1によるリクエスト分析部112の構成の一例を示すブロック図である。リクエスト分析部112は、リクエストメッセージ300を取得するリクエスト取得部1121と、リクエストメッセージ300に含まれるアプリ優先度(304)を取得するアプリ優先度読み取り部1122と、リクエストメッセージ300からquery305を取得するクエリ読み取り部1123と、データ送信部7からレスポンスに関する情報を受け付けて実測レスポンス時間を算出してレスポンス時間テーブル1125に格納するレスポンス時間計算部1126と、query305とレスポンス時間テーブル1125の情報からパラメータを生成するパラメータ検出部1124を含む。 Fig. 4 is a block diagram showing an example of the configuration of the request analysis unit 112 according to the first embodiment. The request analysis unit 112 includes a request acquisition unit 1121 that acquires a request message 300, an application priority reading unit 1122 that acquires an application priority (304) included in the request message 300, a query reading unit 1123 that acquires a query 305 from the request message 300, a response time calculation unit 1126 that receives information related to the response from the data transmission unit 7, calculates an actual response time, and stores the calculated response time in a response time table 1125, and a parameter detection unit 1124 that generates parameters from the query 305 and the information in the response time table 1125.

図5は、リクエスト分析部112の処理を示すフローチャートである。この処理は、リクエスト受信部111からリクエストメッセージ300を受診した場合に実行される。 Figure 5 is a flowchart showing the processing of the request analysis unit 112. This processing is executed when a request message 300 is received from the request receiving unit 111.

リクエスト取得部1121は、リクエスト受信部111に記録されているリクエストメッセージ300を要求し、レスポンスとしてリクエストメッセージを取得する(S51)。 The request acquisition unit 1121 requests the request message 300 recorded in the request receiving unit 111 and acquires the request message as a response (S51).

リクエスト取得部1121は、取得したリクエストメッセージ300をアプリ優先度読み取り部1122と、クエリ読み取り部に送る(S52)。アプリ優先度読み取り部1122は、リクエストメッセージ300からrequestID301と、priority304を取得(S53)し、優先度設定部113に出力する(S57)。 The request acquisition unit 1121 sends the acquired request message 300 to the application priority reading unit 1122 and the query reading unit (S52). The application priority reading unit 1122 acquires the request ID 301 and priority 304 from the request message 300 (S53) and outputs them to the priority setting unit 113 (S57).

クエリ読み取り部1123は、requestID301と、requestTime302と、appricationID303と、クエリ305をリクエストメッセージ300から取得し(S54)、パラメータ検出部1124に出力する。 The query reading unit 1123 obtains the request ID 301, the request Time 302, the application ID 303, and the query 305 from the request message 300 (S54), and outputs them to the parameter detection unit 1124.

パラメータ検出部1124は、クエリ読み取り部1123で取得した項目を用いて、可変優先度を設定するのに必要なパラメータを生成する。実施例1では、パラメータ検出部1124は、レスポンス時間テーブル1125にアクセスし、query305を用いてリクエストメッセージ300に該当する過去の実測レスポンス時間を参照する(S55)。 The parameter detection unit 1124 generates parameters necessary for setting the variable priority using the items acquired by the query reading unit 1123. In the first embodiment, the parameter detection unit 1124 accesses the response time table 1125 and uses the query 305 to refer to the past measured response time corresponding to the request message 300 (S55).

パラメータ検出部1124は、例えば、query305のデータ名3051を取得し、データ名3051でレスポンス時間テーブル1125を検索し、データ名1202が一致するレコードの実測レスポンス時間1204を取得し、リクエストメッセージ300でアクセスする際の推定レスポンス時間として設定する。 The parameter detection unit 1124, for example, obtains the data name 3051 of the query 305, searches the response time table 1125 for the data name 3051, obtains the measured response time 1204 of the record that matches the data name 1202, and sets it as the estimated response time when accessing with the request message 300.

図8は、レスポンス時間テーブル1125の一例を示す図である。レスポンス時間テーブル1125は、アプリID1201と、データ名1202と、種類1203と、実測レスポンス時間1204と、所在1205と、タイムスタンプ1206を1つのレコードに含む。 Figure 8 is a diagram showing an example of a response time table 1125. The response time table 1125 includes an application ID 1201, a data name 1202, a type 1203, an actual response time 1204, a location 1205, and a timestamp 1206 in one record.

アプリID1201は、アプリケーション2の識別子を格納する。データ名1202は、リクエストメッセージ300で要求されたデータの名称が格納される。種類1203にはデータの種類が格納される。所在1205には、データが格納されている位置(又はパス)が格納される。タイムスタンプ1206には、データが登録された日時が格納される。 The app ID 1201 stores the identifier of the application 2. The data name 1202 stores the name of the data requested in the request message 300. The type 1203 stores the type of data. The location 1205 stores the location (or path) where the data is stored. The timestamp 1206 stores the date and time when the data was registered.

実測レスポンス時間1204は、データ送信部7から送信されたデータ要求に対してデータベース5からの応答がデータ送信部7に到着した時刻と、リクエストメッセージ300のrequestTime302の差分からレスポンス時間計算部1126が計算した時間である。 The actual response time 1204 is the time calculated by the response time calculation unit 1126 from the difference between the time when the response from the database 5 to the data request sent from the data sending unit 7 arrives at the data sending unit 7 and the requestTime 302 of the request message 300.

なお、実測レスポンス時間1204は、上記に限定されるものではなく、スケジューリング部12がリクエストメッセージ300又はクエリを送信してから、データベース5(又は外部データベース6)の応答をデータ送信部7で受け付けるまでの時間をレスポンス時間計算部1126が測定して、レスポンス時間テーブル1125へ蓄積してもよい。 The actual response time 1204 is not limited to the above, and the response time calculation unit 1126 may measure the time from when the scheduling unit 12 sends the request message 300 or query until the data transmission unit 7 receives a response from the database 5 (or external database 6) and store the measured time in the response time table 1125.

なお、レスポンス時間テーブル1125は、図示はしないが、少なくともデータ名(3051)と、データのカテゴリ(3052)と、実測レスポンス時間を1つのレコードに含めばよい。 Although not shown in the figure, the response time table 1125 only needs to include at least the data name (3051), the data category (3052), and the actual response time in one record.

また、レスポンス時間計算部1126は、計算した実測レスポンス時間1204と、データ名1201やデータの所在などの情報を登録し、登録した時刻をタイムスタンプ1206に設定する。レスポンス時間計算部1126は、毎回のレスポンス毎に計算するか、一定時間内に発生したレスポンスの平均値を計算することも可能である。 The response time calculation unit 1126 also registers the calculated actual response time 1204, as well as information such as the data name 1201 and the location of the data, and sets the registration time to the timestamp 1206. The response time calculation unit 1126 can calculate for each response, or it can calculate the average response time that occurs within a certain period of time.

次に、パラメータ検出部1124は、取得した実測レスポンス時間1204を用いて、パラメータを生成する(S56)。なお、パラメータ検出部1124は、レスポンス時間テーブル1125から複数の実測レスポンス時間1204を検索した場合には、タイムスタンプ1206が最新のレコードの値を選択して推定レスポンス時間とする。 Next, the parameter detection unit 1124 generates parameters using the acquired actual response time 1204 (S56). Note that if the parameter detection unit 1124 searches for multiple actual response times 1204 from the response time table 1125, it selects the value of the record with the latest timestamp 1206 as the estimated response time.

例えば、外部データベース6にデータを要求する状況においては、パラメータ検出部1124は、query305のデータ名を用いてレスポンス時間テーブル1125を検索し、パラメータとして実測レスポンス時間1204と、外部アクセス判定結果が「True」の値と、データの所在1205を生成する。なお、外部アクセス判定結果は、「True」又は「False」が設定される。 For example, in a situation where data is requested from the external database 6, the parameter detection unit 1124 searches the response time table 1125 using the data name of the query 305, and generates the actual response time 1204 as parameters, the value of the external access judgment result "True", and the data location 1205. The external access judgment result is set to "True" or "False".

また、パラメータ検出部1124は、要求されているデータの所在1205が、外部データベース6ではない場合にはパラメータとして外部アクセス判定結果が「False」の値を生成する。パラメータ検出部1124が生成したパラメータは優先度設定部113に出力される(S57)。 If the location 1205 of the requested data is not the external database 6, the parameter detection unit 1124 generates a parameter indicating that the external access judgment result is "False". The parameter generated by the parameter detection unit 1124 is output to the priority setting unit 113 (S57).

リクエストメッセージ300の到着からデータ送信部7が検索結果を取得するまでにレスポンスに時間を要するカテゴリ3052(種類1203)のデータの処理速度を上げるために、パラメータ検出部1124が、リクエストメッセージ300のカテゴリ3052でレスポンス時間テーブル1125を検索し、データの種類1203に一致する実測レスポンス時間1204をパラメータとして使用することも可能である。 In order to increase the processing speed of data of category 3052 (type 1203) that requires time for response from the arrival of the request message 300 until the data transmission unit 7 obtains the search results, the parameter detection unit 1124 can search the response time table 1125 for the category 3052 of the request message 300 and use the actual response time 1204 that matches the data type 1203 as a parameter.

又は、レスポンスに時間を要する属性(自治体、民間、企業、等)のデータの処理速度を上げるために、レスポンス時間テーブル1125にデータの属性情報と実測レスポンス時間1204を登録し、パラメータとして生成することも可能である。 Alternatively, to increase the processing speed of data for attributes that require a long response time (such as local government, private sector, or business), it is possible to register data attribute information and actual response time 1204 in response time table 1125 and generate them as parameters.

又は、都市OS30のプランで決められた最低限のレスポンス時間より遅れそうな場合に、遅延を回避するため、レスポンス時間テーブル1125にプラン情報(最低限レスポンス時間)を加えておくことができる。 Alternatively, if the response time is likely to be slower than the minimum response time determined in the city OS 30 plan, plan information (minimum response time) can be added to the response time table 1125 to avoid delays.

パラメータ検出部1124は、リクエストメッセージ300のappricationID303に一致するアプリID1201のレコードを検索し、レスポンス時間テーブル1125からプラン情報(最低限レスポンス時間)、実測レスポンス時間1204を取得する。そして、パラメータ検出部1124は、アプリケーション2が加入しているプランの最低限レスポンス時間と、実測レスポンス時間1204の差を計算し、パラメータを生成することも可能である。 The parameter detection unit 1124 searches for a record of the application ID 1201 that matches the application ID 303 of the request message 300, and obtains the plan information (minimum response time) and the measured response time 1204 from the response time table 1125. The parameter detection unit 1124 can also calculate the difference between the minimum response time of the plan to which application 2 subscribes and the measured response time 1204, and generate parameters.

パラメータ検出部1124は、実測レスポンス時間1204と外部アクセス判定結果(「True」又は「False」)と、上記ステップS53で取得したアプリ優先度(304)を含むパラメータを優先度設定部113に出力する(S57)。 The parameter detection unit 1124 outputs parameters including the actual response time 1204, the external access judgment result ("True" or "False"), and the application priority (304) obtained in step S53 above to the priority setting unit 113 (S57).

次に、リクエスト分析部112のリクエスト取得部1121は、優先度設定部113からパラメータの受信完了の通知(レスポンス)を待って処理を終了する(S58)。 Next, the request acquisition unit 1121 of the request analysis unit 112 waits for a notification (response) from the priority setting unit 113 that the parameters have been received, and then ends the process (S58).

図6は、優先度設定部113の構成の一例を示すブロック図である。優先度設定部113は、リクエスト分析部112からパラメータを受け付けて、可変優先度を算出してスケジューリング部12へ出力する。優先度設定部113は、パラメータ受信部1131と、優先度計算部1132と、処理順序制御部1133から構成される。 Figure 6 is a block diagram showing an example of the configuration of the priority setting unit 113. The priority setting unit 113 receives parameters from the request analysis unit 112, calculates a variable priority, and outputs it to the scheduling unit 12. The priority setting unit 113 is composed of a parameter receiving unit 1131, a priority calculation unit 1132, and a processing order control unit 1133.

図7は、優先度設定部113で行われる処理の一例を示すフローチャートである。 Figure 7 is a flowchart showing an example of the processing performed by the priority setting unit 113.

パラメータ受信部1131は、リクエスト分析部112から出力されたパラメータを受信し、requestID301で、リクエストメッセージ毎のパラメータを識別する(S71)。 The parameter receiving unit 1131 receives the parameters output from the request analysis unit 112 and identifies the parameters for each request message by the requestID 301 (S71).

パラメータ受信部1131は、リクエストメッセージのパラメータの受信が完了すると、リクエスト分析部112のリクエスト取得部1121にパラメータの受信終了のレスポンスを返し、リクエスト取得部1121に新しいリクエストメッセージを取得するよう通知する(S72、S73)。 When the parameter receiving unit 1131 has completed receiving the parameters of the request message, it returns a response to the request acquisition unit 1121 of the request analysis unit 112 indicating that parameter reception has ended, and notifies the request acquisition unit 1121 to acquire a new request message (S72, S73).

パラメータ受信部1131は、パラメータが複数の場合は、全てのパラメータの受信が完了してからリクエスト取得部1121にレスポンスを返す。パラメータ受信部1131が受け取ったパラメータは優先度計算部1132に出力され、優先度計算部1132はパラメータを用いて可変優先度を計算する(S74)。 When there are multiple parameters, the parameter receiving unit 1131 returns a response to the request acquiring unit 1121 after completing reception of all parameters. The parameters received by the parameter receiving unit 1131 are output to the priority calculation unit 1132, which uses the parameters to calculate a variable priority (S74).

実施例1の優先度計算部1132は、パラメータ内の実測レスポンス時間を、リクエストメッセージ300で要求されたデータを取得する際の推定レスポンス時間として扱う。優先度計算部1132は、推定レスポンス時間が予め設定した閾値を超えているかを判断し、閾値を超える場合は、アプリ優先度(priority304)よりも優先順位を上げて、可変優先度(値は減少)を設定する。 The priority calculation unit 1132 in the first embodiment treats the actual response time in the parameters as an estimated response time when acquiring the data requested in the request message 300. The priority calculation unit 1132 determines whether the estimated response time exceeds a preset threshold, and if it does exceed the threshold, sets a variable priority (value is decreased) by increasing the priority over the application priority (priority 304).

優先順位を上げる程度は、アプリ優先度(304)の設定レンジ内(例えば、自然数で1~7)で、アプリ優先度(304)を1段階又は2段階だけ上げた可変優先度を設定することができる。そして、推定レスポンス時間が、閾値を超えると、優先度計算部1132が可変優先度を最優先(可変優先度=1)に設定することができる。 The degree to which the priority is increased can be set to a variable priority that increases the application priority (304) by one or two steps within the setting range of the application priority (304) (for example, natural numbers 1 to 7). Then, when the estimated response time exceeds a threshold, the priority calculation unit 1132 can set the variable priority to the highest priority (variable priority = 1).

すでに、アプリ優先度(304)が最優先順位(=1)に相当する値であれば、優先度計算部1132は優先順位の変更はしない。優先度計算部1132は、推定レスポンス時間が閾値を超えない場合は、優先順位を変えずに、優先度計算部1132はアプリ優先度(304)で処理する。 If the application priority (304) is already a value corresponding to the highest priority (=1), the priority calculation unit 1132 does not change the priority. If the estimated response time does not exceed the threshold, the priority calculation unit 1132 does not change the priority and processes with the application priority (304).

又は、優先度計算部1132は、予め閾値を複数設定し、推定レスポンス時間が低い閾値(第1の閾値)を超えない場合は、優先度計算部1132が優先順位(可変優先度)を下げ、推定レスポンス時間が高い閾値(第2の閾値)を超える場合は、優先順位(可変優先度)を上げ、その間の場合は、優先順位を変えない方法もある。 Alternatively, the priority calculation unit 1132 may set multiple thresholds in advance, and if the estimated response time does not exceed a lower threshold (first threshold), the priority calculation unit 1132 may lower the priority (variable priority), if the estimated response time exceeds a higher threshold (second threshold), the priority (variable priority) may be raised, and in between, the priority may not be changed.

又は、優先度計算部1132は、予め複数の閾値を設定し、推定レスポンス時間が低い閾値(第1の閾値)を超える場合は、優先順位を1段階上げた可変優先度を算出し、推定レスポンス時間が高い閾値(第2の閾値)を超える場合は、優先順位を2段階だけ上げた可変優先度を算出する方法もある。 Alternatively, the priority calculation unit 1132 may set multiple thresholds in advance, and if the estimated response time exceeds a lower threshold (first threshold), calculate a variable priority that is one level higher, and if the estimated response time exceeds a higher threshold (second threshold), calculate a variable priority that is two levels higher.

優先度計算部1132は、外部データベース6からデータを取得する場合、受け取ったパラメータの外部アクセス判定結果が「True」である場合、推定レスポンス時間と閾値を比較し、可変優先度を設定するようにしてもよい。 When retrieving data from the external database 6, the priority calculation unit 1132 may compare the estimated response time with a threshold value and set a variable priority if the external access judgment result of the received parameters is "True."

また、優先度計算部1132は、受け取ったパラメータの外部アクセス判定結果が「False」の場合は、アプリ優先度(304)のまま処理する。或いは、優先度計算部1132は、パラメータのうち外部アクセス判定結果の「True」又は「False」のみ用いて、「True」の場合に優先順位を上げ、「False」場合にはアプリ優先度(304)で処理することも可能である。 If the external access judgment result of the received parameter is "False", the priority calculation unit 1132 processes it as is with the application priority (304). Alternatively, the priority calculation unit 1132 can use only the external access judgment result of the parameters, "True" or "False", to raise the priority when it is "True" and to process it with the application priority (304) when it is "False".

また、優先度計算部1132は、パラメータのうち外部アクセス判定結果の「True」又は「False」のみ用いて、「True」の場合に優先順位を上げ、「False」場合にはアプリ優先度(304)で処理することも可能である。 In addition, the priority calculation unit 1132 can use only the external access judgment result "True" or "False" among the parameters, and can increase the priority when the result is "True" and process using the application priority (304) when the result is "False."

また、優先度計算部1132は、パラメータに外部アクセス判定結果の「True」が含まれる場合には、推定レスポンス時間と閾値に応じて可変優先度を算出し、パラメータが「False」の場合にはアプリ優先度(304)の値を可変優先度に設定してもよい。 In addition, if the parameter includes the external access judgment result of "True", the priority calculation unit 1132 may calculate a variable priority based on the estimated response time and a threshold value, and if the parameter is "False", set the value of the application priority (304) to the variable priority.

また、優先度設定部113は、リクエスト分析部112から受け付けたパラメータが、カテゴリ3052や属性(property3054)の場合、推定レスポンス時間と閾値を用いて、優先度計算部1132で可変優先度を設定してもよい。 In addition, when the parameters received from the request analysis unit 112 are a category 3052 or an attribute (property 3054), the priority setting unit 113 may set a variable priority in the priority calculation unit 1132 using an estimated response time and a threshold value.

また、パラメータ検出部1124が、複数のリクエストメッセージ300について推定レスポンス時間を取得して、複数のリクエストメッセージ300と複数の推定レスポンス時間を優先度設定部113に出力することができる。この場合、パラメータ受信部1131で、複数のリクエストメッセージと複数の推定レスポンス時間を優先度計算部1132に出力し、優先度計算部1132は、複数のリクエストメッセージの推定レスポンス時間を比較して、推定レスポンス時間が最長時間か、推定レスポンス時間が長い上位いくつかの優先順位を上げて、可変優先度を設定する方法もある。 Also, the parameter detection unit 1124 can obtain estimated response times for multiple request messages 300 and output the multiple request messages 300 and the multiple estimated response times to the priority setting unit 113. In this case, the parameter reception unit 1131 outputs the multiple request messages and the multiple estimated response times to the priority calculation unit 1132, and the priority calculation unit 1132 compares the estimated response times of the multiple request messages and sets a variable priority by raising the priority of the request messages with the longest estimated response time or the top several longest estimated response times.

パラメータ受信部1131から、一定期間の間に貯められたリクエストメッセージのパラメータを優先度計算部1132に出力する場合、優先度計算部1132は、推定レスポンス時間が最長時間か、推定レスポンス時間が上位いくつかのリクエストメッセージか、推定レスポンス時間が上位何割かのリクエストメッセージの優先順位を上げることも可能である。 When the parameter receiving unit 1131 outputs the parameters of the request messages accumulated over a certain period of time to the priority calculation unit 1132, the priority calculation unit 1132 can also raise the priority of the request messages with the longest estimated response time, those with the top few estimated response times, or those with the top percentage of estimated response times.

処理順序制御部1133は、算出された可変優先度(又はアプリ優先度(304))を含めて、スケジューリング部12にリクエストメッセージ300を送信する(S75)。なお、処理順序制御部1133は、リクエストメッセージ300のクエリ(query305)と可変優先度(アプリ優先度)を送信すればよい。 The processing order control unit 1133 transmits the request message 300 to the scheduling unit 12, including the calculated variable priority (or application priority (304)) (S75). Note that the processing order control unit 1133 may transmit the query (query 305) of the request message 300 and the variable priority (application priority).

スケジューリング部12は、優先順位の異なる複数のキューで構成され、優先順位(可変優先度)の高いキューから優先的にデキューされるアルゴリズムでスケジューリングを実施する。 The scheduling unit 12 is composed of multiple queues with different priorities, and performs scheduling using an algorithm that gives priority to dequeuing from queues with higher priorities (variable priorities).

スケジューリング部12からアクセス先のデータベース5又は外部データベース6にリクエストメッセージのクエリ(query305)が送信されて、リクエストメッセージ300で要求されたデータの取得が実施される。 The scheduling unit 12 sends a request message query (query 305) to the database 5 or external database 6 to be accessed, and the data requested in the request message 300 is obtained.

以上のように実施例1のデータ要求処理装置1は、リクエストメッセージ300の受信からレスポンスまでにかかった時間情報(推定レスポンス時間)と所定の閾値に基づいて、優先順位(可変優先度)を変更し、リクエストメッセージの処理を迅速化することで、端末100から要求されたデータの取得までの時間を短縮することができる。 As described above, the data request processing device 1 of the first embodiment can shorten the time it takes to obtain data requested by the terminal 100 by changing the priority (variable priority) and speeding up the processing of the request message based on the time information (estimated response time) taken from receiving the request message 300 to responding and a predetermined threshold value.

また、データ要求処理装置1は、外部データベース6へアクセスする場合(パラメータの外部アクセス判定結果が「True」)に、推定レスポンス時間と閾値を用いて可変優先度を算出し、推定レスポンス時間の長さに応じた優先順位を設定することで、データの仲介を行う際にネットワーク4やアクセスの状況に応じてダイナミックでかつ柔軟にデータを要求するリクエストの優先度を制御することが可能となる。 In addition, when the data request processing device 1 accesses the external database 6 (the external access determination result of the parameter is "True"), it calculates a variable priority using the estimated response time and a threshold value, and sets a priority according to the length of the estimated response time, making it possible to dynamically and flexibly control the priority of requests that request data according to the network 4 and access conditions when mediating data.

実施例2では、端末100のアプリケーション2が、事故や災害のように発生時期が予想できない状況で優先度の変更を要求し、データ要求処理装置1が優先度の変更要求に応じて、優先順位を上げるための制御をリクエスト分析部112と、優先度設定部113で実施する例を説明する。 In the second embodiment, an example is described in which an application 2 of a terminal 100 requests a change in priority in a situation where the occurrence time is unpredictable, such as an accident or disaster, and the data request processing device 1 responds to the priority change request by controlling the request analysis unit 112 and the priority setting unit 113 to raise the priority.

図9は、実施例2によるリクエスト分析部の構成を示す。 Figure 9 shows the configuration of the request analysis unit according to the second embodiment.

実施例2において、リクエスト分析部112は、リクエスト取得部1121と、アプリ優先度読み取り部1122と、クエリ読み取り部1123と、パラメータ検出部1124及び優先度変更要求取得部1127から構成される。パラメータ検出部1124は、優先度変更を管理するために入出力装置25からの指令を受け付ける。 In the second embodiment, the request analysis unit 112 includes a request acquisition unit 1121, an application priority reading unit 1122, a query reading unit 1123, a parameter detection unit 1124, and a priority change request acquisition unit 1127. The parameter detection unit 1124 receives commands from the input/output device 25 to manage priority changes.

リクエスト取得部1121、アプリ優先度読み取り部1122、クエリ読み取り部1123は実施例1と同様である。実施例2のリクエスト分析部112は、前記実施例1のレスポンス時間計算部1126とレスポンス時間テーブル1125を削除し、優先度変更要求取得部1127を加えた点が実施例1と相違する。 The request acquisition unit 1121, the application priority reading unit 1122, and the query reading unit 1123 are the same as those in the first embodiment. The request analysis unit 112 in the second embodiment differs from that in the first embodiment in that the response time calculation unit 1126 and the response time table 1125 in the first embodiment are deleted, and a priority change request acquisition unit 1127 is added.

図10は、本発明の実施例2によるリクエスト分析部112の処理の一例を示すフローチャートである。この処理は、リクエスト受信部111から優先度変更要求を含むリクエストメッセージ300を受け付けた場合に開始される。なお、優先度変更要求は、リクエストメッセージ300と異なるメッセージであってもよい。 Figure 10 is a flowchart showing an example of the processing of the request analysis unit 112 according to the second embodiment of the present invention. This processing is started when a request message 300 including a priority change request is received from the request receiving unit 111. Note that the priority change request may be a message different from the request message 300.

優先度変更要求取得部1127は、リクエスト受信部111から優先度変更を含むリクエストメッセージ300を取得する(S91)。優先度変更のリクエストメッセージ300は、appricationID303と、アプリ優先度(priority304)と同様の形式(レンジなど)を含む要求優先度で構成される。優先度変更要求取得部1127は、リクエストメッセージ300内の優先度変更要求を抽出してパラメータ検出部1124へ送信する。 The priority change request acquisition unit 1127 acquires a request message 300 including a priority change from the request receiving unit 111 (S91). The priority change request message 300 is composed of an application ID 303 and a requested priority including a format (such as a range) similar to the application priority (priority 304). The priority change request acquisition unit 1127 extracts the priority change request from the request message 300 and transmits it to the parameter detection unit 1124.

パラメータ検出部1124は、優先度変更のリクエストを受け付ける(S92)と、入出力装置25へ優先度変更要求の可否を問い合せる(S93)。入出力装置25を利用する管理者は、通知を受けた入出力装置25で、要求優先度への変更を許可(True)又は不可(False)を決定し(S94)、決定内容を応答に含めてパラメータ検出部1124に送信する(S95)。 When the parameter detection unit 1124 receives a request to change the priority (S92), it inquires of the I/O device 25 whether the priority change request is acceptable (S93). The administrator using the I/O device 25 determines whether the change to the requested priority should be accepted (True) or not (False) on the notified I/O device 25 (S94), and includes the decision in a response that is sent to the parameter detection unit 1124 (S95).

図11は、本発明の実施例2によるリクエスト分析部112の処理の一例を示すフローチャートである。この処理は、入出力装置25から優先度の変更の可否を受け付けた場合に開始される。 Figure 11 is a flowchart showing an example of the processing of the request analysis unit 112 according to the second embodiment of the present invention. This processing is started when a request for changing the priority is received from the input/output device 25.

ステップS101~S104は前記実施例1の図5に示したステップS51~S54と同様の処理である。 Steps S101 to S104 are the same as steps S51 to S54 shown in Figure 5 of the first embodiment.

入出力装置25から許可又は拒否の応答を受け付けたパラメータ検出部1124は、優先度変更の可否が設定されたappricationID303と同一のIDを含むアプリケーション2のリクエストメッセージ300を取得し、優先度変更の可否が「True」(許可)であるかを判定し(S105)、「True」であればステップS106へ進み、「False」(拒否)であればステップS107へ進む。 The parameter detection unit 1124, which has received a permission or denial response from the input/output device 25, acquires the request message 300 of application 2 that contains the same ID as the application ID 303 for which the permission or denial of the priority change has been set, and determines whether the permission or denial of the priority change is "True" (permitted) (S105). If it is "True", the process proceeds to step S106, and if it is "False" (denied), the process proceeds to step S107.

ステップS106では、パラメータ検出部1124が、優先度変更要求に含まれる要求優先度をパラメータとして生成し、優先度設定部113に出力する(S108)。一方、優先度変更が不可であれば、パラメータ検出部1124は0の値をパラメータとし(S107)、優先度設定部113に出力する(S108)。 In step S106, the parameter detection unit 1124 generates the requested priority included in the priority change request as a parameter and outputs it to the priority setting unit 113 (S108). On the other hand, if the priority change is not possible, the parameter detection unit 1124 sets the value of 0 as the parameter (S107) and outputs it to the priority setting unit 113 (S108).

優先度設定部113の優先度計算部1132は、受け付けたパラメータが0値であれば、アプリ優先度(304)をそのまま可変優先度に設定し、0でなければ、要求優先度を可変優先度に設定して出力する。 If the received parameter is 0, the priority calculation unit 1132 of the priority setting unit 113 sets the application priority (304) to a variable priority as is, and if the parameter is not 0, sets the requested priority to a variable priority and outputs it.

次に、リクエスト分析部112のリクエスト取得部1121は、優先度設定部113からパラメータの受信完了の通知(レスポンス)を待って処理を終了する(S109)。 Next, the request acquisition unit 1121 of the request analysis unit 112 waits for a notification (response) from the priority setting unit 113 that the parameters have been received, and then ends the process (S109).

なお、上記の他に、要求優先度は、通常時は「0」に設定され、予め設定された緊急時は「1」に設定しておき、緊急時には、可変優先度を最優先順位に設定することも可能である。 In addition to the above, the request priority can be set to "0" under normal circumstances and to "1" in a pre-defined emergency, and in an emergency the variable priority can be set as the highest priority.

実施例2より、停電が起きた場合の電力インフラの保守アプリケーションや、洪水が起きた場合の下水道インフラの保守アプリケーションなど、平常より、優先されるべき事故や災害が発生した場合、それらのアプリケーション2が優先度変更を要求する場合に、データ要求処理装置1は当該アプリケーション2の優先順位を上げることが可能となる。なお、混雑度を計算するアプリケーション2が、都市内のイベントにより人の混雑発生した場合に、データ要求処理装置1が当該アプリケーション2の優先順位を上げるようにしてもよい。 According to the second embodiment, when an accident or disaster occurs that should be prioritized over normal times, such as an application for maintaining power infrastructure in the event of a power outage or an application for maintaining sewerage infrastructure in the event of a flood, and when such an application 2 requests a change in priority, the data request processing device 1 can increase the priority of the application 2. Note that the data request processing device 1 may increase the priority of the application 2 that calculates the degree of congestion when an event in the city causes congestion.

実施例3は、アプリケーション2が様々なアプリケーションで利用された汎用性が高いデータにアクセスする場合に、過去のリクエストメッセージを用いて、優先順位を変更するためのパラメータを生成するリクエスト分析部112の例に関して説明する。 Example 3 describes an example of a request analysis unit 112 that uses past request messages to generate parameters for changing the priority order when application 2 accesses highly versatile data used in various applications.

図12は、実施例3によるリクエスト分析部112の構成の一例を示す。実施例3のリクエスト分析部112は、リクエスト取得部1121と、アプリ優先度読み取り部1122と、クエリ読み取り部1123と、パラメータ検出部1124及びリクエスト記録部1128から構成される。 FIG. 12 shows an example of the configuration of the request analysis unit 112 according to the third embodiment. The request analysis unit 112 according to the third embodiment is composed of a request acquisition unit 1121, an application priority reading unit 1122, a query reading unit 1123, a parameter detection unit 1124, and a request recording unit 1128.

リクエスト取得部1121、アプリ優先度読み取り部1122、クエリ読み取り部1123は実施例1と同様である。実施例3のリクエスト分析部112は、前記実施例1のレスポンス時間計算部1126とレスポンス時間テーブル1125を削除し、リクエスト記録部1128を加えた点が実施例1と相違する。 The request acquisition unit 1121, the application priority reading unit 1122, and the query reading unit 1123 are the same as those in the first embodiment. The request analysis unit 112 in the third embodiment differs from that in the first embodiment in that the response time calculation unit 1126 and the response time table 1125 in the first embodiment are deleted, and a request recording unit 1128 is added.

図13は、実施例3によるリクエスト分析部の処理を示すフローチャートである。この処理は、リクエスト受信部111からリクエストメッセージ300を受診した場合に実行される。 Figure 13 is a flowchart showing the processing of the request analysis unit according to the third embodiment. This processing is executed when a request message 300 is received from the request receiving unit 111.

リクエスト取得部1121は、リクエスト受信部111に記録されているリクエストメッセージ300を要求し、リクエストメッセージ300を取得する(S121)。 The request acquisition unit 1121 requests the request message 300 recorded in the request receiving unit 111 and acquires the request message 300 (S121).

リクエスト取得部1121は、取得したリクエストメッセージ300をアプリ優先度読み取り部1122と、クエリ読み取り部に送信する(S122)。アプリ優先度読み取り部1122は、リクエストメッセージ300からrequestID301と、priority304を取得(S123)し、優先度設定部113に出力する(S127)。 The request acquisition unit 1121 transmits the acquired request message 300 to the application priority reading unit 1122 and the query reading unit (S122). The application priority reading unit 1122 acquires the request ID 301 and priority 304 from the request message 300 (S123) and outputs them to the priority setting unit 113 (S127).

クエリ読み取り部1123は、requestID301と、requestTime302と、appricationID303と、クエリ305をリクエストメッセージ300から取得優先度変更要求(S124)し、取得した情報をリクエスト記録部1128に記録を行う。また、クエリ読み取り部1123は、取得した情報をパラメータ検出部1124に出力する。 The query reading unit 1123 requests a change of the acquisition priority (S124) for the request ID 301, the request time 302, the application ID 303, and the query 305 from the request message 300, and records the acquired information in the request recording unit 1128. The query reading unit 1123 also outputs the acquired information to the parameter detection unit 1124.

リクエスト記録部1128は過去のリクエストメッセージ300のrequestTime302と、appricationID303と、query305を記録する。リクエスト記録部1128は、SSDのような記憶装置か、DRAMのように揮発性の記憶装置で構成することも可能である。 The request recording unit 1128 records the requestTime 302, applicationID 303, and query 305 of past request messages 300. The request recording unit 1128 can be configured as a storage device such as an SSD or a volatile storage device such as a DRAM.

パラメータ検出部1124は、リクエスト記録部1128にアクセスして、ステップS124で取得したrequestTime302よりも過去のリクエストメッセージ300を検索する(S125)。パラメータ検出部1124は、検索結果を用いてパラメータを生成する(S126)。パラメータ検出部1124は、生成されたパラメータを優先度設定部113に出力する(S127)。 The parameter detection unit 1124 accesses the request recording unit 1128 and searches for request messages 300 that are older than the requestTime 302 acquired in step S124 (S125). The parameter detection unit 1124 generates parameters using the search results (S126). The parameter detection unit 1124 outputs the generated parameters to the priority setting unit 113 (S127).

例えば、汎用性の高いデータを要求する場合、パラメータ検出部1124は、requestTime302より一定期間の過去で、appricationID303が異なり、かつquery305の同じデータを要求したリクエストメッセージ300を検索しする。 For example, when requesting highly versatile data, the parameter detection unit 1124 searches for a request message 300 that has a different application ID 303 and requests the same data in query 305 within a certain period of time in the past from requestTime 302.

パラメータ検出部1124は、同じデータを利用しているアプリケーションの数を特定し、アプリケーションの数が多い(又は最大)リクエストメッセージ300のquery305からパラメータを生成し(S126)、優先度設定部113に送信する(S127)。 The parameter detection unit 1124 identifies the number of applications that use the same data, generates parameters from the query 305 of the request message 300 with the largest (or largest) number of applications (S126), and transmits them to the priority setting unit 113 (S127).

次に、リクエスト分析部112のリクエスト取得部1121は、優先度設定部113からパラメータの受信完了の通知(レスポンス)を待って処理を終了する(S128)。 Next, the request acquisition unit 1121 of the request analysis unit 112 waits for a notification (response) from the priority setting unit 113 that the parameters have been received, and then ends the process (S128).

なお、特定したアプリケーション数は毎回のリクエストメッセージ300に対して算出するか、算出したアプリケーション数をリクエスト記録部1128に一定時間記録しておいて、以降のリクエストメッセージ300はその値をパラメータとして設定する方法もある。優先度設定部113の優先度計算部1132は、実施例1と同様の方法で、可変優先度の設定を実施する。 The number of identified applications can be calculated for each request message 300, or the calculated number of applications can be recorded in the request recording unit 1128 for a certain period of time, and the value can be set as a parameter for subsequent request messages 300. The priority calculation unit 1132 of the priority setting unit 113 sets variable priorities in the same manner as in the first embodiment.

実施例3により、過去のリクエストメッセージ300の情報を用いて、優先順位を上げ、リクエストメッセージ300の処理を迅速化することで、データ取得までの時間を短縮することができる。 In Example 3, by using information on past request messages 300, the priority can be increased and the processing of the request messages 300 can be expedited, thereby shortening the time it takes to obtain data.

<結び>
以上のように、上記実施例のデータ要求処理装置1は、以下のような構成とすることができる。
<Conclusion>
As described above, the data request processing device 1 of the above embodiment can be configured as follows.

(1)プロセッサ(21)とメモリを有するデータ要求処理装置(1)であって、データベース(5又は外部データベース6)に格納されているデータをリクエストするメッセージ(リクエストメッセージ300)を受信し、前記メッセージ(300)に含まれるデータ要求(query305)に優先度(可変優先度)を設定して、前記優先度に応じて前記データ要求(305)の処理順序を決定する優先度制御部(11)を有し、前記優先度制御部(11)は、前記メッセージ(300)を受信する受信部(リクエスト受信部111)と、前記メッセージ(300)に含まれるデータ要求(305)を取得し、前記データ要求(305)を分析して、前記優先度の設定に必要なパラメータ(推定レスポンス時間(実測レスポンス時間1204)又は外部アクセス判定結果)を生成する分析部(リクエスト分析部112)と、前記パラメータ(1204又は外部アクセス判定結果)を用いて前記データ要求(305)に優先度を設定する優先度設定部(113)と、を有し、前記優先度設定部(113)は、前記パラメータ(1204又は外部アクセス判定結果)を受け付けて、所定のルールで前記パラメータ(1204又は外部アクセス判定結果)を分類し、前記分類の結果に応じて前記データ要求(305)の優先度(可変優先度)を設定することを特徴とするデータ要求処理装置。 (1) A data request processing device (1) having a processor (21) and a memory, the device having a priority control unit (11) that receives a message (request message 300) requesting data stored in a database (5 or an external database 6), sets a priority (variable priority) for a data request (query 305) included in the message (300), and determines the processing order of the data request (305) according to the priority, the priority control unit (11) having a receiving unit (request receiving unit 111) that receives the message (300), obtains the data request (305) included in the message (300), and divides the data request (305) into A data request processing device comprising: an analysis unit (request analysis unit 112) that analyzes the request and generates parameters (estimated response time (actual response time 1204) or external access judgment result) necessary for setting the priority; and a priority setting unit (113) that sets a priority for the data request (305) using the parameters (1204 or external access judgment result), wherein the priority setting unit (113) accepts the parameters (1204 or external access judgment result), classifies the parameters (1204 or external access judgment result) according to a predetermined rule, and sets a priority (variable priority) for the data request (305) according to the result of the classification.

上記構成により、データ要求処理装置1は、パラメータ(1204又は外部アクセス判定結果)の状況に応じてダイナミックでかつ柔軟にリクエストの優先度を制御して、リアルタイム性が必要なアプリケーションは安定的にデータを取得することができる。 With the above configuration, the data request processing device 1 dynamically and flexibly controls the priority of requests depending on the status of the parameters (1204 or external access judgment result), allowing applications that require real-time performance to stably obtain data.

(2)上記(1)に記載のデータ要求処理装置であって、前記分析部(112)は、過去に算出されたレスポンス時間(実測レスポンス時間1204)を蓄積したテーブル(レスポンス時間テーブル1125)を参照し、前記データ要求(305)に対応するレスポンス時間(1204)を取得して前記パラメータとして出力し、前記優先度設定部(113)は、前記レスポンス時間(推定レスポンス時間)に応じて前記データ要求(305)に前記優先度を設定することを特徴とするデータ要求処理装置。 (2) A data request processing device according to (1) above, characterized in that the analysis unit (112) refers to a table (response time table 1125) that accumulates previously calculated response times (actual response times 1204), obtains the response time (1204) corresponding to the data request (305), and outputs it as the parameter, and the priority setting unit (113) sets the priority to the data request (305) according to the response time (estimated response time).

上記構成により、データ要求処理装置1は、レスポンスまでにかかった時間情報(推定レスポンス時間)に基づいて、優先順位(可変優先度)を変更し、リクエストメッセージの処理を迅速化することで、端末100から要求されたデータの取得までの時間を短縮することができる。 With the above configuration, the data request processing device 1 can change the priority (variable priority) based on the time information (estimated response time) taken to respond, and speed up the processing of the request message, thereby shortening the time it takes to obtain the data requested by the terminal 100.

(3)上記(2)に記載のデータ要求処理装置であって、前記優先度設定部(113)が設定した前記優先度に応じた前記データ要求(305)を前記データベース(5、6)に送信するスケジューリング部(12)を、さらに有し、前記分析部(112)は、前記データ要求(305)が前記スケジューリング部(12)で送信されてから前記データベース(5、6)からの応答を受け付けるまでの時間をレスポンス時間(1204)として計算して前記テーブル(1125)に蓄積するレスポンス時間計算部(1126)を、さらに有することを特徴とするデータ要求処理装置。 (3) The data request processing device according to (2) above, further comprising a scheduling unit (12) that transmits the data request (305) to the database (5, 6) according to the priority set by the priority setting unit (113), and the analysis unit (112) further comprises a response time calculation unit (1126) that calculates the time from when the data request (305) is transmitted by the scheduling unit (12) to when a response is received from the database (5, 6) as a response time (1204) and stores the calculated time in the table (1125).

上記構成により、データ要求処理装置1は、レスポンスまでにかかった時間情報(推定レスポンス時間)に基づいて、優先順位(可変優先度)を変更し、リクエストメッセージの処理を迅速化することで、端末100から要求されたデータの取得までの時間を短縮することができる。 With the above configuration, the data request processing device 1 can change the priority (variable priority) based on the time information (estimated response time) taken to respond, and speed up the processing of the request message, thereby shortening the time it takes to obtain the data requested by the terminal 100.

(4)上記(1)に記載のデータ要求処理装置であって、 前記優先度設定部(113)は、前記分析部(112)から出力されたパラメータ(1204又は外部アクセス判定結果)と、予め設定された閾値とを比較して、前記比較の結果に応じて前記データ要求(305)の前記優先度を設定することを特徴とするデータ要求処理装置。 (4) The data request processing device according to (1) above, characterized in that the priority setting unit (113) compares the parameter (1204 or the external access judgment result) output from the analysis unit (112) with a preset threshold value, and sets the priority of the data request (305) according to the result of the comparison.

上記構成により、データ要求処理装置1は、レスポンスまでにかかった時間情報(推定レスポンス時間)と所定の閾値に基づいて、優先順位(可変優先度)を変更し、リクエストメッセージの処理を迅速化することで、端末100から要求されたデータの取得までの時間を短縮することができる。 With the above configuration, the data request processing device 1 can change the priority (variable priority) based on the time information taken for a response (estimated response time) and a predetermined threshold value, and speed up the processing of the request message, thereby shortening the time it takes to obtain the data requested by the terminal 100.

(5)上記(2)に記載のデータ要求処理装置であって、前記分析部(112)は、複数の前記データ要求(305)について前記レスポンス時間を取得して、前記複数のメッセージと複数の前記レスポンス時間を前記優先度設定部(113)に出力し、前記優先度設定部(113)は、前記複数のレスポンス時間に応じて、前記複数のデータ要求(305)の優先度を設定することを特徴とするデータ要求処理装置。 (5) The data request processing device according to (2) above, characterized in that the analysis unit (112) acquires the response times for the plurality of data requests (305) and outputs the plurality of messages and the plurality of response times to the priority setting unit (113), and the priority setting unit (113) sets priorities for the plurality of data requests (305) according to the plurality of response times.

上記構成により、パラメータ検出部1124が、複数のリクエストメッセージ300について推定レスポンス時間を取得して、複数のリクエストメッセージ300と複数の推定レスポンス時間を優先度設定部113に出力することができる。この場合、パラメータ受信部1131で、複数のリクエストメッセージと複数の推定レスポンス時間を優先度計算部1132に出力し、優先度計算部1132は、複数のリクエストメッセージの推定レスポンス時間を比較して、推定レスポンス時間が最長時間か、推定レスポンス時間が長い上位いくつかの優先順位を上げることができる。 With the above configuration, the parameter detection unit 1124 can obtain estimated response times for multiple request messages 300 and output the multiple request messages 300 and the multiple estimated response times to the priority setting unit 113. In this case, the parameter receiving unit 1131 outputs the multiple request messages and the multiple estimated response times to the priority calculation unit 1132, and the priority calculation unit 1132 compares the estimated response times of the multiple request messages and can raise the priority of the request message with the longest estimated response time or the top several messages with the longest estimated response times.

また、パラメータ受信部1131から、一定期間の間に貯められたリクエストメッセージのパラメータ(1204又は外部アクセス判定結果)を優先度計算部1132に出力する場合、優先度計算部1132は、推定レスポンス時間が最長時間か、推定レスポンス時間が上位いくつかのリクエストメッセージか、推定レスポンス時間が上位何割かのリクエストメッセージの優先順位を上げることも可能である。 In addition, when the parameter receiving unit 1131 outputs the parameters (1204 or external access judgment results) of the request messages accumulated over a certain period of time to the priority calculation unit 1132, the priority calculation unit 1132 can also raise the priority of the request messages with the longest estimated response time, those with the top few estimated response times, or those with the top percentage of estimated response times.

(6)上記(2)に記載のデータ要求処理装置であって、前記受信部は、前記優先度の変更要求を受信し、前記分析部(112)は、前記優先度の変更要求の可否の問い合せを出力し、前記問い合せに対する応答を受け付け、当該応答の内容(True又はFalse)を前記優先度設定部(113)に出力し、前記優先度設定部(113)は、前記応答の内容に応じて前記優先度を設定することを特徴とするデータ要求処理装置。 (6) The data request processing device according to (2) above, characterized in that the receiving unit receives the request to change the priority, the analysis unit (112) outputs an inquiry as to whether the priority change request is acceptable, receives a response to the inquiry, outputs the content of the response (True or False) to the priority setting unit (113), and the priority setting unit (113) sets the priority according to the content of the response.

上記構成により、データ要求処理装置1は、停電が起きた場合の電力インフラの保守アプリケーションや、洪水が起きた場合の下水道インフラの保守アプリケーションなど、平常より、優先されるべき事故や災害が発生した場合、それらのアプリケーション2が優先度変更を要求する場合に、データ要求処理装置1は当該アプリケーション2の優先順位を上げることが可能となる。 With the above configuration, when an accident or disaster occurs that should be prioritized over normal times, such as a power infrastructure maintenance application in the event of a power outage or a sewer infrastructure maintenance application in the event of a flood, and such application 2 requests a priority change, the data request processing device 1 can raise the priority of that application 2.

(7)上記(6)に記載のデータ要求処理装置であって、前記分析部(112)は、前記問い合せに対する応答がTrueを含む場合には、前記優先度設定部(113)に前記優先度の変更要求を通知し、前記優先度設定部(113)は、前記通知に応じて前記優先度を設定することを特徴とするデータ要求処理装置。 (7) The data request processing device according to (6) above, characterized in that, when the response to the inquiry includes True, the analysis unit (112) notifies the priority setting unit (113) of a request to change the priority, and the priority setting unit (113) sets the priority in response to the notification.

上記構成により、優先度設定部113の優先度計算部1132は、受け付けたパラメータ(1204)が0値であれば、アプリ優先度(304)をそのまま可変優先度に設定し、0でなければ、要求優先度を可変優先度に設定して出力することができる。 With the above configuration, if the received parameter (1204) is 0, the priority calculation unit 1132 of the priority setting unit 113 sets the application priority (304) to a variable priority as is, and if the parameter is not 0, the requested priority can be set to a variable priority and output.

(8)上記(1)に記載のデータ要求処理装置であって、前記分析部(112)は、過去のメッセージ(300)に含まれるデータ要求(305)を記録する記録部(1128)と、前記記録部(1128)から過去のデータ要求(305)を検索して、前記パラメータ(1204又は外部アクセス判定結果)を生成する検出部(パラメータ検出部1124)と、を有することを特徴とするデータ要求処理装置。 (8) The data request processing device according to (1) above, characterized in that the analysis unit (112) has a recording unit (1128) that records the data request (305) included in the past message (300), and a detection unit (parameter detection unit 1124) that searches the recording unit (1128) for the past data request (305) and generates the parameter (1204 or external access judgment result).

上記構成により、データ要求処理装置1は、過去のリクエストメッセージ300の情報を用いて、優先順位を上げ、リクエストメッセージ300の処理を迅速化することで、データ取得までの時間を短縮することができる。 With the above configuration, the data request processing device 1 can use information from past request messages 300 to increase the priority and speed up the processing of the request messages 300, thereby shortening the time it takes to obtain data.

(9)上記(1)に記載のデータ要求処理装置であって、上記(8)に記載のデータ要求処理装置であって、前記検出部(1124)は、前記記録部(1128)から、異なるアプリケーションで、かつ、前記データ要求(305)と同一のデータを要求した過去のデータ要求(305)を検索し、前記アプリケーションの数を取得し、前記アプリケーションの数が所定の条件を満たすデータ要求(305)からパラメータを生成することを特徴とするデータ要求処理装置。 (9) The data request processing device according to (1) above, which is also according to (8) above, characterized in that the detection unit (1124) searches the recording unit (1128) for past data requests (305) that are different applications and that request the same data as the data request (305), obtains the number of applications, and generates parameters from the data request (305) for which the number of applications satisfies a predetermined condition.

上記構成により、データ要求処理装置1は、アプリケーションの数が所定の条件(例えば、最大)を満たすデータ要求からパラメータ(1204又は外部アクセス判定結果)を生成することができ、過去のリクエストメッセージ300の情報を用いて、優先順位を上げ、リクエストメッセージ300の処理を迅速化することで、データ取得までの時間を短縮することができる。 With the above configuration, the data request processing device 1 can generate parameters (1204 or external access judgment results) from data requests in which the number of applications meets a predetermined condition (e.g., a maximum), and can shorten the time it takes to obtain data by increasing the priority and speeding up the processing of the request message 300 using information from past request messages 300.

なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。 The present invention is not limited to the above-described embodiments, but includes various modified examples. For example, the above-described embodiments are described in detail to clearly explain the present invention, and are not necessarily limited to those having all of the configurations described. It is also possible to replace part of the configuration of one embodiment with the configuration of another embodiment, and it is also possible to add the configuration of another embodiment to the configuration of one embodiment. In addition, the addition, deletion, or replacement of part of the configuration of each embodiment with other configurations can be applied alone or in combination.

また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、又は、ICカード、SDカード、DVD等の記録媒体に置くことができる。 The above configurations, functions, processing units, and processing means may be realized in part or in whole in hardware, for example by designing them as integrated circuits. The above configurations and functions may be realized in software by a processor interpreting and executing a program that realizes each function. Information on the programs, tables, files, etc. that realize each function may be stored in a memory, a recording device such as a hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card, or DVD.

また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。 In addition, the control lines and information lines shown are those considered necessary for the explanation, and not all control lines and information lines on the product are necessarily shown. In reality, it can be assumed that almost all components are interconnected.

1 データ要求処理装置
2 アプリケーション
3、4 ネットワーク
5 データベース
6 外部データベース
7 データ送信部
11 優先度制御部
12 スケジューリング部
111 リクエスト受信部
112 リクエスト分析部
113 優先度設定部
114 管理部
300 リクエストメッセージ
1121 リクエスト取得部
1122 アプリ優先度読み取り部
1123 クエリ読み取り部
1124 パラメータ検出部
1125 パラメータテーブル
1126 レスポンス時間計算部
1127 優先度変更要求取得部
1128 リクエスト記録部
1131 パラメータ受信部
1132 優先度計算部
1133 処理順序制御部
REFERENCE SIGNS LIST 1 Data request processing device 2 Application 3, 4 Network 5 Database 6 External database 7 Data transmission unit 11 Priority control unit 12 Scheduling unit 111 Request reception unit 112 Request analysis unit 113 Priority setting unit 114 Management unit 300 Request message 1121 Request acquisition unit 1122 Application priority reading unit 1123 Query reading unit 1124 Parameter detection unit 1125 Parameter table 1126 Response time calculation unit 1127 Priority change request acquisition unit 1128 Request recording unit 1131 Parameter reception unit 1132 Priority calculation unit 1133 Processing order control unit

Claims (4)

プロセッサとメモリを有するデータ要求処理装置であって、
データベースに格納されているデータをリクエストするメッセージを受信し、前記メッセージに含まれるデータ要求に優先度を設定して、前記優先度に応じて前記データ要求の処理順序を決定する優先度制御部を有し、
前記優先度制御部は、
前記メッセージを受信する受信部と、
前記メッセージに含まれるデータ要求を取得し、前記データ要求を分析して前記優先度の設定に必要なパラメータを生成する分析部と、
前記パラメータを用いて前記データ要求に優先度を設定する優先度設定部と、を有し、
前記優先度設定部は、
前記パラメータを受け付けて、所定のルールで前記パラメータを分類し、前記分類の結果に応じて前記データ要求の優先度を設定し、
前記分析部は、
過去のメッセージに含まれるデータ要求を記録する記録部と、
前記記録部から過去のデータ要求を検索して、前記パラメータを生成する検出部と、を有し、
前記検出部は、
前記記録部から、異なるアプリケーションで、かつ、前記データ要求と同一のデータを要求した過去のデータ要求を検索し、前記アプリケーションの数を取得し、前記アプリケーションの数が所定の条件を満たすデータ要求からパラメータを生成することを特徴とするデータ要求処理装置。
A data request processing device having a processor and a memory,
a priority control unit that receives a message requesting data stored in a database, sets priorities for the data requests included in the message, and determines an order of processing the data requests in accordance with the priorities;
The priority control unit
A receiving unit for receiving the message;
an analysis unit that acquires a data request included in the message, analyzes the data request, and generates parameters necessary for setting the priority;
a priority setting unit that sets a priority to the data request using the parameter,
The priority setting unit
receiving the parameters, classifying the parameters according to a predetermined rule, and setting a priority of the data request according to a result of the classification ;
The analysis unit includes:
a recorder for recording data requests included in past messages;
a detection unit that searches the recording unit for past data requests and generates the parameters;
The detection unit is
A data request processing device characterized by searching the recording unit for past data requests that were made using a different application and that requested the same data as the data request, obtaining the number of the applications, and generating parameters from a data request for which the number of applications satisfies a predetermined condition .
請求項1に記載のデータ要求処理装置であって、2. The data request processing device according to claim 1,
前記優先度設定部は、The priority setting unit
前記分析部から出力されたパラメータと、予め設定された閾値とを比較して、前記比較の結果に応じて前記データ要求の前記優先度を設定することを特徴とするデータ要求処理装置。2. A data request processing device comprising: a processor for processing data requests, the processor for processing data requests being processed by a processor for processing data; a processor for processing data being processed by a processor for processing data;
プロセッサとメモリを有する計算機で、データ要求を処理するデータ要求処理方法であって、A data request processing method for processing a data request in a computer having a processor and a memory, comprising:
前記計算機が、データベースに格納されているデータをリクエストするメッセージを受信する受信ステップと、a receiving step by said computer receiving a message requesting data stored in a database;
前記計算機が、前記メッセージに含まれるデータ要求を取得し、前記データ要求を分析して優先度の設定に必要なパラメータを生成する分析ステップと、an analysis step in which the computer acquires a data request included in the message and analyzes the data request to generate parameters necessary for setting a priority;
前記計算機が、前記パラメータを受け付けて、所定のルールで前記パラメータを分類し、前記分類の結果に応じて前記データ要求の前記優先度を設定して、前記優先度に応じて前記データ要求の処理順序を決定する優先度設定ステップと、a priority setting step in which the computer receives the parameters, classifies the parameters according to a predetermined rule, sets the priority of the data requests in accordance with a result of the classification, and determines a processing order of the data requests in accordance with the priority;
を含み、Including,
前記分析ステップは、The analyzing step includes:
過去のメッセージに含まれるデータ要求を記録する記録ステップと、a recording step of recording data requests contained in past messages;
前記記録ステップで記録された過去のデータ要求を検索して、前記パラメータを生成する検出ステップと、を含み、a detection step of searching for past data requests recorded in the recording step to generate the parameters;
前記検出ステップは、前記記録ステップで記録された過去のデータ要求において、異なるアプリケーションで、かつ、前記データ要求と同一のデータを要求した過去のデータ要求を検索し、前記アプリケーションの数を取得し、前記アプリケーションの数が所定の条件を満たすデータ要求からパラメータを生成することを特徴とするデータ要求処理方法。The detection step is characterized in that, among past data requests recorded in the recording step, a past data request that requested the same data as the data request from a different application is searched for, the number of the applications is obtained, and a parameter is generated from a data request for which the number of applications satisfies a predetermined condition.
プロセッサとメモリを有する計算機で、データ要求を処理させるためのプログラムを格納した記憶媒体であって、A storage medium storing a program for causing a computer having a processor and a memory to process a data request,
データベースに格納されているデータをリクエストするメッセージを受信する受信ステップと、a receiving step of receiving a message requesting data stored in a database;
前記メッセージに含まれる前記データ要求を取得し、前記データ要求を分析して優先度の設定に必要なパラメータを生成する分析ステップと、an analysis step of acquiring the data request included in the message and analyzing the data request to generate parameters necessary for setting a priority;
前記パラメータを受け付けて、所定のルールで前記パラメータを分類し、前記分類の結果に応じて前記データ要求の前記優先度を設定して、前記優先度に応じて前記データ要求の処理順序を決定する優先度設定ステップと、を含み、a priority setting step of receiving the parameters, classifying the parameters according to a predetermined rule, setting the priority of the data requests according to a result of the classification, and determining a processing order of the data requests according to the priority,
前記分析ステップは、The analyzing step includes:
過去のメッセージに含まれるデータ要求を記録する記録ステップと、a recording step of recording data requests contained in past messages;
前記記録ステップで記録された過去のデータ要求を検索して、前記パラメータを生成する検出ステップと、を含み、a detection step of searching for past data requests recorded in the recording step to generate the parameters;
前記検出ステップは、前記記録ステップで記録された過去のデータ要求において、異なるアプリケーションで、かつ、前記データ要求と同一のデータを要求した過去のデータ要求を検索し、前記アプリケーションの数を取得し、前記アプリケーションの数が所定の条件を満たすデータ要求からパラメータを生成する、処理を前記計算機に実行させるためのプログラムを格納した非一時的な計算機読み取り可能な記憶媒体。The detection step is a non-transitory computer-readable storage medium storing a program for causing the computer to execute a process of searching for past data requests recorded in the recording step that were made using different applications and that requested the same data as the data request, obtaining the number of the applications, and generating parameters from data requests for which the number of the applications satisfies a predetermined condition.
JP2020189329A 2020-11-13 2020-11-13 Data request processing device, data request processing method and storage medium Active JP7464503B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020189329A JP7464503B2 (en) 2020-11-13 2020-11-13 Data request processing device, data request processing method and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020189329A JP7464503B2 (en) 2020-11-13 2020-11-13 Data request processing device, data request processing method and storage medium

Publications (2)

Publication Number Publication Date
JP2022078575A JP2022078575A (en) 2022-05-25
JP7464503B2 true JP7464503B2 (en) 2024-04-09

Family

ID=81706906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020189329A Active JP7464503B2 (en) 2020-11-13 2020-11-13 Data request processing device, data request processing method and storage medium

Country Status (1)

Country Link
JP (1) JP7464503B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339243A (en) 2004-05-27 2005-12-08 Fuji Xerox Co Ltd Printing control device, method, and program
JP2006190005A (en) 2005-01-04 2006-07-20 Internatl Business Mach Corp <Ibm> Priority determination device, service process allocation device, control method, and program
JP2006313576A (en) 2006-08-24 2006-11-16 Fujitsu Ltd Service providing order changing method, service providing apparatus, and service providing program
JP2008191819A (en) 2007-02-02 2008-08-21 Toshiba Corp Online trading system
CN110928944A (en) 2018-08-30 2020-03-27 阿里巴巴集团控股有限公司 Data processing method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339243A (en) 2004-05-27 2005-12-08 Fuji Xerox Co Ltd Printing control device, method, and program
JP2006190005A (en) 2005-01-04 2006-07-20 Internatl Business Mach Corp <Ibm> Priority determination device, service process allocation device, control method, and program
JP2006313576A (en) 2006-08-24 2006-11-16 Fujitsu Ltd Service providing order changing method, service providing apparatus, and service providing program
JP2008191819A (en) 2007-02-02 2008-08-21 Toshiba Corp Online trading system
CN110928944A (en) 2018-08-30 2020-03-27 阿里巴巴集团控股有限公司 Data processing method and device

Also Published As

Publication number Publication date
JP2022078575A (en) 2022-05-25

Similar Documents

Publication Publication Date Title
US11777949B2 (en) Dynamic user access control management
US9952753B2 (en) Predictive caching and fetch priority
US9304815B1 (en) Dynamic replica failure detection and healing
US11275667B2 (en) Handling of workload surges in a software application
CN100517317C (en) Method, system, and program product for maintaining a fileset namespace accessible by clients over a network
CN107451853B (en) A method, device, system and storage medium for real-time distribution of red envelopes
CN107491470B (en) Data management system, control method, and storage medium
EP4080377B1 (en) Method to implement multi-tenant/shared redis cluster using envoy
US8135762B2 (en) System and method for determining true computer file type identity
CN106874423B (en) Search control method and system
CN114661419A (en) Service quality control system and method
WO2024119793A1 (en) Scheduling method, system and device based on cache affinity, and medium
US12020081B2 (en) Method to implement multi-tenant/shared redis cluster using envoy
US20100161585A1 (en) Asymmetric cluster filesystem
JP2018092389A (en) File management device and program
CN119441171A (en) Distributed object storage method, device, equipment and medium
US20130132552A1 (en) Application-Aware Quality Of Service In Network Applications
JP7464503B2 (en) Data request processing device, data request processing method and storage medium
JP6607044B2 (en) Server device, distributed file system, distributed file system control method, and program
JP6076882B2 (en) Information processing system, management device, and key assignment program
JP6127754B2 (en) Program, exclusive control request distribution method and system
US20210326386A1 (en) Information processing system, information processing device, and non-transitory computer-readable storage medium for storing program
CN120492188A (en) Interface aggregation request method, device, apparatus, storage medium and program product
JP2017117015A (en) Information processing system, proxy device, proxy control method, and proxy program
JP2020021344A (en) Information management apparatus, information management method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231010

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231206

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240328

R150 Certificate of patent or registration of utility model

Ref document number: 7464503

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150