SHOEISHA iD

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

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

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

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

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

お申し込み受付中!

週刊DBオンライン 谷川耕一

弱点だったMySQLのデータ分析処理がOCI上のアドオン機能で大幅に高速化できた理由

 Database as a Service(DBaaS)を利用するのが、当たり前となりつつある。各クラウドベンダーのサービスラインナップには、さまざまなデータタイプに対応するデータベースのマネージドサービスがあり、その中にはMySQLをベースにしたものも多い。MySQLの本家Oracleでは、Gen2と呼ぶ新しいOracle Cloud Infrastructure(OCI)で、2020年9月からMySQLのDBaaSの提供を開始した。

MySQLのデータ分析処理という弱点をOCI上のアドオン機能で解消

 MySQLのDBaaSで後発となったOracleだが「他社のMySQLベースのサービスよりも安価なDBaaSを提供しています」と言うのは、日本オラクル MySQL Solution Engineering Director Asia Pacific & Japanの梶山隆輔氏だ。MySQLはオープンソースソフトウェアで、現在はOracleが開発、公開しているデータベース製品だ。他のクラウドベンダーでは、MySQLに何らか手を入れ自社サービスとして提供しサポートしている。

「Oracleは開発ベンダーとして、データベースの中まで深くサポートできます。そのため脆弱性についても、もっとも早く対応します」と梶山氏。他社は、Oracleが対応してから手を入れた自社製品とすり合わせて対処することとなり、ここは開発ベンダーとしてのOracleに優位性がある。

 MySQLはリレーショナルデータベースとしてOLTPを得意とするデータベースで、Webアプリケーションやネットワークゲームなどの裏側でよく使われている。「他にもKDDIのモバイルサービスのインフラなど、世界中で数多く使われています」と梶山氏。OLTPに強みはあるが、分析系の処理はあまり得意ではなかった。そのためデータ分析をしたければ、MySQLからETLツールなどでデータ抽出し、別途分析専用のデータベースにデータを転送し利用する使い方が多い。

 この構成ではETLツールや分析用データベースのライセンスコストが別途必要であり、それらのメンテナンスの手間もある。さらにETLでのデータ転送はバッチ処理なので、リアルタイムなデータ分析はできない。このMySQLの分析系の弱点を克復するため、Oracleは新たに分析エンジン「MySQL Analytics Engine」を追加した。これはOCI上で利用できるサービスで、MySQLのDBaaSのアドオンモジュールとして利用する。

資料提供:日本オラクル[クリックして拡大]

 Analytics Engineを追加しても、アプリケーションからは同じMySQLに見える。「重たい分析クエリだけを裏でAnalytics Engineが処理し、OLTPはこれまで通りInnoDBが処理します。そのため、アプリケーションの変更は全く必要ありません」と梶山氏。内部的にはMySQLのオプティマイザーが、SQL文を見てどのエンジンで処理するかを判断し振り分ける。

 Analytics Engineは、分析処理に向いたカラム型でインメモリにデータを持ち高速に処理する。結果はMySQLに返され、アプリケーションからは後ろ側にあるAnalytics Engineは見えないのだ。

資料提供:日本オラクル[クリックして拡大]

 このAnalytics EngineはOCI専用のサービスであり、オープンソースソフトウェアとしては公開していない。しかしながらAnalytics Engineの技術はOracleの研究開発部門「Oracle Lab」の成果で、仕組みやアルゴリズムなどは論文の形で公開されている。そのため論文内容に沿って、自分で同様なものを開発することはできることになる。

 Analytics Engineではたとえば、ジョインされる可能性の高いカラムを機械学習により判断して自動実行するなど、より高速な処理を実現するために機械学習技術もさまざまなところで活用されている。

次のページ
ETLなしに1つのMySQLでOLTPも高速な分析処理も可能に

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

  • Facebook
  • Twitter
  • Pocket
  • note
週刊DBオンライン 谷川耕一連載記事一覧

もっと読む

この記事の著者

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

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

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

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

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/13843 2021/01/21 10:00

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング