180 likes | 370 Views
オープンソースのデータベースと GIS. 柔軟性のある人々のための 柔軟なテクノロジー. 日本語訳:尾野久二( e-mail:hi-ono@mn.xdsl.ne.jp ). オープンソースのデータベース. どんなオープンソースのデータベースがあるのか? MySQL PostgreSQL Berkeley DB mSQL SAP DB InterBase. Berkeley DB. 埋め込み型データベース 広汎に使用されているソフトウェア Sendmail Netscape 非常に高速 プログラム言語への組み込みのみ利用可能
E N D
オープンソースのデータベースとGIS 柔軟性のある人々のための 柔軟なテクノロジー 日本語訳:尾野久二(e-mail:hi-ono@mn.xdsl.ne.jp)
オープンソースのデータベース • どんなオープンソースのデータベースがあるのか? • MySQL • PostgreSQL • Berkeley DB • mSQL • SAP DB • InterBase
Berkeley DB • 埋め込み型データベース • 広汎に使用されているソフトウェア • Sendmail • Netscape • 非常に高速 • プログラム言語への組み込みのみ利用可能 • C, C++, TCL, Python • 商業的なサポート • Sleepycat Software
MySQL • もっとも広汎に利用されているOSDB • 非常に高速な読み込みアクセス,Webアプリケーションに適している • SQLインターフェース, ODBC, JDBC • プログラム言語とのバインディング • C, C++, Perl, Python, TCL • 商業的なサポート • MySQL AB • NuSphere
PostgreSQL • もっとも拡張性のあるOSDB • オブジェクト・リレーショナルなデザイン • ACIDデータベース • SQLインターフェース, ODBC, JDBC • プログラム言語とのバインディング • C, C++, Perl, Python, TCL • 商業的にサポート • PgSQL Inc • Red Hat (as Red Hat Database)
なぜOracleでは駄目なのか? • 複雑さ • OSDBはインストールや管理が比較的シンプルである。 • オーバーヘッド • OSDBはシステムのメモリー領域が少ない。 • コスト • OSDBはライセンス・フリーである。 • アクセシビリティ • OSDBはブラック・ボックスではない
OSDBを使うのはいつか? • OSDBが組織上適切であるとき • 標準的なAPIを使ってデータアクセスをするとき。 • Webベースのアプリケーションを構築するとき。 • 展開可能なアプリケーションを構築するとき • 端から端までアーキテクチャーを制御するとき
空間データとRDBMS • 空間データベース • 空間データベースと属性はデータベース内で共存している。 • 複雑なハイブリッドの問い合わせが可能 • select area(forestpoly) from forestcover,history where forestcover.ageclass > 80 and history.restocking = true and forestcover.fid = history.fid and distance( forestcover.forestpoly, GeometryFromText(’POINT(514234,5019313)’,26910) ) < 500 • 非常に巨大でシームレスなデータセットが格納可能 • 統合的なデータ・モデルが可能
空間データベース • 商用ソフトウェア • ArcSDE • DB2 Spatial • OracleSpatial • オープンソースのソフトウェア • PostGIS / PostgreSQL
PostGIS / PostgreSQL • PostgreSQLの空間データベースの機能 • OpenGIS “Simple Features for SQL” (SFSQL)をデザインガイドとする
PostGIS オブジェクト • OpenGIS SFSQL オブジェクト • POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, GEOMETRYCOLLECTION • OpenGIS SFSQL 表現 • AsBinary() Well-Known Binary • AsText() Well-Known Text • POINT(-128 45) • MULTILINESTRING((-128 45,-128 46),(-130 50,-131 55))
PostGIS の機能 • オブジェクトタイプすべてに対する空間インデクシング • R-Tree on GiST Index GiST • インデックス上のR木 • 分析関数 • Area() • Length() • Distance() • Transform()
PostGIS のデータ・アクセス • ローディング/ダンピング • shp2pgsql および pgsql2shpユーティリティを含む • OGRユーティリティによって、複数のフォーマットからのインポートが可能 • E00Pgユーティリティによって、E00ファイルよりインポートが可能 • Java • ジオメトリ用にJDBCエクステンション・オブジェクトを含む • C/C++ • PostgreSQL C/C++ API上でWell-Known Binary を利用する
PostGIS データ可視化 • Mapserverを使ったインターネット・マッピング • PHP/Mapscript と PHP/PgSQLを使って,対話的なウェブ・マッピング・アプリケーションを構築する • ArcIMS エミュレーターとMapserverを使って, Arc8 内でPostGIS データをみる • GeoTools を使ったJavaマッピング • GeoToolsはベータ版の PostGIS レイヤー・データソースをもっている
ボストン市、アメリカ オンライン資産分析、内部Webアプリケーション 適切な区画を確定し,Mapserverを使って結果を表示 クィーンズランド州、オーストラリア天然資源省 森林の許可、内部Webアプリケーション 属性によるデータベースの問い合わせと、データベースからの情報をサポートする区画領域の地図表示 実世界のPostGIS (1)
I-Cubed Inc, アメリカ 巨大な自動化された画像処理システム データベースを使用して,画像処理関数を調整し,入力されたリクエストと必要な画像を探し出して、処理結果をクライアント側のコンピューターに出力 Intevation Gmbh, ドイツ 大規模マルチプレイヤー・オンライン・ゲーム ゲームプレイヤーはモバイル端末(ポケベル、携帯電話)をもち、彼らの位置はデータベースに記憶される。抽出および可視化ツールを使って、ゲームのプレイを可視化する。 実世界のPostGIS (2)
フィンランド測地局 バックエンドのデータベースとしてPostGIS を使ったGeoServer OpenGIS WFSを利用して作成全土に分散したGISネットワークを作成する Refractions Research, カナダ 豊富な属性をもつ州道ネットワーク,デジタル道路アトラスの維持.ジオメトリは,複雑なデータモデルに統合されており,このモデルはバージョン管理,ネットワークの統合性,データの複数のビューを含んでいる. 実世界のPostGIS (3)
終わりに • オープンソースのデータベースは実世界の問題を処理する能力があり,広汎な利用がなされている. • オープンソースの空間データベース(PostGIS)はまだ新しいが,既に世界中で利用されている. • GISデータベースの問題の多くがいまや実際にオープンソースの技術に取り組むことができる.