When you try to bulk load data from SAS to the Databricks database, an error might occur in the execution of the SAS/ACCESS Interface to Spark LIBNAME statement. The "BL_" LIBNAME options, which are required when you specify BULKLOAD=YES, might generate Invalid option name error messages in the SAS log.
%let MYDBRICKS=xxx-xxxxxxxx-####.cloud.databricks.com;
%let MYUID=token;
%let MYPWD=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-x;
%let MYHTTPPATH=/sql/1.0/warehouses/xxxxxxxxxxxxxxx;
%let MYCATALOG=main;
%let MYSCHEMA=keyoun;
libname dbricks SPARK
platform=databricks
driverClass='com.databricks.client.jdbc.Driver'
user=token pwd="&MYPWD"
server="&MYDBRICKS" port=443
httpPath="&MYHTTPPATH"
properties="defaultStringColumnLength=255;useNativeQuery=1;TemporarilyUnavailableRetryTimeout=1800;
ConnSchema=&MYSCHEMA;ConnCatalog=&MYCATALOG"
schema="&MYSCHEMA"
character_multiplier=1
PRESERVE_TAB_NAMES=YES
bulkload=yes
bl_bucket='sas-databricks-s3-bucket/databricks'
bl_aws_config='/u/keyoun/.databricks/config'
bl_aws_credentials_file='/u/keyoun/.databricks/credentials'
;
68 bulkload=yes
69 bl_bucket='sas-databricks-s3-bucket/databricks'
---------
22
ERROR 22-7: Invalid option name BL_BUCKET.
70 bl_aws_config='/u/keyoun/.databricks/config'
-------------
22
ERROR 22-7: Invalid option name BL_AWS_CONFIG.
71 bl_aws_credentials_file='/u/keyoun/.databricks/credentials'
-----------------------
22
ERROR 22-7: Invalid option name BL_AWS_CREDENTIALS_FILE.
There is no workaround that enables you to bulk load using BULKLOAD=YES with the corresponding BL_ options.
You can still use BULKLOAD=NO with SAS/ACCESS Interface to Spark until a patch for this issue is available. In addition, you can also use SAS/ACCESS® Interface to ODBC.
For additional information, see Bulk Loading to Databricks in AWS (using SAS/ACCESS Interface to Spark).