JP3737779B2 - 翻訳サーバ、翻訳方法及びプログラム - Google Patents
翻訳サーバ、翻訳方法及びプログラム Download PDFInfo
- Publication number
- JP3737779B2 JP3737779B2 JP2002155089A JP2002155089A JP3737779B2 JP 3737779 B2 JP3737779 B2 JP 3737779B2 JP 2002155089 A JP2002155089 A JP 2002155089A JP 2002155089 A JP2002155089 A JP 2002155089A JP 3737779 B2 JP3737779 B2 JP 3737779B2
- Authority
- JP
- Japan
- Prior art keywords
- translation
- cache
- file
- translated
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/42—Data-driven translation
- G06F40/47—Machine-assisted translation, e.g. using translation memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Machine Translation (AREA)
Description
【発明の属する技術分野】
本発明は、ネットワークを通じて自動翻訳サービスを提供する翻訳サーバ、翻訳方法及びプログラムに関し、特に、訳文キャッシュを利用して高速な翻訳サービスを提供する翻訳サーバ、翻訳方法及びプログラムに関する。
【0002】
【従来の技術】
近年、ワールド・ワイド・ウェブ(以下「WWW」という)や電子メールに代表されるインターネット技術の普及により、国境を意識することなく様々な情報の入手が可能になっている。
【0003】
更に、会社内へのネットワークシステム導入が広く普及するようになり、クライアントソフトが不要であり、辞書メンテナンスの一元管理が可能な点で有利な自動翻訳処理を有する翻訳サーバをイントラネットに導入するケースが多くなっている。
【0004】
【発明が解決しようとする課題】
しかしながら、イントラネット等のネットワーク上に配置した翻訳サーバにおいて、特定のホームページに対するクライアントからの翻訳要求が多くなるアクセス集中が生じると、翻訳時間が長くなる過負荷状態が度々発生している。このような翻訳サーバの負荷対策として、翻訳処理の並列化やプロキシサーバ(Proxy Server)によるキャッシュなどの技術がある。
【0005】
翻訳サーバの並列化によれば、翻訳要求が集中しても、同時に複数の翻訳要求を受けて取得したウェブページの機械翻訳を並行して実行でき、順次処理に比べ翻訳時間を短縮できる。しかし、翻訳処理の並列化も翻訳要求の集中が更に多くなると、対応が困難であり、並列化による翻訳時間の改善には限度がある。
【0006】
またプロキシサーバはクライアントのインターネットへのアクセス制御するインターネットサーバであり、プロキシサーバによるキャッシュの利用により、クライアントからの要求で一度アクセスしたウェブページをローカルに保存し、その後はクライアントはウェブページをプロキシサーバから取得することで、アクセス性能を向上している。
【0007】
このようなプロキシサーバによるキャッシュを利用して翻訳サーバの翻訳結果を訳文キャッシュデータとしてプロキシサーバ上に保存すれば、クライアントからの翻訳要求に対し翻訳サーバはプロキシサーバから翻訳結果を取得してクライアントに応答することで、翻訳時間を短縮できる。
【0008】
しかし、翻訳サーバにおける機械翻訳では翻訳品質を向上させるため、適時、利用者の翻訳辞書を更新しているが、プロキシサーバによるキャッシュの利用にあっては、翻訳サーバで翻訳辞書を更新しても、既にプロキシサーバに保存されている訳文キャッシュデータのウェブページついては改めて機械翻訳は行われず、更新した翻訳辞書による翻訳結果が得られないという問題も生じている。
【0009】
本発明は、翻訳処理の負荷を軽減し、更に、更新された翻訳辞書の翻訳結果を適確に得ることができる翻訳サーバ、翻訳方法及びプログラムを提供することを目的とする。
【0010】
【課題を解決するための手段】
図1は本発明の原理説明図である。本発明は、ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバ10に於いて、クライアント12に提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳ユーザインタフェース制御部26と、翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得部28と、原文ファイルを翻訳要求により指定された翻訳辞書36を使用して翻訳を実行する翻訳実行部30と、翻訳キャッシュデータベース38から翻訳要求に含まれる原文ファイル更新日に一致する訳文キャッシュファイルに含まれる訳文キャッシュファイル更新日を検索し、一致する訳文キャッシュファイルが見つからない場合、キャッシュ状態を翻訳中に設定して翻訳実行部に原文ファイルを翻訳させ、翻訳結果をクライアントに送信すると共に、訳文キャッシュファイルに翻訳結果を格納してキャッシュ状態を使用可に設定し、更に、キャッシュ状態が翻訳中に設定されている間に訳文キャッシュファイルに対する他の翻訳要求を受けると、キャッシュ状態が使用可となるまで他の翻訳要求を待機させ、一致する訳文キャッシュファイルが見つかる場合、キャッシュ状態が翻訳中ならば、キャッシュ状態が使用可となった後に訳文キャッシュファイルにある翻訳結果をクライアントに送信するキャッシュ処理部と、を備え、
キャッシュ処理部は、取得した原文ファルサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに翻訳実行部に翻訳を実行させることを特徴とする。
【0011】
このように本発明は、翻訳サーバ自身にキャッシュ機能を設けたことで、最初に翻訳要求のあったウェブページから取得した原文ファイルは機械翻訳するが、翻訳結果を訳文キャッシャファイルとして保持するため、その後の同じウェブページに対する翻訳要求に対しては、機械翻訳することなく、訳文キャッシュファイルを読出して応答すればよく、同じウェブページにアクセスが集中しても、翻訳時間を短縮できる。
【0014】
キャッシュ処理部32は、取得した原文ファイルのサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに翻訳実行部に機械翻訳を実行させる。ここで、キャッシュ対象最小サイズは、機械翻訳に要する時間がキャッシュ処理に要する所定時間を超えるファイルサイズである。
【0015】
これはキャッシュ処理も、訳文キャッシュデータベースを検索してクライアントに送信するまでに所定の処理時間がかかり、原文ファイルのサイズが小さい場合には、キャッシュ処理の方が時間がかかってしまう。そこで、原文ファイルのサイズが所定のサイズより小さい場合には機械翻訳を実行することで、翻訳時間を短縮する。
【0020】
本発明は、ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバの翻訳方法を提供する。この翻訳方法は、
翻訳ユーザインタフェース制御部により、クライアントに提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳要求受付ステップと、原文取得部により翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得ステップと、翻訳キャッシュデータベースから、翻訳要求に含まれる原文ファイル更新日に一致する、訳文キャッシュファイルに含まれる訳文キャッシュファイル更新日を検索し、一致する訳文キャッシュファイルが見つからない場合、キャッシュ状態を翻訳中に設定して翻訳実行部に原文ファイルを翻訳させ、翻訳結果をクライアントに送信すると共に、訳文キャッシュファイルに翻訳結果を格納してキャッシュ状態を使用可に設定し、更に、キャッシュ状態が翻訳中に設定されている間に訳文キャッシュファイルに対する他の翻訳要求を受けると、キャッシュ状態が使用可となるまで他の翻訳要求を待機させ、一致する訳文キャッシュファイルが見つかる場合、キャッシュ状態が翻訳中ならば、キャッシュ状態が使用可となった後に訳文キャッシュファイルにある翻訳結果をクライアントに送信するキャッシュ処理ステップと、を備え、
キャッシュ処理ステップは、取得した原文ファイルのサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに翻訳実行部に翻訳を実行させることを特徴とする。
【0023】
【発明の実施の形態】
図2は、本発明による翻訳サーバを設置したシステム環境の説明図である。図2において、本発明による翻訳サーバ10は、会社内などのイントラネットを構築するLAN15に接続されており、LAN15には翻訳サーバ10を利用する依頼者が使用するクライアント12−1,12−2が接続されている。
【0024】
またLAN15にはインターネット制御サーバとして機能するプロキシサーバ14が接続され、LAN15に接続している翻訳サーバ10、クライアント12−1,12−2は、プロキシサーバ14を経由して外部のインターネット16にアクセスすることができる。
【0025】
インターネット16上には、翻訳サーバ10に対するクライアント12−1,12−2からの翻訳要求の対象となるウェブページなどのテキスト情報を含むHTMLデータを公開しているWWWコンテンツサーバ18−1,18−2が接続されている。
【0026】
ここで翻訳サーバ10は、原文を取得する際にはプロキシサーバ14のキャッシュ機能を利用するが、訳文データの返信時はプロキシサーバ14にキャッシュされないように働きかける。
【0027】
即ち、翻訳サーバ10が原文データをプロキシサーバ14経由で取得する場合、原文データがプロキシサーバ14にキャッシュされていればプロキシサーバ14から原文データが届き、これを翻訳する。そして訳文データをクライアント側に返信するとき、例えばHTTPヘッダに、「Cache-Control: no-cache」、「Pragma: no-cache」の情報を付加する。これによって訳文データがプロキシサーバ14にキャッシュされないようにする。
【0028】
図3は、図2の翻訳サーバ10の機能構成を含むシステム環境のブロック図である。図3において、翻訳サーバ10にはサーバ処理部11が設けられ、サーバ処理部11としては通常、WWWサーバ機能とアプリケーションサーバ機能で実現される。
【0029】
サーバ処理部11には、WWW制御部20、ホームページ翻訳HTML22、翻訳ユーザインタフェース制御部26、原文取得部28、翻訳実行部30、キャッシュ処理部32及び辞書更新部34の機能が設けられる。またサーバ処理部11に対しては、翻訳実行部30で使用する翻訳辞書36、キャッシュ処理部32で使用する訳文キャッシュデータベース38、更にシステム情報40が設けられている。
【0030】
一方、翻訳依頼側となるクライアント12−1,12−2にはWWWブラウザ24−1,24−2が設けられており、翻訳サーバ10にアクセスすることで、ユーザインタフェースとしてのホームページ翻訳画面を入手して翻訳要求を行う。
【0031】
次に翻訳サーバ10のサーバ処理部11に設けている各処理機能を説明する。WWW制御部20は、クライアント12−1,12−2のWWWブラウザ24−1,24−2などからのネットワーク接続を制御する。ホームページ翻訳HTML22は、翻訳要求の入力指定を行うことのできるホームページ翻訳画面をクライアント12−1,12−2のWWWブラウザ24−1,24−2に表示させるHTMLソースである。
【0032】
翻訳ユーザインタフェース制御部26は、クライアント12−1,12−2のWWWブラウザ24−1,24−2により表示されているホームページ翻訳画面で翻訳ボタンを押し下げたときに行われる翻訳要求を受信して翻訳処理を起動する。この実施形態にあっては翻訳ユーザインタフェース制御部26はCGI(Common Gateway Interface)を使用する。
【0033】
この翻訳ユーザインタフェース制御部26を構築するCGIは、クライアント12−1,12−2のWWWブラウザ24−1,24−2から起動することのできるウェブサーバプログラム処理機能であり、ホームページ翻訳HTML22によりクライアント12−1,12−2側にホームページ翻訳画面を表示し、このホームページ翻訳画面を使用した翻訳要求を受け付けることのできるプログラムである。
【0034】
翻訳ユーザインタフェース制御部26として機能する翻訳サーバ機能プログラムは、CGI以外に、JSP(Java(R) Server Pages)や、ASP(Active Server Pages)などであってもよい。
【0035】
原文取得部28は、クライアント12−1,12−2側からの翻訳要求により依頼されたウェブページのURLにある原文HTMLソースを原文ファイルとして取得する。この原文取得部28で取得される原文HTMLファイルは、HTML及びテキスト情報が例えば英文で表記されており、この原文HTMLを取得して、翻訳サーバ10は翻訳要求に指定された翻訳方向である英文から日本文への翻訳処理を行うことになる。
【0036】
翻訳実行部30は、原文取得部28で取得されたHTMLやテキストデータを、翻訳要求で指定された翻訳方向(英から日、または日から英)や翻訳辞書36の選択指定に従って、機械翻訳を実行する。
【0037】
キャッシュ処理部32は、原文サイズと予め定めたキャッシュ対象最小サイズとを比較し、原文サイズがキャッシュ対象最小サイズより小さければ翻訳実行部30による機械翻訳を実行させる。原文サイズがキャッシュ対象最小サイズ以上であればキャッシュ処理を実行する。キャッシュ処理部32によるキャッシュ処理は、
(1)原文のURL
(2)ファイル更新日
(3)翻訳要求の翻訳方向
(4)使用辞書リスト
の4つのキャッシュヘッダ情報(キャッシュパラメータ)から、一致する訳文キャッシュファイルを訳文キャッシュデータベース38から検索して取り出す。
【0038】
また訳文キャッシュデータベース38の訳文キャッシュファイルには、キャッシュ状態として「使用可」または「翻訳中」が設定されており、キャッシュ状態が「使用可」であれば、検索した訳文キャッシュファイルのデータを翻訳要求元のクライアントに送ることができる。
【0039】
ここで、クライアント側からの翻訳要求に対し、一致する訳文キャッシュファイルを訳文キャッシュデータベース38から検索できなかった場合にはキャッシュミスヒットとなり、この場合には翻訳実行部30により原文ファイルの機械翻訳を実行することになる。
【0040】
このようにキャッシュミスヒットの判定結果に基づいて原文ファイルの翻訳実行部30に機械翻訳を開始する場合、本発明のキャッシュ処理部32にあっては、翻訳が終了していない原文ファイルの訳文キャッシュファイルを予備的に作成して、そのキャッシュ状態を「翻訳中」として訳文キャッシュデータベース38に予備登録する。ここで予備登録とは、訳文キャッシュデータが格納されていない訳文キャッシュファイルを登録することである。
【0041】
このため、翻訳要求に一致する訳文キャッシュファイルを訳文キャッシュデータベース38から取り出した際に、そのキャッシュ状態が「翻訳中」の場合には、この訳文キャッシュファイルには翻訳結果としての訳文キャッシュデータは格納されておらず、現在、翻訳実行部11において機械翻訳中であることから、機械翻訳が終了して訳文キャッシュデータを格納し終え、キャッシュ状態が「使用可」になるまで待つことが可能となる。
【0042】
キャッシュ状態が「翻訳中」である場合の待ち状態にあっては、一定時間待機してからキャッシュ状態を再度参照するか、あるいは翻訳実行部11から翻訳結果の訳文キャッシュファイルに対する格納完了メッセージをもらって、キャッシュデータのクライアント側への送信を行うようにしてもよい。
【0043】
辞書更新部34は、適宜のタイミングでアップデートされたオプション辞書や更新された利用者辞書などを翻訳辞書36に格納して更新し、この辞書更新を行った場合、訳文キャッシュデータベース38をクリアする。辞書更新の際の訳文キャッシュデータベース38のクリアは、全ての訳文キャッシュファイルをクリアするか、更新対象となった訳文辞書を使用している訳文キャッシュファイルのみをクリアするかを選択することが可能である。
【0044】
図2及び図3における翻訳サーバ10、クライアント12−1,12−2及びプロキシサーバ14は、例えば図4のようなコンピュータのハードウェア資源により実現される。
【0045】
図4のコンピュータにおいて、CPU100のバス101にはRAM102、ハードディスクコントローラ(ソフト)104、フロッピィディスクドライバ(ソフト)110、CD−ROMドライバ(ソフト)114、マウスコントローラ118、キーボードコントローラ122、ディスプレイコントローラ126、通信用ボード130が接続される。
【0046】
ハードディスクコントローラ104はハードディスクドライブ106を接続し、コンピュータの起動時にハードディスクドライブ106から必要なプログラムを呼び出して、RAM102上に展開し、CPU100により実行する。
【0047】
フロッピィディスクドライバ110にはフロッピィディスクドライブ(ハード)112が接続され、フロッピィディスク(R)に対する読み書きができる。CD−ROMドライバ114に対しては、CDドライブ(ハード)116が接続され、CDに記憶されたデータやプログラムを読み込むことができる。
【0048】
マウスコントローラ118はマウス120の入力操作をCPU100に伝える。キーボードコントローラ122はキーボード124の入力操作をCPU100に伝える。ディスプレイコントローラ126は表示部128に対して表示を行う。通信用ボード130は無線を含む通信回線132を使用して他のコンピュータや携帯端末との間で通信を行う。
【0049】
図5は、図3の翻訳サーバ10に設けた訳文キャッシュデータベース38の説明図である。この訳文キャッシュデータベース38には、インデックス1,2,…nに分けて、訳文キャッシュファイル42−1〜42−nが格納されている。
【0050】
図6は、図5の訳文キャッシュデータベース38に格納されている1つの訳文キャッシュファイル42を取り出して、その内容を示している。訳文キャッシュファイル42は、ヘッダ45−1とボディ45−2で構成され、ヘッダ45−1にはキャッシュパラメータとして使用する情報が含まれている。
【0051】
即ち、ヘッダ45−1には、URL44、ファイル更新日46、キャッシュ参照日48、キャッシュ状態50、翻訳方向52及び使用辞書リスト54が格納されている。このうちURL44、翻訳方向52及び使用辞書リスト54は、クライアント側からの翻訳要求で受けた翻訳要求情報から取得したものである。またファイル更新日46は、URL44によりインターネット上からアクセスした原文ファイルから取得したものである。ボディ45−2には訳文キャッシュデータ56が格納される。
【0052】
図7は、図3の翻訳サーバ10に設けたシステム情報40の説明図である。このシステム情報40は、キャッシュ領域最大サイズ58とキャッシュ対象最小原文サイズ60を含んでいる。キャッシュ領域最大サイズ58は、翻訳サーバ10において訳文キャッシュデータベース38として使用可能なメモリ上のキャッシュ領域の最大サイズを指定しており、この例では10GBである。
【0053】
キャッシュ対象最小原文サイズ60は、キャッシュ処理部32によりキャッシュ処理を行うか翻訳実行部30により機械翻訳を実行するかの原文ファイルのファイルサイズを決めており、この例では5KBとしている。即ち、原文ファイルのサイズが5KBより小さければ翻訳実行部30により機械翻訳を実行し、原文ファイルが5KB以上であればキャッシュ処理を行う。
【0054】
これは、近年の機械翻訳を実行する翻訳実行部30の処理性能が向上し、サイズの小さい原文ファイルであればキャッシュ処理より短い時間で翻訳結果を得ることができるためである。
【0055】
したがって、サイズの小さな原文ファイルは、キャッシュ処理よりは機械翻訳の方が処理時間が短縮できることから、キャッシュ対象最小原文サイズ以上の原文ファイルをキャッシュ処理の対象とし、サイズの小さい原文ファイルは機械翻訳とすることで、全体的な翻訳処理性能を向上している。
【0056】
図8は、図3のホームページ翻訳HTML22に基づいて、翻訳ユーザインタフェース制御部26のCGIがクライアント12−1,12−2のWWWブラウザ24−1,24−2に提供して表示させるホームページ翻訳画面62の説明図である。このホームページ翻訳画面62は、翻訳方向指定部64、辞書選択部66、URL指定部68及び翻訳ボタン70を備えている。
【0057】
翻訳方向指定部64は、ダイアログを開くことで、翻訳方向「英日」または「日英」を指定することができる。辞書選択部66は、そのクリックにより、例えば図9のようなプルダウンメニューとして辞書選択画面72を開くことができる。辞書選択画面72には例えば「辞書1」〜「辞書4」のように、使用可能な専門辞書・利用者辞書の辞書メニュー74が表示され、各辞書メニューのダイアログを開いて必要な辞書を選択した後、登録ボタン76を押すことで選択内容が決定されて、図8のホームページ翻訳画面62に戻る。
【0058】
図9の辞書選択画面72で一度辞書選択を行うと、辞書の選択結果は、通常、ブラウザの要求情報として保存され、次回以降に辞書の選択結果が反映できる。また図3のWWW制御部20がセッション管理可能であれば、辞書選択結果を翻訳サーバ10側のセッション情報として保存してもよい。更に翻訳辞書の選択時の順番は、原文ファイル翻訳時における訳語決定の優先順位に使用するようにしてもよい。
【0059】
図8のホームページ翻訳画面62には、辞書選択部66に続いてURL指定部68が設けられ、翻訳利用者はここに原文ファイルの取得先となるインターネット上のURLを入力する。このようにして翻訳方向指定部64、辞書選択部66及びURL指定部68に対する入力設定が済んだならば、翻訳ボタン70を操作することでクライアント側から翻訳サーバ10に対し翻訳要求を送信することができる。
【0060】
図10は、図3の翻訳サーバ10で提供されるホームページ翻訳画面をアクセスするためのURL78の例である。このホームページ翻訳画面のURL78により、図3の例えばクライアント12−1からLAN15にアクセスすることで、翻訳サーバ10のWWW制御部20に接続し、ホームページ翻訳HTML22に基づいて、例えば図8のようなホームページ翻訳画面62をWWWブラウザ24−1で表示することができる。
【0061】
図11は、図8のホームページ翻訳画面62による入力指定が済んで翻訳ボタン70を押したときに翻訳サーバ10に送信される翻訳要求URL80の説明図である。この翻訳要求URL80は、翻訳処理CGIファイル名82に翻訳要求情報を構成する翻訳方向84、辞書選択86及び原文ファイルURL88を付加している。
【0062】
図12(A)は、図11の翻訳要求URL80に翻訳要求情報として付加された原文ファイルURL88によりインターネット上のコンテンツサーバから取得された一般的な原文ファイルとしてのHTMLソース90の例である。このHTMLソース90は、メッセージ・ヘッダ92とメッセージ・ボディ94で構成されている。
【0063】
本発明にあっては、原文ファイルとしてのHTMLソース90において、メッセージ・ヘッダ92の中のファイル更新日「Last−Modified」の情報をキャッシュパラメータの一つとして利用し、またメッセージ・ボディ92の中のテキストデータを対象に翻訳を行って、図12(B)のような訳文HTMLソース96を生成してクライアント側に送る。
【0064】
図13は、図3の翻訳サーバ10と例えばクライアント12−1の間における翻訳処理の手順のタイムチャートである。いまクライアント12−1がインターネット16に接続している例えばWWWコンテンツサーバ18−1のホームページ翻訳を行うためにステップS1で翻訳サーバ10にアクセスすると、このアクセスを受けて翻訳サーバ10はステップS101で翻訳ホームページをクライアント12−1に送信して表示させる。
【0065】
このようにして翻訳サーバ10から翻訳ホームページの提供を受けたクライアント12−1にあっては、ステップS2でホームページ翻訳画面により翻訳要求情報として翻訳方向、辞書選択及び翻訳画面URLを入力指定して翻訳ボタンを押すと、ステップS3で翻訳要求が翻訳サーバ10に対し送出される。
【0066】
このクライアント12−1からの翻訳要求を受けて、翻訳サーバ10はステップS102でサーバ翻訳処理を実行し、ステップS103で翻訳結果をクライアント12−1に送信し、クライアント12−1は翻訳ホームページを表示することになる。
【0067】
図14は、図3の翻訳サーバ10におけるサーバ翻訳処理のフローチャートであり、これが翻訳サーバ10により実行されるプログラムの処理手順を同時に表わしている。
【0068】
図14において、ステップS1でWWW制御部20によりクライアントからのアクセスを受けると、翻訳ユーザインタフェース制御部26のCGIによりホームページ翻訳HTML22を作成し、HTMLソースとしてステップS2でクライアント側に送信し、図8のようなホームページ翻訳画面62を表示させる。
【0069】
このためクライアント側にあっては、図8のようなホームページ翻訳画面62により翻訳方向、辞書選択、原文ファイルURLを入力指定し、翻訳ボタン70を押すことで、例えば図11のフォーマット内容を持つ翻訳要求URL80をステップS3で受信する。
【0070】
クライアントからの翻訳要求を受けると、翻訳ユーザインタフェース制御部26のCGIが起動し、ステップS4で、受信した翻訳要求情報を解析する。次にステップS5で、原文取得部28が翻訳要求情報から取得した原文ファイルURL88を使用して、プロキシサーバ14経由でインターネット16の例えばWWWコンテンツサーバ18−1にアクセスし、原文ファイルとして例えば図12(A)のようなHTMLソース90を取得する。
【0071】
次にステップS6で、キャッシュ処理部32が、取得した原文ファイルのサイズがキャッシュ対象最小サイズ以上か否かチェックする。ここでキャッシュ対象最小サイズが例えば図7のシステム情報40のように5KBであり、原文サイズが5KB以上であった場合には、ステップS7に進み、翻訳要求の対象となった原文ファイルに一致する訳文キャッシュファイルを訳文キャッシュデータベース38から検索する。
【0072】
この検索は、原文情報及び翻訳要求情報と訳文キャッシュデータベース38に格納している訳文キャッシュファイルのヘッダ情報との比較で行う。この比較は、例えば図11の翻訳要求URL80、図12(A)の原文ファイルとなるHTMLソース90について、図6の訳文キャッシュファイル42のヘッダ45−1と比較する場合を例に取ると、次のようになる。
(1)訳文キャッシュの「URL44」と原文を取得したURLを比較。
(2)訳文キャッシュの「ファイル更新日46」と原文ファイルの「Last−Modified」を比較。
(3)訳文キャッシュの「翻訳方向52」と翻訳要求情報の「翻訳方向84」を比較。
(4)訳文キャッシュの「使用辞書リスト54」と翻訳要求情報の「辞書選択86」を比較。
【0073】
この(1)〜(4)の比較により全て一致した場合には、ステップS8でキャッシュヒットと判定し、ステップS13に進む。一方、(1)〜(4)のうち1つでも不一致であった場合には、キャッシュミスヒットであることから、ステップS8からステップS9に進み、原文ファイルの機械翻訳を実行する。
【0074】
尚、(4)の使用辞書の比較にあっては、翻訳時に優先順位がある場合は、「使用辞書リスト54」と「辞書選択86」の辞書の順位を比較し、一致したらキャッシュヒットとし、一方、優先順位がない場合には、組み合わせが一致したらキャッシュヒットとする。
【0075】
この原文ファイルの機械翻訳に際しては、まずステップS9で訳文キャッシュデータを格納していない訳文キャッシュファイルを訳文キャッシュデータベース38に予備登録する。この予備登録は、図6の内容を持つ訳文キャッシュファイル42に対し、原文ファイルから取得したURLをURL44に格納し、原文ファイルの「Last−Modified」をファイル更新日46に格納する。また翻訳要求情報の「MODE」を翻訳方向52に格納し、同じく翻訳要求情報の「DIC1」〜「DIC3」の内容を使用辞書リスト54に格納する。
【0076】
もちろん原文ファイルの翻訳は済んでいないことから、訳文キャッシュデータ56の内容は空となっている。更に、キャッシュ状態50としては「翻訳中」を格納する。
【0077】
このようにして、ステップS9で訳文キャッシュデータが空となった訳文キャッシュファイルをキャッシュ状態を「翻訳中」として訳文キャッシュデータベース38に登録した後、ステップS10で翻訳実行部30が原文ファイルについて機械翻訳を開始する。
【0078】
機械翻訳が済むと、ステップS11で訳文キャッシュデータとして予備登録している訳文キャッシュデータベース38の訳文キャッシュファイルに格納し、そのキャッシュ状態を「翻訳中」から「使用可」に変更する。そしてステップS15で、訳文データを翻訳要求を行ったクライアントに送信する。
【0079】
一方、ステップS8で、前述したキャッシュパラメータ(1)〜(4)が一致してキャッシュヒットとなった場合には、ステップS8からステップS12に進み、一致した訳文キャッシュファイルのキャッシュ状態が「翻訳中」か否かチェックする。
【0080】
もし翻訳中であれば、先行する翻訳要求に伴い原文ファイルの機械翻訳が実行中であることから、ステップS14でキャッシュ状態が「翻訳中」から「使用可」となるまで待機する。ステップS12でキャッシュ状態が「使用可」であれば、ステップS13に進み、図6の訳文キャッシュファイル42におけるキャッシュ参照日48を更新した後、ステップS15で訳文キャッシュデータをクライアント側に送信する。
【0081】
一方、ステップS6で、取得した原文ファイルのサイズがキャッシュ対象最小サイズとなる5KBより小さかった場合には、ステップS14に進み、翻訳実行部30で原文ファイルの機械翻訳を実行し、翻訳結果をステップS15でクライアント側に送信する。
【0082】
図15は、図14のサーバ翻訳処理において、最初に受信した翻訳要求による原文ファイルの機械翻訳中に同じ原文ファイルに対し複数の翻訳要求を受信した場合の動作のタイムチャートである。
【0083】
図15において、時刻t1の処理102で最初の翻訳要求を受信し、この翻訳要求に基づいて原文ファイルを取得してキャッシュ検索を行ったところ、処理104でミスヒットになったとすると、処理106でキャッシュ予備登録を行った後に、処理108で機械翻訳による翻訳処理を実行する。このときキャッシュ状態は翻訳中114−1となっている。
【0084】
処理108の機械翻訳の実行が終了すると、処理110で翻訳結果のキャッシュ登録を行う。そして処理112で翻訳結果をクライアント側に送信する。これによってキャッシュ状態は使用可116−1となる。
【0085】
一方、最初の翻訳要求に基づく処理108の機械翻訳の実行中に、時刻t2で同じ原文ファイルについて処理118の翻訳要求を受信したとすると、このとき処理106で処理対象となる原文ファイルについてキャッシュ予備登録が行われているため、処理120のようにキャッシュヒットとなる。しかしながら、このときのキャッシュ状態は翻訳中114−1であることから、処理122のように待ち状態となる。
【0086】
そして、処理112で翻訳結果のクライアント側への送信が済んでキャッシュ状態が使用可116−1になったとき、待ち状態が解除されて、処理124のように訳文キャッシュデータベース38から訳文キャッシュデータを取得してクライアント側に送信できる。
【0087】
また時刻t3のように、処理126により3番目の同じ原文ファイルに対する翻訳要求を受信した場合も、処理128のようにキャッシュヒットとなるが、キャッシュ状態は翻訳中114−1であるため、処理130のように待ち状態となり、2番目の処理118における翻訳要求からの処理124による処理を終了した後、キャッシュ状態が使用可116−2となることで、処理130の待ち状態を解除し、処理132で訳文キャッシュデータを訳文キャッシュデータベース38から取得してクライアント側に送信する。
【0088】
一方、時刻t3の処理126による3番目の翻訳要求受信に伴う訳文キャッシュデータの送信が行われている時刻t6のタイミングで、4番目の同じ原文ファイルに対する処理134による翻訳要求を受信した場合については、処理136でキャッシュヒットとなり、このときキャッシュ状態は使用可116−3にあることから、直ちに処理138で訳文キャッシュデータをクライアント側に送信できる。この場合は、キャッシュ待ち状態はない。
【0089】
この図15の動作のように、同じ原文ファイルに対し複数の翻訳要求が集中した場合、最初の翻訳要求によるミスヒットで機械翻訳中にあれば、このとき受けた他の翻訳要求については、機械翻訳の終了によるキャッシュ登録によるキャッシュ状態の「使用可」への変更を待ってキャッシュデータをクライアント側に送信することとなり、これによって同一の原文ファイルの翻訳要求が集中した場合の並列的な機械翻訳の実行を回避することができる。
【0090】
図16は、図15と同じように、同一の原文ファイルに対し複数の翻訳要求が集中した場合のキャッシュ処理であり、本発明のように機械翻訳の開始に先立って訳文キャッシュファイルの予備登録を行わず、機械翻訳が完了した後に訳文キャッシュファイルの登録を行った場合の動作である。
【0091】
この場合には、最初の処理202の時刻t1における翻訳要求の受信に対し、処理204でミスヒットとなり、これにより処理206で翻訳実行が開始される。この翻訳実行中に時刻t2の処理216のように2番目の同一ファイルに対する翻訳要求を受信すると、キャッシュ登録はないことから処理218のようにミスヒットとなり、このため最初の翻訳実行の処理206に並行して同一ファイルについて処理220の翻訳実行を開始する。
【0092】
更に時刻t3の処理224で同一ファイルについて翻訳要求を受信したとすると、処理226でミスヒットとなり、処理228で同一ファイルについて翻訳実行となる。そして、最初の翻訳要求に対する処理206の翻訳実行が終了すると、処理208で初めて訳文キャッシュファイルの訳文キャッシュデータベース38への登録が行われ、処理210で翻訳結果を最初の要求元のクライアントに送信する。
【0093】
このときキャッシュ状態が使用可214となるが、時刻t2からの2番目の翻訳要求について及び時刻t3からの3番目の翻訳要求については、既に処理220,228で機械翻訳の翻訳実行となっているため、キャッシュは利用されない。この結果、時刻t4のキャッシュ登録が完了するまで、同一原文ファイルに対し集中した翻訳要求については、全て並列的に翻訳実行部30による機械翻訳を行うことになる。
【0094】
もちろん、時刻t4以降に受けた時刻t5の処理232の翻訳要求については、処理234のようにキャッシュヒットとなり、処理236で訳文キャッシュデータを訳文キャッシュデータベース38から取得してクライアント側に送信できるようになる。
【0095】
このような図16の処理を本発明の翻訳サーバにおける図15の処理と対比してみると、同一原文ファイルに翻訳要求が集中したときの翻訳実行部30による機械翻訳の並行処理が本発明にあっては防止でき、翻訳実行部30による機械翻訳の処理負担を大幅に軽減することができ、最初の翻訳要求については機械翻訳、それ以降の翻訳要求についてはキャッシュ処理とすることで、全体的な翻訳時間を短縮することもできる。
【0096】
図17は、図3の辞書更新部34による翻訳辞書36の更新処理のフローチャートである。この翻訳辞書更新処理は、ステップS1でアップロードされた翻訳辞書ファイルを、例えばHDD上の既に格納されている翻訳辞書36に反映して辞書更新を行う。
【0097】
続いてステップS2でオールクリアモードか否かチェックし、もしオールクリアモードであれば、ステップS3に進み、訳文キャッシュデータベース38の全訳文キャッシュファイルを削除する。一方、オールクリアモードでなかった場合には、ステップS4に進み、訳文キャッシュデータベース38に格納されている訳文キャッシュファイルのうち、更新対象となった翻訳辞書を使用していた訳文キャッシュファイルを削除する。
【0098】
このような翻訳辞書更新処理にあっては、辞書更新に伴い、全ての訳文キャッシュファイルあるいは更新対象となった辞書を使用した訳文キャッシュファイルを削除することで、それ以降については更新された翻訳辞書による翻訳結果のみが得られることとなり、適切に翻訳辞書の更新結果を反映させることができる。
【0099】
なお上記の実施形態は、会社内のイントラネット上に翻訳サーバを設置して内部的にクライアントから翻訳要求を行って翻訳サービスを提供する場合を例にとっているが、本発明の翻訳サーバ10をインターネット16に接続し、インターネットを経由して任意のクライアントから自由に翻訳要求を行って翻訳サービスを提供できるようにしてもよい。
【0100】
また本発明は、その目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
【0101】
(付記)
(付記1)
ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバに於いて、
前記クライアントに提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳ユーザインタフェース制御部と、
前記翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得部と、
前記原文ファイルを前記翻訳要求により指定された翻訳辞書を使用して機械翻訳を実行する翻訳実行部と、
翻訳キャッシュデータベースから前記翻訳要求に一致するヘッダの訳文キャッシュファイルを検索して訳文キャッシュデータを前記クライアントに送信し、前記訳文キャッシュファイルが検索できない場合は、前記翻訳要求に一致するヘッダのみを格納した訳文キャッシュファイルを前記訳文キャッシュデータベースに予備登録した後に、キャッシュ状態を翻訳中に設定して前記翻訳実行部に前記原文ファイルを機械翻訳させ、翻訳結果を前記クライアントに送信すると共に前記予備登録している訳文キャッシュファイルに前記翻訳結果を格納してキャッシュ状態を使用可に設定するキャッシュ処理部と、
を備えたことを特徴とする翻訳サーバ。(1)
【0102】
(付記2)
付記1記載の翻訳サーバに於いて、前記翻訳ユーザインタフェース制御部は、ホームページ翻訳HTMLに基づいて翻訳要求を入力指定可能なホームページ翻訳画面を前記クライアントのブラウザに提供することを特徴とする翻訳サーバ。
【0103】
(付記3)
付記1記載の翻訳サーバに於いて、前記キャッシュ処理部は、前記取得した原文ファイルのサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに前記翻訳実行部に機械翻訳を実行させることを特徴とする翻訳サーバ。
【0104】
(付記4)
付記3記載の翻訳サーバに於いて、前記キャッシュ対象最小サイズは、機械翻訳に要する時間がキャッシュ処理に要する所定時間を超えるファイルサイズであることを特徴とする翻訳サーバ。
【0105】
(付記5)
付記1記載の翻訳サーバに於いて、
前記翻訳ユーザインタフェース制御部は、前記翻訳要求として、原文ファイルのURL、原文ファイルの更新日、翻訳方向及び使用辞書リストを含む翻訳要求を受信し、
前記キャッシュ処理部は、前記翻訳要求から取得した原文ファイルのURL、原文ファイルの更新日、翻訳方向及び使用辞書リストに一致するヘッダの訳文キャッシュファイルを前記訳文キャッシュデータベースから検索することを特徴とする翻訳サーバ。
【0106】
(付記6)
付記1記載の翻訳サーバに於いて、前記キャッシュ処理部は、前記訳文キャッシュファイルを予備登録した後の翻訳中のキャッシュ状態で、同一の訳文キャッシュファイルに対する他の翻訳要求を受けた場合、前記キャッシュ状態が使用可となるまで他の翻訳要求のキャッシュ処理を待機させることを特徴とする翻訳サーバ。
【0107】
(付記7)
付記1記載の翻訳サーバに於いて、前記翻訳辞書を更新すると共に辞書更新時に前記訳文キャッシュデータベースに登録している訳文キャッシュファイルをクリアさせる辞書更新部を設けたことを特徴とする翻訳サーバ。(2)
【0108】
(付記8)
ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバの翻訳方法に於いて、
翻訳ユーザインタフェース制御部により、前記クライアントに提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳要求受付ステップと、
原文取得部により前記翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得ステップと、
翻訳キャッシュデータベースから前記翻訳要求に一致するヘッダの訳文キャッシュファイルを検索して訳文キャッシュデータを前記クライアントに送信し、前記訳文キャッシュファイルが検索できない場合は、前記翻訳要求に一致するヘッダのみを格納した訳文キャッシュファイルを前記訳文キャッシュデータベースに予備登録した後に、キャッシュ状態を翻訳中に設定して翻訳実行部に前記原文ファイルを翻訳させ、翻訳結果を前記クライアントに送信すると共に前記予備登録している訳文キャッシュファイルに前記翻訳結果を格納してキャッシュ状態を使用可に設定するキャッシュ処理ステップと、
を備えたことを特徴とする翻訳方法。(3)
【0109】
(付記9)
付記8記載の翻訳方法に於いて、前記翻訳要求受付ステップは、ホームページ翻訳HTMLに基づいて翻訳要求を入力指定可能なホームページ翻訳画面を前記クライアントのブラウザに提供することを特徴とする翻訳方法。(4)
【0110】
(付記10)
付記8記載の翻訳方法於いて、前記キャッシュ処理ステップは、前記取得した原文ファイルのサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに前記翻訳実行部に機械翻訳を実行させることを特徴とする翻訳方法。(5)
【0111】
(付記11)
付記10記載の翻訳方法に於いて、前記キャッシュ対象最小サイズは、機械翻訳に要する時間がキャッシュ処理に要する所定時間を超えるファイルサイズであることを特徴とする翻訳方法。(6)
【0112】
(付記12)
付記8記載の翻訳方法に於いて、
前記翻訳要求受付ステップは、前記翻訳要求として、原文ファイルのURL、原文ファイルの更新日、翻訳方向及び使用辞書リストを含む翻訳情報を受信し、
前記キャッシュ処理ステップは、前記翻訳要求から取得した原文ファイルのURL、原文ファイルの更新日、翻訳方向及び使用辞書リストに一致するヘッダの訳文キャッシュファイルを前記訳文キャッシュデータベースから検索することを特徴とする翻訳方法。(7)
【0113】
(付記13)
付記8記載の翻訳方法に於いて、前記キャッシュ処理ステップは、前記訳文キャッシュファイルを予備登録した後の翻訳中のキャッシュ状態で、同一の訳文キャッシュファイルに対する他の翻訳要求を受けた場合、前記キャッシュ状態が使用可となるまで他の翻訳要求のキャッシュ処理を待機させることを特徴とする翻訳方法。(8)
【0114】
(付記14)
付記8記載の翻訳方法に於いて、更に、前記翻訳辞書を更新すると共に辞書更新時に前記訳文キャッシュデータベースに登録している訳文キャッシュファイルをクリアさせる辞書更新ステップを設けたことを特徴とする翻訳方法。(9)
【0115】
(付記15)
ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバを構成するコンピュータに、
クライアントに提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳要求受付ステップと、
前記翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得ステップと、
翻訳キャッシュデータベースから前記翻訳要求に一致するヘッダの訳文キャッシュファイルを検索して訳文キャッシュデータを前記クライアントに送信し、前記訳文キャッシュファイルが検索できない場合は、前記翻訳要求に一致するヘッダのみを格納した訳文キャッシュファイルを前記訳文キャッシュデータベースに予備登録した後に、キャッシュ状態を翻訳中に設定して翻訳実行部に前記原文ファイルを翻訳させ、翻訳結果を前記クライアントに送信すると共に前記予備登録している訳文キャッシュファイルに前記翻訳結果を格納してキャッシュ状態を使用可に設定するキャッシュ処理ステップと、
を実行させることを特徴とするプログラム。(10)
【0116】
(付記16)
付記15記載のプログラムに於いて、前記翻訳要求受付ステップは、ホームページ翻訳HTMLに基づいて翻訳要求を入力指定可能なホームページ翻訳画面を前記クライアントのブラウザに提供することを特徴とするプログラム。
【0117】
(付記17)(オリジナル2:原文ファイルサイズ)
付記15記載のプログラム於いて、前記キャッシュ処理ステップは、前記取得した原文ファイルのサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに前記翻訳実行部に機械翻訳を実行させることを特徴とするプログラム。
【0118】
(付記18)
付記17記載のプログラムに於いて、前記キャッシュ対象最小サイズは、機械翻訳に要する時間がキャッシュ処理に要する所定時間を超えるファイルサイズであることを特徴とするプログラム。
【0119】
(付記19)
付記15記載のプログラムに於いて、
前記翻訳要求受付ステップは、前記翻訳要求として、原文ファイルのURL、原文ファイルの更新日、翻訳方向及び使用辞書リストを含む翻訳要求を受信し、
前記キャッシュ処理ステップは、前記翻訳要求から取得した原文ファイルのURL、原文ファイルの更新日、翻訳方向及び使用辞書リストに一致するヘッダの訳文キャッシュファイルを前記訳文キャッシュデータベースから検索することを特徴とするプログラム。
【0120】
(付記20)
付記15記載のプログラムに於いて、前記キャッシュ処理ステップは、前記訳文キャッシュファイルを予備登録した後の翻訳中のキャッシュ状態で、同一の訳文キャッシュファイルに対する他の翻訳要求を受けた場合、前記キャッシュ状態が使用可となるまで他の翻訳要求のキャッシュ処理を待機させることを特徴とするプログラム。
【0121】
(付記21)
付記15記載のプログラムに於いて、更に、前記翻訳辞書を更新すると共に辞書更新時に前記訳文キャッシュデータベースに登録している訳文キャッシュファイルをクリアさせる辞書更新ステップを設けたことを特徴とするプログラム。
【0122】
【発明の効果】
以上説明してきたように本発明によれば、翻訳サーバ自身にキャッシュ機能を設けたことで、一度翻訳要求のあったウェブページから取得した原文ファイルは機械翻訳するが、翻訳結果を訳文キャッシュファイルとして保持するため、その後の同じウェブページに対する翻訳要求に対しては機械翻訳することなく、訳文キャッシュファイルを読み出して応答でき、同じウェブページにアクセスが集中しても、キャッシュ機能を利用することで翻訳時間を短縮することができる。
【0123】
特に本発明のキャッシュ処理にあっては、翻訳要求に対し原文ファイルを機械翻訳する前に訳文キャッシュファイルを訳文キャッシュデータベースに予備登録し、キャッシュ状態を「翻訳中」にセットして機械翻訳を実行しているため、機械翻訳の実行中に同じ原文ファイルに対する他の翻訳要求を受けた場合、キャッシュヒットを判定するが、キャッシュ状態に基づいてキャッシュ空き待ちとなり、これによって機械翻訳の実行中に同じ原文ファイルの翻訳要求を受けても、複数の原文ファイルの機械翻訳が並行的に実行されることを防止し、キャッシュミスヒットの際の機械翻訳の負担を大幅に低減することができる。
【0124】
更に、翻訳辞書の更新が行われた場合には、少なくとも更新対象となった翻訳辞書を使用した訳文キャッシュファイルをクリアするため、翻訳辞書の更新結果が確実に訳文キャッシュファイルに反映でき、辞書更新の結果がキャッシュデータに確実に反映できる。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明の翻訳サーバを設置したシステム環境の説明図
【図3】図2における翻訳サーバの機能構成を含むシステム環境のブロック図
【図4】図3の翻訳サーバに適用されるコンピュータのハードウェア環境の説明図
【図5】図3の訳文キャッシュデータベースの説明図
【図6】図5の訳文キャッシュファィルの説明図
【図7】図3のシステム情報の説明図
【図8】本発明の翻訳サーバでクライアントに提供されるホームページ翻訳画面の説明図
【図9】図7からプルダウンメニューとして開いた辞書選択画面の説明図
【図10】図3の翻訳サーバにおけるホームページ翻訳画面のURLの説明図
【図11】クライアントから翻訳サーバに送信される翻訳要求情報の説明図
【図12】本発明の訳文サーバで取得するHTMLソース(原文ファイル)とその訳文の説明図
【図13】本発明におけるクライアントと翻訳サーバの処理手順のタイムチャート
【図14】本発明によるサーバ翻訳処理のフローチャート
【図15】本発明の翻訳サーバによる機械翻訳に先立ってキャッシュ予備登録を行う場合のキャッシュ処理動作のタイムチャート
【図16】機械翻訳完了後にキャッシュ登録を行う場合のキャッシュ処理動作のタイムチャート
【図17】本発明の翻訳サーバにおける翻訳辞書更新処理のフローチャート
【符号の説明】
10:翻訳サーバ
11:サーバ処理部
12,12−1,12−2:クライアント
14:プロキシサーバ
15:LAN
16:インターネット
18−1,18−2:WWWコンテンツサーバ
20:WWW制御部
22:ホームページ翻訳HTML
24−1,24−2:WWWブラウザ
26:翻訳ユーザインタフェース制御部
28:原文取得部
30:翻訳実行部
32:キャッシュ処理部
34:辞書更新部
36:翻訳辞書
38:訳文キャッシュデータベース
40:システム情報
42,42−1〜42−n:訳文キャッシュファイル
44:URL
46:ファイル更新日
48:キャッシュ参照日
50:キャッシュ状態
52:翻訳方向
54:使用辞書リスト
56:訳文キャッシュデータ
58:キャッシュ領域最大サイズ
60:キャッシュ対象最小原文サイズ
62:ホームページ翻訳画面
64:翻訳方向指定部
66:辞書選択部
68:URL指定部
70:翻訳ボタン
72:辞書選択画面
74:辞書メニュー
76:登録ボタン
90:HTMLソース
92,98:メッセージ・ヘッダ
94:メッセージ・ボディ
96:訳文HTMLソース
Claims (4)
- ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバに於いて、
前記クライアントに提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳ユーザインタフェース制御部と、
前記翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得部と、
前記原文ファイルを前記翻訳要求により指定された翻訳辞書を使用して翻訳を実行する翻訳実行部と、
翻訳キャッシュデータベースから、前記翻訳要求に含まれる原文ファイル更新日に一致する、訳文キャッシュファイルに含まれる訳文キャッシュファイル更新日を検索し、
一致する訳文キャッシュファイルが見つからない場合、キャッシュ状態を翻訳中に設定して前記翻訳実行部に前記原文ファイルを翻訳させ、翻訳結果を前記クライアントに送信すると共に、前記訳文キャッシュファイルに前記翻訳結果を格納して前記キャッシュ状態を使用可に設定し、更に、前記キャッシュ状態が翻訳中に設定されている間に前記訳文キャッシュファイルに対する他の翻訳要求を受けると、前記キャッシュ状態が使用可となるまで他の翻訳要求を待機させ、
一致する訳文キャッシュファイルが見つかる場合、前記キャッシュ状態が翻訳中ならば、前記キャッシュ状態が使用可となった後に前記訳文キャッシュファイルにある前記翻訳結果を前記クライアントに送信するキャッシュ処理部と、
を備え、
前記キャッシュ処理部は、前記取得した原文ファルサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに前記翻訳実行部に翻訳を実行させることを特徴とする翻訳サーバ。 - ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバの翻訳方法に於いて、
翻訳ユーザインタフェース制御部により、前記クライアントに提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳要求受付ステップと、
原文取得部により前記翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得ステップと、
翻訳キャッシュデータベースから、前記翻訳要求に含まれる原文ファイル更新日に一致する、訳文キャッシュファイルに含まれる訳文キャッシュファイル更新日を検索し、
一致する訳文キャッシュファイルが見つからない場合、キャッシュ状態を翻訳中に設定して翻訳実行部に前記原文ファイルを翻訳させ、翻訳結果を前記クライアントに送信すると共に、前記訳文キャッシュファイルに前記翻訳結果を格納して前記キャッシュ状態を使用可に設定し、更に、前記キャッシュ状態が翻訳中に設定されている間に前記訳文キャッシュファイルに対する他の翻訳要求を受けると、前記キャッシュ状態が使用可となるまで他の翻訳要求を待機させ、
一致する訳文キャッシュファイルが見つかる場合、前記キャッシュ状態が翻訳中ならば、前記キャッシュ状態が使用可となった後に前記訳文キャッシュファイルにある前記翻訳結果を前記クライアントに送信するキャッシュ処理ステップと、
を備え、
前記キャッシュ処理ステップは、前記取得した原文ファイルのサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに前記翻訳実行部に翻訳を実行させることを特徴とする翻訳方法。 - 請求項2記載の翻訳方法に於いて、前記キャッシュ対象最小サイズは、翻訳に要する時間がキャッシュ処理に要する所定時間を超えるファイルサイズであることを特徴とする翻訳方法。
- ネットワークを通じてクライアントに翻訳機能を提供する翻訳サーバを構成するコンピユータに、
前記クライアントに提供されたユーザインタフェースからの翻訳要求を受信して翻訳処理を起動する翻訳要求受付ステップと、
前記翻訳要求により指定されたアドレスにアクセスして原文ファイルを取得する原文取得ステップと、
翻訳キャッシュデータベースから、前記翻訳要求に含まれる原文ファイル更新日に一致する、訳文キャッシュファイルに含まれるキャッシュファイル更新日を検索し、
一致する訳文キャッシュファイルが見つからない場合、キャッシュ状態を翻訳中に設定して翻訳実行部に前記原文ファイルを翻訳させ、翻訳結果を前記クライアントに送信すると共に、前記訳文キャッシュファイルに前記翻訳結果を格納して前記キャッシュ状態を使用可に設定し、更に、前記キャッシュ状態が翻訳中に設定されている間に前記訳文キャッシュファイルに対する他の翻訳要求を受けると、前記キャッシュ状態が使用可となるまで他の翻訳要求を待機させ、
一致する訳文キャッシュファイルが見つかる場合、前記キャッシュ状態が翻訳中ならば、前記キャッシュ状態が使用可となった後に前記訳文キャッシュファイルにある前記翻訳結果を前記クライアントに送信するキャッシュ処理ステップと、
を実行させ、
前記キャッシュ処理ステップは、前記取得した原文ファイルのサイズがキャッシュ対象最小サイズより小さい場合、キャッシュ処理を行わずに前記翻訳実行部に翻訳を実行させることを特徴とするプログラム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002155089A JP3737779B2 (ja) | 2002-05-29 | 2002-05-29 | 翻訳サーバ、翻訳方法及びプログラム |
| US10/436,672 US7197450B2 (en) | 2002-05-29 | 2003-05-13 | Translation server, method, and program utilizing an updated translated sentence cache database |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002155089A JP3737779B2 (ja) | 2002-05-29 | 2002-05-29 | 翻訳サーバ、翻訳方法及びプログラム |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2003345801A JP2003345801A (ja) | 2003-12-05 |
| JP2003345801A5 JP2003345801A5 (ja) | 2005-09-22 |
| JP3737779B2 true JP3737779B2 (ja) | 2006-01-25 |
Family
ID=29561398
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002155089A Expired - Fee Related JP3737779B2 (ja) | 2002-05-29 | 2002-05-29 | 翻訳サーバ、翻訳方法及びプログラム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7197450B2 (ja) |
| JP (1) | JP3737779B2 (ja) |
Families Citing this family (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4048188B2 (ja) * | 2004-06-07 | 2008-02-13 | 株式会社インパルスジャパン | Webページ翻訳装置及びwebページ翻訳方法 |
| US8239183B2 (en) * | 2005-09-16 | 2012-08-07 | Xerox Corporation | Method and system for universal translating information |
| EP2511833B1 (en) * | 2006-02-17 | 2020-02-05 | Google LLC | Encoding and adaptive, scalable accessing of distributed translation models |
| US8209162B2 (en) | 2006-05-01 | 2012-06-26 | Microsoft Corporation | Machine translation split between front end and back end processors |
| JP4398966B2 (ja) * | 2006-09-26 | 2010-01-13 | 株式会社東芝 | 機械翻訳を行う装置、システム、方法およびプログラム |
| US7801721B2 (en) * | 2006-10-02 | 2010-09-21 | Google Inc. | Displaying original text in a user interface with translated text |
| GB0619887D0 (en) * | 2006-10-07 | 2006-11-15 | Ibm | Data processing system and method |
| US8494834B2 (en) * | 2006-11-21 | 2013-07-23 | Lionbridge Technologies, Inc. | Methods and systems for using and updating remotely-generated translation predictions during local, computer-aided translation |
| US8046233B2 (en) * | 2006-11-21 | 2011-10-25 | Lionbridge Technologies, Inc. | Methods and systems for local, computer-aided translation using remotely-generated translation predictions |
| US8335679B2 (en) * | 2006-11-21 | 2012-12-18 | Lionbridge Technologies, Inc. | Methods and systems for local, computer-aided translation incorporating translator revisions to remotely-generated translation predictions |
| CA2670029C (en) * | 2006-11-21 | 2015-01-20 | Lionbridge Technologies, Inc. | Methods and systems for local, computer-aided translation incorporating translator revisions to remotely-generated translation predictions |
| US20080243475A1 (en) * | 2007-03-16 | 2008-10-02 | Steven Scott Everhart | Web content translation system, method, and software |
| US10296588B2 (en) * | 2007-05-31 | 2019-05-21 | Red Hat, Inc. | Build of material production system |
| JP5105513B2 (ja) * | 2007-07-20 | 2012-12-26 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 処理対象として適切なテキストを選択する技術 |
| US8423353B2 (en) * | 2009-03-25 | 2013-04-16 | Microsoft Corporation | Sharable distributed dictionary for applications |
| US9836448B2 (en) * | 2009-04-30 | 2017-12-05 | Conversant Wireless Licensing S.A R.L. | Text editing |
| US8799408B2 (en) * | 2009-08-10 | 2014-08-05 | Sling Media Pvt Ltd | Localization systems and methods |
| JP5606385B2 (ja) * | 2011-04-28 | 2014-10-15 | 楽天株式会社 | サーバ装置、サーバ装置の制御方法、及び、プログラム |
| CN103455478A (zh) * | 2012-05-21 | 2013-12-18 | 腾讯科技(深圳)有限公司 | 加速网页访问的方法和装置 |
| US20140058879A1 (en) * | 2012-08-23 | 2014-02-27 | Xerox Corporation | Online marketplace for translation services |
| CN107943794A (zh) * | 2016-10-12 | 2018-04-20 | 阿里巴巴集团控股有限公司 | 一种翻译方法及系统 |
| CN110019682B (zh) * | 2017-12-28 | 2022-12-27 | 北京京东尚科信息技术有限公司 | 用于处理信息的系统、方法和装置 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1185755A (ja) | 1997-09-02 | 1999-03-30 | Matsushita Electric Ind Co Ltd | 機械翻訳装置、機械翻訳方法および機械翻訳用記録媒体 |
| JP2000276431A (ja) | 1999-03-25 | 2000-10-06 | Nec Corp | 翻訳機能付きプロキシキャッシュサーバ及びそれを有する翻訳機能付きブラウジング・システム |
| JP4073635B2 (ja) | 2000-02-29 | 2008-04-09 | 富士通株式会社 | 中継装置、サーバ装置、端末装置、及びこれを利用した翻訳サーバシステム |
| JP2001350753A (ja) | 2000-04-07 | 2001-12-21 | Fujitsu Ltd | 翻訳システム、翻訳処理装置、記録媒体およびプログラム |
| JP2001325280A (ja) | 2000-05-15 | 2001-11-22 | Tsubasa System Co Ltd | データベース検索システム |
| WO2002001401A1 (en) * | 2000-06-26 | 2002-01-03 | Onerealm Inc. | Method and apparatus for normalizing and converting structured content |
| JP4011268B2 (ja) | 2000-07-05 | 2007-11-21 | 株式会社アイアイエス | 多言語翻訳システム |
| US7027975B1 (en) * | 2000-08-08 | 2006-04-11 | Object Services And Consulting, Inc. | Guided natural language interface system and method |
-
2002
- 2002-05-29 JP JP2002155089A patent/JP3737779B2/ja not_active Expired - Fee Related
-
2003
- 2003-05-13 US US10/436,672 patent/US7197450B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2003345801A (ja) | 2003-12-05 |
| US20030225569A1 (en) | 2003-12-04 |
| US7197450B2 (en) | 2007-03-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3737779B2 (ja) | 翻訳サーバ、翻訳方法及びプログラム | |
| JP3160719B2 (ja) | コンピュータのネットワークからワールドワイドウェッブ上のページを捜し出したり、ドキュメントを捜し出したりするためのシステム及び方法 | |
| US6973546B2 (en) | Method, system, and program for maintaining data in distributed caches | |
| US8825754B2 (en) | Prioritized preloading of documents to client | |
| US7941609B2 (en) | HTTP acceleration by prediction and pre-fetching | |
| US8275790B2 (en) | System and method of accessing a document efficiently through multi-tier web caching | |
| US8307364B2 (en) | Multi-threaded annotator for hypertext information | |
| US6347316B1 (en) | National language proxy file save and incremental cache translation option for world wide web documents | |
| KR101626639B1 (ko) | 컴퓨터에서 콘텐츠 렌더링하는 시스템 및 방법 | |
| US7587398B1 (en) | System and method of accessing a document efficiently through multi-tier web caching | |
| US6338096B1 (en) | System uses kernals of micro web server for supporting HTML web browser in providing HTML data format and HTTP protocol from variety of data sources | |
| US7865843B2 (en) | Dynamic toolbar for markup language document | |
| US10680968B2 (en) | Web access performance enhancement | |
| US7194532B2 (en) | Distributed file management method and program therefor | |
| US7941560B1 (en) | Client caching of target addresses for network requests | |
| TW517196B (en) | System and method for fine grained selective cache | |
| CN1351729A (zh) | 处理关于网站所提供信息的请求 | |
| US8156429B2 (en) | Method and system for accelerating downloading of web pages | |
| US7328222B2 (en) | Method and apparatus for preserving data coherency in a database by generating a command object that includes instructions for writing a data record to a local cache | |
| US20080126308A1 (en) | Wait timer for partially formed query | |
| US20020062354A1 (en) | Method and apparatus for dynamic shared-memory caching of scripting engine product | |
| JPH05143435A (ja) | データベースシステム | |
| US7930479B2 (en) | System and method for caching and retrieving from cache transaction content elements | |
| US12225079B2 (en) | Ensuring coherency across responses when handling a series of client requests | |
| JP2003177956A (ja) | ネットワークの可視情報管理装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050418 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050418 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20050418 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20050531 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050607 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050801 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050816 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050915 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050921 |
|
| 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: 20051004 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051027 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081104 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091104 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101104 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |