2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

enebularAdvent Calendar 2023

Day 12

enebularのデータストア機能を試してみた

Posted at

はじめに

enebularのクラウド実行環境でSteinと似た機能(オレオレStein)を実行しています。

フロー

スクリーンショット 2023-12-10 13.36.32.png

クラウド実行環境の利用制限

クラウド実行環境は利用に制限があります。

スクリーンショット 2023-12-10 16.39.11.png

フリープランの場合、毎分実行してもHTTPリクエスト回数の上限以内(60 * 24* 30 = 43,200 < 50,000)ですが、フローの実行時間の合計を24時間以内にする必要があり、現在は4分毎の実行で利用上限以内に収まっています。

スクリーンショット 2023-12-10 13.38.38.png

ところどころにヒゲがあるのはクラウド実行に失敗した場合、次回以降の実行になるため、前回の実行からの経過時間を表しています。

スクリーンショット 2023-12-10 18.41.25.png

データストア機能

SteinはGoogleスプレッドシートにデータを永続化させていますが、enebularでもデータストア機能がリリースされ、enebularの中でデータを永続化することができるようになりました。

(うれしい気づき)プロジェクト作成時にプライベートノードが自動で追加されるようになった

以前はプロジェクトを作成した後にクラウド実行環境用のプライベートノードを手動で追加する必要がありましたが、現在はプロジェクト作成時にデフォルトで追加されるようになりました。
データストア用のプライベートノードも追加されます。

スクリーンショット 2023-12-10 13.39.24.png

フローエディタのパレットに表示されるデータストア用のノードです。

スクリーンショット 2023-12-10 16.50.24.png

データストア機能の利用制限

データストア機能もクラウド実行環境と同様に利用に制限があります。

スクリーンショット 2023-12-10 16.39.43.png

Stein(Googleスプレッドシート)からの置き換え検討

現在は4分毎に実行しているので、フリープランの場合は上限を超えてしまい(12 * 24 * 30 = 10,800 > 10,000)、Googleスプレッドシートからの置き換えは難しいです。

テーブルの作成

データストアを使用する場合、最初にテーブルを作成します。

今回はInfoMotionで使用しないため、カスタム設定を選択しました。

スクリーンショット 2023-12-10 13.42.06.png

メインキー名を入力して、作成ボタンを押します。

スクリーンショット 2023-12-10 20.08.50.png

データ検索画面からデータストアの内容を確認・追加・削除・更新できます。

スクリーンショット 2023-12-10 20.11.06.png

クラウド実行環境からデータストアへ書き込み

サンプルフローです。

スクリーンショット 2023-12-10 17.37.13.png

データストアのデータを取得・更新する

サンプルフローです。

スクリーンショット 2023-12-10 17.37.21.png

バックアップ・リストア

データストアの設定メニューにバックアップ・リストアの機能があります。

スクリーンショット 2023-12-10 20.25.03.png

バックアップボタンを押すと、バックアップファイルのリンクがメールで送られてきます。

スクリーンショット 2023-12-10 20.26.49.png

メール本文のリンクをクリックするとzipファイルがダウンロードされます。

スクリーンショット 2023-12-10 20.28.26.png

zipファイルを解凍すると、json.bakファイルが出力されます。

スクリーンショット 2023-12-10 20.28.31.png

中身を確認するとbase64で符号化されています。

$ cat table-20231210-20231210142420-1.json.bak 
W3sibGFiZWwiOiIyIiwidGltZXN0YW1wIjoxNzAyMTg1NTgwNTQxfSx7ImxhYmVsIjoiMSIsInRpbWVzdGFtcCI6MTcwMjE4NTM5OTI1NX0seyJsYWJlbCI6IjMiLCJ0aW1lc3RhbXAiOjE3MDIxODU3MjUxMDF9LHsibGFiZWwiOiJ0ZXN0IiwidGltZXN0YW1wIjoxNzAyMTg1NjUyMzM3fV0=

base64でデコードするとjsonデータを確認できます。(macOSのターミナルで確認)

$ cat table-20231210-20231210142420-1.json.bak | base64 -D
[{"label":"2","timestamp":1702185580541},{"label":"1","timestamp":1702185399255},{"label":"3","timestamp":1702185725101},{"label":"test","timestamp":1702185652337}]

リストアは管理画面でjson.bakファイルをドラッグ&ドロップするだけです。

スクリーンショット 2023-12-10 20.32.57.png

Firefoxだとテーブル表示が崩れる(Chromeは問題なし)

enebularの管理画面でデータストアのデータ検索画面で、Firefoxの場合、テーブル表示が崩れてしまうので、Chromeを使用します。(サポートへ問い合わせ中)

(Firefoxの場合)
スクリーンショット 2023-12-10 16.47.42.png

(Chromeの場合)
スクリーンショット 2023-12-10 17.25.59.png

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?