Explore data change management best practices: read our Shift Left Data Manifesto

Ship Data Like Software

Gable drives trust in your data by scanning it from the source and managing changes.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form. Please try again.

“Gable is changing how we think about data across the whole company”

Zakariah Siyaji
Engineering Manager, Data Platform

Loss of trust in data starts with unclear ownership

Introducing Shift-Left Data Change Management

By identifying and tracking changes to data upstream in the application source code and notifying when changes will violate data contracts or disrupt downstream applications, Gable moves change management into the hands of the application developers.

SCAN

Gable uses static code analysis to detect data-producing code.

Everything from a variable in Typescript to a statement in Python can produce data and introduce changes. Gable understands your application source code natively.

INSIGHTS

Gable creates data contracts automatically.

Implementing data contracts and change management is next to impossible without automation. Gable scans your repository and drafts contracts for your existing data assets.

CONTROL

Gable notifies developers how their change will affect others.

When a change violates a data contract or has downstream dependencies, Gable notifies the developer and consumers before the application goes into production.

Solutions

Implement Data Contracts Upstream

Pre-Deployment Issue Detection

Identifies data issues early in the development cycle, including data contract violations, preventing costly production disruptions.

Source Repository and CI/CD integration

Directly integrates into your existing build and deployment system.

Drive Data Ownership and Collaboration

Clear Data Ownership Attribution

Defines ownership of data changes, reducing inefficiencies and ensuring accountability across teams.

Data Dependency Mapping

Maps data relationships to help teams understand the downstream impact of changes and accelerate root cause analysis.

Automate Compliance and Governance

Governance and Policy as Code

Ensures data governance is applied consistently across teams, reducing errors and compliance risks.

Automatic Real-Time Compliance Monitoring

Continuously monitors compliance status in the source code, detecting issues early to avoid potential regulatory violations.

Gable Understands Your Data

Register data generating code across your company's most complex repositories and data systems

This code is designed to streamline the process of generating and registering data across your company's most intricate repositories and data systems

1
2
3
4
5
6
7
8
9
10


11
import { track } from '@amplitude/analytics-browser';
export enum AmplitudeEventNames {  
ViewDataAssetFromChangelog = 'Clicked View Data Asset from
Changelog',
}
const changelogAmplitudeData = {
ㅤㅤeventTitle: 'minute-watched',
ㅤㅤentityType: 'video',
modifications: [],
}
;document.body?.addEventListener('click', () => {
track(AmplitudeEventNames.ViewDataAssetFromChangelog,
changelogAmplitudeData);
});
1
2
3
4
5
6
7
8
9
10
11
12
def make_track_payload(path: str):
ㅤㅤㅤuid = uuid()
ㅤㅤㅤreturn
ㅤㅤㅤㅤㅤ"_uuid": str(uid),
ㅤㅤㅤㅤㅤ"_type": "pageView
ㅤㅤㅤㅤㅤ"path": path,
ㅤㅤㅤ}
def redirect(path: str):
ㅤㅤㅤtrack_payload = make_track_payload(path)
ㅤㅤㅤsend_analytics_payload(track_payload)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
struct Event {
ㅤㅤㅤlet type: EventType
ㅤㅤㅤlet metadata: [String: Any]?
}
let upcomingEvents: [Event] = [
ㅤㅤㅤEvent(
ㅤㅤㅤㅤㅤtype: .query,
ㅤㅤㅤㅤㅤmetadata: [
ㅤㅤㅤㅤㅤㅤㅤ"client": "Deep Thought",
ㅤㅤㅤㅤㅤㅤㅤ"total_queries": 1
ㅤㅤㅤㅤㅤ]
ㅤㅤ )
]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@PostMapping("/data")
public ResponseEntity<String> sendAnalyticsEvent(UserID id,
SessionID session, EventType type) {
ㅤㅤAnalyticsEvent event = new AnalyticsEvent.Builder()
ㅤㅤㅤㅤㅤㅤㅤ.eventType(type)
ㅤㅤㅤㅤㅤㅤㅤ.userId(id)
ㅤㅤㅤㅤㅤㅤㅤ.sessionId(session)
ㅤㅤㅤㅤㅤㅤㅤ.timestamp(System.currentTimeMillis())
ㅤㅤㅤㅤㅤㅤㅤ.build();
ㅤㅤreturn  ResponseEntity.ok(analyticsService.pushEvent(ev ent))
ㅤㅤㅤㅤㅤㅤㅤ.orElseThrow(
ㅤㅤㅤㅤㅤㅤㅤㅤㅤ() -> new RuntimeException(String.format("Could not
register event for user: %s", id.getName()))
ㅤㅤㅤㅤㅤㅤㅤ);
}

Features

Source Code Scanning

Automatically scan and register your existing data, ensuring that every piece within your application code and data sources is securely connected, organized, and accessible for seamless data management.

Generate Contracts

Automate the creation of data contracts, ensuring that data across your applications and sources adheres to standardized definitions for improved accuracy, consistency, and compliance throughout your data ecosystem.

Change Notifications

Stay ahead with real-time change notifications by instantly notifying your data team of any changes impacting downstream users, ensuring proactive monitoring and management to minimize disruptions.

Refine and Approve

Empower development and data teams to enhance data quality through actionable recommendations, freeing up valuable engineering hours.

“I believe that Gable is the first next generation data management platform built for the AI era. It’s game changing for any company that truly values data and in this punch card generation of AI, I believe this is foundational.”

Kelvin Lim

Chief Technology Officer at x15ventures

Read our featured Articles