This is a guide to installing the WhereScape Enablement Pack for Redshift for WhereScape RED 8.6.1.x
Prerequisites
Before you begin the following prerequisites must be met:
- A supported* version of SQL Server or Azure SQL with
- a database to house the RED Metadata Repository
- (optionally) a database for the Range Table DB
- ODBC DSN's created for these DB's
- A Redshift environment with at least one schema available to use as a RED Data Warehouse Target
- Redshift software installed
- Amazon Redshift ODBC driver (64-bit)
- ODBC DSN created to connect to your RED Data Warehouse on Redshift
- Access to a Redshift System, with the following connectivity information:
- Server Name
- Database Name
- Port
- User Name
- Password
- Permission to access svv_table_info. Can be added by an Administrator using: --> GRANT SELECT ON svv_table_info TO yourUserName
- Access to an S3 bucket in the same region as your Redshift system to be used for temporary files while loading data from Windows files and database tables. Specifically, you need to know:
- Access Key, Secret Key, Region
- Alternatively, instead of Access and Secret Keys, you could use an Arn Key in this format: arn:aws:iam::YOUR_AWS_ACCOUNT_ID:role/YOUR_RedshiftAccessRole
- S3 temporary or work directory folder in this format: s3://bucketName/folderName
- WhereScape RED version 8.6.1.0 or higher
- Must be pre-installed with valid license key entered and EULA accepted
- WhereScape Enablement Pack for Redshift version 8.6.1.0 or higher
- Downloaded and unpacked to a local temp folder
- Windows Powershell (64-bit) version 5 or higher
- Start Windows PowerShell As Administrator, then run these commands:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
- Install-Module AWSPowershell
- Start Windows PowerShell As Administrator, then run these commands:
- RED supports the following versions for the metadata repository: MS SQL SERVER 2012 to 2019 and Azure SQL DB
Enablement Pack Setup Scripts
Scripts entirely drive the Enablement Pack Install process. The table below outlines these scripts, their purpose, and if Run as Administrator is required.
# | Enablement Pack Setup Scripts | Script Purpose | Run as Admin | Intended Application |
1 | install_New_RED_Repository.ps1 | Setup and configure a new RED Metadata Repository for Redshift | Yes | New RED installations ONLY |
2 | install_WslPowershell_Modules.bat | Installs or updates WslPowershell Modules on this machine | Yes | New and Existing installations |
3 | import_powershell_templates.ps1 | Imports or updates the Powershell Templates to a RED Metadata Repository. Also includes any Script or Procedure Imports | no* | Existing installations |
4 | set_default_templates.ps1 | Applies the RED Connection defaults in a RED Metadata Repository for Powershell templates | no* | Existing installations |
Each Powershell script in the list above provides some help at the command line, this can be output by passing the -help
parameter to the script.
Step-by-step guides
Setup and configure a new RED Metadata Repository for Redshift
- Double the Prerequisites section
- Run as Administrator:
Script 1 > Powershell -ExecutionPolicy Bypass -File .\install_New_RED_Repository.ps1
Script 2 > install_WslPowershell_Modules.bat
Install or Update WhereScape Powershell Templates
- Run as Administrator -
Script 2 - install_WslPowershell_Modules.bat
- Run -
Script 3 -
import_powershell_templates.ps1
- Run -
Script 4 - set_default_templates.ps1
Set Connection defaults for a Template Set
- Run -
Script 4 - set_default_templates.ps1
- Choose Powershell when prompted
Post Install Steps - Optional
If you used the script install_New_RED_Repository.ps1
then the following optional post-install steps are available
Configure Connections
There were two connections added that will optionally require your attention:
- Target Connection (Redshift) - check the extended properties section.
- Add ACCESS_KEY and SECRET KEY for s3 bucket
- Add CLOUD_WORKDIR -this is the s3 bucket directory location
- Add REGION of the s3 bucket
- Connection: 'Database Source System' - this connection was set up as an example source connection,
- Open its properties and set it up for a source DB in your environment
- or, you can remove it if not required
- Connection: 'Range Table Location' - this connection is an example target connection for your Range Table DB on SQL Server,
- If you do not intend to use the "Ranged Loading" templates then this can be removed
- Otherwise, open its properties and set it up to point to a suitable SQL DB target to store your control tables for Ranged Loading
Enable Script Launcher Toolbar
Several stand-alone scripts provide some features such as "Ranged Loading", these scripts have been added to the Script Launcher menu but you will need to enable the menu toolbar item to see them.
To enable the Script Launcher menu in RED, select View>Toolbars>Script Launcher
Source Enablement Pack Support
Source Pack Name | Supported By Azure Synapse | Supported Features |
Amazon S3 | Yes | Batch load from s3 to Redshift |
Azure Data Lake Storage Gen2 | Yes | Download the file from the Azure Data Lake Storage Gen2 bucket and load it to Redshift |
Google Drive | No | None |
Troubleshooting and Tips
Run As Administrator
Press the Windows Key on your keyboard and start typing cmd.exe, when the cmd.exe icon shows up in the search list right click it to bring up the context menu, select Run As Administrator
Now you have an admin prompt navigate to to the folder where you have unpacked your WhereScape Red Enablement Pack using the cd
command:C:\Windows\system32> cd <full path to the unpacked folder>
Run batch (.bat) scripts from the administrator prompt by simply typing the name at the prompt and clicking enter, for example:C:\temp\EnablementPack>install_WslPowershell_Modules.bat
Run Powershell (.ps1) scripts from the administrator prompt by typing the Powershell run script command, for example:C:\temp\EnablementPack>Powershell -ExecutionPolicy Bypass -File .\install_New_RED_Repository.ps1
-ExecutionPolicy RemoteSigned
which should allow unsigned local scripts.Windows Powershell Script Execution
On some systems, Windows Powershell script execution is disabled by default. There are several workarounds for this which can be found by searching the term "Powershell Execution Policy".
Here is the most common workaround that WhereScape suggests, which does not permanently change the execution rights:
Start a Windows CMD prompt as Administrator, change the directory to your script directory, and run the WhereScape Powershell scripts with this command:
cmd:>Powershell -ExecutionPolicy Bypass -File .\<script_file_name.ps1>
Restarting failed scripts
Some of the setup scripts will track each step and output the step number when there is a failure. To restart from the failed step (or to skip the step) provide the parameter -startAtStep <step number>
to the script.
Example: Powershell -ExecutionPolicy Bypass -File .\<script_file_name.ps1> -startAtStep 123
If a valid RED installation can not be found
If you have Red 8.6.1.x or higher installed but the script (install_New_RED_Repository.ps1) fails to find it on your system then you are most likely running the PowerShell (x86) version which does not show installed 64-bit apps by default. Please open a 64-bit version of PowerShell instead and re-run the script.