(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-07-25
(54)【発明の名称】車載データ記憶方法およびシステム
(51)【国際特許分類】
G06F 16/22 20190101AFI20230718BHJP
【FI】
G06F16/22
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022580360
(86)(22)【出願日】2020-06-24
(85)【翻訳文提出日】2023-02-22
(86)【国際出願番号】 CN2020098216
(87)【国際公開番号】W WO2021258360
(87)【国際公開日】2021-12-30
(81)【指定国・地域】
(71)【出願人】
【識別番号】522499140
【氏名又は名称】ジクシ フイトン(べイジン)テクノロジー カンパニー リミテッド
(74)【代理人】
【識別番号】100094112
【氏名又は名称】岡部 讓
(74)【代理人】
【識別番号】100106183
【氏名又は名称】吉澤 弘司
(74)【代理人】
【識別番号】100114915
【氏名又は名称】三村 治彦
(74)【代理人】
【識別番号】100125139
【氏名又は名称】岡部 洋
(74)【代理人】
【識別番号】100209808
【氏名又は名称】三宅 高志
(72)【発明者】
【氏名】シエイ,ニング
(72)【発明者】
【氏名】ワン,タオ
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175KA08
5B175KA10
(57)【要約】
発明は、車載データ記憶方法およびシステムを開示する。車載データ記憶方法は、現在の期間において、車載データベースに書き込まれた処理される様々な時系列データを取得するステップと、各々の処理される時系列データについて、処理される時系列データに従って、車載データベースに記憶されるノードおよびノードにおいて記憶されるパーティションを決定し、処理される時系列データを決定された記憶されるパーティション内の対応する時系列に書き込むステップと、各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするステップとを備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
車載データベースに用いられる車載データの記憶方法であって、
現在の期間において、前記車載データベースに書き込まれた処理される様々な時系列データを取得するステップと、
各々の前記処理される時系列データについて、前記処理される時系列データに従って、前記車載データベースに記憶されるノードおよび前記ノードに記憶されるパーティションを決定し、前記処理される時系列データを前記決定された記憶されるパーティション内の対応する時系列に書き込むステップと、
各々の前記記憶されるパーティションに書き込まれた各々の前記時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の前記時系列データをマージするステップとを備えることを特徴とする記憶方法。
【請求項2】
前記各々の前記処理される時系列データについて、前記処理される時系列データに従って前記車載データベースに記憶されるノードおよび前記ノードに記憶されるパーティションを決定し、前記処理される時系列データを前記決定された記憶されるパーティション内の対応する前記時系列に書き込むステップは、
各々の前記時系列データについて、
前記処理される時系列データのキーに対応するハッシュ値を決定するステップと、
前記ハッシュ値に従って、処理される前記時系列データに対応する記憶される前記ノード、記憶される前記ノード内の記憶される前記パーティション、および記憶される前記パーティションの対応する時系列を決定し、処理される前記時系列データを記憶される前記パーティション内の前記対応する時系列に書き込むステップとを備えることを特徴とする請求項1に記載の記憶方法。
【請求項3】
各々の前記記憶されるパーティションに書き込まれた各々の前記時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の前記時系列データをマージするステップは、
各々の記憶されるパーティションにおける各々の時系列について、前記現在の期間内に書き込まれた各々の前記時系列データを前記時系列に対応するメモリ内のデータバケットに書き込むステップと、
メモリ内の各々の前記データバケットについて、メモリ内の前記データバケットに書き込まれた各々の前記時系列データをマージするステップとを備えることを特徴とする請求項2に記載の記憶方法。
【請求項4】
各々の前記記憶されるパーティションに書き込まれた各々の前記時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の前記時系列データをマージするステップは、
各々の処理される前記時系列データを処理される様々な前記時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップと、
前記圧縮された各々の前記処理される時系列データを対応するパーティションの対応する時系列にそれぞれ書き込むステップとを備えることを特徴とする請求項1に記載の記憶方法。
【請求項5】
各々の前記処理される時系列データを処理される様々な前記時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップは、
各々の前記記憶されるパーティションについて、
第1の処理される時系列データを前記記憶されるパーティションに書き込むステップと、
前記記憶されるパーティションに書き込まれた第2の処理される時系列データおよび前記第1の処理される時系列データの間の第1のタイムスタンプ差および第1のインデックス値差を決定し、前記第1のタイムスタンプ差および前記第1のインデックス値差を圧縮された第2の時系列データとして前記記憶されるパーティションに記憶するステップと、
前記記憶されるパーティションに書き込まれた前記第3の処理される時系列データおよび前記第2の処理される時系列データの間の第2のタイムスタンプ差および第2のインデックス値差を決定し、前記第2のタイムスタンプ差および前記第1のタイムスタンプ差の間の第3のタイムスタンプ差ならびに前記第2のインデックス値差および前記第1のインデックス値差の間の第3のインデックス値差を決定し、前記第3のタイムスタンプ差および前記第3のインデックス値差を圧縮された第3の時系列データとして前記記憶されるパーティションに記憶するステップとを備えることを特徴とする請求項4に記載の記憶方法。
【請求項6】
各々のタイムスタンプ差および各々のインデックス値差は、異なる符号化方法によって表されるとともに記憶されることを特徴とする請求項4に記載の記憶方法。
【請求項7】
各々の前記タイムスタンプ差および各々の前記インデックス値差について、
対応する符号化方法は、前記タイムスタンプ差および前記インデックス値差に従って決定され、
前記タイムスタンプ差または前記インデックス値差が第1の値以上第2の値未満である場合、前記タイムスタンプ差または前記インデックス値差は、第1の符号化方法によって表されるとともに記憶され、
前記タイムスタンプ差または前記インデックス値差が第2の値以上第3の値未満である場合、前記タイムスタンプ差または前記インデックス値差は、第2の符号化方法によって表されるとともに記憶されることを特徴とする請求項6に記載の記憶方法。
【請求項8】
車載ハードディスクに書き込まれるマージされた処理される時系列データを決定するステップであって、前記マージされた処理される時系列データは、メモリ内の各々の前記データバケット内の前記マージされた時系列データを備えるステップと、
前記マージされた処理される時系列データを前記車載ハードディスクに書き込むステップとをさらに備えることを特徴とする請求項1に記載の記憶方法。
【請求項9】
前記マージされた処理される時系列データを前記車載ハードディスクに前記書き込むステップは、
前記マージされた処理される時系列データをデータブロックに圧縮し、各々の前記データブロックを前記車載ハードディスクに書き込むステップを備えることを特徴とする請求項8に記載の記憶方法。
【請求項10】
メモリ内の各々の前記データバケット内の前記マージされた時系列データが前記車載ハードディスクに書き込まれた後、残りの時系列データおよび記憶される各々のパーティション内の各々の時系列の前記残りの時系列データを備える記録される時系列データを決定するステップと、
前記記録される時系列データのログ情報を記録し、前記ログ情報が前記車載ハードディスクに書き込まれたかどうかおよび前記ログ情報の書き込み頻度を決定するステップと、
前記ログ情報が前記車載ハードディスクに書き込まれると決定される場合、前記ログ情報を前記書き込み頻度で前記車載ハードディスクに書き込むステップとをさらに備えることを特徴とする請求項8に記載の記憶方法。
【請求項11】
記憶時間に従って、前記車載ハードディスクにおける削除する時系列データを決定するステップと、
前記マージされた処理される時系列データを前記車載ハードディスクに書き込むために前記削除される時系列データを削除するステップをさらに備えることを特徴とする請求項8に記載の記憶方法。
【請求項12】
記憶される各々のノードにおける各々の時系列のサマリーデータを決定するステップと、
各々の時系列の前記サマリーデータを前記メモリから読み出すためにサマリーツリーに従って各々の時系列の前記サマリーデータをそれぞれ記憶するステップであって、前記メモリは、様々な時系列、メモリ内の様々なデータバケットおよび様々なサマリーツリーを備えるステップとをさらに備え、
各々のサマリーツリーは、ルートノードおよびトップからからボトムまでのマルチレイヤを備え、各々は、時間インターバル内の前記サマリーツリーに対応する時系列の前記サマリーデータを記憶することを特徴とする請求項1に記載の記憶方法。
【請求項13】
サマリーツリーに従って各々の時系列の前記サマリーデータをそれぞれ前記記憶するステップは、
各々の時系列の前記サマリーツリーに対して、前記ノードのn番目のレイヤにおける各々のノードに対して、前記ノードによって表されるm番目の時間インターバルを決定し、前記m番目の時間インターバル内に計算された前記時系列内の前記時系列データの前記サマリーデータを前記ノードに記憶するステップを備えることを特徴とする請求項12に記載の記憶方法。
【請求項14】
各々の前記サマリーツリー内の各々のノードは、親ノードの開始時間から現在のノードの開始時間までのオフセットをそれぞれ記憶し、前記現在のノードによって表される時間インターバルの開始時間は、前記親ノードの前記開始時間および前記親ノードの前記開始時間から前記現在のノードの前記開始時間までの前記オフセットによって決定されることを特徴とする請求項13に記載の記憶方法。
【請求項15】
前記車載ハードディスクから各々の前記時系列の前記サマリーデータを問い合わせるために、各々の前記サマリーツリーを前記車載ハードディスクに書き込むステップをさらに備え、
各々の前記サマリーツリーに対応するハードディスクファイルは、ファイルヘッダ部およびデータ部を備え、前記ファイルヘッダ部は、前記サマリーツリーに対応する前記時系列のキーおよび前記サマリーツリーの各々の前記ノードに対応する前記時間インターバルを備え、前記データ部は、前記サマリーツリーの各々のノードによって記憶される前記サマリーデータを備えることを特徴とする請求項13に記載の記憶方法。
【請求項16】
問い合わされる時間インターバルおよび問い合わされるサマリーデータに対応する前記時系列のキーを決定するステップと、
前記問い合わされるサマリーデータに対応する前記時系列の前記キーに従って前記車載ハードディスクから前記問い合わされるサマリーデータに対応する前記ハードディスクファイルを検索するステップと、
前記ハードディスクファイルから前記問い合わされるサマリーデータに対応する前記サマリーツリーをロードするステップと、
前記問い合わされるサマリーデータに対応する前記サマリーツリーの親ノードから照合し、前記問い合わされる時間インターバルに対応する1つまたは複数のノードから前記サマリーデータを取得するために、前記問い合わされる時間インターバルに対応する1つまたは複数のノードが見つかるまで、前記問い合わされるサマリーデータに対応する前記サマリーツリーのノードのマルチレイヤをレイヤごとに横断するステップとを備えることを特徴とする請求項15に記載の記憶方法。
【請求項17】
前記問い合わされる時間インターバルに対応する1つまたは複数のノードから前記サマリーデータを取得するステップは、
前記問い合わされる時間インターバルが1つのノードを備える場合、前記問い合わされるサマリーデータに対応する前記サマリーツリーにおけるノードのレイヤにおけるノードの前記サマリーデータを取得し、ノードの前記レイヤにおける前記ノードの前記サマリーデータを問い合わせ結果として取り込むステップと、
前記問い合わされる時間インターバルが前記複数のノードを備える場合、前記問い合わされるサマリーデータに対応する前記サマリーツリーにおけるノードのレイヤにおける複数のノードの前記サマリーデータをそれぞれ取得し、前記複数のノードの前記サマリーデータをマージするステップであって、前記マージされたサマリーデータを前記問い合わせ結果として取り込むステップとを備え、または
前記問い合わされる時間インターバルに対応する1つまたは複数のノードから前記サマリーデータを取得するステップは、
前記問い合わされる時間が、前記問い合わされるサマリーデータに対応する前記サマリーツリーのノードの前記レイヤにおける前記ノードを完全にカバーしない場合、前記問い合わされるサマリーデータに対応する前記サマリーツリーのノードのレイヤにおける上側境界ノードおよび下側境界ノードの前記サマリーデータを破棄し、前記問い合わされるサマリーデータに対応する前記サマリーツリーのノードの前記レイヤにおける前記上側境界ノードおよび前記下側境界ノード以外のノードの前記サマリーデータを保持するステップを備えることを特徴とする請求項16に記載の記憶方法。
【請求項18】
車載データベースに対して使用される車載データの記憶システムであって、
現在の期間において、前記車載データベースに書き込まれた処理される様々な時系列データを取得するデータ取得モジュールと、
各々の前記処理される時系列データについて、前記処理される時系列データに従って、前記車載データベースに記憶されるノードおよび前記ノードにおいて記憶されるパーティションを決定し、前記処理される時系列データを前記決定された記憶されるパーティション内の対応する前記時系列に書き込むデータ書き込みモジュールと、
各々の前記記憶されるパーティションに書き込まれた各々の前記時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の前記時系列データをマージするデータマージモジュールとを備えることを特徴とする記憶システム。
【請求項19】
メモリと、
前記メモリに結合されたプロセッサとを備える電子デバイスであって、前記メモリは、前記プロセッサによって実行される1つまたは複数のコンピュータ命令を記憶し、請求項1乃至17のいずれかに係る前記記憶方法を実行することを特徴とする電子デバイス。
【請求項20】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、前記コンピュータプログラムはプロセッサによって実行され、請求項1乃至17のいずれかに係る前記記憶方法を実行することを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ記憶の技術分野に関し、特に、車載データ記憶方法及びシステムに関する。
【背景技術】
【0002】
車載データベースは主に時系列データを記憶し、記憶された生データは非常に大量である。オリジナルデータが分析および計算のために車載データベースから直接クエリされる場合、多くのコンピューティングリソースおよび時間が消費され、車載デバイスは、限定されたコンピューティングリソースを提供する場合があり、その結果、車載デバイスは、他の要求に適時に応答することができない。また、車載ハードディスクの容量は限られているため、車載ハードディスクに大量の生データを高い頻度で書き込むと、ハードディスクの容量を完全に占有する場合があり、車両内の機器の故障につながる。しかしながら、全ての生データが分析および計算のためにクラウドに送信される場合、帯域幅は、膨大な量のデータのために、リアルタイム伝送の要件を満たすことができない。
【発明の概要】
【0003】
本発明において、車載データの記憶方法が提供され、記憶方法は、車載データベースのために使用され、方法は、
現在の期間において、車載データベースに書き込まれた処理される様々な時系列データを取得するステップと、
各々の処理される時系列データについて、処理される時系列データに従って、車載データベースに記憶されるノードおよびノードにおいて記憶されるパーティションを決定し、処理される時系列データを決定された記憶されるパーティション内の対応する時系列に書き込むステップと、
各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするステップとを備える。
【0004】
本発明のさらなる改良として、各々の処理される時系列データについて、処理される時系列データに従って車載データベースに記憶されるノードおよびノードに記憶されるパーティションを決定し、処理される時系列データを決定された記憶されるパーティション内の対応する時系列に書き込むステップは、
各々の時系列データについて、
処理される時系列データのキーに対応するハッシュ値を決定するステップと、
ハッシュ値に従って、処理される時系列データに対応する記憶されるノード、記憶されるノード内の記憶されるパーティション、記憶されるパーティションの対応する時系列とを決定し、処理される時系列データを記憶されるパーティション内の対応する時系列に書き込むステップとを備える。
【0005】
本発明のさらなる改良として、各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするステップは、
各々の記憶されるパーティションにおける各々の時系列に対して、現在の期間内に書き込まれた各々の時系列データを時系列に対応するメモリ内のデータバケットに書き込むステップと、
メモリ内の各々のデータバケットに対して、メモリ内のデータバケットに書き込まれた各々の時系列データをマージするステップとを備える。
【0006】
本発明のさらなる改良として、各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするステップは、
各々の処理されるデータを処理される様々な時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップと、
圧縮された各々の処理される時系列データを対応するパーティションの対応する時系列にそれぞれ書き込むステップとを備える。
【0007】
各々の処理されるデータを処理される様々な時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップは、
各々の記憶されるパーティションに対して、
第1の処理される時系列データを記憶されるパーティションに書き込むステップと、
記憶されるパーティションに書き込まれた第2の処理される時系列データおよび第1の処理される時系列データの間の第1のタイムスタンプ差および第1のインデックス値差を決定し、第1のタイムスタンプ差および第1のインデックス値差を圧縮された第2の時系列データとして記憶されるパーティションに記憶するステップと、
記憶されるパーティションに書き込まれた第3の処理される時系列データおよび第2の処理される時系列データの間の第2のタイムスタンプ差および第2のインデックス値差を決定し、第2のタイムスタンプ差および第1のタイムスタンプ差の間の第3のタイムスタンプ差ならびに第2のインデックス値差および第1のインデックス値差の間の第3のインデックス値差を決定し、第3のタイムスタンプ差および第3のインデックス値差を圧縮された第3の時系列データとして記憶されるパーティションに記憶するステップとを備える。
【0008】
本発明のさらなる改良として、各々のタイムスタンプ差および各々のインデックス値差は、異なる符号化方法によって表されるとともに記憶される。
【0009】
本発明のさらなる改良として、
各々のタイムスタンプ差および各々のインデックス値差に対して、
対応する符号化方法は、タイムスタンプ差およびインデックス値差に従って決定され、
タイムスタンプ差またはインデックス値差が第1の値以上第2の値未満である場合、タイムスタンプ差またはインデックス値差は、第1の符号化方法によって表されるとともに記憶され、
タイムスタンプ差またはインデックス値差が第2の値以上第3の値未満である場合、タイムスタンプ差またはインデックス値差は、第2の符号化方法によって表されるとともに記憶される。
【0010】
本発明のさらなる改良として、記憶方法は、
車載ハードディスクに書き込まれるマージされた処理される時系列データを決定するステップであって、マージされた処理される時系列データは、メモリ内の各々のデータバケット内のマージされた時系列データを備えるステップと、
マージされた処理される時系列データを車載ハードディスクに書き込むステップとをさらに備える。
【0011】
本発明のさらなる改良として、マージされた処理される時系列データを車載ハードディスクに書き込むステップは、
マージされた処理される時系列データをデータブロックに圧縮し、各々のデータブロックを車載ハードディスクに書き込むステップを備える。
【0012】
本発明のさらなる改良として、記憶方法は、
メモリ内の各々のデータバケット内のマージされた時系列データが車載ハードディスクに書き込まれた後、残りの時系列データおよび記憶される各々のパーティション内の各々の時系列の残りの時系列データを備える記録される時系列データを決定するステップと、
記録される時系列データのログ情報を記録し、ログ情報が車載ハードディスクに書き込まれたかどうかおよびログ情報の書き込み頻度を決定するステップと、
ログ情報が車載ハードディスクに書き込まれると決定される場合、ログ情報を書き込み頻度で車載ハードディスクに書き込むステップとをさらに備える。
【0013】
本発明のさらなる改良として、記憶方法は、
記憶時間に従って、車載ハードディスクにおける削除する時系列データを決定するステップと、
マージされた処理される時系列データを車載ハードディスクに書き込むために削除される時系列データを削除するステップをさらに備える。
【0014】
本発明のさらなる改良として、記憶方法は、
記憶される各々のノードにおける各々の時系列のサマリーデータを決定するステップと、
各々の時系列のサマリーデータをメモリから読み出すためにサマリーツリーに従って各々の時系列のサマリーデータをそれぞれ記憶するステップであって、メモリは、様々な時系列、メモリ内の様々なデータバケットおよび様々なサマリーツリーを備えるステップとをさらに備え、
各々のサマリーツリーは、ルートノードおよびトップからからボトムまでのマルチレイヤを備え、各々は、時間インターバル内のサマリーツリーに対応する時系列のサマリーデータを記憶する。
【0015】
本発明のさらなる改良として、サマリーツリーに従って各々の時系列のサマリーデータをそれぞれ記憶するステップは、
各々の時系列のサマリーツリーに対して、ノードのn番目のレイヤにおける各々のノードに対して、ノードによって表されるm番目の時間インターバルを決定し、m番目の時間インターバル内に計算された時系列内の時系列データのサマリーデータをノードに記憶するステップを備える。
【0016】
本発明のさらなる改良として、各々のサマリーツリー内の各々のノードは、親ノードの開始時間から現在のノードの開始時間までのオフセットをそれぞれ記憶し、現在のノードによって表される時間インターバルの開始時間は、親ノードの開始時間および親ノードの開始時間から現在のノードの開始時間までのオフセットによって決定される。
【0017】
本発明のさらなる改良として、記憶方法は、
車載ハードディスクから各々の時系列のサマリーデータを問い合わせるために、各々のサマリーツリーを車載ハードディスクに書き込むステップをさらに備え、
各々のサマリーツリーに対応するハードディスクファイルは、ファイルヘッダ部およびデータ部を備え、ファイルヘッダ部は、サマリーツリーに対応する時系列のキーおよびサマリーツリーの各々のノードに対応する時間インターバルを備え、データ部は、サマリーツリーの各々のノードによって記憶されるサマリーデータを備える。
【0018】
本発明のさらなる改良として、記憶方法は、
問い合わされる時間インターバルおよび問い合わされるサマリーデータに対応する時系列のキーを決定するステップと、
問い合わされるサマリーデータに対応する時系列のキーに従って車載ハードディスクから問い合わされるサマリーデータに対応するハードディスクファイルを検索するステップと、
ハードディスクファイルから問い合わされるサマリーデータに対応するサマリーツリーをロードするステップと、
問い合わされるサマリーデータに対応するサマリーツリーの親ノードから照合し、問い合わされる時間インターバルに対応する1つまたは複数のノードからサマリーデータを取得するために、問い合わされる時間インターバルに対応する1つまたは複数のノードが見つかるまで、問い合わされるサマリーデータに対応するサマリーツリーのノードのマルチレイヤをレイヤごとに横断するステップとを備える。
【0019】
本発明のさらなる改良として、問い合わされる時間インターバルに対応する1つまたは複数のノードからサマリーデータを取得するステップは、
問い合わされる時間インターバルが1つのノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおけるノードのサマリーデータを取得し、ノードのレイヤにおけるノードのサマリーデータを問い合わせ結果として取り込むステップと、
問い合わされる時間インターバルが複数のノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおける複数のノードのサマリーデータをそれぞれ取得し、複数のノードのサマリーデータをマージするステップであって、マージされたサマリーデータを問い合わせ結果として取り込むステップとを備える。
【0020】
本発明のさらなる改良として、問い合わされる時間インターバルに対応する1つまたは複数のノードからサマリーデータを取得するステップは、
問い合わされる時間が、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおけるノードを完全にカバーしない場合、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおける上側境界ノードおよび下側境界ノードのサマリーデータを破棄し、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおける上側境界ノードおよび下側境界ノード以外のノードのサマリーデータを保持するステップを備える。
【0021】
本発明において車載データの記憶システムがさらに提供され、記憶システムは車載データベースに対して使用され、記憶システムは、
現在の期間において、車載データベースに書き込まれた処理される様々な時系列データを取得するデータ取得モジュールと、
各々の処理される時系列データについて、処理される時系列データに従って、車載データベースに記憶されるノードおよびノードにおいて記憶されるパーティションを決定し、処理される時系列データを決定された記憶されるパーティション内の対応する時系列に書き込むデータ書き込みモジュールと、
各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするデータマージモジュールとを備える。
【0022】
本発明のさらなる改良として、データ書き込みモジュールは、
各々の時系列データについて、
処理される時系列データのキーに対応するハッシュ値を決定するステップと、
ハッシュ値に従って、処理される時系列データに対応する記憶されるノード、記憶されるノード内の記憶されるパーティション、記憶されるパーティションの対応する時系列とを決定し、処理される時系列データを記憶されるパーティション内の対応する時系列に書き込むステップとに対して使用される。
【0023】
本発明のさらなる改良として、データマージモジュールは、
各々の記憶されるパーティションにおける各々の時系列に対して、現在の期間内に書き込まれた各々の時系列データを時系列に対応するメモリ内のデータバケットに書き込むステップと、
メモリ内の各々のデータバケットに対して、メモリ内のデータバケットに書き込まれた各々の時系列データをマージするステップとに対して使用される。
【0024】
本発明のさらなる改良として、データ書き込みモジュールは、
各々の処理されるデータを処理される様々な時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップと、
圧縮された各々の処理される時系列データを対応するパーティションの対応する時系列にそれぞれ書き込むステップとに対して使用される。
【0025】
本発明のさらなる改良として、データ書き込みモジュールは、
各々の記憶されるパーティションに対して、
第1の処理される時系列データを記憶されるパーティションに書き込むステップと、
記憶されるパーティションに書き込まれた第2の処理される時系列データおよび第1の処理される時系列データの間の第1のタイムスタンプ差および第1のインデックス値差を決定し、第1のタイムスタンプ差および第1のインデックス値差を圧縮された第2の時系列データとして記憶されるパーティションに記憶するステップと、
記憶されるパーティションに書き込まれた第3の処理される時系列データおよび第2の処理される時系列データの間の第2のタイムスタンプ差および第2のインデックス値差を決定し、第2のタイムスタンプ差および第1のタイムスタンプ差の間の第3のタイムスタンプ差ならびに第2のインデックス値差および第1のインデックス値差の間の第3のインデックス値差を決定し、第3のタイムスタンプ差および第3のインデックス値差を圧縮された第3の時系列データとして記憶されるパーティションに記憶するステップとに対してさらに使用される。
【0026】
本発明のさらなる改良として、各々のタイムスタンプ差および各々のインデックス値差は、異なる符号化方法によって表されるとともに記憶される。
【0027】
本発明のさらなる改良として、各々のタイムスタンプ差および各々のインデックス値差に対して、
対応する符号化方法は、タイムスタンプ差およびインデックス値差に従って決定され、
タイムスタンプ差またはインデックス値差が第1の値以上第2の値未満である場合、タイムスタンプ差またはインデックス値差は、第1の符号化方法によって表されるとともに記憶され、
タイムスタンプ差またはインデックス値差が第2の値以上第3の値未満である場合、タイムスタンプ差またはインデックス値差は、第2の符号化方法によって表されるとともに記憶される。
【0028】
本発明のさらなる改良として、記憶システムは、
車載ハードディスクに書き込まれるマージされた処理される時系列データを決定する第1のデータ書き込みモジュールであって、マージされた処理される時系列データは、メモリ内の各々のデータバケット内のマージされた時系列データを備え、マージされた処理される時系列データを車載ハードディスクに書き込む第1のデータ書き込みモジュールをさらに備える。
【0029】
本発明のさらなる改良として、第1のデータ書き込みモジュールは、
マージされた処理される時系列データをデータブロックに圧縮し、各々のデータブロックを車載ハードディスクに書き込むステップに対してさらに使用される。
【0030】
本発明のさらなる改良として、記憶システムは、
メモリ内の各々のデータバケット内のマージされた時系列データが車載ハードディスクに書き込まれた後、残りの時系列データおよび記憶される各々のパーティション内の各々の時系列の残りの時系列データを備える記録される時系列データを決定し、記録される時系列データのログ情報を記録し、ログ情報が車載ハードディスクに書き込まれたかどうかおよびログ情報の書き込み頻度を決定し、ログ情報が車載ハードディスクに書き込まれると決定される場合、ログ情報を書き込み頻度で車載ハードディスクに書き込むログモジュールをさらに備える。
【0031】
本発明のさらなる改良として、記憶システムは、
記憶時間に従って、車載ハードディスクにおける削除する時系列データを決定し、マージされた処理される時系列データを車載ハードディスクに書き込むために削除される時系列データを削除するデータ削除モジュールをさらに備える。
【0032】
本発明のさらなる改良として、記憶システムは、
記憶される各々のノードにおける各々の時系列のサマリーデータを決定し、
各々の時系列のサマリーデータをメモリから読み出すためにサマリーツリーに従って各々の時系列のサマリーデータをそれぞれ記憶するデータサマリーモジュールをさらに備え、メモリは、様々な時系列、メモリ内の様々なデータバケットおよび様々なサマリーツリーを備え、
各々のサマリーツリーは、ルートノードおよびトップからからボトムまでのマルチレイヤを備え、各々は、時間インターバル内のサマリーツリーに対応する時系列のサマリーデータを記憶する。
【0033】
本発明のさらなる改良として、データサマリーモジュールは、各々の時系列のサマリーツリーに対して、ノードのn番目のレイヤにおける各々のノードに対して、ノードによって表されるm番目の時間インターバルを決定し、m番目の時間インターバル内に計算された時系列内の時系列データのサマリーデータをノードに記憶するステップに対してさらに使用される。
【0034】
本発明のさらなる改良として、各々のサマリーツリー内の各々のノードは、親ノードの開始時間から現在のノードの開始時間までのオフセットをそれぞれ記憶し、現在のノードによって表される時間インターバルの開始時間は、親ノードの開始時間および親ノードの開始時間から現在のノードの開始時間までのオフセットによって決定される。
【0035】
本発明のさらなる改良として、記憶システムは、
車載ハードディスクから各々の時系列のサマリーデータを問い合わせるために、各々のサマリーツリーを車載ハードディスクに書き込む第2のデータ書き込みモジュールをさらに備え、
各々のサマリーツリーに対応するハードディスクファイルは、ファイルヘッダ部およびデータ部を備え、ファイルヘッダ部は、サマリーツリーに対応する時系列のキーおよびサマリーツリーの各々のノードに対応する時間インターバルを備え、データ部は、サマリーツリーの各々のノードによって記憶されるサマリーデータを備える。
【0036】
本発明のさらなる改良として、記憶システムは、
問い合わされる時間インターバルおよび問い合わされるサマリーデータに対応する時系列のキーを決定し、問い合わされるサマリーデータに対応する時系列のキーに従って車載ハードディスクから問い合わされるサマリーデータに対応するハードディスクファイルを検索し、問い合わされるサマリーデータに対応するサマリーツリーの親ノードから照合し、問い合わされる時間インターバルに対応する1つまたは複数のノードからサマリーデータを取得するために、問い合わされる時間インターバルに対応する1つまたは複数のノードが見つかるまで、問い合わされるサマリーデータに対応するサマリーツリーのノードのマルチレイヤをレイヤごとに横断するデータ問い合わせモジュールをさらに備える。
【0037】
本発明のさらなる改良として、データ問い合わせモジュールは、
問い合わされる時間インターバルが1つのノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおけるノードのサマリーデータを取得し、ノードのレイヤにおけるノードのサマリーデータを問い合わせ結果として取り込むステップと、
問い合わされる時間インターバルが複数のノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおける複数のノードのサマリーデータをそれぞれ取得し、複数のノードのサマリーデータをマージするステップであって、マージされたサマリーデータを問い合わせ結果として取り込むステップとに対してさらに使用される。
【0038】
本発明のさらなる改良として、データ問い合わせモジュールは、
問い合わされる時間が、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおけるノードを完全にカバーしない場合、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおける上側境界ノードおよび下側境界ノードのサマリーデータを破棄し、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおける上側境界ノードおよび下側境界ノード以外のノードのサマリーデータを保持するステップに対してさらに使用される。
【0039】
本発明において、メモリとプロセッサとを備える電子デバイスもまた提供され、メモリは、上述の方法を実装するプロセッサによって実行される1つまたは複数のコンピュータ命令を記憶する。
【0040】
本発明において、コンピュータプログラムが記憶されたコンピュータ可読記憶媒体が提供され、コンピュータプログラムは、プロセッサによって実行され、説明される方法を実施する。
【0041】
本発明の実施形態または従来技術における技術上の解決策をより明確に説明するために、以下では、実施形態または従来技術の説明において使用するために必要な添付の図面について簡潔に紹介する。以下で説明する添付図面は、本発明の実施形態のいくつかにすぎないことは明らかである。当業者にとって、他の添付の図面もまた、独創的な工夫が関与しないことを前提として、そのような添付の図面に従って取得され得る。
【図面の簡単な説明】
【0042】
【
図1】
図1は、本発明の例示的な一実施形態による車載データベースの概略図である。
【
図2】
図2は、本発明の例示的な一実施形態による車載データベースの記憶システムの概略図である。
【
図3】
図3は、本発明の例示的な一実施形態によるサマリーツリー構造の概略図である。
【
図4】
図4は、本発明の例示的な一実施形態によるサマリーデータの問い合わせの概略図である。
【
図5】
図5は、本発明のさらなる例示的な実施形態によるサマリーデータの問い合わせの概略図である。
【発明を実施するための形態】
【0043】
以下、本発明の実施形態における技術上の解決策を、本発明の実施形態における添付の図面と併せて明示的かつ完全に説明する。明らかであるように、説明される実施形態は、全ての実施形態よりむしろ本開示の一部の実施形態にすぎない。本発明の実施形態に基づいて、当業者によって得られる他の全ての実施形態は、独創的な工夫が関与しないという前提で、本発明の保護範囲に入る。
【0044】
なお、本発明の実施形態に関与する方向指示(例えば、上、下、左、右、前、後、・・・)がある場合、これらの方向表示は、特定の状態(添付の図面に示されているような状態)における様々な構成要素の相対的な位置関係や移動条件等を説明するためだけに用いられ、特定の状態が変化する場合、方向指示もそれに応じて変化する。
【0045】
加えて、本発明の説明において、使用される用語は、本発明の範囲を限定することを意図するのではなく、例示のみを目的としている。用語「備える(comprising)」および/または「含む(containing)」は、前述の要素、ステップ、動作および/または構成要素の存在を特定するために使用されるが、1つまたは複数の他の要素、ステップ、動作および/または構成要素の存在または追加を排除しない。様々な要素を説明するために使用され得る「第1の」および「第2の」などの用語は、順序を表しておらず、またはこれらの要素を限定していない。また、本発明の説明において、「複数」の意味は、特に断らない限り2以上とする。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。以下の添付の図面と併せて、これらおよび/または他の態様が明らかになり、当業者は、本発明の実施形態の説明をより容易に理解するであろう。添付の図面は、例示目的のみで本発明の実施形態を示すために使用される。当業者は、以下の説明から、本発明に示される構造および方法の代替的な実施形態が、本発明の前述の原理から逸脱することなく採用され得ることを容易に理解するであろう。
【0046】
本発明の実施形態によれば、車載データ記憶方法が提供され、方法は、車載データベースに対して使用され、方法は、
現在の期間において、車載データベースに書き込まれた処理される様々な時系列データを取得するステップと、
各々の処理される時系列データについて、処理される時系列データに従って、車載データベースに記憶されるノードおよびノードにおいて記憶されるパーティションを決定し、処理される時系列データを決定された記憶されるパーティション内の対応する時系列に書き込むステップと、
各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするステップとを備える。
【0047】
図1に示すように、本発明の車載データベースは、物理ノードまたは仮想ノードであり得る複数のノードを備え、1つまたは複数の車載データベースインスタンスが各々のノードで動作し、車載データベース記憶システムが各々の車載データベースインスタンス(すなわち、記憶されるノード)に対して動作する。
図2に示すように、車載データベースの記憶システムは、複数のパーティションに区切られ、各々のパーティションは、複数の時系列(時系列は、同じキーワードを有する複数の期間の時系列データを表す)と、メモリ内の複数のデータバケットと、ハードディスクファイル(データファイルおよびログファイル)とを含む。クライアントが(処理される時系列データに対して)データ挿入要求または問い合わせ要求を送信する場合、対応する車両データベースインスタンス内のパーティションに、対応する要求が送信される。
【0048】
代替的な実施形態において、各々の処理される時系列データについて、処理される時系列データに従って車載データベースに記憶されるノードおよびノードに記憶されるパーティションを決定し、処理される時系列データを決定された記憶されるパーティション内の対応する時系列に書き込むステップは、
各々の時系列データについて、
処理される時系列データのキーに対応するハッシュ値を決定するステップと、
ハッシュ値に従って、処理される時系列データに対応する記憶されるノード、記憶されるノード内の記憶されるパーティション、記憶されるパーティションの対応する時系列とを決定し、処理される時系列データを記憶されるパーティション内の対応する時系列に書き込むステップと、
各々の処理される時系列データを各々の記憶されるパーティションにおける各々の時系列にそれぞれ書き込むステップなどを備える。
【0049】
例えば、処理される時系列データ<timestamp,key,value>が挿入される場合、最初に処理される時系列データのキーに応じてハッシュ値を計算し、そのハッシュ値に応じて挿入要求のあった記憶ノードを決定する必要がある。本発明において、時系列データは、時間およびキー値に従って、各々の記憶されるパーティションの各々の時系列においてセグメント化およびキャッシュされ、各々の異なるキーは異なる時系列に対応し、各々の時系列は同じキーを有する。このように、時系列データの読み出しおよび書き込み動作は全て、メモリ(メモリは、複数の時系列、メモリ内の複数のデータバケットおよび複数のサマリーツリーを備える)において実行されてもよく、その結果、車載データベースは、ミリ秒データレベルの書き込み動作を有し得る。
【0050】
代替的な実施形態において、各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするステップは、
各々の記憶されるパーティションにおける各々の時系列に対して、現在の期間内に書き込まれた各々の時系列データを時系列に対応するメモリ内のデータバケットに書き込むステップと、
メモリ内の各々のデータバケットに対して、メモリ内のデータバケットに書き込まれた各々の時系列データをマージするステップと、
各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の各々の時系列データをマージするステップなどを備える。
【0051】
本発明において、メモリは、複数の時系列とメモリ内の複数のデータバケットとを備え、いくつかの時系列はメモリ内のデータバケットに対応し、各々の時系列の現在の期間における各々の時系列データは、現在の期間の時系列データが完全に書き込まれた後に、メモリ内のデータバケットに書き込まれ、現在の期間の各時系列データは、メモリ内のデータバケットにマージされる。例えば、各々の時系列は10分の時系列データを含むものとする。時系列データが対応する時系列に10分間書き込まれた後、現在の期間における各々の時系列(例えば、2つの時系列)の各々の時系列データがメモリ内のデータバケットにそれぞれ書き込まれ、次いで、次の期間における時系列データが書き込まれ、メモリ内のデータバケットに書き込まれた現在の期間の各々の時系列(例えば、2つの時系列)に対応する各々の時系列データがマージされて保持され、ハードディスクに書き込まれる。
【0052】
代替的な実施形態において、各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするステップは、
各々の処理されるデータを処理される様々な時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップと、
圧縮された各々の処理される時系列データを対応するパーティションの対応する時系列にそれぞれ書き込むステップとを備える。
【0053】
車載データはデータ量が多いため、本発明において、メモリに書き込まれた時系列データは圧縮され、その後に車載ハードディスクに書き込まれるデータ量を制御する。例えば、各々の時系列データ<timestamp,key,value>は圧縮され、記憶される。一般に、車載時系列データのインデックス値は一定の頻度で収集され、インデックス値の変動間隔はわずかであり、タイムスタンプの値と隣接する時系列データに対応する3つの部分からなる値との差は非常に小さい。したがって、本発明において、元の値ではなく差分を記録することで時系列データが圧縮され、圧縮後により多くの時系列データをメモリに記憶することができる。
【0054】
代替的な実施形態において、各々の処理されるデータを処理される様々な時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップは、
各々の記憶されるパーティションに対して、
第1の処理される時系列データを記憶されるパーティションに書き込むステップと、
記憶されるパーティションに書き込まれた第2の処理される時系列データおよび第1の処理される時系列データの間の第1のタイムスタンプ差および第1のインデックス値差を決定し、第1のタイムスタンプ差および第1のインデックス値差を圧縮された第2の時系列データとして記憶されるパーティションに記憶するステップと、
記憶されるパーティションに書き込まれた第3の処理される時系列データおよび第2の処理される時系列データの間の第2のタイムスタンプ差および第2のインデックス値差を決定し、第2のタイムスタンプ差および第1のタイムスタンプ差の間の第3のタイムスタンプ差ならびに第2のインデックス値差および第1のインデックス値差の間の第3のインデックス値差を決定し、第3のタイムスタンプ差および第3のインデックス値差を圧縮された第3の時系列データとして記憶されるパーティションに記憶するステップと、
各々のタイムスタンプ差および各々のインデックス値差を通じて各々の処理される時系列データを圧縮し、記憶するステップなどを備える。
【0055】
本発明において、時系列データの圧縮を実現するために、例えば、<Δ(Δtimestamp),・・・Δ(Δvalue)>が記憶され、Δtimestampは、現在の時系列データにおけるタイムスタンプおよび以前の時系列データにおけるタイムスタンプ差を表し、Δ(Δtimestamp)は、2つの隣接するタイムスタンプ差の間の差を表し、Δvalueは、現在の時系列データおよび以前の時系列データにおけるインデックス値の差を表し、Δ(Δvalue)は、隣接する2つのインデックス値の間の差(Δvalue1-Δvalue2)を表し、Δvalue1は、現在の時系列データおよび以前の時系列データにおけるインデックス値差を表し、Δvalue2は、以前の時系列データおよびさらに以前の時系列データにおけるインデックス値差を表す。例えば、時系列において、4つの時系列データがあり、それぞれ、<1585137131985,“VhlSpd”,43.5>、<1585137132035,“VhlSpd”,43.6>、<1585137132085,“VhlSpd”,43.7>、<1585137132135,“VhlSpd”,43.9>である。第1の時系列データは時系列内の第1のデータであるため、キー(VhlSpd)を記憶する必要があり、すなわち、第1の時系列データは<1585137131985,43.5>として記憶される。この時系列における他の時系列データについては、キーを記憶する必要はない。第2の時系列データについては、第1の時系列データとの差のみが記憶される、すなわち、第2の時系列データは<50,0.1>として記憶される。第3の時系列データについては、まず第2の時系列データとの差が<50,0.1>と計算され、この差と第2の時系列データと第1の時系列データとの差<50,0.1>との差が計算され、すなわち第3の時系列データが<0,0>として記憶される。第4の時系列データと第3の時系列データとの差は<50,0.2>であり、この差と第3の時系列データと第2の時系列データとの差<50,0.1>との差は<0,0.1>であり、すなわち第4の時系列データは<0,0.1>として記憶される等である。
【0056】
代替的な一実施形態において、各々のタイムスタンプ差および各々のインデックス値差は、異なる符号化方法によって表されるとともに記憶される。
【0057】
代替的な一実施形態において、
各々のタイムスタンプ差および各々のインデックス値差に対して、
対応する符号化方法は、タイムスタンプ差およびインデックス値差に従って決定され、
タイムスタンプ差またはインデックス値差が第1の値以上第2の値未満である場合、タイムスタンプ差またはインデックス値差は、第1の符号化方法によって表されるとともに記憶され、
タイムスタンプ差またはインデックス値差が第2の値以上第3の値未満である場合、タイムスタンプ差またはインデックス値差は、第2の符号化方法によって表されるとともに記憶され、
異なる符号化方法によって各々のタイムスタンプ差および各々のインデックス値差を表すとともに記憶するステップなどを備える。
【0058】
上述のように、隣接する2つの時系列データ間のタイムスタンプ差とインデックス値差には大きな差はなく、その値域は元の値よりもはるかに小さい。差は、差分範囲によって符号化されて表され、保存される。例えば、差0は1ビットの二進数0で表され、差は-128~127の8ビットの符号で表されてもよい。本発明において、多様な符号化方式を特に定義しない。符号化方法で差を記憶することによって、記憶されるデータの長さは、元のデータよりもはるかに短くなる場合があり、より多くの時系列データがメモリに記憶され得る。また、各々の時系列における第1の時系列データはキーを格納し、同じ時系列の後ろの時系列データはキー値を格納しないので、メモリスペースを大幅に節約することができる。
【0059】
代替的な一実施形態において、方法は、
車載ハードディスクに書き込まれるマージされた処理される時系列データを決定するステップであって、マージされた処理される時系列データは、メモリ内の各々のデータバケット内のマージされた時系列データを備えるステップと、
マージされた処理される時系列データを車載ハードディスクに書き込むステップとをさらに備える。
【0060】
代替的な一実施形態において、マージされた処理される時系列データを車載ハードディスクに書き込むステップは、マージされた処理される時系列データをデータブロックに圧縮し、各々のデータブロックを車載ハードディスクに書き込むステップを備える。
【0061】
図2に示すように、本発明において、マージされた時系列データは、メモリ内のデータバケットからハードディスクに非同期の規則的な書き込み方法で書き込まれる。この書き込み方法では、1回の書き込みでメモリ内のデータバケットへの書き込みを待つ全ての期間のデータを書き込み、複数の期間のデータをできるだけ同時にハードディスクに書き込むことができる。また、本発明において、ハードディスクに書き込まれるデータをデータブロック単位で圧縮するので、ハードディスクに書き込まれるデータ量をさらに削減することができる。
【0062】
代替的な一実施形態において、方法は、
メモリ内の各々のデータバケット内のマージされた時系列データが車載ハードディスクに書き込まれた後、残りの時系列データおよび記憶される各々のパーティション内の各々の時系列の残りの時系列データを備える記録される時系列データを決定するステップと、
記録される時系列データのログ情報を記録し、ログ情報が車載ハードディスクに書き込まれたかどうかおよびログ情報の書き込み頻度を決定するステップと、
ログ情報が車載ハードディスクに書き込まれると決定される場合、ログ情報を書き込み頻度で車載ハードディスクに書き込むステップとを備える。
【0063】
リアルタイム書き込み方法ではなく、非同期書き込み方法を用いているため、メモリ内の各々のデータバケットや各々の時系列に時系列データが残ってしまい、システムの電源がオフになったり、その他の理由でシステムダウンタイムが発生したりすると、この一部のデータが消失しやすくなる。データのこの部分の損失を回避するために、本発明において、データのこの部分についてログが記録され、システムがダウンタイムまたは電源オフに遭遇したときにシステムの再起動後にデータのこの部分がログから回復され得る。車載制御デバイスにおいて、高いデータセキュリティを必要としない、制御デバイスによって生成されるいくつかの信号が存在する。低い要件を有するデータのこの部分の損失は、車載システムに大きな影響を与えない。この場合、車載ハードディスクの書き込み回数を減らすために、構成によって、ログを車載ハードディスクに書き込む必要があるかどうか、およびログをどの書き込み頻度で車載ハードディスクに書き込むかを決定することができる。
【0064】
ある瞬間におけるデバイス性能や動作挙動のフィードバックである車載制御デバイスのインデックスデータは、読み出し専用のデータである。改変が許容される場合、安全でない改ざん挙動は避けられない。本発明によれば、各記憶ノードに書き込まれたデータを修正できないので、車載ハードディスクに書き込まれたデータファイルやログファイルの修正を回避でき、車載ハードディスクへの書き込み回数をさらに削減できる。
【0065】
代替的な一実施形態において、方法は、
記憶時間に従って、車載ハードディスクにおける削除する時系列データを決定するステップと、
マージされた処理される時系列データを車載ハードディスクに書き込むために削除される時系列データを削除するステップをさらに備える。
【0066】
時間の経過に伴い、車載ハードディスクに書き込まれるデータ量はますます大きくなり、定期的に削除されないとハードディスクの容量を上回る可能性がある。車載制御デバイスのインデックスデータの主な目的は、解析および監視を行うことである。解析と監視の両方は、最新のデータに基づく解析と処理を行うことによって実現され、処理後のデータや解析結果をサーバに同期させる。したがって、車載データベースにおけるデータアクセスは最新のデータへのアクセスであり、データの値はその記憶期間の経過とともに徐々に低下する。ある期間にわたってデータが記憶された後、その値は実質的にゼロに近づいた。本発明において、記憶時間を超えて記憶されたデータを自動的に削除し、記憶時間を設定してもよい。本発明は、記憶時間を具体的に定義しない。
【0067】
代替的な一実施形態において、方法は、
記憶される各々のノードにおける各々の時系列のサマリーデータを決定するステップと、
各々の時系列のサマリーデータをメモリから読み出すためにサマリーツリーに従って各々の時系列のサマリーデータをそれぞれ記憶するステップであって、メモリは、様々な時系列、メモリ内の様々なデータバケットおよび様々なサマリーツリーを備えるステップとをさらに備え、
各々のサマリーツリーは、ルートノードおよびトップからからボトムまでのマルチレイヤを備え、各々は、時間インターバル内のサマリーツリーに対応する時系列のサマリーデータを記憶する。
【0068】
代替的な一実施形態において、サマリーツリーに従って各々の時系列のサマリーデータを記憶するステップは、
各々の時系列のサマリーツリーに対して、
ノードのn番目のレイヤにおける各々のノードに対して、ノードによって表されるm番目の時間インターバルを決定し、m番目の時間インターバル内において計算される時系列における時系列データのサマリーデータをノードに記憶するステップと、
ノードの(n-1)番目のレイヤにおける各々のノードに対して、ノードによって表される(m-1)番目の時間インターバルを決定し、(m-1)番目の時間インターバル内において計算される時系列における時系列データのサマリーデータをノードに記憶するステップと、
各々の時間インターバルにおける時系列における各々の時系列データのサマリーデータをサマリーツリー内の各々のノードにそれぞれ記憶するステップなどと、
サマリーツリーに従って各々の時系列のサマリーデータをそれぞれ記憶するステップなどを備える。
【0069】
本発明において、サマリーデータは、サマリーツリーにより、サマリー計算を行うために必要な時系列ごとに記憶される。元のデータを計算のためにクラウドに送り返す代わりに、必要なサマリー計算結果を車載データベースから迅速に読み出すこと、または元のデータから車載データベース計算を実行し、次いで、問い合わせ処理中に結果を返すことができる。例えば、
図3に示すように、サマリーツリー内の各々のノードは、時間インターバルを表し、この時間インターバル内の特定の時系列のサマリーデータが記憶されている。例えば、ルートノードは、ルートノードに記憶された開始時間から30日以内のサマリーデータ、例えばサム(sum)値、カウント値、最小値および最大値を表し、第2のレベルの第1のノードは、ルートノードの開始時間から1日以内のサマリーデータを表し、第3のレベルの第1のノードは、ルートノードの開始時間から1時間内のサマリーデータを表し、第4のレベルの第1のノードは、ルートノードの開始時間から1分以内のサマリーデータを表す。
【0070】
本発明によれば、サマリーツリーは、サマリー計算に必要とされる時系列ごとにメモリに予約される。データが特定の時系列に書き込まれると、車載データベースは、サマリーツリーを同期的に更新する。書き込まれた時系列データが現在のサマリーツリーによって表される時間範囲を超える場合、車載データベースは、このサマリーツリーを車載ハードディスクに書き込み、次いで、サマリーツリーは、次の期間のサマリーデータを記憶するためにメモリ内に再構成される。
【0071】
本発明で説明するサマリーツリーは、マージツリー法とは異なる。マージツリーは、関連データにのみ適用することができ、時系列データには適用できない。サマリーツリー内の各々のノードは、サマリー計算の開始および終了時間を表す時間インターバルを記憶する。
図3に示すように、例えば、サマリーツリーノードは、ROOT、DAY、HOURおよびMINUTEである4つの異なるタイプに分割することができ、ROOTタイプは、ノードが30日の間サマリーデータを記憶していることを意味し、DAYタイプは、ノードが1日の間サマリーデータを記憶していることを意味し、HOURタイプは、ノードが1時間の間サマリーデータを記憶していることを意味し、MINUTEタイプは、ノードが1分の間サマリーデータを記憶していることを意味する。各々のノードの時間インターバルは固定されたインターバルであり、インターバルのサイズはノードのタイプに関係するので、各々のノードは、それによって表される時間インターバルの終了時間を記憶する必要はなく、それによって表される時間インターバルの開始時間を記憶するだけでよく、ノードが表す時間インターバルの終了時刻は、ノードの種類に応じて計算することができる。本発明は、サマリーツリーノードのタイプを具体的に定義しない。
【0072】
代替的な一実施形態において、各々のサマリーツリーの各々のノードは、親ノードの開始時時間から現在のノードの開始時間までのオフセットをそれぞれ記憶し、現在のノードによって表される時間インターバルの開始時間は、親ノードの開始時間および親ノードの開始時間から現在のノードの開始時間までのオフセットによって決定される。
【0073】
データがサマリーツリーから問い合わされるとき、概して、ルートノードから現在のノードの親ノードへ、次いで現在のノードへ横断する。本発明において、親ノードの開始時間から現在のノードの開始時間までのオフセットのみをサマリーツリーノードに記憶するので、さらに記憶スペースを節約することができる。
【0074】
代替的な一実施形態において、方法は、
車載ハードディスクから各々の時系列のサマリーデータを問い合わせるために、各々のサマリーツリーを車載ハードディスクに書き込むステップをさらに備え、
各々のサマリーツリーに対応するハードディスクファイルは、ファイルヘッダ部およびデータ部を備え、ファイルヘッダ部は、サマリーツリーに対応する時系列のキーおよびサマリーツリーの各々のノードに対応する時間インターバルを備え、データ部は、サマリーツリーの各々のノードによって記憶されるサマリーデータを備える。
【0075】
代替的な一実施形態において、方法は、
問い合わされる時間インターバルおよび問い合わされるサマリーデータに対応する時系列のキーを決定するステップと、
問い合わされるサマリーデータに対応する時系列のキーに従って車載ハードディスクから問い合わされるサマリーデータに対応するハードディスクファイルを検索するステップと、
ハードディスクファイルから問い合わされるサマリーデータに対応するサマリーツリーをロードするステップと、
問い合わされるサマリーデータに対応するサマリーツリーの親ノードから照合し、問い合わされる時間インターバルに対応する1つまたは複数のノードからサマリーデータを取得するために、問い合わされる時間インターバルに対応する1つまたは複数のノードが見つかるまで、問い合わされるサマリーデータに対応するサマリーツリーのノードのマルチレイヤをレイヤごとに横断するステップとを備える。
【0076】
本発明によれば、データが挿入される時、サマリーデータを事前計算し、サマリーデータと元のデータとを合わせてハードディスクに書き込むので、車載デバイスのハードディスクの書き込み時間を減らすことができる。さらに、ハードディスク上にファイルヘッダ部を設定することによってファイルスクリーニング機構が提供され、これは、サマリーデータの問い合わせ効率を大幅に改善し得る。
【0077】
代替的な一実施形態において、問い合わされる時間インターバルに対応する1つまたは複数のノードが検索され、
問い合わされる時間インターバルが1つのノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおけるノードのサマリーデータが取得され、ノードのレイヤにおけるノードのサマリーデータが問い合わせ結果として取り込まれ、
問い合わされる時間インターバルが複数のノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおける複数のノードのサマリーデータがそれぞれ取得され、複数のノードのサマリーデータがマージされ、マージされたサマリーデータが問い合わせ結果として取り込まれる。
【0078】
問い合わされる時間インターバルに対応するサマリーツリーの1つまたは複数のノードが検索される場合、サマリーツリーにおけるあるレベルのノードを横断する際に、問い合わされる時間インターバルがこのレベルのノードにおけるあるノードを備える場合、このノードのサマリーデータが問い合わせ結果として取り込まれ得ることが、上記から理解され、問い合わされる時間インターバルがこのレベルのノードのいくつかのノードを備える場合、これらのノードのサマリーデータをマージした後のデータが問い合わせ結果として取り込まれ得る。
【0079】
例えば、
図4に示すように、ある期間<2020-02-21 14:20:00,2020-02-21 14:21:01>において、あるキーの全データのうち最大値を問い合わせる必要がある場合、その問い合わせは<key,2020-02-21 14:20:00,2020-02-21 14:21:01,max>と表される。最初に、キーに対応するサマリーツリーがメモリから発見され、次いで、照会がルートノードから開始され、対応する時間インターバルが問い合わされ、その結果、問い合わせインターバルがサマリーツリーの第2のレベルのノードの第1のノードの時間インターバルによってカバーされることが見出される。したがって、クエリは、サマリーツリーの第2のレベルのノードの第1のノードから開始するようにシフトされ、次いで、問い合わせインターバルは、サマリーツリーの第3のレベルのノードの第1のノードの時間インターバルによってカバーされることが見出される。その後、問い合わせは、サマリーツリーの第3のレベルのノードの第1のノードから開始するようにシフトされ、次いで、問い合わせインターバルは、第4のレベルのノードの第1のノードおよび第2のノードによって表される時間インターバルのマージであることが見出される。したがって、問い合わせは、それぞれサマリーツリーの第4のレベルのノードの第1のノードおよび第2のノードに問い合わせるようにシフトされ、次いで、問い合わせ結果は、最大値を得るためにマージされる。
【0080】
代替的な一実施形態において、問い合わせされる時間インターバルに対応する1つまたは複数のノードが検索される場合、問い合わせされるサマリーデータに対応するサマリーツリーのノードのレイヤ内の上側境界ノードおよび下側境界ノードのサマリーデータが破棄され、問い合わせされる時間が、問い合わせされるサマリーデータに対応するサマリーツリーのノードのレイヤのノードを完全にカバーしない場合、問い合わせされるサマリーデータに対応するサマリーツリーのノードのレイヤの上側境界ノードおよび下側境界ノード以外のノードのサマリーデータが保持される。
【0081】
問い合わせされるインターバルに対応するサマリーツリーの1つまたは複数のノードが検索される場合、サマリーツリー内のノードのあるレベルに横断すると、このノードのレベルの中のあるノードが問い合わせ時間インターバルによって完全にカバーされていないかどうかが、上記から理解され、このレベルのノードの上側境界ノードと下側境界ノードのサマリーデータを破棄し、このレベルのノードの他のノードのサマリーデータを保持する必要がある。
【0082】
例えば、
図5に示すように、データの正確さを保証するために、問い合わせインターバルが1つのサマリーツリー内のノードのあるレベル内の1つのノードを完全にカバーしないとき、サマリーツリーのこのレベルのノードの上側および下側境界のノード(例えば、
図5の第4のレベルの最左端および最右端のノード)を破棄する必要があり、他のノードのサマリーデータを最終結果の計算に追加する(例えば、第4のレイヤの右から2つ離れた第2のノードと最後のノードとの間のノードのサマリーデータを最終結果の計算に追加する)。
【0083】
本発明によるサマリーツリーの各々のレイヤにおけるノードのタイプおよび数は異なり、表される時間インターバルも異なる。このサマリーツリーによって、例えば30日間の時系列のサマリーデータを記憶することができ、最小値、最大値、サム(sum)値およびカウント値を備える。時間インターバルの最小サポート粒度は微小であり、4Mの記憶スペースのみが必要とされる。サマリーツリーを使用することによって、時間インターバルに基づくサマリーデータ問い合わせの時間複雑性は、O(log60N)からO(log24N)に低減され得る。ハードディスクファイルにサマリーツリーが書き込まれると、ハードディスクファイルのファイルヘッダ部には、サマリーツリーに対応する時系列のキーと、サマリーツリーの各々のノードが表す時間インターバルとが確保される。これにより、問合せの際に、ファイル内容を解析することなく、ファイルヘッダ部から直接これらの情報を取得し、ファイルに保存されているサマリーツリーが問合せされる対象であるか否かを決定することができる。そうでない場合、ファイル内容(データ部)の解析をスキップし、問い合わせを高速化することが可能である。
【0084】
本発明の実施形態によれば、車載データの記憶システムが提供され、システムは、車載データベースのために使用され、システムは、
各々の処理される時系列データについて、処理される時系列データに従って、車載データベースに記憶されるノードおよびノードにおいて記憶されるパーティションを決定し、処理される時系列データを決定された記憶されるパーティション内の対応する時系列に書き込むデータ書き込みモジュールと、
各々の記憶されるパーティションに書き込まれた各々の時系列データをメモリ内の各々の対応するデータバケットにそれぞれ書き込み、メモリ内の各々のデータバケット内の時系列データをマージするデータマージモジュールとを備える。
【0085】
代替的な実施形態において、データ書き込みモジュールは、
各々の時系列データについて、
処理される時系列データのキーに対応するハッシュ値を決定するステップと、
ハッシュ値に従って、処理される時系列データに対応する記憶されるノード、記憶されるノード内の記憶されるパーティション、記憶されるパーティションの対応する時系列とを決定し、処理される時系列データを記憶されるパーティション内の対応する時系列に書き込むステップとに対して使用される。
【0086】
代替的な実施形態において、データマージモジュールは、
各々の記憶されるパーティションにおける各々の時系列に対して、現在の期間内に書き込まれた各々の時系列データを時系列に対応するメモリ内のデータバケットに書き込むステップと、
メモリ内の各々のデータバケットに対して、メモリ内のデータバケットに書き込まれた各々の時系列データをマージするステップとに対して使用される。
【0087】
代替的な一実施形態において、データ書き込みモジュールは、
各々の処理されるデータを処理される様々な時系列データ間のタイムスタンプ差およびインデックス値差に従ってそれぞれ圧縮するステップと、
圧縮された各々の処理される時系列データを対応するパーティションの対応する時系列にそれぞれ書き込むステップとに対して使用される。
【0088】
代替的な一実施形態において、データ書き込みモジュールは、
各々の記憶されるパーティションに対して、
第1の処理される時系列データを記憶されるパーティションに書き込むステップと、
記憶されるパーティションに書き込まれた第2の処理される時系列データおよび第1の処理される時系列データの間の第1のタイムスタンプ差および第1のインデックス値差を決定し、第1のタイムスタンプ差および第1のインデックス値差を圧縮された第2の時系列データとして記憶されるパーティションに記憶するステップと、
記憶されるパーティションに書き込まれた第3の処理される時系列データおよび第2の処理される時系列データの間の第2のタイムスタンプ差および第2のインデックス値差を決定し、第2のタイムスタンプ差および第1のタイムスタンプ差の間の第3のタイムスタンプ差ならびに第2のインデックス値差および第1のインデックス値差の間の第3のインデックス値差を決定し、第3のタイムスタンプ差および第3のインデックス値差を圧縮された第3の時系列データとして記憶されるパーティションに記憶するステップとに対してさらに使用される。
【0089】
代替的な実施形態において、各々のタイムスタンプ差および各々のインデックス値差は、異なる符号化方法によって表されるとともに記憶される。
【0090】
代替的な実施形態において、各々のタイムスタンプ差および各々のインデックス値差に対して、
対応する符号化方法は、タイムスタンプ差およびインデックス値差に従って決定され、
タイムスタンプ差またはインデックス値差が第1の値以上第2の値未満である場合、タイムスタンプ差またはインデックス値差は、第1の符号化方法によって表されるとともに記憶され、
タイムスタンプ差またはインデックス値差が第2の値以上第3の値未満である場合、タイムスタンプ差またはインデックス値差は、第2の符号化方法によって表されるとともに記憶される。
【0091】
代替的な実施形態において、記憶システムは、
車載ハードディスクに書き込まれるマージされた処理される時系列データを決定する第1のデータ書き込みモジュールであって、マージされた処理される時系列データは、メモリ内の各々のデータバケット内のマージされた時系列データを備え、マージされた処理される時系列データを車載ハードディスクに書き込む第1のデータ書き込みモジュールをさらに備える。
【0092】
代替的な実施形態において、第1のデータ書き込みモジュールは、
マージされた処理される時系列データをデータブロックに圧縮し、各々のデータブロックを車載ハードディスクに書き込むステップに対してさらに使用される。
【0093】
代替的な実施形態において、記憶システムは、
メモリ内の各々のデータバケット内のマージされた時系列データが車載ハードディスクに書き込まれた後、残りの時系列データおよび記憶される各々のパーティション内の各々の時系列の残りの時系列データを備える記録される時系列データを決定し、記録される時系列データのログ情報を記録し、ログ情報が車載ハードディスクに書き込まれたかどうかおよびログ情報の書き込み頻度を決定し、ログ情報が車載ハードディスクに書き込まれると決定される場合、ログ情報を書き込み頻度で車載ハードディスクに書き込むログモジュールをさらに備える。
【0094】
代替的な実施形態において、記憶システムは、
記憶時間に従って、車載ハードディスクにおける削除する時系列データを決定し、マージされた処理される時系列データを車載ハードディスクに書き込むために削除される時系列データを削除するデータ削除モジュールをさらに備える。
【0095】
代替的な実施形態において、記憶システムは、
記憶される各々のノードにおける各々の時系列のサマリーデータを決定し、
各々の時系列のサマリーデータをメモリから読み出すためにサマリーツリーに従って各々の時系列のサマリーデータをそれぞれ記憶するデータサマリーモジュールをさらに備え、メモリは、様々な時系列、メモリ内の様々なデータバケットおよび様々なサマリーツリーを備え、
各々のサマリーツリーは、ルートノードおよびトップからからボトムまでのマルチレイヤを備え、各々は、時間インターバル内のサマリーツリーに対応する時系列のサマリーデータを記憶する。
【0096】
本発明の代替的な実施形態において、データサマリーモジュールは、各々の時系列のサマリーツリーに対して、ノードのn番目のレイヤにおける各々のノードに対して、ノードによって表されるm番目の時間インターバルを決定し、m番目の時間インターバル内に計算された時系列内の時系列データのサマリーデータをノードに記憶するステップに対してさらに使用される。
【0097】
代替的な実施形態において、各々のサマリーツリー内の各々のノードは、親ノードの開始時間から現在のノードの開始時間までのオフセットをそれぞれ記憶し、現在のノードによって表される時間インターバルの開始時間は、親ノードの開始時間および親ノードの開始時間から現在のノードの開始時間までのオフセットによって決定される。
【0098】
代替的な実施形態において、記憶システムは、
車載ハードディスクから各々の時系列のサマリーデータを問い合わせるために、各々のサマリーツリーを車載ハードディスクに書き込む第2のデータ書き込みモジュールをさらに備え、
各々のサマリーツリーに対応するハードディスクファイルは、ファイルヘッダ部およびデータ部を備え、ファイルヘッダ部は、サマリーツリーに対応する時系列のキーおよびサマリーツリーの各々のノードに対応する時間インターバルを備え、データ部は、サマリーツリーの各々のノードによって記憶されるサマリーデータを備える。
【0099】
代替的な実施形態において、記憶システムは、
問い合わされる時間インターバルおよび問い合わされるサマリーデータに対応する時系列のキーを決定し、問い合わされるサマリーデータに対応する時系列のキーに従って車載ハードディスクから問い合わされるサマリーデータに対応するハードディスクファイルを検索し、問い合わされるサマリーデータに対応するサマリーツリーの親ノードから照合し、問い合わされる時間インターバルに対応する1つまたは複数のノードからサマリーデータを取得するために、問い合わされる時間インターバルに対応する1つまたは複数のノードが見つかるまで、問い合わされるサマリーデータに対応するサマリーツリーのノードのマルチレイヤをレイヤごとに横断するデータ問い合わせモジュールをさらに備える。
【0100】
代替的な実施形態において、データ問い合わせモジュールは、
問い合わされる時間インターバルが1つのノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおけるノードのサマリーデータを取得し、ノードのレイヤにおけるノードのサマリーデータが問い合わせ結果として取り込まれるステップと、
問い合わされる時間インターバルが複数のノードを備える場合、問い合わされるサマリーデータに対応するサマリーツリーにおけるノードのレイヤにおける複数のノードのサマリーデータをそれぞれ取得し、複数のノードのサマリーデータをマージするステップであって、マージされたサマリーデータが問い合わせ結果として取り込まれるステップとに対してさらに使用される。
【0101】
代替的な実施形態において、データ問い合わせモジュールは、
問い合わされる時間が、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおけるノードを完全にカバーしない場合、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおける上側境界ノードおよび下側境界ノードのサマリーデータを破棄し、問い合わされるサマリーデータに対応するサマリーツリーのノードのレイヤにおける上側境界ノードおよび下側境界ノード以外のノードのサマリーデータを保持するステップに対してさらに使用される。
【0102】
本開示はまた、サーバ、端末などを含む電子デバイスに関する。電子デバイスは、少なくとも1つのプロセッサと、少なくとも1つのプロセッサと通信的に接続されるメモリと、記憶媒体と通信的に接続される通信構成要素とを備え、通信構成要素は、プロセッサの制御下でデータを送受信し、メモリは、上述の実施形態における車載データの記憶方法を実施するために少なくとも1つのプロセッサによって実行され得る命令を記憶する。
【0103】
代替的な一実施形態において、不揮発性コンピュータ可読記憶媒体として、メモリは、不揮発性ソフトウェアプログラム、不揮発性コンピュータ実行可能プログラムおよびモジュールを記憶するように構成され得る。メモリに記憶された不揮発性ソフトウェアプログラム、命令、およびモジュールを実行することによって、プロセッサは、デバイスの様々な機能アプリケーションおよびデータ処理を実行し、すなわち、車載データ記憶方法を実現する。
【0104】
メモリは、記憶プログラム領域および記憶データ領域を含むことができ、記憶プログラム領域は、少なくとも1つの機能によって必要とされるオペレーティングシステムおよびアプリケーションプログラムを記憶することができ、記憶データ領域には、オプションリスト等が記憶されてもよい。加えて、メモリは、高速ランダムアクセスメモリおよび不揮発性メモリ、例えば、少なくとも1つのディスクメモリデバイス、フラッシュメモリデバイス、または他の不揮発性ソリッドステートメモリデバイスを含んでもよい。いくつかの実施形態では、メモリは、任意に、これらのリモートメモリがネットワークを通して外部デバイスに接続され得るように、プロセッサに対してリモートで提供されるメモリを含んでもよい。上述のネットワークの例は、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワークおよびこれらの組み合わせを含むが、これらに限定されない。
【0105】
メモリには1つまたは複数のモジュールが記憶されており、1つまたは複数のプロセッサによって実行されると、上述のいずれかの実施形態に係る車載データの記憶方法が実行される。
【0106】
上記の製品は、本出願の実施形態によって提供される車載データの記憶方法を実行することができ、方法を実行するための対応する機能モジュールおよび有益な効果を有することができる。この実施形態において詳細に説明されていない技術的詳細については、本出願の実施形態によって提供される車載データ記憶方法を参照されたい。
【0107】
本開示はまた、上述の車載データ記憶方法のいくつかまたはすべての実施形態を実行するためにコンピュータによって実行されるコンピュータ可読プログラムを記憶するためのコンピュータ可読記憶媒体に関する。
【0108】
すなわち、当業者は、上述の実施形態による方法におけるステップのすべてまたはいくつかの実装が、記憶媒体に記憶されたプログラムを通して関連ハードウェアに命令することによって完了されてもよく、デバイス(例えば、ワンチップ、チップ等である)またはプロセッサに本出願の様々な実施形態による方法のステップのすべてまたはいくつかを実行させるためのいくつかの命令を含むことを理解し得る。前述の記憶媒体は、Uディスク、モバイルハードディスク、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスクまたは光ディスクなどのプログラムコードを記憶し得る様々な媒体を備える。
【0109】
本明細書に提供される明細書では、いくつかの具体的な詳細が記載される。しかしながら、本発明の実施形態は、これらの具体的な詳細なしに実施され得ることが理解され得る。いくつかの例では、本明細書の理解を不明瞭にしないために、よく知られている方法、構造、および技法は詳細には示されていない。
【0110】
加えて、当業者は、本明細書に記載されるいくつかの実施形態は、他の実施形態に含まれるが他の特徴を含まないいくつかの特徴を含むが、異なる実施形態の特徴の組み合わせは、本発明の範囲内に入り、異なる実施形態を形成することを意味することを理解することができる。例えば、特許請求の範囲において、特許請求される実施形態のいずれかは、任意の組み合わせで使用され得る。
【0111】
本発明を例示的な実施形態を参照して説明したが、本発明の範囲から逸脱することなく、様々な変更を行うことができ、その要素を均等物に置き換えることができることを当業者は理解されたい。加えて、本発明の本質的な範囲から逸脱することなく、特定の条件または材料を本発明の教示に適合させるために多くの修正を行うことができる。したがって、本発明は、開示された特定の実施形態に限定されず、添付の特許請求の範囲内に入る全ての実施形態を含む。
【国際調査報告】