![]() |
VOOZH | about |
Apache Spark is a fast and general engine for large-scale data processing. When paired with the CData JDBC Driver for Tableau CRM Analytics, Spark can work with live Tableau CRM Analytics data. This article describes how to connect to and query Tableau CRM Analytics data from a Spark shell.
The CData JDBC Driver offers unmatched performance for interacting with live Tableau CRM Analytics data due to optimized data processing built into the driver. When you issue complex SQL queries to Tableau CRM Analytics, the driver pushes supported SQL operations, like filters and aggregations, directly to Tableau CRM Analytics and utilizes the embedded SQL engine to process unsupported operations (often SQL functions and JOIN operations) client-side. With built-in dynamic metadata querying, you can work with and analyze Tableau CRM Analytics data using native data types.
Download the CData JDBC Driver for Tableau CRM Analytics installer, unzip the package, and run the JAR file to install the driver.
$ spark-shell --jars /CData/CData JDBC Driver for Tableau CRM Analytics/lib/cdata.jdbc.tableaucrm.jar
Tableau CRM Analytics uses the OAuth 2 authentication standard. Obtain the OAuthClientId and OAuthClientSecret by registering an app with Tableau CRM Analytics.
See the Getting Started section of the Help documentation for an authentication guide.
If the connected Salesforce org has MFA enforcement enabled, set MFACode to the time-based one-time passcode (TOTP) generated by your authenticator app (such as Salesforce Authenticator or Google Authenticator). MFACode applies alongside the standard OAuth flow.
For assistance in constructing the JDBC URL, use the connection string designer built into the Tableau CRM Analytics JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.
java -jar cdata.jdbc.tableaucrm.jar
Fill in the connection properties and copy the connection string to the clipboard.
👁 Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)Configure the connection to Tableau CRM Analytics, using the connection string generated above.
scala> val tableaucrm_df = spark.sqlContext.read.format("jdbc").option("url", "jdbc:tableaucrm:OAuthClientId=MyConsumerKey;OAuthClientSecret=MyConsumerSecret;CallbackURL=http://localhost:portNumber;InitiateOAuth=GETANDREFRESH;MFACode=YourMFACode").option("dbtable","Dataset_Opportunity").option("driver","cdata.jdbc.tableaucrm.TableauCRMDriver").load()
Register the Tableau CRM Analytics data as a temporary table:
scala> tableaucrm_df.registerTable("dataset_opportunity")
Perform custom SQL queries against the Data using commands like the one below:
scala> tableaucrm_df.sqlContext.sql("SELECT Name, CloseDate FROM Dataset_Opportunity WHERE StageName = Closed Won").collect.foreach(println)
You will see the results displayed in the console, similar to the following:
👁 Data in Apache Spark (Salesforce is shown)Using the CData JDBC Driver for Tableau CRM Analytics in Apache Spark, you are able to perform fast and complex analytics on Tableau CRM Analytics data, combining the power and utility of Spark with your data. Download a free, 30 day trial of any of the hundreds of CData JDBC Drivers and get started today.
Download a free trial of the Tableau CRM Analytics Driver to get started:
Download NowLearn more:
👁 Tableau CRM Analytics IconRapidly create and deploy powerful Java applications that integrate with Tableau CRM Analytics.