JP2015135592A - Information processing system and information processing method - Google Patents
Information processing system and information processing method Download PDFInfo
- Publication number
- JP2015135592A JP2015135592A JP2014006626A JP2014006626A JP2015135592A JP 2015135592 A JP2015135592 A JP 2015135592A JP 2014006626 A JP2014006626 A JP 2014006626A JP 2014006626 A JP2014006626 A JP 2014006626A JP 2015135592 A JP2015135592 A JP 2015135592A
- Authority
- JP
- Japan
- Prior art keywords
- change request
- conversion
- request
- data
- job
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Facsimiles In General (AREA)
Abstract
Description
本発明は、情報処理システム及び情報処理方法に関する。 The present invention relates to an information processing system and an information processing method.
従来、デバイスと、ウェブサービスと、分散環境を提供するプラットフォームとを連携させて、画像処理などのサービスを提供するクラウドコンピューティングシステムは知られている(例えば特許文献1参照)。このようなクラウドコンピューティングシステムは、機器からジョブの処理依頼を受信し、ジョブに対応する処理を行う。 Conventionally, a cloud computing system that provides services such as image processing by linking a device, a web service, and a platform that provides a distributed environment is known (see, for example, Patent Document 1). Such a cloud computing system receives a job processing request from a device and performs processing corresponding to the job.
また、従来、複数の処理工程から構成されるジョブの実行中にエラーが発生した場合に、ジョブを処理済の部分と未処理の部分に分割するプログラムは知られている(例えば特許文献2参照)。 Conventionally, a program is known that divides a job into a processed part and an unprocessed part when an error occurs during execution of a job composed of a plurality of processing steps (see, for example, Patent Document 2). ).
例えば、あるデータ形式から他のデータ形式に変換する際、プログラムの独立性やメンテナンス性を高めるために、データ形式を変換するデータ変換エンジン(データ変換プログラム又はデータ変換ライブラリ)を用いる場合がある。 For example, when converting from one data format to another data format, a data conversion engine (data conversion program or data conversion library) that converts the data format may be used in order to increase the independence and maintainability of the program.
データ形式の変換に限らず、何らかの処理を実行する際、プログラムの独立性やメンテナンス性を高めるために、何らかの処理を実行する処理実行エンジン(処理実行プログラム又は処理実行ライブラリ)を用いる場合がある。 In addition to data format conversion, when executing some process, a process execution engine (process execution program or process execution library) that executes some process may be used to improve the independence and maintainability of the program.
しかしながら、データ形式の種類が多数の場合には入力データ形式の種類と出力データ形式の種類のペア分のデータ変換エンジンが必要になる。例えば、変換前のデータ形式の候補が3種類あり、変換後のデータ形式の候補が3種類あると、それぞれのパターンに応じたデータ変換エンジンを9種類用意する必要がある。すなわち、変換前又は変換後のデータ形式の選択肢が多くなればなるほど、用意しなければならないデータ変換エンジンの数が増える。このように、実行する処理の種類が多数の場合には処理の種類分の処理実行エンジンが必要となる。 However, when there are many types of data formats, a data conversion engine for a pair of input data format types and output data format types is required. For example, if there are three types of data format candidates before conversion and three types of data format candidates after conversion, it is necessary to prepare nine types of data conversion engines corresponding to the respective patterns. That is, the more data format options before or after conversion, the more data conversion engines that must be prepared. As described above, when there are a large number of types of processing to be executed, processing execution engines corresponding to the types of processing are required.
要約すると、データ変換処理など実行する処理の種類が多くなればなるほど、用意しなければならない処理実行エンジンの数が増えることが想定されるが、処理の種類の増加に柔軟に対応できないことが課題である。 In summary, it is expected that the more types of processing to be executed, such as data conversion processing, the more processing execution engines that must be prepared. However, the problem is that the increase in the types of processing cannot be flexibly handled. It is.
本発明の実施の形態は、上記の点に鑑みなされたもので、処理の種類の増加に柔軟に対応可能な情報処理システム及び情報処理方法を提供することを目的とする。 Embodiments of the present invention have been made in view of the above points, and an object thereof is to provide an information processing system and an information processing method that can flexibly cope with an increase in types of processing.
上記目的を達成するため、本発明の実施の形態は、1以上の情報処理装置により構成される情報処理システムであって、所定の処理をそれぞれ実行する複数の実行手段と、処理の実行要求を受信すると、該実行要求に係る該処理を、前記複数の実行手段のうち少なくとも2以上の実行手段にそれぞれ実行させる複数の処理に分割する処理分割手段と、前記処理分割手段により分割された複数の処理を記憶する記憶手段と、前記実行要求に対する処理を変更させる変更要求を受信すると、該変更要求を記憶する変更要求記憶手段と、を有し、前記複数の実行手段それぞれは、前記記憶手段に記憶された複数の処理のうち、自身で実行すべき処理を実行する前に、前記変更要求記憶手段に前記変更要求が記憶されているかを確認し、前記変更要求が記憶されていないときは、該自身で実行する処理を実行する一方、前記変更要求が記憶されているときは、前記記憶手段に記憶された複数の処理を該変更要求に基づいて書き換えることを特徴とする。 In order to achieve the above object, an embodiment of the present invention is an information processing system constituted by one or more information processing apparatuses, and includes a plurality of execution means for executing predetermined processes, and a process execution request. When received, a process dividing unit that divides the processing related to the execution request into a plurality of processes to be executed by at least two or more of the plurality of executing units, and a plurality of processes divided by the process dividing unit A storage unit that stores the process; and a change request storage unit that stores the change request when the change request for changing the process for the execution request is received, and each of the plurality of execution units stores the change request in the storage unit Before executing the process to be executed by itself among the plurality of stored processes, it is confirmed whether the change request is stored in the change request storage means, and the change request When the change request is stored, the plurality of processes stored in the storage unit are rewritten based on the change request while the change request is stored. And
本発明の実施の形態によれば、処理の種類の増加に柔軟に対応可能となる。 According to the embodiment of the present invention, it is possible to flexibly cope with an increase in types of processing.
[第1の実施形態]
以下、本発明の実施形態について図面を参照しながら説明する。
[First Embodiment]
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は本実施形態に係るクラウドサービスの一例を表した模式図である。クラウドサービスは、クラウドコンピューティングを利用してデータ形式の変換、文書ファイルの翻訳、プリントなどの各種サービスを提供する。ステップS1において、インプット側機器の一例としてのPC(パーソナルコンピュータ)12は例えばワードプロセッサアプリケーションなどで作成した電子文書ファイルをクラウド10上のサーバ11にアップロードする。なお、クラウド10上のサーバ11にアップロードするファイルは、電子文書ファイルに限られず、画像ファイル、動画ファイル、音声ファイルなどの各種電子データでもよい。
FIG. 1 is a schematic diagram illustrating an example of a cloud service according to the present embodiment. The cloud service uses cloud computing to provide various services such as data format conversion, document file translation, and printing. In step S <b> 1, a PC (personal computer) 12 as an example of an input side device uploads an electronic document file created by, for example, a word processor application to the
ステップS2において、サーバ11はアップロードされた電子文書ファイルを例えばPDFやRPCS(株式会社リコーが開発したページ記述言語)などの別のデータ形式への変換や電子文書ファイルの他言語への翻訳(データ変換処理)などを行う。アウトプット側機器の一例としてのPC13はステップS3において、クラウド10上でデータ変換処理を行ったデータを取得する。なお、例えばアウトプット側機器の他の例としてMFP(複合機)を用いて、取得したデータをプリントしてもよい。
In step S2, the
クラウド10側から見ると、PC12とPC13とはクライアントとなる。クライアントであるPC12とPC13は、クラウド10上のサーバ11と通信を行い、所与の目的を達成する。
When viewed from the cloud 10 side, the PC 12 and the PC 13 are clients. The clients PC 12 and PC 13 communicate with the
本実施形態のクラウドサービスではクラウド10上でデータ変換処理を行うため、クライアントであるPC12にデータ変換エンジンを持つ必要がない。ところが、クラウド10側で用意するデータ変換エンジンは多種多様な電子文書ファイルに対応する必要がある。また、電子文書ファイルの種類は今後も増えていく可能性がある。出力に関しても、データ変換エンジンはアウトプット側機器がPC13である場合の他、MFP(複合機)、プロジェクタや、或いは全く未知の機器への出力に対応する可能性がある。さらに、データ変換エンジンは別のクラウドサービスで利用できるデータ形式に対応する可能性もあり得る。 In the cloud service of the present embodiment, since data conversion processing is performed on the cloud 10, it is not necessary to have a data conversion engine in the PC 12 that is a client. However, the data conversion engine prepared on the cloud 10 side needs to support various electronic document files. In addition, there is a possibility that the types of electronic document files will continue to increase. Regarding output, the data conversion engine may support output to an MFP (multifunction peripheral), a projector, or a completely unknown device in addition to the case where the output side device is the PC 13. In addition, the data conversion engine may support data formats that can be used by other cloud services.
このような事情は、データ変換処理と同様、何らかの処理を実行するクラウド10側において共通の課題であると言える。例えばインプット側機器としてのMFP(複合機)を用いて、このMFP(複合機)でスキャンした画像をクラウド10側でOCR(Optical Character Reader)処理して、別のクラウドサービスが提供するオンラインストレージに保存する場合も共通の課題を有する。 Such a situation can be said to be a common problem on the side of the cloud 10 that executes some processing, as in the data conversion processing. For example, using an MFP (multifunction peripheral) as an input side device, an image scanned by this MFP (multifunction peripheral) is processed by the OCR (Optical Character Reader) on the cloud 10 side, and used as an online storage provided by another cloud service. Saving also has a common problem.
また、別のクラウドサービスが提供するオンラインストレージからファイルを読み出してプリントデータ(印刷ファイル)への変換やOCR処理などのデータ変換処理を行う場合も共通の課題を有する。 In addition, there is a common problem when a file is read from an online storage provided by another cloud service and data conversion processing such as conversion to print data (print file) or OCR processing is performed.
以下では、クラウド10上でデータ変換処理を行うクラウドサービスを一例として説明する。なお、上記したように、アウトプット側としてMFP(複合機)を用いたプリントサービス(クラウドプリント)や、MFP(複合機)でスキャンした画像をクラウド10側でOCR処理して、別のクラウドサービスが提供するオンラインストレージに保存処理などにも適用可能である。また、上記したように、別のクラウドサービスが提供するオンラインストレージからファイルを読み出して別のデータ形式への変換やOCR処理などを行う処理にも適用可能である。 Hereinafter, a cloud service that performs data conversion processing on the cloud 10 will be described as an example. As described above, a print service (cloud print) using an MFP (multi-function peripheral) on the output side or an image scanned by the MFP (multi-function peripheral) is OCR processed on the cloud 10 side to obtain another cloud service. It can also be applied to storage processing etc. in online storage provided by. Further, as described above, the present invention can also be applied to processing for reading a file from an online storage provided by another cloud service and performing conversion to another data format, OCR processing, or the like.
図1に示すクラウドサービスは、図2に示すようなクラウドコンピューティング型の情報処理システムで構成される。図2は本実施形態に係るクラウドサービスを実現する情報処理システムの構成例を示すブロック図である。 The cloud service shown in FIG. 1 includes a cloud computing type information processing system as shown in FIG. FIG. 2 is a block diagram illustrating a configuration example of an information processing system that realizes a cloud service according to the present embodiment.
ローカル側にはPC12、PC13が存在する。PC12及びPC13は、LANなどのネットワーク上のゲートウェイ等に設置されているファイヤウォール103を介してインターネットなどのネットワークに接続する。なお、本実施形態のクラウドサービスではPC12とPC13とが同一のネットワーク上にあってもよいし、なくてもよい。以下ではPC12とPC13とが同一のネットワーク上にないと仮定して説明する。
There are
図2において、クラウド側は、データ変換システム100、ジョブ管理サーバ102、リバースプロキシ104、認証サーバ105及び認証用データベース106を有する構成である。
In FIG. 2, the cloud side has a configuration including a
データ変換システム100は、非同期変換サーバ101、共有ファイルストレージ107、ジョブ情報管理データベース108、及び変更管理データベース109を有する。なお、共有ファイルストレージ107はデータ変換システム100の外側に置く設計としてもよい。さらに、図4に示すようにジョブ情報管理データベース108及び/又は変更管理データベース109は非同期変換サーバ101の一部として含まれる構成としてもよい。
The
データ変換システム100とジョブ管理サーバ102とは、ローカル側の機器であるPC12がアップロードしたジョブを管理/登録する。ローカル側の機器であるPC13からファイルの取得要求があった場合、データ変換システム100とジョブ管理サーバ102とは取得要求があったファイルをPC13に送信する。
The
ジョブは、ワードプロセッサアプリケーションなどで作成した電子文書ファイルが含まれる。データ変換システム100は、ジョブに含まれる電子文書ファイルを例えばテキスト形式からPDF形式の電子データに変換する。また、このとき、例えば電子文書ファイルを日本語から英語に翻訳変換することもできる。なお、本実施形態のクラウドサービスをクラウドプリントに適用した場合、データ変換システム100は、アウトプット側機器であるMFPで出力可能なデータ形式(ページ記述言語(PDL))の電子データであるプリントデータに変換する。
The job includes an electronic document file created by a word processor application or the like. The
図2に示した情報処理システムの利用例について図3を参照して説明する。図3は本実施形態に係るクラウドサービスの手順の一例を表したフローチャートである。 A usage example of the information processing system shown in FIG. 2 will be described with reference to FIG. FIG. 3 is a flowchart showing an example of the procedure of the cloud service according to the present embodiment.
ステップS101において、ユーザはPC12から本実施形態に係るクラウドサービスにログインする。認証処理は認証サーバ105が実行する。ステップS102において、ユーザはデータ形式の変換や言語の翻訳をしたい電子文書ファイルを、PC12から本実施形態に係るクラウドサービスにアップロードする。ステップS102の処理がジョブの登録である。ジョブの登録処理はジョブ管理サーバ102が実行する。ここまでがPC12から行われる手順である。
In step S101, the user logs in to the cloud service according to the present embodiment from the
ジョブが登録されると、本実施形態に係るクラウドサービスはバックグラウンドでデータ変換処理を行う。つまり、本実施形態に係るクラウドサービスは非同期処理の一例としてデータ変換処理を実現している。 When a job is registered, the cloud service according to the present embodiment performs data conversion processing in the background. That is, the cloud service according to the present embodiment realizes data conversion processing as an example of asynchronous processing.
ステップS103において、ジョブ管理サーバ102は登録された電子文書ファイルのデータ変換をデータ変換システム100に依頼する。また、ジョブ管理サーバ102は登録された電子文書ファイルのデータ変換の変更要求(例えば変換するデータ形式の変更や翻訳後の言語の変更)を受け付けた場合、変更後のデータ変換をデータ変換システム100に依頼する。ここで行われるデータ変換処理の詳細については後述する。
In step S103, the
ユーザはデータ変換を行ったファイルを取得する場合、PC13にて以下の一連の手順を行う。ステップS104において、クラウド側はPC13がクラウドサービスに対応の機器であるかを確かめる。機器としての認証である。これは、例えばアウトプット側機器がMFPであるような場合、そのMFPがクラウドサービスに対応していない場合があるからである。次に、ステップS105において、ユーザはPC13を操作してクラウドサービスにログインする。ユーザとしての認証である。
When the user acquires a file after data conversion, the user performs the following series of procedures on the
認証後、PC13はステップS106においてジョブ一覧をクラウドサービスから取得し、表示画面などに表示する。次にユーザはステップS107において、表示されているジョブ一覧の中から所望するジョブを選択する。
After the authentication, the
ユーザによりジョブが選択されると、PC13はステップS108においてクラウドサービスからジョブを取得する。クラウドサービスは、PC12にデータ変換エンジン(例えばデータ形式変換プログラムや翻訳プログラム)を用意する必要がない。なお、同様に、本実施形態に係るクラウドサービスをクラウドプリントに適用した場合、PC12にアウトプット側機器であるMFP(複合機)のプリンタドライバ(データ変換エンジン)を用意する必要がないので、例えば、会議資料を事前に作成/アップロードしておき、海外出張時に現地で印刷するような用途に有効である。
When a job is selected by the user, the
≪データ変換システム≫
本実施形態に係るデータ変換システム100は、多種多様なデータ変換要求に応えるため、また、データ変換要求の種類の増加に柔軟に対応するため、以下に説明する構成を備える。図4に、データ変換システム100の機能構成を示す。図4は本実施形態に係るデータ変換システムの構成例を示すブロック図である。
≪Data conversion system≫
The
図4に示すように、データ変換システム100は、フロントエンドアプリケーション102aと、共有ファイルストレージ107と、非同期変換サーバ101とを含む。フロントエンドアプリケーション102aはジョブ管理サーバ102の一機能である。非同期変換サーバ101は非同期変換サービスを提供する。また、非同期変換サーバ101は、データ変換要求管理手段111と、メッセージキュー112と、ジョブ情報管理データベース108と、変更管理データベース109と、複数の変換手段120を含む構成である。
As shown in FIG. 4, the
ジョブ管理サーバ102は、インプット側機器の一例としてのPC12から送信されたジョブを受信して、ジョブに含まれる電子文書ファイル等を共有ファイルストレージ107に登録する機能を備える。また、ジョブ管理サーバ102は、必要なファイル変換を判断して、データ変換システム100に変換を実行させる制御を行う。
The
データ変換システム100は、処理の単位であるタスクを定義し、複数のタスクをジョブとして取り扱う。データ変換システム100は、メッセージキュー112にジョブを登録しておき、変換手段120がジョブを一つずつ処理していく。変換手段120は、例えばWorkerにより実現される。
The
データ変換後のファイルは共有ファイルストレージ107に登録される。例えばアウトプット側機器の一例としてのPC13からファイルの取得要求を受信すると、ジョブ管理サーバ102は共有ファイルストレージ107に登録された変換後のファイルをPC13に送信する。
The file after data conversion is registered in the shared
フロントエンドアプリケーション102aは、必要なデータ変換を判断する機能を備える。フロントエンドアプリケーション102aは、例えばPC12が送信したジョブが画像データからPDFデータへのデータ変換を要求するものである場合、画像データ形式からPDFデータ形式へのデータ変換が必要と判断する。また、本実施形態に係るクラウドサービスをクラウドプリントに適用した場合において、例えば電子ファイルがドキュメントファイルであり、アウトプット側機器がRPCS対応の出力機器である場合、フロントエンドアプリケーション102aは、ドキュメントファイルのデータ形式からRPCSのデータ形式へのデータ変換が必要と判断する。
The front-
フロントエンドアプリケーション102aは、判断したデータ形式の種類を例えば「"type":"ocr2pdf"」のようなパラメータにして、非同期変換サーバ101に送信するリクエスト(ジョブ)に埋め込む。
The front-
同様に、データ変換元のデータのURI(Uniform Resource Identifier)もパラメータとしてリクエスト(ジョブ)に埋め込む。URIは共有ファイルストレージ107におけるデータの存在する場所の情報である。
Similarly, a URI (Uniform Resource Identifier) of data to be converted is embedded as a parameter in a request (job). The URI is information on a location where data exists in the shared
データ変換の種類とデータのURIを少なくとも含むリクエストを受け取った非同期変換サーバ101では、データ変換要求管理手段111がリクエストを受け取る。データ変換要求管理手段111は、データ変換に係るリクエストを解析して、データ変換の種類に合致するメッセージキュー112に、ジョブ(メッセージ)を入れる。
In the
データ変換要求管理手段111は、メッセージキュー112にジョブ(メッセージ)を入れることと同時に並行して、ジョブ情報管理データベース108に、当該リクエスト(ジョブ)の情報を登録する。このとき、データ変換要求管理手段111は、当該リクエスト(ジョブ)の情報を一意に識別するIDを採番し、ジョブ情報管理データベース108に登録する。
The data conversion
また、データ変換要求管理手段111は、ジョブ情報管理データベース108に登録済の情報に対する変更要求(変更リクエスト)をフロントエンドアプリケーション102aから受け取った場合、当該変更リクエストの情報を変更管理データベース109に登録する。なお、変更リクエストには、変更後のデータ変換の種類に加えて、変更対象であるリクエストの情報を一意に識別するIDが含まれる。また、変更リクエストには、URIが含まれていてもよい。
When the data conversion
なお、データ変換要求管理手段111は、フロントエンドアプリケーション102aから受け取った情報が、リクエスト又は変更リクエストのいずれであるかをIDの有無で判断する。すなわち、データ変換要求管理手段111は、フロントエンドアプリケーション102aから受け取った情報に、ジョブの情報を一意に識別するIDが指定されていない合、リクエストであると判断し、IDが指定されている場合、変更リクエストであると判断する。
Note that the data conversion
ジョブ情報管理データベース108に登録される情報は、ジョブ(リクエスト)の情報を一意に識別するID、ファイルの場所(共有ファイルストレージ107上のURI)、ジョブ(リクエスト)に含まれるデータ変換の種類、当該リクエストの状態などである。リクエストの状態としては、「データ変換実行中」、「データ変換中継中」、「データ変換完了」などがある。リクエストの状態は、データ変換の処理状況を示すステータスを表す。
Information registered in the job
変更管理データベース109に登録される情報は、変更対象であるリクエストの情報を一意に識別するID、変更リクエストに含まれるデータ変換の種類などである。例えば、変換対象のデータを変更する場合、URIが含まれていてもよい。変更管理データベース109にIDを登録することで、ジョブ情報管理データベース108に登録されているどのジョブ(リクエスト)の情報に対する変更なのかを関連付けることができる。
Information registered in the
メッセージキュー112は複数の変換手段120に対応するキューを有する。図4では変換手段120とメッセージキュー112が有するキューとが一対一に対応する例を示しているが、多対多に対応していてもよい。
The
各変換手段120は、その変換手段120に対応するキューを監視しており、キューにメッセージ(ジョブ)が入ると、ジョブ情報管理データベース108に登録された、そのメッセージ(ジョブ)に対応するジョブ(リクエスト)の情報を取りに行く。また、各変換手段120は、ジョブ情報管理データベース108から取得したリクエストの情報に対応する変更リクエストの情報の有無を、変更管理データベース109を参照して確認する。各変換手段120は、ジョブ情報管理データベース108から取得したリクエストの情報に含まれるURIに基づいて、共有ファイルストレージ107上のデータを取得する。
Each
そして、各変換手段120は、リクエストの情報及び変更リクエストの情報に基づいて、取得したデータの変換を行う。各変換手段120は、変換後のデータを共有ファイルストレージ107上に登録し、ジョブ情報管理データベース108上に登録されたリクエストの情報(具体的にはリクエストの状態)を書き換えて更新する。また、後述するように連携してデータ変換する場合、各変換手段120はデータ変換した後、新たなメッセージを次にデータ変換を行う変換手段120のキューに入れる。
Each
複数の変換手段120は、図5に示すように、変換処理ライブラリ120aと変換エンジン120bを備える構成である。変換処理ライブラリ120aは、その変換手段120に対応するキューを監視する処理や、変換後のデータを共有ファイルストレージ107上に登録する処理、変更管理データベース109を参照して変更リクエストの有無を確認する処理などを実行する。
As shown in FIG. 5, the plurality of conversion means 120 are configured to include a
また、変換処理ライブラリ120aは、ジョブ情報管理データベース108上に登録されたリクエストの情報を書き換えて更新する処理などを行う。また、変換処理ライブラリ120aは、連携してデータ変換する場合にデータ変換後の新たなメッセージを次にデータ変換を行う変換手段120のキューに入れる処理などを実行する。
Also, the
変換エンジン120bとしては、例えば、以下のようなものがある。
・ocr2txt:JPEG(Joint Photographic Experts Group)などの画像データをテキスト形式のデータに変換するエンジン
・txt2doc:テキスト形式のデータをドキュメントファイル形式のデータに変換するエンジン
・txt2pdf:テキスト形式のデータをPDF形式のデータに変換するエンジン
・txt2eng:日本語を英語に翻訳変換するエンジン
・txt2dut:日本語をオランダ語に翻訳変換するエンジン
次に、非同期変換サーバ101による非同期変換サービスの流れについて、説明する。まず、ユーザがクラウド10上にジョブを登録した後に、変更要求を行わない場合の処理について説明する。また、ユーザがデータ形式の変換を要求したリクエスト(処理実行要求)を行った場合について説明する(ユーザが電子文書ファイルの言語の翻訳変換を要求したリクエストを行う場合については、第2の実施形態で説明する。)。図6は、本実施形態に係る非同期変換サーバの動作の一例を示すシーケンス図である。
Examples of the conversion engine 120b include the following.
Ocr2txt: an engine that converts image data such as JPEG (Joint Photographic Experts Group) into text format data txt2doc: an engine that converts text format data into document file format data txt2pdf: text format data in PDF format Txt2eng: an engine that translates and converts Japanese into English txt2dut: an engine that translates and translates Japanese into Dutch Next, the flow of an asynchronous conversion service by the
ステップS11において、フロントエンドアプリケーション102aは共有ファイルストレージ107に登録しておいたデータに対するデータ変換の要求(ジョブ登録依頼)を非同期変換サーバ101のデータ変換要求管理手段111に対して行う。つまり、非同期変換サービスは、フロントエンドアプリケーション102aが共有ファイルストレージ107に登録しておいたデータに対するデータ変換の要求(リクエスト)をデータ変換要求管理手段111に送信すると始まる。
In step S <b> 11, the front-
ステップS11で送信されるリクエストは例えば図7(a)に示すような情報である。図7(a)の例では、データ形式を画像データからPDF形式にデータ変換するリクエストであることを示す「"type":"ocr2pdf"」と記述されている。また、図7(a)に示すリクエストには、データ変換しようとしているデータのURIが「"file":"http://example.com/sample.jpg"」と記述されている。 The request transmitted in step S11 is information as shown in FIG. In the example of FIG. 7A, ““ type ”:“ ocr2pdf ”” indicating that the data format is a request for data conversion from image data to PDF format is described. Also, in the request shown in FIG. 7A, the URI of the data to be converted is ““ file ”:” http: // example. com / sample. jpg "".
ステップS12において、ジョブ(リクエスト)を受信したデータ変換要求管理手段111はジョブを解析して、データ変換の種類に合致する変換手段120があるか否かを判定する。データ変換の種類に合致する変換手段120がある場合、データ変換要求管理手段111は、その変換手段120に対応するメッセージキュー112のキューに、ジョブ(メッセージ)を登録する。また、このとき、データ変換要求管理手段111は、フロントエンドアプリケーション102aから受信したリクエストの情報(ジョブの情報)をジョブ情報管理データベース108に登録する。図7(b)はジョブ情報管理データベース108に登録したリクエストの情報である。データ変換要求管理手段111は、リクエストの情報を一意に識別するIDを採番し、このIDをリクエストの情報に埋め込んだ上で登録する。図7(b)に示す例では、「"_ID":12345」とIDが記述されている。
In step S12, the data conversion
ステップS13において、データ変換要求管理手段111はジョブ登録結果をフロントエンドアプリケーション102aに返す。ここでは、第1の変換手段121に対応するメッセージキュー112のキューにジョブが登録されたものとして説明を続ける。
In step S13, the data conversion
ステップS14において、自身が処理できるジョブに対応するキューを監視している第1の変換手段121はキューにジョブが登録されたことを検知する。
In step S14, the
ステップS15において、第1の変換手段121は変更管理データベース109を参照し変更要求(変更リクエスト)の有無を確認する。例えば、第1の変換手段121は「"_ID":12345」に該当する変更リクエストの情報が変更管理データベース109に登録されているか否かを判断し、登録されている場合、変更要求があったと判断する。
In step S <b> 15, the
ステップS16において、第1の変換手段121はキューに登録されたジョブの情報(リクエストの情報)をジョブ情報管理データベース108から取得する。
In step S <b> 16, the
第1の変換手段121は取得したジョブの情報(リクエストの情報)に含まれるタスクの内容を解析し、そのタスクを変換手段120でデータ変換できる種類のタスクに分割する。ステップS16におけるタスクの分割は、タスク分割定義に基づいて行われる。図8は、本実施形態に係るタスク分割定義の一例を説明するための図である。図8のタスク分割では、「ocr2pdf」は画像データからテキスト形式のデータに変換するタスク「ocr2txt」と、テキスト形式のデータをPDF形式のデータに変換するタスク「txt2pdf」に分割できることを示している。同様に、図8の例では、「ocr2doc」は画像データからテキスト形式のデータに変換するタスク「ocr2txt」と、テキスト形式のデータをドキュメント形式のデータに変換するタスク「txt2doc」に分割できることを示している。
The
したがって、第1の変換手段121は、図9(a)に示すような「ocr2pdf」のタスクが含まれるリクエストの情報(ジョブの情報)は、図9(b)に示すような「ocr2txt」のタスクと「txt2pdf」のタスクを含むリクエストの情報(ジョブの情報)に分割する。なお、本実施形態では、一つの変換手段120で画像データをPDFデータに変換することはできないものとする。
Therefore, the first converting
これにより、フロントエンドアプリケーション102aは複数の変換手段120を連携させて「ocr2pdf」のデータ変換を行う。すなわち、フロントエンドアプリケーション102aは例えば「ocr2pdf」のタスクを「ocr2txt」及び「txt2pdf」の二つのタスクに分割する第1の変換手段121に対応するメッセージキュー112にジョブを登録する。第1の変換手段121は「ocr2pdf」のタスクを「ocr2txt」及び「txt2pdf」の二つのタスクに分割する。第1の変換手段121は、次に行うタスク(すなわち、「ocr2txt」)に対応するキューに、それぞれのタスクを含むジョブを再登録することで、複数の変換手段120を連携させたデータ変換が可能になる。本実施形態では、データ変換の種類「ocr2txt」のデータ変換が可能な第2の変換手段122と、データ変換の種類「txt2pdf」のデータ変換が可能な第3の変換手段123とが存在するものとして説明する。
As a result, the front-
したがって、第1の変換手段121は、1つの変換手段120で変換できないデータ変換の種類のタスクを含むジョブから第2の変換手段122及び第3の変換手段123で変換できるデータ変換の種類のタスクを含むジョブを生成する。第1の変換手段121は、第2の変換手段122及び第3の変換手段123で変換できるデータ変換の種類のタスクを含むジョブを生成することにより、第2の変換手段122と第3の変換手段123とを連携させたデータ変換を実現している。
Therefore, the first conversion means 121 is a data conversion type task that can be converted by the second conversion means 122 and the third conversion means 123 from a job including a data conversion type task that cannot be converted by one conversion means 120. Create a job that contains The
なお、例えば、第2の変換手段122が、第1の変換手段121が行うタスクの分割を行ってもよい。すなわち、各変換手段120はタスクの分割が行えるようにし、最初に処理を行うタスクに対応する変換手段120がタスクの分割を行うようにしてもよい。
For example, the
図6に戻り説明を続ける。ステップS17において、ステップS15と同様に、第1の変換手段121は変更管理データベース109を参照し変更要求(変更リクエスト)の有無を確認する。ステップS18において、第1の変換手段121は分割したタスクを含むジョブを、次に行うタスク(例えばocr2txt)のデータ変換の種類に対応するキューに登録する。ステップS19において、自身が処理できるジョブに対応するキューを監視している第2の変換手段122はキューにジョブが登録されたことを検知する。
Returning to FIG. In step S <b> 17, as in step S <b> 15, the
ステップS20において、ステップS15と同様に、第2の変換手段122は変更管理データベース109を参照し変更要求(変更リクエスト)の有無を確認する。ステップS21において、第2の変換手段122はキューに登録されたジョブの情報をジョブ情報管理データベース108から取得する。第2の変換手段122はジョブの情報を解析し、先頭のタスクの情報に含まれるURIに基づいて共有ファイルストレージ107上のデータを取得し、先頭のタスクの情報に含まれるデータ変換の種類に応じたデータ変換を行う。
In step S20, as in step S15, the
第2の変換手段122は、変換後のデータを共有ファイルストレージ107上に登録又は更新する。また、第2の変換手段122はデータ変換したことを表すために、ジョブ情報管理データベース108に登録されているジョブの情報を更新する。このとき、リクエストの状態が例えば「データ変換中継中」に更新される。ステップS22において、ステップS20と同様に、第2の変換手段122は変更管理データベース109を参照し変更要求(変更リクエスト)の有無を確認する。
The
そして、ステップS23において、第2の変換手段122はジョブの情報から先頭のタスク(処理済み)の情報を削除し、次に行うタスク(例えばtxt2pdf)のデータ変換の種類に対応するキューに、残りのタスクを含むジョブを登録する。
In step S23, the
ステップS24において、自身が処理できるジョブに対応するキューを監視している第3の変換手段123はキューにジョブが登録されたことを検知する。ステップS25において、ステップS22と同様に、第3の変換手段123は変更管理データベース109を参照し変更要求(変更リクエスト)の有無を確認する。ステップS26において、第3の変換手段123はキューに登録されたジョブの情報をジョブ情報管理データベース108から取得する。
In step S24, the
第3の変換手段123はジョブの情報を解析し、先頭のタスクの情報に含まれるURIに基づいて共有ファイルストレージ107上のデータを取得し、先頭のタスクの情報に含まれるデータ変換の種類に応じたデータの変換を行う。
The
第3の変換手段123は、変換後のデータを共有ファイルストレージ107上に登録又は更新する。また、第3の変換手段123は変換したことを表すために、ジョブ情報管理データベース108に登録されているジョブの情報を更新する。このとき、リクエストの状態が例えば「データ変換完了」に更新される。ステップS27において、ステップS25と同様に、第3の変換手段123は変更管理データベース109を参照し変更要求(変更リクエスト)の有無を確認する。
The
そして、ステップS28において、第3の変換手段123はジョブの情報から先頭のタスク(処理済み)の情報を削除し、次に行うタスクがジョブ情報に含まれていないため、他のキューにジョブを登録することなく処理を終了する。
In step S28, the
なお、各変換手段120は、タスクの分割又はデータ変換を行う前後に変更管理データベース109を参照して変更要求の有無を確認しているが、これに限られない。例えば、各変換手段120は、タスクの分割を行う前又はタスクの分割を行った後のいずれか一方で変更要求の有無を確認するようにしてもよい。同様に、各変換手段120は、データ変換を行う前又はデータ変換を行った後のいずれか一方で変更要求の有無を確認するようにしてもよい。
Each
上述した動作により、本実施形態では直接変換する変換手段120が存在しない変換要求のリクエストを満足する変換手段120を用意するのではなく、複数の既存の変換エンジン120を組み合わせて連携させることで、変換要求を処理できるようになる。
By the above-described operation, instead of preparing the
次に、ユーザがクラウド10上にジョブを登録した後に、変更要求を行った場合について説明する。つまり、例えばユーザがクラウド10上にジョブを登録した後に、変換するデータ形式を変更したような場合である。例えばユーザがクラウド10上に、画像データをPDFに変換するジョブを登録した後、このジョブを画像データからドキュメントデータに変換するように変更要求を行った場合である。 Next, a case where a change request is made after a user registers a job on the cloud 10 will be described. In other words, for example, after the user registers a job on the cloud 10, the data format to be converted is changed. For example, the user registers a job for converting image data into PDF on the cloud 10 and then makes a change request to convert the job from image data to document data.
上述したように、画像データをPDFに変換する場合、「ocr2pdf」を「ocr2txt」と「txt2pdf」の2つのタスクに分割し、それぞれ変換を行うための変換手段が連携して変換を行う。また、画像データからドキュメントデータに変換する場合の変更要求である「ocr2doc」は「ocr2txt」と「txt2doc」と分割される。なお、本実施形態では、一つの変換手段120で画像データからドキュメントデータに変換することはできないものとする。
As described above, when converting image data to PDF, “ocr2pdf” is divided into two tasks “ocr2txt” and “txt2pdf”, and conversion means for performing the conversion performs the conversion in cooperation with each other. Also, “ocr2doc”, which is a change request when converting image data into document data, is divided into “ocr2txt” and “txt2doc”. In this embodiment, it is assumed that one
まず、非同期変換サーバの変換手段120が処理する前のタスクを変更する場合について説明する。すなわち、例えば、「txt2pdf」のタスクを処理する前に、ユーザが変更要求を行い、「txt2pdf」が「txt2doc」に変更されるような場合について説明する。図10は、本実施形態に係る非同期変換サーバの動作の他の例を示すシーケンス図である。
First, the case where the task before the
ステップS31〜S41の処理は、それぞれ図6のステップS11〜S21の処理と同様のため説明を省略する。ステップS42において、ユーザが登録したジョブの変更要求を行うと、フロントエンドアプリケーション102aはデータ変換の変更リクエスト(ジョブの情報の変更依頼)を非同期変換サーバ101のデータ変換要求管理手段111に対して行う。
The processes in steps S31 to S41 are the same as the processes in steps S11 to S21 in FIG. In step S42, when a change request for a job registered by the user is made, the front-
ステップS43において、データ変換要求管理手段111は変更リクエストを変更管理データベース109に登録する。ここで、変更管理データベース109に登録する変更リクエストの情報について説明する。図11は、本実施形態に係る変更リクエストの情報の一例を説明するための図である。図11に示す変更リクエストには、「"_id"」と「"type"」が指定されている。"_id"は、ジョブ情報管理データベース108に登録されている変更対象のリクエストの情報(ジョブの情報)を特定するための情報である。「"type"」は変更内容である。図12に示す例では、「"_id"」が「12345」のリクエスト(ジョブ)のデータ変換を「ocr2doc」(画像データからドキュメントデータへの変換)に変更する場合を示している。
In step S43, the data conversion
ステップS44において、データ変換要求管理手段111は登録結果をフロントエンドアプリケーション102aに対して行う。
In step S44, the data conversion
ステップS45において、第2の変換手段122は変更管理データベース109を参照して変更要求(変更リクエスト)の有無を確認する。例えば、第2の変換手段122は「"_ID":12345」に該当する変更リクエストの情報が変更管理データベース109に登録されているか否かを判断し、登録されている場合、変更要求があったと判断する。
In step S <b> 45, the
ステップS46において、第2の変換手段122はステップS45で変更要求(変更リクエスト)があったと判断した場合、変更管理データベース109から変更リクエストの情報を取得し、ジョブ内のタスクを書き換える。すなわち、例えば、図9(b)に示すジョブの情報を図12に示すジョブの情報に書き換える。具体的には、2番目に処理されるタスク(txt2pdf)を「txt2doc」に書き換える。これにより、後続の処理を第3の変換手段123(txt2pdfを行う変換手段120)ではなく、第4の変換手段124(txt2docを行う変換手段120)に依頼することができる。なお、ジョブの情報を書き換えた後、書き換え後のジョブの情報をジョブ情報管理データベース108に登録又は更新し、変更管理データベース109から変更リクエストの情報を削除する。
In step S46, when it is determined that there is a change request (change request) in step S45, the
ステップS47において、第2の変換手段122はジョブの情報から先頭のタスク(処理済み)の情報を削除し、次に行うタスク(例えばtxt2doc)のデータ変換の種類に対応するキュー(すなわち、第4の変換手段124に対応するキュー)に、残りのタスクを含むジョブを登録する。
In step S47, the
ステップS48において、自身が処理できるジョブに対応するキューを監視している第4の変換手段124はキューにジョブが登録されたことを検知する。ステップS49において、第4の変換手段124は変更管理データベース109を参照して変更要求(変更リクエスト)の有無を確認する。
In step S48, the
ステップS49において、第4の変換手段124はキューに登録されたジョブの情報(ステップS46で書き換えたジョブの情報)をジョブ情報管理データベース108から取得する。
In step S <b> 49, the
第4の変換手段124はジョブの情報を解析し、先頭のタスクに含まれるURIに基づいて共有ファイルストレージ107上のデータを取得し、先頭のタスクの情報に含まれるデータ変換の種類に応じたデータ変換を行う。
The
第4の変換手段は、変換後のデータを共有ファイルストレージ107上に登録又は更新する。また、第4の変換手段124は変換したことを表すために、ジョブ情報管理データベース108に登録されているジョブの情報を更新する。このとき、リクエストの状態が例えば「データ変換完了」に更新される。ステップS51において、ステップS49と同様に第4の変換手段124は変更管理データベース109を参照して変更要求(変更リクエスト)の有無を確認する。そして、ステップS52において、第4の変換手段124はジョブの情報から先頭のタスク(処理済み)の情報を削除し、次に行うタスクがジョブの情報に含まれていないため、他のキューにジョブを登録することなくタスクを終了する。
The fourth conversion unit registers or updates the converted data on the shared
上述した動作により、ジョブの変更要求があった場合でも、すでに処理済みのタスク(図10で説明した例では、ocr2txt)を再度処理する必要がない。 With the above-described operation, even when a job change request is made, it is not necessary to process a task that has already been processed (ocr2txt in the example described with reference to FIG. 10) again.
すなわち、上述した動作によれば、図13に示すように、例えばタスクA、タスクB、タスクC、タスクDからなるジョブについて、タスクA及びタスクBの処理が完了したタイミングでタスクD(未処理)を削除してタスクEを追加する変更要求があった場合、従来のシステムと異なり、タスクA及びタスクBを再度処理する必要がない。したがって、ユーザがジョブの変更要求を行った場合において、変換処理に関するユーザの待ち時間が短縮される。 That is, according to the above-described operation, as shown in FIG. 13, for a job including task A, task B, task C, and task D, for example, task D (unprocessed) is completed at the timing when task A and task B are completed. ) Is deleted and task E is added, there is no need to process task A and task B again unlike the conventional system. Therefore, when the user makes a job change request, the waiting time of the user regarding the conversion process is shortened.
次に、非同期変換サーバの変換手段120がすでに処理を行ったタスクを変更する場合について説明する。すなわち、例えば「ocr2txt」のタスクが処理された後に、「ocr2txt」が「doc2txt」に変更されるような場合について説明する。図14は、本実施形態に係る非同期変換サーバの動作の他の例を示すシーケンス図である。
Next, a case where a task that has already been processed by the
ステップS61〜S73の処理は、それぞれ図10のステップS31〜S41及びステップS45、ステップS47の処理と同様のため説明を省略する。また、ステップS74〜S76の処理は、それぞれ図10のステップS42〜S44の処理と同様のため説明を省略する。なお、ステップS74の処理における変更要求は、「"_id"」が「12345」のリクエスト(ジョブ)のデータ変換を「doc2pdf」(ドキュメントデータからドキュメントデータへの変換)に変更するものであるとする。つまり、この変更要求は「doc2txt」と「txt2pdf」の2つのタスクに分割される。 The processing of steps S61 to S73 is the same as the processing of steps S31 to S41, step S45, and step S47 in FIG. Moreover, since the process of step S74-S76 is the same as the process of step S42-S44 of FIG. 10, respectively, description is abbreviate | omitted. Note that the change request in the process of step S74 is to change the data conversion of the request (job) whose “_id” is “12345” to “doc2pdf” (conversion from document data to document data). . That is, this change request is divided into two tasks, “doc2txt” and “txt2pdf”.
ステップS77の処理は、図6のステップS24の処理と同様のため説明を省略する。ステップS78において、第3の変換手段123は変更管理データベース109を参照し変更要求(変更リクエスト)の有無を確認する。例えば、第3の変換手段121は「"_ID":12345」に該当する変更リクエストの情報が変更管理データベース109に登録されているか否かを判断し、登録されている場合、変更要求があったと判断する。
The process in step S77 is the same as the process in step S24 in FIG. In step S <b> 78, the
ステップS79において、第3の変換手段123はステップS78で変更要求(変更リクエスト)があったと判断した場合、変更管理データベース109から変更リクエストの情報を取得し、ジョブ内のタスクを書き換える。すなわち、例えば、図9(b)に示すジョブの情報の最初のタスクを「ocr2txt」から「doc2txt」に書き換える。また、この場合、データ変換の変換元のデータも変更になるため、URIも例えば「"file":"http://example.com/sample.doc"」に書き換える。なお、ジョブの情報を書き換えた後、書き換え後のジョブの情報をジョブ情報管理データベース108に登録又は更新し、変更管理データベース109から変更リクエストの情報を削除する。
In step S79, when the
ステップS80において、第3の変換手段123は次に処理を行うタスク(例えばdoc2txt)のデータ変換の種類に対応するキュー(すなわち、第5の変換手段125に対応するキュー)に、タスクを含むジョブを登録する。なお、このとき、ジョブの情報の先頭のタスクが処理済みである場合、先頭のタスクの情報を削除する。
In step S80, the
ステップS81において、自身が処理できるジョブに対応するキューを監視している第5の変換手段125はキューにジョブが登録されたことを検知する。ステップS82において、第5の変換手段125は変更管理データベース109を参照して変更要求(変更リクエスト)の有無を確認する。
In step S81, the
ステップS83において、第5の変換手段125はキューに登録されたジョブの情報(ステップS79で書き換えたジョブの情報)をジョブ情報管理データベース108から取得する。
In step S <b> 83, the
第5の変換手段125はジョブの情報を解析し、先頭のタスクに含まれるURIに基づいて共有ファイルストレージ107上のデータを取得し、先頭のタスクの情報に含まれるデータ変換の種類に応じたデータ変換を行う。
The
第5の変換手段は、変換後のデータを共有ファイルストレージ107上に登録又は更新する。また、第5の変換手段125は変換したことを表すために、ジョブ情報管理データベース108に登録されているジョブの情報を更新する。このとき、リクエストの状態が例えば「データ変換中継中」に更新される。ステップS84において、ステップS82と同様に第5の変換手段125は変更管理データベース109を参照して変更要求(変更リクエスト)の有無を確認する。
The fifth conversion unit registers or updates the converted data on the shared
そして、ステップS85において、第5の変換手段125はジョブの情報から先頭のタスク(処理済み)の情報を削除し、次に行うタスク(例えばtxt2pdf)のデータ変換の種類に対応するキューに、残りのタスクを含むジョブを登録する。
In step S85, the
ステップS86〜S90の処理は、それぞれ図6のステップS24〜S28の処理と同様のため説明を省略する。 The processes in steps S86 to S90 are the same as the processes in steps S24 to S28 in FIG.
上述した動作により、ジョブの変更要求があった場合でも、すでに処理済みのタスクを再度処理する必要がない。すなわち、上述した動作によれば、図15に示すように、例えばタスクA、タスクB、タスクC、タスクDからなるジョブについて、タスクA及びタスクBの処理が完了したタイミングでタスクB(処理済み)を削除してタスクEを追加する変更要求があった場合、従来のシステムと異なり、タスクAを再度処理する必要がない。したがって、ユーザがジョブの変更要求を行った場合において、変換処理に関するユーザの待ち時間が短縮される。 With the above-described operation, even when a job change request is made, there is no need to process a task that has already been processed. That is, according to the above-described operation, as shown in FIG. 15, for example, for a job including task A, task B, task C, and task D, task B (processed) is completed at the timing when processing of task A and task B is completed. ) Is deleted and task E is added, there is no need to process task A again unlike the conventional system. Therefore, when the user makes a job change request, the waiting time of the user regarding the conversion process is shortened.
以上のように、本実施形態によれば、データ変換のリクエストの増加に柔軟に対応することができるようになる。また、本実施形態によれば、フロントエンドアプリケーション102aは変換手段120のタスクを一つ含むジョブを登録することで、複数の変換手段120が処理することを意識することなく、複数のタスクを実行できる。
As described above, according to the present embodiment, it is possible to flexibly cope with an increase in data conversion requests. In addition, according to the present embodiment, the front-
また、本実施形態によれば、ユーザがジョブの登録を行った後、ジョブの変更要求を行った場合、ジョブの変更要求によって変更になるタスクが未処理のタスクであっても、すでに処理済のタスクであっても、変更要求前にすでに処理済のタスクに関しては再度処理する必要がなく、変換処理に関するユーザの待ち時間が短縮される。 Further, according to this embodiment, when a user makes a job change request after registering a job, even if the task changed by the job change request is an unprocessed task, it has already been processed. This task does not need to be processed again for a task that has already been processed before the change request, and the waiting time of the user regarding the conversion process is reduced.
なお、変換手段120の種類としては、上記実施形態のものとに限定されない。データ変換を行う変換手段以外にも、例えばバーコード画像のデータを文字データに変換する変換手段や、画像ファイルのデータからOCR処理して、文字列のデータに変換する変換手段、また、第2の実施形態で述べるように言語を他言語に翻訳変換する変換手段など、種々のものが考えられる。また、上記実施形態は、矛盾しない範囲で適宜組み合わせて適用することも可能である。
[第2の実施形態]
第2の実施形態は、前述した第1の実施形態と一部を除いて同様であるため、同一部分について適宜説明を省略する。本実施形態について図16を用いて説明する。なお、図16において、特に言及した処理以外は第1の実施形態の図10の対応する処理と同様であるため説明を省略する。
The type of conversion means 120 is not limited to that of the above embodiment. In addition to the conversion means for performing data conversion, for example, conversion means for converting barcode image data into character data, conversion means for performing OCR processing from image file data, and converting the data into character string data; As described in the embodiment, various means such as conversion means for translating and converting a language into another language are conceivable. Further, the above-described embodiments can be applied in appropriate combination within a consistent range.
[Second Embodiment]
Since the second embodiment is the same as the first embodiment except for a part, the description of the same parts will be omitted as appropriate. This embodiment will be described with reference to FIG. In FIG. 16, the processes other than those specifically mentioned are the same as the corresponding processes in FIG. 10 of the first embodiment, and thus description thereof is omitted.
ステップS202において、データ変換要求管理手段111によってジョブ情報管理データベース108に登録されたジョブの情報は、図17(a)に示すような情報であるとする。すなわち、本実施形態では、データ形式の変換「"type":"ocr2pdf"」に加えて、他言語への翻訳変換「"translate":"english"」(日本語から英語への翻訳変換)が含まれている。このようなジョブの情報は、ステップS206において、図17(b)に示すような3つのタスクに分割される。すなわち、画像データからテキスト形式データへの変換(「ocr2txt」)、テキスト形式データからPDF形式データへの変換(「txt2pdf」)、及び日本語から英語への翻訳変換(「txt2eng」)の3つのタスクに分割される。
It is assumed that the job information registered in the job
このような、翻訳変換を含むタスクの分割は、例えば図18に示すようtranslate定義に基づいて行われる。すなわち、例えば「"translate":"english"」と指定されていた場合、日本語を英語に翻訳変換する「txt2eng」タスクを含むジョブに分割される。 Such division of tasks including translation conversion is performed based on a translate definition as shown in FIG. 18, for example. That is, for example, when ““ translate ”:“ english ”” is designated, the job is divided into jobs including a “txt2eng” task for translating Japanese into English.
ステップS212の処理における、変更要求は図19に示すような変更リクエストの情報であったとする。すなわち、「"translate":"dutch"」との指定は、日本語からオランダ語に翻訳変換することをリクエストする変更リクエストである。このとき、ステップS216の処理では、日本語から英語への翻訳変換「txt2eng」が日本語からオランダ語への翻訳変換「txt2dut」に書き換えられる。そして、S222において、例えば日本語から英語への翻訳変換「txt2eng」タスクを処理する第6の変換手段126に対応するキューではなく、日本語からオランダ語への翻訳変換「txt2dut」タスクを処理する第7の変換手段127に対応するキューに、タスクを含むジョブを登録する。
It is assumed that the change request in the process of step S212 is change request information as shown in FIG. That is, the designation of ““ translate ”:“ dutch ”” is a change request for requesting translation translation from Japanese to Dutch. At this time, in the process of step S216, the translation conversion “txt2eng” from Japanese to English is rewritten to the translation conversion “txt2dut” from Japanese to Dutch. Then, in S222, for example, the Japanese-to-Dutch translation conversion “txt2dut” task is processed instead of the queue corresponding to the
ステップS225において、第7の変換手段127はキューに登録されたジョブの情報をジョブ情報管理データベース108から取得する。また、共有ファイルストレージ107上のデータを取得し、データ変換の種類に応じたデータ変換(日本語からオランダ語への翻訳変換)を行う。
In step S <b> 225, the
以上のように、本実施形態によれば、図18のようにタスクを分割するための定義を導入することでデータ形式の変換以外の種々の処理を含むジョブをタスクに分割することができる。 As described above, according to the present embodiment, a job including various processes other than data format conversion can be divided into tasks by introducing a definition for dividing a task as shown in FIG.
本発明は、具体的に開示された上記実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。なお、変換手段120は実行手段及び処理分割手段の一例である。メッセージキュー112は、記憶手段の一例である。変更管理データベース109は、変更要求記憶手段の一例である。共有ファイルストレージ107は、データ記憶手段の一例である。
The present invention is not limited to the above-described embodiment specifically disclosed, and various modifications and changes can be made without departing from the scope of the claims. The converting
10 クラウド
11 サーバ
12、13 PC
100 データ変換システム
101 非同期変換サーバ
102 ジョブ管理サーバ
102a フロントエンドアプリケーション
103 ファイヤウォール
104 リバースプロキシ
105 認証サーバ
106 認証用データベース
107 共有ファイルストレージ
108 ジョブ情報管理データベース
109 変更管理データベース
111 データ変換要求管理手段
112 メッセージキュー
120 変換手段
120a 変換処理ライブラリ
120b 変換エンジン
10
DESCRIPTION OF
Claims (7)
所定の処理をそれぞれ実行する複数の実行手段と、
処理の実行要求を受信すると、該実行要求に係る該処理を、前記複数の実行手段のうち少なくとも2以上の実行手段にそれぞれ実行させる複数の処理に分割する処理分割手段と、
前記処理分割手段により分割された複数の処理を記憶する記憶手段と、
前記実行要求に対する処理を変更させる変更要求を受信すると、該変更要求を記憶する変更要求記憶手段と、
を有し、
前記複数の実行手段それぞれは、
前記記憶手段に記憶された複数の処理のうち、自身で実行すべき処理を実行する前に、前記変更要求記憶手段に前記変更要求が記憶されているかを確認し、前記変更要求が記憶されていないときは、該自身で実行する処理を実行する一方、前記変更要求が記憶されているときは、前記記憶手段に記憶された複数の処理を該変更要求に基づいて書き換えること
を特徴とする情報処理システム。 An information processing system including one or more information processing devices,
A plurality of execution means for respectively executing predetermined processes;
Receiving a process execution request, a process dividing unit that divides the process related to the execution request into a plurality of processes to be executed by at least two or more of the plurality of execution units;
Storage means for storing a plurality of processes divided by the process dividing means;
Upon receiving a change request for changing the processing for the execution request, a change request storage means for storing the change request;
Have
Each of the plurality of execution means
Before executing a process to be executed by itself among a plurality of processes stored in the storage unit, it is confirmed whether the change request is stored in the change request storage unit, and the change request is stored. If not, the process executed by itself is executed. On the other hand, when the change request is stored, the plurality of processes stored in the storage means are rewritten based on the change request. Processing system.
前記自身で実行すべき処理を実行した後に前記変更要求記憶手段に前記変更要求が記憶されているかを確認し、前記変更要求が記憶されているときは、前記記憶手段に記憶された複数の処理を該変更要求に基づいて書き換えること
を特徴とする請求項1記載の情報処理システム。 Each of the plurality of execution means
After executing the process to be executed by itself, it is confirmed whether the change request is stored in the change request storage means. When the change request is stored, a plurality of processes stored in the storage means are stored. The information processing system according to claim 1, wherein the information processing system is rewritten based on the change request.
前記記憶手段に記憶された複数の処理を前記変更要求に基づいて書き換えた場合、該変更要求を前記変更要求記憶手段から削除すること
を特徴とする請求項1又は2記載の情報処理システム。 Each of the plurality of execution means
The information processing system according to claim 1 or 2, wherein when a plurality of processes stored in the storage unit are rewritten based on the change request, the change request is deleted from the change request storage unit.
前記複数の実行手段それぞれは、
前記電子データに対して前記自身で実行すべき処理を実行した後、該電子データを前記データ記憶手段に保存すること
を特徴とする請求項1ないし3のいずれか1項に記載の情報処理システム。 Having data storage means for storing electronic data;
Each of the plurality of execution means
The information processing system according to any one of claims 1 to 3, wherein the electronic data is stored in the data storage means after the processing to be executed by the electronic data is executed on the electronic data. .
を特徴とする請求項1ないし4のいずれか1項に記載の情報処理システム。 The information processing system according to claim 1, wherein the plurality of execution units execute different processes.
前記処理分割手段は、第1のデータ形式の電子データを第2のデータ形式の電子データへ変換する前記実行要求に前記処理を、前記複数の変換手段のうち少なくとも2以上の変換手段にそれぞれ実行させる複数の処理に分割すること
を特徴とする請求項1ないし5のいずれか1項に記載の情報処理システム。 The plurality of execution means include a plurality of conversion means for executing predetermined data conversion from one data format to another data format,
The process dividing unit executes the process in response to the execution request for converting the electronic data in the first data format into the electronic data in the second data format, to at least two conversion units among the plurality of conversion units. The information processing system according to any one of claims 1 to 5, wherein the information processing system is divided into a plurality of processes to be performed.
処理の実行要求を受信すると、該実行要求に係る該処理を、前記複数の実行手段のうち少なくとも2以上の実行手段にそれぞれ実行させる複数の処理に分割する処理分割手段と、
を有し、
変更要求記憶手段、
を有し、
前記複数の実行手段それぞれは、
前記処理分割手段により分割された複数の処理を記憶する記憶手段に記憶された前記複数の処理のうち、自身で実行すべき処理を実行する前に、前記実行要求に対する処理を変更させる変更要求を受信すると該変更要求を記憶する変更要求記憶手段に前記変更要求が記憶されているかを確認し、前記変更要求が記憶されていないときは、該自身で実行する処理を実行する一方、前記変更要求が記憶されているときは、前記記憶手段に記憶された複数の処理を該変更要求に基づいて書き換えること
を特徴とする情報処理方法。 An information processing method that is executed in an information processing system that includes a plurality of execution units configured to include one or more information processing apparatuses and that respectively execute predetermined processing.
Receiving a process execution request, a process dividing unit that divides the process related to the execution request into a plurality of processes to be executed by at least two or more of the plurality of execution units;
Have
Change request storage means,
Have
Each of the plurality of execution means
Before executing the process to be executed by itself among the plurality of processes stored in the storage unit that stores the plurality of processes divided by the process dividing unit, a change request for changing the process for the execution request is issued. When received, the change request is stored in the change request storage means for storing the change request. If the change request is not stored, the change request is executed while the change request is stored. Is stored, the plurality of processes stored in the storage means are rewritten based on the change request.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014006626A JP6484915B2 (en) | 2014-01-17 | 2014-01-17 | Information processing system and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014006626A JP6484915B2 (en) | 2014-01-17 | 2014-01-17 | Information processing system and information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015135592A true JP2015135592A (en) | 2015-07-27 |
JP6484915B2 JP6484915B2 (en) | 2019-03-20 |
Family
ID=53767381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014006626A Active JP6484915B2 (en) | 2014-01-17 | 2014-01-17 | Information processing system and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6484915B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022176703A1 (en) * | 2021-02-16 | 2022-08-25 | 株式会社スターワン | Electronic file transmission control device and method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006012072A (en) * | 2004-06-29 | 2006-01-12 | Toshiba Corp | Method, system and program for plan execution |
JP2010072685A (en) * | 2008-09-16 | 2010-04-02 | Fuji Xerox Co Ltd | Operation implementation system, operation implementation device, control device, operation implementation program, and control program |
JP2010204705A (en) * | 2009-02-27 | 2010-09-16 | Canon Inc | Image processor, image processing method and computer program |
JP2011203867A (en) * | 2010-03-24 | 2011-10-13 | Olympus Corp | Distributed controller, distributed processing system, and distributed processing method |
US20130198211A1 (en) * | 2012-02-01 | 2013-08-01 | Ricoh Company, Ltd. | Information processing apparatus, information processing system, and data conversion method |
-
2014
- 2014-01-17 JP JP2014006626A patent/JP6484915B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006012072A (en) * | 2004-06-29 | 2006-01-12 | Toshiba Corp | Method, system and program for plan execution |
JP2010072685A (en) * | 2008-09-16 | 2010-04-02 | Fuji Xerox Co Ltd | Operation implementation system, operation implementation device, control device, operation implementation program, and control program |
JP2010204705A (en) * | 2009-02-27 | 2010-09-16 | Canon Inc | Image processor, image processing method and computer program |
JP2011203867A (en) * | 2010-03-24 | 2011-10-13 | Olympus Corp | Distributed controller, distributed processing system, and distributed processing method |
US20130198211A1 (en) * | 2012-02-01 | 2013-08-01 | Ricoh Company, Ltd. | Information processing apparatus, information processing system, and data conversion method |
JP2013178748A (en) * | 2012-02-01 | 2013-09-09 | Ricoh Co Ltd | Information processing apparatus, program, information processing system, and data conversion processing method |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022176703A1 (en) * | 2021-02-16 | 2022-08-25 | 株式会社スターワン | Electronic file transmission control device and method |
Also Published As
Publication number | Publication date |
---|---|
JP6484915B2 (en) | 2019-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6364738B2 (en) | Information processing system, information processing apparatus, program, and process execution method | |
US9507789B2 (en) | System, relay server apparatus, information processing method and computer-readable medium | |
US20130013662A1 (en) | Method, apparatus, and computer program product for processing workflow | |
JP2013178748A (en) | Information processing apparatus, program, information processing system, and data conversion processing method | |
JP4797703B2 (en) | Print control system and print attribute information management server | |
JP2017073591A (en) | Image processing apparatus, control method, and program | |
JP2014127066A (en) | Information processor, information processing system, and program | |
US8861002B2 (en) | Image forming apparatus, control method therefor, and storage medium | |
JP2016208264A (en) | Image data management system, image data management method, and program | |
US10437919B2 (en) | Information processing system, information processing method, document processing system, and storage medium, for deleting a conversion process when a request to generate document data in a first format has been canceled | |
JP6484915B2 (en) | Information processing system and information processing method | |
JP2006285840A (en) | Document management system | |
US9922296B2 (en) | Distribution apparatus, distribution method, and recording medium | |
JP2014049098A (en) | Image forming apparatus, and control method and program of image forming apparatus | |
JP2007135238A (en) | Image forming apparatus having web service function | |
JP2005050018A (en) | Document file management device and data structure | |
JP5900013B2 (en) | Information processing apparatus, file processing method, and program | |
JP2015153117A (en) | document generation system | |
JP5932388B2 (en) | Image processing apparatus, control method therefor, and program | |
JP2004007346A (en) | Image forming apparatus having web service function | |
JP2005050017A (en) | Document file management device, document file management method and data structure | |
JP2021026707A (en) | Method of providing cloud print service and server | |
JP4787655B2 (en) | Information processing apparatus, display control apparatus, information processing system, information processing method, display control method, information processing program, and display control program | |
JP2013089049A (en) | Data processing device, information processing system and control method thereof, and program | |
JP5298971B2 (en) | Remote management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170112 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180626 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180824 |
|
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: 20190122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190204 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6484915 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |