Manage the Semarchy xDM Native App
This page provides SQL commands for setting up, monitoring, and maintaining the Semarchy Native App on Snowflake.
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>,
<workitemsexec_interval>
);
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 (in MiB/s) supported for the repository storage (default: |
|
No |
The interval (in seconds) between each check for workflow items to process (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>);
|
To ensure the backup operation succeeds, the backup name must follow Snowflake identifier naming rules. It must start with a letter and may contain only letters, numbers, and underscores; spaces, hyphens, and other special characters are not allowed. For more information, see the official Snowflake documentation. |
-
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 Semarchy 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
Patch upgrades of the Semarchy Native App are fully automated. Configuration parameters such as storage size, IOPS, and throughput are preserved automatically during patch upgrades, and no manual intervention is required.
|
If additional safeguards are desired, administrators can back up the repository before launching the upgrade process by executing the following command:
|
|
In case manual intervention is required, the following command can be used to upgrade the Native App containers:
Below is a detailed description of each parameter:
|