SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

直近開催のイベントはこちら!

EnterpriseZine編集部ではイベントを随時開催しております

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

Oracle Database 12c メッタ斬り!

Oracle Database 12cを触ってみた。

001


さて、2013年7月、満を持して登場したOracle Database 12c。その後は、Oracleやその他のWebメディアなどから、この新製品についてさまざまな情報が発信されている。とはいえ、それらの情報は、現時点ではどちらかと言えばメーカー提供の「カタログチック」なものが多く、12cの実体に迫っているようなものはまだまだ少ない。ならば、DB Onlineでは、新しいOracle Database 12cの真の姿はいったいどんなものなのか、それに肉薄する情報を発信したいと考えた。そこで、Oracle ACEでもありOracle Databaseには精通しているインサイトテクノロジーの新久保浩二さん、さらには話が脱線しないようお目付役に日本オラクル 製品統括本部 テクノロジー製品技術本部 プリンシパルエンジニアの近藤暁太さんを招き、Oracle Database 12cの真の姿について話を伺った。進行役は谷川が務め、原稿起こしと記事執筆は加山恵美さんにお願いした。

プリミティブなところがごっそり変わったという印象ではない

 日本オラクル 近藤暁太さん(左)、DBオンライン 谷川耕一(中央)、インサイトテクノロジー 新久保浩二さん(右)

 谷川:7月にOracle Database 12cが国内提供開始となりました。12cの新機能や特徴についてざっくばらんに語っていきたいと思います。まずはマルチテナントアーキテクチャから。コンテナデータベース(CDB)やプラガブルデータベース(PDB)がまだよく分かっていません。どう考えればいいのかな。

 新久保:中身までは見ることができないので触った印象ですが、PDBはスキーマです。スキーマがあたかもデータベースのように振る舞っているかのように見えます。例えばライブラリのダンプ(*1)を見ると、PDBはスキーマの拡張のようだと感じています。

 近藤:PDBがスキーマと違う点はアプリケーションの実行環境であるということです。アプリケーションに必要なデータベース環境をPDBの中に閉じ込めて分けるというコンセプトになっています。PDBにアプリケーションの環境を閉じ込めて、テナントとして分けると移動しやすくなるという利点が生まれます。

 新久保:そうそう。Oracle DatabaseからPDBを見たらどう見えているのかな。

 谷川:PDBがスキーマの拡張に見えるというあたり、ユーザーはSQLをたたくとか操作すれば片りんを見ることができるの?

 新久保:いいえ、SQLやデータベースのレイヤでは見られません。ただメモリのダンプを取るとスキーマっぽく見えます。

 谷川:長年データベースをやっていてどうですかね?気持ち的には。

 新久保:違和感ないです。

 谷川:オラクルのメッセージとしては「マルチテナント」という新しいアーキテクチャを出したのだけど、手をかけて全く新しい機能を実装したというわけではないのか。もちろん手をかけていないとは言わないけど(笑)

 新久保:プリミティブなところがごっそり変わったという印象ではないですねえ。

 谷川:ひとつ疑問が。CDBでリソースを共有できるというけど、どこまで本当でしょうか?

 新久保:悩ましいです。マルチテナントアーキテクチャにおいて、共有か、非共有か。どちらと言うべきか。揺れる想いみたいなものが……。

 一同:(笑)

 新久保:データファイルは一部を除き非共有です。メモリは完全に共有。CPUも共有。でも、CPUは分ける方法が用意されているのに対して、メモリだと分ける方法はありません。分けたい時もあるんですよね。

 これまでの複数インスタンスの運用とマルチテナントの運用とは方向性が違います。そういう意味では設計が難しくなるかもしれません。単純にぼんとCDBを立て、PDBは最大252個まで積めますが、本当に最大限積んだら大変なことになりそう。

 谷川:ハードウェア的には「このくらい積まないとマルチテナントにする意味がない」というような目安はありますか?コア数とか、メモリとか。

 新久保:絶対値として数字を出すのは難しいですが、リソース的にはジャブジャブにあったほうがいいでしょうね。

 谷川:それこそExadataくらいに(笑)

 

*1)マルチテナント・アーキテクチャがスキーマっぽく見える件の補足

 11gR2で、スキーマの異なるオブジェクトに対して、同一SQL文を実行した際のLibrary Cacheのダンプと12cR1で、プラガブル・データベースが異なるオブジェクトに対して、同一SQL文を実行した際のLibrary Cacheのダンプを比較してみると、あたかも12cR1はプラガブル・データベースが11gR2までのスキーマ構造の拡張として扱われているように見える。

11gR2のカーソルのダンプ

 親カーソル抜粋

 LibraryHandle: Address=0x8f4edb988 Hash=6428dffc LockMode=0 PinMode=0 LoadLockMode=0 Status=VALD

   ObjectName: Name=select /* Welcome to JPOUG */ * from test

 子カーソルの依存オブジェクト部分の抜粋(KSHINKUBユーザーで実行)

 Dependency: num='1'

   Reference=0x80e76fc48 Position=37 Flags=DEP[0001]

   Handle=0x914e631f8 Type=TABLE(02) Parent=KSHINKUB.TEST

 子カーソルの依存オブジェクト部分の抜粋(KSHINKUB2ユーザーで実行)

 Dependency: num='1'

   Reference=0x80e73dc48 Position=37 Flags=DEP[0001]

   Handle=0x90dbdc3e0 Type=TABLE(02) Parent=KSHINKUB2.TEST

 * 11gR2以前は、スキーマが異なるオブジェクトは上記の様に"スキーマ"."オブジェクト"として表現される。

12cR1のカーソルのダンプ

 親カーソル抜粋

 LibraryHandle: Address=0x103b8e0048 Hash=6428dffc LockMode=0 PinMode=0 LoadLockMode=0 Status=VALD

   ObjectName: Name=select /* Welcome to JPOUG */ * from test

 子カーソルの依存オブジェクト部分の抜粋(プラガブル・データベースIQPDB01のKSHINKUBユーザーで実行)

 Dependency: num='1'

   Reference=0x103b96a700 Position=37 Flags=DEP[0001]

   Handle=0x103bd16850 Type=TABLE(02) Parent=IQPDB01.KSHINKUB.TEST

 子カーソルの依存オブジェクト部分の抜粋(プラガブル・データベースIQPDB02のKSHINKUBユーザーで実行)

 Dependency: num='1'

   Reference=0x103b8de438 Position=37 Flags=DEP[0001]

   Handle=0x103b9000c0 Type=TABLE(02) Parent=IQPDB02.KSHINKUB.TEST

 * 12gR1のマルチテナント・アーキテクチャでは、プラガブル・データベースが異なるオブジェクトは上記の様に"プラガブル・データベース"."スキーマ"."オブジェクト"として表現が拡張されている。

≪気になったら今すぐトライアル!≫
Oracle Database 12c トライアル・キャンペーン!

cap

Oracle Database 12cは、もうお試しになりましたか? 
Oracle Technology Networkでは、Oracle Database 12cのリリースを記念して、トライアル・キャンペーンを実施中です。 Oracle Database 12c 試用版ソフトウエアをお試しいただき、アンケートに回答していただいた方の中から、合計1,212名様にOracle Database 12cロゴ入りのスペシャルグッズをプレゼントします。Oracle Databaseを使用しているデータベースエンジニアの皆様、ぜひ挑戦してみてください!

Oracle Database 12cトライアル・キャンペーンに参加する!

次のページ
今回のマルチテナントの発想

この記事は参考になりましたか?

  • Facebook
  • Twitter
  • Pocket
  • note
Oracle Database 12c メッタ斬り!連載記事一覧

もっと読む

この記事の著者

谷川 耕一(タニカワ コウイチ)

EnterpriseZine/DB Online チーフキュレーターかつてAI、エキスパートシステムが流行っていたころに、開発エンジニアとしてIT業界に。その後UNIXの専門雑誌の編集者を経て、外資系ソフトウェアベンダーの製品マーケティング、広告、広報などの業務を経験。現在はフリーランスのITジャーナリスト...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

加山 恵美(カヤマ エミ)

EnterpriseZine/Security Online キュレーターフリーランスライター。茨城大学理学部卒。金融機関のシステム子会社でシステムエンジニアを経験した後にIT系のライターとして独立。エンジニア視点で記事を提供していきたい。EnterpriseZine/DB Online の取材・記事も担当しています。Webサイト:https://emiekayama.net

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/5095 2014/04/01 15:42

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング