Saltar e ir al contenido
  • En la empresa
  • Soluciones Para Sectores Concretos
  • Valor Para Clientes Y Partners
  • Producto Y Tecnología
  • Liderazgo de Opinión
Languages
  • Deutsch
  • 한국어
  • Español
  • Français
  • English
  • Italiano
  • 日本語
  • Português
  • Deutsch
  • 한국어
  • Español
  • Français
  • English
  • Italiano
  • 日本語
  • Português
  • En la empresa
  • Soluciones Para Sectores Concretos
  • Valor Para Clientes Y Partners
  • Producto Y Tecnología
  • Liderazgo de Opinión
  • Deutsch
  • 한국어
  • Español
  • Français
  • English
  • Italiano
  • 日本語
  • Português
  • Visión General
    • Por qué Snowflake
    • Historias de clientes
    • Partners
    • Servicios
  • Visión General
    • Data Cloud
    • Descripción general de la plataforma
    • Snowflake Marketplace
    • Desarrollado por Snowflake
    • Demostración en directo
  • Workloads
    • Collaboration
    • Data Science & ML
    • Cybersecurity
    • Applications
    • Data Warehouse
    • Data Lake
    • Data Engineering
    • Unistore
  • Precios
    • Opciones de precios
  • Por sector
    • Publicidad, medios de comunicación y entretenimiento
    • Servicios financieros
    • Sanidad y ciencias de la vida
    • Fabricación
    • Sector Público
    • Retail / CPG
    • Tecnología
  • Conozca
    • Biblioteca de recursos
    • Documentación
    • Demostración en directo
    • Formación
  • Conectar
    • Blog
    • Comunidad
    • Eventos
    • Webinars
    • Podcast
  • Visión General
    • Sobre Snowflake
    • Los inversores
    • Liderazgo y dirección
    • Carreras
Autor
Yogitha Chilukuri
Yogitha Chilukuri
Boyung Lee
Boyung Lee
Share
Subscribe
May 13, 2024

Accelerate Your Time Series Analytics with Snowflake’s ASOF JOIN, Now Generally Available

  • Producto y tecnología
Accelerate Your Time Series Analytics with Snowflake’s ASOF JOIN, Now Generally Available

Time series data is everywhere. It captures how systems, behaviors and processes change over time. Enterprises across industries, such as Internet of Things (IoT), financial services, manufacturing and more, use this data to drive business and operational decisions. 

When using time series data to perform analytics and drive decisions, it’s often necessary to join several data sets. For instance, a developer in an IoT company, building an application for predictive maintenance, may need to analyze equipment health time series data in the context of historical maintenance data to derive patterns. Similarly, a financial data analyst might need to associate intraday option trade data with prevailing market price data for auditing purposes. 

A common challenge with performing these kinds of joins is that timestamps in different time series tables often don’t match exactly, forcing customers to write complex and cumbersome queries to perform such joins.

At Snowflake, we’re committed to helping customers derive meaningful insights from their data with simplicity and speed. That’s why we are excited to announce the general availability (GA) of ASOF JOIN, a purpose-built, easy-to-use and performant Time Series feature that joins time series data sets when timestamps don’t match exactly.

What is the ASOF JOIN capability? 

ASOF JOIN is a type of join that pairs a record from two tables based on their proximity (usually temporal). For each row on the left side of the join, the operation finds the closest matching value from the right side. 

The SQL syntax is as follows:

SELECT ... 
FROM left_table ASOF JOIN right_table
MATCH_CONDITION... // define proximity (closest preceding / following)
[ ON...] // Optional join key

The corresponding Snowpark syntax is:

left_dataframe.
join(right_dataframe, on=[...], how="asof", match_condition=(...))

How can this syntax be used? As an example, assume a financial analyst is tasked with finding the closest stock quote price prior to each stock trade, for audit or regulatory purposes. Below, find a snippet of their hypothetical data.  

They would do so using ASOF JOIN as follows: 

SELECT 
    t.stock_symbol,
    t.trade_time,
    t.quantity,
    q.quote_time,
FROM trades t
ASOF JOIN quotes q
    MATCH_CONDITION (t.trade_time >= q.quote_time)
    ON t.stock_symbol = q.stock_symbol

To achieve the same in Snowpark, the code snippet would look as follows: 

quotes_dataframe.
join(trades_dataframe, on = [“stock_symbol”], how=“asof”, match_condition=(trades_dataframe.trade_time >= quotes_dataframe.quote_time))

The result would look as follows:

How ASOF JOIN works 

Without native support for ASOF JOIN, customers typically have to use complex workarounds involving multiple subqueries, window functions, range joins, etc. This often results in long and complicated queries that are difficult to maintain and have suboptimal performance. 

To address this, the purpose-built ASOF JOIN capability in Snowflake offers a concise syntax that clearly specifies the desired outcome, leaving the heavy lifting to the query engine. Snowflake converts the ASOF JOIN operator into a series of operations that involve aligning rows on the left and right based on the join keys and the timestamp expression, applying partition-aware sorting, and searching for the closest previous or next value based on the query. 

To illustrate sample performance gains from using ASOF JOIN, we used sample data sets with stock quotes and stock trades (39 million quotes and 2.2 million trades) and ran queries to find the closest stock quote price prior to each trade. We compared two query types — ASOF JOIN (shown in light blue, below) and a workaround involving LEFT OUTER JOIN (in dark blue). The ASOF JOIN queries were 12x faster than the workaround. We then increased the size of both data sets tenfold. With the larger data volume, ASOF JOIN was 16x faster than the workaround.   

Using Snowflake’s native ASOF JOIN helps customers focus on building simple analytic queries that align time series data sets in a highly performant manner instead of formulating complex workarounds. 

How ZeroNorth uses ASOF JOIN 

ZeroNorth, a cleantech company, helps the global shipping industry achieve optimal commercial performance and reduce emissions. Their tech teams used ASOF JOIN to combine hourly reported vessel data, such as velocity, with the closest satellite position of the vessel prior to and after the reading. Two of the specific ASOF JOINs utilized helped provide insights such as ship trajectory tracking and ETA estimation.

Dimo Boyadzhiev, Principal Data Engineer at ZeroNorth shared: “ASOF JOIN performance is really good. This syntax has improved our ways of working to be clearer and faster.”

How Panasonic Connect uses ASOF JOIN 

Panasonic Connect, which plays a central role in the growth of Panasonic Group’s B2B solutions, used ASOF JOIN when migrating its workload from Spark to Snowpark. ASOF JOIN helped the organization perform analytics, such as finding relevant data for each ship in a specific time period, in an easy and efficient manner.

Specifically, the team shared that ASOF JOIN has proved very useful when joining large volumes of data, citing a 99% improvement in performance over previous solutions.

More ways Snowflake customers use ASOF JOIN today: 

  • A wearable technology company is combining users’ haptic interaction data (click, double clicks) with battery level information to determine how certain user interactions impact the device’s battery level. 
  • A financial services company is linking historical stock trade data with quote data for applications like trade surveillance. 
  • A cloud security company is joining application process details with network connection details for potential threat detection.
  • A design company is using ASOF JOIN to analyze user interactions with a certain feature of interest (such as cropping) by associating it with the user’s next action data. 
  • A digital analytics company is joining user behavior data with event data and other relevant data sets to perform user engagement and funnel analytics. 
  • A credit card company is analyzing credit card applications in the context of advertisement click data to gauge the effectiveness of marketing campaigns.

Learn more

ASOF JOIN is now available to all customers in their Snowflake accounts. To learn more, read the Snowflake documentation. You can also refer to the time series user guide to learn more about working with time series data in Snowflake.

Share

Related content

  • Soluciones para sectores concretos
  • Servicios financieros
Feb 05, 2024

Top 5 Data + AI Predictions for Financial Services in 2024

Generative AI tops every list of major financial services trends for 2024. And it’s no wonder — this new technology has the potential to revolutionize the industry by augmenting the…

Discover
Leer más
  • Soluciones para sectores concretos
Ene 25, 2024

Top 3 Healthcare and Life Sciences Data + AI Predictions for 2024

This year may be the most innovative on record. Recent advances in AI are beginning…

Delve into the details
Leer más

DATA TRENDS 2024 – First-Mover Advantage: How Leading Enterprises Are Building the Foundation for Advanced AI

Download now

Snowflake Inc.
  • PLATAFORMA
    • Data Cloud Platform
    • Arquitectura
    • Precios
    • Data Marketplace
  • SOLUCIONES
    • Snowflake para sanidad y ciencias de la salud
    • Snowflake para servicios financieros
    • Snowflake para Marketing Analytics
    • Snowflake para el comercio minorista
    • Snowflake para el sector educativo
  • Recursos
    • Biblioteca de recursos
    • Webinars
    • Documentación
    • Comunidad
    • Asuntos legales
  • Explorar
    • Noticias
    • Blog
    • Tendencias
  • Acerca de
    • Acerca de Snowflake
    • Liderazgo y dirección
    • Partners
    • Empleo
    • Contacto

Sign up for Snowflake Communications

Thanks for signing up!

  • Privacy Notice
  • Site Terms
  • Cookie Settings

© 2024 Snowflake Inc. All Rights Reserved