Native Application Event Sharing Through Secure Cross-Account Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data sharing methods are cumbersome, slow, and insecure, making it difficult for smaller entities to access valuable data sets, and traditional methods do not allow scalable sharing or real-time access to updated data.

Innovation Solution

A data exchange platform using cloud computing services allows data providers to create share objects that grant controlled access to database objects, enabling secure sharing without copying data, and an execution information sharing system automatically duplicates and secures event logs and metrics between provider and consumer accounts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional data sharing methods are used, then data can be shared between parties, but the process is cumbersome, slow, and insecure

Engineering Contradiction:
Improvedata sharing efficiencyVSAvoiddata sharing security
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent creates share objects that are copies of database objects, allowing data to be shared without copying the actual data. The share object contains metadata and access control information that enables secure data sharing while maintaining the original data's security and integrity

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces share objects as intermediaries between data providers and consumers. These share objects act as a secure layer that mediates access to underlying database objects, enabling controlled data sharing without direct exposure of the original data

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If data is shared using traditional methods, then access is provided, but real-time access to updated data is not possible

Engineering Contradiction:
Improvedata access speedVSAvoiddata update latency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent establishes continuous data sharing through share objects that maintain active connections to the source database. When data is updated in the source database, the share objects automatically reflect these changes, providing continuous and real-time access to updated data without manual intervention

Inventive Principle:
Principle #20Continuity of useful action

3Adaptability or versatility

If data sharing is implemented traditionally, then some data access is enabled, but scalable sharing for multiple entities is difficult

Engineering Contradiction:
Improvedata sharing scalabilityVSAvoiddata sharing system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal share object structure that can be used across multiple database objects and multiple consumer accounts. A single share object can grant access to multiple entities simultaneously, and the same framework supports various types of database objects, making the system highly scalable and adaptable

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Reliability

If data is encrypted for secure storage, then security is improved, but data sharing becomes more difficult

Engineering Contradiction:
Improvedata storage securityVSAvoiddata sharing ease
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent creates share objects that copy the access control structure rather than the actual data. This allows encrypted data to remain secure in its original storage while the share object provides a secure interface for authorized access, maintaining both security and shareability

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12437294B2Sharing events and other metrics in native applications
Publication Date: 2025.10.07 SNOWFLAKE INC
  • US12437294B2 patent drawing
  • US12437294B2 patent drawing
  • US12437294B2 patent drawing

AI summary

Disclosed is an execution information sharing system that writes execution information to a provider target (and other targets) in a secure manner. Execution information generated by an application may be written to a consumer stage, wherein the application is shared by a provider account of a data exchange with a consumer account that executes the application. A consumer exchange service (ES) of the data exchange may send a request to a copy service of the data exchange to copy the execution information from the consumer stage to the provider stage, wherein the consumer ES is a part of the data exchange and is protected from actions of the consumer account. A copy operation may be executed to copy the execution information from the consumer stage to the provider stage using the copy service of the data exchange. The execution information is ingested from the provider stage to a provider table.