Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
2
Help us understand the problem. What are the problem?
Organization

QGISとAmazon AuroraのPostgreSQL&PostGISを利用してジオデータを表示してみた

QGISとAmazon AuroraのPostgreSQL&PostGISを利用してジオデータを表示してみました :tada:

2年くらい前に「QGISとCloud SQLのPostgreSQL&PostGISを利用してジオデータを表示してみた」という記事を書いたのを思い出して、今回はAmazon AuroraでPostgreSQL&PostGISデータベースを構築しQGISで表示してみました!


Amazon Auroraの設定

はじめに、Amazon Auroraでデータベースを作成します。


AWSコンソールでAmazon RDSに移動し「データベースの作成」をクリックします。次に、標準作成・Amazon Aurora・PostgreSQL・プロビジョニング済み・PostgreSQL 13.3・開発/テストを選択します。
画像

DBクラスタ名・ユーザー名・パスワードを設定します。それ以外はデフォルトに設定。
画像

パブリックアクセスあり・セキュリティグループ新規作成・初期データベース名を設定します。それ以外はデフォルトに設定。本番環境では利用しませんが、パブリックアクセスありにすることでローカルPCから直接アクセス可能となります。
画像

データベースが作成されたらクラスターをクリックします。
画像

ホスト情報で必要になるので、エンドポイントをコピーしておきます。
画像

これでAmazon Auroraの設定は完了になります :thumbsup:


PostGISの設定

次に、PostGISのインストールとGISデータのインポートをします。


今回はDBeaverを利用しAmazon Auroraに接続します。ホスト名にコピーしたエンドポイントとポート・データベース名・ユーザー名・パスワードを設定します。
画像

Amazon Auroraに接続後、PostGISをインストールします。

CREATE EXTENSION postgis;

インストールされているか確認します。

SELECT postgis_version();

画像

データのインポートについてですが、100万件のポイントデータをインポートしてみました。
インポート方法は、以前の記事ではQGISのDBマネージャーでインポートができましたが、Amazon RDSだと正常にインポートできなかったため、今回は「shp2pgsql」でデータをインポートしました。
画像

これでPostGISの設定は完了になります :thumbsup:


QGISで表示

最後に、QGISでAmazon Auroraに接続しデータを表示します。


レイヤ → データソースマネジャー
ホスト名にコピーしたエンドポイントとポート・データベース名・ユーザー名・パスワードを設定し、Amazon Auroraに接続します。
画像

インポートしたデータを選択し追加します。
画像

100万件のデータがリアルタイムに表示されているのを確認できます。
画像


QGISとAmazon AuroraのPostgreSQL&PostGISを利用してジオデータを表示できました :thumbsup:

QGISとAmazon Auroraを利用することで、ローカルPCからもデータを直接確認することができました。Cloud SQLと同じく、社内等でデータを共有したい場合にうまく利用できそうです!ただ、ローカルでDBを用意するのと違って従量課金がかかってしまうのがデメリットかなと思います。

今後、Amazon RDSのPostgreSQL&PostGISにもトライしてみたいと思います:muscle:


やってみたシリーズ :grinning:
tags - Try
QGISとCloud SQLのPostgreSQL&PostGISを利用してジオデータを表示してみた
Amazon Location ServiceとLeafletとAWS AmplifyとVue.jsを組み合わせてマップアプリケーションを構築してみた
AWS AmplifyとAmplify UI VueとVue.jsでログイン機能を構築してみた
Serverless FrameworkでTypeScriptのサーバーレスAPIをAWSにデプロイしてみた




book

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
2
Help us understand the problem. What are the problem?