Qubole data output

This article provides an introduction to Qubole along with a guide on how to create a Qubole data output using Upsolver.

What is Qubole?

Qubole is an open data lake company that provides a simple and secure data lake platform for machine learning, streaming, and ad-hoc analytics.

Create a Qubole data output

1. Go to the Outputs page and click New.

2. Select Qubole as your output type.

3. Name your output and select your Data Sources, then click Next.

Click Properties to review this output's properties. See: Output properties

4. Click the information iconin the fields tree to view information about a field. The following will be displayed:

Density in Events
Density in Data
Distinct Values
Total Values
First Seen
Last Seen
Density in Events

How many of the events in this data source include this field, expressed as a percentage (e.g. 20.81%).

Density in Data

The density in the hierarchy (how many of the events in this branch of the data hierarchy include this field), expressed a percentage.

Distinct Values

How many unique values appear in this field.

Total Values

The total number of values ingested for this field.

First Seen

The first time this field included a value, for example, a year ago.

Last Seen

The last time this field included a value, for example, 2 minutes ago.

Value Distribution
Field Content Samples Over Time
Selected
Value Distribution

The percentage distribution of the field values. These distribution values can be exported by clicking Export.

Field Content Samples Over Time

A time-series graph of the total number of events that include the selected field.

Selected

The most recent data values for the selected field and columns. You can change the columns that appear by clicking Choose Columns.

5. Click the information iconnext to a hierarchy element (such as the overall data) to review the following metrics:

# of Fields
# of Keys
# of Arrays
Fields Breakdown
Fields Statistics
# of Fields

The number of fields in the selected hierarchy.

# of Keys

The number of keys in the selected hierarchy.

# of Arrays

The number of arrays in the selected hierarchy.

Fields Breakdown

A stacked bar chart (by data type) of the number of fields versus the density/distinct values or a stacked bar chart of the number of fields by data type.

Fields Statistics

A list of the fields in the hierarchy element, including Type, Density, Top Values, Key, Distinct Values, Array, First Seen, and Last Seen.

6. Click the plus iconin the fields tree to add a field from the data source to your output. This will be reflected under the Data Source Field in the Schema tab. If required, modify the Output Column Name along with the Column Type.

Note: All numbers are mapped to doubles by default. Change this to BIGINT if you know that your numbers are integers.

Toggle from UI to SQL at any point to view the corresponding SQL code for your selected output.

You can also edit your output directly in SQL. See: Transform with SQL

7. Add any required calculated fields and review them in the Calculated Fields tab. See: Adding calculated fields

8. Add any required lookups and review them under the Calculated Fields tab.

Adding Lookups

9. Through the Filters tab, add a filter like WHERE in SQL to the data source. See: Adding filters

10. Click Make Aggregated to turn the output into an aggregated output. Read the warning before clicking OK and then add the required aggregation. This aggregation field will then be added to the Schema tab. See: Aggregation functions

11. In the Aggregation Calculated Fields area under the Calculated Fields tab, add any required calculated fields on aggregations. See: Functions, Aggregation functions

12. Partition the data by clicking More > Manage Partitions and then selecting the following:

  • Key: Partitions the data table using one or more fields (or calculated fields)

  • Partitioning Time: Partitions the data table using a specific time field

13. To keep only the latest event per upsert key, click More > Manage Upserts then select the following:

  • Keys: A unique key identifying a row in the table

  • Deletions: The delete key (events with the value true in their deletion key field will be deleted)

See: Data types and features, How do upserts work?

Click Preview at any time to view a preview of your current output.

14. Click Run and fill out the following fields:

  • S3 Storage: The storage for the data of the table; the access key of this storage must belong to the same AWS account as the access key of the selected connection

  • Database Name

  • Table Name

See: Running an output

15. Click Next and complete the following:

Compute Cluster
Processing Time Range
Compute Cluster

Select the compute cluster to run the calculation on. Alternatively, click the drop-down and create a new compute cluster.

Processing Time Range

The range of data to process. This can start from the data source beginning, now, or a custom date and time. This can never end, end now or end at a custom date and time.

16. Finally, click Deploy to run the output. It will show as Running in the output panel and is now live in production and consumes compute resources.

You have now successfully outputted your table to Qubole.