You may have heard about the concept of Pooling when it comes to Tableau Bridge, but if you haven’t, you’re probably wondering, “What is this? Does it mean we’re going swimming?” We wish, but no! The purpose of Pooling is to distribute or load balance refresh tasks for data sources or virtual connections (if you have Tableau Data Management) that connect to your on-premises data. This blog will discuss Pooling in a deployment of Tableau bridge on Windows. If you find yourself curious about Pooling on Linux, check out John’s blog.
In Pooling, your data refresh tasks are distributed among the available Tableau Bridge clients in a “pool,” whose access is assigned to a domain within your organization’s network. As mentioned in the first and third blogs in this series, each Tableau Bridge “client” or instance can only connect to one Tableau Cloud site at a time (and only one Bridge client can be installed per virtual machine).
However, to enable Pooling, a Tableau Cloud site can be connected to multiple Tableau Bridge clients and therefore, multiple virtual machines, as illustrated by the diagram below:
The next key item to be aware of with Pooling is that pools map to domains (i.e., *.orgname.local, mysql.orgname.lan etc.) within your organization’s network. Below, for example, we have a pool called “Network Pool A.” (If you’re a Tableau Cloud Site Admin, you can set up your pool by going to Settings>Bridge>Pooling):
At the bottom of the Settings>Bridge page, the “Private Network Allowlist” is where you’ll add domains specific to the pool in which they should belong:
A Bridge client can support refreshing multiple types or domains of data, as long as the Bridge client’s virtual machine has the necessary drivers installed. So, in the “Private Network Allowlist” you might then have a second domain mapped to the same pool (e.g., “Network Pool A”).
For example, in the diagram below, Pool A could have two virtual machines—one is connected to both Oracle and MySQL Servers, while a second machine is only connected to Oracle. The first machine in Pool A needs to have drivers for both Oracle and MySQL installed, while the second machine only needs to have a driver for Oracle installed. As stated in our 3rd blog about installing Bridge, Oracle, MSSQL and Postgres drivers automatically get installed with the Bridge client, so you would need to download the MySQL driver and install it on the applicable virtual machine:
Perhaps in this environment, you have a number of critical Oracle-based data sources that need to be consistently and frequently refreshed and you cannot risk down time. By creating these pools, you’re able to load balance the data freshness tasks for this critical data. Note that Tableau Cloud arbitrarily chooses a connected and available client within the designated pool to perform a refresh. Therefore, by allocating more clients to a given pool, you reduce risk of refresh failure, should another client in the pool go offline or is at capacity.
With Pooling, in addition to creating the pools and specifying domains or IP addresses for them, here are some additional items to be aware of:
1. Only Tableau Cloud Site Adminis can configure and maintain pooling.
2. Before configuring, ensure clients like Tableau Bridge can connect to your Tableau Cloud Site (Go to Settings>Authentication>Connected Clients):
3. Pooling requires you have Tableau Bridge version 2021.4 or later installed on your virtual machine(s).
With Pooling set-up and established, let’s take a look at the next natural step in this series: scheduling your refreshes for your on-premises data extracts.