โ03-21-2023 09:31 AM
Hi,
I am trying to setup presto in aws emr to be able to read delta tables. For this, as per my understanding, I need to setup the delta.properties file. Does anybody know how do I find the hive.metastore.uri that is needed for this file? For either unity catalog or glue catalog being used in databricks? I am already using glue as catalog for presto, but unable to query delta tables as it throws the error - "Not Hive Table"
โ03-25-2023 12:00 AM
To find the hive.metastore.uri needed for the delta.properties file, you can follow the below steps:
Alternatively, you can also find the hive.metastore.uri in Databricks by following these steps:
Once you have the hive.metastore.uri, you can use it in the delta.properties file to query Delta tables using Presto.
Hope this helps!
โ03-25-2023 01:27 AM
Hi Suteja,
Thanks for answering, I tried running the suggested commands and got "hive" as the catalog implementation but when trying to get "hive.metastore.uris" I get error-Please note, I am using glue as the metastore for Databricks. Also, is there a way to get uri that can be used for unity catalog ? I have tried the jdbc url for the ware house with both https:// and databricks:// but that does not seem to work either.
Also, I cannot seem to find "Data Stores" in glue catalog, in the settings for the glue crawler all I see is Data Sources which has s3 paths to the buckets containing delta tables. Please let me know if I need to be looking at something else.
Thanks
โ04-01-2023 10:21 PM
@Ashish Singhโ :
The error "java.util.NoSuchElementException" typically means that the element you are trying to access is not found. In this case, it seems like the configuration option "hive.metastore.uris" is not set or not present in your Hive configuration.
If you are using Glue as the metastore for Databricks, you can get the URI for the metastore by following these steps:
For example, if your S3 path is "s3://my-bucket/my-table/", the Glue Data Catalog URI would be "glue://my-bucket/my-table".
Regarding Unity Catalog, you can find the JDBC URL for Unity Catalog by following these steps:
For example, if your JDBC URL is "jdbc:databricks://<databricks-instance>/default;transportMode=http;httpPath=sql/protocolv1/o/0/<databricks-cluster-id>", and your Unity Catalog database is called "my_db", the modified JDBC URL would be "jdbc:databricks://<databricks-instance>/my_db;transportMode=http;httpPath=sql/protocolv1/o/0/<databricks-cluster-id>".
Passionate about hosting events and connecting people? Help us grow a vibrant local communityโsign up today to get started!
Sign Up Now