オブジェクト指向、Javaを取り入れた
新しい業界標準「SQL99」詳細解説
第三章 SQLJと今後の標準化動向(4)
今後のSQL標準化動向
SQL国際標準委員会は、次のSQL標準(開発コード名は「SQL4」)として次のような課題を検討している。
■コレクション型の拡張
SQL99でサポートした配列(ARRAY)型に加えて次のような型を追加する。
- SET型・・・・要素の順番に意味がないが、重複を許さない集合
- LIST型・・・要素の順番に意味があるが、重複を許す集合
■ オブジェクトリレーショナル機能の拡張
SQL99のオブジェクトリレーショナル機能は第一段階である。次のような機能が検討されている。
- 多重継承・・・副型が複数の上位型を持てるようにする。
- 型移行・・・・例えば表階層にある社員表のある社員が、その副表の管理職社員表に移るときどのように行うべきか。現在の仕様では、いったん上位表からその社員の行オブジェクトを削除してから、副表にあらためてその社員の行オブジェクトを挿入しなければならない。
■SQL/MED
SQL/MED(SQL/Management of External Data,SQL/外部データ管理)は、DBMSの外にある様々なファイルや非リレーショナルデータベースに対してSQL文によって管理したり、アクセスを可能にしようという試みである。まだ草案を審議中の段階であるが、米国のベンダーを中心に意欲的に標準化作業が進められている。
SQL/MEDは次の三つの構成要素からなる。
- DATALINK型
- 抽象表(外部ファイルを表として扱う)
- 抽象LOB(外部ファイルをLOB型データとして扱う)
DATALINK型は、外部ファイルを位置づけるURLをコード化したもので、外部ファイルがひとつのオブジェクトしてあたかもデータベースの中に格納されているかのように扱うことを目的としている。アプリケーションは、SELECT文を使用してDATALINK型の列を読込んで、適切な外部ファイル名を獲得し、その内容を参照したり操作するのは従来のファイルAPIを使用する。
DBMSは、どこに外部ファイルの場所を知っているので、GRANT文によって機密保護を制御したり、データベースと一緒にバックアップを作成するなどの統合的な管理が期待できる。
図40 SQL/MEDにおけるDATALINK型による外部ファイルアクセス
抽象表は、SQLサーバ(DBMS)の管理外の外部ファイル、非リレーショナル編成のデータベース、あるいは他社ベンダーのデータベース中の表を「外部表」として定義する。そしてSQLサーバと外部サーバとの間のAPIを標準化することによって、アプリケーションが発行するSQL文の目的表が、自分のデータベース中に存在するのか、それとも外部表であるのかを意識させないような透過性を実現しようというのである。
このAPIをアプリケーションが知る必要はないが、もしSQLサーバと外部サーバがそのような機能を持てば、SQL文による非リレーショナルデータベースへのアクセスや、他社ベンダー製品間の表の結合、さらにはリレーショナルな表と非リレーショナルなファイルあるいは階層構造データベースとの間の結合も可能となり、応用範囲が一層広がることが期待できる。
■OLAP機能の拡張
OLAPに今後追加されようとしている機能としてウィンドウがある。ウィンドウとはデータの部分的な区分を示し、その中での順序づけや総計を指定することができるものである。またその他のOLAP機能としてRANK、DENSRANK、ROWNUMBERなどの関数も検討されており、これらをウィンドウと組み合わせて使用することも考えられている。
自由度が高まるデータアクセス
この連載では、SQL99の数多い新機能のなかから、興味深い機能をできるだけ具体例を挙げて解説したつもりであるが、ご理解いただけただろうか。筆者らが3回の連載を通じて感じるのは、SQL言語は、最早、リレーショナルモデルだけのデータベース言語ではなくなったということである。オブジェクト・リレーショナルに進化・発展したことによって、SQLアプリケーションを適用できる分野が格段に広がったと思われる。その典型例はマルチメディアアプリケーションであろうし、SQLJによるJavaアプリケーションであろう。SQLなしに新しいアプリケーションの開発はありえないとさえ思える。また従来、リレーショナルモデルの枠に束縛されていたデータベース設計も、正規化という基本を踏まえながらも、自由度が一層高まるだろう。今回の連載記事が、読者の今後のSQLアプリケーションやデータベース設計の指針を作成するのに少しでもお役立てていただければ幸いである。
最後に、SQL99のフレームワーク、ファウンデーション、PSM(永続格納モジュール)、CLI(コールレベルインタフェース)、言語バインディング、およびSQL/マルチメディア・地理情報(SQL/MMスペーシャル)が1999年11月に正式に国際標準化されたとことをお伝えして連載の終わりとしたい。
とびら 新しい業界標準「SQL99」詳細解説 SQL99の背景と特徴 |
第二章 柔軟さを増したデータ構造
ユーザー定義可能な新しいデータ |
第三章 ストアドプロシージャとSQLJ クライアント/サーバ環境のための機能強化
|
「Master of IP Network総合インデックス」 |
- 完全HTTPS化のメリットと極意を大規模Webサービス――ピクシブ、クックパッド、ヤフーの事例から探る (2017/7/13)
2017年6月21日、ピクシブのオフィスで、同社主催の「大規模HTTPS導入Night」が開催された。大規模Webサービスで完全HTTPS化を行うに当たっての技術的、および非技術的な悩みや成果をテーマに、ヤフー、クックパッド、ピクシブの3社が、それぞれの事例について語り合った - ソラコムは、あなたの気が付かないうちに、少しずつ「次」へ進んでいる (2017/7/6)
ソラコムは、「トランスポート技術への非依存」度を高めている。当初はIoT用格安SIMというイメージもあったが、徐々に脱皮しようとしている。パブリッククラウドと同様、付加サービスでユーザーをつかんでいるからだ - Cisco SystemsのIntent-based Networkingは、どうネットワークエンジニアの仕事を変えるか (2017/7/4)
Cisco Systemsは2017年6月、同社イベントCisco Live 2017で、「THE NETWORK. INTUITIVE.」あるいは「Intent-based Networking」といった言葉を使い、ネットワークの構築・運用、そしてネットワークエンジニアの仕事を変えていくと説明した。これはどういうことなのだろうか - ifconfig 〜(IP)ネットワーク環境の確認/設定を行う (2017/7/3)
ifconfigは、LinuxやmacOSなど、主にUNIX系OSで用いるネットワーク環境の状態確認、設定のためのコマンドだ。IPアドレスやサブネットマスク、ブロードキャストアドレスなどの基本的な設定ができる他、イーサネットフレームの最大転送サイズ(MTU)の変更や、VLAN疑似デバイスの作成も可能だ。
|
|