Oracle Cloud Infrastructure Object StorageからAutonomous AI Databaseへのデータのロード
この例では、SQLコマンドを使用してOracle Cloud Infrastructure Object StorageからAutonomous AI Databaseにデータをロードする方法を示します。
Autonomous AI Databaseへのデータ・ロードを実行するには、次のような様々なオプションがあります。
-
UIオプションの使用: Data Studioロード・ツールのユーザー・インタフェースを使用して、クラウド・ストアの場所の資格証明を作成し、データを含むファイルを選択して、データ・ロード・ジョブを実行できます。
「クラウド・ストレージからのデータのロード」を参照してください
-
Rest Data Services APIの使用: Data Studioロード・ツールAPIを使用して、クラウド・ストアの場所へのリンクを作成し、データ・ロード・ジョブを実行できます。
「PL/SQLでのData Studioデータ・ロードAPIの使用」を参照してください
-
この例で説明するSQLコマンドの使用。
これらすべてのメソッドは、データのロードに同じPL/SQLパッケージDBMS_CLOUDを使用します。ただし、Data Studioには、SQLコマンドに対する追加の利点があります。ソースの分析および表定義の作成に役立つだけでなく、検証チェックも実行されます。
ユーザー・アカウント認証用のOracle Cloud Infrastructureアクセス資格証明と、Oracle Cloud Infrastructure Object Storageバケット内のオブジェクトにアクセスするためのオブジェクトURLが必要です。
Oracle Cloud Infrastructure Object Storageからデータをロードするには:
-
Autonomous AI DatabaseでOracle Cloud Infrastructureユーザー・アカウントの資格証明を作成します。
-
Oracle Cloud Infrastructure Object Storageからデータベースにデータをコピーします。
Oracle Cloud Infrastructureからのデータのロードの準備
前提条件を確認し、Oracle Cloud Infrastructure Object Storageからデータをロードする準備をします。
前提条件として、oci-data.txtなどのデータファイルは、インポートできるOracle Cloud Infrastructureバケットに存在します。この例のサンプル・ファイルの内容は次のとおりです。
1,OCI Direct Sales
2,OCI Tele Sales
3,OCI Catalog
4,OCI Internet
5,OCI PartnersOracle Cloud Infrastructure側で、Oracle Cloud Infrastructureアカウントにログインし、次を実行します:
-
Oracle Cloud Infrastructureアカウントの認証トークンを取得します。
詳細は、認証トークンの取得に関する項を参照してください。
-
「オブジェクト詳細」ページから、Oracle Cloud Infrastructure Object Storageバケットに格納されているデータ・ファイルのオブジェクトURLを取得します。
詳細は、オブジェクト・ストレージ・オブジェクトの詳細の取得を参照してください。
Oracle Cloud Infrastructureからデータをロードするステップ
次のステップを実行して、Oracle Cloud Infrastructure Object StorageからAutonomous AI Databaseにデータをロードします。
-
Oracle Cloud Infrastructureアカウント資格証明をAutonomous AI Databaseに格納し、資格証明名を指定します。これにより、データベースはOracle Cloud Infrastructureアカウントで認証し、Oracle Cloud Infrastructure Object Storageバケット内のアイテムにアクセスできます。
SET DEFINE OFF BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'OCI_CRED_NAME', username => 'username', password => 'password' ); END; /ノート
ノート:ここで、usernameはOracle Cloud Infrastructureユーザー名、passwordはユーザー認証トークンです。パラメータの詳細は、「CREATE_CREDENTIALプロシージャ」を参照してください。
リソース・プリンシパル資格証明を有効にする場合、Oracle Cloud Infrastructureオブジェクト・ストアにアクセスするための資格証明の作成は必要ありません。詳細は、リソース・プリンシパルを使用したOracle Cloud Infrastructureリソースへのアクセスを参照してください。
オプションで、この例に示すように、Oracle Cloud Infrastructureへのアクセスをテストできます。
SELECT * FROM DBMS_CLOUD.LIST_OBJECTS('OCI_CRED_NAME', 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/'); -
データをロードする表をデータベースに作成します。
CREATE TABLE myocitable (id NUMBER, name VARCHAR2(64)); -
Oracle Cloud InfrastructureバケットからAutonomous AI Databaseにデータをインポートします。
表名とOracle Cloud Infrastructure資格証明名の後にOracle Cloud InfrastructureオブジェクトURLを指定します。
BEGIN DBMS_CLOUD.COPY_DATA( table_name => 'myocitable', credential_name => 'OCI_CRED_NAME', file_uri_list => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/oci-data.txt', format => json_object('delimiter' value ',') ); END; /この例では、
namespace-stringはOracle Cloud Infrastructureオブジェクト・ストレージ・ネームスペースで、bucketnameはバケット名です。詳細は、オブジェクト・ストレージ・ネームスペースの理解を参照してください。パラメータの詳細は、「COPY_DATAプロシージャ」をご覧ください。
Oracle Cloud Infrastructure Object StorageからAutonomous AI Databaseにデータを正常にインポートしました。この文を実行して、表内のデータを検証できます。
SELECT * FROM myocitable;ID NAME
-- --------------
1 OCI Direct Sales
2 OCI Tele Sales
3 OCI Catalog
4 OCI Internet
5 OCI Partnersデータのロードの詳細は、クラウド内のファイルからデータをロードを参照してください。