SQLFlow は、SQL プログラムを Kubernetes 上で実行されるワークフローにコンパイルするコンパイラです。SQL 構文を拡張することで、トレーニング、予測、モデル評価、モデル解釈、カスタムジョブ、数理計画などの AI タスクをサポートします。
プロジェクトアドレス: https://github.com/sql-machine-learning/sqlflow
SQLFlow は、従来の機械学習開発における課題を解決します。
SQLFlow により、SQL スキルを持つエンジニアは高度な ML アプリケーションを開発できます。
サポートされるデータベースシステム:
サポートされる機械学習フレームワーク:
SQLFlow は標準 SQL 構文を拡張し、機械学習関連のキーワードとステートメントを追加することで、ユーザーが SQL で直接以下を実行できるようにします。
TO TRAIN
)TO PREDICT
)SELECT *
FROM iris.train
TO TRAIN DNNClassifier
WITH model.n_classes = 3, model.hidden_units = [10, 20]
COLUMN sepal_length, sepal_width, petal_length, petal_width
LABEL class
INTO sqlflow_models.my_dnn_model;
SELECT *
FROM iris.test
TO PREDICT iris.predict.class
USING sqlflow_models.my_dnn_model;
SQLFlow の全体的なアーキテクチャは、以下の特徴を備えています。
出力は、Kubernetes クラスタ上で分散実行される Argo ワークフローであり、以下を保証します。
Microsoft SQL Server: 機械学習サービスを提供しますが、外部スクリプトとして R または Python が必要
Teradata SQL for DL: RESTful サービスを提供し、拡張された SQL SELECT 構文から呼び出すことができます
Google BigQuery: CREATE MODEL
ステートメントを通じて SQL で機械学習を有効にします
SQLFlow の利点は次のとおりです。
SQLFlow は完全なオープンソースエコシステムを備えています。
SQLFlow は、特に以下のシナリオに適しています。
SQLFlow は、SQL と AI を完璧に組み合わせることで、データ専門家にとって強力で使いやすい機械学習プラットフォームを提供します。機械学習の使用のハードルを下げるだけでなく、クラウドネイティブアーキテクチャを通じてエンタープライズレベルの拡張性と信頼性を保証します。データワークフローに機械学習機能をシームレスに統合したい組織にとって、SQLFlow は理想的な選択肢です。