SaaS における SQL の未来: Zoho CloudSQL のご紹介

すべて | December 26, 2008 | 1 min read
※この記事に掲載されている内容は投稿当時の情報です。最新の状況と異なる内容を含む場合があります。
Reading Time: 1 minutes

コンピュータ言語の発展とともに、SQL (Structured Query Language) は、大変古い言語になってしまいました。
SQL は、1970年代初めから注目されましたが、おそらく、現代の Facebook 世代の若者にはあまり馴染みのないものかと思われます。
しかしながら、SQL はとても素晴らしい言語であるという事実は、今も変わることはありません。
SQL は、構造化データへのクエリ送信やデータのやり取りにおいては、圧倒的に簡単で効率的な方法の1つといえます。
それゆえに、現在においても、ビジネスアプリケーションで最も頻繁に利用されている言語の1つであり続けているのです。

しかしながら、おそらく、SQL の最も重要な役割は、開発者の頭の中にリレーショナルモデルを想定させることです。つまり、アプリケーションのための最良のデータ構造を手近に考えさせることなのです。
これは大変よいことです。アプリケーションの開発においては、特に、ビジネスアプリケーションの開発においては、最も重要なことは、アプリケーションのロジックなどではなく、データとデータを保管する構造なのです。
UNIX の創始者の1人であるRob Pike は、 これに関して、優雅な格言 を思い付きました:

“データがプログラムを支配する。もし、正しいデータ構造を選択し、うまく整理できたならば、常にアルゴリズムはほとんど自明となる。アルゴリズムではなく、データ構造こそがプログラミングの中心なのである。”

現在の分散型ファイルシステムとクラウドコンピューティングの時代においては、その他のデータストレージや検索手法が好まれ、伝統的なデータベースは次第に使われなくなっていきます。それによって、Webアプリケーションがより早く、反応の良いものに発展しています。
しかしながら、クラウドコンピューティングの外部には、SQLライクなアプローチもいくつか存在するものの、それらは、極めて限定される傾向があり、成熟したSQL ほど強力ではありません。特に、SQLが複雑なリレーションシップを優雅に表現できるのに対し、それらのアプローチでは対応できていません。

問題なのは、人々がSQLを考えるときに、根本的な間違いをしてしまうことです。たとえば、人々は、アクセス言語とストレージメカニズムを1つの同じものと考えます。しかしながら、それらは実際には別々に存在しうるのです。SQL
は、ただのアクセス言語であり、アクセスされるデータとそのリレーションシップを表現するのに使用されるものでありうるのです。バックエンド(実際にデー
タを扱ったり、保管したりするエンジン)
は、何にでもなりえます。

これが、本日、新しい Zoho テクノロジー をご紹介する理由です。慣れ親しんだSQL言語の利用を可能にすることで、クラウド上のデータへのアクセス方法における節目となるでしょう。
このサービスを、Zoho CloudSQL と名付けました。

Zoho CloudSQL は、ミドルウェアのテクノロジーです。これにより、ユーザは使い慣れたSQL言語を使って、Zohoに保管した自身のビジネスデータをやり取りすることができるようになります。
ユーザは、他のクラウドアプリケーションだけでなく、既存の業務用ソフトを通してでも、SQLによってZoho クラウドデータにアクセスすることができます。

Zoho CloudSQL は、外部アプリケーションとZoho内部に保管されたデータとの間の橋渡しとして、高レベルで動作します。
Zoho CloudSQL は、SQLでのクエリを受け取り、それを翻訳し、クエリを委託し、Zohoサービス間で結果を統合します。

Zoho CloudSQL Architecture Diagram

Zoho CloudSQL には、具体的には3つの優れた機能があります。:

  1. 第一に、ユーザはSQLを利用することで、他のクラウドアプリケーションやローカルの業務アプリケーションから、クラウド上のデータとのやり取りが可能になります。
  2. 複数の SQL 方言をサポートします。以下のような、すべての主要なSQL(主要でないものでもいくつか)をサポートします。例: ANSI, Oracle, SQL Server, IBM DB2, MySQL, PostgreSQL,Informix
  3. Zoho の JDBC/ODBC ドライバを利用すれば、開発者は、ローカルのデータベースに保管されたデータへのアクセスと同様に簡単に、クラウド上のデータにアクセス可能です。

当然、ユーザが次に聞きたい質問としては、 「Zoho CloudSQL を利用して、どの Zoho サービスにアクセスできるのでしょうか?」ということだと思います。
まず、オンラインレポート作成&ビジネスDBサービスであるZoho Reports」からスタートします。そしてまもなく、その他の関連のZohoサービスも続きます。
Zoho Reports (これまでは、Zoho DB & Reports と呼ばれていたサービスです)もまた、新しい Web API として追加されます。

Zoho CloudSQL はまた、「ユーザのデータを人為的に保持することで、ユーザを囲い込まない」という、Zohoのコミットメント(約束)を証明するものです。
ユーザは、Zohoを信頼してデータを預けることができます。なぜなら、ユーザは、明確なドキュメント方式やアクセス可能方法など様々な方法で、必要な場合にはいつでもデータを取り出すことができるからです。

そして、まだ疑問に思っているユーザのためにここで断っておきたいのですが、 「そうなのです、Zoho CloudSQL は開発者のためのサービスであり、エンドユーザのためのサービスではありません。」
ですので、もし、今回初めて SQL 方言や JDBC ドライバについて耳にしたというユーザにとっては、Zoho CloudSQL はおそらくは当面、関係のないサービスだといえます。
しかしながら、何でも始めるに遅過ぎるということはありません!Zoho CloudSQLに関する詳細はこちらです。是非ご参照ください。



なお、このブログは、本社(AdventNet Inc.)のZohoブログを翻訳・加筆したものです。
元の
記事(2008年12月2日投稿)はこちら (翻訳:清水)

Comments are closed.