Heroku Postgresデータへのアクセス
Herokuの標準的なデータベースは、説明する必要も無く、PostgreSQLですね。Herokuでのプロビジョニングはまったく難しい事無く、単にプランを選択するだけどいうのは、私含めてHerokuラヴの皆様であれば、知らないわけがないはずです。そこまでは、超フレンドリーなHerokuですが、そこから先は「漢」の世界。CLIで、
heroku pg:psql --app [アプリケーション名]
での利用を求められます。もちろん、データベースの資格情報(Credentials)を使って、pgAdmin含め、星の数ほどあるPostgreSQLの管理ツールの利用もできますが、資格情報の管理も結構面倒です。ということで、他の方法をご紹介します。
Dataclipsを使う
最初に思いつくのは、HerokuのDATAダッシュボード内にあるDataclipsです。Dataclipsは、クエリーを定型化しておいて、簡単に実行できるようにするツールでなので、インタラクティブにデータにアクセスすることを目的としていないですし、いわゆるGUI的なツールではないですが、コード補完機能を備えたエディタでのSQL構文の記述が可能で、データにアクセスできます。定型化することを前提にしているので、都度、Dataclipに名前を付ける必要があるのが面倒といえば、面倒ですが、それさえ気にしなければ、コード補完してくれるため、psqlよりはかなり便利です。気をつける点としては、データ参照はできますが、INSERTやUPDATEはできないところです。まぁ、このあたりは、Dataclipsの目的としては仕方ないところです。
Heroku Add-onを使う
こちらが本命ですね。いくつかAdd-onがあるのでご紹介します。紹介するAdd-onは、データベースの資格情報の入力無しに利用可能なのが便利なところです。(Add-onなので当たり前って言っちゃー当たり前そうですが)。ということで簡単にご紹介します。
Adminium
https://elements.heroku.com/addons/adminium
Dataclipと違い、新規レコードの作成や編集・削除ができる。CSVのインポート・エクスポートも可能可能。サービス名にも現れているように、主に管理者向けツール。
Draxlr for Postgres / MySQL
https://elements.heroku.com/addons/draxlr
こちらも管理者向けツールという位置づけで、新規レコードの作成・編集・削除ができる。グラフも豊富。
Trevor.io for Postgres / MySQL
https://elements.heroku.com/addons/trevor
管理者向けというよりは、Dataclipに近く、データを可視化することを主な利用目的になっており、ユーザー向けダッシュボード構築に向く。Dataclips同様、Google Spreadsheet等の連携により、Herokuにアクセスしなくても、データ参照できる。クエリー作成もビジュアルライズされていて、SQL構文で記述する必要が無いのは便利(ただし、当然ながら、SQL構文は意識させる)。スキーマのビジュアライズもでき、グラフ種類も豊富。
##注意点
Private Spacesでの利用は当然ながら制限があります。一部Add-onについては、trusted IPs for dataを使って、Private Spaces外部からのPostgresへのアクセスを許可すると利用できます。また、Private Spaces対応を謳ってないAdd-onもあるので、注意が必要です。
まとめ
各Add-onで価格も大きく異なっていますが、どれも無料プランが用意されているので、まずは、お試しで使ってみると良いかもしれません。