[新製品・サービス]
クラウドDB「Oracle MySQL HeatWave」にマシンラーニング機能、SQLを介して学習・推論
2022年3月30日(水)日川 佳三(IT Leaders編集部)
米オラクルは2022年3月30日、クラウド型データベース「MySQL HeatWave」の機能拡張について発表した。OLTP(トランザクション処理)とOLAP(データ分析)に加えて、格納データを利用したマシンラーニング(機械学習)機能が備わった。専用のSQL関数をインタフェースとして、学習、推論、根拠の説明(結果に対する列の影響度の提示)が可能である。
オラクルの「Oracle MySQL HeatWave」は、Oracle Cloud上で利用可能な、MySQLデータベースシステムである。今回の機能強化では、格納したデータに対するマシンラーニング(機械学習、ML)機能が備わった。新たに用意した専用のSQL関数をインタフェースとして、学習、推論、根拠の説明(結果に対する列の影響度の提示)が可能である(図1)。
拡大画像表示
MySQL HeatWaveの特徴は、高速に動作すること。インメモリー型で動作する分散データベースで、MySQLをMySQL HeatWaveに置き換えることで処理が高速になる。完全互換なので、アプリケーションからはMySQLと同じように利用できる(関連記事:日本オラクル、クラウドDB「MySQL HeatWave」の運用自動化機能をアピール)。
分散型のアーキテクチャを採用している。OLTP(トランザクション処理)に使う通常のMySQLノード(InnoDB)と、OLAP(データ分析)に使うインメモリー型のクラスタノード(HeatWave)で構成する。InnoDBで更新したデータは、データ分析用のHeatWaveクラスタに透過的に伝達する。1つのデータベース基盤でOLTPとOLAPを兼ねるので、OLTPデータベースからETLツールでOLAPデータベースにデータを移行して分析するといった手続きが不要である。
2021年8月には、MySQL HeatWaveの追加機能として、チューニングなどの運用をマシンラーニングによって自動化する「MySQL Autopilot」を実装した。メモリー使用量、ネットワーク負荷、実行時間をAIモデル化し、プロビジョニング、データの読み込み、クエリー実行、障害処理などを自動化する。時間の経過とともにシステム性能が継続的に向上する(関連記事:オラクル、インメモリー分散DB「MySQL HeatWave」の運用をマシンラーニングで自動化)。
SQL関数をインタフェースに学習・推論・説明が可能
今回の機能強化では、格納データを利用したマシンラーニング機能を搭載した。MySQL HeatWaveに格納してあるデータを対象に、データの学習と推論が可能である。これにより、MySQLデータベースからデータを抽出して別のシステムに移す、というプロセスが不要になった。データのサイロ化や分散、データの移動にともなうデータ分析処理の遅れを防げる。
マシンラーニングのためのインタフェースはSQLである。専用のSQL関数を介して、データの学習、推論、根拠の説明(どの列が結果にどの程度影響を与えたか)ができる。作成可能なAIモデルは、教師あり学習の分類モデルと回帰モデルである。
実際の使い方(SQL関数の使い方)は図2の通りである。データの学習には「ML_TRAIN」関数を使う。テーブル名や分類対象の列名(フィールド名)などを指定する。データの推論には「ML_PREDICT_ROW」関数または「ML_PREDICT_TABLE」関数を使う。説明には「ML_EXPLAIN_ROW」関数または「ML_EXPLAIN_TABLE」関数を使う。
拡大画像表示
図2の例では、「顧客が定期預金を作成するか」を、最新の勧誘の電話の状況から予測している。Prediction列が「Yes」になっている顧客が、定期預金を作成すると予測した顧客である。結果に影響を与えた列名(特徴量)を調べたところ、duration(勧誘電話の通話時間)とpmonth(最後に勧誘電話をかけた月)の影響度が高く、balance(預金残高)の影響度は低いことが分かった。
●Next:MySQL HeatWaveのマシンラーニング以外の機能強化
会員登録(無料)が必要です
- 1
- 2
- 次へ >