説明

地図データ配信システム及び地図データ更新方法

【課題】ナビゲーションシステムにおいて、地図データ更新時にナビゲーション機能の停止時間を少なくする。
【解決手段】地図データを配信するサーバと、地図データを受信する移動端末とを含む地図データ配信システムであって、サーバは、更新前後の地図データの差分データを領域ごとに記録し、移動端末から要求された領域の地図データの差分データを送信し、移動端末は、地図データを格納するデータベース及び更新された地図データを格納する更新済みデータ蓄積部を備え、受信した差分データによって更新済みデータを生成して更新済みデータ蓄積部に格納した後にデータベースに格納し、更新済みデータ蓄積部からデータベースに更新済みデータを格納している間に地図データが取得される場合に、取得される地図データが更新済みデータ蓄積部に格納されている場合には、更新済みデータ蓄積部から要求された地図データを取得する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動端末に格納された地図データを更新する技術に関する。
【背景技術】
【0002】
ナビゲーションシステムでは、サーバ側に格納された地図データの一部が更新された場合に、移動端末側で一部地域の変化分のみの地図データが更新されると、適切なナビゲーション機能を実行できない場合がある。例えば、更新対象の地域に新たに道路が建設された場合に、地図データが更新された地域に含まれる道路と、地図データが未更新であって、更新対象の地域と隣接する地域に含まれる道路とが接続されない可能性がある。このような問題を解決するために、変更された道路を辿り、既存の道路に接続するまでの地域まで更新地域を広げることによって道路の接続性を保証する技術が開示されている(特許文献1参照)。
【0003】
また、全国の地図データに変更情報を反映させると、膨大な処理時間を必要とし、更新処理の実行中は地図データを使用できなくなってしまうという問題がある。そこで、必要になった地域の地図データを必要になった時点で更新し、地図の変更部分のみを更新する技術が開示されている(特許文献2参照)。特許文献2に開示された技術を適用することによって、全国分の地図データの更新が完了しなくても、少なくとも必要な地域分の地図データの更新が完了していることが保証できるため、適切なナビゲーションを実行することが可能となる。
【特許文献1】特開2004−177245号公報
【特許文献2】特開2006−220524号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
特許文献1に開示された技術によれば、道路の接続性を維持可能な範囲まで更新地域を拡大することによって、地域を限定した更新であっても道路の接続性を保証することができる。しかし、拡大された更新地域は、必ず同時に更新されなければならないため、更新対象の領域が広範囲にわたってしまい、結果として多くの更新時間を必要とする。更新処理を実行している間は地図データを参照することができないため、地図データを長時間参照できなくなってしまうという問題がある。
【0005】
また、特許文献2に開示された技術によれば、更新が必要になった時点で地図データを更新するため、更新処理の実行中であっても地図データを参照することができる。しかし、更新単位となる地域ごとにファイルを作成しなければならないため、例えば、日本全国を数km単位で分割すると数万ものファイルを管理する必要があり、地図データの参照の際に大きな負荷がかかるという問題がある。
【0006】
そこで、特許文献2に開示された技術の問題点を解決する方法として、データベース管理システム(以下、「DBMS」)を利用する方法が一般的である。しかし、DBMSを用いて地図データ高速に参照するためには、ファイルのどの部分にどの地域のデータが記録されているかを検索する索引情報(インデックス)が必要である。そのため、更新対象の領域が広範囲にわたる場合には、インデックスの更新に多くの時間を必要とし、結果として地図データを長時間参照できなくなってしまう場合がある。
【0007】
本発明は、前述した問題点に鑑みてなされたものであり、DBMSを利用した地図データ配信システムにおいて、インデックスの生成に多くの処理時間を要する場合であっても地図データの利用を可能とすることを目的としている。
【課題を解決するための手段】
【0008】
本発明の代表的な一形態では、地図データを配信するデータ配信サーバと、前記地図データを受信する端末とを含む地図データ配信システムであって、前記データ配信サーバは、前記地図データが更新された場合に、更新前の前記地図データと更新後の前記地図データとの差分データが領域ごとに記録される差分データ記録部を備え、前記端末は、前記データ配信サーバから配信された地図データが格納されるデータベース、及び、前記更新された地図データが前記データベースに反映されるまで格納される更新済みデータ蓄積部を備え、前記データ配信サーバは、前記端末から更新された領域の地図データを要求された場合には、前記更新対象の領域の差分データを前記差分データ記録部から前記端末に送信し、前記端末は、前記データ配信サーバから配信された差分データを、前記データベースに格納された地図データに適用することによって、更新済みデータを生成し、前記生成された更新済みデータを前記更新済みデータ蓄積部に書き込み、前記更新済みデータ蓄積部に格納された更新済みデータを前記データベースに書き込み、前記更新済みデータ蓄積部に格納された更新済みデータを前記データベースに書き込んでいる間に前記地図データを利用するアプリケーションから地図データの取得要求を受け付けた場合には、前記取得要求された地図データが前記更新済みデータ蓄積部に格納されているか否かを判定し、前記取得要求された地図データが前記更新済みデータ蓄積部に格納されている場合には、前記更新済みデータ蓄積部から前記取得要求された地図データを取得し、前記取得要求された地図データが前記更新済みデータ蓄積部に格納されていない場合には、前記データベースから前記取得要求された地図データを取得する。
【発明の効果】
【0009】
本発明の一形態によれば、データベースに格納された地図データが更新中であっても、地図データを利用することができる。
【発明を実施するための最良の形態】
【0010】
(第1の実施の形態)
図1は、本発明の第1の実施の形態の地図データ配信システムのシステム構成図である。
【0011】
本発明の第1の実施の形態の地図データ配信システムは、地図配信サーバ11及び車載機12を備える。地図配信サーバ11及び車載機12は、ネットワーク120を介して接続される。地図配信サーバ11は、地図データを車載機12に配信する。車載機12は、配信された地図データを受信して格納する。格納された地図データを使用して地図情報を表示し、利用者からの指示に基づいて、ナビゲーション機能を実行する。
【0012】
地図配信サーバ11は、演算処理装置110、入出力装置111、記憶装置112及び通信装置113を含む。
【0013】
演算処理装置110は、CPU105及びメモリ106を含む。CPU105は、メモリ106に記憶されたプログラムを処理し、所定の処理を実行する。メモリ106は、CPU105によって実行されるプログラム及びプログラムの実行に必要なデータを記憶する。メモリ106は、揮発性メモリであってもよいし、不揮発性メモリであってもよい。なお、メモリ106に記憶されるプログラム及びデータについては、図2にて詳細を説明する。
【0014】
入出力装置111は、入力装置101及び出力装置102を含む。入力装置101は、地図配信サーバ11の管理に必要な情報などを入力する。例えば、キーボードなどである。出力装置102は、地図配信サーバ11の管理情報などを表示する。例えば、ディスプレイなどである。
【0015】
記憶装置112は、外部記憶装置103及び読取装置104を含む。外部記憶装置103は、地図配信サーバ11によって配信される地図データを格納する。外部記憶装置103は、例えば、磁気ディスク装置、フラッシュメモリなどである。読取装置104は、DVDなどの記憶媒体に格納された情報を読み出す装置である。なお、記憶装置に格納されたデータについては、図2にて詳細を説明する。
【0016】
通信装置113は、ネットワークIF107を含む。地図配信サーバ11は、ネットワークIF107を介して、ネットワーク120に接続される。
【0017】
CPU105、メモリ106、入力装置101、出力装置102、外部記憶装置103、読取装置104及びネットワークIF107は、内部バスを介して、互いに接続されている。
【0018】
ネットワーク120は、無線基地局121を含み、無線通信装置122を備えた車載機12によって接続される。
【0019】
車載機12は、演算処理装置131、通信装置132、現在位置計測装置133、記憶装置134及び入出力装置135を含む。
【0020】
演算処理装置131は、CPU141及びメモリ142を含む。CPU141は、メモリ142に記憶されたプログラムを処理し、所定の処理を実行する。メモリ142は、CPU141によって実行されるプログラム及びプログラムの実行に必要なデータを記憶する。メモリ142は、揮発性メモリであってもよいし、不揮発性メモリであってもよい。なお、メモリ142に記憶されるプログラム及びデータについては、図2にて詳細を説明する。
【0021】
通信装置132は、ネットワークIF143及び無線通信装置122を含む。ネットワークIF143は、無線通信装置122を介して、ネットワーク120に接続される。
【0022】
現在位置計測装置133は、車載機12の現在位置を計測する装置である。具体的には、GPS(Global Positioning System)などによって、車載機12の現在位置が計測される。
【0023】
記憶装置134は、外部記憶装置146及び読取装置147を含む。外部記憶装置146は、地図データを格納する。外部記憶装置146は、例えば、磁気ディスク装置などである。読取装置147は、DVDなどの記憶媒体に格納された情報を読み出す装置である。なお、記憶装置に格納されたデータについては、図2にて詳細を説明する。
【0024】
入出力装置135は、入力装置144及び出力装置145を含む。入力装置144は、ナビゲーションシステムの起動など、車載機12を操作し、また、必要な情報を入力する。入力装置144は、例えば、タッチパネルなどである。出力装置145は、現在位置又は目的地周辺の地図情報などを表示する。出力装置102は、例えば、LCDディスプレイなどである。また、音声によって情報を出力してもよい。
【0025】
CPU141、メモリ142、入力装置144、出力装置145、外部記憶装置146、読取装置147、ネットワークIF143及び現在位置計測装置133は、内部バスを介して、互いに接続されている。
【0026】
図2は、本発明の第1の実施の形態の地図データ配信システムに含まれるプログラム及びデータを説明する図である。
【0027】
地図配信サーバ11の演算処理装置110は、差分データ生成部216及び配信データ選別部214を含む。差分データ生成部216及び配信データ選別部214は、演算処理装置110に含まれるメモリ106に記憶される。差分データ生成部216及び配信データ選別部214は、CPU105によって実行されるプログラムである。
【0028】
また、地図配信サーバ11の記憶装置112は、差分データ記録部215を含む。差分データ記録部215は、記憶装置112の外部記憶装置103に格納される。
【0029】
差分データ生成部216は、CPU105に処理されることによって、最新の地図データと、更新前の地図データとの差分データを抽出し、差分データ記録部215に蓄積する。蓄積されるデータは、例えば、新しい道路の追加、制限速度の変更、又は新規店舗などの変更情報である。また、蓄積された差分データは、CPU105に配信データ選別部214が処理されることによって、車載機12からの要求に応じて選別及び配信される。なお、差分データ記録部215は、初期状態の地図データを含むので、差分データ記録部215に格納された情報のみを用いて差分データを生成することができる。
【0030】
地図配信サーバ11は、通信装置113にサーバ通信部213を含む。前述の蓄積された差分データは、サーバ通信部213を介し、ネットワークを経由して車載機12に配信される。
【0031】
車載機12は、通信装置132に端末通信部212を含む。車載機12は、端末通信部212を介して、地図配信サーバ11から配信された差分データを受信し、外部記憶装置146に格納する。
【0032】
車載機12の演算処理装置131は、更新波及範囲判定部203、地図データ検索部204、アプリケーション実行部205、差分データ取得部206、更新済みデータ生成部207、アプリケーション監視部208、更新済みデータ検索部209及び更新済みデータ転送部211を含む。更新波及範囲判定部203、地図データ検索部204、アプリケーション実行部205、差分データ取得部206、更新済みデータ生成部207、アプリケーション監視部208、更新済みデータ検索部209及び更新済みデータ転送部211は、演算処理装置131のメモリ142に記憶されるプログラムである。
【0033】
車載機12の記憶装置134は、データベース202及び更新済みデータ蓄積部210を含む。
【0034】
データベース202は、地図データを格納する。データベース202は、記憶装置134の外部記憶装置146に格納される。
【0035】
更新済みデータ蓄積部210は、データベース202に格納された地図データに地図配信サーバ11から配信された差分データを適用することによって生成された更新済みデータを一時的に格納する。具体的には、生成された更新済みデータがデータベース202に格納されるまで、更新済みデータ蓄積部210に格納される。更新済みデータ蓄積部210は、図示するように外部記憶装置146に格納されてもよいが、生成される更新済みデータが小さい場合又は演算処理装置131のメモリ142の容量が大きい場合には、メモリ142に格納されてもよい。
【0036】
更新波及範囲判定部203は、配信された差分データによって更新される範囲である波及範囲を判定する。地図データ検索部204は、利用者の指示に基づいて、地図データを検索する。アプリケーション実行部205は、利用者の指示に基づいて、要求された地図データを表示したり、経路誘導などのナビゲーション機能を実行したりする。差分データ取得部206は、地図配信サーバ11から差分データを取得する。
【0037】
また、更新済みデータ生成部207、アプリケーション監視部208、更新済みデータ検索部209、更新済みデータ蓄積部210及び更新済みデータ転送部211は、更新済みデータ管理部201を構成する。更新済みデータ管理部201は、地図配信サーバ11から配信された差分データに基づいて、データベース202に格納された地図データを更新する。
【0038】
更新済みデータ生成部207は、データベース202に格納された地図データ及び配信された差分データに基づいて、更新済み地図データを生成する。アプリケーション監視部208は、アプリケーションの実行状態を監視する。更新済みデータ検索部209は、要求された更新済み地図データを検索する。更新済みデータ転送部211は、更新済み地図データをデータベース202に格納する。
【0039】
地図データに含まれる道路データは、道路に対応するリンクと、交差点に対応するノードとを含むネットワークのデータ構造によって格納されており、リンク及びノードごとに識別子が付与されている。
【0040】
また、地図データの領域は、例えば矩形領域に分割され、各領域に対して識別子が付与されている。本発明の第1の実施の形態の地図データ配信システムでは、領域ごとに地図データを更新することができる。以下、分割された領域をエリアとし、各領域の識別子をエリアIDとする。なお、エリアは矩形でなくともよく、多角形又は円形などであってもよい。さらに、地図配信サーバ11からエリアの変更情報を受信することにより、運用開始後であってもエリア形状を変更できる。
【0041】
本発明の第1の実施の形態では、所定の大きさに地図を分割することによって、各用途に適した単位で地図を更新することができる。例えば、現在地を含むエリアのみの更新、又は、経路を含むエリアのみの更新などを実行することができる。
【0042】
図3は、本発明の第1の実施の形態の地図データを格納するエリアデータテーブル300を示す図である。エリアデータテーブル300は、エリアごとに道路及び交差点のデータを格納する。エリアデータテーブル300は、データベース202に格納されている。また、地図配信サーバ11に格納されている地図データについても同じテーブル構造を含む。
【0043】
エリアデータテーブル300は、エリアID301、リンクデータカラム302及びノードデータカラム303を含む。エリアID301は、エリアを識別する識別子を格納する。リンクデータカラム302は、道路に対応するリンクデータを格納する。ノードデータカラム303は、交差点又は道路種別の変化点に対応するノードデータを格納する。
【0044】
リンクデータカラム302に格納された情報は、一つ以上のリンクデータ305の情報がバイナリ形式で格納されている。リンクデータ305は、リンクID、道路種別、道路の幅員、形状点数、形状点データ、始点ノードID、及び終点ノードIDなどの情報を含む。一つのカラムに複数のデータをまとめて作成されたバイナリデータを記録することによって、同時にアクセスされる可能性の高いデータを同時に読み出すことができる。
【0045】
リンクIDは、リンクを識別する識別子が格納される。道路種別は、高速道路などの道路の種別が格納される。道路の幅員は、道路の幅が格納される。形状点数、形状点データ、始点ノードID及び終点ノードIDは、リンクの形状及び接続状況を特定する情報が格納される。
【0046】
また、ノードデータカラム303に格納された情報は、リンクデータカラム302と同様に、ノードデータ304がバイナリ形式で格納されている。ノードデータ304は、ノードID、座標x、座標y、接続リンク数、及び接続先リンクIDを含む。
【0047】
ノードIDは、ノードを特定する識別子が格納される。座標x及び座標yは、ノードの位置の座標が格納される。接続リンク数及び接続先リンクIDは、ノードに接続されているリンクの情報が格納される。
【0048】
なお、複数の道路(リンク)に共通のノードIDが含まれている場合には、当該複数の道路が接続されていることを示す。そして、道路の接続状況に基づいて、現在地から目的地までの経路をダイクストラ法などの公知の経路探索手法によって探索することができる。
【0049】
車載機12は、入出力装置135を介して利用者から指定されたエリアの地図更新を要求されると、ネットワーク120を介して、指定エリアを最新の情報に更新するために必要な差分データを地図配信サーバ11に要求する。以下、更新対象の地図データに対応するエリアを更新対象エリアとする。車載機12は、地図配信サーバ11よって取得された差分データを読み出し、取得された差分データに含まれる道路又は交差点の更新情報に基づいて、データベース202に格納された地図データを更新する。
【0050】
また、エリア単位で地図データを更新した場合に、利用者が指定した範囲外であっても実際に接続されている道路が地図データにおいても接続されていなければ、車載機12がナビゲーション機能を発揮することができない。また、変更前及び変更後の同じ道路の地図データが二重に登録されていてはならない。さらに、更新対象エリア外まで接続される道路は、少なくとも更新対象エリア以外の道路まで接続されるように地図データが更新されていることが望ましい。
【0051】
そこで、以上の課題を解決するために、地図配信サーバ11は、エリア間の道路の接続が切断されないように差分データを配信する。
【0052】
本発明の第1の実施の形態の地図データ配信システムでは、定期的に地図データが更新され、更新される地図データは以下の二つの条件を満たす。第一の条件としては、現実に変更されていない道路のリンクID及び交差点のノードIDは、各バージョン間で同じであることである。第一の条件によって、道路データの差分を適切に取得することができる。第二の条件としては、すべてのエリアの地図データにおいて、道路が他のエリアに接続されていることである。したがって、一つのエリアの地図データで経路探索を実行すれば、少なくとも一つは経路が存在する。また、定期的に更新される地図データに付与された通し番号をバージョン番号とする。なお、バージョン番号が大きいものほど後に更新された地図データとする。
【0053】
ここで、地図データをエリアごとに更新する手順について、図4Aから図4Cを参照しながら、概要を説明する。
【0054】
図4Aは、本発明の第1の実施の形態のバージョン1の地図データを示す図である。バージョン1の地図データは、更新前の地図データとする。
【0055】
図4Bは、本発明の第1の実施の形態のバージョン2の地図データを示す図である。バージョン2の地図データは、最新の地図データとする。
【0056】
バージョン1の地図データとバージョン2の地図データを比較すると、バージョン1の地図に含まれるリンク401が削除され、リンク402及びリンク403が追加されている。したがって、差分データは、リンク401の削除、リンク402の追加及びリンク403の追加となる。
【0057】
ここで、差分データの中から、追加、削除又は変更されているリンク同士が接続されているデータを収集し、地図更新データとする。例えば、第一の地図更新データは、リンク403の追加である。また、第二の地図更新データは、リンク401の削除及びリンク402の追加である。
【0058】
本発明の第1の実施の形態では、更新対象エリアの地図データを更新する場合には、更新前の地図データに対し、更新対象エリアに含まれる地図更新データを適用すれば、道路の接続性を保証することができる。
【0059】
ここで、現時点の車載機12に格納されたデータベースには、バージョン1の地図データが格納されているものとする。また、地図配信サーバ11には、最新の地図データであるバージョン2の地図データが格納されているものとする。このとき、エリアID=4のエリアを更新対象エリアとする場合について説明する。
【0060】
図4Cは、本発明の第1の実施の形態の一部のエリアが更新された後の状態の地図データを示す図である。
【0061】
第1の地図更新データについては、リンク403がエリアID=4のエリアに含まれないため、車載機12に格納された地図データに更新を反映させる必要がない。一方、第2の地図更新データについては、エリアID=4のエリアに含まれるリンクが更新されるため、車載機12に格納されたデータに第2の地図更新データを反映させる。このとき、第2の地図更新データを含むエリアID=2及びエリアID=3のエリアについても更新される。
【0062】
このように、車載機12に格納された地図データが地図更新データに基づいて更新されるため、各バージョンのエリアごとに、適用された地図更新データ及び同時に更新されるエリアが地図配信サーバ11に保持されている。各エリアのバージョンごとの更新情報の一例を図5に示す。
【0063】
図5は、本発明の第1の実施の形態のエリア単位地図更新データ管理テーブル500を示す図である。エリア単位地図更新データ管理テーブル500は、各エリアのバージョンごとにレコードが作成される。エリア単位地図更新データ管理テーブル500は、差分データ生成部216に含まれてもよいし、差分データ記録部215に含まれてもよい。
【0064】
エリア単位地図更新データ管理テーブル500は、エリアID501、バージョン502、必要地図更新データIDリスト503、及び更新対象エリアIDリスト504を含む。エリアID501は、エリアの識別子である。バージョン502は、エリアのバージョンを示す通し番号である。
【0065】
必要地図更新データIDリスト503は、エリアID501及びバージョン502によって識別されるエリアの地図データに適用されていなければならない地図更新データの識別子を格納する。更新対象エリアIDリスト504は、エリアID501及びバージョン502によって識別されるエリアの地図データを更新する場合に、同時に更新されるエリアの識別子を格納する。
【0066】
車載機12は、特定のエリアを最新情報に更新する場合には、まず、保持している地図データのバージョン情報と更新対象のエリアIDとを地図配信サーバ11に送信する。地図配信サーバ11は、更新対象エリアID及びバージョン情報を受信すると、エリア単位地図更新データ管理テーブル500を参照し、車載機12に格納された地図データに適用済みの地図更新データの一覧(適用済み更新データリスト)を作成する。
【0067】
次に、地図配信サーバ11は、受信した更新要求対象エリアIDに関連づけられた地図更新データのリストを取得する。そして、更新要求対象エリアIDに関連づけられた地図更新データのリストから、適用済み更新データリストに含まれる地図更新データを除外することによって、更新要求対象エリアを最新の状態に更新するために必要な地図更新データの一覧を作成することができる。このようにして、車載機12から指定されたエリアを更新するために必要な地図更新データのみを取得することを可能とし、ダウンロードに必要な時間を削減することができる。
【0068】
以下、本発明の第1の実施の形態において、車載機12に格納された地図データを更新する手順について説明する。
【0069】
図6は、本発明の第1の実施の形態の車載機12に格納された地図データを更新する手順の概要を示す図である。地図データの更新処理は、車載機12の入力装置144が利用者によって操作された場合などに実行される。
【0070】
まず、車載機12のCPU141は、アプリケーション実行部205の処理によって、利用者に指定された更新対象エリアの差分データを地図配信サーバ11に要求する。配信された差分データを受信すると、更新済みデータを生成する更新済みデータ生成処理610を実行する。生成された更新済みデータは、更新済みデータ蓄積部210に格納される。
【0071】
車載機12のCPU141は、すべての更新済みデータの生成が完了すると、生成された更新済みデータをデータベース202に反映するための更新済みデータ転送処理611を実行する。更新済みデータ転送処理611は、すべての更新済みデータが更新済みデータ蓄積部210からデータベース202に転送及び格納されるまで繰り返し実行される。そして、更新されたデータが大量の場合には、更新済みデータ転送処理611が完了するまでには多くの時間を必要とする。
【0072】
本発明の第1の実施の形態では、更新済みデータ転送処理611が実行されている間であっても、更新済みデータ管理部201によって、更新済の地図データを利用してナビゲーション機能を実行することができる。
【0073】
車載機12のCPU141は、地図データ要求615を受け付けると、更新済みデータ管理部201による更新済みデータ検索処理612によって、更新済みデータ蓄積部210に格納された更新済みデータを検索する。要求された地図データが更新済みデータ蓄積部210に格納されている場合には、更新済みデータ蓄積部210から要求された地図データを取得する。また、要求された地図データの一部又は全部が更新済みデータ蓄積部210に格納されていない場合には、データベース202から地図データを検索する。そして、データベース202、更新済みデータ蓄積部210、又は、データベース202及び更新済みデータ蓄積部210から取得された地図データを結合して地図データとし、道路の接続性などを保証した状態で地図データ返答614を送信する。
【0074】
図7は、本発明の第1の実施の形態の更新済みデータ蓄積部210のデータ構造を示す図である。
【0075】
更新済みデータ蓄積部210は、更新済みデータ検索用インデックス701及び更新済みデータ702を含む。
【0076】
更新済みデータ検索用インデックス701は、更新済みデータ蓄積部210に格納された更新済みデータ702の索引情報を格納する。更新済みデータ検索用インデックス701は、更新済みデータ702の識別子と更新済みデータ702が格納された領域のアドレスとの対応などを含む、更新済みデータを高速に取得可能な構造となっている。そして、公知の二分木探索又は線形探索などの検索アルゴリズムによって検索することができる。具体的には、更新済みデータ検索用インデックス701には、更新済みデータの識別子703及び更新済みデータのアドレス704が含まれる。更新済みデータの識別子703は、例えば、更新対象エリアのエリアIDである。
【0077】
更新済みデータ702は、データベース202に格納された地図データに対し、地図配信サーバ11から配信された差分データが適用された地図データである。
【0078】
更新済みデータは、更新された領域のみを対象とするデータであるため、インデックスの格納に多くの容量を必要としない。したがって、インデックスの作成及び更新データの検索を高速に実行することができる。なお、更新済みデータは、データベース202にすべてのデータが反映されると消去される。
【0079】
図8は、本発明の第1の実施の形態の車載機12に格納された地図データの更新処理の全体の手順を示すフローチャートである。地図データの更新処理は、車載機12のCPU141によって、メモリ142に記憶された各種プログラムが処理されることによって実行される。
【0080】
車載機12のCPU141は、まず、差分データ取得処理801を実行する。差分データ取得処理801は、差分データ取得部206が処理されることによって実行される。
【0081】
車載機12のCPU141は、更新済みデータ生成部207を処理することによって、更新済みデータ生成処理610を実行する。更新済みデータ生成処理610は、差分データ取得処理801によって取得された差分データと、車載機12に備えられたデータベース202に格納された地図データを用いて更新済みデータを作成する処理である。
【0082】
車載機12のCPU141は、更新済みデータ生成処理610が完了すると、更新準備完了通知処理803を実行する。更新準備完了通知処理803は、アプリケーションなどの地図データを使用するモジュールに、更新準備が完了した旨を通知する処理である。
【0083】
車載機12のCPU141は、更新準備完了通知処理803が実行されると、検索対象の地図データを更新済みデータに切り替える。そして、更新済みデータをデータベースに反映させる更新済みデータ転送処理611を他の処理と並行して実行する。
【0084】
車載機12のCPU141は、更新済みデータ転送処理611が終了すると、地図データを使用するモジュールに、更新完了通知処理805更新が完了した旨を通知し、地図更新を完了する。
【0085】
図9は、本発明の第1の実施の形態の地図データ更新処理の各処理におけるデータの更新状況を示す図である。
【0086】
本発明の第1の実施の形態では、地図データ更新処理の過程において使用される領域として、一時記憶領域、更新済みデータが格納される更新済みデータ蓄積部210、及び、更新された地図データが最終的に格納されるデータベース202が使用される。なお、一時記憶領域は、メモリ142によって提供される記憶領域以外に、外部記憶装置146などによって提供される記憶領域であってもよい。また、一時記憶領域への地図データは、ファイルとして格納されてもよいし、データベースのテーブルとして格納されてもよい。
【0087】
車載機12のCPU141は、まず、差分データ取得処理801を実行することによって、地図配信サーバ11から地図更新データを取得する。図9の901は、地図配信サーバ11からネットワーク120を介して地図更新データを取得し、一時記憶領域に記憶した状態を示している。以下、差分データ取得処理について、差分データのデータ構造とともに説明する。
【0088】
図10は、本発明の第1の実施の形態の差分データのデータ構造の一例を示す図である。
【0089】
差分データは、更新波及エリアIDリスト1001と各エリアのエリア差分データ1002を含む。エリア差分データ1002は、エリアID及び当該エリアの差分データが格納されたアドレスを含む。このように構成することによって、エリアごとに差分データを抽出することができる。
【0090】
各エリアのエリア差分データは、エリアID1003と当該エリアに対応する差分データ1004を含む。差分データ1004には、対象領域に対する地図データの追加、削除及び変更などの情報が含まれる。そして、差分データ1004に格納された情報に基づいて、地図データを更新することによって、地図データを最新の状態にすることができる。
【0091】
ここで、地図更新データ1013、1014及び1015の各エリアの差分データを抽出する例を、図10を参照しながら説明する。
【0092】
差分データ取得処理では、更新波及エリアIDリスト1010から波及範囲となるエリアの差分データ格納領域を一時記憶領域に割り当てる。そして、割り当てられた差分データ格納領域に、各エリアの差分データを格納する。
【0093】
具体的には、車載機12のCPU141は、まず、地図更新データ1013のエリア1差分データ1011を格納するために、エリア1の差分データ格納領域1020を作成する。そして、地図更新データ1013に含まれるエリア1差分データ1011をエリア1の差分データ格納領域1020に記録する。エリア2など他の更新波及エリアの差分データも同様に記録する。そして、地図更新データ1014及び1015に対しても更新波及エリアに対して差分データを取得し、エリアごとの差分データを対応する差分データ格納領域に格納する。
【0094】
車載機12のCPU141は、差分データ取得処理801が終了し、車載機12の一時記憶領域に更新対象エリアの差分データを格納すると、差分データを反映させた更新済みデータを作成する。図9の902は、更新対象のデータをデータベースから取得した時点の一時記憶領域の状態を示している。また、図9の903は、データベースから取得された更新対象データに差分データを適用した後の一時記憶領域の状態を示している。以下、更新済みデータ生成処理310の手順について、前後の処理とあわせて説明する。
【0095】
図11は、本発明の第1の実施の形態の更新済みデータ生成処理610の手順を示す図である。
【0096】
車載機12のCPU141は、利用者による操作によって、アプリケーション実行部205から地図データの更新要求を受け付けると、差分データ取得部206の処理を実行する。車載機12のCPU141は、更新要求に含まれる指定された更新対象の地域などの情報に基づいて、端末通信部212を介して地図配信サーバ11に必要な差分データを要求する。
【0097】
車載機12のCPU141は、地図配信サーバ11から差分データを受信すると、更新済みデータ生成部207を実行することによって、データベース202に格納されたデータに受信した差分データを反映させることによって、更新済みデータを生成する。そして、生成された更新済みデータは、更新済みデータ蓄積部210に格納される。更新が要求された地域のすべての更新済みデータの生成が完了すると、更新済みデータ生成処理310を終了する。
【0098】
また、車載機12のCPU141は、更新済みデータ生成処理310が終了する直前に、常駐しているアプリケーション監視部208の処理によって、バッファに格納されたデータを破棄するバッファ破棄信号を動作中のアプリケーションに対して送信する。すべての更新済みデータの生成が完了した場合には、更新前のデータではなく、更新後のデータを使用するためである。
【0099】
車載機12のCPU141は、アプリケーション実行部205の処理において、バッファ破棄信号を受信すると、実行中のアプリケーションが保持している地図データを破棄する。その後、更新波及範囲判定部203の処理を介して必要な地図データを取得する。必要な地図データを取得するためのデータの流れについては、図14及び図15にて後述する。
【0100】
車載機12のCPU141は、更新済みデータ生成処理610が終了すると、更新済みデータ転送部211を実行し、更新済みデータ転送処理611を開始する。更新済みデータ転送処理611は、作成された更新済みデータをデータベースに反映させる。図9の最下段に、更新済みデータを更新済みデータ蓄積部210からデータベース202に反映させるデータの流れを示している。また、更新済みデータ転送処理611の実行中にアプリケーションによって地図データが要求された場合には、更新済みデータ蓄積部210に記録されている更新済みデータを応答する。以下、更新済みデータ転送処理611の手順について説明する。
【0101】
図12は、本発明の第1の実施の形態の更新済みデータ転送処理611のデータフローを示す図である。更新済みデータ転送処理611は、車載機12のCPU141によって更新済みデータ転送部211が処理されることによって実行される。
【0102】
車載機12のCPU141は、アプリケーション実行部205によって実行されているアプリケーションの処理負荷に基づいて、処理負荷が小さい場合に、データベース202に更新済みデータを転送し、データベース202に更新済みデータを反映させる。
【0103】
更新済みデータ転送処理611は、アプリケーションの実行状況に応じて更新済みデータがすべてデータベース202に転送されるまで実行される。なお、アプリケーションの実行状況は、アプリケーション監視部208によって取得することができる。
【0104】
車載機12のCPU141は、定期的に更新済みデータを転送するなどの公知のタスクスケジューリング方式を利用することによって、アプリケーション及び更新済みデータ転送処理611を並行して実行する。
【0105】
図13は、本発明の第1の実施の形態の更新済みデータ転送処理611の手順を示す図である。
【0106】
車載機12のCPU141は、まず、更新済みデータ転送処理611と並行して実行されているアプリケーションの動作状況を取得するアプリケーション監視処理を実行する(ステップ1301)。アプリケーション監視処理では、公知の技術を利用してアプリケーションによる処理負荷が高いか否かを判定する。
【0107】
また、車載機12のCPU141は、アプリケーション監視処理において、地図データの取得要求についても監視し、アプリケーションによって地図データの取得要求が送信されたか否かを判定する(ステップ1303)。アプリケーションによって地図データの取得要求が送信された場合には(ステップ1303の結果が「y」)、地図データ検索部204を処理することによって、アプリケーション要求データ検索処理を実行し(ステップ1305)、さらに、要求された地図データが取得されるまで待機する。
【0108】
車載機12のCPU141は、アプリケーション要求データ検索処理において、更新波及範囲に含まれる地図データが要求された場合には、更新済みデータ検索部209を実行することによって更新済みデータを取得する。また、更新波及範囲以外の地図データが要求された場合には、データベース202から地図データを取得する。アプリケーション要求データ検索処理の詳細については、図16にて後述する。
【0109】
また、車載機12のCPU141は、アプリケーションによって地図データの取得要求が送信されていない場合には(ステップ1303の結果が「n」)、アプリケーションによる処理の負荷を所定の閾値と比較し、負荷が大きいか否かを判定する(ステップ1304)。アプリケーションによる負荷が大きい場合には(ステップ1304の結果が「y」)、データの更新処理を実行せずにアプリケーション監視処理に戻る(ステップ1301)。
【0110】
車載機12のCPU141は、アプリケーションによる処理の負荷が大きくない場合には(ステップ1304の結果が「n」)、更新済みデータ蓄積部210に格納された更新済みデータを転送し(ステップ1306A)、さらに、データベース202に反映させる(ステップ1306B)。
【0111】
最後に、車載機12のCPU141は、すべての更新済みデータをデータベース202に反映したか否かを判定する(ステップ1307)。更新済みデータがデータベース202にすべて反映されていない場合には(ステップ1307の結果が「n」)、アプリケーション監視処理に戻る。一方、更新済みデータがデータベース202にすべて反映された場合には(ステップ1307の結果が「y」)、本処理を終了する。
【0112】
図14は、本発明の第1の実施の形態のアプリケーションから地図データを要求する処理のデータの流れを説明する図である。
【0113】
車載機12のCPU141は、アプリケーションから地図データ要求1400が送信されると、地図データ検索部204を実行する。地図データ要求1400には、要求された地図データの領域の指定などが含まれる。
【0114】
車載機12のCPU141は、地図データ検索部204が実行されると、地図データ要求1400から取得対象の地域のエリアIDを抽出する。そして、更新波及範囲判定部203を実行し、抽出されたエリアIDの地図データが更新対象であるか否かを判定する。
【0115】
車載機12のCPU141は、抽出されたエリアIDの地図データが更新対象でない場合には、データベース202から地図データを取得する。一方、抽出されたエリアIDの地図データが更新対象である場合には、更新済みデータ検索部209を実行し、更新済みデータ蓄積部210を検索し、要求された地図データを取得する。このとき、更新済みデータがデータベース202に格納済みである場合には、データベースからデータを取得してもよい。
【0116】
図15は、本発明の第1の実施の形態の要求された地図データを取得し、アプリケーションに送信する処理のデータの流れを説明する図である。
【0117】
車載機12のCPU141は、更新対象でない地図データが要求された場合には、データベース202から非更新対象地図データ1501を更新波及範囲判定部203の処理に送信する。一方、更新対象の地図データが要求された場合には、更新済みデータ蓄積部210から更新済みデータ1500が送信される。更新済みデータ1500は、更新済みデータ検索部209の処理を経由して更新波及範囲判定部203の処理に送信される。
【0118】
また、車載機12のCPU141は、取得された更新済みデータを更新済みデータ転送部211の処理に送信してもよい。更新済みデータ転送部211の処理に更新済みデータを送信し、データベース202に反映させることによって、更新済みデータ蓄積部210からの地図データの読み出し回数を削減することができる。
【0119】
車載機12のCPU141は、更新波及範囲判定部203の処理において、受信した非更新対象地図データと更新済みデータとを結合し、地図データ検索部204の処理に送信する。車載機12のCPU141は、アプリケーションに結合された地図データ1502を送信する。
【0120】
図16は、本発明の第1の実施の形態のアプリケーション要求データ検索処理を説明する図である。
【0121】
車載機12のCPU141は、実行中のアプリケーションから地図データの要求を受け付けると、更新波及範囲判定部203を実行することによって、要求された地図データが更新波及範囲に含まれるか否かを判定する。要求された地図データが更新波及範囲に含まれるか否かは、更新済みデータ蓄積部210に含まれる更新済みデータのインデックス701を参照して判定する。具体的には、更新済みデータ検索用インデックス703に更新対象エリアのエリアIDに対応する更新済みデータのアドレス704が存在すれば、要求された地図データが更新波及範囲に含まれると判定される。なお、図16では、前述のように、更新済みデータ検索用インデックス703はエリアIDに対応する。
【0122】
また、更新済みデータ転送処理によってデータベース202に転送されたデータは、インデックス1601のようにインデックスに記録されているアドレス値を“0000”に変更される。このように処理することによって、更新波及範囲判定部203の処理において、要求されたエリアの更新済みデータがデータベースに反映されているか否かを判定することができる。
【0123】
図17は、本発明の第1の実施の形態の地図データ更新時の処理を説明する図である。
【0124】
車載機12は、利用者からの地図データの更新指示を受け付けると、更新処理を開始する(1701)。更新処理が開始されるまでは、通常のナビゲーション処理が実行されている。
【0125】
車載機12は、地図配信サーバ11から差分データを受信し、更新済みデータを作成する(1705)。このとき、更新済みデータの生成が完了するまでは、データの整合性を保証できないため、更新前のデータを使用してナビゲーション処理が実行される(1702)。
【0126】
車載機12は、更新済みデータの生成が完了すると、更新が完了した旨がアプリケーションなどに通知され、更新済みデータ蓄積部210に格納された更新済みデータをデータベース202に転送し、インデックスの更新処理が開始される(1706)。このとき、車載機12は、更新波及範囲判定部203の処理によって、データベースに格納された地図データと、更新済みデータ蓄積部210に格納された更新済みデータを使用し、更新後のデータを使用してナビゲーション処理が実行される(1703)。
【0127】
車載機12は、インデックス更新の処理が完了し、すべての更新済みデータがデータベースに転送されると、データベースに格納された地図データが更新後のデータとなる。その後、車載機12は、更新後のデータを使用して通常のナビゲーション処理を実行する(1704)。
【0128】
以上のように、本発明によれば、地図データ及び当該地図データのインデックスを更新している間であってもナビゲーション機能を停止する必要がない。
【0129】
図18は、本発明の第1の実施の形態の画面遷移と処理手順との対応を説明する図である。
【0130】
車載機12は、利用者からの地図データの更新指示を受け付けると、差分データ取得処理801が実行される。このとき、車載機12の出力装置145には、差分データの取得状況が表示される(1801)。
【0131】
車載機12は、更新に必要な差分データの取得が完了すると、更新済みデータ生成処理610が実行される。このとき、車載機12の出力装置145には、更新データが作成されている旨が表示される(1802)。なお、利用者には、更新データを生成するために何らかの処理が実行されている旨が表示されていればよく、差分データのダウンロードが完了したことを利用者が認識できればよい。
【0132】
車載機12は、更新済みデータの生成が完了すると、最新のデータを使用することが可能となる。そこで、アプリケーションで保持されている更新前のデータを破棄し、更新後のデータを取得する更新準備完了通知処理803を実行する。このとき、車載機12の出力装置145には、更新後の地図データに切り替られる旨が表示される(1803)。本発明の第1の実施の形態では、更新準備完了通知処理803において、アプリケーションで保持されている更新前のデータを破棄している間に限り、ナビゲーション機能が停止される。
【0133】
車載機12は、データベース202にデータを転送し、インデックスを生成する更新済みデータ転送処理611を実行する。このとき、車載機12の出力装置145には、更新済みデータ転送処理611が実行されていることを示すために、進捗状況などが表示される(1804)。この段階で、最新データを利用してナビゲーション機能が実行されているが、データベース202の更新処理などの影響によって、処理性能が低下していることを利用者に通知することができる。
【0134】
最後に、車載機12は、地図データの更新が完了した旨を通知する更新完了通知処理805を実行する。このとき、車載機12の出力装置145には、地図データの更新が完了した旨が表示される(1805)。
【0135】
本発明の第1の実施の形態によれば、データベース202のインデックス構築処理が実行されている間であっても、更新済みデータ蓄積部210から更新済みデータを取得することによって、更新後の地図データを参照することができる。
【0136】
また、本発明の第1の実施の形態によれば、更新前の地図データから更新後の地図データに切り替えるためにバッファをクリアするタイミング以外ではナビゲーション機能を停止させる必要がなく、ナビゲーション機能の停止時間を短縮することができる。
【0137】
なお、本発明の第1の実施の形態では、自動車に搭載する車載機に本発明を適用したが、携帯電話又はPDAなどの携帯可能な端末に適用することも可能である。
【0138】
(第2の実施の形態)
本発明の第1の実施の形態では、更新済みデータを更新済みデータ蓄積部に格納していたが、本発明の第2の実施の形態では、更新済みデータについてもデータベースに格納する。
【0139】
本発明の第2の実施の形態の地図データ配信システムの構成は、第1の実施の形態の地図データ配信システムと同じである。なお、同一の構成及び同一の処理については説明を省略する。
【0140】
図19は、本発明の第2の実施の形態のデータベースに格納されたテーブルの一例を示す図である。図19には、道路名称テーブル1901、更新済み道路名称テーブル1902、エリアデータテーブル1903及び更新済みエリアデータテーブル1904が示されている。
【0141】
道路名称テーブル1901は、エリアID、リンクID及び名称データカラムを含む。名称データカラムには、道路ごとの名称データが格納されている。また、更新済み道路名称テーブル1902は、道路名称テーブル1901と同じ構造である。
【0142】
エリアデータテーブル1903は、本発明の第1の実施の形態のエリアデータテーブルと同じ構造である。更新済みエリアデータテーブル1904は、エリアデータテーブル1903と同じ構造である。
【0143】
このように、DBMSを利用して更新済みデータを管理することによって、更新前のデータを検索する手段と更新後のデータを検索する手段を共通化することができる。以下、データベースに反映されていない更新後のデータを検索する手順を具体的に説明する。
【0144】
図20は、本発明の第2の実施の形態のアプリケーション要求データ検索処理の手順を示すフローチャートである。
【0145】
車載機12のCPU141は、まず、要求されたデータの種別を判定する(ステップ2001)。本発明の第2の実施の形態では、判定されるデータの種別は、道路の名称データとエリアデータの2種類である。車載機12のCPU141は、判定されたデータの種別に基づいて、処理を分岐させる。また、前述した二種類以外に交通規制情報などのデータの種別がある場合には、データの種別ごとに処理を分岐させればよい。
【0146】
車載機12のCPU141は、データの種別が「名称データ」の場合には(ステップ2001の結果が「名称データ」)、更新済み名称テーブル検索処理を実行する(ステップ2002)。更新済み名称テーブル検索処理は、更新済み道路名称テーブル1902から要求されたデータを検索する処理である。そして、要求されたデータが更新済みデータに含まれているか否かを判定する(ステップ2004)。
【0147】
車載機12のCPU141は、更新済みデータに要求されたデータが含まれている場合には(ステップ2004の結果が「y」)、更新済みデータから要求されたデータを抽出する。一方、更新済みデータに要求されたデータが含まれていない場合には(ステップ2004の結果が「n」)、道路名称テーブル1901を検索してデータを抽出する(ステップ2006)。
【0148】
一方、車載機12のCPU141は、データの種別が「エリアデータ」の場合には(ステップ2001の結果が「エリアデータ」)、更新済みエリアデータテーブル検索処理を実行する(ステップ2003)。更新済み名称テーブル検索処理は、更新済みエリアデータテーブル1904から要求されたデータを検索する処理である。そして、要求されたデータが更新済みデータに含まれているか否かを判定する(ステップ2005)。
【0149】
車載機12のCPU141は、更新済みデータに要求されたデータが含まれている場合には(ステップ2005の結果が「y」)、更新済みデータから要求されたデータを抽出する。一方、更新済みデータに要求されたデータが含まれていない場合には(ステップ2004の結果が「n」)、エリアデータテーブル1903を検索してデータを抽出する(ステップ2007)。
【0150】
このように、要求されたデータを格納するテーブルに対応する更新済みデータを格納するテーブルをデータベースに作成することによって、更新済みデータを取得する手順を共通化することができる。
【0151】
本発明の第2の実施の形態によれば、DBMSの機能を利用することによって、更新済みデータの管理を容易にすることができる。また、DBMSの機能を利用した柔軟な検索が可能となる。
【0152】
(第3の実施の形態)
本発明の第1の実施の形態及び第2の実施の形態では、エリアデータテーブルにリンクデータ及びノードデータが圧縮された形式で格納されていたが、第3の実施の形態では、道路データを1リンク又は1ノード当たり1レコードとしてデータを格納する。
【0153】
図21は、本発明の第3の実施の形態のノードデータテーブル2101及びリンクデータテーブル2102の一例を示す図である。
【0154】
ノードデータテーブル2101及びリンクデータテーブル2102に格納されている情報は、本発明の第1の実施の形態及び第2の実施の形態と同じである。このように、テーブル形式でデータを格納することによって、DBMSの検索機能を利用して、要求されたデータを検索することができる。
【0155】
図22は、本発明の第3の実施の形態の更新済みデータを格納するテーブルを示す図である。
【0156】
本発明の第3の実施の形態のように、ノードデータ及びリンクデータがテーブルの1レコードとして管理されている場合には、ノードとリンクのそれぞれについて更新済みデータを格納するためのテーブルが必要となる。そこで、本発明の第3の実施の形態では、更新済みノードデータテーブル2201及び更新済みリンクデータテーブル2202を備える。
【0157】
更新済みノードデータテーブル2201は、ノードデータテーブル2101の構造に「処理種別」のカラムが追加された構造となっている。同様に、更新済みリンクデータテーブル2202は、リンクデータテーブル2102「処理種別」のカラムが追加された構造となっている。「処理種別」のカラムには、レコードの「削除」又は「追加」などの処理の内容が記録される。
【0158】
地図データを格納するノードデータテーブル2101などのテーブルに対し、DBMSによって提供される検索機能を利用して検索する場合に、更新データを格納する更新済みノードデータテーブル2201などのテーブルに対しても同一の手順で検索することができる。例えば、座標(x,y)を指定することによって、当該座標を含む区域を指定し、指定された区域内に含まれているノードを検索する場合、ノードデータテーブル2101及び更新済みノードデータテーブル2201の両方に対して検索を要求する。そして、ノードデータテーブル2101から取得された結果に対し、更新済みノードデータテーブル2201から取得された処理種別に基づいて、追加、削除又は更新などの処理を実行し、更新済みデータを取得することができる。
【0159】
本発明の第3の実施の形態によれば、ノードデータ及又はリンクデータを構成する各情報に対して、DBMSの機能を利用した柔軟な検索が可能となる。
【図面の簡単な説明】
【0160】
【図1】本発明の第1の実施の形態の地図データ配信システムのシステム構成図である。
【図2】本発明の第1の実施の形態の地図データ配信システムに含まれるプログラム及びデータを説明する図である。
【図3】本発明の第1の実施の形態の地図データを格納するエリアデータテーブルを示す図である。
【図4A】本発明の第1の実施の形態のバージョン1の地図データを示す図である。
【図4B】本発明の第1の実施の形態のバージョン2の地図データを示す図である。
【図4C】本発明の第1の実施の形態の一部のエリアが更新された後の状態の地図データを示す図である。
【図5】本発明の第1の実施の形態のエリア単位地図更新データ管理テーブルを示す図である。
【図6】本発明の第1の実施の形態の車載機に格納された地図データを更新する手順の概要を示す図である。
【図7】本発明の第1の実施の形態の更新済みデータ蓄積部のデータ構造を示す図である。
【図8】本発明の第1の実施の形態の車載機に格納された地図データの更新処理の全体の手順を示すフローチャートである。
【図9】本発明の第1の実施の形態の地図データ更新処理の各処理におけるデータの更新状況を示す図である。
【図10】本発明の第1の実施の形態の差分データのデータ構造の一例を示す図である。
【図11】本発明の第1の実施の形態の更新済みデータ生成処理の手順を示す図である。
【図12】本発明の第1の実施の形態の更新済みデータ転送処理のデータの流れを示す図である。
【図13】本発明の第1の実施の形態の更新済みデータ転送処理の手順を示す図である。
【図14】本発明の第1の実施の形態のアプリケーションから地図データを要求する処理のデータの流れを説明する図である。
【図15】本発明の第1の実施の形態の要求された地図データを取得し、アプリケーションに送信する処理のデータの流れを説明する図である。
【図16】本発明の第1の実施の形態のアプリケーション要求データ検索処理を説明する図である。
【図17】本発明の第1の実施の形態の地図データ更新時の処理を説明する図である。
【図18】本発明の第1の実施の形態の画面遷移と処理手順との対応を説明する図である。
【図19】本発明の第2の実施の形態のデータベースに格納されたテーブルの一例を示す図である。
【図20】本発明の第2の実施の形態のアプリケーション要求データ検索処理の手順を示すフローチャートである。
【図21】本発明の第3の実施の形態のノードデータテーブル及びリンクデータテーブルの一例を示す図である。
【図22】本発明の第3の実施の形態の更新済みデータを格納するテーブルを示す図である。
【符号の説明】
【0161】
11 地図配信サーバ
12 車載機
101 入力装置
102 出力装置
103 外部記憶装置
104 読取装置
105 CPU
106 メモリ
107 ネットワークIF
110 演算処理装置
111 入出力装置
112 記憶装置
113 通信装置
120 ネットワーク
121 無線基地局
122 無線通信装置
131 演算処理装置
132 通信装置
133 現在位置計測装置
134 記憶装置
135 入出力装置
141 CPU
142 メモリ
143 ネットワークIF
144 入力装置
145 出力装置
146 外部記憶装置
147 読取装置
201 更新済みデータ管理部
202 データベース
203 更新波及範囲判定部
204 地図データ検索部
205 アプリケーション実行部
206 差分データ取得部
207 更新済みデータ生成部
208 アプリケーション監視部
209 更新済みデータ検索部
210 更新済みデータ蓄積部
211 更新済みデータ転送部
212 端末通信部
213 サーバ通信部
214 配信データ選別部
215 差分データ記録部
216 差分データ生成部
300 エリアデータテーブル
500 エリア単位地図更新データ管理テーブル
1901 道路名称テーブル
1902 更新済み道路名称テーブル
1903 エリアデータテーブル
1904 更新済みエリアデータテーブル
2101 ノードデータテーブル
2102 リンクデータテーブル
2201 更新済みノードデータテーブル
2202 更新済みリンクデータテーブル

【特許請求の範囲】
【請求項1】
地図データを配信するデータ配信サーバと、前記地図データを受信する端末とを含む地図データ配信システムであって、
前記データ配信サーバは、前記地図データが更新された場合に、更新前の前記地図データと更新後の前記地図データとの差分データが領域ごとに記録される差分データ記録部を備え、
前記端末は、前記データ配信サーバから配信された地図データが格納されるデータベース、及び、前記更新された地図データが前記データベースに反映されるまで格納される更新済みデータ蓄積部を備え、
前記データ配信サーバは、前記端末から更新された領域の地図データが要求された場合には、前記更新対象の領域の差分データを前記差分データ記録部から前記端末に送信し、
前記端末は、
前記データ配信サーバから送信された差分データを、前記データベースに格納された地図データに適用することによって、更新済みデータを生成し、
前記生成された更新済みデータを前記更新済みデータ蓄積部に書き込み、
前記更新済みデータ蓄積部に格納された更新済みデータを前記データベースに書き込み、
前記更新済みデータ蓄積部に格納された更新済みデータを前記データベースに書き込んでいる間に前記地図データを利用するアプリケーションから地図データの取得要求を受け付けた場合には、前記取得要求された地図データが前記更新済みデータ蓄積部に格納されているか否かを判定し、
前記取得要求された地図データが前記更新済みデータ蓄積部に格納されている場合には、前記更新済みデータ蓄積部から前記取得要求された地図データを取得し、
前記取得要求された地図データが前記更新済みデータ蓄積部に格納されていない場合には、前記データベースから前記取得要求された地図データを取得することを特徴とする地図データ配信システム。
【請求項2】
前記差分データ記録部には、前記更新対象の領域の地図データが更新された場合に影響を受ける領域が前記更新対象の領域に対応する更新波及領域として記録され、
前記データ配信サーバは、前記更新対象の領域の差分データ、及び、前記更新対象の領域に対応する更新波及領域の差分データを前記端末に送信することを特徴とする請求項1に記載の地図データ配信システム。
【請求項3】
前記端末は、前記取得要求された地図データの領域に更新対象の領域及び更新対象でない領域が含まれる場合には、前記更新済みデータ蓄積部に格納された更新済みデータと、前記データベースに格納された地図データとを併合して、前記取得要求された地図データを取得することを特徴とする請求項1に記載の地図データ配信システム。
【請求項4】
前記端末は、
前記端末の稼働状況を抽出する監視部を備え、
前記監視部によって抽出された前記端末の稼働状況に基づいて、前記端末の稼働負荷が小さい場合に、前記更新済みデータ蓄積部に格納されたデータを前記データベースに反映することを特徴とする請求項1に記載の地図データ配信システム。
【請求項5】
前記端末は、前記生成された更新済みデータが前記更新済みデータ蓄積部にすべて書き込まれるまでは、前記取得要求に対して、前記データベースに格納された地図データを提供することを特徴とする請求項1に記載の地図データ配信システム。
【請求項6】
前記端末は、前記生成された更新済みデータが前記更新済みデータ蓄積部にすべて書き込まれた場合には、更新後の地図データを提供する旨を通知することを特徴とする請求項5に記載の地図データ配信システム。
【請求項7】
地図データを配信するデータ配信サーバと、前記地図データを受信する端末を含む地図データ配信システムにおける前記端末に格納された地図データのデータ更新方法であって、
前記データ配信サーバは、前記地図データが更新された場合に、更新前の前記地図データと更新後の前記地図データとの差分データが領域ごとに記録される差分データ記録部を備え、
前記端末は、前記データ配信サーバから配信された地図データが格納されるデータベース、及び、前記更新された地図データが前記データベースに反映されるまで格納される更新済みデータ蓄積部を備え、
前記データ配信サーバは、前記端末から更新された領域の地図データが要求された場合には、前記更新対象の領域の差分データを前記差分データ記録部から前記端末に送信し、
前記端末は、
前記データ配信サーバから送信された差分データを、前記データベースに格納された地図データに適用することによって、更新済みデータを生成し、
前記生成された更新済みデータを前記更新済みデータ蓄積部に書き込み、
前記更新済みデータ蓄積部に格納された更新済みデータを前記データベースに書き込み、
前記更新済みデータ蓄積部に格納された更新済みデータを前記データベースに書き込んでいる間に前記地図データを利用するアプリケーションから地図データの取得要求を受け付けた場合には、前記取得要求された地図データが前記更新済みデータ蓄積部に格納されているか否かを判定し、
前記取得要求された地図データが前記更新済みデータ蓄積部に格納されている場合には、前記更新済みデータ蓄積部から前記取得要求された地図データを取得し、
前記取得要求された地図データが前記更新済みデータ蓄積部に格納されていない場合には、前記データベースから前記取得要求された地図データを取得することを特徴とする地図データ更新方法。
【請求項8】
前記データ配信サーバは、
前記差分データを記録する場合に、前記更新対象の領域の地図データが更新された場合に影響を受ける領域を前記更新対象の領域に対応する更新波及領域として前記差分データ記録部に記録し、
前記更新対象の領域の差分データ、及び、前記更新対象の領域に対応する更新波及領域の差分データを前記端末に送信することを特徴とする請求項7に記載の地図データ更新方法。
【請求項9】
前記端末は、前記取得要求された地図データの領域に更新対象の領域及び更新対象でない領域が含まれる場合には、前記更新済みデータ蓄積部に格納された更新済みデータと、前記データベースに格納された地図データとを併合して、前記取得要求された地図データを取得することを特徴とする請求項7に記載の地図データ更新方法。
【請求項10】
前記端末は、前記端末の稼働状況を抽出する監視部を備え、
前記地図データ更新方法は、前記端末が、前記監視部によって抽出された前記端末の稼働状況に基づいて、前記端末の稼働負荷が小さい場合に、前記更新済みデータ蓄積部に格納されたデータを前記データベースに反映させることを含むことを特徴とする請求項7に記載の地図データ更新方法。
【請求項11】
前記端末は、前記生成された更新済みデータが前記更新済みデータ蓄積部にすべて書き込まれるまでは、前記取得要求に対して、前記データベースに格納された地図データを提供することを特徴とする請求項7に記載の地図データ更新方法。
【請求項12】
前記端末は、前記生成された更新済みデータが前記更新済みデータ蓄積部にすべて書き込まれた場合には、更新後の地図データを提供する旨を通知することを特徴とする請求項11に記載の地図データ更新方法。

【図2】
image rotate

【図3】
image rotate

【図4A】
image rotate

【図4B】
image rotate

【図4C】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図1】
image rotate

【図18】
image rotate


【公開番号】特開2009−20254(P2009−20254A)
【公開日】平成21年1月29日(2009.1.29)
【国際特許分類】
【出願番号】特願2007−182018(P2007−182018)
【出願日】平成19年7月11日(2007.7.11)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】