Configurazione di Spark per accedere al metastore di Data Catalog

Configurare Spark per accedere al metastore Data Catalog.

  1. Accedi ad Apache Ambari.
  2. Nella barra degli strumenti laterale, in Servizi selezionare Spark3.
  3. Selezionare la scheda Configs, quindi espandere la sezione Advanced spark3-defaults.
  4. Aggiungere o aggiornare la chiave spark.sql.hive.metastore.jars con il valore seguente:
    /usr/lib/oci-dcat-metastore-client/lib/integration/*:/usr/lib/oci-dcat-metastore-client/lib/*:/usr/lib/hive/lib/*:{{spark_home}}/jars/*
  5. Aggiungere o aggiornare la chiave spark.sql.warehouse.dir con il percorso di storage degli oggetti per la tabella gestita. Esempio: oci://bucket-name@tenancy-name-of-bucket/path/to/managed/table/directory.
  6. Espandere la sezione Impostazioni predefinite spark3 personalizzate.
  7. Aggiungere o aggiornare la chiave spark.driver.extraJavaOptions con il valore seguente:
    -Doracle.dcat.metastore.client.show_provider_details=true -Doracle.dcat.metastore.client.custom.authentication_provider=com.oracle.pic.dcat.metastore.commons.auth.provider.UserPrincipalsCustomAuthenticationDetailsProvider -DOCI_TENANT_METADATA=ocid1.tenancy.oc1.<unique_ID> -DOCI_REGION_METADATA=<region-identifier> -DOCI_USER_METADATA=ocid1.user.oc1.<unique_ID> -DOCI_FINGERPRINT_METADATA=<user-finger-print> -DOCI_PVT_KEY_FILE_PATH=/private <key-file-path.pem> -DOCI_PASSPHRASE_METADATA="<passphase-of-the-key>" -Doci.metastore.uris=https://datacatalog.<region>.oci.oraclecloud.com:443 -Doracle.dcat.metastore.id=ocid1.datacatalogmetastore.oc1.<unique_ID>
  8. Aggiungere o aggiornare la chiave spark.hadoop.fs.AbstractFileSystem.oci.impl con il valore com.oracle.bmc.hdfs.Bmc.
  9. Aggiungere o aggiornare la chiave spark.hadoop.fs.oci.client.hostname con l'URL dello storage degli oggetti. Esempio: https://objectstorage.<region-identifier>.oraclecloud.com.
  10. Espandere la sezione Override sito Beehive spark3 personalizzato.
  11. Aggiungere o aggiornare la chiave hive.metastore.uris con l'URL del metastore. Esempio: https://datacatalog.<region-identifier>.oci.oraclecloud.com:443.
  12. Aggiungere o aggiornare la chiave hive.metastore.warehouse.dir con il percorso di storage degli oggetti per la tabella gestita. Esempio: oci://bucket-name@tenancy-name-of-bucket/path/to/managed/table/directory.
  13. Aggiungere o aggiornare la chiave hive.metastore.warehouse.external.dir con il percorso di storage degli oggetti per la tabella esterna. Esempio: oci://bucket-name@tenancy-name-of-bucket/path/to/external/table/directory.
  14. Espandere la sezione Advanced spark3-thrift-sparkconf.
  15. Aggiungere o aggiornare la chiave spark.sql.hive.metastore.jars con il valore seguente:
    /usr/lib/oci-dcat-metastore-client/lib/integration/*:/usr/lib/oci-dcat-metastore-client/lib/*:/usr/lib/hive/lib/*:{{spark_home}}/jars/*
    Nota

    Assicurarsi di non disporre di :{{hadoop_home}}/lib/*.
  16. Espandere la sezione Custom spark3-thrift-sparkconf.
  17. Aggiungere o aggiornare la chiave spark.driver.extraJavaOptions con il valore seguente:
    -Doracle.dcat.metastore.client.show_provider_details=true -Doracle.dcat.metastore.client.custom.authentication_provider=com.oracle.pic.dcat.metastore.commons.auth.provider.UserPrincipalsCustomAuthenticationDetailsProvider -DOCI_TENANT_METADATA=ocid1.tenancy.oc1.<unique_ID> -DOCI_REGION_METADATA=<region-identifier> -DOCI_USER_METADATA=ocid1.user.oc1.<unique_ID> -DOCI_FINGERPRINT_METADATA=<user-finger-print> -DOCI_PVT_KEY_FILE_PATH=/private <key-file-path.pem> -DOCI_PASSPHRASE_METADATA="<passphase-of-the-key>" -Doci.metastore.uris=https://datacatalog.<region>.oci.oraclecloud.com:443 -Doracle.dcat.metastore.id=ocid1.datacatalogmetastore.oc1.<unique_ID>
  18. Selezionare Riavvia per riavviare il servizio Spark nel cluster Big Data Service.