(57)【要約】【課題】インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことを課題とする。【解決手段】登録データ１０４ａの各検索行とノードリスト１０４ｃを形成する各ノードとを対応付け、アーティスト名が同じノードを横方向にリンクするとともに、アーティスト名が異なるノードを縦方向にリンクした２次元のリンク構造をノードにノード番号を付与することにより形成する。【選択図】      図１
2004280624.tif 000002
【特許請求の範囲】
【請求項１】
相互に関連する複数の項目に関する各項目データにより形成される複数の検索行からなる登録データを有し、インデックスを用いて利用者の選択に応じて絞り込みをおこないつつ前記登録データから所望の検索行を検索するデータ検索装置であって、
前記登録データを形成する各検索行にそれぞれ対応付けたノードにより形成されるノードリストと、
前記登録データを形成する各検索行の項目データの一致または不一致の関係に基づいて前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を前記インデックスとして用いて前記利用者の選択に応じた検索行の絞り込みを支援する支援手段と
を備えたことを特徴とするデータ検索装置。
【請求項２】
前記ノードリストを形成する各ノードは、前記登録データを形成する各検索行の行番号と同一または関連する識別情報を有することを特徴とする請求項１に記載のデータ検索装置。
【請求項３】
前記ノードリストを形成する各ノードは、各次元方向にリンクするリンク先のノードの識別情報を有することを特徴とする請求項１または２に記載のデータ検索装置。
【請求項４】
前記支援手段は、前記ノードのリンク構造に基づいて前記利用者が検索行を絞り込むための表示画面を順次表示制御することを特徴とする請求項１、２または３に記載のデータ検索装置。
【請求項５】
前記支援手段は、前記登録データを形成する各検索行に含まれる所定の項目に関する項目データが共通する場合に該検索行に対応するノードを第１の方向にリンクするとともに、前記所定の項目に関する項目データが相違する場合に該検索行に対応するノードを前記第１のリンク方向とは別の第２の方向にリンクしたノードのリンク構造を用いて、前記利用者の選択に応じた検索行の絞り込みを支援することを特徴とする請求項１〜４のいずれか一つに記載のデータ検索装置。
【請求項６】
前記登録データを形成する各検索行を所定の項目でソートして検索行の並び替えをおこない、各検索行が該項目に関して同じ項目データを有する場合には当該検索行に対応するノードを前記第１の方向にリンクするとともに、項目データが異なる場合には当該検索行に対応するノードを前記第２の方向にリンクして、前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を生成するリンク構造生成手段をさらに備えたことを特徴とする請求項５に記載のデータ検索装置。
【請求項７】
前記登録データから所定の検索行を削除する指示がなされた場合に、削除対象となる検索行に対応付けたノードが有するリンク情報を削除するとともに、該ノードにリンクするリンク先のノードのリンク情報を変更するリンク情報変更手段をさらに備えたことを特徴とする請求項１〜６のいずれか一つに記載のデータ検索装置。
【請求項８】
前記リンク情報変更手段は、前記リンク構造の並び替えをおこなう場合に、前記ノードが有するリンク情報の変更をおこなうことを特徴とする請求項７に記載のデータ検索装置。
【請求項９】
相互に関連する複数の項目に関する各項目データにより形成される複数の検索行からなる登録データを有し、インデックスを用いて利用者の選択に応じて絞り込みをおこないつつ前記登録データから所望の検索行を検索するデータ検索方法であって、
前記登録データを形成する各検索行にノードリストを形成する各ノードを対応付ける対応付け工程と、
前記登録データを形成する各検索行の項目データの一致または不一致の関係に基づいて前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を前記インデックスとして用いて前記利用者の選択に応じた検索行の絞り込みを支援する支援工程と
を含んだことを特徴とするデータ検索方法。
【請求項１０】
相互に関連する複数の項目に関する各項目データにより形成される複数の検索行からなる登録データを有し、インデックスを用いて利用者の選択に応じて絞り込みをおこないつつ前記登録データから所望の検索行を検索するデータ検索プログラムであって、
前記登録データを形成する各検索行にノードリストを形成する各ノードを対応付ける対応付け手順と、
前記登録データを形成する各検索行の項目データの一致または不一致の関係に基づいて前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を前記インデックスとして用いて前記利用者の選択に応じた検索行の絞り込みを支援する支援手順と
をコンピュータに実行させることを特徴とするデータ検索プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、相互に関連する複数の項目に関する各項目データにより形成される複数の検索行からなる登録データを有し、インデックスを用いて利用者の選択に応じて絞り込みをおこないつつ前記登録データから所望の検索行を検索するデータ検索装置、データ検索方法およびデータ検索プログラムに関し、特に、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができるデータ検索装置、データ検索方法およびデータ検索プログラムに関する。
【０００２】
【従来の技術】
従来、ハードディスクなどの記録媒体に蓄積した大量のデータの中から所望のデータを選択する場合に、いわゆるインデックスと呼ばれる見出しが利用されることが多い。たとえば、特許文献１には、曲のシチュエーションを一種のインデックスとして利用して所望の曲を選曲できるようにした記録媒体再生装置が開示されている。
【０００３】
一般的には、かかる記録媒体に蓄積した音楽データの中から所望の音楽データを選択する場合には、音楽データのアーティスト名やアルバム名などの属性を利用することが便利であるので、これらの音楽データの属性をインデックスとして利用することになる。
【０００４】
具体的には、記憶媒体に蓄積した各音楽データについて、各アルバム名を縦軸とし、該アルバムに収録される複数の曲名を横軸とした２次元テーブルを作成しておき、この２次元テーブルの縦軸を使ってアルバム名を選択して曲数を絞り込んだ後に、横軸を辿ってこのアルバムに収録された所望の曲名（音楽データ）を選択することができる。
【０００５】
【特許文献１】
特開平９−１９０１９４号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、かかる２次元テーブルをインデックスとして利用した場合には、インデックスのデータ量が大きくなってしまうので、ＲＡＭのメモリ容量を圧迫するとともにＣＰＵに負荷を掛けてしまうという問題がある。
【０００７】
この点を図９を用いて具体的に説明すると、音楽ＣＤの規格から見て一枚のアルバムには最大のもので１００曲（１００トラック）程度が入る可能性があるので、図示したように１００曲分の横軸が必要になる。また、記録媒体に１０００アルバムを蓄積可能とする場合には、１０００アルバム分の縦軸が必要となる。さらに、記録媒体に蓄積する音楽データの総数（トータル曲数）がこの記録媒体の容量との関係で１５００曲程度であるとすると、各音楽データの識別番号を２バイトで表現するのが便利である。
【０００８】
したがって、かかる場合の２次元テーブル（インデックス）には、
２ｂｙｔｅ×１００×１０００＝２００，０００ｂｙｔｅ
程度のメモリ容量が必要となってしまう。カーナビやカーコンポなどの車載用装置の場合には、コストや搭載スペースの関係で十分なＲＡＭ容量を確保できないことが多いので、このインデックスのデータ量が増えると、この車載用装置上で動作する他のアプリケーションに悪影響を及ぼし、もって車載用装置全体のパフォーマンスの低下につながるおそれがある。
【０００９】
また、実際問題として、一つのアルバムに収録される曲数は１０曲以下の場合が多く、シングルアルバムの場合には数曲しか収録されないのが一般的であるので、図９に２次元テーブルには無駄な領域を設けていることになり、メモリの使用効率が悪いという問題もある。
【００１０】
これらのことから、インデックスを用いたデータ検索をおこなう場合に、インデックスに要するメモリ容量を低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷をいかにして軽減するかが重要な課題となっている。
【００１１】
この発明は、上述した従来技術による課題（問題点）を解消するためになされたものであって、インデックスを用いたデータ検索をおこなう場合に、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができるデータ検索装置、データ検索方法およびデータ検索プログラムを提供することを目的とする。
【００１２】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、請求項１の発明に係るデータ検索装置は、相互に関連する複数の項目に関する各項目データにより形成される複数の検索行からなる登録データを有し、インデックスを用いて利用者の選択に応じて絞り込みをおこないつつ前記登録データから所望の検索行を検索するデータ検索装置であって、前記登録データを形成する各検索行にそれぞれ対応付けたノードにより形成されるノードリストと、前記登録データを形成する各検索行の項目データの一致または不一致の関係に基づいて前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を前記インデックスとして用いて前記利用者の選択に応じた検索行の絞り込みを支援する支援手段とを備えたことを特徴とする。
【００１３】
この請求項１の発明によれば、登録データを形成する各検索行にノードリストを形成する各ノードを対応付けておき、登録データを形成する各検索行の項目データの一致または不一致の関係に基づいてノードリストを形成する各ノードを多次元にリンクしたリンク構造をインデックスとして用いて利用者の選択に応じた検索行の絞り込みを支援することとしたので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【００１４】
また、請求項２の発明に係るデータ検索装置は、請求項１の発明において、前記ノードリストを形成する各ノードは、前記登録データを形成する各検索行の行番号と同一または関連する識別情報を有することを特徴とする。
【００１５】
この請求項２の発明によれば、ノードリストを形成する各ノードは、登録データを形成する各検索行の行番号と同一または関連する識別情報を有することとしたので、検索行とノードの対応関係を一意に把握することができ、かかる対応関係をテーブルなどで持つ必要をなくし、もってより一層のメモリの有効利用を図ることができる。
【００１６】
また、請求項３の発明に係るデータ検索装置は、請求項１または２の発明において、前記ノードリストを形成する各ノードは、各次元方向にリンクするリンク先のノードの識別情報を有することを特徴とする。
【００１７】
この請求項３の発明によれば、ノードリストを形成する各ノードは、各次元方向にリンクするリンク先のノードの識別情報を有することとしたので、リンク情報をノード自体に持たせることができ、もってノードの管理のみでリンク構造を把握することができる。
【００１８】
また、請求項４の発明に係るデータ検索装置は、請求項１、２または３の発明において、前記支援手段は、前記ノードのリンク構造に基づいて前記利用者が検索行を絞り込むための表示画面を順次表示制御することを特徴とする。
【００１９】
この請求項４の発明によれば、ノードのリンク構造に基づいて利用者が検索行を絞り込むための表示画面を順次表示制御することとしたので、利用者が順次表示画面を選択することにより、容易にかつ効率良く所望の検索行を検索することができる。
【００２０】
また、請求項５の発明に係るデータ検索装置は、請求項１〜４の発明において、前記支援手段は、前記登録データを形成する各検索行に含まれる所定の項目に関する項目データが共通する場合に該検索行に対応するノードを第１の方向にリンクするとともに、前記所定の項目に関する項目データが相違する場合に該検索行に対応するノードを前記第１のリンク方向とは別の第２の方向にリンクしたノードのリンク構造を用いて、前記利用者の選択に応じた検索行の絞り込みを支援することを特徴とする。
【００２１】
この請求項５の発明によれば、登録データを形成する各検索行に含まれる所定の項目に関する項目データが共通する場合に該検索行に対応するノードを第１の方向にリンクするとともに、所定の項目に関する項目データが相違する場合に該検索行に対応するノードを前記第１のリンク方向とは別の第２の方向にリンクしたノードのリンク構造を用いて、利用者の選択に応じた検索行の絞り込みを支援することとしたので、利用者が２次元のリンク構造を用いた検索行の絞り込みを効率良くおこなうことができる。
【００２２】
また、請求項６の発明に係るデータ検索装置は、請求項５の発明において、前記登録データを形成する各検索行を所定の項目でソートして検索行の並び替えをおこない、各検索行が該項目に関して同じ項目データを有する場合には当該検索行に対応するノードを前記第１の方向にリンクするとともに、項目データが異なる場合には当該検索行に対応するノードを前記第２の方向にリンクして、前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を生成するリンク構造生成手段をさらに備えたことを特徴とする。
【００２３】
この請求項６の発明によれば、登録データを形成する各検索行を所定の項目でソートして検索行の並び替えをおこない、各検索行が該項目に関して同じ項目データを有する場合には当該検索行に対応するノードを第１の方向にリンクするとともに、項目データが異なる場合には当該検索行に対応するノードを第２の方向にリンクして、ノードリストを形成する各ノードを多次元にリンクしたリンク構造を生成することとしたので、登録データからリンク構造を容易に生成することができる。
【００２４】
また、請求項７の発明に係るデータ検索装置は、請求項１〜６の発明において、前記登録データから所定の検索行を削除する指示がなされた場合に、削除対象となる検索行に対応付けたノードが有するリンク情報を削除するとともに、該ノードにリンクするリンク先のノードのリンク情報を変更するリンク情報変更手段をさらに備えたことを特徴とする。
【００２５】
この請求項７の発明によれば、登録データから所定の検索行を削除する指示がなされた場合に、削除対象となる検索行に対応付けたノードが有するリンク情報を削除するとともに、該ノードにリンクするリンク先のノードのリンク情報を変更することとしたので、ノードが持つリンク情報の更新のみで検索行の削除に容易に対応することができる。
【００２６】
また、請求項８の発明に係るデータ検索装置は、請求項７の発明において、前記リンク情報変更手段は、前記リンク構造の並び替えをおこなう場合に、前記ノードが有するリンク情報の変更をおこなうことを特徴とする。
【００２７】
この請求項８の発明によれば、リンク構造の並び替えをおこなう場合に、ノードが有するリンク情報の変更をおこなうこととしたので、ノードが持つリンク情報の更新のみでリンク構造の並び替えに容易に対応することができる。
【００２８】
また、請求項９の発明に係るデータ検索方法は、相互に関連する複数の項目に関する各項目データにより形成される複数の検索行からなる登録データを有し、インデックスを用いて利用者の選択に応じて絞り込みをおこないつつ前記登録データから所望の検索行を検索するデータ検索方法であって、前記登録データを形成する各検索行にノードリストを形成する各ノードを対応付ける対応付け工程と、前記登録データを形成する各検索行の項目データの一致または不一致の関係に基づいて前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を前記インデックスとして用いて前記利用者の選択に応じた検索行の絞り込みを支援する支援工程とを含んだことを特徴とする。
【００２９】
この請求項９の発明によれば、登録データを形成する各検索行にノードリストを形成する各ノードを対応付けておき、登録データを形成する各検索行の項目データの一致または不一致の関係に基づいてノードリストを形成する各ノードを多次元にリンクしたリンク構造をインデックスとして用いて利用者の選択に応じた検索行の絞り込みを支援することとしたので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【００３０】
また、請求項１０の発明に係るデータ検索プログラムは、相互に関連する複数の項目に関する各項目データにより形成される複数の検索行からなる登録データを有し、インデックスを用いて利用者の選択に応じて絞り込みをおこないつつ前記登録データから所望の検索行を検索するデータ検索プログラムであって、前記登録データを形成する各検索行にノードリストを形成する各ノードを対応付ける対応付け手順と、前記登録データを形成する各検索行の項目データの一致または不一致の関係に基づいて前記ノードリストを形成する各ノードを多次元にリンクしたリンク構造を前記インデックスとして用いて前記利用者の選択に応じた検索行の絞り込みを支援する支援手順とをコンピュータに実行させることを特徴とする。
【００３１】
この請求項１０の発明によれば、登録データを形成する各検索行にノードリストを形成する各ノードを対応付けておき、登録データを形成する各検索行の項目データの一致または不一致の関係に基づいてノードリストを形成する各ノードを多次元にリンクしたリンク構造をインデックスとして用いて利用者の選択に応じた検索行の絞り込みを支援することとしたので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【００３２】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係るデータ検索装置、データ検索方法およびデータ検索プログラムの好適な実施の形態を詳細に説明する。本実施の形態では、多数の音楽データを保有するカーオーディオなどの車載用音楽再生装置に本発明を適用した場合を示しており、インデックスを用いて所望の音楽データを検索し、その音楽データを再生できる場合を例示している。
【００３３】
まず最初に、本実施の形態に係るデータ検索装置の概念について図１〜図３を用いて説明する。図１は、本実施の形態に係るデータ検索装置の概念を説明するための説明図であり、図２は、図１に示したノードリスト１０４ｃを形成する各ノードが有するリンク情報により形成されるノードのリンク構造を説明するための説明図であり、図３は、利用者が所望の曲を順次絞り込む際に用いる表示画面の一例を示す図である。なお、ここではアーティスト名を用いて絞り込みをおこなった後にタイトル名を選択する場合を示すこととする。
【００３４】
図１（ａ）に示すように、このデータ検索装置は、音楽データとは別に登録データ１０４ａを記憶している。この登録データ１０４ａは、各音楽データの属性であるアーティスト名やタイトルなどを検索行として登録したデータであり、ユーザが所望の検索行をインデックスを用いて検索する際に利用される被検索対象物である。
【００３５】
ここで、本実施の形態では、この登録データ１０４ａの各検索行にノードリスト１０４ｃのノードを対応付ける点に第１の特徴があり、具体的には、各検索行のデータ番号と同じ識別情報（ノード番号）を持つノードを対応付ける。このように同じ番号を持つノードを検索行に対応付ける理由は、ノードと検索行の対応関係をテーブル管理する必要をなくすためである。
【００３６】
このようにして、登録データ１０４ａの各検索行にノードリスト１０４ｃのノードを対応付けたならば、次に、各ノードに対してノード間のリンク情報を付与することにより、図１（ｂ）に示した２次元のリンク構造を生成する。具体的には、アーティスト名が同じ検索行に対応するノードを横軸方向に連結し、アーティスト名が異なる検索行に対応するノードを縦軸方向に連結して２次元のリンク構造を生成している。
【００３７】
登録データ１０４ａを見ると、アーティスト名が「ａａａ」の検索行が３つあるので（データ番号０，１，３）、データ番号０，１，３にそれぞれ対応するノード０、ノード１、ノード３を横軸方向に連結する。また、アーティスト名が「ｂｂｂ」の検索行が２つあるので（データ番号２，５）、データ番号２に対応するノード２をノード０の縦軸方向に連結するとともに、データ５に対応するノード５をノード２の横軸方向に連結する。さらに、アーティスト名が「ｃｃｃ」の検索行は１つしかないので（データ番号４）、このデータ番号４に対応するノード４をノード２の垂直方向に連結する。かかる一連の連結をおこなうことにより、図１（ｂ）に示す２次元のリンク構造が得られる。
【００３８】
ここで、ノードリスト１０４ｃを形成する各ノード（ノード０〜ノード５）は、図１（ｃ）に示すリンク情報を有する。すなわち、図示したように、前アーティストのノード番号、次アーティストのノード番号、前トラックのノード番号および次トラックのノード番号を有する。ここで、各ノード番号を２バイトで表現するとすれば、各ノードは８バイトのリンク情報を持つことになる。これらのリンク情報を各ノードに持たせることにより、ノードリスト１０４ｃを形成する各ノードが持つリンク情報が図１（ｂ）に示した２次元のリンク構造の実体となる。
【００３９】
この点をさらに具体的に説明すると、図２に示すように、データ番号０の検索行に対応するノード０は、同じアーティスト名を持つデータ番号１の検索行に対応するノード１のノード番号「１」を次トラックのノード番号として持つとともに、次のアーティスト名を持つデータ番号２の検索行に対応するノード２のノード番号「２」を次アーティストのノード番号として持つ。また、データ番号１の検索行に対応するノード１は、同じアーティスト名を持つデータ番号０の検索行に対応するノード０のノード番号「０」を前トラックのノード番号として持つとともに、同じアーティスト名を持つデータ番号３の検索行に対応するノード３のノード番号「３」を次トラックのノード番号として持つ。同様にして、各ノード２〜５についても、図２に示したノード番号を持つことになる。
【００４０】
そして、本実施の形態では、かかる２次元のリンク構造を用いて図３に示すような表示画面の提供をおこなう。具体的には、まずアーティスト名、アルバム、タイトルからなる表示画面を表示して、利用者に対していずれかのカテゴリーを選択させる。
【００４１】
ここで、アーティスト名が選択されたならば、図２に示した２次元のリンク構造を垂直方向に順次辿り、ノード０のアーティスト名である「ａａａ」、ノード２のアーティスト名である「ｂｂｂ」およびノード４のアーティスト名である「ｃｃｃ」を一覧表示する表示画面を表示して、利用者に対してアーティスト名の選択を促す。
【００４２】
その結果、アーティスト名「ａａａ」が選択されたならば、図２に示した２次元のリンク構造をノード０から水平方向に順次辿り、ノード０の曲名である「ｔｉｔｌｅ  ＡＢＣ」、ノード１の曲名である「ｔｉｔｌｅ  ＤＥＦ」およびノード３の曲名である「ｔｉｔｌｅ  ＪＫＬ」を一覧表示する表示画面を表示して、利用者に対して曲名の選択を促す。
【００４３】
そして、利用者が、曲名「ｔｉｔｌｅ  ＡＢＣ」を選択したならば、ノード０すなわちデータ番号０の検索行が選択されたことになるので、データ番号０の検索行に記憶されたファイル名「ＡＢＣ．ｍｐ３」を取り出して音楽データの再生をおこなう。
【００４４】
このように、本実施の形態では、登録データ１０４ａの各検索行にノードを対応させるとともに、各ノードを２次元にリンクしたリンク構造をインデックスとして用いて利用者が絞り込みをおこないつつ所望の曲名を選択するための表示画面を提供することとしているので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【００４５】
次に、本実施の形態に係るデータ検索装置の構成について説明する。図４は、本実施の形態に係るデータ検索装置１００の構成を示す機能ブロック図である。同図に示すように、このデータ検索装置１００は、操作パネル１０１と、ディスプレイ１０２と、スピーカ１０３と、記憶部１０４と、ノードリスト作成／更新処理部１０５と、表示処理部１０６と、音楽再生部１０７と、制御部１０８とを有する。
【００４６】
操作パネル１０１は、ユーザがデータ検索装置１００の各種操作をおこなうための操作部であり、ユーザが表示画面上でアーティスト名などを選択する場合などに利用される。ディスプレイ１０２は、液晶パネルなどの表示デバイスであり、各種表示画面の表示などをおこなう際に利用される。この操作パネル１０１とディスプレイ１０２は、一体のものとして形成することもできる。スピーカ１０３は、音楽データを再生する際に利用されるスピーカである。
【００４７】
記憶部１０４は、ハードディスク装置（ＨＤＤ）などの２次記憶装置であり、多数の音楽データ１０４ｂ、登録データ１０４ａおよびノードリスト１０４ｃなどを記憶する。ここで、この音楽データ１０４ｂは、ｍｐｅｇやｍｐ３などによって圧縮された圧縮データであり、映像を伴うデータであっても構わない。登録データ１０４ａは、各音楽データの属性であるアルバム名、アーティスト名、日付、タイトルおよびファイル名を検索行として登録したデータであり、ユーザがノードの２次元のリンク構造に基づいて所望の検索行を検索する際に利用される被検索対象物である。なお、本実施の形態では、登録データ１０４ａに登録された相互に関連する複数の項目に関する各項目データからなるデータを検索行と呼ぶことにするが、この検索行は、必ずしも登録データ１０４ａの一行である必要はなく一行の一部若しくは数行であっても良い。
【００４８】
ノードリスト１０４ｃは、登録データ１０４ａの検索行の数に対応するノードからなるノード群であり、各ノードのデータとして図１（ｃ）に示した前アーティストのノード番号、次アーティストのノード番号、前トラックのノード番号および次トラックのノード番号からなるリンク情報を有する。すなわち、このノードリスト１０４ｃのリンク情報により、実質的に図２に示した２次元のリンク構造が形成されることになる。このノードリスト１０４ｃにより２次元のリンク構造を形成した理由は、メモリ容量を低減しつつ図３に示した表示画面による検索行の絞り込みを効率良くおこなうためである。
【００４９】
ノードリスト作成／更新処理部１０５は、登録データ１０４ａの各検索行にノードリスト１０４ａのノードを対応付けるとともに、前アーティストのノード番号、次アーティストのノード番号、前トラックのノード番号および次トラックのノード番号からなるリンク情報を各ノードに対して付与することにより、ノードリスト１０４ｃを作成する処理部である。
【００５０】
このノードリスト作成／更新処理部１０５は、作成したノードリスト１０４ｃを記憶部１０４に格納して管理するとともに、登録データ１０４ａから検索行を削除したり、２次元構造の並び替えなどをおこなう場合に、ノードのリンク情報を更新する処理をおこなう。
【００５１】
表示処理部１０６は、利用者が絞り込みをおこなう際に利用する表示画面をディスプレイ１０２に表示する処理部であり、具体的には、ノードリスト作成／更新処理部１０５が管理するノードリスト１０４ｃに基づいて表示画面の作成をおこなう。具体的には、図３に示したように、まずアーティスト名、アルバム、タイトルからなる表示画面を表示し、アーティスト名が選択されたならば、図２に示した２次元のリンク構造を垂直方向に順次辿って、ノード０のアーティスト名である「ａａａ」、ノード２のアーティスト名である「ｂｂｂ」およびノード４のアーティスト名である「ｃｃｃ」を一覧表示する表示画面を表示して、利用者に対してアーティスト名の選択を促す。その結果、アーティスト名「ａａａ」が選択されたならば、図２に示した２次元のリンク構造をノード０から水平方向に順次辿り、ノード０の曲名である「ｔｉｔｌｅ  ＡＢＣ」、ノード１の曲名である「ｔｉｔｌｅ  ＤＥＦ」およびノード３の曲名である「ｔｉｔｌｅ  ＪＫＬ」を一覧表示する表示画面を表示して、利用者に対して曲名の選択を促すことになる。
【００５２】
音楽再生部１０７は、音楽データ１０４ｂを再生する処理部であり、具体的には、利用者が最終的に選択した曲名に対応するノード番号から検索行を特定し、この検索行にあるファイル名を取り出して音楽データを再生する。図３に示したように、利用者が、曲名「ｔｉｔｌｅ  ＡＢＣ」を選択したならば、ノード０すなわちデータ番号０の検索行が選択されたことになるので、データ番号０の検索行に記憶されたファイル名「ＡＢＣ．ｍｐ３」を取り出して音楽データを再生することになる。なお、音楽データの再生に係る部分は本発明の特徴部分ではないので、その詳細な説明を省略する。
【００５３】
制御部１０８は、データ検索装置１００の全体制御をおこなう制御部であり、各機能部間の各種データの授受などを司る制御部である。たとえば、ノードリスト作成／更新処理部１０５や表示処理部１０６が機能発揮する場合にはノードリスト１０４ｃが必要となるので、その間のデータ授受などの制御をおこなう。
【００５４】
次に、図４に示したデータ検索装置１００のハードウエア構成について説明する。図５は、本実施の形態に係るデータ検索装置１００のハードウエア構成を示す図である。なお、図１に示す機能部と同様の機能を有する部位には同一の符号を付している。
【００５５】
同図に示すように、かかるデータ検索装置１００は、操作パネル１０１、ディスプレイ１０２、スピーカ１０３、ＲＡＭ１１０、ＨＤＤ１２０、ＲＯＭ１４０およびＣＰＵ１５０をバス１６０で接続した構成となる。すなわち、このデータ検索装置１００は、車載用のカーナビやカーコンポなどと同様のハードウエア構成となる。
【００５６】
ＲＯＭ１４０には、ノードリスト作成／更新プログラム１４１、表示処理プログラム１４２および音楽再生プログラム１４３があらかじめ記憶され、各プログラム１４１〜１４３がＣＰＵ１５０にロードし実行されて、ノードリスト作成／更新プロセス１５１、表示処理プロセス１５２および音楽再生プロセス１５３となる。このノードリスト作成／更新プロセス１５１が図４のノードリスト作成／更新処理部１０５に対応し、表示処理プロセス１５２が図４の表示処理部１０６に対応し、音楽再生プロセス１５３が図４の音楽再生部１０７に対応する。
【００５７】
また、ＨＤＤ１２０が格納および読み出し制御する記憶媒体であるハードディスク（ＨＤ）には、登録データ１０４ａ、音楽データ１０４ｂおよびノードリスト１０４ｃが記憶されている。このノードリスト１０４ｃはＲＡＭ１１０上にノードリスト１０４ｃとしてロードされ、ノードリスト作成／更新プロセス１５１で管理されるとともに、表示処理プロセス１５２によりアクセスされる。
【００５８】
このため、ＲＡＭ１１０上には、図９に示した縦軸をアルバムやアーティスト名とし横軸を曲名（トラック）とした大規模なテーブルを設ける必要はなく、上記ノードリスト１０４ｃを読み込めば足りるので、ＲＡＭ１１０のメモリ容量の圧迫を軽減することができる。また、ＣＰＵ１５０はＲＡＭ１１０をメインメモリとして使用するので、このメインメモリを有効利用できることになり、結果的にＣＰＵ１１０の負荷を軽減することもできる。なお、ここではＨＤＤ１２０にノードテーブル１０４ｃを記憶することとしたが、ＣＤ−Ｒ／Ｗなどの他の記憶媒体に格納することもできる。
【００５９】
次に、図４および図５に示した登録データ１０４ａの一例について説明する。図６は、図４および図５に示した登録データ１０４ａの一例を示す図である。同図に示すように、ここではアルバム名、アーティスト名、日付、タイトル、ファイル名を項目とし、データ番号０〜５の６つの検索行を有する場合を示している。
【００６０】
具体的には、データ番号０の検索行は、アルバム名「Ａｌｂｕｍ  Ａ」、アーティスト名「ａａａ」、日付「２００２．１．１」、タイトル「ｔｉｔｌｅ  ＡＢＣ」、ファイル名「ＡＢＣ．ｍｐ３」の項目データを有し、データ番号１の検索行は、アルバム名「Ａｌｂｕｍ  Ｂ」、アーティスト名「ａａａ」、日付「２００２．２．２」、タイトル「ｔｉｔｌｅ  ＤＥＦ」、ファイル名「ＤＥＦ．ｍｐ３」の項目データを有する。データ番号２〜５の検索行についても同様の項目データを有する。
【００６１】
したがって、図１（ａ）に示したように、この登録データ１０４ａの各検索行にノードを対応付け、このノードに図１（ｃ）に示したリンク情報を付与することにより、図２に示した２次元のリンク構造を実質的に保持することができるので、このリンク構造を辿ることにより図３に示した表示画面を利用者に提供することが可能となる。
【００６２】
次に、図４に示したノードリスト作成／更新処理部１０５によるノードリストの作成手順について説明する。図７は、図４に示したノードリスト作成／更新処理部１０５によるノードリストの作成手順を示すフローチャートである。ただし、ここではアーティスト名に関するノードリスト１０４ｃの作成手順を示すこととする。
【００６３】
図７に示すように、まず登録データ１０４ａを読み込み（ステップＳ１０１）、登録データ１０４ａの各検索行にノードリスト１０４ｃの各ノードを対応付け（ステップＳ１０２）、その後に登録データ１０４ａについてアーティスト名を項目として行単位でソートする（ステップＳ１０３）。また、行変数ｊを０に初期化する（ステップＳ１０４）。
【００６４】
そして、ソート済みの登録データ１０４ａのｊ行目からアーティスト名を読み出し（ステップＳ１０５）、ｊ−１行目のアーティスト名と同じであるか否かを判定する（ステップＳ１０６）。なお、ｊが０（０行目）の場合には、ノード０を基本ノードとして配設する。
【００６５】
そして、ｊ行目の登録データのアーティスト名がｊ−１行目のアーティスト名と同じである場合には（ステップＳ１０６肯定）、ノードｊをノードｊ−１の横方向（水平方向）にリンクし（ステップＳ１０８）、ｊ行目の登録データのアーティスト名がｊ−１行目のアーティスト名と異なる場合には（ステップＳ１０６否定）、ノードｊをノードｊ−１の下方向（垂直方向）にリンクする（ステップＳ１０７）。なお、かかるリンクは、図２に示したようにノードにリンク先のノード番号を格納することにより実現することになる。
【００６６】
そして、行変数ｊをインクリメントした後（ステップＳ１０９）、登録データ１０４ａに未処理行があるか否かを調べ（ステップＳ１１０）、未処理行がある場合には（ステップＳ１１０肯定）、ステップＳ１０５に移行して同様の処理を繰り返す。なお、未処理行がなくなった場合には（ステップＳ１１０否定）、処理を終了する。
【００６７】
上記一連の処理をおこなうことにより、ノードリスト１０４ｃを形成する各ノードにリンク情報を設定し、もって図２に示した２次元のリンク構造を構築することができる。
【００６８】
次に、図４に示したノードリスト作成／更新処理部１０５によるノードリストの更新要領について説明する。図８は、図４に示したノードリスト作成／更新処理部１０５によるノードリストの更新要領を説明するための説明図である。
【００６９】
まず、登録データ１０４ａからデータ番号１の検索行を削除する場合には、図８（ａ）に示すように、ノード０〜ノード１間のリンク関係とノード１〜ノード３間のリンク関係を解消し、新たにノード０〜ノード３間のリンク関係を形成する。具体的には、ノード０については、次トラックのノード番号「１」を「３」に変更するとともに、ノード３については、前トラックのノード番号「１」を「０」に変更する。これにより、ノード０〜ノード３間のリンク関係が形成される。
【００７０】
また、登録データ１０４ａからデータ番号２の検索行を削除する場合には、図８（ｂ）に示すように、ノード０〜ノード２間のリンク関係とノード２〜ノード４間のリンク関係を解消し、新たにノード０〜ノード５間のリンク関係とノード５〜ノード４間のリンク関係を形成する。具体的には、ノード０については、次アーティストのノード番号「２」を「５」に変更し、ノード５については、前トラックのノード番号「２」を削除し、前アーティストのノード番号「２」と次アーチストとのノード番号「４」を新たに付加する。また、ノード４については、前アーティストのノード番号「２」を「５」に変更する。これにより、ノード０〜ノード５間およびノード５〜ノード４間のリンク関係が形成される。
【００７１】
同様に、その他の検索行を削除する場合であっても、ノードが有するノード番号の更新によって、２次元のリンク構造を更新することができる。なお、検索行の削除をおこなうのではなく、たとえばノード２とノード５を入れ替えるというような２次元のリンク構造を変更する場合にも、同様にノードが有するノード番号の更新によって、２次元のリンク構造を更新することができる。
【００７２】
上述してきたように、本実施の形態では、登録データ１０４ａの各検索行とノードリスト１０４ｃを形成する各ノードとを対応付け、アーティスト名が同じノードを横方向にリンクするとともに、アーティスト名が異なるノードを縦方向にリンクした２次元のリンク構造をノードにノード番号を付与することにより形成するよう構成したので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【００７３】
なお、本実施の形態では、本発明を音楽データを検索する場合について説明したが、本発明はこれに限定されるものではなく、画像データや映像データなど各種マルチメディアデータを検索する場合など様々なデータを検索する場合に適用することができる。
【００７４】
また、本実施の形態では、ノードに連接ノードのノード番号を付与することにより２次元のリンク構造を生成する場合を示したが、本発明はこれに限定されるものではなく、３次元以上のリンク構造を生成する場合に適用することもできる。たとえば、ジャンル〜アーティスト名〜曲名という３段階の絞り込みをおこなう場合には、ポップス、ロック、ジャズといった項目をテーブルとして持っておき、このテーブルからノードのリンク構造の原点であるノード０へリンクを張ることにより実現することができる。また、図１（ｂ）に示したノードのリンク構造自体を３次元にすることによっても実現することができる。たとえば、図１（ｂ）に示すアーティスト（縦軸）をジャンルとし、横軸のトラックをアーティスト名とし、各ノードからさらに新たな軸を設けてこれをトラックとしてノードをリンクすることにより、３次元のリンク構造を実現することができる。
【００７５】
【発明の効果】
以上説明したように、請求項１の発明によれば、登録データを形成する各検索行にノードリストを形成する各ノードを対応付けておき、登録データを形成する各検索行の項目データの一致または不一致の関係に基づいてノードリストを形成する各ノードを多次元にリンクしたリンク構造をインデックスとして用いて利用者の選択に応じた検索行の絞り込みを支援するよう構成したので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【００７６】
また、請求項２の発明によれば、ノードリストを形成する各ノードは、登録データを形成する各検索行の行番号と同一または関連する識別情報を有するよう構成したので、検索行とノードの対応関係を一意に把握することができ、かかる対応関係をテーブルなどで持つ必要をなくし、もってより一層のメモリの有効利用を図ることができる。
【００７７】
また、請求項３の発明によれば、ノードリストを形成する各ノードは、各次元方向にリンクするリンク先のノードの識別情報を有するよう構成したので、リンク情報をノード自体に持たせることができ、もってノードの管理のみでリンク構造を把握することができる。
【００７８】
また、請求項４の発明によれば、ノードのリンク構造に基づいて利用者が検索行を絞り込むための表示画面を順次表示制御するよう構成したので、利用者が順次表示画面を選択することにより、容易にかつ効率良く所望の検索行を検索することができる。
【００７９】
また、請求項５の発明によれば、登録データを形成する各検索行に含まれる所定の項目に関する項目データが共通する場合に該検索行に対応するノードを第１の方向にリンクするとともに、所定の項目に関する項目データが相違する場合に該検索行に対応するノードを前記第１のリンク方向とは別の第２の方向にリンクしたノードのリンク構造を用いて、利用者の選択に応じた検索行の絞り込みを支援するよう構成したので、利用者が２次元のリンク構造を用いた検索行の絞り込みを効率良くおこなうことができる。
【００８０】
また、請求項６の発明によれば、登録データを形成する各検索行を所定の項目でソートして検索行の並び替えをおこない、各検索行が該項目に関して同じ項目データを有する場合には当該検索行に対応するノードを第１の方向にリンクするとともに、項目データが異なる場合には当該検索行に対応するノードを第２の方向にリンクして、ノードリストを形成する各ノードを多次元にリンクしたリンク構造を生成するよう構成したので、登録データからリンク構造を容易に生成することができる。
【００８１】
また、請求項７の発明によれば、登録データから所定の検索行を削除する指示がなされた場合に、削除対象となる検索行に対応付けたノードが有するリンク情報を削除するとともに、該ノードにリンクするリンク先のノードのリンク情報を変更するよう構成したので、ノードが持つリンク情報の更新のみで検索行の削除に容易に対応することができる。
【００８２】
また、請求項８の発明によれば、リンク構造の並び替えをおこなう場合に、ノードが有するリンク情報の変更をおこなうよう構成したので、ノードが持つリンク情報の更新のみでリンク構造の並び替えに容易に対応することができる。
【００８３】
また、請求項９の発明によれば、登録データを形成する各検索行にノードリストを形成する各ノードを対応付けておき、登録データを形成する各検索行の項目データの一致または不一致の関係に基づいてノードリストを形成する各ノードを多次元にリンクしたリンク構造をインデックスとして用いて利用者の選択に応じた検索行の絞り込みを支援するよう構成したので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【００８４】
また、請求項１０の発明によれば、登録データを形成する各検索行にノードリストを形成する各ノードを対応付けておき、登録データを形成する各検索行の項目データの一致または不一致の関係に基づいてノードリストを形成する各ノードを多次元にリンクしたリンク構造をインデックスとして用いて利用者の選択に応じた検索行の絞り込みを支援するよう構成したので、インデックスに要するメモリ容量を効率良く低減し、もってインデックスによるＲＡＭのメモリ容量の圧迫やＣＰＵの負荷を軽減つつ効率的なデータ検索をおこなうことができる。
【図面の簡単な説明】
【図１】本実施の形態に係るデータ検索装置の概念を説明するための説明図である。
【図２】図１に示したノードリストを形成する各ノードが有するリンク情報により形成されるノードのリンク構造を説明するための説明図である。
【図３】利用者が所望の曲を順次絞り込む際に用いる表示画面の一例を示す図である。
【図４】本実施の形態に係るデータ検索装置の構成を示す機能ブロック図である。
【図５】本実施の形態に係るデータ検索装置のハードウエア構成を示す図である。
【図６】図４および図５に示した登録データの一例を示す図である。
【図７】図４に示したノードリスト作成／更新処理部によるノードリストの作成手順を示すフローチャートである。
【図８】図４に示したノードリスト作成／更新処理部によるノードリストの更新要領を説明するための説明図である。
【図９】従来の問題点を説明するための説明図である。
【符号の説明】
１０１    操作パネル
１０２    ディスプレイ
１０３    スピーカ
１０４    記憶部
１０４ａ    登録データ
１０４ｂ    音楽データ
１０４ｃ    ノードリスト
１０５    ノードリスト作成／更新処理部
１０６    表示処理部
１０７    音楽再生部
１０８    制御部
１１０    ＲＡＭ
１２０    ＨＤＤ（ハードディスクドライブ）
１３０    ＨＤ（ハードディスク）
１４０    ＲＯＭ
１５０    ＣＰＵ
１６０    バス
【図１】
2004280624.tif 000003
【図２】
2004280624.tif 000004
【図３】
2004280624.tif 000005
【図４】
2004280624.tif 000006
【図５】
2004280624.tif 000007
【図６】
2004280624.tif 000008
【図７】
2004280624.tif 000009
【図８】
2004280624.tif 000010
【図９】
2004280624.tif 000011