データベース内の機械学習をサポートするトップデータベース

更新日: 20 年 2021 月 XNUMX 日
データベース内の機械学習をサポートするトップデータベース

2020年XNUMX月の記事「クラウド機械学習プラットフォームの選び方」で、プラットフォームを選択するための最初のガイドラインは「データに近づきなさい」でした。 光の速度が伝送速度を制限するため、遅延を低く抑えるには、コードをデータの近くに保つ必要があります。 結局のところ、機械学習、特にディープラーニングは、すべてのデータを複数回処理する傾向があります(そのたびに、 時代).

当時、非常に大きなデータセットの理想的なケースは、データがすでに存在するモデルを構築することであり、大量のデータ送信が不要であると述べました。 いくつかのデータベースは、限られた範囲でそれをサポートしています。 次の自然な質問は、どのデータベースが内部機械学習をサポートしているか、そしてどのようにそれを行うかということです。 これらのデータベースについてアルファベット順に説明します。

Amazonレッドシフト

Amazon Redshiftは、既存のビジネスインテリジェンスツールを使用してすべてのデータを簡単かつ費用効果の高い方法で分析できるように設計された、管理されたペタバイト規模のデータウェアハウスサービスです。 数百ギガバイトからペタバイト以上の範囲のデータセット用に最適化されており、1,000テラバイトあたり年間XNUMXドル未満のコストです。

Amazon Redshift MLは、SQLユーザーがSQLコマンドを使用して機械学習モデルを簡単に作成、トレーニング、デプロイできるように設計されています。 RedshiftSQLのCREATEMODELコマンドは、トレーニングに使用するデータとターゲット列を定義し、同じゾーン内の暗号化されたAmazonS3バケットを介してトレーニングのためにデータをAmazonSageMakerAutopilotに渡します。

AutoMLトレーニングの後、Redshift MLは最適なモデルをコンパイルし、それを予測SQL関数としてRedshiftクラスターに登録します。 次に、SELECTステートメント内で予測関数を呼び出すことにより、推論のためにモデルを呼び出すことができます。

まとめ:Redshift MLは、SageMaker Autopilotを使用して、S3バケットに抽出されるSQLステートメントを介して指定したデータから予測モデルを自動的に作成します。 見つかった最良の予測関数は、Redshiftクラスターに登録されています。

ブレイジングSQL

BlazingSQLは、RAPIDSエコシステム上に構築されたGPUアクセラレーションSQLエンジンです。 オープンソースプロジェクトおよび有料サービスとして存在します。 RAPIDSは、NvidiaによってインキュベートされたオープンソースソフトウェアライブラリとAPIのスイートであり、CUDAを使用し、ApacheArrow列メモリ形式に基づいています。 RAPIDSの一部であるCuDFは、データの読み込み、結合、集約、フィルタリング、その他の操作を行うためのPandasのようなGPUDataFrameライブラリです。

Daskは、Pythonパッケージを複数のマシンに拡張できるオープンソースツールです。 Daskは、同じシステムまたはマルチノードクラスターのいずれかで、データと計算を複数のGPUに分散できます。 Daskは、RAPIDS cuDF、XGBoost、およびRAPIDS cuMLと統合して、GPUで高速化されたデータ分析と機械学習を実現します。

まとめ:BlazingSQLは、Amazon S3のデータレイクでGPUアクセラレーションクエリを実行し、結果のDataFrameをデータ操作のためにcuDFに渡し、最後にRAPIDS XGBoostとcuMLを使用して機械学習を実行し、PyTorchとTensorFlowを使用してディープラーニングを実行できます。

Google Cloud BigQuery

BigQueryは、Google Cloudが管理するペタバイト規模のデータウェアハウスであり、膨大な量のデータに対してほぼリアルタイムで分析を実行できます。 BigQuery MLを使用すると、SQLクエリを使用してBigQueryで機械学習モデルを作成および実行できます。

BigQuery MLは、予測のための線形回帰をサポートしています。 分類のためのバイナリおよびマルチクラスロジスティック回帰。 K-データセグメンテーションのためのクラスタリングを意味します。 製品推奨システムを作成するためのマトリックス因数分解。 異常、季節性、休日などの時系列予測を実行するための時系列。 XGBoost分類および回帰モデル。 分類および回帰モデル用のTensorFlowベースのディープニューラルネットワーク。 AutoMLテーブル; およびTensorFlowモデルのインポート。 トレーニングと予測のために、複数のBigQueryデータセットからのデータを含むモデルを使用できます。 BigQuery MLは、データウェアハウスからデータを抽出しません。 CREATE MODELステートメントでTRANSFORM句を使用すると、BigQueryMLで機能エンジニアリングを実行できます。

概要 BigQuery MLは、データウェアハウスからデータを抽出することなく、SQL構文を使用してGoogle Cloud MachineLearningのパワーの多くをBigQueryデータウェアハウスにもたらします。

IBMDb2ウェアハウス

IBM Db2 Warehouse on Cloud は、マネージド パブリック クラウド サービスです。 IBM Db2 Warehouse を独自のハードウェアを使用してオンプレミスでセットアップすることも、プライベート クラウドでセットアップすることもできます。 データ ウェアハウスとして、インメモリ データ処理やオンライン分析処理のための列指向テーブルなどの機能が含まれています。 そのネテッツァ テクノロジー は、クエリを効率的にデータに取り込むように設計された堅牢な分析セットを提供します。 さまざまなライブラリと関数は、必要な正確な洞察を得るのに役立ちます。

Db2 Warehouse は、Python、R、SQL でのデータベース内機械学習をサポートします。 IDAX モジュール 分散分析、相関ルール、データ変換、デシジョン ツリー、診断手段、離散化とモーメント、K 平均法クラスタリング、k 近傍法、線形回帰、メタデータ管理、単純ベイズ分類、主成分分析などの分析ストアド プロシージャが含まれています。確率分布、ランダムサンプリング、回帰ツリー、逐次パターンとルール、パラメトリック統計とノンパラメトリック統計の両方。

まとめ:IBM Db2 Warehouseには、いくつかの基本的な機械学習機能に加えて、RおよびPythonのデータベース内サポートを含む、データベース内SQL分析の幅広いセットが含まれています。

Oracle Database

Kinetica Streaming Data Warehouseは、履歴データ分析とストリーミングデータ分析を単一のプラットフォームでロケーションインテリジェンスとAIと組み合わせ、すべてAPIとSQLを介してアクセスできます。 Kineticaは、フィルタリング、視覚化、および集約機能を備えた、非常に高速で分散型の列型のメモリファーストのGPUアクセラレーションデータベースです。

Kineticaは、機械学習モデルとアルゴリズムをデータと統合して、大規模なリアルタイム予測分析を実現します。 これにより、データパイプラインと分析、機械学習モデル、データエンジニアリングのライフサイクルを合理化し、ストリーミングを使用して機能を計算できます。 Kineticaは、GPUによって加速される機械学習の完全なライフサイクルソリューションを提供します。マネージドJupyterノートブック、RAPIDSによるモデルトレーニング、Kineticaプラットフォームでの自動モデル展開と推論です。

まとめ:Kineticaは、GPUによって高速化された機械学習のための完全なデータベース内ライフサイクルソリューションを提供し、ストリーミングデータから特徴を計算できます。

Microsoft SQL サーバー

Microsoft SQL Server Machine Learning Servicesは、R、Python、Java、PREDICT T-SQLコマンド、SQL Server RDBMSのrx_Predictストアドプロシージャ、およびSQLServerビッグデータクラスターのSparkMLをサポートしています。 R言語とPython言語では、Microsoftには機械学習用のパッケージとライブラリがいくつか含まれています。 トレーニングしたモデルをデータベースまたは外部に保存できます。 Azure SQLマネージドインスタンスは、プレビューとしてPythonおよびRの機械学習サービスをサポートします。

Microsoft Rには、メモリ内だけでなくディスクからのデータも処理できる拡張機能があります。 SQL Serverは、R、Python、およびJavaコードがSQLServerのデータと関数を使用できるように拡張フレームワークを提供します。 SQL Serverビッグデータクラスターは、KubernetesでSQL Server、Spark、およびHDFSを実行します。 SQL ServerがPythonコードを呼び出すと、Azure Machine Learningを呼び出し、結果のモデルをデータベースに保存して、予測に使用できます。

まとめ:SQL Serverの現在のバージョンでは、複数のプログラミング言語で機械学習モデルをトレーニングおよび推測できます。

Oracle Database

Oracle Cloud Infrastructure(OCI)Data Scienceは、データサイエンスチームがOracle AutonomousDatabaseやOracleAutonomous DataWarehouseなどのOracleCloud Infrastructureを使用して機械学習モデルを構築、トレーニング、管理するためのマネージドサーバーレスプラットフォームです。 これには、オープンソースコミュニティによって開発されたPython中心のツール、ライブラリ、パッケージ、および予測モデルのエンドツーエンドのライフサイクルをサポートするOracle Accelerated Data Science(ADS)ライブラリが含まれます。

  • データの取得、プロファイリング、準備、および視覚化
  • 機能エンジニアリング
  • モデルトレーニング(Oracle AutoMLを含む)
  • モデルの評価、説明、および解釈(Oracle MLXを含む)
  • OracleFunctionsへのモデルのデプロイ

OCI Data Scienceは、Functions、Data Flow、Autonomous Data Warehouse、Object Storageなど、残りのOracle CloudInfrastructureスタックと統合されます。

現在サポートされているモデルは次のとおりです。

  • Oracle AutoML
  • ケラス
  • シキット学習
  • XGブースト
  • ADSTuner(ハイパーパラメータ調整)

ADSは、機械学習の説明性(MLX)もサポートしています。

まとめ:Oracle Cloud Infrastructureは、データウェアハウス、オブジェクトストア、および機能と統合されたデータサイエンスリソースをホストできるため、完全なモデル開発ライフサイクルが可能になります。

Vertica

Vertica Analytics Platformは、スケーラブルな列指向ストレージデータウェアハウスです。 これは、データベースを構成するノードのファイルシステムにローカルにデータを格納するEnterpriseと、すべての計算ノードのデータを共有して格納するEONのXNUMXつのモードで実行されます。

Verticaは、超並列処理を使用してペタバイトのデータを処理し、データの並列処理を使用して内部の機械学習を行います。 データ準備用のXNUMXつの組み込みアルゴリズム、XNUMXつの回帰アルゴリズム、XNUMXつの分類アルゴリズム、XNUMXつのクラスタリングアルゴリズム、いくつかのモデル管理機能、および他の場所でトレーニングされたTensorFlowモデルとPMMLモデルをインポートする機能があります。 モデルを適合またはインポートしたら、それを予測に使用できます。 Verticaでは、C ++、Java、Python、またはRでプログラムされたユーザー定義の拡張機能も使用できます。トレーニングと推論の両方にSQL構文を使用します。

まとめ:Verticaには、優れた機械学習アルゴリズムのセットが組み込まれており、TensorFlowモデルとPMMLモデルをインポートできます。 インポートされたモデルと独自のモデルから予測を行うことができます。

マインドDB

データベースが内部機械学習をまだサポートしていない場合は、半ダースのデータベースと2021つのBIツールと統合されているMindsDBを使用してその機能を追加できる可能性があります。 サポートされているデータベースには、MariaDB、MySQL、PostgreSQL、ClickHouse、Microsoft SQL Server、Snowflakeがあり、MongoDBとの統合は、XNUMX年後半に約束されています。サポートされているBIツールには、現在SAS、Qlik Sense、Microsoft Power BI、Lookerが含まれています。 、およびDomo。

MindsDBは、AutoML、AIテーブル、および説明可能なAI(XAI)を備えています。 AutoMLトレーニングは、MindsDB Studio、SQL INSERTステートメント、またはPythonAPI呼び出しから呼び出すことができます。 トレーニングでは、オプションでGPUを使用でき、オプションで時系列モデルを作成できます。

モデルをデータベーステーブルとして保存し、保存されたモデルに対するSQL SELECTステートメント、MindsDB Studio、またはPythonAPI呼び出しから呼び出すことができます。 MindsDB Studioからモデルの品質を評価、説明、および視覚化できます。

MindsDBStudioとPythonAPIをローカルおよびリモートのデータソースに接続することもできます。 MindsDBはさらに、PyTorchで実行される単純化されたディープラーニングフレームワークであるLightwoodを提供します。

まとめ:MindsDBは、機械学習のサポートが組み込まれていない多くのデータベースに、便利な機械学習機能をもたらします。