Manage the Semarchy xDM native app
This page provides SQL commands for setting up, monitoring, and maintaining the xDM native app on Snowflake.
Snowflake support in xDM is a preview feature. It is not suitable for production environments. Use this feature for testing and evaluation purposes only. |
Initial setup and configuration
-
Install the application from the Snowflake Marketplace:
CREATE APPLICATION <native_app_name> FROM APPLICATION PACKAGE <app_package_name>;
-
Verify installation by checking the service status:
CALL <native_app_name>.xdm_public.service_status();
Both containers (server and repository) should show READY status.
|
-
Configure storage settings:
CALL <native_app_name>.xdm_public.reload_app( <volume_size>, <volume_iops>, <volume_throughput> );
Below is a detailed description of each parameter:
Parameter |
Required |
Description |
|
No |
The storage volume size (in GB) used by the repository container (default: |
|
No |
The maximum input/output operations per second (IOPS) supported for the repository storage (default: |
|
No |
The peak throughput (MiB/s) supported for the repository storage (default: |
Daily operations and maintenance
Application monitoring
-
Check current status to verify the application is running correctly:
CALL <native_app_name>.xdm_public.service_status();
-
View the xDM container logs to monitor operations or troubleshoot issues:
CALL <native_app_name>.xdm_public.xdm_server_logs([<number_of_lines>]);
-
View the repository container logs for database-related activities:
CALL <native_app_name>.xdm_public.xdm_repo_logs([<number_of_lines>]);
Backup and recovery
-
Create a named repository database backup to prevent data loss:
CALL <native_app_name>.xdm_public.xdm_repo_backup(<backup_name>);
-
Restore from a backup if needed:
CALL <native_app_name>.xdm_public.xdm_repo_restore(<backup_name>);
Restoring a backup will result in service interruption. This process suspends the container, restores the volume, and then resumes the container. |
Application lifecycle management
-
Temporarily pause the application to conserve resources:
CALL <native_app_name>.xdm_public.suspend_app();
-
Resume a paused application:
CALL <native_app_name>.xdm_public.resume_app();
Resuming the application automatically upgrades xDM to the latest image version. |
-
Permanently stop the xDM native app, and destroy all containers and volumes:
CALL <native_app_name>.xdm_public.stop_app();
This operation permanently deletes all repository data and cannot be undone. |
Application upgrade
-
Create a backup before upgrading:
CALL <native_app_name>.xdm_public.xdm_repo_backup('pre_upgrade_' || TO_VARCHAR(CURRENT_DATE()));
-
Upgrade the native app containers:
CALL <native_app_name>.xdm_public.reload_app(
[<volume_size>,]
[<volume_iops>,]
[<volume_throughput>]);
Below is a detailed description of each parameter:
Parameter |
Required |
Description |
|
No |
The storage volume size (in GB) used by the repository container (default: |
|
No |
The maximum input/output operations per second (IOPS) supported for the repository storage (default: |
|
No |
The peak throughput (MiB/s) supported for the repository storage (default: |
This operation automatically upgrades xDM to the latest image version. |