"フィルタ対象であるアイテムが複数集められたアイテム群に関するデータを複数格納しておくアイテム格納手段と、フィルタ条件に関するデータを複数格納しておくフィルタ格納手段と、前記アイテム格納手段から複数のアイテム群を読み出し、前記フィルタ格納手段から複数のフィルタ条件を読み出して、各アイテム群に対して、アイテム群に含まれる複数のアイテムを各フィルタ条件でそれぞれフィルタし、フィルタ前のアイテム数とフィルタ後のアイテム数とを用いて導出した関数又は数式を当該フィルタの条件に対する重み関数とし、当該重み関数を、アイテム群を識別するアイテム群識別子とフィルタ条件を識別するフィルタ識別子とに関連付けて対応関係格納テーブルに格納しておく第1処理手段と、受信した要求アイテム群識別子及び要求フィルタ識別子に対応する重み関数を前記対応関係格納テーブルから取得し、受信した要求アイテム数に対して当該重み関数を演算させた値をフィルタの処理対象アイテム数とし、前記要求アイテム群識別子に対応するアイテム群から当該処理対象アイテム数のアイテムを取得して、取得したアイテムに対して前記要求フィルタ識別子に対応するフィルタ条件でフィルタして返信する第2処理手段と、を有することを特徴とするフィルタリング最適化装置。前記第1処理手段は、アイテム群に含まれる複数のアイテムのうち所定のアイテム数を有する複数のアイテムセットごとに、前記重み関数をそれぞれ計算して、前記対応関係格納テーブルに更に格納しておき、前記第2処理手段は、当該重み関数を用いて前記処理対象アイテム数を計算することを特徴とする請求項1記載のフィルタリング最適化装置。前記第1処理手段は、前記複数のアイテムセットにそれぞれ対応するフィルタ後のアイテム数を前記対応関係格納テーブルに更に格納しておき、前記第2処理手段は、前記要求アイテム数以上で最小の前記フィルタ後のアイテム数に対応する重み関数を用いて前記処理対象アイテム数を計算することを特徴とする請求項2記載のフィルタリング最適化装置。前記第1処理手段は、アイテム群に適用されたフィルタ条件ごとに、前記複数の重み関数を平均化した平均重み関数をそれぞれ計算して、前記対応関係格納テーブルに更に格納しておき、前記第2処理手段は、当該平均重み関数を用いて前記処理対象アイテム数を計算することを特徴とする請求項2又は3記載のフィルタリング最適化装置。前記平均重み関数は、前記複数の重み関数の平均に重み関数の標準偏差を3倍した値を加えた関数であることを特徴とする請求項4記載のフィルタリング最適化装置。コンピュータにより行うフィルタリング最適化方法において、フィルタ対象であるアイテムが複数集められたアイテム群に関するデータをアイテム格納手段に複数格納しておく第1ステップと、フィルタ条件に関するデータをフィルタ格納手段に複数格納しておく第2ステップと、前記アイテム格納手段から複数のアイテム群を読み出し、前記フィルタ格納手段から複数のフィルタ条件を読み出して、各アイテム群に対して、アイテム群に含まれる複数のアイテムを各フィルタ条件でそれぞれフィルタし、フィルタ前のアイテム数とフィルタ後のアイテム数とを用いて導出した関数又は数式を当該フィルタの条件に対する重み関数とし、当該重み関数を、アイテム群を識別するアイテム群識別子とフィルタ条件を識別するフィルタ識別子とに関連付けて対応関係格納テーブルに格納しておく第3ステップと、受信した要求アイテム群識別子及び要求フィルタ識別子に対応する重み関数を前記対応関係格納テーブルから取得し、受信した要求アイテム数に対して当該重み関数を演算させた値をフィルタの処理対象アイテム数とし、前記要求アイテム群識別子に対応するアイテム群から当該処理対象アイテム数のアイテムを取得して、取得したアイテムに対して前記要求フィルタ識別子に対応するフィルタ条件でフィルタして返信する第4ステップと、を有することを特徴とするフィルタリング最適化方法。請求項6記載の各ステップをコンピュータに実行させることを特徴とするフィルタリング最適化プログラム。しかしながら、特許文献1に開示されたパケットフィルタリング技術は、例えば処理の並列化等、フィルタリングの処理自体を高速化しているため、処理対象であるアイテムの数が極めて膨大である場合には、フィルタリングの処理単体の速度はある程度速くても全体としては時間がかかり、結果として高速にフィルタリングできないという課題があった。本発明は、上記課題を鑑みてなされたものであり、その課題とするところは、高速にフィルタリングすることにある。請求項1記載のフィルタリング最適化装置は、フィルタ対象であるアイテムが複数集められたアイテム群に関するデータを複数格納しておくアイテム格納手段と、フィルタ条件に関するデータを複数格納しておくフィルタ格納手段と、前記アイテム格納手段から複数のアイテム群を読み出し、前記フィルタ格納手段から複数のフィルタ条件を読み出して、各アイテム群に対して、アイテム群に含まれる複数のアイテムを各フィルタ条件でそれぞれフィルタし、フィルタ前のアイテム数とフィルタ後のアイテム数とを用いて導出した関数又は数式を当該フィルタの条件に対する重み関数とし、当該重み関数を、アイテム群を識別するアイテム群識別子とフィルタ条件を識別するフィルタ識別子とに関連付けて対応関係格納テーブルに格納しておく第1処理手段と、受信した要求アイテム群識別子及び要求フィルタ識別子に対応する重み関数を前記対応関係格納テーブルから取得し、受信した要求アイテム数に対して当該重み関数を演算させた値をフィルタの処理対象アイテム数とし、前記要求アイテム群識別子に対応するアイテム群から当該処理対象アイテム数のアイテムを取得して、取得したアイテムに対して前記要求フィルタ識別子に対応するフィルタ条件でフィルタして返信する第2処理手段と、を有することを特徴とする。本発明によれば、受信した要求アイテム群識別子及び要求フィルタ識別子に対応する重み関数を対応関係格納テーブルから取得し、受信した要求アイテム数に対して当該重み関数を演算させた値をフィルタの処理対象アイテム数とする処理対象アイテム数の最適化ため、従来であればアイテム群に含まれる全てのアイテムを処理対象としたが、フィルタリングの処理対象数を限定でき、結果として高速なフィルタリングを実現できる。請求項2記載のフィルタリング最適化装置は、請求項1記載のフィルタリング最適化装置において、前記第1処理手段は、アイテム群に含まれる複数のアイテムのうち所定のアイテム数を有する複数のアイテムセットごとに、前記重み関数をそれぞれ計算して、前記対応関係格納テーブルに更に格納しておき、前記第2処理手段は、当該重み関数を用いて前記処理対象アイテム数を計算することを特徴とする。請求項3記載のフィルタリング最適化装置は、請求項2記載のフィルタリング最適化装置において、前記第1処理手段は、前記複数のアイテムセットにそれぞれ対応するフィルタ後のアイテム数を前記対応関係格納テーブルに更に格納しておき、前記第2処理手段は、前記要求アイテム数以上で最小の前記フィルタ後のアイテム数に対応する重み関数を用いて前記処理対象アイテム数を計算することを特徴とする。請求項4記載のフィルタリング最適化装置は、請求項2又は3記載のフィルタリング最適化装置において、前記第1処理手段は、アイテム群に適用されたフィルタ条件ごとに、前記複数の重み関数を平均化した平均重み関数をそれぞれ計算して、前記対応関係格納テーブルに更に格納しておき、前記第2処理手段は、当該平均重み関数を用いて前記処理対象アイテム数を計算することを特徴とする。請求項5記載のフィルタリング最適化装置は、請求項4記載のフィルタリング最適化装置において、前記平均重み関数は、前記複数の重み関数の平均に重み関数の標準偏差を3倍した値を加えた関数であることを特徴とする。請求項6記載のフィルタリング最適化方法は、コンピュータにより行うフィルタ方法において、フィルタ対象であるアイテムが複数集められたアイテム群に関するデータをアイテム格納手段に複数格納しておく第1ステップと、フィルタ条件に関するデータをフィルタ格納手段に複数格納しておく第2ステップと、前記アイテム格納手段から複数のアイテム群を読み出し、前記フィルタ格納手段から複数のフィルタ条件を読み出して、各アイテム群に対して、アイテム群に含まれる複数のアイテムを各フィルタ条件でそれぞれフィルタし、フィルタ前のアイテム数とフィルタ後のアイテム数とを用いて導出した関数又は数式を当該フィルタの条件に対する重み関数とし、当該重み関数を、アイテム群を識別するアイテム群識別子とフィルタ条件を識別するフィルタ識別子とに関連付けて対応関係格納テーブルに格納しておく第3ステップと、受信した要求アイテム群識別子及び要求フィルタ識別子に対応する重み関数を前記対応関係格納テーブルから取得し、受信した要求アイテム数に対して当該重み関数を演算させた値をフィルタの処理対象アイテム数とし、前記要求アイテム群識別子に対応するアイテム群から当該処理対象アイテム数のアイテムを取得して、取得したアイテムに対して前記要求フィルタ識別子に対応するフィルタ条件でフィルタして返信する第4ステップと、を有することを特徴とする。本発明によれば、受信した要求アイテム群識別子及び要求フィルタ識別子に対応する重み関数を対応関係格納テーブルから取得し、受信した要求アイテム数に対して当該重み関数を演算させた値をフィルタの処理対象アイテム数とする処理対象アイテム数の最適化ため、従来であればアイテム群に含まれる全てのアイテムを処理対象としたが、フィルタリングの処理対象数を限定でき、結果として高速なフィルタリングを実現できる。請求項7記載のフィルタリング最適化プログラムは、請求項6記載の各ステップをコンピュータに実行させることを特徴とする。本発明によれば、高速にフィルタリングできる。以下、本発明を実施する一実施の形態について図面を用いて説明する。但し、本発明は多くの異なる様態で実施することが可能であり、本実施の形態の記載内容に限定して解釈すべきではない。本発明は、フィルタリングの処理対象アイテム数を最適化すること、すなわち、膨大な量のアイテムから処理対象となるアイテムを予測してフィルタリングの処理対象アイテム数を限定することにより、各アイテムに対するフィルタリングを最小限の計算量で効率的に行って高速なフィルタリングを実現し、データベースやキャッシュメモリの最適な運用を図ることにある。また、その処理対象アイテム数を予測する際に、重み関数に代えて平均重み関数を利用することにより、データベースへのアクセス処理の観点から更なる高速化を図ることができる。なお、平均重み関数を活用する用途としては、ソート無しアイテム群に対する要求時の処理だけでなく、ソート済みアイテム群に対する要求時の処理にも活用できる。フィルタリング最適化装置の構成について最初に、本実施の形態に係るフィルタリング最適化装置の構成について説明する。図1は、フィルタリング最適化装置の機能ブロック構成を示す図である。このフィルタリング最適化装置100は、要求受付部11と、処理対象アイテム数予測部12と、フィルタ処理部13と、アイテム出力部14と、アイテム格納部15と、フィルタ情報格納部16と、対応関係格納部17とで主に構成される。以下、それら各部の機能について詳述する。なお、要求受付部11と、処理対象アイテム数予測部12と、フィルタ処理部13と、アイテム出力部14とは、CPU等により実現され、アイテム格納部15と、フィルタ情報格納部16と、対応関係格納部17とは、データベースやメモリ等により実現される。また、それら各部の機能はプログラムによって実行される。要求受付部11は、ポータル300から送信された要求情報を受信して受け付ける機能を有する。要求情報には、ポータルの利用者が所望する1以上のアイテム群名以下、要求アイテム群名と当該要求アイテム群に対して所望される1以上のフィルタ名以下、要求フィルタ名とを包括した要求属性条件と、フィルタリング最適化装置100から返信として所期されるアイテム数以下、要求アイテム数とが含まれている。なお、ポータル300とは、携帯網やインターネット網等の通信ネットワークを介して接続された携帯端末、スマートフォン、PC、タブレット、STBSetTopBox、DVTDigitalTV等の情報端末を用いてフィルタリング最適化装置100にアクセスするときの入口となるページやウェブサイトのことをいう。処理対象アイテム数予測部12は、要求受付部11で受け付けた要求情報に基づいてフィルタリングの処理対象アイテム数を予測する機能を有する。すなわち、要求情報に含まれている要求アイテム群名及び要求フィルタ名に対応する重み関数又は平均重み関数を対応関係格納部17の対応関係格納テーブルから取得し、当該要求情報に更に含まれている要求アイテム数に対して当該重み関数又は当該平均重み関数を積算した値をフィルタリングの処理対象アイテム数と予測する。フィルタ処理部13は、要求に応じてフィルタリングする機能を有する。すなわち、要求アイテム群名に対応するアイテム群をアイテム格納部15から取得すると共に、要求フィルタ名に対応するフィルタ条件をフィルタ情報格納部16から取得して、当該取得したアイテム群から処理対象アイテム数予測部12で予測された処理対象アイテム数のアイテムを取得し、当該取得した数のアイテムに対して、上記取得したフィルタ条件でフィルタリングする。アイテム出力部14は、フィルタ処理部13でフィルタリングされたアイテムをポータル300に出力する機能を有する。アイテム格納部15は、フィルタリングの処理対象であるアイテムが複数集められたアイテム群に関するデータを複数格納しておく機能を有する。例えば、図2に示すアイテム群Aや、図3に示すアイテム群Bのテーブルが保持されている。アイテム群Aは、スコア等を基準として降順にソートされたソート済みアイテム群であり、各アイテムに対してランキングを示すNo.が当該ソート順に付与されている。一方、アイテム群Bは、順序規則のないソート無しアイテム群であり、アイテム格納部15に格納された複数のアイテムが単にリスト化された状態のアイテム群である。フィルタ情報格納部16は、要求に応じたフィルタリングに用いるフィルタ情報に関するデータを格納しておく機能を有している。例えば、図4に示すように、フィルタリングを識別するフィルタ名に対して、フィルタリングの条件を示すフィルタ条件と、フィルタ条件で指定された条件の実体値を定めたフィルタ情報とが対応付けて設定されている。対応関係格納部17は、処理対象アイテム数予測部12で行う処理対象アイテム数の予測に必要なデータ重み関数や平均重み関数等を対応関係格納テーブルに格納しておく機能を有する。なお、対応関係格納テーブルは、処理対象アイテム数予測部12及びフィルタ処理部13により事前に生成される。当該事前処理について引き続き説明する。事前処理についてフィルタリング最適化装置100の全体処理動作について説明する前に、対応関係格納テーブルを生成するための事前処理について説明する。以下説明する事前処理内の全ての処理は、アイテム格納部15に格納されている全てのアイテム群に対して実施される。また、アイテム群には、推薦アルゴリズムごとのリスト、期間ごとのリスト、インデックス分けされたリスト、ジャンルごとのリスト、制作会社ごとのリスト等、各リストによってアイテムの質も異なり、適用するフィルタ群も異なるため、それぞれ個別に計算される。事前処理動作のフローチャートを図5に示す。また、当該事前処理により生成される対応関係格納テーブルを図6に示す。最初に、処理対象アイテム数予測部12は、アイテム格納部15から全てのアイテム群を読み出して、全てのアイテム群に対して以降の処理が終了したか否かを判定するS101。このS101の判定処理は、全アイテム群に対して事前処理が終了するまで繰り返す処理として機能する。次に、処理対象アイテム数予測部12は、S101の判定処理でNoと判定された場合に、処理未終了のアイテム群から任意のアイテム群を選択し、当該アイテム群に対して全てのフィルタ条件でフィルタリングの処理が終了したか否かを判定するS102。このS102の判定処理は、選択されたアイテム群に対して全フィルタ条件が適用されるまで繰り返す処理として機能する。一方、S101の判定処理でYesと判定された場合には、この事前処理動作を終了する。次に、処理対象アイテム数予測部12は、S102の判定処理でNoと判定された場合に、S102で選択されたアイテム群の全アイテムから一定数のアイテムセットを生成して、各アイテムセットに含まれるアイテム数をアイテムセット数として対応関係格納テーブルに格納するS103。例えば、総アイテム数が200個のソート済みアイテム群が選択され、一定数を10とした場合には、ランキング1から20までのアイテムセット、ランキング1から40までのアイテムセット、...、ランキング1から200までのアイテムセットのように、10セットのアイテムセットを生成し、各アイテムセットの最大値を対応関係格納テーブルのアイテムセット数に格納する。なお、この一定数とは、フィルタリングの高速化に直接作用する定数パラメータであり、アイテム群や要求の内容によって異なるため、システムや装置ごとにチューニングされることが好ましい。一方、S102の判定処理でYesと判定された場合には、S101に戻る。次に、処理対象アイテム数予測部12は、S103で生成された全てのアイテムセットに対して以降の処理が終了したか否かを判定するS104。このS104の判定処理は、全アイテムセットに対して重み関数をそれぞれ算出させる処理として機能する。次に、フィルタ処理部13は、S104の判定処理でNoと判定された場合に、対象となるアイテムセット内のアイテムをアイテム格納部15から取得すると共に、フィルタ条件をフィルタ情報格納部16から取得して、当該フィルタ条件を用いて当該取得した複数のアイテムをフィルタリングするS105。なお、上述したように、S102の判定処理は、全フィルタ条件が適用されるまで繰り返す処理として機能するため、対象となるアイテムセット内の複数のアイテムは、全てのフィルタ条件によりそれぞれフィルタリングされる。次に、S105の後、S105のフィルタ処理によっていくつかのアイテムが削除されるので、処理対象アイテム数予測部12は、処理後に残ったアイテム数を処理後アイテム数として対応関係格納テーブルに格納し、アイテムセット数フィルタ前のアイテム数を処理後アイテム数フィルタ後のアイテム数で除算した値を当該フィルタの条件に対する重み関数として対応関係格納テーブルに格納するS106。S106の処理後は、S104に戻る。なお、重み関数は、fx=axや、fx=axb等の方程式になる。以下の説明は、重み関数をfx=axとして想定した重み係数として説明する。一方、処理対象アイテム数予測部12は、S104の判定処理でYesと判定された場合、すなわち、全てのアイテムセットに対して、アイテムセット数、処理後アイテム数、重み関数が算出された場合に、アイテム群に適用されたフィルタ条件ごとに、全てのアイテムセット数における重み関数を用いて、以下の式1より平均重み関数を算出し、対応関係格納テーブルに格納するS107。S107の処理後は、S102に戻る。平均重み関数=重み関数の平均関数平均値重み関数の標準偏差×31以上のS101~S107の各処理を全アイテム群、全フィルタに対して実行して、事前処理動作のフローが終了する。これにより、図6に示したような、アイテム群名と、フィルタ名と、アイテムセット数と、処理後アイテム数と、重み関数と平均重み関数とが関連付けられた対応関係格納テーブルが完成する。全体処理について続いて、図1を参照しながら、フィルタリング最適化装置100の全体処理動作について説明する。最初に、要求受付部11が、ポータル300から、どのようなアイテム群について、どのようなフィルタリングを行い、どれだけの件数欲しいか、という問い合わせを受け付けるS1。例えば、スコア等により降順でソートされたソート済みアイテム群Aに対して、フィルタF1→フィルタF2→フィルタF3→フィルタF4→フィルタF5→フィルタF6の順でフィルタリングした後に、10件のリストが欲しいという要求を受け付ける。この場合、要求受付部11は、要求属性条件を要求アイテム群名:ソート済みアイテム群A、要求フィルタ名:F1,F2,F3,F4,F5,F6とし、要求アイテム数を10とする要求情報を受信する。次に、S1の後、処理対象アイテム数予測部12が、対応関係格納テーブルから、ソート済みアイテム群Aの各フィルタF1~F6に対応する各重み関数WF1~WF6をそれぞれ取得して、以下の式2より処理対象アイテム数を算出するS2。処理対象アイテム数=WF1WF2WF3WF4WF5WF6reqC2なお、reqCは、要求アイテム数である。また、例えば、WF6reqCは、WF6×reqCを意味する。ここで、例えば、ソート済みアイテム群Aの総アイテム数を1000個とすると、従来では、当該1000個の全てが処理対象アイテム数とされる。一方、本実施の形態では、そのソート済みアイテム群Aに対してフィルタ条件毎に重みを予め計算しておき、要求フィルタ名に対応する重みに対して要求アイテム数を乗算した計算値を、ポータルの利用者が応答として期待している処理対象アイテム数と予測するようにしている。すなわち、ソート済みアイテム群Aの総アイテム数に依存することなく、要求アイテム数と重み関数とにより処理対象アイテム数を予測的に計算するので、処理対象アイテム数を限定例えば、30することが可能となる。次に、フィルタ処理部13が、S2で算出された処理対象アイテム数分のアイテムを、ソート済みアイテム群Aから取得し、フィルタF1→フィルタF2→フィルタF3→フィルタF4→フィルタF5→フィルタF6の順重み関数の計算順とは逆順でフィルタリングを実行するS3。最後に、アイテム出力部14が、フィルタリング後のフィルタソート済みアイテム群Aをポータル300に送信するS4。このとき、ポータル300からの要求は10件であるので、フィルタリング後のアイテム数が10件を超える場合には、任意に選択された10件を送信してもよいし、フィルタリング後の全てを送信してもよい。また、フィルタリング後のアイテム数が10件に満たない場合には、その全てを送信するようにしてもよい。全体処理:要求されたフィルタ条件が1つの場合の動作例次に、ポータル300から要求されたフィルタ条件が1つの場合の全体処理動作例について説明する。図7は、フィルタ条件が1つの場合の全体処理動作を示す図である。最初に、要求受付部11が、要求アイテム数と、要求属性条件要求アイテム群名、要求フィルタ名F1とを取得するS201。次に、S201の後、要求アイテム群名がソート済みアイテム群の場合にはS203に進み、要求アイテム群名がソート無しアイテム群の場合にはS203’に進むS202。次に、S202の判定処理で要求アイテム群名がソート済みアイテム群の場合、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F1とに対応し、かつ、要求アイテム数を上回る最小の処理後アイテム数に対応する重み関数WF1を取得するS203。次に、S203の後、処理対象アイテム数予測部12は、S203で取得した重み関数WF1と要求アイテム数reqCとを用いて、以下の式3より処理対象アイテム数を算出するS204。処理対象アイテム数=WF1×reqC3次に、S204の後、フィルタ処理部13が、S204で算出された処理対象アイテム数のアイテムをソート済みアイテム群から取得し、フィルタF1のフィルタリングを実行するS205。最後に、S205の後、アイテム出力部14が、フィルタリング後のフィルタソート済みアイテム群をポータル300に送信するS206。一方、S202の判定処理で要求アイテム群名がソート無しアイテム群の場合、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F1とに対応する平均重み関数WF1AVEを取得するS203’。次に、S203’の後、処理対象アイテム数予測部12は、S203で取得した平均重み関数WF1AVEと要求アイテム数reqCとを用いて、以下の式4より処理対象アイテム数を算出するS204’。処理対象アイテム数=WF1AVE×reqC4次に、S204’の後、フィルタ処理部13が、S204’で算出された処理対象アイテム数のアイテムをソート無しアイテム群から取得し、フィルタF1のフィルタリングを実行し、アイテム出力部14が、フィルタリング後のフィルタソート無しアイテム群をポータル300に送信する。全体処理:要求されたフィルタ条件が複数の場合の動作例次に、ポータル300から要求されたフィルタ条件が複数の場合の全体処理動作例について説明する。図8は、フィルタ条件が複数の場合の全体処理動作を示す図である。最初に、要求受付部11が、要求アイテム数と、要求属性条件要求アイテム群名、要求フィルタ名F1,F2,F3とを取得するS301。なお、この要求は、F1→F2→F3の順でフィルタリングを要求している。次に、S301の後、要求アイテム群名がソート済みアイテム群の場合にはS303に進み、要求アイテム群名がソート無しアイテム群の場合にはS303’に進むS302。次に、S302の判定処理で要求アイテム群名がソート済みアイテム群の場合、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F3とに対応し、かつ、要求アイテム数を上回る最小の処理後アイテム数に対応する重み関数WF3を取得するS303。次に、S303の後、処理対象アイテム数予測部12は、S303で取得した重み関数WF3と要求アイテム数reqCとを用いて、以下の式5より、フィルタF3の前に存在するべき処理対象アイテム数として、F3前処理対象アイテム数を算出するS304。F3前処理対象アイテム数=WF3×reqC5次に、S304の後、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F2とに対応し、かつ、要求アイテム数を上回る最小の処理後アイテム数に対応する重み関数WF2を取得するS305。次に、S305の後、処理対象アイテム数予測部12は、S305で取得した重み関数WF2とF3前処理対象アイテム数とを用いて、以下の式6より、フィルタF2の前に存在するべき処理対象アイテム数として、F2前処理対象アイテム数を算出するS306。F2前処理対象アイテム数=WF2×F3前処理対象アイテム数6次に、S306の後、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F1とに対応し、かつ、要求アイテム数を上回る最小の処理後アイテム数に対応する重み関数WF1を取得するS307。次に、S307の後、処理対象アイテム数予測部12は、S307で取得した重み関数WF1とF2前処理対象アイテム数とを用いて、以下の式7より、全てのフィルタ処理の前に存在するべき処理対象アイテム数として、処理対象アイテム数を算出するS308。処理対象アイテム数=WF1×F2前処理対象アイテム数7ここで、以上のS303~S308の各処理をまとめると、各フィルタに関する重み関数WF1~WF3と要求アイテム数reqCとより、以下の式8より、処理対象アイテム数を算出することとなる。処理対象アイテム数=WF1WF2WF3reqC8次に、S308の後、フィルタ処理部13が、S308で算出された処理対象アイテム数のアイテムをソート済みアイテム群から取得し、F1→F2→F3の順でフィルタリングを実行するS309。最後に、S309の後、アイテム出力部14が、フィルタリング後のフィルタソート済みアイテム群をポータル300に送信するS310。一方、S302の判定処理で要求アイテム群名がソート無しアイテム群の場合、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F3とに対応する平均重み関数WF3AVEを取得するS303’。次に、S303’の後、処理対象アイテム数予測部12は、S303’で取得した平均重み関数WF3AVEと要求アイテム数reqCとを用いて、以下の式9より、フィルタF3の前に存在するべき処理対象アイテム数として、F3前処理対象アイテム数を算出するS304’。F3前処理対象アイテム数=WF3AVE×reqC9次に、S304’の後、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F2に対応する平均重み関数WF2AVEを取得するS305’。次に、S305’の後、処理対象アイテム数予測部12は、S305’で取得した平均重み関数WF2AVEとF3前処理対象アイテム数とを用いて、以下の式10より、フィルタF2の前に存在するべき処理対象アイテム数として、F2前処理対象アイテム数を算出するS306’。F2前処理対象アイテム数=WF3AVE×F3前処理対象アイテム数10次に、S306’の後、処理対象アイテム数予測部12は、対応関係格納テーブルを参照し、要求アイテム群名と要求フィルタ名F1に対応する平均重み関数WF1AVEを取得するS307’。次に、S307’の後、処理対象アイテム数予測部12は、S307’で取得した平均重み関数WF1AVEとF2前処理対象アイテム数とを用いて、以下の式11より、全てのフィルタ処理の前に存在するべき処理対象アイテム数として、処理対象アイテム数を算出するS308’。処理対象アイテム数=WF1AVE×F2前処理対象アイテム数11ここで、以上のS303’~S308’の各処理をまとめると、各フィルタに関する重み関数WF1~WF3と要求アイテム数reqCとより、以下の式12より、処理対象アイテム数を算出することとなる。処理対象アイテム数=WF1WF2WF3reqC12次に、S308’の後、フィルタ処理部13が、S308’で算出された処理対象アイテム数のアイテムをソート無しアイテム群から取得し、F1→F2→F3の順でフィルタリングを実行し、アイテム出力部14が、フィルタリング後のフィルタソート無しアイテム群をポータル300に送信する。なお、フィルタの適用を要求条件の順序どおりに行う必要がない場合には、重み関数の大きいフィルタより先に適用することで、要求時のフィルタ処理を高速化することができる。以上より、本実施の形態によれば、受信した要求アイテム群名及び要求フィルタ名に対応する重み関数を対応関係格納テーブルから取得し、受信した要求アイテム数に対して当該重み関数を積算した値をフィルタの処理対象アイテム数とする処理対象アイテム数の最適化ので、フィルタリングの処理対象数が膨大な量の場合であっても、フィルタリングの処理対象数を限定でき、フィルタリングの処理の精度を落とすことなく、結果として高速なフィルタリングを実現できる。最後に、本実施の形態では、重み関数を、アイテムセット数を処理後アイテム数で除算することにより計算し、フィルタリングの処理対象アイテム数を、要求アイテム数に対して重み関数又は平均重み関数を積算することにより計算演算したが、その計算方法は一例であり、関数や数式に基づいて計算した場合であっても、基本的には同様の効果を得ることができる。"