SAP HANA Cloud, SAP HANA データベースとSAP HANA Cloud, data lake filesを使用する
作成者:伊藤 沢 投稿日:2022年11月21日
このブログは、Mark Mumyが執筆したブログ「Using SAP HANA Cloud, data lake files with SAP HANA Cloud, SAP HANA database(2022/4/7)の抄訳です。最新の情報は、SAP Communityの最新ブログやマニュアルを参照してください。
SAP HANA Cloud の2022 Q1リリースで、SAP HANA Cloud, data lake filesからSAP HANA Cloud, SAP HANAデータベースに読み込み・書き込みする機能が加わりました。
マニュアルには多くの価値ある情報が含まれていますが、それぞれの製品セットに分かれています。まずはこのマニュアルを参照してください。
このブログの目的は、SAP HANA Cloud, HANAデータベース、SAP HANA Cloud, data lake、SAP HANA Cloud, data lake filesの3つの情報をステップバイステップのプロセスを一つのブログにまとめることです。
文中以下の省略を使用している部分があります。
- HANA DB — SAP HANA Cloud, SAP HANA データベース
- HDLRE — SAP HANA Cloud, data lake リレーショナルデータベースエンジン
- HDLFS — SAP HANA Cloud, data lake files
他のエリアでも多くのトピックが説明されていますが、いくつかまとめたものをリストアップすると:
- マニュアル:SAP HANA Cloud, data lake files コマンドラインインターフェース(英語)
- ブログ:SAP HANA Cloud, data lake filesへの最初のアクセス設定 — SAP HANA Cloud, data lake files コンテナへの外部アクセスがgrantされるよう、これを実行する必要があります。
- マニュアル:SAP HANA Cloud, data lake データベースへのデータロード(英語)
前提条件
下のステップを始める前に、ブログ:SAP HANA Cloud, data lake filesへの最初のアクセス設定 を行ってください。SAP HANA Cloud, data lake filesに対してHANAセキュリティを設定するには、SAP HANA Cloud, data lake files は信用された外部アクセスが設定されている必要があります。また、SAP HANA Cloud, data lake filesコマンドラインインターフェースを使用する後述のステップを完了するため、SAP HANA Cloud, data lakeクライアント をインストールする必要があります。
これらを終了したら、以下のHANA DBプロセスを実行します。
- PSE (SAP HANA Private Security Environment)の作成
- PSE (SAP HANA Private Security Environment)へDigicert証明書を追加
- PSE (SAP HANA Private Security Environment)へローカルクレデンシャルを追加
- PSE (SAP HANA Private Security Environment)へSAP HANA Cloud, data lake files証明書を追加
- PSE (SAP HANA Private Security Environment) (および by extension the certificates)へマップするHANA インポート/エクスポートクレデンシャルを作成
- テスト!
PSE (SAP HANA Private Security Environment)を作成する
drop PSE MYPSE cascade;
Create PSE MYPSE;
PSE (SAP HANA Private Security Environment)へルートDigicert証明書を追加する
SAP HANA Cloud, HANA データベースPSEを作成したら、ルートDigiCert 証明書をアップロードします。
- 必ずDigiCert証明書を使用してください。
- Download PEM version of the DigiCert Global Root CAのPEMバージョンをhttps://www.digicert.com/kb/digicert-root-certificates.htmからダウンロードします。
- このファイル: https://cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem
- これは、上記のPEMファイルなため、このCREATE CERTは、どのSAP HANA Cloudでも機能します。
CREATE CERTIFICATE FROM '<Digicert PEM Certificate>' COMMENT 'HDLFS';
作成したら、参照する証明書IDを入手します。
SELECT CERTIFICATE_ID FROM CERTIFICATES WHERE COMMENT = 'HDLFS';
PSE (SAP HANA Private Security Environment)へルート証明書を追加する
ALTER PSE MYPSE ADD CERTIFICATE <certID_from_above>;
PSE (SAP HANA Private Security Environment)へSAP HANA Cloud, data lake files証明書を追加する
このブログでは、、ほとんどのプラットフォームで利用可能なOpenSSLユーティリティを使用して生成された自己署名証明書のセットを使用します。これらのファイルは、セキュリティー管理者から入手できるでしょう。
このプロセスに従い、OpenSSLがインストールされているあらゆるホストでOpenSSLを使用してファイルを生成します。これらのコマンドで1つ気を付けなければならないのは、「-days」パラメーターです。これは、証明書の有効期間です。設定が低すぎると、このデータを常に再生成する必要があります。設定が高すぎると、企業の規定に反することになりかねません。解説とデモシステムで使用する目的で、ここでは9999日をこれらのキーの期間として選択しました。
openssl genrsa -out ca.key 2048
openssl req -x509 -new -key ca.key -days 9999 -out ca.crt
openssl req -new -nodes -newkey rsa:2048 -out client.csr -keyout client.key
openssl x509 -days 9999 -req -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out client.crt
openssl verify -CAfile ca.crt client.crt
openssl x509 -in client.crt -in client.crt -nameopt RFC2253 -subject -noout
生成したら、これらの証明書をPSE (SAP HANA Private Security Environment)に追加する必要があります。ファイルが3つあるため、3つのセクションを以下のクオート間に含めてください。
ALTER PSE MYPSE SET OWN CERTIFICATE '<files here>';
<files here> では、OpenSSLで生成されたこれらのファイルの全コンテンツ(BEGIN/ENDコマンドを含む)を使用します。
- client.key
- client.crt
- ca.crt
PSE (SAP HANA Private Security Environment) (および証明書の延長)へマップするHANA インポート/エクスポートクレデンシャルを作成する
CREATE CREDENTIAL FOR USER DBADMIN COMPONENT 'SAPHANAIMPORTEXPORT' PURPOSE 'myCredential' TYPE 'X509' PSE 'MYPSE';
エクスポートテストを実行する
create table EXPORT_TEST as ( select * from dummy );
-- add more data, as little or as much as you wish
insert into EXPORT_TEST select * from EXPORT_TEST;
insert into EXPORT_TEST select * from EXPORT_TEST;
export EXPORT_TEST as parquet
into 'hdlfs://<HDLFS endpoint>/hdb_export_test'
WITH CREDENTIAL 'myCredential'
;
hdlfscli を使用してSAP HANA Cloud, data lakeデータベースにエクスポートされたファイルを確認する
SAP HANA Cloud, data lake クライアントキットの一部であるSAP HANA Cloud, data lake filesコマンドラインインターフェース (hdlfscli)を使用して、エクスポートされたファイルを確認することができます。
hdlfscli -k -cert client.crt -key client.key -cacert ca.crt -s hdlfs://<HDLFS endpoint> lsr /hdb_export_test
アウトプットします。
FILE mark mark 93 666 index/DBADMIN/EX/EXPORT_TEST/create.sql
FILE mark mark 200 666 index/DBADMIN/EX/EXPORT_TEST/data.parquet
FILE mark mark 605 666 index/DBADMIN/EX/EXPORT_TEST/export_system.info
FILE mark mark 2176 666 index/DBADMIN/EX/EXPORT_TEST/table.xml
SAP HANA Cloud, HANAデータベースインポートテストを実行する
データをインポートしたり、テストしたり、あるいはここでは説明していませんが、IMPORT文でobjectを作成してデータをロードすることができます。データのインポートには、シンプルにIMPORT文にエクスポート中に生成されたparquetファイルを指定してください。
truncate table EXPORT_TEST;
import from parquet file 'hdlfs://<HDLFS endpoint>/hdb_export_test/index/DBADMIN/EX/EXPORT_TEST/data.parquet'
into EXPORT_TEST
WITH CREDENTIAL 'myCredential';
drop table EXPORT_TEST;
SAP HANA Cloud, data lakeインポートテスト
あるいは、同じparquetデータをSAP HANA Cloud, data lakeリレーショナルデータベースにロードすることもできます。SAP HANA Cloud, data lakeリレーショナルデータベースでは、直接接続されたSAP HANA Cloud, data lake files コンテナからのみファイルをロードできます。上記のSAP HANA Cloud, HANA データベース文のキーは、HANAデータベースからエクスポートするのに使用されたSAP HANA Cloud, data lake filesのエンドポイントはSAP HANA Cloud, data lakeリレーショナルデータベースエンジンとインスタンスが作成された時のエンドポイントと同じことです。
create table EXPORT_TEST ( COL1 varchar(10) );
load table EXPORT_TEST ( COL1 )
using file 'hdlfs:///hdb_export_test/index/DBADMIN/EX/EXPORT_TEST/data.parquet'
format parquet
quotes off escapes off
;
select * from EXPORT_TEST;
drop table if exists EXPORT_TEST;
備考
このブログでは、HANAデータベースでのSAP HANA Cloud, data lake filesの使用のすべてをカバーしているわけではありませんが、いくつか触れておきたいと思います。
最初に、SAP Data Warehouse Cloud (DWC) はSAP HANA Cloud, data lake filesリポジトリーをデータをロードしてSAP Data Warehouse Cloud (DWC)に統合するためのフィードとして利用することができます。データがファイルからなのかオブジェクトストアなのか考えることはあまりありませんが、確かに探究できるパターンです。
次に、SAP Data Intelligenceには、SAP HANA Cloud, data lake files内でファイルをコンシューム(read)し、プロデュース(read)するためのアダプターがあります。SAP Data Intelligenceは、SAP HANA Cloud, data lake filesにアクセスために証明書とキーを必要とします。幸いにも、これらのほとんどはこのブログで完了しています。SAP Data Intelligenceでは、OpenSSLで生成されるPFX/P12 のバージョンのキーが必要です。必要なファイルを生成するには、このコマンドを実行してください。
openssl pkcs12 -export -inkey client.key -in client.crt -out keystore.p12
結果のファイルkeystore.p12は、SAP Data Intelligence内でAP HANA Cloud, data lake filesへの信用された証明書として使用されます。ここでもう一つ重要なことは、OpenSSLコマンドを実行するときに、keystore.p12ファイルを保護するためにパスワードを使用するか聞かれますが、SAP Data Intelligenceはこのファイルにパスワードを必要とするため、必ずパスワードで保護するようにしてください。
このオリジナルブログが掲載されているSAP CommunityのSybase関連タグをフォローして、最新技術情報をキャッチアップしてください(フォローには登録が必要です)。
SAP Communityの関連タグ
・SAP HANA Cloud, data lake ブログ / Q&A
・SAP IQ ブログ / Q&A
・SAP SQL Anywhere ブログ / Q&A
SAP Communityでは質問も投稿することが可能で、世界中のSAP社員やユーザーのアドバイスを受けることができます。
———————————————————
SAPジャパンブログ内関連記事:
SAP HANA Cloud, data lake
SAP HANA Cloud, data lakeストレージのオブジェクトストレージへの変更によるパフォーマンス向上とペタバイト規模データの対応およびコスト低減
SAP HANA Cloud, data lakeでマテリアライズドビューを使用してパフォーマンスを上げる
SAP HANA Cloud, SAP HANA データベースとSAP HANA Cloud, data lake filesを使用する
SAP HANA Cloud, HANA データベースからSAP HANA Cloud, data lakeデータベースへの最速のデータ移行方法とテスト結果
SAP HANA Cloud, HANAデータベースから HANA Cloud, data lakeへのデータの高速移行とデータ移行速度に影響するパラメーター
SAP HANA Cloud, data lakeとSAP IQに共通するヒストリカルデータベースとDBSpaceサイズのキャプチャー方法
SAP HANA Cloud, data lake(IQ)をベースにしたNode.jsアプリケーションの構築
複数のSAP HANAソースからのデータを1つのSAP HANA Cloud, data lake(IQ)に集約する
SAP HANA Cloud, data lake Filesへの最初のアクセス設定
SAP HANA Cloud, data lakeおよびSAP IQにおけるスキーマのエクスポート/バックアップ
SAP HANA Cloud, data lake(IQ)にWindows端末からPythonで直接接続する
SAP HANA Cloud, data lakeへのデータロードにおけるvCPU数の影響
SAP IQのクラウドサービスが開始されました – SAP HANA Cloud, data lake (Standalone IQ)
SAP IQ
SAP IQのクラウドサービスが開始されました – SAP HANA Cloud, Data Lake (Standalone IQ)
SAP IQ – 隠れたイッピン(the hidden treasure) …
全てのSAP BW、SAP BW/4HANAリリースのSAP ニアラインストレージ(NLS)ソリューション – SAP IQ
SAP IQによるSAP ニアラインストレージ(NLS)のパフォーマンスを向上させる
SAP IQを利用したSAP Information Lifecycle Management(ILM)
DBA CockpitでSAP IQを有効にする
SAP IQのための容易なインストーラー - 「Q」
列指向データベースでもOLTPに対応したSAP Sybase IQ16の機能拡張
大量データの「圧縮率」と「ロード時間」を改善したSAP Sybase IQ16の技術解説
SAP IQ 16.1 SP05がリリースされました
SAP ASE
SAP ASE 16.0 SP04の新機能
SAP ASEの新しい管理ツール「AMC」の紹介:インストール方法、メモリー管理、ワークロード分析機能、Workload AnalyzerのSSL設定について
SAP HANAプラットフォームを相互補完し進化する旧Sybase製品の今――SAP ASEとSAP IQ
SAPアプリケーション向けデータベースとしてSAP Sybase ASEが採用される理由とは
RDBMSのパフォーマンス向上の仕掛け――SAP Sybase ASE 15.7の最新アーキテクチャー解説
オンラインマニュアル:
SAP IQ
SAP SQL Anywhere
SAP ASE
SAP Community (ブログ/ Q&A) :
SAP IQ
SAP SQL Anywhere
SAP ASE
SAP Community Wiki:
SAP IQ
SAP SQL Anywhere
SAP ASE
sap.com 製品ページ:
SAP IQ
SAP SQL Anywhere
SAP ASE
その他:
SAP IQ テクニカル概要
SAP IQ 16.0 ハードウェアサイジングガイド
様々なストレージおよびネットワークテクノロジーにおける SAP IQ 16 Multiplex のパフォーマンス評価