OnlineMapMaker logo

SQLite ビューアー — SQLiteとSpatiaLiteのデータを地図に表示

.sqlite、.sqlite3、.dbファイル(SpatiaLiteデータベースを含む)をアップロードすると、すべてのテーブルがすぐにインタラクティブな地図上にプロットされます。ポイント、ライン、ポリゴンをクリックすると属性を確認でき、色を変更したり、結果をGeoJSONとしてダウンロードしたりできます。ブラウザ上で高速に動作し、追加のプログラムは一切必要ありません。 全画面で開く ↗

Rate this tool:
広告
広告
Loading map…
GISプロジェクトでお困りですか?サービスを見る

SQLiteとは何か、なぜ地図で見るのか

SQLiteは、独立したサーバープログラムとして動作するのではなく、データベース全体をディスク上の1つの単純なファイルに保存する、小型で高速なデータベースエンジンです。世界で最も広く使われているソフトウェアの1つで、スマートフォン、ブラウザ、アプリ、そして数え切れないほどのGISプログラムに組み込まれています。SpatiaLiteは、同じファイル形式に空間機能を追加する無料の拡張機能で、通常のSQLiteファイルにも、本格的なGISデータベースと同じようにポイント、ライン、ポリゴンを保存できるようにします。このビューアーは、どちらの種類のファイルもブラウザ上で直接開き、その中の位置データを実際の地図上に表示します。データベースソフトや本格的なデスクトップGISのインストールは必要ありません。

データの色を変更する

サイドバーの3つのコントロールを使えば、元のファイルに手を加えることなく、テーブル全体のスタイルをその場で変更できます:

  • 色: スウォッチまたはカラーピッカーから好きな色を選べます。ライン、ポリゴンの塗りつぶしと輪郭線、ポイントマーカーにすぐに反映されます。
  • 線の太さ: 輪郭線やラインを、細線からポスター向けの力強い太い線まで、細くしたり太くしたりできます。
  • 塗りつぶしの不透明度: ポリゴンの塗りつぶしを、薄く透けた状態から完全に不透明な色まで、どれだけ濃くするかを調整できます。

変更はすべて、地図上に表示されているテーブルにその場で反映されるため、決める前にいくつかの見た目を数秒で試せます。

SQLite / SpatiaLiteファイルの構造

SQLiteファイルは、他のリレーショナルデータベースと同じ行と列のレイアウトで、一連のテーブルとして構成されています。.sqliteファイルや.dbファイルを開くということは、単にそれらのテーブルを読み込むことを意味します。SpatiaLite対応のファイルは、同じ構造の上に、標準化された少数の追加テーブルを持ちます。これにより、このツールをはじめとするSpatiaLite対応のソフトウェアは、当て推量ではなく自動的に地図データを見つけ出せます。

通常のテーブル

調査アプリ、モバイルアプリ、スクリプトから書き出された.sqliteファイルや.dbファイルを含む、ほとんどの単純なSQLiteファイルは、型付けされた列を持つ通常のテーブルとしてデータを保存しています。テーブルに緯度・経度らしき列がある場合(列名、または値の範囲から判断されます)、このツールは自動的にそれらを検出し、各行をポイントとしてプロットします。

SpatiaLiteのメタデータテーブル

SpatiaLite対応のファイルには、geometry_columnsのようなテーブルが追加されます。これは、ジオメトリを保持するすべてのテーブルを、そのジオメトリ列の名前や座標系とともに一覧にしたものです。また、spatial_ref_sysには、参照される各座標系の定義が、すぐに使えるproj4文字列を含めて保存されています。これらのテーブルを組み合わせることで、ビューアーはファイル内のすべての空間レイヤーを、テーブルを1つずつ手作業で調べることなく見つけ出せます。

ジオメトリの保存形式:SpatiaLiteのBLOB

SpatiaLiteファイルの内部では、ポイント、ライン、ポリゴンといった各ジオメトリが、1つの列にバイナリ値(BLOB)として保存されています。この形式は、座標系と高速なフィルタリングのための境界ボックスを含む短いヘッダーから始まり、続いてジオメトリの種類と座標が記録され、最後に固定のマーカーバイトで終わります。これは、形状をテキストではなく生のバイト列としてコンパクトに保存する方法です。このツールはそのバイナリ形式をブラウザ上で直接読み取り、地図上に表示される形状へと変換します。

複数のテーブルを扱う

1つのSQLiteまたはSpatiaLiteファイルには、地図化する価値のあるテーブルが複数含まれていることがよくあります。例えば、調査ポイントのレイヤーと、敷地境界のレイヤーが一緒に入っている場合などです。サイドバーの「Tables」リストには、ファイル内で見つかったすべてのテーブルが表示され、SpatiaLiteのジオメトリレイヤー、緯度・経度の列が検出されたテーブル、位置データのないテーブルのいずれかに分類されます。タグ付けされたテーブルをクリックすると、それまで表示されていたテーブルの代わりに地図上へ読み込まれます。

テーブルに緯度・経度とわかる名前の列がない場合は、小さなパネルで正しい2つの列を手動で選択できます。これはこのサイトのCSV to Mapツールと同じ仕組みで、"y_coord"や"pos_lng"のような珍しい列名を使っているテーブルも見逃されません。

座標系と再投影

SpatiaLiteのジオメトリは、単純な緯度・経度だけでなく、どんな座標系でも保存できます。このツールは各ジオメトリテーブルに記録された座標系を読み取り、それを認識できる場合(WGS84とWeb Mercatorがほとんどの実際のファイルをカバーしており、それ以外の座標系はspatial_ref_sysに保存されたproj4文字列を通じて可能な限り処理されます)、描画前にすべての形状を通常の緯度・経度に再投影します。そのため、元のファイルが座標をどのように保存していたかにかかわらず、地図は正しく表示されます。

表示内容をエクスポートする

"Download Table as GeoJSON"をクリックすると、現在読み込まれているテーブルを、ジオメトリをデコードして再投影した状態で、標準的なGeoJSONファイルとして保存できます。色などのスタイル変更は地図表示にのみ影響し、書き出されるファイルには反映されません。GeoJSONは、QGIS、ArcGIS、Leaflet、Mapbox GL JS、そしてほぼすべての最新のマッピングツールで問題なく開けます。

SQLiteの簡単な歴史

SQLiteは、D. Richard Hippによって2000年に書かれました。当時、彼は米海軍向けのソフトウェアに取り組んでいました。そのプロジェクトには、独立したデータベースサーバーをインストールして実行する必要のないデータベースが必要でした。そこでHippは、単一のファイルへの読み書きを直接行う小さなライブラリとして、データベースエンジンを作り上げました。サーバープロセスなし、個別のインストールなし、設定なしというこの1つの設計上の選択こそが、今日SQLiteがあらゆる場所で使われている理由です。

パブリックドメインであり、どんな製品にも無料で組み込めることから、SQLiteはウェブブラウザ、モバイルOS、デスクトップアプリ、そして数え切れないほどの開発者向けツールに急速に広まりました。AndroidとiOSのすべてのスマートフォンにはSQLiteが組み込まれており、世界で最も広く導入されているデータベースエンジンと呼ばれることも多く、そのインストール数は数十億台のデバイスにのぼります。

SpatiaLiteはその後に登場しました。Alessandro Furieriによって作られ、2008年頃に初めてリリースされました。libspatialiteとして配布される読み込み可能な拡張機能として動作し、空間SQL関数、R-Treeによる空間インデックス、そして通常のSQLiteファイルにジオメトリをBLOBとして直接保存する標準的な方法を追加します。これは、PostGISがPostgreSQLに空間機能を追加するのとほぼ同じ考え方です。QGISは長年にわたりSpatiaLiteをネイティブ形式の1つとしてサポートしており、フィールドデータの収集や、本格的なデータベースサーバーを必要としないデスクトップGISプロジェクトにおいて、今も軽量で単一ファイルの選択肢として広く使われています。

地図にデータを表示する2つの方法

お好みの方法で、ツールにデータベースを開いてみましょう:

  • アップロード、またはドラッグ&ドロップ: "Upload"をクリックして.sqlite、.sqlite3、または.dbファイルを選ぶか、ファイルをファイルブラウザから地図上に直接ドラッグ&ドロップしてください。
  • サンプルデータを試す: "Sample Data"をクリックすると、SpatiaLite形式のランドマークテーブルと、通常の緯度・経度形式のセンサーテーブルを含む小さなデモ用データベースが作成・読み込まれます。すぐにクリック、色の変更、テーブルの切り替えを試せます。

ファイルが読み込まれると、ツールはサイドバーに使用可能なすべてのテーブルを一覧表示し、最も適したテーブル(SpatiaLiteのジオメトリテーブルがあればそれ、なければ緯度・経度の列を認識できる最初のテーブル)を自動的にプロットして、そのデータに合わせて地図をズームします。リスト内の別のテーブルをクリックすると、そちらに切り替えられます。

手順

Step 1: ツールを開く
1
手順 1
ツールを開く
地図はまだデータのない世界表示で開きます。上部のツールバーには、Upload、Sample Data、ベースマップ切り替えがあります。サイドバーには、テーブル一覧、スタイルコントロール、エクスポートボタンがあります。
Step 2: データベースを読み込む
2
手順 2
データベースを読み込む
.sqlite、.sqlite3、または.dbファイルをアップロードするか、地図上にドラッグ&ドロップするか、"Sample Data"をクリックして、すぐに使えるデモ用データベースでツールを試してみましょう。
Step 3: 地図がズームして表示されるのを確認
3
手順 3
地図がズームして表示されるのを確認
ツールは自動的に最適なテーブル(SpatiaLiteのジオメトリレイヤーがあればそれ、なければ緯度・経度の列が検出された最初のテーブル)を選び、そのすべての行が表示されるように地図をズームします。
Step 4: Tablesリストを確認
4
手順 4
Tablesリストを確認
サイドバーには、ファイル内のすべてのテーブルが、ジオメトリレイヤー、緯度・経度テーブル、位置データのないテーブルのいずれかに分類されて表示されるため、ファイルに何が含まれているか一目でわかります。
Step 5: 必要に応じてテーブルを切り替える
5
手順 5
必要に応じてテーブルを切り替える
リスト内の別のタグ付けされたテーブルをクリックすると、現在のテーブルの代わりに地図上へ読み込まれます。
Step 6: ラベルのないテーブルの列を選ぶ
6
手順 6
ラベルのないテーブルの列を選ぶ
テーブルの座標列が自動検出されない場合は、小さなパネルで正しい緯度と経度の列を手動で選び、"Plot This Table"をクリックしてください。
Step 7: フィーチャをクリックする
7
手順 7
フィーチャをクリックする
ポイント、ライン、ポリゴンをクリックすると、その行に保存されているすべての属性を表示するポップアップが開きます。クリックした形状には明るいハイライトの輪郭線が表示されます。
Step 8: 色とスタイルを変更する
8
手順 8
色とスタイルを変更する
スウォッチを選ぶかカラーピッカーを使ってテーブルの色を変え、Line ThicknessとFill Opacityのスライダーでスタイルの強さを調整します。
Step 9: データをダウンロードする
9
手順 9
データをダウンロードする
"Download Table as GeoJSON"をクリックすると、現在読み込まれているテーブルを保存でき、どんなGISツールやウェブ地図でもすぐに使えます。
広告
広告

動画で見る — 1分でわかるSQLite ビューアー

読むより見るほうが早いという方のために、短い動画を用意しました。SQLiteまたはSpatiaLiteファイルのアップロード、データの地図表示、そして結果のエクスポートまで、一通りの流れを紹介しています。

実際の活用事例

SQLiteとSpatiaLiteのビューアーは、地図データが収集・共有され、ツール間で受け渡される場面ならどこでも役立ちます。特によく使われている場面を紹介します:

🏛️
オープンデータと研究データセット
大学や研究グループは、ポイント、ルート、境界のデータをSpatiaLiteファイルとしてレポートとともに公開します。このツールを使えば、本格的なGISプログラムをダウンロードすることなく、そのデータをすぐにプレビューできます。
🔍
GISデータの品質チェック
GISアナリストは、QGISから書き出されたSpatiaLiteのデータを抜き取りチェックし、ファイルを公開したりクライアントに渡したりする前に、フィーチャ数、属性値、ジオメトリが正しいかを確認します。
🔧
資産・インフラのマッピング
電力や公共インフラのチームは、電柱、配管、設備の位置を記録したSpatiaLiteデータベースを開き、点検や作業指示の発行前に位置情報や関連する保守記録を確認します。
🧭
フィールド調査とモバイルでのデータ収集
QField、Mergin Maps、または独自のモバイル調査ツールを使うフィールドチームは、収集したポイントやポリゴンをSpatiaLiteデータベースとして書き出し、それをこのツールで開いてデータが正しく反映されているかを確認してから、恒久的なGISプロジェクトに取り込みます。
🌱
環境・フィールド調査
研究者や保全活動チームは、SQLiteまたはSpatiaLiteデータベースに保存されたセンサーの位置、サンプル採取地点、観察地点を確認し、さらなる分析を行う前にカバー範囲や属性をチェックします。
📱
モバイル・オフラインアプリ開発
位置情報を扱い、データをSQLiteにローカル保存するアプリを開発する開発者は、テスト中にデバイスのデータベースファイルに実際に何が入っているかを確認し、座標や保存されたレコードが正しいかを確かめます。
広告
広告

よくある質問

テーブルが"No location data"と表示されるのはなぜですか?
そのテーブルには、geometry_columnsに登録されたジオメトリ列がなく、名前から緯度・経度と判断できる列の組み合わせもありません。データベース内のテーブルの中には、参照用のテーブルや、地図化する要素のない属性のみのレコードもあり、これは想定内の動作です。
自分のファイルをアップロードせずにツールを試せますか?
はい。"Sample Data"をクリックすると、SpatiaLite形式のテーブルと通常の緯度・経度テーブルをそれぞれ1つずつ含む小さなデモ用データベースがその場で作成・読み込まれます。自分のファイルをアップロードする前に、テーブルの切り替え、ポップアップ、色分けの仕組みを確認できます。
同じファイルから複数のテーブルを表示できますか?
はい。サイドバーにはファイル内の使用可能なすべてのテーブルが一覧表示されます。いずれかをクリックすると、現在表示されているテーブルと置き換わる形で地図に読み込まれます。
自分のデータベースはサーバーにアップロードされますか?
いいえ。ファイルは、SQLiteのWebAssemblyビルドを使って、あなた自身のブラウザタブ内だけで読み込み、解析、描画されます。どこにもアップロードや保存はされないため、非公開の情報や機密性の高い位置データを扱う場合でも安心して使えます。
このツールは、SpatiaLiteデータベースだけでなく、通常の.sqliteや.dbファイルにも対応していますか?
はい。テーブルに緯度・経度らしき列がある場合(列名または値の範囲から判断されます)、ツールは自動的にそれをポイントとしてプロットします。列名が一般的でない場合は、手動で正しい列を選ぶこともできます。
色を変更すると元のファイルも編集されますか?
いいえ。色、線の太さ、塗りつぶしの不透明度は、ビューアーの中だけで適用されます。"Download Table as GeoJSON"をクリックして新しい別のファイルとして保存しない限り、元のデータベースファイルが変更されることはありません。
SQLiteとSpatiaLiteの違いは何ですか?
SQLiteは基盤となるデータベースエンジンおよびファイル形式です。SpatiaLiteは同じファイル形式向けの無料の拡張機能で、空間関数とジオメトリを保存する標準的な方法を追加します。これにより、通常のSQLiteファイルでもポイント、ライン、ポリゴンを保持できるようになります。すべてのSpatiaLiteデータベースは有効なSQLiteファイルですが、すべてのSQLiteファイルがSpatiaLiteの空間テーブルを使っているわけではありません。
どのくらいの大きさのファイルを読み込めますか?
80 MBまでのファイルに対応しており、テーブルごとに最大5,000行まで読み込まれます。テーブルにそれ以上の行がある場合、ツールは表示された行数と省略された行数を教えてくれます。
どの座標系に対応していますか?
WGS84(通常の緯度・経度)とWeb Mercatorは直接処理されます。それ以外の座標系については、ツールがファイル内のspatial_ref_sysテーブルに保存されたproj4定義を読み取り、可能な場合はWGS84に再投影します。座標系を解決できない場合は、元の座標がそのまま表示されます。
このツールはラインやポリゴンにも対応していますか、それともポイントだけですか?
両方に対応しています。SpatiaLiteのジオメトリテーブルには、ポイント、ライン、ポリゴン、およびそれらのMulti-版を保持でき、このツールはそのすべてをデコードして表示します。専用のジオメトリ列を持たない通常の緯度・経度テーブルは、1組の座標が示せるのは1つの位置だけであるため、常にポイントとして表示されます。

クリックですべての属性を確認

地図上のポイント、ライン、ポリゴンをクリックすると、その行に保存されているすべての列の値、名前、カテゴリ、数値、日付など、生のジオメトリ自体を除くテーブルの内容がポップアップに一覧表示されます。クリックしたフィーチャには明るいハイライトの輪郭線も表示されるため、密集していたり重なり合っていたりするテーブルでも、ポップアップがどの形状のものかが常にひと目でわかります。

広告
広告

その他のおすすめツール

Map tiles © OpenStreetMap contributors and Protomaps (hosted by KONAKTIVE), CARTO, Esri (satellite). Database reading powered by sql.js. Map rendering by Leaflet. All file reading and rendering is local, no data is uploaded to any server.

Muhammad Gulraiz Khan、GIS専門家、KONAKTIVEおよびOnlineMapMaker.comの創業者

著者について

Muhammad Gulraiz Khan

GIS専門家・コンサルタント、KONAKTIVE創業者

Muhammad Gulraiz Khanは、エネルギー分野向けに地理空間ソリューションを提供してきた10年以上のプロフェッショナル経験を持つGIS専門家です。世界銀行、国際金融公社(IFC)、USAIDのプロジェクトにも携わってきました。彼はプロフェッショナル品質の地図作成ツールを誰もが無料で利用できるようにするため、OnlineMapMaker.comを立ち上げました。

広告
広告