Quantcast
Channel: いつも隣にITのお仕事
Viewing all articles
Browse latest Browse all 2087

GASのデータベースとして、なぜCloud SQLが有効なのか?その概要とメリット

$
0
0

みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

Google Apps Script(GAS)でそこそこの規模のアプリケーションを作成していると、スプレッドシートでのデータの扱いが限界に達したり、やりづらくなったりといったことが起きてきます。

そこで、一歩踏み出してトライしてみたいのが、Cloud SQLをデータベースとして使用するという選択肢です。

Cloud SQLでは「ちゃんとしたデータベース」を使えますので、スプレッドシートよりもより大量のデータを、より高速、かつより強固に扱うことができます。

このシリーズでは、GASからJDBCサービスを使ってCloud SQLを操作する方法を、順を追ってお伝えしていきます。

初回の今回は、GASのデータベースとして、なぜCloud SQLが有効なのか?その概要とメリットについてお伝えします。

では、行ってみましょう!

スプレッドシートをデータベースにする弊害

皆さんが作っているGASのアプリについて思い起こしてみましょう。

主にデータの置き場、つまりデータベースとしてスプレッドシートを使用している場合が圧倒的に多いことでしょう。

ただし、スプレッドシートをデータベースとして使用し続けていると、色々と問題が出てきます。

このようなものです。

  • データが増えてくると動作が重くなる、ていうか500万セルまでしか受け付けない
  • うっかり権限与えると、気ままにいじられる

これらを回避するために、複数のスプレッドシートにデータを分散させたり、スプレッドシートに保護をかけたり、様々なテクニックを駆使するのですが、そうするとスクリプトの行数が増えて、メンテナンスが大変になってきます。

そこで、一つの選択肢として検討したいのが、Cloud SQLをデータベースとして使用することです。

Cloud SQLとは?なぜ使うの?

Cloud SQLというのは、Google Cloud Platform(GCP)内で提供されているデータベースサービスです。

GCPというのは、簡単にいうと、クラウド上の色々な役割を持つサーバーを使えるサービスで、アプリケーションを配置したり、機械学習を使用したり、今回の目的のようにデータベースを作成して使用したりすることができます。

どちらかというと、全体的に本職のITエンジニア向けのサービスで、ちょっと敷居が高いように思えます。

また、GCPはG Suiteとは別サービスで、その利用状況によって別途課金が発生します。

ただ、GASによるアプリとそのデータ量に規模感が出てくると、前述の「スプレッドシートをデータベースにする弊害」とのトレードオフになってきます。

Cloud SQLを使い始める技術的なハードル + Cloud SQLを利用するための料金 <= スプレッドシートをデータベースにする弊害

であれば、トライしても良いのではないでしょうか?

新しいことも学べますしね。

GASからCloud SQLを使用するための手順

GASからCloud SQLを使用するためには、以下のステップを踏む必要があります。

  1. GCPを使える状態にする
  2. Cloud SQLのインスタンスを用意する
  3. Cloud SQLのインスタンスにデータベースを作成する
  4. GASのJDBCサービスでCloud SQLのデータベースに接続し、SQLで操作をする

Cloud SQLとインスタンス

Cloud SQLについては本シリーズで手順とともに解説をしていきますので、それほど構えなくても大丈夫です。

ざっくり解説すると、インスタンスというのが仮想的なサーバーのひとつひとつのことです。

GCP上にCloud SQLのインスタンスを(お金さえ払えば)たくさん作れます。

その中に、データベースを作ることができ、その作成したデータベースに、テーブル(表)を作成、データを格納していくわけです。

JDBCサービスとは

JDBCサービスはGASのScript Servicesに含まれるサービスで、Cloud SQLをはじめとするいろいろな種類のデータベースに接続して、命令を実行するためのサービスです。

GASの書き方と、データベースについての概要がわかっていれば、すぐに理解できると思います。

こちらも随時解説していきますね。

SQLとは

SQLというのは、データベースの操作をするための言語です。

「SELECT」「INSERT」「DELETE」「CREATE」などの命令文を使って、データベースのデータを抽出、挿入、削除、テーブルの作成などといった操作を行うことができます。

また、新しい言語かよ~となるかも知れませんが、SQLを学ぶメリットは多くあります。

  • Cloud SQLに限らず、さまざまな種類のデータベースで共通で使用できる
  • Googleのデータ解析ツールBigQueryでも使える
  • スプレッドシートのQUERY関数にも応用できる

といったように、かなり「潰し」の効くスキルということ。SQLは一度学べば横展開が可能で、分析系の業務では非エンジニアでもマスターされる方が増えています。

まとめ

以上、GASのデータベースとして、なぜCloud SQLが有効なのか?その概要とメリットについてお伝えしました。

これを機に、データベースの世界に少し足を踏み入れてもよいのではないでしょうか。

GASでのデータの扱いがこうあるべき、みたいなところもより見えてくるものと思います。

次回から、実際にGCPを触ることろをはじめていきましょう。

どうぞお楽しみに!


Viewing all articles
Browse latest Browse all 2087

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>