Morphは、SQLやPythonなどの分析のためのソースコードを簡単に管理したり、実行結果を活用できるようにするためのフレームワークをベースに構築されています。

フレームワークは、CLIとそれに対応するディレクトリ構成から構成されています。

CLI

Morph上のソースコードの実行は全てCLIを通じて行われます。それぞれのSQL, Pythonの関数の名前をコンパイルして依存関係を解決して実行します。

CLIはワークスペースのVMにインストールされているため、UI上から操作をする以外にコマンドを直接実行することもできます。

morph run example_sql_cell.sql

ディレクトリ構成

CLIからコンパイルをするためには、Morphのフレームワークに合致したディレクトリ構成である必要があります。morph_project.ymlで設定値を編集することによってデフォルトのディレクトリを変更することも可能です。

以下に重要なディレクトリについて説明します。

canvases

canvasesには、**.canvas.jsonというファイルが格納されます。データフローの可視化を行うためのキャンバスの機構を使用するためのディレクトリです。

キャンバスの詳細については、こちらのドキュメントを参照してください。

src

srcは、ソースコードを配置するためのディレクトリです。.sql, .py, .mdx, .vg.jsonといったファイルが格納されます。

このsrc上にあるソースコードはCLIによりコンパイルをされ実行可能な形にパースされます。

templates

テンプレートとしてユーザーが独自に定義したソースコードを配置するためのディレクトリです。

テンプレートの詳細については、こちらのドキュメントを参照してください。