将数据插入Oracle Autonomous Data Warehouse

要设置上载数据的格式并使其可供分析,必须将其加载到Oracle Autonomous Data Warehouse

预配Oracle Autonomous Data Warehouse 实例

Oracle Cloud Infrastructure 服务控制台中预配Oracle Autonomous Data Warehouse 的实例。

  1. 登录到Oracle Cloud Infrastructure 服务控制台。
  2. 单击自治数据仓库菜单,然后选择创建自治数据库
  3. 在“创建 Autonomous Database ”页上,选择相应的划分。
  4. 输入数据仓库的显示名称。
  5. 输入数据库名称。
  6. 单击工作量类型的数据仓库
  7. 指定适合您的工作量的 CPU 核心计数和存储(以太字节为单位),具体取决于并行用户和查询的数量以及数据量等。例如,对于较小的数据示例(1 MB 文件),指定占用21 TB 的 CPU 核心计数。
  8. 如果要根据工作量中的更改自动缩放 CPU 核心计数和存储值,请单击自动缩放
  9. 指定管理员帐户的口令。
  10. 如果您希望使用现有的内部部署许可证,或者单击包含许可证以在数据仓库中预配许可证,请单击自带许可证。

获取 Wallet 身份证明

集成服务可以使用包含客户机身份证明的 Wallet 来访问Oracle Autonomous Data Warehouse。要创建 Wallet,您必须具有Oracle Autonomous Data Warehouse的管理员帐户。

  1. 导航到 Oracle Autonomous Data Warehouse 的服务控制
  2. 单击管理
  3. 在“管理”页上,单击下载客户机身份证明
  4. 在“客户机身份证明 ”对话框中,输入 Wallet 口令并确认该口令。
  5. 单击下载以保存客户端安全身份证明 zip 文件。

    您必须保护此文件以防止未授权的数据库访问。

使用Oracle SQL Developer Web 连接

Oracle SQL Developer Web 是一个基于云的开发环境,可简化Oracle Autonomous Data Warehouse的开发和管理。

Oracle SQL Developer Web 是基于浏览器的Oracle SQL Developer 界面,它提供了桌面版本的一部分功能,包括在工作表中运行 SQL 语句和脚本的功能。

Oracle SQL Developer Web 使用Oracle Wallet 中的身份证明连接到 Oracle Autonomous Data Warehouse

  1. 导航到 Oracle Autonomous Data Warehouse 的服务控制
  2. 单击开发,然后单击 SQL Developer Web
  3. 输入Oracle Autonomous Data Warehouse 实例的管理员用户名和密码,然后单击登录

创建验证标记

必须先在数据仓库中存储对象存储身份证明,然后才能将数据从Oracle Cloud Infrastructure Object Storage 移到Oracle Autonomous Data Warehouse 中。

  1. 登录到Oracle Cloud Infrastructure 控制台,单击用户图标,然后选择用户设置
  2. 要创建新的验证标记,请在“资源”部分中单击验证标记,然后单击生成标记
  3. 提供验证标记的说明并单击生成标记。复制显示的标记。
  4. 单击“复制 ”链接并将标记信息存储到安全位置,因为在关闭对话框时,您将无法再次在控制台中看到标记。
  5. 单击关闭

将数据从存储插入到Oracle Autonomous Data Warehouse

使用Oracle SQL Developer Web 将数据插入到数据仓库中。

在此过程中,您必须以 Admin 用户身份连接到Oracle SQL Developer Web 到Oracle Autonomous Data Warehouse,然后才能执行这些步骤。
  1. Oracle SQL Developer Web 中,执行以下 SQL 语句以创建对象存储身份证明,替代指定的参数和标记。
    SET DEFINE OFF
    BEGIN
    DBMS_CLOUD.CREATE_CREDENTIAL(
            credential_name => 'ADW_CREDENTIALS',
            username => 'adwc_user@example.com',
            password => '<auth token>'
            );
    END;
    /

    设置以下参数和标记值:

    • credential_name:要存储的身份证明的名称。
    • username:“用户设置”下列出的用户名。如果您使用的是联合帐户,请确保提供完整的用户名,例如:<service_name>/<user_name> @ example.com
    • password:您以前创建的验证标记。
  2. 通过列出对象存储桶中的文件来验证用户名和口令。
    select object_name, bytes from dbms_cloud.list_objects('<Credential Name>','https://objectstorage.<region>.oraclecloud.com/n/<tenancy>/b/<Bucket name>/');
  3. 使用Oracle SQL Developer Web 在具有以下结构的用户方案中创建表(本示例中的 EMP):
    CREATE TABLE EMP(
      EMPNO  NUMBER(4,0),
      NAME   VARCHAR2(60),
      SAL    NUMBER(7,2),
    );

    可以将以下数据示例复制到文本文件,将其上载到对象存储,然后将其插入数据仓库:

    1001,John Dunbar,51000
    1002,Larry Miller,52000
    1003,Morgan Zhu,53000
    1004,Robin Marlow,54000
    1005,Sandy Sayers,55000
  4. 使用Oracle SQL Developer Web 将数据加载到刚创建的表中。
    BEGIN
       DBMS_CLOUD.COPY_DATA(
          table_name =>'EMP',
          credential_name =>'ADW_CREDENTIALS',
          file_uri_list =>'https://example.com/datafiles/emp.txt,
          format => json_object('delimiter' value ',')
       );
     END;
    /
    
    COMMIT;
    
  5. 验证数据是否已加载到表中。
    SELECT count(*) FROM emp