WhereScape Enablement Pack for Teradata - RED 10
This is a guide to installing the WhereScape Enablement Pack for Teradata for WhereScape RED10
Prerequisites For PostgreSQL Metadata
Before you begin the following prerequisites must be met:
- Create Database and ODBC DSN:
- Supported* version of PostgreSQL (PostgreSQL 12 or higher)
- A database to house the RED Metadata Repository.
- A database for the Range Table DB (Optional)
- A database to house scheduler (Optional)
- Supported* version of PostgreSQL (PostgreSQL 12 or higher)
- Software Installations
- WhereScape RED10 with valid license key entered and EULA accepted
- WhereScape Enablement Pack for target database version RED10
- Windows Powershell (64-bit) version 4 or higher
- To check the Windows Powershell Version:
- Run the below command in Windows Powershell
Get-Host|Select-Object Version
- Run the below command in Windows Powershell
- To check the Windows Powershell Version:
- Run the below command in the Command Prompt
powershell $psversiontable
- Run the below command in the Command Prompt
- Run the following command using PowerShell
- The security protocol TLS 1.0 and 1.1 used by PowerShell to communicate with the PowerShell gallery has been deprecated and TLS 1.2 has been made mandatory
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12 Register-PSRepository -Default -Verbose Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
- The security protocol TLS 1.0 and 1.1 used by PowerShell to communicate with the PowerShell gallery has been deprecated and TLS 1.2 has been made mandatory
- Progress bar placeholder info line
Install-Module -Name PoshProgressBar -SkipPublisherCheck -Force
- Progress bar placeholder info line
- RED supports the following versions for the metadata repository: PostgreSQL 12 or higher
Prerequisites For PostgreSQL Metadata
Before you begin the following prerequisites must be met:
- Create Database and ODBC DSN:
- Supported* version of PostgreSQL (PostgreSQL 12 or higher)
- A database to house the RED Metadata Repository.
- A database for the Range Table DB (Optional)
- A database to house scheduler (Optional)
- Supported* version of PostgreSQL (PostgreSQL 12 or higher)
- Software Installations
- WhereScape RED10 with valid license key entered and EULA accepted
- WhereScape Enablement Pack for target database version RED10
- Windows Powershell (64-bit) version 4 or higher
- To check the Windows Powershell Version:
- Run the below command in Windows Powershell
Get-Host|Select-Object Version
- Run the below command in Windows Powershell
- To check the Windows Powershell Version:
- Run the below command in the Command Prompt
powershell $psversiontable
- Run the below command in the Command Prompt
- Run the following command using PowerShell
- The security protocol TLS 1.0 and 1.1 used by PowerShell to communicate with the PowerShell gallery has been deprecated and TLS 1.2 has been made mandatory
\[Net.ServicePointManager\]::SecurityProtocol = \[Net.ServicePointManager\]::SecurityProtocol -bor \[Net.SecurityProtocolType\]::Tls12 Register-PSRepository -Default -Verbose Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
- The security protocol TLS 1.0 and 1.1 used by PowerShell to communicate with the PowerShell gallery has been deprecated and TLS 1.2 has been made mandatory
- Progress bar placeholder info line
Install-Module -Name PoshProgressBar -SkipPublisherCheck -Force
- Progress bar placeholder info line
- RED supports the following versions for the metadata repository: PostgreSQL 12 or higher
Prerequisites Target Database
Before you begin the following prerequisites must be met:
- Access to an Azure SQL Server/SQL Server (Target Environment), with the following connectivity information:
- Server Name
- Database Name
- User Name
- Password
- At least one schema available to use as a RED Data Warehouse Target
- Azure SQL Server software installed
- Azure SQL Server ODBC driver (64-bit)
- Add ODBC DSN for Azure SQL Server Target Database
- Azure SQL Server ODBC driver (64-bit)
- SQL Server software installed
- SQL Server ODBC driver (64-bit)
- Add ODBC DSN for SQL Server Target Database
- SQL Server ODBC driver (64-bit)
- Python 3.8 or higher
- Select "Add Python 3.8 to PATH" from the installation Window
- Pip Manager Install with the command:
python -m pip install --upgrade pip
Installation Through Setup Wizard
Run Setup Wizard as administrator
Create a new repository or upgrade an existing repository.
Select the created ODBC DSN, input login details, and then select Validate. Click Next
Select the directory that contains the unzipped Enablement Pack for installation. Click Next
Using the checkboxed list, include or exclude the components that are to be installed. Click Next
Configure a target connection (for example, Data Warehouse) and its target locations. Validate and click Add.
When done, click Add and then Next to continue.
Configure a data source connection (optional) and its target locations. Validate and click Add. Click Next to continue.
Review the installation summary and click Install
Click View Logs to open the installation log. Click Finish once the installation is completed successfully.
Login to WhereScape RED.
There is a post-install script that will run at the first login to RED10 to complete the post-setup wizard installation process.
You will be directed to the below PowerShell window which will give a brief explanation about the post-installation process.
Click OK to start the post-installation. If pressed Cancel installation will stop and the user will be directed to RED.
The user will be directed to the window below, where they have to select the target connection to be configured. Additionally, by deselecting the provided options, the user can choose not to install a particular option.
You will be directed to the PowerShell window below. Provide the directory that contains the unzipped Enablement Pack.
Click OK
The progress bar will show the post-installation progress.
Users will have to choose the schema for the target setting that was provided. One pop-up will come for setting the default target schema for Date Dimension.
After selecting the target schema progress bar will show the progress for the installation and once it's completed, you will get the below pop-up.
After clicking OK, RED10 opens automatically.
The user will need to restart RED once.
Upgrade Of Existing Repository
For upgrade of an existing repository
- From host script set the script type of
wsl_post_install_enablement_pack
as Auto Execute - PowerShell Script
Important Upgrade Notes
If RED upgrades the repository option is chosen.
This enablement pack will overwrite any existing Source Enablement Pack UI Configs:
Connection UI Config | Load UI Config |
Amazon S3 | Load From Amazon S3 |
Azure Data Lake Storage Gen2 | Load From Azure Data Lake Storage Gen2 |
Google Cloud | Load From Google Cloud |
To ensure existing Source Enablement Pack connections and associated Load Tables continue to browse and load:
Go into UI Configuration Maintenance in RED before installing this Enablement Pack and rename the affected UI Configurations. While the updated Load Template will work with the previous Source Enablement Pack we recommend moving these earlier versions of Load Tables to newly created Parser-based connections following this install. The earlier versions of the Source Enablement Pack will be deprecated following this release.
Post Install Steps – Optional
If you used the script Setup Wizard for installation then the following optional post-install steps are available.
Configure Connections
There were two connections added that will optionally require your attention:
Below two are common for SQL Server and Azure SQL
- Connection: 'Database Source System' - this connection was set up as an example source connection,
- open it's properties and set it up for a source DB in your environment
- or you can remove it if not required
- Execute Update Procedure for dim_date_azsql to Initialize Date Dimension for Target
NOTE: Please avoid regenerating the procedure update_dim_date_azsql
as it is a custom procedure.
For Azure SQL Target following extended properties will require your attention:
- Target Connection Extended Property - Blob Storage Account
- Target Connection Extended Property - Blob Storage Access Key
- Target Connection Extended Property - Blob Storage Container
- Target Connection Extended Property - Blob Data Source
- Add exact record terminators for the files from the Windows source connection, please note \r\n and \n are considered as different record terminators.
NOTE: For record terminator '\n' use hexadecimal notation'0x0A'
NOTE: For Blob extended properties refer to the below section
Configure Azure SQL Database and Blob Storage
Run the below queries in the Azure SQL database query editor.
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<MASTER_KEY>';
CREATE DATABASE SCOPED CREDENTIAL <BlobStorageCredential> WITH IDENTITY = 'SHARED ACCESS SIGNATURE', SECRET = '<SAS_TOKEN>';
DROP EXTERNAL DATA SOURCE <Blob Data Source>;
CREATE EXTERNAL DATA SOURCE <Blob Data Source>WITH (TYPE = BLOB_STORAGE,LOCATION = 'https://<Blob Storage Account>.blob.core.windows.net/<Blob Storage Container>/<Directory>',CREDENTIAL = <BlobStorageCredential> );
Keywords mentioned in <> in blue need to be replaced with the values that can be found on Azure
Source Enablement Pack Support
Source Pack Name | Supported By Azure SQL Server/SQL Server | Supported Features | Prerequisites |
Cloud File Parser | 1. CSV | Bulk load | Refer to Windows Parser Guide |
Windows Parser | 1. CSV | Load Template, Source Properties will have option to select parser type to load the files. | Refer to Windows Parser Guide |
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 to using the 'cd' command:C:\Windows\system32> cd <full path to the unpacked folder>
Run Powershell (.ps1) scripts from the administrator prompt by typing the Powershell run script command, for example:C:\temp\EnablementPack>Powershell -ExecutionPolicy Bypass -File .\Setup_Enablement_Pack.ps1
In the event you can not bypass the Powershell execution policy due to group policies you can instead try -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
To avoid having to provide all the parameters again you can copy the full command line with parameters from the first "INFO" message from the beginning of the console output.
Bulk load error on SQL SERVER
Interactive load
Scheduler load
For bulk load error, the 'bulkadmin' permission is required.
SQL SERVER > SECURITY > LOGINS > USER > PROPERTIES >SERVER ROLES
For bulk load error Operating system error code 5(Access is denied)
Failed to load data: ('42000', '\[42000\] \[Microsoft\]\[ODBC Driver 17 for SQL Server\]\[SQL Server\]Cannot bulk load because the file "C:\WhereScape\Temp\...\xxxx.csv" could not be opened. Operating system error code 5(Access is denied.). (4861) (SQLExecDirectW)')
- Grant SQL Server access to the bulk load folder by adjusting folder permissions. Navigate to the folder, right-click, select Properties, go to the Security tab, click Edit, and then Add. In the new window, select Advanced, click Find Now, and locate the appropriate SQL Server user (e.g., SQLServerMSSQLUser$UserName$SQLExpress). Confirm by clicking OK through all opened dialogs.
- If the first fix doesn't resolve the issue, verify if permissions are also applied to subfolders. Navigate to the advanced settings, and check the 'Inheritance' status. If it's 'Disabled,' enable it by using the "Allow Inheritance" button.
Row Terminator For Linux
Error Message: Failed to load data: ('42000', '\[42000\] \[Microsoft\]\[ODBC Driver 17 for SQL Server\]\[SQL Server\]Cannot obtain the required interface ("IID_IColumnsInfo") from OLE DB provider "BULK" for linked server "(null)". (7301) (SQLExecDirectW)')
When you specify '{*}\n{*}' as a row terminator for bulk import in {_}UNLOAD_RECORD_CHAR_
extended property or source properties, or implicitly use the default row terminator, BULK INSERT statement expects a carriage return-line feed combination (CRLF) as the row terminator. If your source file uses a line feed character only (LF) as the row terminator - as is typical in files generated on Unix and Linux computers - use hexadecimal notation to specify the LF row terminator. For example use '{*}0x0A{*}' in _UNLOAD_RECORD_CHAR_
extended property or source properties for Unix and Linux machines.
The hexadecimal notation is not required for Parquet file for Unix and Linux machines.
Python requirements for offline install
Additionally to the base Python installation being required, the WhereScape Python Template set also requires certain additional Python libraries. The install scripts use the PIP (package manager) to download these libraries, however, for offline installs, you will need to install the required libraries yourself.
Required Python libraries/add-ons:
- pywin32-ctypes
- python-tds
- pywin32
- glob2
- gzip-reader
- regex
- pyodbc
If a valid RED installation can not be found
If you have RED 10.x or higher installed but the script (Setup_Enablement_Pack.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.