Espresso Logicが同社のDBaaSサービス用のストアドプロシージャにRESTfulなエンドポイントを追加した。
Espresso Logicは企業向けにRESTfulなAPIを使ってDBaaSサービスを提供している。データベースのスキーマを分析し各テーブル向けのRESTエンドポイントを作成して、フィルタリングやソート、認証やページネーション、楽観的ロックを提供する。Espressoは近頃、データベースのストアドプロシージャのAPIを自動的に生成し、プロシージャをRESTのリソースとして公開する機能を発表した。呼び出しの戻り値はJSONで提供される。DBaaSとのやり取りはEspresso Designer(アカウントが必要)を経由して行われる。これはすべてのリソースに対してロールベースの安全なアクセスを提供する。データベースを使うには、開発者はSQLを使うのではなく、JavaScriptを使ってビジネスロジックを書く。
例えば、get_employee
ストア度プロシージャを呼び出しには次のURLをGET
する。
http://houston.d.espressologic.com/rest/abl/demo/v1/@procedures/get_employee
出力は次の通り。
{
"@metadata": {
"href": "http://houston.d.espressologic.com/rest/abl/demo/v1/@procedures/get_employee"
},
"name": "get_employee",
"remarks": "given an employee id and a number 'plus_one', adds one to the number and returns the employee info as well as picture, voice and icon",
"args": [
{
"name": "given_employee_id",
"type": "BIGINT",
"direction": "IN"
},
{
"name": "plus_one",
"type": "BIGINT",
"direction": "IN_OUT"
}
]
}
同社のCEOであり共同創立者であるR. Paul Singh氏によれば、次のようなデータベースの構成も対応している。
- 私たちはユーザの領域でユーザのデータベースに接続します。こうするために、ユーザはリバースSSHトンネルを使います。
- Amazon RDS(MySQL、SQL Server、Oracle)やAzure SQLなどさまざまなクラウドデータベースサービスに接続できます。
- 既存のデータベースから新しいデータベースを作りたいユーザのために、AWSのオプションとしてMySQLを提供している。近い将来にはもっと多くのオプションを追加する予定です。しかし、この機能は現在ベータ版です。
現時点では、EspressoのサービスはAWS上で動作しているが、同社によれば“近い未来に他のクラウドサービスも追加します。現在はMicrosoft Azureをサポートに対応するべく開発中“だ。オンプレミスで動作する企業向けのアプライアンスもある。