This post is basic commands you will need to know for working with Unity Catalog.
Display Current Metastore
- SELECT CURRENT_METASTORE();
Display Current Catalog
- SELECT CURRENT_CATALOG();
Create Catalog
- CREATE CATALOG IF NOT EXISTS <Catalog_Name> COMMENT 'A COMMENT';
Create Catalog With Location
- CREATE CATALOG IF NOT EXISTS <Catalog_Name> MANAGED LOCATION 'abfss://<METASTORE_CONTAINER_NAME>@<STORAGE_ACCOUNT>.dfs.core.windows.net/<CATALOG_NAME>' COMMENT 'A COMMENT';
Describe Catalog
- DESCRIBE CATALOG <Catalog_Name>;
Create Schema
- CREATE SCHEMA IF NOT EXISTS <SCHEMA_NAME> COMMENT '<COMMENT>';
Create Schema With Location
- CREATE SCHEMA IF NOT EXISTS <SCHEMA_NAME> MANAGED LOCATION 'abfss://<METASTORE_CONTAINER_NAME>@<STORAGE_ACCOUNT>.dfs.core.windows.net/<CATALOG_NAME>/<SCHEMA_NAME>' COMMENT '<COMMENT>';
Show All Storage Credentials
- SHOW STORAGE CREDENTIALS;
Describe Credential
- DESCRIBE STORAGE CREDENTIAL <CREDENTIAL_NAME>;
Create External Location
You will first need a storage credential.
You can reference down to the full table path or keep it at the container
- CREATE EXTERNAL LOCATION IF NOT EXISTS <NAME>
- URL 'abfss://<COTNAINER>@<STORAGE_ACCOUNT>.dfs.core.windows.net/'
- WITH (STORAGE CREDENTIAL <CREDENTIAL_NAME>)
- COMMENT '<COMMENT>';
Create External Table
- CREATE TABLE <CATALOG_NAME>.<SCHEMA_NAME>.<TABLE_NAME>
- USING <FORMAT>
- LOCATION 'abfss://<COTNAINER>@<STORAGE_ACCOUNT>.dfs.core.windows.net/FOLDER/PATH;'
Grant Create Storage Credential on Metastore
- GRANT CREATE STORAGE CREDENTIAL ON METASTORE TO `<USER>`;
Grant Permission to Create External Locations on Storage Credential
- GRANT CREATE EXTERNAL LOCATION ON STORAGE CREDENTIAL <CREDENTIAL_NAME> TO `<USER>`;
Grant Permission to Create External Location On Metastored
- GRANT CREATE EXTERNAL LOCATION ON METASTORE TO `<USER>`;
Grant Permission to Use Catalog
- GRANT USE_CATALOG ON CATALOG <CATALOG_NAME> TO `<USER>`;
Show all Grants On Metastore
- SHOW GRANTS `<USER>` ON METASTORE;
Grant Permission to Use Schema
- GRANT USE_SCHEMA ON SCHEMA <CATALOG_NAME>.<SCHEMA_NAME> TO `<USER>`;
Grant Permission to Create Table
- GRANT CREATE TABLE ON SCHEMA <CATALOG_NAME>.<SCHEMA_NAME> TO
<USER>
;
You must be logged in to post a comment.