DataikuとSnowflakeがデータエンジニア、データサイエンティスト、開発者に新たな機能をもたらす

*<font color="DeepSkyBlue">Dataikuは9月8日(金)開催の[Snowflake Data Cloud World Tour](https://www.snowflake.com/events/data-cloud-world-tour-tokyo/?utm_source=partner&utm_medium=referral&utm_campaign=dataiku)に出展します。Dataikuブースでお待ちしています！</font>*
***

より効率的で効果的なAIモデルとアプリケーションを開発するための鍵の1つは、高いスケーラビリティー、パフォーマンス、並行性を提供する計算処理プラットフォーム上でワークロードを実行することです。DataikuとSnowflakeは、データエンジニア、データサイエンティスト、開発者にまさにそれを提供し、AI、機械学習（ML）、データおよび分析アプリケーションを改善するための完全な統合を提供します。

このブログでは、Python APIとユーザー定義関数（UDF）のためのSnowparkとの最近の統合をはじめ、データサイエンスのための統合されたソリューションを提供するためにDataikuとSnowflakeが連携している多くの方法について説明します。

## DataikuとSnowpark for Python
[既存の統合](https://blog.dataiku.com/snowflake-dataiku-java-udfs-snowpark)をベースとして、DataikuとSnowflakeは、プログラミング言語とIDE/ノートブックでの作業を好むコーダーのために、Snowpark for Pythonとの統合を実現しました。Pythonのプログラマーたちは、現在データサイエンス分野で最も多くの活動していますが、Dataikuノートブックの中から、Pythonのスキルを活用するためにSnowflakeを使い、Snowflakeの強力な処理エンジンを使用してSQLを実行することができます。

Snowflakeは、SQLに精通したユーザーに対して、常にパフォーマンスと使いやすさを提供してきました。そして今回、[Snowpark](https://www.youtube.com/watch?v=iCu3VsvsH4g)によって、Scala、Java、Pythonといったプログラミング言語を使い慣れたユーザーが、使い慣れたDataFrame抽象化を使用してSnowflakeに保存されたデータを操作できるようになりました。DataikuとSnowflakeの組み合わせは、AI、機械学習、アナリティクスを統合した最高のスタックであり、迅速な構築、AIの拡張、スピードと信頼性を伴うデプロイを実現します。

![Screen Shot 2022-06-02 at 8.42.07 AM.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1196881/454da1b6-687d-eadf-2591-d9e877b14822.png)


プログラマーはコーディング作業を続けながら、Dataikuの視覚的なノーコード環境でSnowflake上で作業している同僚と共同作業を行うことができます。どちらもSnowflakeの強力な計算処理とストレージを使用しながら、好みのスタイルで作業し、異なるスキルセットを活用することができます。Snowflakeは現在、PyTorchやscikit-learnのような一般的なPython MLフレームワークのほとんどもサポートしています。

DataikuとSnowpark for Python APIを使用することで、ユーザーはSnowflakeからデータを移動することなく、データパイプラインでデータを照会・処理し、データアプリケーションを構築することができます。Snowpark for Pythonは、操作可能なデータの仮想化ビューであるDataFramesを使用します。対応するSQL文はSnowflakeデータベースで実行されます。このアプローチは、Sparkのような他の処理エンジンに関連する複雑さを取り除きます。

## データサイエンスのためのDataikuとSnowflake
両社による投資により、ユーザーが好みのツールで作業しやすくなると同時に、インフラを管理する負担や複雑さも解消されます。

DataikuとSnowflakeの統合により、強力な変換、データエンジニアリング、および開発機能がユーザーの手に渡り、より効率的かつコスト効率の高い作業が可能になります。また、Oauthのような認可、アクセス、認証のための統合された機能により、より安全に作業することができます。

データサイエンスプロジェクトにおけるデータセットとレシピ（データ変換）を表現する視覚的な文法であるDataiku Flowを以下に示します。

![Screen Shot 2022-06-02 at 8.39.51 AM.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1196881/6a062f96-9680-533c-c257-ebde25e1ffac.png)


上に示したすべてのSnowflake統合では、シンプルなメニュー選択によってDataikuプロジェクトで直接呼び出すことができ、使いやすさと複雑さを取り除きます。

Dataikuは、クラウドストレージからのデータセットの一括アップロードやSQLのプッシュダウン実行など、これまで何年にもわたってユーザに恩恵を提供してきた機能をはじめ、昨年にはSnowflake Java UDFとの統合を追加し、より多くのワークロードをSnowflakeの高性能計算処理エンジンにプッシュダウンできるようになりました。最近、Dataikuは、SnowflakeのPython UDFを使用したプッシュダウン機能を追加し、AI、機械学習、アナリティクスのためのデータエンジニアリングと計算ワークフローを自動化するためのフレームワークであるSnowparkとのシームレスな統合も追加しました。

これらの統合により、データエンジニア、データサイエンティスト、開発者は、Scala、Java、Pythonなどの使い慣れたプログラミング言語で作業し、Snowflake上でデータ変換、データ準備、特徴量エンジニアリングなどのDataikuワークロードを実行することができます。Snowflake上でデータ準備タスクのためのDataikuのビジュアルレシピを処理することで、ユーザーはSnowflake内の強力なインデータベースSQL実行を活用することができ、あらゆる規模のデータ変換タスクに対してSnowflakeの弾力的でスケーラブルな計算処理を活用することができます。

また、Java UDFを使用して、最適化されたインデータベースでのデータ準備を活用することもできます。UDFは、システムで定義されている操作を超えて拡張し、[Java UDFを使用してデータの操作などの操作を実行し、結果を取得します](https://blog.dataiku.com/snowflake-dataiku-java-udfs-snowpark)。Java UDFを使用すると、Snowflakeの単一の統合プラットフォームからJVM（Java仮想マシン）にある関数を実行することができます。また、JVMにある関数をSnowflakeのデータクラウド内で実行することもできます。Snowflakeの強力な処理エンジンにより、ユーザーはより優れたパフォーマンス、スケーラビリティー、並行性を得ることができ、変換機能を大幅に拡張することができます。

Dataikuのモデルは、バッチスコアリングのためにSnowflake内でスコアリングすることも、バッチとリアルタイムの両方のモデルをスコアリングするためにDataikuの弾性計算を使用してスコアリングすることもできます。もちろん、Dataikuは、超並列処理のための動的なレシピレベルのSnowflake Virtual Warehouseの選択と、あらゆるデータ変換のためのSnowflakeへの直接の高速書き込みをサポートしています。そして、統合ソリューションの簡素化されたアーキテクチャーは、完全なエンドツーエンドのAI、機械学習、アナリティクス・プラットフォームをサポートします。
![Screen Shot 2022-06-02 at 8.24.41 AM.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1196881/d0161e7f-ee45-4b23-a255-1ed633a08959.png)

Dataikuとスノーフレークは、機械学習モデルオペレーション（MLOps）のような重要な分野や、小売／CPG、ヘルスケア／ライフサイエンス、金融サービスのような主要産業をはじめ、その他の多くの分野において共同イノベーションのための投資を続けています。[パートナーシップの詳細については、こちらをご覧ください](https://www.dataiku.com/partners/snowflake/)。

<br>
<br>

*原文： [Dataiku and Snowflake Bring New Capabilities to Data Engineers, Data Scientists, & Developers](https://blog.dataiku.com/dataiku-snowflake-snowpark-new-capabilities)*