Netezza Performance Server

 View Only

Journey to Cloud - How to seamlessly migrate "Netezza Performance Server (NPS)" workloads from on-prem to the Cloud

By BRAJESH PANDEY posted Tue August 25, 2020 01:32 PM


As you may know, on June 19th, 2020 we announced “Netezza Performance Server on Cloud” worldwide, yes you heard it right, now you can run Netezza anywhere (on-prem and Cloud). Sometimes I get this question, “is it 100% Netezza compatible?” I just want to let you know that there is no question of compatibility because it is the same Netezza Performance Server (NPS) common code running everywhere.

As of today, we support two Clouds as mentioned below

  • IBM Cloud
  • AWS
  • More to come in future

In this article, I mainly want to talk about “Migration from Netezza (on-prem) to Netezza (on-cloud)”.

There are mainly two approaches.

 Using “nz_migrate” tool
  • One step process to run nz_migrate tool on source system (on-prem).


Using “nzbackup / nzrestore” tool

      This involves 4 steps
  1. Take a backup locally on your on-prem system.
  2. Migrate files to S3 bucket on Cloud
  3. sync S3 with NPS on-cloud
  4. Restore from S3 bucket

How to run those commands? Simple enough

  • First approach: nz_migrate
    • EXT_HOSTNAME - external endpoint provided for NPS on-cloud.
    • Download 11.x Netezza Software support tool.
            On SOURCE system (on-prem) run nz_migrate:

            For ex,
            /nz/support/bin/nz_migrate -sdb SRCDB -tdb TargetDB -thost ${EXT_HOSTNAME} -CreateTargetDatabase yes -tuser <user>  -tpassword <password>
    • Some tips/tricks:
      • Performance depends on network throughput between the systems.
      • nz_migrate supports “-streams” option to run more load threads in parallel. Though nz_migrate is already optimized with default settings, sometimes it’s helpful to increase #streams get a better throughput.

  • Second approach (backup and restore)


    • EXT_HOSTNAME – external endpoint provided for NPS on-cloud.
    • NAMESPACE (NPS on-cloud)
    • S3 bucket info and creds
      • ACCESS_KEY
      • SECRET_KEY
      • REGION (empty for IBM Cloud)
      • ENDPOINT (only applicable to IBM Cloud)
      • BUCKET (name of the bucket)
    • NPSHOSTNAME (NPS on-prem)
    • Download 11.x Netezza Software support tool.
    • Download nzcli utility
      • On SOURCE (for ex, Linux system
                              curl -0 -o nzcli -k https://${EXT_HOSTNAME}/v1/download/nzcli-linux-amd64

                   chmod +x nzcli                                                           


    1. Skip if you already have taken back up on local filesystem else take backup.
                  nzbackup -db SRCDB -dir /nzscratch/backups

                2.  Migrate files to S3 Cloud buckets

                 IBM Cloud

                 nz_s3connector -db SYSTEM -dir /nzscratch/backups -connectorArgs "UNIQUE_ID=${NAMESPACE}:ACCESS_KEY_ID=${ACCESS_KEY}:SECRET_ACCESS_KEY=${SECRET_KEY}:DEFAULT_REGION='':BUCKET_URL=${BUCKET}:ENDPOINT=${ENDPOINT}" -npshost ${NPSHOSTNAME} -upload -verbose


              nz_s3connector -db SYSTEM -dir /nzscratch/backups -connectorArgs "UNIQUE_ID=${NAMESPACE}:ACCESS_KEY_ID=${ACCESS_KEY}:SECRET_ACCESS_KEY=${SECRET_KEY}:DEFAULT_REGION=${REGION}:BUCKET_URL=${BUCKET}" -npshost ${NPSHOSTNAME} -upload -verbose    

3. Sync S3 with NPS instance on-cloud

IBM Cloud

./nzcli nzbatchbnr ls scan-s3 --unique-id ${NAMESPACE}  --access-key  ${ACCESS_KEY} --secret-key ${SECRET_KEY}  --bucket ${BUCKET}  --endpoint ${ENDPOINT}  -host ${EXT_HOSTNAME} -u admin -pw <password>

./nzcli nzbatchbnr ls scan-s3 --unique-id ${NAMESPACE}  --access-key  ${ACCESS_KEY} --secret-key ${SECRET_KEY}  --bucket ${BUCKET}  --region ${REGION}  -host ${EXT_HOSTNAME} -u admin -pw <password>


               You don’t require to pass S3 credentials in nzcli command if you already configure backup and restore through NPS console.

4. Access NPS on-cloud console and restore that "external" backup 
    1. In browser - https://{CONSOLE}
    2. Click on “backups”
    3. Search for “external” backup
    4. Run restore operation