Connect to Adobe Analytics Data in JRuby

Ready to get started?

Download for a free trial:

Download Now

Learn more:

Adobe Analytics JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with Adobe Analytics data including Metrics, Users, Reports, Segments, and more!

Create a simple JRuby app with access to live Adobe Analytics data.

JRuby is a high-performance, stable, fully threaded Java implementation of the Ruby programming language. The CData JDBC Driver for Adobe Analytics makes it easy to integrate connectivity to live Adobe Analytics data in JRuby. This article shows how to create a simple JRuby app that connects to Adobe Analytics data, executes a query, and displays the results.

Configure a JDBC Connection to Adobe Analytics Data

Before creating the app, note the installation location for the JAR file for the JDBC Driver (typically C:\Program Files\CData\CData JDBC Driver for Adobe Analytics\lib).

JRuby natively supports JDBC, so you can easily connect to Adobe Analytics and execute SQL queries. Initialize the JDBC connection with the getConnection function of the java.sql.DriverManager class.

Adobe Analytics uses the OAuth authentication standard. To authenticate using OAuth, you will need to create an app to obtain the OAuthClientId, OAuthClientSecret, and CallbackURL connection properties. See the "Getting Started" section of the help documentation for a guide.

Retrieving GlobalCompanyId

GlobalCompanyId is a required connection property. If you do not know your Global Company ID, you can find it in the request URL for the users/me endpoint on the Swagger UI. After logging into the Swagger UI Url, expand the users endpoint and then click the GET users/me button. Click the Try it out and Execute buttons. Note your Global Company ID shown in the Request URL immediately preceding the users/me endpoint.

Retrieving Report Suite Id

Report Suite ID (RSID) is also a required connection property. In the Adobe Analytics UI, navigate to Admin -> Report Suites and you will get a list of your report suites along with their identifiers next to the name.

After setting the GlobalCompanyId, RSID and OAuth connection properties, you are ready to connect to Adobe Analytics.

Built-in Connection String Designer

For assistance in constructing the JDBC URL, use the connection string designer built into the Adobe Analytics JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

java -jar cdata.jdbc.adobeanalytics.jar

Fill in the connection properties and copy the connection string to the clipboard.

Below is a typical JDBC connection string for Adobe Analytics:

jdbc:adobeanalytics:GlobalCompanyId=myGlobalCompanyId; RSID=myRSID; OAuthClientId=myOauthClientId; OauthClientSecret=myOAuthClientSecret; CallbackURL=myCallbackURL;

Create a JRuby App with Connectivity to Adobe Analytics Data

Create a new Ruby file (for example: AdobeAnalyticsSelect.rb) and open it in a text editor. Copy the following code into your file:

require 'java' require 'rubygems' require 'C:/Program Files/CData/CData JDBC Driver for Adobe Analytics 2018/lib/cdata.jdbc.adobeanalytics.jar' url = "jdbc:adobeanalytics:GlobalCompanyId=myGlobalCompanyId; RSID=myRSID; OAuthClientId=myOauthClientId; OauthClientSecret=myOAuthClientSecret; CallbackURL=myCallbackURL;" conn = java.sql.DriverManager.getConnection(url) stmt = conn.createStatement rs = stmt.executeQuery("SELECT Page, PageViews FROM AdsReport") while ( do puts rs.getString(1) + ' ' + rs.getString(2) end

With the file completed, you are ready to display your Adobe Analytics data with JRuby. To do so, simply run your file from the command line:

jruby -S AdobeAnalyticsSelect.rb

Writing SQL-92 queries to Adobe Analytics allows you to quickly and easily incorporate Adobe Analytics data into your own JRuby applications. Download a free trial today!