【手続補正書】
【提出日】令和1年11月6日(2019.11.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
インデックス確立の方法であって、
予め設定された時間閾値内のデータベースの列のインデックスの状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することと、
インデックスが前記列に対して確立される必要があると判定された場合、前記列のデータ情報にしたがってインデックス型を判定し、前記列に対するインデックスを前記インデックス型にしたがって確立することとを含む、方法。
【請求項２】
インデックスが前記列に対して確立される必要がないと判定された場合、前記時間閾値の後で、かつ、前記時間閾値内の前記列のインデックス使用状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することをさらに含む、請求項１に記載の方法。
【請求項３】
予め設定された時間閾値内のデータベースの列の前記インデックスの状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することが、具体的には、
前記時間閾値内の前記列の前記インデックスの状態の情報を取得すること、
前記インデックスの状態の情報にしたがって、前記時間閾値内にインデックスが前記列に対して用いられるかどうかを判定し、判定結果が肯定であるとき、前記列に対するインデックスが前記時間閾値内に用いられる回数が予め設定された回数閾値以上であるかどうかを判定すること、および、
インデックスが前記時間閾値内に前記列に対して用いられない場合、または、前記列に対するインデックスが前記時間閾値内に用いられる回数が前記回数閾値未満である場合、インデックスが前記列に対して確立される必要がないと判定することか、または、
前記列に対するインデックスが前記時間閾値内に用いられる回数が前記回数閾値以上である場合、インデックスが前記列に対して確立される必要があると判定することである、請求項２に記載の方法。
【請求項４】
前記インデックス型が、Ｂ−ツリーインデックス、ハッシュインデックスおよびビットマップインデックスを少なくとも含み、前記列の前記データ情報にしたがってインデックス型を判定することが、具体的には、
前記列が連続値型である場合、前記インデックス型がＢ−ツリーインデックスであると判定すること、
前記列に結合が起きている場合、前記インデックス型がハッシュインデックスであると判定すること、および、
前記列の単語数が予め設定された単語数閾値より多い場合、前記インデックス型が転置インデックスであると判定することか、または、
前記列の単語数が予め設定された単語数閾値以下であり、結合が起きておらず、前記列が不連続値型である場合、前記インデックス型がビットマップインデックスであると判定することである、請求項１に記載の方法。
【請求項５】
ユーザが送信した検索式を、前記検索式が受信されたときに複数の部分式に分割すること、
各部分式に対応する検索結果がキャッシュ内に存在するかどうかを問い合わせすること、および、
前記検索結果が存在する場合、前記部分式に対応する検索結果および他の部分式の検索結果にしたがって、前記ユーザに戻される検索応答を生成することか、または、
前記部分式に対応する検索結果が存在しない場合、前記列のインデックスを用いることによって前記部分式に関する検索を実行し、前記検索結果を、前記ユーザに戻される検索応答が前記検索結果および他の部分式の検索結果にしたがって生成された後、前記キャッシュに格納することをさらに含む、請求項１に記載の方法。
【請求項６】
予め設定された時間閾値内のデータベースの列の前記インデックスの状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することの前に、
前記データベースを初期化後、デフォルトのインデックス型にしたがって、前記データベースの列ごとにインデックスを構築し、予め設定された時間に達すると、列ごとに再度インデックスを構築することをさらに含む、請求項１に記載の方法。
【請求項７】
予め設定された時間閾値内のデータベースの列のインデックスの状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定するように構成された判定モジュールと、
前記判定モジュールが、インデックスが前記列に対して確立される必要があると判定すると、前記列のデータ情報にしたがってインデックス型を判定し、前記インデックス型にしたがって、前記列に対するインデックスを確立するように構成された確立モジュールとを備える、インデックス確立デバイス。
【請求項８】
前記確立モジュールが、前記判定モジュールによりインデックスが前記列に対して確立される必要がないと判定されたとき、前記時間閾値の後で、かつ、前記時間閾値内の前記列のインデックス使用状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定するようにさらに構成される、請求項１に記載のデバイス。
【請求項９】
前記判定モジュールが、具体的には、
前記時間閾値内の前記列の前記インデックスの状態の情報を取得し、
前記インデックスの状態の情報にしたがって、前記時間閾値内にインデックスが前記列に対して用いられるかどうかを判定し、判定結果が肯定のとき、前記列に対するインデックスが前記時間閾値内に用いられる回数が予め設定された回数閾値以上であるかどうかを判定し、
前記時間閾値内にインデックスが前記列に対して用いられない場合、または、前記列に対するインデックスが前記時間閾値内に用いられる回数が前記回数閾値未満である場合、インデックスが前記列に対して確立される必要がないと判定するか、または、
前記列に対するインデックスが前記時間閾値内に用いられる回数が前記回数閾値以上である場合、インデックスが前記列に対して確立される必要があると判定するように構成される、請求項８に記載のデバイス。
【請求項１０】
前記インデックス型が、Ｂ−ツリーインデックス、ハッシュインデックスおよびビットマップインデックスを少なくとも備え、前記列の前記データ情報にしたがってインデックス型を判定するように構成された前記確立モジュールが、具体的には、
前記列が連続値型である場合、前記インデックス型がＢ−ツリーインデックスであると判定し、
前記列で結合が起きている場合、前記インデックス型がハッシュインデックスであると判定し、
前記列の単語数が予め設定された単語数閾値より多い場合、前記インデックス型は転置インデックスであると判定するか、または、
前記列の単語数が予め設定された単語数閾値以下であり、結合が起きておらず、前記列が不連続値型である場合、前記インデックス型はビットマップインデックスであると判定するように構成される、請求項８に記載のデバイス。
【請求項１１】
ユーザが送信した検索式を、前記検索式が受信されたときに複数の部分式に分割するように構成された分割モジュールと、
各部分式に対応する検索結果がキャッシュ内に存在するかどうかを問い合わせるように構成されたクエリモジュールと、
前記検索結果が存在するとき、前記部分式に対応する検索結果および他の部分式の検索結果にしたがって、前記ユーザに戻される検索応答を生成するか、または、前記部分式に対応する検索結果が存在しないとき、前記列のインデックスを用いることによって前記部分式に関する検索を実行し、前記検索結果を、前記ユーザに戻される検索応答が前記検索結果および他の部分式の検索結果にしたがって生成された後、前記キャッシュに格納するように構成された処理モジュールと、をさらに備える、請求項８に記載のデバイス。
【請求項１２】
前記データベースを初期化後、デフォルトのインデックス型にしたがって前記データベースの列ごとにインデックスを構築し、予め設定された時間に達すると、列ごとに再度インデックスを構築するように構成された初期化モジュールをさらに備える、請求項８に記載のデバイス。
【請求項１３】
命令のセットを格納する非一時的コンピュータ可読媒体であって、前記命令のセットは、コンピューティングシステムにインデックス確立の方法を実行させるために、前記コンピューティングシステムの少なくとも１つのプロセッサによって実行可能であり、前記方法が、
予め設定された時間閾値内のデータベースの列のインデックスの状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することと、
インデックスが前記列に対して確立される必要があると判定された場合、前記列のデータ情報にしたがってインデックス型を判定し、前記列に対するインデックスを前記インデックス型にしたがって確立することとを含む、非一時的コンピュータ可読媒体。
【請求項１４】
前記方法が、インデックスが前記列に対して確立される必要がないと判定された場合、前記時間閾値の後で、かつ、前記時間閾値内の前記列のインデックス使用状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することをさらに含む、請求項１３に記載の非一時的コンピュータ可読媒体。
【請求項１５】
予め設定された時間閾値内のデータベースの列の前記インデックスの状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することが、具体的には、
前記時間閾値内の前記列の前記インデックスの状態の情報を取得すること、
前記インデックスの状態の情報にしたがって、前記時間閾値内にインデックスが前記列に対して用いられるかどうかを判定し、判定結果が肯定であるとき、前記列に対するインデックスが前記時間閾値内に用いられる回数が予め設定された回数閾値以上であるかどうかを判定すること、および、
インデックスが前記時間閾値内に前記列に対して用いられない場合、または、前記列に対するインデックスが前記時間閾値内に用いられる回数が前記回数閾値未満である場合、インデックスが前記列に対して確立される必要がないと判定することか、または、
前記列に対するインデックスが前記時間閾値内に用いられる回数が前記回数閾値以上である場合、インデックスが前記列に対して確立される必要があると判定することである、請求項１４に記載の非一時的コンピュータ可読媒体。
【請求項１６】
前記インデックス型が、Ｂ−ツリーインデックス、ハッシュインデックスおよびビットマップインデックスを少なくとも含み、前記列の前記データ情報にしたがってインデックス型を判定することが、具体的には、
前記列が連続値型である場合、前記インデックス型がＢ−ツリーインデックスであると判定すること、
前記列に結合が起きている場合、前記インデックス型がハッシュインデックスであると判定すること、および、
前記列の単語数が予め設定された単語数閾値より多い場合、前記インデックス型が転置インデックスであると判定することか、または、
前記列の単語数が予め設定された単語数閾値以下であり、結合が起きておらず、前記列が不連続値型である場合、前記インデックス型がビットマップインデックスであると判定することである、請求項１３に記載の非一時的コンピュータ可読媒体。
【請求項１７】
前記方法が、
ユーザが送信した検索式を、前記検索式が受信されたときに複数の部分式に分割すること、
各部分式に対応する検索結果がキャッシュ内に存在するかどうかを問い合わせすること、および、
前記検索結果が存在する場合、前記部分式に対応する検索結果および他の部分式の検索結果にしたがって、前記ユーザに戻される検索応答を生成することか、または、
前記部分式に対応する検索結果が存在しない場合、前記列のインデックスを用いることによって前記部分式に関する検索を実行し、前記検索結果を、前記ユーザに戻される検索応答が前記検索結果および他の部分式の検索結果にしたがって生成された後、前記キャッシュに格納することをさらに含む、請求項１３に記載の非一時的コンピュータ可読媒体。
【請求項１８】
前記方法が、
予め設定された時間閾値内のデータベースの列の前記インデックスの状態の情報にしたがって、インデックスが前記列に対して確立される必要があるかどうかを判定することの前に、
前記データベースを初期化後、デフォルトのインデックス型にしたがって、前記データベースの列ごとにインデックスを構築し、予め設定された時間に達すると、列ごとに再度インデックスを構築することをさらに含む、請求項１３に記載の非一時的コンピュータ可読媒体。