(57)【要約】【課題】  編集サーバで３受信する受信電文の総量や頻度が、特定の取引場所や銘柄、業種に集中して変動しても、特定の編集サーバ３に負荷が集中させず、十分な負荷分散を実現するデータ配信システムを提供する。【解決手段】  受信したデータに対し、受信した順番に処理通番を付与する通番付与サーバ２と、前記通番付与サーバ２から送られた処理通番付データを編集処理する複数の編集サーバ３と、前記複数の編集サーバ３から送られた複数の編集済みデータを前記処理通番順に配信する配信サーバ４とを備え、前記複数の編集サーバ３が、それぞれ同一の編集処理機能を有し、前記通番付与２ら送られた複数の処理通番付データを並列処理するようにしたデータ配信システムである。【選択図】        図１
2010039840.tif 000002
【特許請求の範囲】
【請求項１】
証券・金融の売買・約定データの配信システムであって、
受信したデータに対し、受信した順番に処理通番を付与する通番付与手段と、
前記通番付与手段から送られた処理通番付データを編集処理する複数の編集手段と、
前記複数の編集手段から送られた複数の編集済みデータを前記処理通番順に配信する配信手段とを備え、
前記複数の編集手段が、それぞれ同一の編集処理機能を有し、前記通番付与手段から送られた複数の処理通番付データを並列処理するようにしたデータ配信システム。
【請求項２】
前記複数の編集手段のそれぞれが、他の編集手段で編集処理された編集済みデータ、及び該編集済みデータの処理通番を複製するための編集済みデータ・通番複製手段を有する請求項１に記載のデータ配信システム。
【請求項３】
前記通番付与手段、編集手段、配信手段が、それぞれ別々のサーバから構成される請求項１又は請求項２に記載のデータ配信システム。
【請求項４】
証券・金融の売買・約定データの配信システムであって、
受信したデータに対し、受信した順番に処理通番を付与する通番付与手段と、
前記通番付与手段から送られた処理通番付データを編集処理する複数の編集手段とを備え、
前記複数の編集手段が、それぞれ同一の編集処理機能を有し、前記通番付与手段から送られた複数の処理通番付データを並列処理するようにしたデータ配信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、証券・金融等のデータを配信する情報配信システムに係り、特に、受信データを編集する編集サーバの負荷を分散させるデータ配信システムに関する。
【背景技術】
【０００２】
証券取引所等に設置されたホストコンピュータから送信された証券・金融等の売買・約定データを編集サーバで受信し、該データを編集サーバで編集処理した後、該編集処理した編集済みデータを、複数のクライアント端末に対して配信するデータ配信システムがある。
従来のデータ配信システムについて、図６を参照しながら説明する。図６は、従来のデータ配信システムの全体構成図である。
従来のデータ配信システムは、図６に示すように、証券・金融等のデータを電文で送信するホストコンピュータの情報提供元装置１′と、情報提供元装置１′から電文を受信した後、編集してクライアント端末3′に配信する編集サーバ２′と、編集サーバ２′から配信された表示データを受信して表示する複数のクライアント端末3′とから構成されている。
【０００３】
尚、関連する先行技術として、特願２００７−１６８９８２号（特許文献１）がある。
【０００４】
特許文献１には、上位サーバ（ホストコンピュータ）から配信された情報を複数の編集サーバで受信し、編集した後、配信サーバを経て、クライアント端末に表示データを配信することが示されている。
このように、配信する情報データの量が多い場合、従来ではサーバの負荷を分散するため、特許文献１のように、編集サーバを複数設置し、取引場所（売買・約定データ等の情報が発生する証券取引所等の区分）や業種や銘柄コードにより各編集サーバの処理担当範囲を分けて編集処理を行っていた。
【０００５】
【特許文献１】特願２００７−１６８９８２号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記した各編集サーバで受信する受信電文の総量や頻度（単位時間当たりの受信電文量）は、年月日といった時期や、一日のうちの時刻により変動するものであるが、必ずしも全銘柄を通して平均的に変動するわけではなく、特定の取引場所や銘柄、業種に集中して変動することが少なくなく、その場合は、特定の編集サーバに負荷が集中することになり、十分な負荷分散を実現することが困難であった。
【０００７】
本発明は上記実情に鑑みて為されたもので、例え同一銘柄に関する受信電文を連続して受信したときでも、特定の編集サーバに負荷を集中させることなく、複数の編集サーバで平均した処理ができるようにすることにより、負荷分散の効率を向上させた証券・金融データ配信システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するための第１の発明は、証券・金融の売買・約定データの配信システムであって、受信したデータに対し、受信した順番に処理通番を付与する通番付与手段と、前記通番付与手段から送られた処理通番付データを編集処理する複数の編集手段と、前記複数の編集手段から送られた複数の編集済みデータを前記処理通番順に配信する配信手段とを備え、前記複数の編集手段が、それぞれ同一の編集処理機能を有し、前記通番付与手段から送られた複数の処理通番付データを並列処理するようにしたデータ配信システムであることを特徴とする。
【０００９】
上記課題を解決するための第２の発明は、前記第１の発明のデータの配信システムにおいて、前記複数の編集手段のそれぞれが、他の編集手段で編集処理された編集済みデータ、及び該編集済みデータの処理通番を複製するための編集済みデータ・通番複製手段を有することを特徴とする。
【００１０】
上記課題を解決するための第３の発明は、前記第１の発明あるいは第２の発明のデータの配信システムにおいて、前記複数の編集手段のそれぞれが、前記通番付与手段、前記配信手段とは別のサーバから構成されることを特徴とする。すなわち、受信した電文に対し受信した順番に処理通番を付与する通番付与手段と、前記通番付与手段から送られた処理通番付電文を編集処理する複数の編集サーバと、前記複数の編集サーバから送られた複数の編集済み電文を前記処理通番順に配信する配信手段とを備え、前記複数の編集サーバが、それぞれ同一の編集処理機能を有し、前記通番付与手段から送られた複数の処理通番付電文を並列処理するようにしている
この場合、通番付与手段と配信手段は、それぞれ別のサーバに収容してもよいし、同一のサーバに収容してもよい。
【００１１】
上記課題を解決するための第４の発明は、証券・金融の売買・約定データの配信システムであって、受信したデータに対し、受信した順番に処理通番を付与する通番付与手段と、前記通番付与手段から送られた処理通番付データを編集処理する複数の編集手段とを備え、前記複数の編集手段が、それぞれ同一の編集処理機能を有し、前記通番付与手段から送られた複数の処理通番付データを並列処理するようにしたデータ配信システムであることを特徴とする。
【発明の効果】
【００１２】
第１の発明によれば、受信したデータに対し受信した順番に処理通番を付与する通番付与手段と、前記通番付与手段から送られた処理通番付データを編集処理する複数の編集手段と、前記複数の編集手段から送られた複数の編集済みデータを前記処理通番順に配信する配信手段とを備え、前記複数の編集手段が、それぞれ同一の編集処理機能を有し、前記通番付与手段から送られた複数の処理通番付データを並列処理するようにしているので、例え同一銘柄の受信データが短時間の間に集中したとしても、編集手段の負荷を分散させるとともに、受信したデータの順番を逆転させることなく、受信した順番で配信できる効果がある。
【００１３】
第２の発明によれば、前記第１の発明において、前記複数の編集手段のそれぞれが、他の編集手段で編集処理された編集済みデータ、及び該編集済みデータの処理通番を複製するための編集済みデータ・通番複製手段を有するようにしているので、複数の編集手段から配信手段に送出されるデータの順番を、ほぼ、ホストコンピュータから送出されるデータの順番とすることができ、複数の編集済みデータを前記処理通番順に配信する配信手段の負荷を軽減することができる効果がある。
なお、通番付与手段から編集手段に送出されるデータが一定以上の時間間隔を有しており、編集手段から送出されるデータ送出順序の逆転が生じない場合や、編集手段から配信手段に送出されるデータの順番に厳密さが要求されない場合、つまり、短時間の間でのデータ送出順序の逆転を許容できるような場合は、配信手段を省略することも可能である。このような場合は、第４の発明の構成とすることができる。
【００１４】
第３の発明によれば、前記第１の発明あるいは第２の発明において、前記複数の編集手段のそれぞれが、前記通番付与手段、前記配信手段とは別のサーバから構成されるようにしているので、例えば特定銘柄の受信電文が増加して編集サーバの負荷が増加した場合に、編集サーバを増設することにより、容易に対応することができる効果がある。
【発明を実施するための最良の形態】
【００１５】
［実施の形態の概要］
本発明の実施の形態に係るデータ配信システムは、証券・金融の売買・約定データの配信システムであって、受信した電文に対し、受信した順番に処理通番を付与する通番付与サーバと、前記通番付与サーバから送られた処理通番付電文を編集処理する複数の編集サーバと、前記複数の編集サーバから送られた複数の編集済み電文が処理通番順に配信予定となっているかチェックし、処理通番順に制御して配信する配信サーバとを備え、前記複数の編集サーバが、それぞれ同一の編集処理機能を有し、前記通番付与サーバから送られた複数の処理通番付電文を並列処理するようにし、更に、前記複数の編集サーバのそれぞれが、他の編集サーバで編集処理された編集済みデータ、及び該編集済みデータの処理通番を複製するための編集済みデータ・通番複製部を有するものである。
【００１６】
［本システムの全体構成：図１］
本発明の実施の形態に係るデータ配信システムについて図１を参照しながら説明する。図１は、本発明の実施の形態に係るデータ配信システムの全体構成図である。
本発明の実施の形態に係るデータ配信システム（本システム）は、図１に示すように、各証券取引所などのホストコンピュータ１からネットワーク１０を介して受信した証券関連や金融関連の売買データ、約定データを含む電文に処理通番を付与する1台の通番付与サーバ２と、前記通番付与サーバ２から受信した電文を端末５向けに編集し、LAN等のネットワーク１１を介して配信する複数台の編集サーバ３と、前記複数の編集サーバ３から送出された電文をネットワーク１２を介して受信して処理通番順に制御して配信する配信サーバ４と、配信サーバ４から送出された電文をネットワーク１４を介して受信して表示する端末５を備えている。
【００１７】
本システムの各サーバについて具体的に説明する。
［通番付与サーバ］
通番付与サーバ２は、機能として受信部２１、送信部２４、通番付与部２２、記憶部２３を有し、ハードウェアとして少なくともＣＰＵ、メモリを備える。通番付与サーバ２は、各取引場所から受信した証券関連や金融関連の売買データ、約定データを含む電文を受信部２１により受信して記憶部２３に格納し、通番付与部２２により処理通番を付与し、該処理通番を付与した電文を下位サーバである編集サーバ３に、送信部２４によりLAN等のネットワーク１１を介して配信する。通番付与サーバ２の機能としては、受信電文の量が増大することによる負荷増加に対応する能力を大きくするため、送受信機能の他は電文編集機能等を有さず、処理通番を付与する機能のみを有するものとすることが望ましい。
【００１８】
図２は、証券取引所から受信する証券データを含む電文の一例である。電文サイズは、その電文が例えば何バイトであるかといった電文長を示す。情報種別は、株式、為替、ニュース等の情報種別を示す。本実施の形態においては、情報種別は株式を示している。銘柄IDは、一意の銘柄を特定するコードである。取引場所は、その電文が示す情報の取引が行われた、東京証券取引所、大阪証券取引所などの証券取引所を示すコードである。業種は、前記銘柄IDにより特定される銘柄の業種を示すコードである。始値、高値、安値、現在値は、前記銘柄IDにより特定される銘柄の株式の始値、高値、安値、現在値を示すデータであり、端末において表示する表示対象データである。
【００１９】
図３は、通番付与サーバ２において通番（通し番号）を付与され、編集サーバ３に送信される電文の構成例である。図２の電文に対し処理通番のデータが付与され、これに伴い、電文サイズが更新されている。
【００２０】
［編集サーバ］
編集サーバ３は、機能として受信部３１、送信部３７、編集部３２、編集済みデータ・通番複製部３６、記憶部３３を有し、ハードウェアとして少なくともＣＰＵ、メモリを備える。編集サーバ３の記憶部３３は、各銘柄の最新データを格納している受信データ格納テーブル３４、処理済み通番記憶部３５、配信編集用エリア３８を含む。
編集サーバは、以下で説明する処理ステップで示される機能を有しており、これらを図４ａ、図４ｂのフローチャートを用いて説明する。
【００２１】
［受信電文チェックステップ（S1）］
編集サーバ受信部３１で、通番付与サーバ２から送られた電文を受信して記憶部３３に格納するとともに、情報種別を参照して該受信電文が編集サーバ３の処理対象であるか否か、受信電文中のデータ項目欠落の有無、通番が不適正（例えば昇順となっていない等）でないかなど、受信電文チェックを行う。受信電文チェックの結果、問題がなければ、受信データ編集ステップ（S２）に進む。問題がある場合は、該受信電文は破棄される。
【００２２】
［受信データ編集ステップ（S２）］
前記受信電文チェックの結果、問題がない場合は、編集部３２は、各銘柄の最新データを格納している受信データ格納テーブル３４を更新するために、前記記憶部３３に格納した受信電文の各データ項目から必要なデータを取り出し、所定のフォーマットに変換するなどの編集処理を行う。
【００２３】
［処理通番の確認ステップ（S３）］
証券取引所のホストコンピュータ１から送信されてくる電文データは、例えば図２のような構成であるが、データが変化した項目（例えば現在値）は送信されても、データが変化していない項目（例えば始値）は省略され、送信されない場合がある。
また、編集サーバ３から配信サーバ４を経てクライアント端末５に送信する電文データは、例えば図３のような構成であるが、データが変化していない項目も省略することなく送信する必要がある。
したがって、同一銘柄に関する複数の電文データを複数の編集サーバ３で処理するためには、各編集サーバ３は、他の編集サーバ３がその銘柄について編集処理したデータを入手し、その銘柄について同一の編集済みデータを保持する必要がある。
【００２４】
そのため、ある編集サーバ３が編集処理し更新したデータを他の編集サーバ３に送信し、受信した編集サーバ３は、自サーバ内の受信データ格納テーブル３４及び処理済通番記憶部３５を更新するようにする。これにより、各編集サーバ３は、同一の受編集済みデータを保持することができる。このとき、他の編集サーバ３に送信するデータは、処理時間を短くするために、受信データ格納テーブル３４に格納されているフォーマットと同等のフォーマットで、該当銘柄の全項目又は差分（相違している項目）を送信する。送信する経路は、編集サーバ３と通番付与サーバ２を接続しているネットワーク１１を介してもよいし、あるいは通番付与サーバ２とは接続されていないネットワークであって、編集サーバ３同士を接続するネットワーク１３を別に設け、これを介してもよい。また、各編集サーバ３が備える受信データ格納テーブル３４及び処理済通番記憶部３５が、メモリ格納型データベースであり、複製機能（レプリケーション機能）が用意されている場合は、該複製機能を利用してもよい。
【００２５】
また、ホストコンピュータ１から同一銘柄について連続して送信された電文データを、複数の編集サーバ３でほぼ同時に処理した場合、各編集サーバ３で前記受信データ格納テーブル３４及び処理済通番記憶部３５の更新が同時期に発生するため、競合や更新順序の逆転が発生する可能性がある。
【００２６】
これを回避するために、通番付与サーバ２で付与された処理通番を用いる。各編集サーバ３では、受信データ格納テーブル３４を更新する前に、処理済み通番記憶部３５を参照して、現在処理している電文の直前の電文の通番が処理済み通番記憶部３５に格納されているか確認する。すなわち、現在処理している電文の通番―１の通番が格納されているか確認する。
現在処理している電文の直前の電文の通番（現在処理している電文の通番―１の通番）が格納されていない場合は、他の編集サーバ３において編集処理中の可能性があるため、処理済み通番記憶部３５が現在処理している電文の通番―１の通番になるまで、受信データ格納テーブル３４の更新処理を待つ。
【００２７】
［受信データ格納テーブル３４の更新ステップ（S４）］
処理済み通番記憶部３５に、現在処理している電文の直前の電文の通番（現在処理している電文の通番―１の通番）が格納されている場合は、当該編集サーバ３あるいは他の編集サーバ３において、直前の電文の処理が終了しているので、現在処理している電文のデータにより、受信データ格納テーブル３４の更新処理を行う。
【００２８】
［処理済み通番記憶部３５の更新ステップ（S５）］
S４ステップにおいて受信データ格納テーブル３４の更新を行った場合は、現在処理している電文の通番により、処理済み通番記憶部３５の更新処理を行う。
【００２９】
［更新データの複製ステップ（S６）］
編集済みデータ・通番複製部３６は、S４ステップ、S５ステップで更新した受信データ格納テーブル３４及び処理済み通番記憶部３５のデータを、他のすべての編集サーバ３へ送信する。該送信されたデータを受信した他の編集サーバ３の編集済みデータ・通番複製部３６は、図４ｂの処理フローに従って、自己の受信データ格納テーブル３４及び処理済み通番記憶部３５を更新する。このようにして、ある編集サーバ３で受信データの更新が行われると、他の編集サーバ３で前記更新データの複製が行われる。
【００３０】
［配信データの編集ステップ（S７）］
編集サーバ３から配信サーバ４へ送信する配信データに、受信した処理通番データを入れて編集する。この配信データの編集においては、S2ステップで編集処理した受信データだけでは配信データの項目が不足する場合があるので、S４ステップにおける受信データ格納テーブル３４の更新時に、該当銘柄の更新データを、記憶部３３の一部を構成する配信編集用エリア３８に一時的に格納しておく。
【００３１】
［配信データの配信ステップ（S８）］
S７ステップで編集した配信データを、配信サーバ４へ送信する。
【００３２】
［配信サーバ］
配信サーバ４は、機能として受信部４１、送信部４４、電文送信順序制御部４３、記憶部４２を有し、ハードウェアとして少なくともＣＰＵ、メモリを備える。
編集サーバ３の更新処理にて電文の順序制御を行っているので、複数の編集サーバ３で同時期に同一銘柄の複数の受信電文の処理が行われても、各編集サーバ３からの電文送信タイミングには、処理通番に従った若干の差があるはずである。しかしながら、編集サーバ３における電文の順序制御処理は、あくまでOS（オペレーティングシステム）の送信バッファに配信データがセットされるまでのことであり、実際に送信バッファにセットした順で配信データが各編集サーバ３から送出されるかどうかは保証の限りではない。各編集サーバ３のOSの送信バッファに配信データがセットされるタイミングの差は小さいため、ネットワーク１２や各編集サーバ３のOSの状態によっては、実際に編集サーバから送出される電文の順番が逆転することもありうる。
【００３３】
このような、送出される電文の順番逆転を回避するため、配信サーバ４では、各編集サーバ３からの配信電文データを一旦受信して記憶部４２に格納するとともに、電文送信順序制御部４３が、該受信した配信電文中の処理通番データにより適正な順番を判断し、処理通番の順番に基づき端末５に配信する。
上記の処理を行うため、例えば配信サーバ３において、各編集サーバ３に対して１つづつ用意された受信用キュー（FIFO）４５を記憶部４２の一部として設け、電文の受信順に前記キュー４５に格納するようにしてもよい。
電文送信順序制御部４３は、配信済みの電文の処理通番を配信済み通番記憶部４６に記憶しておき、その次の処理通番の電文を各キュー４５のうちの１つから取り出して配信するよう制御する。
【００３４】
配信する際には、処理通番は、編集サーバ３における分散処理用の付加データなので、省略して配信してもよい。また、配信サーバ４では、データのフォーマット変換などの編集処理を行わず、処理通番に関する処理のみを処理対象として処理時間を短くし、複数の編集サーバ３からの電文を処理可能とすることが望ましい。
【００３５】
［実施の形態の効果］
本発明の実施の形態に係るデータ配信システムは、証券・金融の売買・約定データの配信システムであって、受信した電文に対し、受信した順番に処理通番を付与する通番付与サーバ２と、前記通番付与サーバ２から送られた処理通番付電文を編集処理する複数の編集サーバ３と、前記複数の編集サーバから送られた複数の編集済み電文が処理通番順に配信予定となっているかチェックし、処理通番順に制御して配信する配信サーバ４とを備え、前記複数の編集サーバ３が、それぞれ同一の編集処理機能を有し、前記通番付与サーバ２から送られた複数の処理通番付電文を並列処理するようにし、更に、前記複数の編集サーバ３のそれぞれが、他の編集サーバ３で編集処理された編集済みデータ、及び該受け取った編集済みデータの処理通番を受け取るための編集済みデータ・通番複製部３６を有するデータ配信システムであるので、例え同一銘柄の受信データが短時間の間に集中したとしても、編集サーバ３の負荷を分散させるとともに、受信したデータの順番を逆転させることなく、受信した順番で配信できる効果があり、複数の編集サーバ３から配信サーバ４に送出されるデータの順番を、ほぼ、ホストコンピュータ１から送出されるデータの順番とすることができ、配信サーバ４の負荷を軽減することができる効果があり、更に、例えば特定銘柄の受信電文が増加して編集サーバ３の負荷が増加した場合に、編集サーバ３を増設することにより、容易に対応することができる効果がある。
【００３６】
なお、上記の実施の形態では、通番付与手段、編集手段、配信手段をそれぞれ通番付与サーバ、編集サーバ、配信サーバといった別のサーバで構成したが、図５に示すように、通番付与手段、編集手段、配信手段の機能を１つのサーバ１００に収容することもできる。この場合、該１つのサーバ全体の制御にCPUを用い、複数の通番付与プロセス、編集プロセス、配信プロセスをそれぞれ別のCPUで制御するのが処理速度のうえから望ましい。
また、受信データ格納テーブルや処理済み通番記憶部として、複数の編集プロセスの間での共有メモリなどの共有リソースを使用することにより、上記実施の形態において必要であった、受信データ格納テーブル３４や処理済み通番記憶部３５の更新における同期処理（現在処理している電文の通番―１の通番が格納されているか確認する処理）が不要となる。
【産業上の利用可能性】
【００３７】
本発明は、受信データを編集する編集サーバ３の負荷を分散させるデータ配信システムに好適である。
【図面の簡単な説明】
【００３８】
【図１】本発明の実施の形態に係るデータ配信システムの全体構成図である。
【図２】通番付与サーバが受信する電文の内容を示す説明図である。
【図３】通番付与サーバから送信される電文の内容を示す説明図である。
【図４】編集サーバの編集処理を示すフローチャートである。
【図５】複数CPU搭載サーバによる処理プロセス構成図である。
【図６】従来のデータ配信システムの全体構成図である。
【符号の説明】
【００３９】
１…ホストコンピュータ（情報提供元装置）、  ２…通番付与サーバ、  ３…編集サーバ、  ４…配信サーバ、  ５…クライアント端末、  ２２…通番付与部、  ３２…編集部、  ３４…受信データ格納テーブル、  ３５…処理済み通番記憶部、  ３６…編集済みデータ・通番複製部、  ４３…電文送信順序制御部
【図１】
2010039840.tif 000003
【図２】
2010039840.tif 000004
【図３】
2010039840.tif 000005
【図４】
2010039840.tif 000006
【図５】
2010039840.tif 000007
【図６】
2010039840.tif 000008