Explore our expert-made templates & start with the right one for you.
Solutions Review Highlights Upsolver for Ingesting Production Data into Analytics Platforms at Scale
In a world where the race to provide fresh, high-quality data for analytics and machine learning is nothing short of urgent, Solutions Review recently invited Upsolver’s Senior Solutions Architect, Jason Hall onto their Solutions Spotlight live broadcast to demonstrate how Upsolver solves this challenging issue for data-driven companies.
What makes Upsolver a game-changer is the no-code, and low-code authoring experiences that empower you, the data, software, and analytics engineer to effortlessly build, manage, and scale ingestion pipelines for your data warehouse and lake. Upsolver scales with your requirements, ensuring data produced and analyzed is always in sync with your business ambitions, while built-in data observability and pipeline monitoring paints a picture of your data’s health, quality, and freshness in real-time.
During the interview, Jason demonstrates how to easily build ingestion jobs that move data from popular sources like Apache Kafka and PostgreSQL to Snowflake. He also shows how Upsolver can help you overcome common data challenges like data type mismatch and schema evolution, in-line transformations, monitoring and troubleshooting your pipelines.
Missed the interview? Be sure to watch the replay and discover how to achieve all this and more without needing a degree in data engineering!
Don’t have an hour to watch the full interview? Jump straight into one of the topical chapters below and be sure you don’t miss the demo:
1. The Upsolver Approach
When data knows no bounds, choose Upsolver. Upsolver is a self-serve cloud data ingestion service for high-scale workloads: more than 50% of Upsolver’s customers process over 10TB a month, and 8% are boldly processing over 1PB a month. Upsolver’s ability to scale up or down with your data volume makes it the stand-out choice for building big data ingestion pipelines.
2. Ingestion in the Modern Data Stack
The modern data stack architecture emerged as a direct response to the widespread embracing of cloud-native technologies for analytics. Its primary objective? Make data accessible to everyone in the organization by simplifying ingestion, transformation and analysis of data in the pursuit of unlocking invaluable business insights. The traditional behemoths of ERP and warehouse systems, once revered and accessible to few, now find themselves lagging behind in the face of today’s data deluge, struggling to serve an increasing number of use cases, timely reports and analytics.
In today’s corporate landscape, a typical organization’s data ecosystem is a rich blend of small yet complex data, characterized by its diversity, sourced from business and SaaS apps, mixed with big data from event collectors, logs, large operational databases, and message brokers.
3. Two Approaches to Data Ingestion
A company has two choices when it comes to data ingestion, influenced by the data’s source:
- Embrace self-serve tools capable of efficiently managing small, diverse data sources, but with limited scalability for big data.
- Engineer a solution optimized for handling substantial data volumes, but endure a complex and time-consuming engineering and implementation process.
We believe that you shouldn’t sacrifice ease of use and self-serve to be able to efficiently scale to meet growing data volumes. This is precisely where Upsolver comes in, offering a game-changing self-service solution for rapidly building data ingestion pipelines that scale at pace. With a single tool, Upsolver eliminates the convoluted process that typically takes months to deploy and hinges on extensive engineering resources for construction and maintenance.
Upsolver’s built-in observability dashboard enables data quality issues to be quickly discovered and errors are easier to troubleshoot. In contrast to the intricacies of the Do It Yourself with open source or self-managed tools approach, Upsolver champions the Modern Data Stack approach focusing on ease-of-use; simplifying and expediting the process of ingesting data into your analytics platform.
4. Automatic Data and Schema Correction
One of Upsolver’s standout capabilities lies in its ability to handle the ever-changing structure and schema of source data. Whether the data originates from a database or stored in JSON or Parquet files on Amazon S3, it’s inevitable that schemas evolve over time. Data types shift, column names morph, and the data’s volume will fluctuate. If left unaddressed, these alterations can lead to anomalies within the target analytics system or, worse yet, result in incorrect or missing data. This is where Upsolver steps in to automate the handling of these problems, enabling engineers to channel their efforts toward tasks that yield greater value.
5. Upsolver Demo
Upsolver’s no-code experience makes it incredibly simple to create big data ingestion pipelines that scale with your data volumes. In this demo, Jason walks you through the end-to-end process of moving data from an Apache Kafka stream to a target Snowflake table. He demonstrates how your job runs continuously, loading new data in near real time, and how you leverage Upsolver’s built-in observability to understand the health of your pipeline and data.
Key points covered in the demo include:
- View job metrics, find errors and bugs, and track and troubleshoot your pipeline
- Check the quality of data being ingested before it reaches the warehouse or lake
- Understand the data being ingested:
- Check data values: top, missing, distinct, first seen, last seen
- Inspect column density, e.g. 100% density means each row has a value, otherwise data could be missing
- Uncover schema changes: column name changes from PhoneNumber to PhoneNo, or ItemPrice changes from STRING to FLOAT type
- Monitor schema evolution and identify new and deprecated columns, data type changes and schema drift
- Find mixed case values that need correcting to prevent aggregations being impacted and invalidated
- Use First Seen and Last Seen timestamps to find when a field has been deleted, or useful for debugging to know when to replay
- Filter the data ingestion timeline to discover when a problem started and drill into the columns to find the values causing the issue
- Improve the quality of your data by configuring ingestion options:
- Ingest data starting from now or replay historical data
- Set the frequency updates – Upsolver is designed for high scale data and defaults to update the target every minute – or run less frequently to reduce warehouse costs
- Include an event time column to each row to maintain ordering and simplify incremental processing
- Prevent duplicates by setting a key and window to dedupe over
- Perform in-flight transformations:
- Mask PII by applying a hashing algorithm to ingested data e.g. email address
- Apply quality expectations, e.g. value should not be NULL
- Unnest complex JSON structures
- Integrate with, using Upsolver Python SDK and query the Upsolver system tables to programmatically show status of jobs, tasks, data profile and quality expectations
6. Upsolver Integrates with dbt Core
Upsolver partnered with dbt Labs to bring the power of version control, automation, collaboration and test-driven-development to data ingestion using dbt Core. Although dbt isn’t typically used with data ingestion, Upsolver dbt adapter empowers users to construct dbt models to ingest their data in a familiar way.
This innovative integration enables dbt users to harness Upsolver for their data ingestion needs and then proceed with their usual transformation workflows. Importantly, this doesn’t compromise any of Upsolver’s core functionalities; transformations, quality checks, and deduplication can continue to be applied seamlessly.
7. How Does Upsolver Fit into the Modern Data Stack?
Customers often turn to Upsolver when their existing processes prove inadequate for handling the surging volumes of data they need to load into their data warehouse or lake. Developing in-house solutions for ingesting smaller data volumes using various open source components and available commercial tools within the modern data stack can seem like a straightforward endeavor. However, it quickly becomes evident that these homegrown solutions fall short when a company experiences a sudden surge in data.
Typically, organizations start their integration journey with smaller datasets, drawn from sources such as CRM systems or APIs, and can build efficient solutions that match the data volume at hand. However, the moment they seek to incorporate production datasets, such as operational databases and streams with thousands or millions of events per second, their once-simple solutions hit a scalability roadblock. At this point, they find themselves in a predicament where their current toolkit proves insufficient, and the task of building a solution from scratch becomes daunting. This is precisely where Upsolver steps in as an indispensable component within their data stack.
8. Customer Consideration Cycle
As you evaluate data ingestion tools, including Upsolver and whether you venture alone or alongside our dedicated solution architect team, the initial step involves determining whether your specific challenges align with Upsolver’s capabilities.
During our first conversation with you, we will explore the challenges you currently face and examine the nature and volume of the data you need to ingest. This could encompass a wide array of scenarios, such as real-time event streams sourced from Apache Kafka or Amazon Kinesis, or extensive CDC data originating from databases such as PostgreSQL or Microsoft SQL Server, to name just a few.
After determining that Upsolver can solve your big data ingestion problems, you can take a guided approach with us, drawing on the expertise of our in-house solutions architects, or work on your own to build pipelines. Upsolver offers a cloud-hosted system enabling you to get started quickly, either using your own data to build your first pipeline, or test the water using our sample data.
9. Use Custom Functions to Transform In-flight or Staged Data
With Upsolver’s low-code offering you can leverage a vast array of built-in functions on your ingested data. Take one of two routes: ingest the data into your Amazon S3 based data lake staging area and then apply transformations, or apply transformations in-flight as you directly ingest data into your designated target.
The functions within Upsolver’s library bring power and versatility to your pipelines, enabling you to tackle a wide range of tasks, such as concatenating columns, untangling arrays, or manipulating datetime values, just to scratch the surface.
10. Integrate Upsolver with your Monitoring Solution
Monitoring resources are readily available within the Upsolver environment, equipping you with everything you need for job and data observability and to swiftly resolve any errors in your pipelines. The UI offers a suite of visual monitoring tools, and you can harness the power of system tables to pinpoint and extract precise metrics for external tracking and alerting. Access to these system tables is available via the SDK and CLI, and you can create jobs to seamlessly transfer Upsolver monitoring data into external services such as Amazon CloudWatch and Datadog.
11. Use Upsolver in your CI/CD Development Environment
Upsolver’s no-code Wizard can have a pipeline operational within minutes. Yet, for those wanting to automate the creation of multiple pipelines or seamlessly integrate into their existing CI/CD framework, Upsolver’s low-code SQL option is the go-to choice. With this option, the Wizard can be employed to generate the foundational code for your task – or you can write your own – prior to transferring it to the version-control environment of your choice.
If you’ve been searching for a cloud-native ingestion solution designed and priced for large scale, complex application data, then look no further. Schedule a quick, no-strings-attached demo with a solution architect, or get started building your first pipeline with our 14-day free trial.