Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
Sawa_Ito
Product and Topic Expert
Product and Topic Expert
0 Kudos
388

このブログは、2022 年 11 月 21 日に SAP ジャパン公式ブログに掲載されたものを SAP ジャパン公式ブログ閉鎖に伴い転載したものです。




このブログは、markmumy が執筆したブログ「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 の HANA データベースに、SAP HANA Cloud, data lake files からの読み込み・書き込みの機能が加わりました。

マニュアルには多くの価値ある情報が含まれていますが、それぞれの製品セットに分かれています。まずは以下のマニュアルを参照してください。

https://help.sap.com/viewer/f9c5015e72e04fffa14d7d4f7267d897/2022_1_QRC/en-US/462c861413b043bd93b9e8...







    • 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 コンテナへの外部アクセスを許可するに...

                       

                        • マニュアル:SAP HANA Cloud, data lake リレーショナルエンジンへのデータロード(英語)



                           

                           

                           

                          前提条件


                           

                          下のステップを始める前に、ブログ:SAP HANA Cloud, data lake files への最初のアクセス設定 を行ってください。

                          SAP HANA Cloud, data lake files に対して HANA セ...

                          SAP HANA Cloud, data lake クライアント をインストールする必要があります。

                           

                          これらを終了したら、以下の HANA DB プロセスを実行します。

                           

                            • PSE (SAP HANA プライベートセキュリティ環境) の作成

                               

                                • PSE (SAP HANA プライベートセキュリティ環境) へ Digicert 証明書を追加

                                   

                                    • PSE (SAP HANA プライベートセキュリティ環境) へローカルクレデンシャルを追加

                                       

                                        • PSE (SAP HANA プライベートセキュリティ環境) へ SAP HANA Cloud, data lake files 証明書を追加

                                           

                                            • PSE (SAP HANA プライベートセキュリティ環境) (および by extension the certificates)へマップするHANA インポート/エクスポートクレデンシャルを作成

                                               

                                                • テスト!



                                                   

                                                  PSE (SAP HANA プライベートセキュリティ環境) を作成する


                                                   

                                                  drop PSE MYPSE cascade;
                                                  
                                                  
                                                  
                                                  Create PSE MYPSE;


                                                   

                                                  PSE (SAP HANA プライベートセキュリティ環境) へルート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 プライベートセキュリティ環境) へルート証明書を追加する


                                                                   

                                                                  ALTER PSE MYPSE ADD CERTIFICATE <certID_from_above>;


                                                                   

                                                                  PSE (SAP HANA プライベートセキュリティ環境) へ 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 プライベートセキュリティ環境) に追加する必要があります。
                                                                  ファイルが3つあるため、3つのセクションを以下の引用符の間に含めてください。

                                                                   

                                                                  ALTER PSE MYPSE SET OWN CERTIFICATE '<files here>';


                                                                   

                                                                  <files here> では、OpenSSLで生成されたこれらのファイルの全コンテンツ (BEGIN/ENDコマンドを含む) を使用します。

                                                                    • client.key

                                                                       

                                                                        • client.crt

                                                                           

                                                                            • ca.crt



                                                                               

                                                                              PSE (SAP HANA プライベートセキュリティ環境) (および証明書の拡張)へマッピングする 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 files にエクスポートされたファイルを確認する


                                                                               

                                                                              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 内で SAP HANA Cloud, data lake files への信用された証明書として使用されます。

                                                                              ここでもう一つ重要なことは、OpenSSL コマンドを実行するときに、keystore.p12 ファイルを保護するためにパスワードを使用するか聞かれますが、SAP Data Intelligence はこのファイルにパスワードを必要とするため、必ずパスワードで保護するようにしてください。

                                                                               




                                                                              オリジナルのブログはここまでです。