(57)【特許請求の範囲】
【請求項１】
ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当装置であって、
前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出手段と、
前記予測処理時間算出手段により算出された予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てるＸＳＬＴ装置割当手段と、
を備えたことを特徴とするＸＳＬＴ負荷割当装置。
【請求項２】
前記予測処理時間算出手段は、前記ＸＳＬスタイルシートから前記変換対象要素を抽出する変換対象要素抽出手段と、前記変換対象要素抽出手段により抽出された前記変換対象要素の変換前ＸＭＬ文書に含まれる個数を勘定する変換対象要素勘定手段と、前記変換対象要素勘定手段により勘定された前記個数および各変換対象要素の変換に必要な時間の予測値に基づいて前記予測処理時間を算出する変換処理時間算出手段と、を備えたことを特徴とする請求項１に記載のＸＳＬＴ負荷割当装置。
【請求項３】
前記ＸＳＬ装置割当手段は、前記ＸＳＬスタイルシートに対して起動準備済みのＸＳＬＴ装置がある場合には、該ＸＳＬスタイルシートを用いる前記変換を該起動準備済みのＸＳＬＴ装置に優先的に割り当てることを特徴とする請求項１または２に記載のＸＳＬＴ負荷割当装置。
【請求項４】
ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当方法であって、
前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出工程と、
前記予測処理時間算出工程により算出された予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てるＸＳＬＴ装置割当工程と、
を含んだことを特徴とするＸＳＬＴ負荷割当方法。
【請求項５】
ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当方法をコンピュータに実行させるプログラムであって、
前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出工程と、
前記予測処理時間算出工程により算出された予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てるＸＳＬＴ装置割当工程と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当装置、ＸＳＬＴ負荷割当方法およびその方法をコンピュータに実行させるプログラムに関し、特に、各ＸＳＬＴ装置の負荷を平坦化し、効率的なＸＳＬＴ分散処理を実現するＸＳＬＴ負荷割当装置、ＸＳＬＴ負荷割当方法およびその方法をコンピュータに実行させるプログラムに関する。
【０００２】
【従来の技術】
近年、インターネットを使った電子文書の交換が普及するとともに、交換する電子文書にＸＭＬ（eXtensible Markup Language）を利用する動きが広がっている。ＸＭＬは、電子文書を作成するための言語を定義するメタ言語であり、電子文書を作成する分野毎に適した言語を定義することを可能としている。たとえば、Ｗｅｂコンテンツの作成に用いられるＨＴＭＬ（Hyper Text Markup Language）の後継言語であるＸＨＴＭＬ（eXtensible ＨＴＭＬ）はＸＭＬを用いて定義されている。
【０００３】
また、ＸＭＬを用いて定義された言語を使って作成された文書（以下「ＸＭＬ文書」と言う）には、ＸＳＬＴ（eXtensible Stylesheet Language Transformations）によって別の形式の文書に容易に変換することができるという利点がある。
【０００４】
たとえば、あるＸＭＬ文書を特定のキーに基づいてソーティングして別のＸＭＬ文書を作成したり、あるいは、あるＸＭＬ文書から別のフォーマットのＸＭＬ文書を作成したりすることが容易におこなえる。このＸＳＬＴは、ＸＳＬ（eXtensible Stylesheet Language）で記述したＸＳＬスタイルシートに基づいておこなわれ、ＸＳＬスタイルシートを替えることによって、一つのＸＭＬ文書を様々な文書に変換することができる。
【０００５】
【発明が解決しようとする課題】
しかしながら、ＸＳＬＴは、ＸＭＬ文書を大量に処理する場合について考慮されていないため、処理速度が遅いという問題がある。この問題の解決策として、複数のＸＳＬＴ装置を用いた分散処理が考えられるが、単に負荷を分散するだけでは、個々の負荷の処理時間にバラツキがあるため、各ＸＳＬＴ装置の負荷の平坦化が不可能であり、効率的な負荷分散をおこなうことができない。
【０００６】
また、ＸＳＬＴ処理は、処理に用いるＸＳＬスタイルシートに対応するための起動準備に時間がかかるため、起動準備に費やされる時間を少なくすることも分散処理の効率向上にとって重要となる。
【０００７】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、各ＸＳＬＴ装置の負荷を平坦化し、効率的なＸＳＬＴ分散処理を実現するＸＳＬＴ負荷割当装置、ＸＳＬＴ負荷割当方法およびその方法をコンピュータに実行させるプログラムを提供することを目的とする。
【０００８】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、本発明は、ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当装置であって、前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出手段と、前記予測処理時間算出手段により算出された予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てるＸＳＬＴ装置割当手段と、を備えたことを特徴とする。
【０００９】
また、本発明は、ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当方法であって、前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出工程と、前記予測処理時間算出工程により算出された予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てるＸＳＬＴ装置割当工程と、を含んだことを特徴とする。
【００１０】
また、本発明は、ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当方法をコンピュータに実行させるプログラムであって、前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出工程と、前記予測処理時間算出工程により算出された予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てるＸＳＬＴ装置割当工程と、をコンピュータに実行させることを特徴とする。
【００１１】
かかる発明によれば、ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて変換の予測処理時間を算出し、算出した予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てることとしたので、各ＸＳＬＴ装置の負荷を平坦化し、効率的なＸＳＬＴ分散処理を実現することができる。
【００１２】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係るＸＳＬＴ負荷割当装置、ＸＳＬＴ負荷割当方法およびその方法をコンピュータに実行させるプログラムの好適な実施の形態を詳細に説明する。
【００１３】
（実施の形態１）
まず、本実施の形態１に係るＸＳＬＴ装置について説明する。図１は、本実施の形態１に係るＸＳＬＴ装置を説明するための説明図である。同図に示すように、このＸＳＬＴ装置１０は、ＸＳＬスタイルシート２０に基づいてあるＸＭＬ文書Ａを別のＸＭＬ文書Ｂに変換する装置である。
【００１４】
ＸＳＬスタイルシート２０は、ＸＭＬ文書を変換するためのデータであり、ＸＳＬを用いて記述される。このＸＳＬスタイルシート２０を替えることによって、同じＸＭＬ文書から異なるＸＭＬ文書を得ることができる。
【００１５】
また、ＸＳＬＴ装置１０は、ＸＭＬ文書を別のＸＭＬ文書へ変換するだけでなく、ＸＭＬ文書をＨＴＭＬ文書へ変換することや、ＸＭＬ文書をテキストへ変換することもできる。
【００１６】
次に、本実施の形態１に係るＸＳＬＴ分散処理システムのシステム構成について説明する。図２は、本実施の形態１に係るＸＳＬＴ分散処理システムのシステム構成を示すブロック図である。同図に示すように、このＸＳＬＴ分散処理システムは、ＸＳＬＴ負荷割当装置２１０と複数のＸＳＬＴ装置１０から構成され、ＸＳＬＴ負荷割当装置２１０は各ＸＳＬＴ装置１０と通信することができる。
【００１７】
まず、ＸＳＬＴ負荷割当装置２１０について説明する。ＸＳＬＴ負荷割当装置２１０は、ＸＳＬＴ分散処理システムが受け付けたＸＳＬＴ処理を各ＸＳＬＴ装置１０に割り当てる装置である。また、このＸＳＬＴ負荷割当装置２１０は、ＸＳＬＴ装置１０としても機能することができ、ＸＳＬＴ処理を自分自身に割り当てることができる。
【００１８】
このＸＳＬＴ負荷割当装置２１０は、ＸＳＬ先読み部２１１と、ＸＭＬ先読み部２１２と、処理時間予測部２１３と、負荷分散管理部２１４と、通信部２１５と、ＸＳＬＴプロセッサ制御部２１６と、複数のＸＳＬＴプロセッサ２１７と、ＸＳＬデータベース２１８と、分散ログ２１９とを有する。
【００１９】
ＸＳＬ先読み部２１１は、ＸＳＬスタイルシート２０を読み込んで変換対象となるタグを抽出し、抽出したタグとＸＳＬスタイルシート２０から読み込んだデータをＸＳＬデータとしてＸＳＬデータベース２１８に登録する処理部である。また、このＸＳＬ先読み部２１１は、通信部２１５を介して新たに登録したＸＳＬデータを全てのＸＳＬＴ装置１０に送信する。
【００２０】
ＸＭＬ先読み部２１２は、変換対象であるＸＭＬ文書を先読みし、このＸＭＬ文書からＸＳＬデータベース２１８に登録された変換対象タグを探し、変換対象タグの出現回数を数える処理部である。
【００２１】
処理時間予測部２１３は、ＸＭＬ先読み部２１２が算出した変換対象タグの出現回数と各変換対象タグの処理時間に基づいて、先読みしたＸＭＬ文書の変換処理時間を予測する処理部である。
【００２２】
負荷分散管理部２１４は、処理時間予測部２１３が予測したＸＭＬ文書の変換処理時間と分散ログ２１９に格納された各ＸＳＬＴ装置１０の負荷状況に基づいて、先読みしたＸＭＬ文書を処理するＸＳＬＴ装置１０を決定する処理部である。処理装置の決定に際しては、割り当てられた負荷が最少なＸＳＬＴ装置１０を処理装置として選択する、あるいはＸＳＬＴ装置１０の負荷が一定の上限値までは一つのＸＳＬＴ装置１０を選択するなど、様々な決定戦略を用いることができる。
【００２３】
この負荷分散管理部２１４が先読みしたＸＭＬ文書の予測変換処理時間と各ＸＳＬＴ装置１０の負荷状況に基づいて、ＸＳＬＴ処理を実行するＸＳＬＴ装置１０を決定することにより、各ＸＳＬＴ装置１０の負荷を平坦化し、効率的なＸＳＬＴ分散処理システムを実現することができる。
【００２４】
また、この負荷分散管理部２１４は、他のＸＳＬＴ装置１０にＸＳＬＴ処理を依頼する場合には、通信部２１５を介してＸＳＬデータ名およびＸＭＬ文書を送信する。一方、ＸＳＬＴ負荷割当装置２１０自身がＸＳＬＴ処理を実行する場合には、ＸＳＬＴプロセッサ制御部２１６にＸＳＬデータ名およびＸＭＬ文書を渡して処理を依頼する。
【００２５】
通信部２１５は、負荷分散管理部２１４からの依頼を受けて、他のＸＳＬＴ装置１０に対してＸＳＬデータ名とＸＭＬ文書を送信する処理部である。また、この通信部２１５は、ＸＳＬＴ処理を依頼したＸＳＬＴ装置１０からＸＳＬＴ処理結果を受け取り、負荷分散管理部２１４に返す。その他、この通信部２１５は、ＸＳＬデータベース２１８に新たに登録されたＸＳＬデータを他のＸＳＬＴ装置１０に送信することもおこなう。
【００２６】
ＸＳＬＴプロセッサ制御部２１６は、負荷分散管理部２１４からＸＳＬデータ名およびＸＭＬ文書を受け取り、ＸＳＬデータ名で指定されたＸＳＬデータを用いるＸＳＬＴプロセッサ２１７が起動されている場合には、そのＸＳＬＴプロセッサ２１７にＸＳＬＴ処理を依頼する。一方、ＸＳＬデータ名で指定されたＸＳＬデータを用いるＸＳＬＴプロセッサ２１７が起動されていない場合には、ＸＳＬデータベース２１８から変換対象タグなどのＸＳＬデータを取得し、このＸＳＬデータを用いるＸＳＬＴプロセッサ２１７を起動し、起動したＸＳＬＴプロセッサ２１７にＸＳＬＴ処理を依頼する。
【００２７】
ＸＳＬＴプロセッサ２１７は、ＸＳＬデータを用いてＸＳＬＴ処理を実行する処理部であり、異なるＸＳＬデータに対しては、異なるＸＳＬＴプロセッサ２１７が対応する。
【００２８】
ＸＳＬデータベース２１８は、ＸＳＬ先読み部２１１によってＸＳＬスタイルシート２０から抽出された変換対象タグおよびＸＳＬスタイルシート２０から読み込まれたデータをＸＳＬデータとして格納するデータベースであり、ＸＳＬＴプロセッサ制御部２１６によって使用される。
【００２９】
分散ログ２１９は、各ＸＳＬＴ処理について、ＸＳＬＴ処理を依頼したＸＳＬＴ装置１０、使用したＸＳＬデータ名、ＸＳＬＴ処理時間予測値、ＸＳＬＴ処理の実行状態などを記録した記録部であり、負荷分散管理部２１４によって管理される。
【００３０】
次に、ＸＳＬＴ装置１０について説明する。ＸＳＬＴ装置１０は、ＸＳＬＴ負荷割当装置２１０によって割り当てられたＸＳＬＴ処理を実行する装置であり、通信部２２１と、ＸＳＬＴプロセッサ制御部２２２と、ＸＳＬＴプロセッサ２２３と、ＸＳＬデータベース２２４とを有する。
【００３１】
通信部２２１は、ＸＳＬＴ負荷割当装置２１０から送られたＸＳＬデータ名、ＸＭＬ文書を受け取り、ＸＳＬＴプロセッサ制御部２２２にＸＳＬＴ処理を依頼する処理部である。また、この通信部２２１は、ＸＳＬＴ処理の結果をＸＳＬＴ負荷割当装置２１０に送信する。その他、この通信部２２１は、ＸＳＬＴ負荷割当装置２１０から送られる新規ＸＳＬデータをＸＳＬデータベース２２４に登録することもおこなう。
【００３２】
ＸＳＬＴプロセッサ制御部２２２は、通信部２２１からＸＳＬデータ名およびＸＭＬ文書を受け取り、ＸＳＬデータ名で指定されたＸＳＬデータを用いるＸＳＬＴプロセッサ２２３が起動されている場合には、そのＸＳＬＴプロセッサ２２３にＸＳＬＴ処理を依頼する。一方、ＸＳＬデータ名で指定されたＸＳＬデータを用いるＸＳＬＴプロセッサ２２３が起動されていない場合には、ＸＳＬデータベース２２４から変換対象タグなどのＸＳＬデータを取得し、このＸＳＬデータを用いるＸＳＬＴプロセッサ２２３を起動し、起動したＸＳＬＴプロセッサ２２３にＸＳＬＴ処理を依頼する。
【００３３】
ＸＳＬＴプロセッサ２２３は、ＸＳＬデータを用いてＸＳＬＴ処理を実行する処理部であり、異なるＸＳＬデータに対しては、異なるＸＳＬＴプロセッサ２２３が対応する。
【００３４】
ＸＳＬデータベース２２４は、ＸＳＬＴ負荷割当装置２１０から送られた変換対象タグなどのＸＳＬデータを格納するデータベースであり、ＸＳＬＴプロセッサ制御部２２２によって使用される。
【００３５】
次に、ＸＳＬスタイルシート２０とＸＭＬ文書の一例について説明する。図３は、ＸＳＬスタイルシート２０とＸＭＬ文書の一例を示す図である。同図（ａ）は、ＸＳＬスタイルシート２０の一例を示し、同図（ｂ）は、ＸＭＬ文書の一例を示している。
【００３６】
同図（ａ）の<xsl:template match="a">は、タグａが変換対象であることを示し、同様に<xsl:template match="b">および<xsl:template match="c">は、タグｂおよびタグｃが変換対象であることを示している。
【００３７】
また、同図（ｂ）のＸＭＬ文書には、タグａは２回、タグｂは３回、タグｃは１回出現するので、タグａ、タグｂ、タグｃの各変換処理時間を全て５ｍ秒とすると、処理時間予測値は５ｍ秒×６＝３０ｍ秒となる。
【００３８】
次に、図２に示したＸＳＬＴ負荷割当装置２１０の処理手順について説明する。図４は、図２に示したＸＳＬＴ負荷割当装置２１０の処理手順を示すフローチャートである。同図に示すように、このＸＳＬＴ負荷割当装置２１０は、まずＸＳＬデータ名を取得し（ステップＳ４０１）、取得したＸＳＬデータ名が登録済みか否かを調べる（ステップＳ４０２）。
【００３９】
もし、ＸＳＬデータ名が登録済みである場合には、ＸＳＬデータベース２１８からＸＳＬデータ名に対応する変換対象タグを取得する（ステップＳ４０３）。一方、ＸＳＬデータ名が登録済みでない場合には、ＸＳＬ先読み部２１１がＸＳＬ登録処理を実行し（ステップＳ４０４）、変換対象タグを取得する。なお、このＸＳＬ登録処理の詳細については後述する。
【００４０】
そして、ＸＭＬ先読み部２１２がＸＭＬ文書を読み込み、読み込んだＸＭＬ文書に含まれる変換対象タグの出現回数を勘定し（ステップＳ４０５）、処理時間予測部２１３が変換対象タグの出現回数と各変換対象タグの処理時間に基づいてＸＭＬ文書の変換処理時間を予測する（ステップＳ４０６）。
【００４１】
そして、負荷分散管理部２１４がこの予測処理時間と分散ログ２１９に記録された各ＸＳＬＴ装置１０の負荷状況に基づいて先読みしたＸＭＬ文書を変換するＸＳＬＴ装置１０を決定するとともに（ステップＳ４０７）、決定結果を分散ログ２１９に反映する。
【００４２】
そして、決定したＸＳＬＴ装置１０が自分である場合には（ステップＳ４０８の肯定）、ＸＳＬＴプロセッサ制御部２１６にＸＳＬＴ処理を依頼し、依頼を受けたＸＳＬＴプロセッサ制御部２１６が対応するＸＳＬＴプロセッサ２１７を使ってＸＳＬＴ処理を実行する（ステップＳ４０９）。一方、決定したＸＳＬＴ装置２００が他のＸＳＬＴ装置１０である場合には（ステップＳ４０８の否定）、通信部２１５を介してそのＸＳＬＴ処理装置２２０にＸＳＬＴ処理を依頼し、また、そのＸＳＬＴ装置１０からＸＳＬＴ処理結果を通信部２１５を介して受け取る（ステップＳ４１０の肯定）。
【００４３】
最後に、ＸＳＬＴプロセッサ制御部２１６または通信部２１５から受け取ったＸＳＬＴ処理結果に基づいて分散ログ２１９を更新し（ステップＳ４１１）、処理を終了する。
【００４４】
次に、図４に示したＸＳＬ登録処理について説明する。図５は、図４に示したＸＳＬ登録処理の処理手順を示すフロ−チャートである。同図に示すように、このＸＳＬ登録処理は、まずＸＳＬスタイルシート２０を読み込んで変換対象タグを抽出する（ステップＳ５０１）。
【００４５】
そして、ＸＳＬスタイルシート２０から抽出した変換対象タグとＸＳＬスタイルシート２０から読み込んだデータをＸＳＬデータとしてＸＳＬデータ名とともにＸＳＬデータベース２１８に登録し（ステップＳ５０２）、通信部２１５を介して他のＸＳＬＴ装置１０に登録したデータを送信し、他のＸＳＬＴ装置１０のＸＳＬデータベース２２４に登録したデータを複製する（ステップＳ５０３）。このように、全てのＸＳＬＴ装置１０に同じＸＳＬデータを格納することによって、全てのＸＳＬＴ装置１０があらゆるＸＳＬＴ処理を実行することを可能としている。
【００４６】
上述してきたように、本実施の形態１では、ＸＳＬ先読み部２１１がＸＳＬスタイルシート２０を読み込んで変換対象タグを抽出し、ＸＭＬ先読み部２１２がＸＳＬＴ処理の対象であるＸＭＬ文書を先読みして変換対象タグの出現回数を数え、処理時間予測部２１３が変換対象タグの出現回数と各変換対象タグの処理時間に基づいて先読みしたＸＭＬ文書の変換処理時間を予測し、負荷分散管理部２１４が予測変換処理時間および分散ログ２１９に基づいて先読みしたＸＭＬ文書の変換をおこなうＸＳＬＴ装置１０を決定することとしたので、各ＸＳＬＴ装置１０の負荷を平坦化し、もって効率的なＸＳＬＴ分散処理システムを実現することができる。
【００４７】
（実施の形態２）
ところで、上記実施の形態１では、ＸＳＬＴ処理の予測処理時間と各ＸＳＬＴ装置１０の負荷状況に基づいてＸＳＬＴ処理を実行するＸＳＬＴ装置１０を決定することとした。しかしながら、ＸＳＬＴ処理は、起動準備に多くの時間を要することから、できるだけ起動準備済みのＸＳＬＴ装置１０を使うことによって、ＸＳＬＴ分散処理システムの効率をさらに向上することができる。
【００４８】
そこで、本実施の形態２では、各ＸＳＬＴ装置１０の起動準備状況に基づいてＸＳＬＴ装置１０を決定するＸＳＬＴ負荷割当装置２１０について説明する。なお、本実施の形態２では、主に、ＸＳＬＴ負荷割当装置２１０がＸＳＬＴ装置１０を決定する処理が上記実施の形態１と異なるので、このＸＳＬＴ装置決定処理を中心に説明する。
【００４９】
図６は、本実施の形態２に係るＸＳＬＴ負荷割当装置２１０のＸＳＬＴ装置決定処理の処理手順を示すフローチャートである。同図に示すように、このＸＳＬＴ負荷割当装置２１０は、使用するＸＳＬデータに対して起動準備済みのＸＳＬＴ装置１０があるか否かを調べる（ステップＳ６０１）。
【００５０】
もし、使用するＸＳＬデータに対して起動準備済みのＸＳＬＴ装置１０がある場合には、それらのＸＳＬＴ装置１０の負荷が所定の上限値以下であるか否かを調べる（ステップＳ６０２）。
【００５１】
もし、負荷が所定の上限値以下であるＸＳＬＴ装置１０があれば、それらのＸＳＬＴ装置１０のうちで負荷が最少なＸＳＬＴ装置１０を選択する（ステップＳ６０３）。一方、負荷が所定の上限値以下のＸＳＬＴ装置１０がない場合および使用するＸＳＬデータに対して起動準備済みのＸＳＬＴ装置１０がない場合には、予測処理時間と各ＸＳＬＴ装置１０の負荷状況に基づいてＸＳＬＴ装置１０を選択する（ステップＳ６０４）。
【００５２】
また、ＸＳＬＴプロセッサ制御部２１６および２２２は、ＸＳＬＴプロセッサ２１７および２２３の処理が終了した場合に、一定時間ＸＳＬＴプロセッサ２１７および２２３の削除はおこなわない。このように、処理を終了したＸＳＬＴプロセッサ２１７および２２３を一定時間起動準備済みの状態に保つことによって、あるＸＳＬデータに対して起動準備済みのＸＳＬＴ装置１０にそのＸＳＬデータを使用するＸＳＬＴ処理が割り当てられる可能性を高くすることができる。
【００５３】
上述してきたように、本実施の形態２では、ＸＳＬＴ処理を実行するＸＳＬＴ装置１０を決定する場合に、ＸＳＬＴ処理に用いるＸＳＬデータに対して起動準備済みのＸＳＬＴ装置１０があれば、そのＸＳＬＴ装置１０を優先的に使用することとしたので、ＸＳＬＴ処理の起動に要する時間を不要とすることができ、もってＸＳＬＴ分散処理システムの効率をさらに向上することができる。
【００５４】
なお、上記の実施の形態１および２では、ＸＳＬＴ負荷割当装置２１０は、ＸＳＬＴ処理機能を有する装置として説明したが、ＸＳＬＴ負荷割当装置は、ＸＳＬＴ負荷割当機能だけを有し、ＸＳＬＴ処理機能は有しない装置としても構成することができる。
【００５５】
また、上記の実施の形態１および２では、ＸＳＬＴ負荷割当装置およびＸＳＬＴ装置について説明したが、これらのＸＳＬＴ負荷割当装置およびＸＳＬＴ装置が有する構成をソフトウェアによって実現することで、同様の機能を有するＸＳＬＴ負荷割当プログラムおよびＸＳＬＴプログラムを得ることができる。そこで、これらのＸＳＬＴ負荷割当プログラムおよびＸＳＬＴプログラムを実行するコンピュータについて説明する。
【００５６】
図７に示すコンピュータシステム１００は、本体部１０１、本体部１０１からの指示により表示画面１０２ａに画像等の情報を表示するディスプレイ１０２、このコンピュータシステム１００に種々の情報を入力するためのキーボード１０３、ディスプレイ１０２の表示画面１０２ａ上の任意の位置を指定するマウス１０４、ローカルエリアネットワーク（ＬＡＮ）１０６または広域エリアネットワーク（ＷＡＮ）に接続するＬＡＮインターフェース、インターネットなどの公衆回線１０７に接続するモデム１０５が備えられている。ここで、ＬＡＮ１０６は、ほかのコンピュータシステム（ＰＣ）１１１、サーバ１１２、プリンタ１１３等とコンピュータシステム１００とを接続している。また、図８に示すように、本体部１０１は、ＣＰＵ１２１、ＲＡＭ１２２、ＲＯＭ１２３、ハードディスクドライブ（ＨＤＤ）１２４、ＣＤ−ＲＯＭドライブ１２５、ＦＤドライブ１２６、Ｉ／Ｏインターフェース１２７およびＬＡＮインターフェース１２８を備えている。
【００５７】
このコンピュータシステム１００においてＸＳＬＴ負荷割当プログラムまたはＸＳＬＴプログラムを実行する場合、フロッピィディスク（ＦＤ）１０８、ＣＤ−ＲＯＭ１０９、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の可搬型記憶媒体、モデム１０５およびＬＡＮインターフェースを利用し回線を介して接続されたサーバ１１２のデータベース、あるいは、ほかのコンピュータシステム（ＰＣ）１１１のデータベースに格納等の記憶媒体に記憶されたＸＳＬＴ負荷割当プログラムまたはＸＳＬＴプログラムをコンピュータシステム１００にインストールする。インストールされたＸＳＬＴ負荷割当プログラムまたはＸＳＬＴプログラムは、ＨＤＤ１２４に記憶され、ＲＡＭ１２２、ＲＯＭ１２３などを利用してＣＰＵ１２１により実行される。ここで、記憶媒体とは、ＣＤ−ＲＯＭ１０９、フロッピィディスク１０８、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の可搬型記憶媒体やコンピュータシステム１００の内外に備えられたハードディスク１２４等の記憶装置のほか、ＬＡＮ１０６を介して接続されたインストール元のＸＳＬＴ負荷割当プログラムまたはＸＳＬＴプログラムを保持するサーバ１１２のデータベース、あるいは、ほかのコンピュータシステム１１１並びにそのデータベースや、さらに公衆回線１０７上の伝送媒体をも含むものである。
【００５８】
（付記１）ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当装置であって、
前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出手段と、
前記予測処理時間算出手段により算出された予測処理時間に基づいてＸＳＬＴ装置を割り当てるＸＳＬＴ装置割当手段と、
を備えたことを特徴とするＸＳＬＴ負荷割当装置。
（付記２）前記予測処理時間算出手段は、前記ＸＳＬスタイルシートから前記変換対象要素を抽出する変換対象要素抽出手段と、前記変換対象要素抽出手段により抽出された前記変換対象要素の変換前ＸＭＬ文書に含まれる個数を勘定する変換対象要素勘定手段と、前記変換対象要素勘定手段により勘定された前記個数および各変換対象要素の変換に必要な時間の予測値に基づいて前記予測処理時間を算出する変換処理時間算出手段と、を備えたことを特徴とする付記１に記載のＸＳＬＴ負荷割当装置。
（付記３）前記ＸＳＬ装置割当手段は、前記ＸＳＬスタイルシートに対して起動準備済みのＸＳＬＴ装置がある場合には、該ＸＳＬスタイルシートを用いる前記変換を該起動準備済みのＸＳＬＴ装置に優先的に割り当てることを特徴とする付記１または２に記載のＸＳＬＴ負荷割当装置。
（付記４）前記ＸＳＬＴ装置割当手段は、前記予測処理時間算出手段により算出された予測処理時間を用いて管理される各ＸＳＬＴ装置の負荷状況に基づいてＸＳＬＴ装置を決定するＸＳＬＴ装置決定手段と、前記ＸＳＬＴ装置決定手段により決定されたＸＳＬＴ装置の前記負荷状況を更新する負荷状況更新手段と、を備えたことを特徴とする付記１、２または３に記載のＸＳＬＴ負荷割当装置。
（付記５）ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当方法であって、
前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出工程と、
前記予測処理時間算出工程により算出された予測処理時間に基づいてＸＳＬＴ装置を割り当てるＸＳＬＴ装置割当工程と、
を含んだことを特徴とするＸＳＬＴ負荷割当方法。
（付記６）前記予測処理時間算出工程は、前記ＸＳＬスタイルシートから前記変換対象要素を抽出する変換対象要素抽出工程と、前記変換対象要素抽出工程により抽出された前記変換対象要素の変換前ＸＭＬ文書に含まれる個数を勘定する変換対象要素勘定工程と、前記変換対象要素勘定工程により勘定された前記個数および各変換対象要素の変換に必要な時間の予測値に基づいて前記予測処理時間を算出する変換処理時間算出工程と、を含んだことを特徴とする付記５に記載のＸＳＬＴ負荷割当方法。
（付記７）前記ＸＳＬ装置割当方法は、前記ＸＳＬスタイルシートに対して起動準備済みのＸＳＬＴ装置がある場合には、該ＸＳＬスタイルシートを用いる前記変換を該起動準備済みのＸＳＬＴ装置に優先的に割り当てることを特徴とする付記５または６に記載のＸＳＬＴ負荷割当方法。
（付記８）前記ＸＳＬＴ装置割当工程は、前記予測処理時間算出工程により算出された予測処理時間を用いて管理される各ＸＳＬＴ装置の負荷状況に基づいてＸＳＬＴ装置を決定するＸＳＬＴ装置決定工程と、前記ＸＳＬＴ装置決定工程により決定されたＸＳＬＴ装置の前記負荷状況を更新する負荷状況更新工程と、を含んだことを特徴とする付記５、６または７に記載のＸＳＬＴ負荷割当方法。
（付記９）ＸＳＬスタイルシートを用いてＸＭＬ文書から別のＸＭＬ文書または別の形式の文書への変換をおこなうＸＳＬＴ装置を複数台使用したＸＳＬＴ分散処理システムの負荷を各ＸＳＬＴ装置に割り当てるＸＳＬＴ負荷割当方法をコンピュータに実行させるプログラムであって、
前記ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて前記変換の予測処理時間を算出する予測処理時間算出工程と、
前記予測処理時間算出工程により算出された予測処理時間に基づいてＸＳＬＴ装置を割り当てるＸＳＬＴ装置割当工程と、
をコンピュータに実行させるプログラム。
【００５９】
【発明の効果】
以上説明したように、本発明によれば、ＸＳＬスタイルシートにより指定された変換対象要素の変換前ＸＭＬ文書に含まれる個数に基づいて変換の予測処理時間を算出し、算出した予測処理時間に基づいてＸＳＬＴ装置を各ＸＳＬＴ装置の負荷を平坦化するように割り当てるよう構成したので、各ＸＳＬＴ装置の負荷を平坦化し、効率的なＸＳＬＴ分散処理を実現することができるという効果を奏する。
【図面の簡単な説明】
【図１】本実施の形態１に係るＸＳＬＴ装置を説明するための説明図である。
【図２】本実施の形態１に係るＸＳＬＴ分散処理システムのシステム構成を示すブロック図である。
【図３】ＸＳＬスタイルシートとＸＭＬ文書の一例を示す図である。
【図４】図２に示したＸＳＬＴ負荷割当装置の処理手順を示すフローチャートである。
【図５】図４に示したＸＳＬ登録処理の処理手順を示すフロ−チャートである。
【図６】本実施の形態２に係るＸＳＬＴ負荷割当装置のＸＳＬＴ装置決定処理の処理手順を示すフローチャートである。
【図７】本実施の形態１および２に係るＸＳＬＴ負荷割当プログラムまたはＸＳＬＴプログラムを実行するコンピュータシステムを示す図である。
【図８】図７に示した本体部の機能構成を示す機能ブロック図である。
【符号の説明】
１０  ＸＳＬＴ装置
２０  ＸＳＬスタイルシート
１００，１１１  コンピュータシステム
１０１  本体部
１０２  ディスプレイ
１０２ａ  表示画面
１０３  キーボード
１０４  マウス
１０５  モデム
１０６  ＬＡＮ
１０７  公衆回線
１０８  フロッピィディスク
１０９  ＣＤ−ＲＯＭ
１１２  サーバ
１１３  プリンタ
１２１  ＣＰＵ
１２２  ＲＡＭ
１２３  ＲＯＭ
１２４  ハードディスクドライブ
１２５  ＣＤ−ＲＯＭドライブ
１２６  フロッピィディスクドライブ
１２７  Ｉ／Ｏインターフェース
１２８  ＬＡＮインターフェース
２１０  ＸＳＬＴ負荷割当装置
２１１  ＸＳＬ先読み部
２１２  ＸＭＬ先読み部
２１３  処理時間予測部
２１４  負荷分散管理部
２１５  通信部
２１６  ＸＳＬＴプロセッサ制御部
２１７  ＸＳＬＴプロセッサ
２１８  ＸＳＬデータベース
２１９  分散ログ
２２１  通信部
２２２  ＸＳＬＴプロセッサ制御部
２２３  ＸＳＬＴプロセッサ
２２４  ＸＳＬデータベース
【図１】
0004004329.tif 000002
【図２】
0004004329.tif 000003
【図３】
0004004329.tif 000004
【図４】
0004004329.tif 000005
【図５】
0004004329.tif 000006
【図６】
0004004329.tif 000007
【図７】
0004004329.tif 000008
【図８】
0004004329.tif 000009