メインコンテンツへジャンプ

翻訳:Junichi Maruyama.  -  Original Blog Link

SAPが最近発表したDatabricksとの戦略的パートナーシップは、SAPの顧客の間で大きな興奮を呼んでいる。データとAIのエキスパートであるDatabricksは、SAP HANAとDatabricksを統合することで、アナリティクスとML/AI機能を活用するための魅力的な機会を提供します。このコラボレーションの大きな関心を受け、私たちはディープダイブ・ブログ・シリーズに着手することになりました。

多くのお客様のシナリオでは、SAP HANAシステムは、SAP CRM、SAP ERP/ECC、SAP BWなど、さまざまなソースシステムからのデータ基盤の主要なエンティティとして機能しています。そして今、この堅牢なSAP HANA分析サイドカーシステムをDatabricksとシームレスに統合し、組織のデータ機能をさらに強化するエキサイティングな可能性が生まれました。SAP HANA(HANA Enterprise Editionライセンス)とDatabricksを接続することで、企業はSAP HANAに保存されている豊富で統合されたデータを活用しながら、Databricksの高度なアナリティクスと機械学習機能(MLflow、AutoML、MLOpsなど)を活用することができます。この統合により、企業は貴重な洞察を引き出し、SAPシステム全体でデータ主導の意思決定を推進する可能性が広がります。

Databricks で SAP HANA テーブル、SQL ビュー、および計算ビューを連携させるには、複数のアプローチを利用できます。しかし、最も手っ取り早い方法はSparkJDBCを使用することです。最も大きな利点は、SparkJDBCがSparkワーカーノードからリモートHANAエンドポイントへの並列JDBC接続をサポートしていることです。

Figure 1: Architecture
Figure 1: Architecture

SAP HANAとDatabricksの統合から始めよう。

このDatabricksとの統合をテストするために、SAP HANA 2.0がAzureクラウドにインストールされた。

Installed SAP HANA info in Azure:

version2.00.061.00.1644229038
branchfa/hana2sp06
Operating SystemSUSE Linux Enterprise Server 15 SP1

以下は、この統合のさまざまなステップを示すハイレベルなワークフローです。

SparkJDBC を使用して SAP HANA の計算ビューとテーブルから Databricks にデータを抽出する詳細な手順については、添付のノートブックを参照してください。

 

SAP HANA

以下の画像に示すように、SAP HANA JDBC jar(ngdbc.jar)を設定します。

SAP HANA JDBC Jar

上記の手順を実行したら、SAP HANAサーバーとJDBCポートを使用してスパークリードを実行します。

Figure 3: SAP HANA table
Figure 3: SAP HANA table

スキーマ、テーブル名を指定し、データフレームの作成を開始する。

df_vbap_table = (spark.read
 .format("jdbc")
 .option("driver","com.sap.db.jdbc.Driver")
 .option("url", "jdbc:sap://20.XX.XXX.XXX:39015/?autocommit=false")
 .option("dbtable", "ECC_DATA.VBAP")
 .option("user", "******")  ## should be using databricks secrets instead of putting credentials in code
 .option("password", "******")  ## should be using databricks secrets instead of putting credentials in code
 .load()
)

また、dbtableオプションにSQL文を渡すことで、フィルタのプッシュダウンを行うこともできる。

.option("dbtable", "(select country, sales from ECC_DATA.VBAP where country = 'USA')")

計算ビューからデータを取得するには、次のようにします:
例えば、このXS-classic計算ビューは内部スキーマ"_SYS_BIC "で作成されています。

 

Figure 4: Calculation View
Figure 4: Calculation View

このコードスニペットは、"df_sap_ecc_hana_cv_vbap "という名前のPySparkデータフレームを作成し、SAP HANAシステムの計算ビュー(この場合はCV_VBAP)からそのデータフレームに入力します。

calc_view = '"_SYS_BIC"."ecc-data-cv/CV_VBAP"'

df_sap_ecc_hana_cv_vbap = (spark.read
 .format("jdbc")
 .option("driver","com.sap.db.jdbc.Driver")
 .option("url", "jdbc:sap://20.XXX.XXX.XXX:39015/?autocommit=false")
 .option("dbtable", calc_view)
 .option("user", "*******")  ## should be using databricks secrets instead of putting credentials in code
 .option("password", "*******")  ## should be using databricks secrets instead of putting credentials in code
 .load()
)

PySparkデータフレームを生成した後、探索的データ分析(EDA)と機械学習/人工知能(ML/AI)のためにDatabricksの無限の機能を活用する。

上記のデータフレームをまとめると

Figure 5: Summarize of Dataframes from SAP HANA

Figure 5: Summarize of Dataframes from SAP HANA
Figure 5: Summarize of Dataframes from SAP HANA 

このブログでは、SAP HANA用のSparkJDBCに焦点を当てていますが、FedML、hdbcli、hana_mlなどの代替メソッドも同様の目的で利用可能であることは注目に値します。

Notebook link

Databricks 無料トライアル

関連記事

SAPと共にオープンデータエコシステムを開発する

Original Blog : Developing an Open Data Ecosystem with SAP 翻訳: junichi.maruyama 製造業、エネルギー、ライフサイエンス、小売業など、さまざまな業界で、企業がビジネスの耐久性、回復力、持続可能性を重視し、重要な意思決定にデータを活用するようになってきています。これらの業界の企業における重要なデータの大半は、SAPアプリケーションからもたらされています。 SAP Datasphere は、財務、サプライチェーン、CRM、人事など、ERPやその他の機能アプリケーション群にまたがるSAPデータへのシームレスかつスケーラブルなアクセスを可能にする包括的なデータサービスで、DatabricksはSAPの4つのローンチパートナーに加わったことを発表できることを嬉しく思っています。SAP Datasphereは、 ビジネスデータファブリックアーキテクチャ を実現し、ビジネスコンテキストやデータモデルビューをそのままにSAPデータを提供し、SAPデータの

MLflow 2.3の紹介:LLMのネイティブサポートと新機能による強化

Introducing MLflow 2.3: Enhanced with Native LLM Support and New Features 翻訳: junichi.maruyama MLflow は月間 1,300 万ダウンロードを超え、エンドツーエンドの MLOps の主要なプラットフォームとしての地位を確立しており、あらゆる規模のチームがバッチおよびリアルタイム推論用のモデルを追跡、共有、パッケージ化、およびデプロイできるようにしました。MLflowは、何千もの組織で日々採用され、多様なプロダクション機械学習アプリケーションを推進しており、産業界と学界から500人以上の貢献者からなる活発なコミュニティによって活発に開発されています。 今日、私たちはこのオープンソースの機械学習プラットフォームの最新版であるMLflow 2.3を発表することができ、大規模言語モデル(LLM)の管理・導入能力を向上させる革新的な機能が満載されていることに興奮しています。この強化されたLLMサポートは、以下のような形で提供さ
プラットフォームブログ一覧へ