JPOUG> SET EVENTS 20140907 発表資料の補足説明

この記事は JPOUG Advent Calendar 2015 の23日目のエントリです。

  • はじめに

今回のエントリはJPOUG> SET EVENTS 20140907 で発表した資料 DB思い出話いろいろ(仮) についての補足説明です。
タイトルは超ゆるいのですが、前半はORACLE MASTERや書籍などの紹介、後半にはDB移行やトラブル対応やパフォーマンスチューニングなどOracle Databaseでのお仕事経験から選んだ事例紹介とわりと役に立つ内容もあるかと思いますので、伝えたかったことや更新情報を交えて紹介します。

  • きっかけ

Twitterで @wrcsus4 さんが

実はあと1枠空きがございます、どなたか記事を書きませんか?(クロスエントリなどOK) JPOUG Advent Calendar 2015 https://jpoug.doorkeeper.jp/events/33345

とのつぶやきに @yoshikaw さんがクロスエントリで2回目書きましょか?と返事していたので、それなら私が書いてみようかとほんと気軽に申し込んでしまいました。が、22日目までのエントリを見てみなさんガチに実用的なことが多くて少々ビビッてます(^^;)が、私らしくむかしばなしを交えて他の方とは違った雰囲気を味わっていただければと思います。

  • about me

このブログの一つ前のエントリ JPOUG> SET EVENTS 20140907 でお話した「DB思い出話いろいろ(仮)」の資料をslideshareで公開しました。 に書いているように、Twitterスクリーンネーム(と言うんですんね。Twitter IDかと思ってました)の@kitayama_tで、昨年の9月のJPOUGイベントの最初のセッションで発表しました。(ちなみに同じ時間帯には篠田さんの12c新機能解説があって大人気で、私のセッションに来ていただいた方はとても貴重で嬉しかったです。ありがとうございました。)
イベントの様子はDB Onlineで加山恵美さんが 「JPOUG> SET EVENTS 20140907」フォト・レポート で記事と写真が掲載されています。発表は個人の立場でおこなったためTwitterスクリーンネームを使いましたが、特に名前を隠しているつもりもないので記事では本名が記載されています(^o^)。

超まじめな仕事モードの写真は所属と共にこちらに載ってます(こちらも加山恵美さんの記事)。ユーザ登録要のページなので気が向けばご覧ください。
http://itpro.nikkeibp.co.jp/atcl/column/15/052800134/052900001/?ST=system&P=2

  • 目次

こんな内容を書きました。

    • 自己紹介
    • Oracle Databaseの思い出
    • ORACLE MASTER
    • 書籍などの技術情報
    • 事例紹介:DB移行
    • 事例紹介:トラブル対応
    • 事例紹介:パフォーマンスチューニング

以下は各項目で解説というか思うところをば。

  • 自己紹介

最初は自己紹介で、お仕事の経歴と社外活動について。お仕事の経歴は変わらずデータベースがメインで、それに加えて中学生の頃から触っているコンピュータそのものが大好きで現在に至っています。自分では明示的に意識してませんでしたが、修士論文の題が「データベースシステムの並列アクセス方式に関する研究」だったり、今の会社に転職する時に受ける予定だった他の2社がOracleとSunだったりで、最近はデータベースが専門と自覚するようになりました(^o^)
社外活動とかコミュニティなどでかかわっているデータベースはOracle DatabaseとPostgreSQLMySQLでして、データベース自体もそれに関わっている人たちもそれぞれ強い個性と違いがあって楽しいです。そうそう、仕事では自社DBのVerticaも関わってます。NonStop SQL MX 1.5とかUnify 2000 とか思い出しましたが、それは横によけときます。

次のOracle Databaseの思い出は、タイトルの「DB思い出話いろいろ(仮)」に沿ってOracle Databaseの歴史を自分の経験とともにレアグッズや未だに覚えているエピソードを交えて紹介しました。一番のエピソードはSONY VAIO 505XでOracle Database8 Enterprise Edition for Linuxを動かしたことですね。メモリ64MBの貧弱なノートパソコンで起動した時は感動しました。今はメモリが2TBとか12TBとかでデータがオンメモリな状態がメインなのでまったく違う世界です。
次にあらためてOracle Databaseに対する「よくできたデータベース」で色んな機能を実装して他のデータベースの目標となって追いかけるという想いは変わりません。12c新機能に触れて「こんな機能まで実装してるの?」と思うこともしばしば。
統計情報はあいかわらず重要なポジションを占めていて、安全に運用するには「固定」したくなりますよね〜、人間古いからかな。10gでコストベース必須となってその後の11g、12cの機能改善はいかに暴れ回る実行計画をおとなしく制御して使いやすくするかだと感じます。
Index Only Scanもあいかわらずインデックスを使ってる限りは強力なチューニング手法だと思います。今から考えると、Index Only Scanは列志向DBそのものという気がしています。

今年(2015年)、久しぶりにORACLE MASTERを受験しました。どのくらい久しぶりかと言えば、資料に書いている日付を見ると一番最後が2010/10/15なので5年ぶりですね。
会社で1Z0-060のバウチャーチケットを配っていたので、つい手を上げてしまいました。バウチャーチケットの期限が近づいてやばくなって、やっとこさ準備を始めてシステム・テクノロジー・アイの代田佳子さんの黒本(Gold Oracle Database 12c Upgrade「新機能」編(オラクルマスター教科書))を買ってiStudy Onlineやって準備してチャレンジしました。
残念ながら結果は不合格。原因は一言で言えば勉強が足りてなくて準備不足で、本当に理解しているレベルまで達していなかったのが原因ですが、落ちるのは悔しいですね。落ちた直後は再受験して受かるつもりでしたが、再受験まで2週間という間が空くのがまた微妙な設定で、落ちた直後の悔しさと間違えた問題を覚えているのが2週間でほぼ薄れてしまうので、きちんと身につける必要があるのを実感しています。(結局まだ受けてません)

ちなみにOracle DBエンジニアの経験を積めば積むほど実環境への新機能の適用には慎重になることもあり、デリバーするエンジニアとして新機能を学ぶモチベーションは正直言ってほぼないです。今回強制的に試験を受けて感じたのは、ともかく試験範囲を一通り勉強することで、これから先もまったく触ることがないかもしれない機能なども触れて理解する機会としては有用です。資格を持っていても実際出来るかどうかはありますが、持ってないよりも持っていれば少なくとも知っている(いた)証明になります。
後、ちょっと横道にそれますが、今年はRed Hatの認定試験もいくつか受けました。4日間の講習の後に実技試験が1日用意されてます。実際にPCを触って環境設定をこなす実技試験はORACLE MASTER Platinum以来で、画面から選択肢を選ぶ知識試験とは違った技能が求められて苦しいながらもかなり楽しかったです。試験を準備して採点するほうも受けるほうも大変ですが、単なる知識の確認だけでなく、実際に操作して設定などが出来る実務技術の一定レベルの確認というか証明には有用だと感じました。

  • 書籍などの技術情報

最近のOracle Databaseの書籍では「Oracleの現場を支える100の技」は良い書籍だと思います。
また製品固有ではないデータベースエンジニアの基礎知識として、奥野さんの「理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL (WEB+DB PRESS plus) 」はお勧めです。あまり得意でないSQLはミックさんのを選べば間違いないです。

  • 事例紹介:DB移行

日経SYSTEMSに記事が載った移行事例で、実はこの項目がものすごく内容が充実してまして、タイトルに「DB移行事例解説」と入れたら集客違ってたかもと思います。
内容は9i on Windowsから11g on HP-UXへの一括データ移行で、エンディアンの異なるDBをDataPumpと従来型Import/Exportの併用でいかに工夫したかの項目が詰まっています。
ちなみにData Pumpって本当に速いですね。今年は初めてNETWORK_LINKオプションを使ったData Pumpでのデータ移行しましたが速くて便利でした。
こういう事例がMySQLPostgreSQLのようにSlideshareなどで広まったらいいなと思っています。

  • 事例紹介:トラブル対応

これまでの経験から紹介したいものを3つを選んで説明しています。どのトラブル対応も飲み会のネタにできる印象深い思い出です。ここには書きにくいトラブルも色々ありますが、それはまたご飯でも食べながら

  • 事例紹介:パフォーマンスチューニング

経験はたくさんありますが、事例としては1つだけになってしまいました(たぶん息切れですね、資料のこのあたりは明け方でしたw)。とはいえ「性能検証/DBパフォチューで注意すべき点」でこれだけは気をつけて欲しいことをメモしています。

ということで、昨年のイベント資料をネタに書いてみました。資料と同じく最後のほうは息切れ感ありありですが、ここまで読んでいただいてたらとても嬉しいです!