@clickzetta/cz-cli-darwin-arm64 0.5.15 → 0.5.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cz-cli +0 -0
- package/bin/skills/lakehouse-doc-en/SKILL.md +6 -11
- package/bin/skills/lakehouse-doc-en/references/AIGateway.md +58 -13
- package/bin/skills/lakehouse-doc-en/references/Computation.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/DataSource_Amazon_DocumentDB.md +3 -1
- package/bin/skills/lakehouse-doc-en/references/Foreach.md +14 -14
- package/bin/skills/lakehouse-doc-en/references/JDBC-Driver.md +0 -1
- package/bin/skills/lakehouse-doc-en/references/LakehouseAI-overview.md +21 -8
- package/bin/skills/lakehouse-doc-en/references/LakehouseDataGPT-tour.md +4 -9
- package/bin/skills/lakehouse-doc-en/references/LakehouseStudio-tour.md +14 -19
- package/bin/skills/lakehouse-doc-en/references/Lakehouse_Zilliz_MakeDataReadyforBIandAI.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/Logstash.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/Migrate_Spark_DataEngineeringBestPractices_Project_to_Lakehouse.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/Notebook.md +17 -17
- package/bin/skills/lakehouse-doc-en/references/RemoteFunction-as-udf.md +14 -14
- package/bin/skills/lakehouse-doc-en/references/SQL_External_Catalog_Guide.md +1 -9
- package/bin/skills/lakehouse-doc-en/references/SUMMARY.md +59 -29
- package/bin/skills/lakehouse-doc-en/references/WINDOWFUNCTION.md +99 -57
- package/bin/skills/lakehouse-doc-en/references/Zettapark_Data_Engineering_Demo.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/access-control-configuration.md +1 -8
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-2-5-1.0.md +16 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-3-29-1.0.2.md +14 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-3-8-1.0.1.md +16 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-4-28-1.1.md +29 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-5-12-1.1.1.md +18 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-5-15-1.2.md +9 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-5-21-1.3.md +9 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-5-28-1.4.md +10 -0
- package/bin/skills/lakehouse-doc-en/references/aigw-2026-6-3-1.5.md +9 -0
- package/bin/skills/lakehouse-doc-en/references/alicloud-arn-externalid.md +0 -5
- package/bin/skills/lakehouse-doc-en/references/answer-accuracy-improve.md +120 -103
- package/bin/skills/lakehouse-doc-en/references/application-list.md +1 -3
- package/bin/skills/lakehouse-doc-en/references/approval-list.md +16 -17
- package/bin/skills/lakehouse-doc-en/references/batch-load-parquet-file-into-lakehouse.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/batch_sync.md +9 -9
- package/bin/skills/lakehouse-doc-en/references/batch_sync_Sop.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/batchloadparquetfileintoLakehouse.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/bulkloadv1-python-sdk.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/chart-auto-refresh-guide.md +12 -6
- package/bin/skills/lakehouse-doc-en/references/clickzetta-sample-data.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/code_approval.md +1 -5
- package/bin/skills/lakehouse-doc-en/references/composite_task.md +31 -42
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_environment_and_data_generate.md +6 -9
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_javasdk_bulkload_realtime.md +4 -10
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_kafka_realtime_sync.md +1 -10
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_local_file_into_table_by_studio.md +0 -6
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_studio_batchload_public_network.md +0 -5
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_studio_python_node.md +2 -7
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_studio_realtime_cdc_public_network.md +13 -18
- package/bin/skills/lakehouse-doc-en/references/comprehensive_guide_to_ingesting_studio_sql_insert.md +0 -1
- package/bin/skills/lakehouse-doc-en/references/concepts.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/config-datasource.md +5 -7
- package/bin/skills/lakehouse-doc-en/references/connect-with-cli.md +116 -72
- package/bin/skills/lakehouse-doc-en/references/connect-with-cz-cli.md +151 -0
- package/bin/skills/lakehouse-doc-en/references/continue-job.md +9 -17
- package/bin/skills/lakehouse-doc-en/references/create-api-connection.md +315 -286
- package/bin/skills/lakehouse-doc-en/references/create-catalog-connection.md +1 -0
- package/bin/skills/lakehouse-doc-en/references/create-dynamic-table.md +4 -4
- package/bin/skills/lakehouse-doc-en/references/create-external-catalog.md +85 -22
- package/bin/skills/lakehouse-doc-en/references/create-table-ddl.md +45 -0
- package/bin/skills/lakehouse-doc-en/references/creating_alicloud_privatelinkendpoint.md +4 -6
- package/bin/skills/lakehouse-doc-en/references/creating_alicloud_privatelinkservice.md +4 -7
- package/bin/skills/lakehouse-doc-en/references/creating_tencentcloud_privatelinkendpoint.md +2 -7
- package/bin/skills/lakehouse-doc-en/references/creating_tencentcloud_privatelinkservice.md +1 -5
- package/bin/skills/lakehouse-doc-en/references/cz-cli-agent.md +15 -10
- package/bin/skills/lakehouse-doc-en/references/cz-cli-datasource.md +0 -8
- package/bin/skills/lakehouse-doc-en/references/cz-cli-sql.md +2 -45
- package/bin/skills/lakehouse-doc-en/references/cz-cli.md +53 -42
- package/bin/skills/lakehouse-doc-en/references/dashboard-version-management-guide.md +12 -4
- package/bin/skills/lakehouse-doc-en/references/data-integration-intro.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/data-integration.md +29 -27
- package/bin/skills/lakehouse-doc-en/references/data-load-summary.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/data-quality.md +25 -25
- package/bin/skills/lakehouse-doc-en/references/data-sharing.md +31 -54
- package/bin/skills/lakehouse-doc-en/references/data-sources.md +45 -45
- package/bin/skills/lakehouse-doc-en/references/data_catalog.md +23 -25
- package/bin/skills/lakehouse-doc-en/references/data_privacy.md +5 -2
- package/bin/skills/lakehouse-doc-en/references/data_sharing_between_accounts_guide.md +0 -4
- package/bin/skills/lakehouse-doc-en/references/data_visualization.md +4 -15
- package/bin/skills/lakehouse-doc-en/references/dataagent.md +39 -7
- package/bin/skills/lakehouse-doc-en/references/databricks-delta-to-lakehouse-migration.md +168 -0
- package/bin/skills/lakehouse-doc-en/references/databricks-dlt-to-lakehouse-migration.md +331 -0
- package/bin/skills/lakehouse-doc-en/references/databricks-external-catalog-practice.md +367 -0
- package/bin/skills/lakehouse-doc-en/references/databricks-jobs-to-studio-migration.md +199 -0
- package/bin/skills/lakehouse-doc-en/references/databricks-notebook-to-studio-migration.md +350 -0
- package/bin/skills/lakehouse-doc-en/references/databricks-uc-governance-to-lakehouse-migration.md +327 -0
- package/bin/skills/lakehouse-doc-en/references/datagpt-model-config.md +34 -0
- package/bin/skills/lakehouse-doc-en/references/datagpt_data_source.md +50 -37
- package/bin/skills/lakehouse-doc-en/references/datagpt_introduction.md +55 -79
- package/bin/skills/lakehouse-doc-en/references/datagpt_quickstart.md +50 -64
- package/bin/skills/lakehouse-doc-en/references/datalake-acceleration.md +75 -2
- package/bin/skills/lakehouse-doc-en/references/dbt-databricks-to-clickzetta-migration.md +242 -0
- package/bin/skills/lakehouse-doc-en/references/dynamic-mask.md +30 -30
- package/bin/skills/lakehouse-doc-en/references/dynamic-table-bestpractice.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/dynamic-table-introduce.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/dynamic_table_summary.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/eco_integration/streamlit.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/eco_integration/superset.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/ecosystem-all.md +1 -3
- package/bin/skills/lakehouse-doc-en/references/ecosystem.md +145 -0
- package/bin/skills/lakehouse-doc-en/references/external-catalog-summary.md +33 -38
- package/bin/skills/lakehouse-doc-en/references/external-function-combo-practice.md +466 -0
- package/bin/skills/lakehouse-doc-en/references/f6fc6447ee.md +7 -9
- package/bin/skills/lakehouse-doc-en/references/federation-query.md +56 -6
- package/bin/skills/lakehouse-doc-en/references/finebi-mysql.md +2 -0
- package/bin/skills/lakehouse-doc-en/references/get-started-with-sample-data.md +10 -11
- package/bin/skills/lakehouse-doc-en/references/gitfolder.md +2 -3
- package/bin/skills/lakehouse-doc-en/references/grant-privileges.md +2 -0
- package/bin/skills/lakehouse-doc-en/references/iceberg-rest-catalog-databricks.md +166 -0
- package/bin/skills/lakehouse-doc-en/references/ide.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/if_else_task.md +59 -57
- package/bin/skills/lakehouse-doc-en/references/input_output.md +10 -7
- package/bin/skills/lakehouse-doc-en/references/jobprofile-bestpractices.md +60 -64
- package/bin/skills/lakehouse-doc-en/references/kafka-connection.md +0 -1
- package/bin/skills/lakehouse-doc-en/references/key-concepts.md +146 -117
- package/bin/skills/lakehouse-doc-en/references/lakehouse-ai-gateway-cz-cli.md +317 -0
- package/bin/skills/lakehouse-doc-en/references/lakehouse-ai-sql-analysis.md +345 -0
- package/bin/skills/lakehouse-doc-en/references/lakehouse-dqc-guide.md +300 -0
- package/bin/skills/lakehouse-doc-en/references/lakehouse-medallion-sql-dt-guide.md +543 -0
- package/bin/skills/lakehouse-doc-en/references/lakehouse-multi-cloud-acceleration.md +274 -0
- package/bin/skills/lakehouse-doc-en/references/lakehouse-multimodal-ai-pipeline.md +198 -0
- package/bin/skills/lakehouse-doc-en/references/lakehouse-quick-experience_guide.md +49 -52
- package/bin/skills/lakehouse-doc-en/references/lakehouse-volume-pipe-acceleration-guide.md +380 -0
- package/bin/skills/lakehouse-doc-en/references/langchain-plug-installation.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/management.md +4 -9
- package/bin/skills/lakehouse-doc-en/references/medallion-lakehouse-from-scratch.md +2 -1
- package/bin/skills/lakehouse-doc-en/references/metrics_answer_build.md +58 -21
- package/bin/skills/lakehouse-doc-en/references/migrate-spark-data-engineering-best-practices-to-lakehouse.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/mindsdb.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/monitoring_and_alerting.md +65 -60
- package/bin/skills/lakehouse-doc-en/references/monitoring_item_specification.md +33 -33
- package/bin/skills/lakehouse-doc-en/references/multitable_batch_sync.md +16 -16
- package/bin/skills/lakehouse-doc-en/references/multitable_realtime_sync.md +65 -72
- package/bin/skills/lakehouse-doc-en/references/multitable_realtime_sync_sop.md +54 -52
- package/bin/skills/lakehouse-doc-en/references/navicat-mysql.md +2 -0
- package/bin/skills/lakehouse-doc-en/references/om-dynamic-table.md +71 -66
- package/bin/skills/lakehouse-doc-en/references/om-vcluster.md +2 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-create-session.md +79 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-generate-auth-token.md +63 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-overview.md +96 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-quick-start.md +286 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-response-guide.md +264 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-safe-question-poll.md +201 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-text2insight-query.md +99 -0
- package/bin/skills/lakehouse-doc-en/references/open-api-text2insight-stop.md +74 -0
- package/bin/skills/lakehouse-doc-en/references/overview.md +6 -7
- package/bin/skills/lakehouse-doc-en/references/permission-application.md +5 -5
- package/bin/skills/lakehouse-doc-en/references/pipe-introduction.md +1 -0
- package/bin/skills/lakehouse-doc-en/references/pipe-kafka-table-stream.md +72 -70
- package/bin/skills/lakehouse-doc-en/references/pipe-kafka.md +105 -110
- package/bin/skills/lakehouse-doc-en/references/pipe-overview.md +40 -40
- package/bin/skills/lakehouse-doc-en/references/pipe-storage-object.md +43 -48
- package/bin/skills/lakehouse-doc-en/references/pipe-summary.md +14 -4
- package/bin/skills/lakehouse-doc-en/references/pipe-syntax.md +58 -151
- package/bin/skills/lakehouse-doc-en/references/practice_python_task.md +4 -4
- package/bin/skills/lakehouse-doc-en/references/pricing-ai-gateway.md +181 -0
- package/bin/skills/lakehouse-doc-en/references/pricing-lakehouse.md +316 -0
- package/bin/skills/lakehouse-doc-en/references/pricing.md +44 -288
- package/bin/skills/lakehouse-doc-en/references/private-link-general.md +0 -2
- package/bin/skills/lakehouse-doc-en/references/pyspark-to-zettapark-migration-f1.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/python-igs.md +7 -3
- package/bin/skills/lakehouse-doc-en/references/python-sample-put-github-rt-events.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/python-task.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/python_reference/connector.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/python_reference/connector_advanced.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/python_reference/connector_examples.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/python_sdk_guide.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/python_shell_datasource.md +11 -9
- package/bin/skills/lakehouse-doc-en/references/quick_start_batch_sync_data.md +9 -18
- package/bin/skills/lakehouse-doc-en/references/quick_start_bi_analysis.md +8 -25
- package/bin/skills/lakehouse-doc-en/references/quick_start_create_workspace.md +4 -6
- package/bin/skills/lakehouse-doc-en/references/quick_start_data_quality.md +8 -8
- package/bin/skills/lakehouse-doc-en/references/quick_start_etl.md +16 -20
- package/bin/skills/lakehouse-doc-en/references/quick_start_monitoring_and_alerting.md +10 -18
- package/bin/skills/lakehouse-doc-en/references/quick_start_sql_query.md +7 -10
- package/bin/skills/lakehouse-doc-en/references/quick_start_upload_data.md +5 -7
- package/bin/skills/lakehouse-doc-en/references/quick_start_user_management.md +8 -8
- package/bin/skills/lakehouse-doc-en/references/quick_start_workspace.md +0 -5
- package/bin/skills/lakehouse-doc-en/references/quick_start_workspace_user.md +8 -8
- package/bin/skills/lakehouse-doc-en/references/quickstart.md +69 -56
- package/bin/skills/lakehouse-doc-en/references/quickstart_datashare_between_companies.md +0 -5
- package/bin/skills/lakehouse-doc-en/references/quickstart_envirment_for_team.md +0 -24
- package/bin/skills/lakehouse-doc-en/references/realtime-pipeline-selection-guide.md +1 -2
- package/bin/skills/lakehouse-doc-en/references/realtime-sales-dashboard-with-dynamic-table.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/realtime_sync.md +0 -1
- package/bin/skills/lakehouse-doc-en/references/release-note-2026-05-19.md +5 -3
- package/bin/skills/lakehouse-doc-en/references/revoke-privileges.md +3 -1
- package/bin/skills/lakehouse-doc-en/references/roles.md +2 -3
- package/bin/skills/lakehouse-doc-en/references/row-filter.md +165 -0
- package/bin/skills/lakehouse-doc-en/references/row_level_permission.md +30 -19
- package/bin/skills/lakehouse-doc-en/references/scheduled_task.md +28 -21
- package/bin/skills/lakehouse-doc-en/references/security_overview.md +99 -21
- package/bin/skills/lakehouse-doc-en/references/set-command.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/setup.md +13 -15
- package/bin/skills/lakehouse-doc-en/references/show-grants.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/snowflake-dynamic-tables-to-lakehouse.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/spark-connector-summary.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/sql_functions/context_functions/current_vcluster.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/sso-configuration.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/streaming_pipeline_with_dynamic_table.md +0 -1
- package/bin/skills/lakehouse-doc-en/references/studio-incremental-sync-practice.md +27 -23
- package/bin/skills/lakehouse-doc-en/references/studio-shell-task.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/supported-cloud-platforms.md +32 -0
- package/bin/skills/lakehouse-doc-en/references/table_rendering.md +18 -12
- package/bin/skills/lakehouse-doc-en/references/task-develop.md +89 -91
- package/bin/skills/lakehouse-doc-en/references/task_development.md +19 -17
- package/bin/skills/lakehouse-doc-en/references/task_group.md +16 -14
- package/bin/skills/lakehouse-doc-en/references/task_instance.md +21 -21
- package/bin/skills/lakehouse-doc-en/references/task_param.md +38 -35
- package/bin/skills/lakehouse-doc-en/references/task_param_reference.md +81 -79
- package/bin/skills/lakehouse-doc-en/references/task_scheduling_dependency.md +20 -21
- package/bin/skills/lakehouse-doc-en/references/tencentcloud_arn_and_externalid.md +1 -5
- package/bin/skills/lakehouse-doc-en/references/trial-account-quotas-and-limits.md +1 -3
- package/bin/skills/lakehouse-doc-en/references/tutorial_connect_to_lakehouse.md +69 -0
- package/bin/skills/lakehouse-doc-en/references/tutorials.md +4 -1
- package/bin/skills/lakehouse-doc-en/references/unique-key.md +167 -0
- package/bin/skills/lakehouse-doc-en/references/usageandbillingview.md +138 -0
- package/bin/skills/lakehouse-doc-en/references/use-dbt-dev.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/use-java-sdk-realtime-uploaddata.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/use-java-sdk-upload-data-local.md +3 -3
- package/bin/skills/lakehouse-doc-en/references/use-models.md +128 -0
- package/bin/skills/lakehouse-doc-en/references/use-mysql-client.md +81 -81
- package/bin/skills/lakehouse-doc-en/references/use-python-sdk-upload-data.md +10 -12
- package/bin/skills/lakehouse-doc-en/references/user-identification.md +2 -3
- package/bin/skills/lakehouse-doc-en/references/user_permission_grand_guide.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/using-udf-in-dynamic-table.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/vc_cache.md +18 -22
- package/bin/skills/lakehouse-doc-en/references/vcluster_size_description.md +33 -31
- package/bin/skills/lakehouse-doc-en/references/virtual-cluster.md +43 -45
- package/bin/skills/lakehouse-doc-en/references/web-job-history.md +94 -108
- package/bin/skills/lakehouse-doc-en/references/web_search.md +16 -7
- package/bin/skills/lakehouse-doc-en/references/zettapark-data-engineering-demo.md +1 -1
- package/bin/skills/lakehouse-doc-en/references/zettapark-dataframe-guide.md +144 -70
- package/bin/skills/lakehouse-doc-en/references/zettapark-dynamic-table-guide.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/zettapark-etl-guide.md +73 -33
- package/bin/skills/lakehouse-doc-en/references/zettapark-feature-engineering.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/zettapark-functions-guide.md +75 -46
- package/bin/skills/lakehouse-doc-en/references/zettapark-quick-start.md +2 -2
- package/bin/skills/lakehouse-doc-en/references/zettapark-stream-guide.md +4 -4
- package/bin/skills/lakehouse-doc-en/references/zettapark-volume-guide.md +93 -29
- package/package.json +1 -1
- package/bin/skills/lakehouse-doc-en/references/CLAUDE.md +0 -606
- package/bin/skills/lakehouse-doc-en/references/modelprice.md +0 -155
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
# Row-Level Security (Row Filter)
|
|
2
|
+
> [Preview Release] This feature is currently in an invite-only preview stage. To use it, please contact our technical support team for assistance.
|
|
3
|
+
|
|
4
|
+
## Overview
|
|
5
|
+
|
|
6
|
+
Row-level security (Row Filter, also known as Row Access Policy) lets you bind a filter function that returns BOOLEAN to a table. The system automatically applies this function during queries and DML operations — only rows where the function returns `true` are visible to the current operation. It is commonly used for multi-tenant isolation and data permission control by user or role.
|
|
7
|
+
|
|
8
|
+
Key characteristics of row filters:
|
|
9
|
+
|
|
10
|
+
- Filter logic is encapsulated in a SQL function and can be reused across multiple tables.
|
|
11
|
+
- The function can use security context functions such as `current_user()` and `current_roles()` to dynamically filter based on the current login identity.
|
|
12
|
+
- Takes full effect for `SELECT`, `UPDATE`, `DELETE`, and aggregate queries.
|
|
13
|
+
- `UPDATE` / `DELETE` only affects visible rows (those that pass the filter); invisible rows are unaffected.
|
|
14
|
+
- Can be removed at any time via `ALTER TABLE ... DROP ROW FILTER` without affecting the underlying data.
|
|
15
|
+
|
|
16
|
+
## Usage Steps
|
|
17
|
+
|
|
18
|
+
### Step 1: Create a Filter Function
|
|
19
|
+
|
|
20
|
+
A filter function is a SQL scalar function that returns `BOOLEAN` (see [CREATE FUNCTION(SQL)](create-sql-function.md)), with parameters corresponding to the columns in the table to be evaluated.
|
|
21
|
+
|
|
22
|
+
The most typical use of row-level security is combining it with `current_user()` to filter by the current logged-in user — each user can only see rows that belong to them:
|
|
23
|
+
|
|
24
|
+
```sql
|
|
25
|
+
-- Each user can only see rows where the owner column equals their own login name
|
|
26
|
+
CREATE FUNCTION my_schema.owner_only(owner STRING)
|
|
27
|
+
RETURNS BOOLEAN
|
|
28
|
+
AS owner = current_user();
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
You can also combine `current_roles()` (which returns an array of the current user's roles) to do role-based filtering:
|
|
32
|
+
|
|
33
|
+
```sql
|
|
34
|
+
-- The admin role can see all rows; other users can only see rows where region = 'east'
|
|
35
|
+
CREATE FUNCTION my_schema.role_based(region STRING)
|
|
36
|
+
RETURNS BOOLEAN
|
|
37
|
+
AS array_contains(current_roles(), 'admin') OR region = 'east';
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
The filter condition can also be fixed logic unrelated to identity:
|
|
41
|
+
|
|
42
|
+
```sql
|
|
43
|
+
-- Only rows where region = 'east' are visible
|
|
44
|
+
CREATE FUNCTION my_schema.only_east(region STRING)
|
|
45
|
+
RETURNS BOOLEAN
|
|
46
|
+
AS region = 'east';
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
The function can also accept multiple parameters to implement multi-column combined evaluation:
|
|
50
|
+
|
|
51
|
+
```sql
|
|
52
|
+
-- Only rows where region = 'east' AND amount >= 200 are visible
|
|
53
|
+
CREATE FUNCTION my_schema.east_big(region STRING, amt INT)
|
|
54
|
+
RETURNS BOOLEAN
|
|
55
|
+
AS region = 'east' AND amt >= 200;
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
> The security context function `current_user()` returns the current logged-in username; `current_roles()` returns an array of the current user's roles (case-sensitive).
|
|
59
|
+
|
|
60
|
+
### Step 2: Bind to a Table
|
|
61
|
+
|
|
62
|
+
#### Bind at Table Creation
|
|
63
|
+
|
|
64
|
+
```sql
|
|
65
|
+
CREATE TABLE my_schema.docs (
|
|
66
|
+
id INT,
|
|
67
|
+
owner STRING,
|
|
68
|
+
content STRING
|
|
69
|
+
) ROW FILTER my_schema.owner_only ON (owner);
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
#### Bind to an Existing Table
|
|
73
|
+
|
|
74
|
+
```sql
|
|
75
|
+
ALTER TABLE my_schema.docs SET ROW FILTER my_schema.owner_only ON (owner);
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
The columns listed in `ON (...)` are passed as arguments to the filter function in order. The column types and count must match the function definition.
|
|
79
|
+
|
|
80
|
+
> It is recommended to use **schema-qualified names** when referencing filter functions (e.g., `my_schema.owner_only`). Without schema qualification, the system resolves based on the current schema, which may result in a `function not found` error.
|
|
81
|
+
|
|
82
|
+
### Step 3: Verify the Binding
|
|
83
|
+
|
|
84
|
+
```sql
|
|
85
|
+
DESC EXTENDED my_schema.docs;
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
A `# Row Filter` section will appear at the end of the output:
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
# Row Filter
|
|
92
|
+
Function quick_start.my_schema.owner_only
|
|
93
|
+
Bound Parameters owner
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Behavior Examples
|
|
97
|
+
|
|
98
|
+
Using `owner_only` (based on `current_user()`) as an example, assuming the current logged-in user is `alice`:
|
|
99
|
+
|
|
100
|
+
```sql
|
|
101
|
+
INSERT INTO my_schema.docs VALUES
|
|
102
|
+
(1, 'alice', 'alice doc'), (2, 'bob', 'bob doc'), (3, 'alice', 'another alice doc');
|
|
103
|
+
|
|
104
|
+
-- alice queries: only returns rows where owner = 'alice'
|
|
105
|
+
SELECT * FROM my_schema.docs ORDER BY id;
|
|
106
|
+
-- 1 | alice | alice doc
|
|
107
|
+
-- 3 | alice | another alice doc
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
The same SQL returns different data depending on who is logged in — when `bob` logs in, they only see the row with id=2. This is how row-level security dynamically filters by identity.
|
|
111
|
+
|
|
112
|
+
Row filter effects on various operations:
|
|
113
|
+
|
|
114
|
+
| Operation | Behavior |
|
|
115
|
+
|-----------|----------|
|
|
116
|
+
| `SELECT` | Returns only visible rows (rows where the filter function returns true) |
|
|
117
|
+
| Aggregates (`COUNT`/`SUM`, etc.) | Only aggregates visible rows |
|
|
118
|
+
| `UPDATE` | Only updates visible rows; invisible rows are unaffected |
|
|
119
|
+
| `DELETE` | Only deletes visible rows; invisible rows are retained |
|
|
120
|
+
|
|
121
|
+
For example, if `alice` executes `UPDATE my_schema.docs SET content = 'updated' WHERE id IN (1,2,3)`, only visible id=1 and id=3 are updated. Bob's id=2 is unaffected.
|
|
122
|
+
|
|
123
|
+
## Multi-Column Filter Function Example
|
|
124
|
+
|
|
125
|
+
```sql
|
|
126
|
+
CREATE FUNCTION my_schema.east_big(region STRING, amt INT)
|
|
127
|
+
RETURNS BOOLEAN
|
|
128
|
+
AS region = 'east' AND amt >= 200;
|
|
129
|
+
|
|
130
|
+
CREATE TABLE my_schema.o2 (id INT, region STRING, amt INT)
|
|
131
|
+
ROW FILTER my_schema.east_big ON (region, amt);
|
|
132
|
+
|
|
133
|
+
INSERT INTO my_schema.o2 VALUES (1,'east',100), (2,'east',300), (3,'west',300);
|
|
134
|
+
|
|
135
|
+
SELECT * FROM my_schema.o2 ORDER BY id;
|
|
136
|
+
-- 2 | east | 300 (only the row where region='east' AND amt>=200 is visible)
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
## Removing a Row Filter
|
|
140
|
+
|
|
141
|
+
```sql
|
|
142
|
+
ALTER TABLE my_schema.o2 DROP ROW FILTER;
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
After removal, all data in the table becomes visible again. The underlying data is not affected in any way.
|
|
146
|
+
|
|
147
|
+
```sql
|
|
148
|
+
SELECT * FROM my_schema.o2 ORDER BY id;
|
|
149
|
+
-- 1 | east | 100
|
|
150
|
+
-- 2 | east | 300
|
|
151
|
+
-- 3 | west | 300
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
## Notes
|
|
155
|
+
|
|
156
|
+
- The filter function must return `BOOLEAN`, and the column types and count in `ON (...)` must match the function parameters.
|
|
157
|
+
- Use schema-qualified names when referencing filter functions to avoid resolution failures.
|
|
158
|
+
- Row filters do not intercept data during writes (INSERT) — data is written to the underlying storage normally; visibility is only controlled during queries, updates, and deletes. If write-side constraints are also needed, combine with application-level logic.
|
|
159
|
+
- A table can have one row filter bound at a time. To rebind, run `ALTER TABLE ... SET ROW FILTER` again; to remove, use `ALTER TABLE ... DROP ROW FILTER`.
|
|
160
|
+
|
|
161
|
+
## References
|
|
162
|
+
|
|
163
|
+
- [CREATE FUNCTION(SQL)](create-sql-function.md): SQL scalar function syntax used to create filter functions
|
|
164
|
+
- [Column-Level Security (Dynamic Masking)](dynamic-mask.md): Column-level data protection, complementary to row-level security
|
|
165
|
+
- [CREATE TABLE DDL Syntax](create-table-ddl.md)
|
|
@@ -1,41 +1,52 @@
|
|
|
1
1
|
# Row-Level Permissions
|
|
2
2
|
|
|
3
|
+
When multiple departments or roles share the same analysis domain, you may not want everyone to see the full dataset — a sales rep in the North China region should only see North China data, and a store manager should only see data for their own store. Row-level permissions let you define each user's visible data range without splitting data tables or creating multiple analysis domains.
|
|
4
|
+
|
|
3
5
|
## Feature Overview
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
Row-level permissions work by configuring filter rules that restrict users to only the data rows that meet specified conditions. Once a rule takes effect, queries generated by the Agent automatically include the corresponding filter conditions, transparently to the user. For example, when both a North China user and a South China user ask "What are this year's orders?", the North China user sees only North China data and the South China user sees only South China data.
|
|
6
8
|
|
|
7
9
|
## Configuration Process
|
|
8
10
|
|
|
9
|
-
| Step
|
|
10
|
-
|
|
|
11
|
-
| 0. Feature
|
|
12
|
-
| 1. Define
|
|
13
|
-
| 2. Configure
|
|
11
|
+
| Step | Demo | Logic Description |
|
|
12
|
+
| ----------------------------- | ----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
+
| 0. Feature entry |  | |
|
|
14
|
+
| 1. Define permission rule |  | **Specify the data table and filter field for the permission rule**1. Go to the "Row-Level Permissions" page4. Select the data table to control |
|
|
15
|
+
| 2. Configure permission scope | 
 | **Apply the permission rule to specific users and set their accessible data scope**1. In the permission rule list, select the created rule4. Save the configuration |
|
|
14
16
|
|
|
15
17
|
## Permission Effects
|
|
16
18
|
|
|
17
|
-
| Scenario
|
|
18
|
-
|
|
|
19
|
-
| No row-level permission configured | Users can view all data in the data table
|
|
20
|
-
| Row-level permission configured
|
|
19
|
+
| Scenario | Data Visibility Scope |
|
|
20
|
+
| ---------------------------------- | --------------------------------------------------- |
|
|
21
|
+
| No row-level permission configured | Users can view all data in the data table |
|
|
22
|
+
| Row-level permission configured | Users can only see data within the permission scope |
|
|
21
23
|
|
|
22
24
|
### Example
|
|
23
25
|
|
|
24
|
-
Taking the Hong Kong
|
|
26
|
+
Taking the Hong Kong food and beverage industry as an example:
|
|
25
27
|
|
|
26
|
-
* Before configuration: Users can view order data from 2018
|
|
28
|
+
* Before configuration: Users can view order data from 2018 to 2025
|
|
27
29
|
|
|
28
|
-
* After configuration (accessible years set to "2022, 2023"): Users can only see order data for 2022 and 2023
|
|
29
|
-
: Users can only see order data for 2022 and 2023
|
|
31
|
+

|
|
30
32
|
|
|
31
33
|
## Notes
|
|
32
34
|
|
|
33
|
-
1
|
|
35
|
+
1\. Use meaningful names for permission rules (e.g., "North China Region Data Permission") for easier management
|
|
36
|
+
|
|
37
|
+
2\. After row-level permissions take effect, query results generated by the Agent are automatically filtered by the permission scope; users are unaware of the filtering
|
|
38
|
+
|
|
39
|
+
3\. A user can be covered by multiple permission rules; verify that the combined data scope meets expectations
|
|
40
|
+
|
|
41
|
+
4\. Permission rule changes take effect immediately; no restart or additional operations are required
|
|
34
42
|
|
|
35
|
-
|
|
43
|
+
5\. It is recommended to periodically review permission configurations to ensure consistency with business requirements
|
|
36
44
|
|
|
37
|
-
|
|
45
|
+
## Related Documentation
|
|
38
46
|
|
|
39
|
-
|
|
47
|
+
* [Answer Accuracy Improvement](answer-accuracy-improve.md) — Overall strategy for analysis domain partitioning and data isolation
|
|
48
|
+
* [Metrics and Answer Builder](metrics_answer_build.md) — Relationship between metric configuration and row-level permissions
|
|
49
|
+
* [Data Source Management](datagpt_data_source.md) — Data source configuration that row-level permissions depend on
|
|
50
|
+
* [Conversational Data Analytics (Analytics Agent)](datagpt_introduction.md) — Return to feature overview
|
|
40
51
|
|
|
41
|
-
|
|
52
|
+
^
|
|
@@ -1,26 +1,28 @@
|
|
|
1
|
+
# Scheduled Tasks
|
|
2
|
+
|
|
1
3
|
## Feature Overview
|
|
2
4
|
|
|
3
|
-
The Scheduled
|
|
5
|
+
The Scheduled Tasks feature allows users to create periodic data analysis tasks using natural language. The system will automatically execute analysis and push results at the scheduled time. It can be used for daily anomaly detection, business data monitoring, trend insights, and other scenarios, helping users automatically discover abnormal changes in data and receive analysis recommendations.
|
|
4
6
|
|
|
5
7
|
## Creating a Scheduled Task
|
|
6
8
|
|
|
7
9
|
**Method 1: ASK AI Conversational Creation**
|
|
8
10
|
|
|
9
|
-
| Step
|
|
10
|
-
|
|
|
11
|
-
| 1. User asks a question
|
|
12
|
-
| 2. Auto-monitoring suggestion
|
|
13
|
-
| 3. User confirms intent
|
|
14
|
-
| 4. Recommend monitoring metrics and configuration |  | "Help me analyze whether yesterday's business data has any anomalies?" |
|
|
14
|
+
| 2. Auto-monitoring suggestion |  | The system recognizes the user's anomaly monitoring intent and proactively recommends at the end of the analysis result, e.g.: "If such anomalies can be detected earlier, it can help the operations team intervene faster. I can help you set up daily automatic detection. Once a store rating falls below 3.0 or negative reviews exceed 20, I will notify you immediately and automatically analyze the cause." |
|
|
15
|
+
| 3. User confirms intent |  | Reply "OK, set it up for me" |
|
|
16
|
+
| 4. Recommend monitoring metrics and configuration |  | Based on the metrics and data distribution the user cares about, suggestions are provided: monitoring metrics (rating, negative review count, order volume, revenue), thresholds, execution frequency (daily at 09:00), push strategy (only push on anomalies), and the user is asked to confirm execution time, notification email, and monitoring metric scope |
|
|
17
|
+
| 5. User confirms configuration |  | Confirm or adjust monitoring metrics, execution time, notification email, etc. |
|
|
16
18
|
|
|
17
19
|
**Method 2: Manual Creation**
|
|
18
20
|
|
|
19
|
-
1
|
|
21
|
+
1\. Go to the "Scheduled Tasks" page
|
|
20
22
|
|
|
21
|
-
2
|
|
23
|
+
2\. Click the "+ Scheduled Task" button in the upper right corner
|
|
22
24
|
|
|
23
|
-
3
|
|
25
|
+
3\. Describe the task requirements through conversation; you can specify the email address directly
|
|
24
26
|
|
|
25
27
|
## Result Notification
|
|
26
28
|
|
|
@@ -28,27 +30,32 @@ The Scheduled Task feature allows users to create periodic data analysis tasks u
|
|
|
28
30
|
|
|
29
31
|
* Enter the recipient email address in the task configuration
|
|
30
32
|
* After the task execution is complete, the system will automatically send the analysis results to the specified email address
|
|
31
|
-
| Step 1: Email Notification | Step 2: Key Results Check | Step 3: View Full Analysis Process |
|
|
32
|
-
| -------------------------------------------------------- | ------------------------------------------------------- | --------------------------------------------------------- |
|
|
33
|
-
|  |  |  |
|
|
34
33
|
|
|
35
34
|
### Manual Viewing
|
|
36
35
|
|
|
37
|
-
*
|
|
36
|
+
* Go to the "Scheduled Tasks" page to view the task list
|
|
38
37
|
* Click on a specific task to view historical execution records and analysis results
|
|
39
|
-

|
|
40
39
|
|
|
41
40
|
## Task Details Page
|
|
42
41
|
|
|
43
42
|
* The task details page displays basic information and execution records:
|
|
44
|
-

|
|
45
44
|
|
|
46
45
|
## Notes
|
|
47
46
|
|
|
48
|
-
1
|
|
47
|
+
1\. Scheduled tasks are suitable for scenarios with high data update frequency (real-time or T+1); scenarios with slower data updates (e.g., monthly reports) are not recommended at this time
|
|
48
|
+
|
|
49
|
+
2\. Ensure the email address entered is correct; otherwise, you will not receive push results
|
|
50
|
+
|
|
51
|
+
3\. Task execution results are automatically generated by the Agent; it is recommended to manually verify key conclusions
|
|
52
|
+
|
|
53
|
+
4\. You can enable or disable tasks in the task list at any time
|
|
49
54
|
|
|
50
|
-
|
|
55
|
+
## Related Documentation
|
|
51
56
|
|
|
52
|
-
|
|
57
|
+
* [Chart Auto-Refresh Settings](chart-auto-refresh-guide.md) — Automatically update dashboard chart data without manual triggers
|
|
58
|
+
* [Answer Accuracy Improvement](answer-accuracy-improve.md) — Improve the accuracy of scheduled task analysis results
|
|
59
|
+
* [Conversational Data Analytics (Analytics Agent)](datagpt_introduction.md) — Return to feature overview
|
|
53
60
|
|
|
54
|
-
|
|
61
|
+
^
|
|
@@ -1,41 +1,119 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Security Features Overview
|
|
2
2
|
|
|
3
|
-
Singdata Lakehouse
|
|
3
|
+
Singdata Lakehouse provides security capabilities across five layers — identity authentication, access control, network isolation, data protection, and backup & recovery — covering mainstream compliance scenarios from enterprise security baselines to Classified Protection Level 3 and industry-specific regulations.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Security Capability Landscape
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
| Security Layer | Core Capabilities | Problems Addressed |
|
|
8
|
+
|----------------|-------------------|--------------------|
|
|
9
|
+
| Identity Authentication | MFA multi-factor authentication, SSO single sign-on | Account takeover, password leaks |
|
|
10
|
+
| Access Control | RBAC role system, fine-grained GRANT/REVOKE | Excessive privileges, unauthorized access |
|
|
11
|
+
| Network Isolation | IP allowlist, Private Link, private storage BYOS | Public internet exposure, traffic egress |
|
|
12
|
+
| Data Protection | Dynamic data masking, AES-256 storage encryption | Sensitive column leaks, static data exposure |
|
|
13
|
+
| Backup & Recovery | Time Travel, RESTORE TABLE, UNDROP | Accidental deletion or modification |
|
|
8
14
|
|
|
9
|
-
|
|
15
|
+
## Typical Compliance Scenarios and Feature Combinations
|
|
10
16
|
|
|
11
|
-
|
|
17
|
+
### Enterprise Internal Security Baseline
|
|
12
18
|
|
|
13
|
-
|
|
19
|
+
For teams just starting to build a data platform, prioritize the following three items:
|
|
14
20
|
|
|
15
|
-
|
|
21
|
+
- Establish a role system and use RBAC instead of direct grants for centralized permission management → [Access Control](access-control-general.md)
|
|
22
|
+
- Enable MFA on administrator accounts to prevent account compromise due to password leaks → [Identity Authentication](identity-auth.md)
|
|
23
|
+
- Configure an IP allowlist (network policy) to restrict access to corporate network segments → [Network Policy](network_policy.md)
|
|
16
24
|
|
|
17
|
-
|
|
25
|
+
### Classified Protection Level 3
|
|
18
26
|
|
|
19
|
-
|
|
27
|
+
Level 3 has explicit technical requirements across five control domains: identity verification, access control, security auditing, data confidentiality, and communication network security. The corresponding Lakehouse features are:
|
|
20
28
|
|
|
21
|
-
|
|
29
|
+
| Control Domain | Lakehouse Feature | Reference |
|
|
30
|
+
|----------------|-------------------|-----------|
|
|
31
|
+
| Identity Verification (two-factor authentication) | MFA / SSO | [Identity Authentication](identity-auth.md) |
|
|
32
|
+
| Access Control (least privilege) | RBAC + GRANT/REVOKE | [Access Control](access-control-general.md) |
|
|
33
|
+
| Security Audit (operation records) | Job history query, operation logs | [Security Compliance Audit Guide](security_compliance_audit_guide.md) |
|
|
34
|
+
| Data Transmission Confidentiality | SSL/TLS (enabled by default) | — |
|
|
35
|
+
| Data Storage Confidentiality | AES-256 storage encryption | [Storage Encryption](storage_encryption.md) |
|
|
36
|
+
| Communication Network Security | Private network connection (Private Link) | [Private Network Connection Overview](private-link-general.md) |
|
|
22
37
|
|
|
23
|
-
|
|
38
|
+
### Finance, Healthcare, and Other Sensitive Industries
|
|
24
39
|
|
|
25
|
-
|
|
40
|
+
Scenarios handling personal information and transaction data require additional data protection measures on top of the baseline:
|
|
26
41
|
|
|
27
|
-
|
|
42
|
+
- **Dynamic Data Masking**: Controls the visibility of sensitive columns such as phone numbers, ID numbers, and amounts by role, without touching the original data → [Dynamic Data Masking](dynamic-mask.md)
|
|
43
|
+
- **Storage Encryption (Custom KMS)**: Uses your own KMS key (ARN) so that key lifecycle is under your control; currently supports Alibaba Cloud and AWS → [Storage Encryption](storage_encryption.md)
|
|
44
|
+
- **Private Network Connection**: All data traffic stays on the internal network, never traversing the public internet → [Private Network Connection Overview](private-link-general.md)
|
|
45
|
+
- **Private Storage BYOS**: Data is written to your own object storage bucket; Singdata Lakehouse holds no data copies → [Private Storage BYOS](bring_your_own_storage.md)
|
|
28
46
|
|
|
29
|
-
|
|
47
|
+
### Data Disaster Recovery and Business Continuity
|
|
30
48
|
|
|
31
|
-
|
|
49
|
+
Scenarios that must meet RPO/RTO targets or guard against accidental operations:
|
|
32
50
|
|
|
33
|
-
|
|
51
|
+
- **Time Travel**: Retains 1 day of historical versions by default, configurable up to 90 days per table; supports querying historical snapshots at any point in time → [Backup and Recovery](data-recover.md)
|
|
52
|
+
- **RESTORE TABLE**: Rolls back table data to a specified point in time to recover from accidental overwrites
|
|
53
|
+
- **UNDROP TABLE**: Recovers a table after an accidental `DROP TABLE`
|
|
34
54
|
|
|
35
|
-
##
|
|
55
|
+
## Security Module Overview
|
|
36
56
|
|
|
37
|
-
|
|
57
|
+
### Access Control
|
|
38
58
|
|
|
39
|
-
|
|
59
|
+
Supports both ACL (direct grants) and RBAC (role-based grants); RBAC is recommended. Assign permissions to roles, then grant roles to users. Permission changes only require modifying the role definition rather than updating each user individually. There is no superuser in the system; all operations require explicit authorization.
|
|
40
60
|
|
|
41
|
-
|
|
61
|
+
- [Access Control Overview](access-control-general.md)
|
|
62
|
+
- [Configure Access Control](access-control-configuration.md)
|
|
63
|
+
- [Roles](roles.md) · [Metadata Objects and Privilege Points](meta-objects-and-privileges.md)
|
|
64
|
+
- [Explanation of Permissions for Built-in Workspace-Level Roles](permissions-of-built-in-workspace-level-roles.md)
|
|
65
|
+
- [User Authorization Getting Started Guide](user_permission_grand_guide.md)
|
|
66
|
+
|
|
67
|
+
### Identity Authentication
|
|
68
|
+
|
|
69
|
+
- **MFA**: Bind Google Authenticator; a dynamic verification code is required at login to prevent single-point password compromise
|
|
70
|
+
- **SSO**: Integrate with enterprise IdPs (such as Okta, Azure AD) so the enterprise manages account creation, deactivation, and permission lifecycle centrally
|
|
71
|
+
|
|
72
|
+
Reference: [Identity Authentication](identity-auth.md) · [Bind Google Authenticator (MFA)](using-google-authenticator.md) · [SSO Configuration](sso-configuration.md)
|
|
73
|
+
|
|
74
|
+
### Network Isolation
|
|
75
|
+
|
|
76
|
+
Three methods can be layered as needed, with increasing protection depth:
|
|
77
|
+
|
|
78
|
+
| Method | Protection Scope | Applicable Scenario |
|
|
79
|
+
|--------|------------------|---------------------|
|
|
80
|
+
| Network Policy (IP allowlist) | Blocks access requests from unauthorized IPs | Restricting connections to corporate network segments |
|
|
81
|
+
| Private Network Connection (Private Link) | Access via cloud provider internal network; traffic stays within the VPC | Production environments that prohibit public internet access |
|
|
82
|
+
| Private Storage (BYOS) | Data written to your own object storage bucket | Data sovereignty requirements; data must not reside on third-party infrastructure |
|
|
83
|
+
|
|
84
|
+
- [Private Network Connection Overview](private-link-general.md) · [Alibaba Cloud Private Network Connection Configuration](private_link.md)
|
|
85
|
+
- [Private Storage BYOS](bring_your_own_storage.md) · [Alibaba Cloud BYOS Configuration](alicloud_byos_configuration.md) · [Tencent Cloud BYOS Configuration](byos_tencentcloud_configuration.md)
|
|
86
|
+
|
|
87
|
+
### Dynamic Data Masking
|
|
88
|
+
|
|
89
|
+
A masking function is bound to a column. At query time the system dynamically rewrites the returned values based on the current user's identity or role, while the original data is always stored in full. Applicable to sensitive columns such as phone numbers, ID numbers, bank card numbers, and salary amounts. Masking policies can be bound at table creation time or added to or removed from existing table columns.
|
|
90
|
+
|
|
91
|
+
→ [Dynamic Data Masking](dynamic-mask.md)
|
|
92
|
+
|
|
93
|
+
### Storage Encryption
|
|
94
|
+
|
|
95
|
+
Enables AES-256 server-side encryption for data in newly created tables within a workspace. Two key modes are supported:
|
|
96
|
+
|
|
97
|
+
- **Managed Encryption**: Uses managed keys from the cloud provider's object storage service; no additional configuration required
|
|
98
|
+
- **Custom KMS Encryption**: Uses your own KMS key (ARN); the key lifecycle is under your control. Currently supports Alibaba Cloud and AWS
|
|
99
|
+
|
|
100
|
+
> **Note**: Once encryption is enabled on a table, it cannot be reverted to an unencrypted state. Encryption only applies to tables created after it is enabled; existing tables are not affected.
|
|
101
|
+
|
|
102
|
+
→ [Storage Encryption](storage_encryption.md)
|
|
103
|
+
|
|
104
|
+
### Backup and Recovery
|
|
105
|
+
|
|
106
|
+
Data protection is provided through the Time Travel mechanism:
|
|
107
|
+
|
|
108
|
+
- Retains 1 day of historical versions by default; configurable up to 90 days per table
|
|
109
|
+
- Historical data snapshots at any point in time within the retention window can be queried
|
|
110
|
+
- `RESTORE TABLE` rolls the table back to a specified point in time, overwriting current data
|
|
111
|
+
- `UNDROP TABLE` recovers a table after an accidental `DROP TABLE`
|
|
112
|
+
|
|
113
|
+
→ [Backup and Recovery](data-recover.md)
|
|
114
|
+
|
|
115
|
+
## Related Documentation
|
|
116
|
+
|
|
117
|
+
- [Security and Compliance](data_security.md) — Navigate all security features by scenario
|
|
118
|
+
- [Security Compliance Audit Guide](security_compliance_audit_guide.md)
|
|
119
|
+
- [Permission System Inventory Best Practices](security-system-inventory-based-information-schema.md)
|
|
@@ -52,7 +52,7 @@ SET schedule_job_queue_priority = 5;
|
|
|
52
52
|
```python
|
|
53
53
|
from clickzetta import connect
|
|
54
54
|
|
|
55
|
-
conn = connect(username='', password='', service='...', instance='...', workspace='...', schema='public', vcluster='
|
|
55
|
+
conn = connect(username='', password='', service='...', instance='...', workspace='...', schema='public', vcluster='DEFAULT')
|
|
56
56
|
my_param = {'hints': {'cz.sql.timezone': 'UTC+00'}}
|
|
57
57
|
cursor = conn.cursor()
|
|
58
58
|
cursor.execute("SELECT current_timestamp();", my_param)
|
|
@@ -1,37 +1,35 @@
|
|
|
1
1
|
# Before You Begin
|
|
2
2
|
|
|
3
|
-
Once your Singdata Lakehouse account has been set up, you can
|
|
3
|
+
Once your Singdata Lakehouse account has been set up, you can access Singdata Lakehouse through any of the following means:
|
|
4
4
|
|
|
5
|
-
* [
|
|
5
|
+
* [Lakehouse Studio](studio_manual.md): Use the browser-based web interface with our comprehensive integrated data development and management toolkit.
|
|
6
|
+
* [Data Agent](dataagent.md): A fully AI-interactive product built on top of Lakehouse + Studio, covering the full "development-operations-governance" lifecycle. It implements intelligent data platform upgrades with an Agentic AIOps philosophy, transforming data development from "people operating the platform" to "people directing Agents."
|
|
7
|
+
* [CZ-CLI](cz-cli.md): An operations tool for command-line and AI Agents, encapsulating capabilities for SQL execution, Schema management, Studio task development, and task run inspection. It supports direct terminal operations and also allows AI Agents to assist with data warehouse development and operations via natural language.
|
|
8
|
+
* [Data Analytics Agent](datagpt_intro.md): An intelligent analysis assistant built on Lakehouse that creates dynamic AI dashboards through natural language, embeds AI insights into key metrics, and goes beyond the static reporting capabilities of traditional BI tools.
|
|
9
|
+
* Applications built using Singdata Lakehouse connectors and drivers, as well as third-party client tools and applications, are supported. (See [Applications and tools for connecting to Singdata Lakehouse](tutorial_connect_to_lakehouse.md))
|
|
6
10
|
|
|
7
|
-
|
|
11
|
+
If you do not have an account yet, you can [register](logging-in.md) to get an account.
|
|
8
12
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
If you do not have an account yet, you can[contact us directly](https://www.singdata.com/contactus) to request an account.
|
|
12
|
-
|
|
13
|
-
For pricing and service details, see the [pricing page ](pricing.md).
|
|
13
|
+
For pricing and service details, see the [pricing page](pricing.md).
|
|
14
14
|
|
|
15
15
|
## Browser Requirements
|
|
16
16
|
|
|
17
|
-
Singdata Lakehouse Studio recommends using Google Chrome. Other browsers have not been tested as extensively as Chrome and may exhibit some unexpected behavior. If you encounter issues using the web interface with any browsers, please contact
|
|
17
|
+
Singdata Lakehouse Studio recommends using Google Chrome. Other browsers have not been tested as extensively as Chrome and may exhibit some unexpected behavior. If you encounter issues using the web interface with any browsers, please contact [Singdata Lakehouse Support](https://www.singdata.com/).
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## CZ-CLI OS Platform Requirements
|
|
20
20
|
|
|
21
|
-
[
|
|
21
|
+
[CZ-CLI](cz-cli.md) can be installed on the following platforms:
|
|
22
22
|
|
|
23
23
|
* Red Hat Enterprise Linux or a compatible operating system.
|
|
24
24
|
* macOS (64-bit).
|
|
25
25
|
* Microsoft Windows (64-bit).
|
|
26
26
|
|
|
27
|
-
Other platforms have not been tested at this time and may not be compatible with Singdata CLI. For example, some Linux variants may not have the libraries that the Singdata CLI client needs by default.
|
|
28
|
-
|
|
29
27
|
## Lakehouse Documentation LLM Navigation
|
|
30
28
|
|
|
31
29
|
If you are an AI Agent reading product documentation, the LLM navigation files for Lakehouse documentation are available at <https://www.singdata.com/llms.txt> and <https://www.singdata.com/llms-full.txt>. These files contain all documentation files and their URLs.
|
|
32
30
|
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
* `llms.txt` contains documentation categories, top-level directory file names, and their URLs.
|
|
32
|
+
* `llms-full.txt` contains documentation categories, top-level directories, and all file names with their URLs.
|
|
35
33
|
|
|
36
34
|
## Lakehouse AI Agent Skills
|
|
37
35
|
|
|
@@ -25,7 +25,7 @@ SHOW GRANTS ON TABLE public.orders;
|
|
|
25
25
|
SHOW GRANTS ON SCHEMA public;
|
|
26
26
|
|
|
27
27
|
-- View all grants on a VCluster
|
|
28
|
-
SHOW GRANTS ON VCLUSTER
|
|
28
|
+
SHOW GRANTS ON VCLUSTER DEFAULT;
|
|
29
29
|
|
|
30
30
|
-- View all grants on a workspace
|
|
31
31
|
SHOW GRANTS ON WORKSPACE my_workspace;
|
|
@@ -33,7 +33,7 @@ Cleaning, deduplication (QUALIFY), aggregation, date truncation — the core SQL
|
|
|
33
33
|
|
|
34
34
|
| | Original (Snowflake) | After Migration (Lakehouse) |
|
|
35
35
|
|---|---|---|
|
|
36
|
-
| Compute resource | `WAREHOUSE = compute_wh` | `VCLUSTER
|
|
36
|
+
| Compute resource | `WAREHOUSE = compute_wh` | `VCLUSTER DEFAULT` |
|
|
37
37
|
| Refresh strategy | `TARGET_LAG = '5 minutes'` | `REFRESH INTERVAL '5' MINUTE` |
|
|
38
38
|
| Dependency propagation | `TARGET_LAG = 'DOWNSTREAM'` (auto cascade) | No such concept; each layer refreshes independently |
|
|
39
39
|
| Manual refresh | `ALTER DYNAMIC TABLE ... REFRESH` | `REFRESH DYNAMIC TABLE ...` |
|
|
@@ -142,7 +142,7 @@ Lakehouse:
|
|
|
142
142
|
```sql
|
|
143
143
|
CREATE OR REPLACE DYNAMIC TABLE bsg_dynamic_tables.bronze_orders
|
|
144
144
|
REFRESH INTERVAL '5' MINUTE
|
|
145
|
-
VCLUSTER
|
|
145
|
+
VCLUSTER DEFAULT
|
|
146
146
|
AS
|
|
147
147
|
SELECT ...
|
|
148
148
|
```
|
|
@@ -252,7 +252,7 @@ By reading data existing in the Lakehouse, use Spark ML to train a recommendatio
|
|
|
252
252
|
* ```SQL
|
|
253
253
|
create table sample_movie_data(user_id int,movie_id int,rating float);
|
|
254
254
|
```
|
|
255
|
-
* Install Python package version
|
|
255
|
+
* Install Python package version 3.10 or above
|
|
256
256
|
|
|
257
257
|
* Install Pyspark
|
|
258
258
|
```SQL
|
|
@@ -67,7 +67,7 @@ After enabling SSO login, select **OAuth 2.0 / OIDC Protocol** in the right-side
|
|
|
67
67
|
:-: 
|
|
68
68
|
|
|
69
69
|
```
|
|
70
|
-
https://
|
|
70
|
+
https://api.clickzetta.com/clickzetta-portal/sso/oidc/consume?u={code}
|
|
71
71
|
```
|
|
72
72
|
|
|
73
73
|
Use this callback URL to register the Lakehouse application in your IdP service and record the Client\_ID and other configuration values for later use.
|
|
@@ -126,7 +126,7 @@ After enabling SSO login, select **SAML 2.0 Protocol** in the right-side pop-up.
|
|
|
126
126
|
:-: 
|
|
127
127
|
|
|
128
128
|
```
|
|
129
|
-
https://
|
|
129
|
+
https://api.clickzetta.com/clickzetta-portal/sso/saml/consume?u={code}
|
|
130
130
|
```
|
|
131
131
|
|
|
132
132
|
Use this address to register the application in the IdP, and record and save the Entity ID and X.509 certificate returned by the IdP.
|