Oracle DatabaseがGraalVMを搭載、DB上でJavaScriptを実行可能。Pythonやほかの言語もサポートしていくと

2021年1月15日

オラクルは、最新データベース「Oracle Database 21c」を含む「Oracle Autonomous Database」を、Oracle Cloud上で無料で利用できる「Always Free」で提供開始したと発表しました

Oracle Database 21cは先月登場しており、データの改ざんに対して強靭な仕組みを備えた「ブロックチェーンテーブル」や、JSONデータをネイティブに格納するJSONデータ型、インメモリ機能の拡張による性能向上などがはかられています。

参考:Oracle Database 21c正式版が登場。データベース内でJavaScript実行可能、改ざんできないブロックチェーンテーブルなど新機能

Graal Multilingual Engineを搭載、Pythonもサポート予定

そのなかでも注目の新機能が、Oracle DatabaseにGraalVMをベースとした「Graal Multilingual Engine」を搭載し、データベース上でJavaScriptを実行可能にしたことです。

これにより、SQLやPL/SQLなどから、あらかじめ登録しておいたJavaScriptのコードを実行して結果を得ることなどが可能になります。

JavaScriptコード内からもデータベースにアクセスでき、その際にはJavaScriptのデータ型はOracleデータベースのデータ型に自動的にマッピングされます。

GraalVMは、JavaおよびJavaVM上でサポートされているScalaやKotlinなどの言語、JavaScript、Python、Ruby、R、さらにLLVMでサポートされているCやC++など、さまざまなプログラミング言語を単一の仮想マシンでサポートするという多言語対応の仮想マシンです。

参考:オラクル、JavaやJavaScript、Ruby、Pythonなど多言語対応を単一ランタイムで実現する「GraalVM」をオープンソースで公開。Twitterが本番環境で採用

このGraalVMをベースとした「Graal Multilingual Engine」も当然ながら多言語サポートが可能になっています。

現時点でオラクルはJavaScriptだけをOracle Database上のGraal Multilingual Engineで正式にサポートしていますが、Pythonのサポート計画があることを明らかにしており、それ以外の言語についても追加していくとしています。

ちなみにOracle Databaseは以前からJavaVMを搭載し、Javaの実行が可能になっていました。今回の「Graal Multilingual Engine」は、このJavaVMとは別の実行エンジンとして搭載されており、Javaもいままでと同様に実行可能になっています。

さまざまな機能が集約されていくOracle Database

オラクルはOracle Databaseにおいて、OLTPはもちろん、カラム型データベースによるOLAP処理、JSONデータやXMLデータ、スペイシャルデータ、グラフ型データ対応など、1つのデータベースにさまざまな機能を集約したコンバージドデータベース(Converged Database)と呼ばれる方針で開発を進めています。

Graal Multilingual Engineの搭載により、データモデルだけでなく、プログラミング言語の面でもOracle Databaseへの機能集約がさらに強化されていくと言えそうです。

このエントリーをはてなブックマークに追加
follow us in feedly




カテゴリ

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


最新記事10本