Introduction
In today's data-driven world, the ability to swiftly and securely recover databases is paramount. As businesses migrate towards cloud-based solutions, the demand for efficient data restoration tools has increased. Enter Netezza Performance Server for Cloud Pak for Data as a Service offers unparalleled database recovery capabilities. Netezza stands out for its ability to restore databases from any deployment to any other deployment seamlessly.
Ground-to-Cloud, Cloud-to-Cloud, Cloud-to-Ground, Source-to-Target database within the same instance
This Blog will demonstrate Ground-to-Cloud restoration. This type of restoration can serve for: disaster recovery, development. sandbox, alternate production, etc.
Ground: Netezza Performance Server for Cloud Pak for Data System (NPSCPDS)
Cloud: Netezza Performance Server for Cloud Pak for Data as a Service (NPSaaS)
Netezza Performance Server: A Brief Overview
Netezza Performance Server is known for its high-speed, scalable analytics platform. With its roots in the on-premises world, Netezza has long been favored for its ability to handle massive volumes of data and complex queries with ease. As the landscape shifts towards hybrid deployments, Netezza has adapted by offering those same capabilities as a managed service on AWS and Azure, enabling it to run seamlessly in on-cloud environments as well.
Restoring Databases with Ease
One of the standout features of Netezza Performance Server for Cloud Pak for Data as a Service is its seamless database restoration capabilities. Whether you're migrating from on-premises infrastructure or recovering from a disaster scenario, Netezza Performance Server simplifies the process, ensuring minimal downtime and maximum data integrity.
Step 1: Backing up the Source On-Premises Database(s)
Before proceeding with the migration process, create a backup of the source on-premises database(s) directed to Cloud Object Storage. Netezza supports IBM Cloud Object Storage, AWS S3 and Azure Blob. This Blog will demonstrate the use if IBM COS.
The cloud administrator created a bucket and provided the credentials:
"bucket_name": "ibmcos-nzbucket"
"access_key_id": "c1c0cf2e38e222914c789c472fc10c9b",
"secret_access_key": "91b43c0863a91c4fe377b4594590b3791ce78f4666c7038e"
"endpoint": "s3.us-east.cloud-object-storage.appdomain.cloud"
Note: the access keys above are not valid and here for illustration purposes.
If the firewall blocks network traffic between the on-premises system and IBM Cloud Object Store you can use the nz_s3connector (AWS S3 and IBM COS) from a bastion host in your enterprise that has access to the on-premises Netezza backup image and the IBM COS bucket. Login to the on-premises NPS host as the nz
user and run the following command:
nzbackup -verbose \
-db demodb \
-connector ibmcos \
-connectorArgs \
UNIQUE_ID=nzbkp:\
ACCESS_KEY_ID=c1c0cf2e38e222914c789c472fc10c9b:\
SECRET_ACCESS_KEY=91b43c0863a91c4fe377b4594590b3791ce78f4666c7038e:\
DEFAULT_REGION=us-east:\
BUCKET_URL=ibmcos-nzbucket:\
ENDPOINT=s3.us-east.cloud-object-storage.appdomain.cloud
Step 2: Set up a Cloud Object Store Destination in the Netezza User Interface
To backup or restore to/from COS, you must have a destination bucket setup created.
Follow the steps Create Destination to configure the Netezza instance for backup/restore to/from cloud object storage.
Step 3: Scan the backups in the registered destination in Step 2.
Scan backup for Netezza use nz cli (this is only needed for backups moved from other systems into the object storage). Install the nz
tool on a server that has access to the NPSaaS instance. Details on how to install the nz
tool found here.
Set the following environment variables:
export NZ_HOST='nz-<removed>.us-east-1.data-warehouse.cloud.ibm.com'
export NZ_PASSWORD='SomePassw0rd@blog'
export NZ_USER='admin'
export APISERVER_URL='https://api-nz-prod-cluster4.us-east-1.data-warehouse.cloud.ibm.com/crn:v1:bluemix:public:data-warehouse:us-east:a/d2c2b0c90bac496fa06e2b950d9611a0:b998fddd-a7b4-410f-aa8a-a9fb677c3b44::'
Scan the backups in the IBM COS to be accessible to the Netezza instance:
nz nzbatchbnr ls scan-cloud --unique-id nzbkp \
--access-key c04c97c52b99487c98419222e36fc013 \
--secret-key 7884ce69937bce3fb046f704607cf0691ba59c39e8e0378b \
--bucket ibmcos-nzbucket \
--region us-east \
--endpoint s3.us-east.cloud-object-storage.appdomain.cloud \
--destination ibm
Step 4: List the available backups for Netezza
nz nzbatchbnr ls
Step 5: Restore database
nz nzrestore -verbose \
-db demodb \
-sourcedb demodb \
-connector ibmcos \
-npshost npshost1.ibm.com \
-backupset 20240319194040 \
-connectorArgs \
UNIQUE_ID=bmi_poc_bkp:\
ACCESS_KEY_ID=c1c0cf2e38e222914c789c472fc10c9b:\
SECRET_ACCESS_KEY=91b43c0863a91c4fe377b4594590b3791ce78f4666c7038e:\
DEFAULT_REGION=us-east:\
BUCKET_URL=ibmcos-nzbucket:\
ENDPOINT=s3.us-east.cloud-object-storage.appdomain.cloud
Step 6: Verify database and tables available
nz run nz_db_tables_rowcount demodb
Conclusion
Netezza Performance Server for Cloud Pak for Data as a Service offers a seamless transition from on-premises backups to Netezza cloud instances. By streamlining the restoration process and providing robust Web Console and command line tools, IBM empowers businesses to maintain continuity and unlock the full potential of their data assets. With Netezza Performance Server, the journey from backup to recovery has never been smoother.