cancel
Showing results forย 
Search instead forย 
Did you mean:ย 
Administration & Architecture
Explore discussions on Databricks administration, deployment strategies, and architectural best practices. Connect with administrators and architects to optimize your Databricks environment for performance, scalability, and security.
cancel
Showing results forย 
Search instead forย 
Did you mean:ย 

Using or integrating SIlver or Gold Zone data in an Operational API

DazMunro
New Contributor

I am looking to understand what sort of approach we can take to use Silver or Gold zone data in an Operational style API, or even if we should. We have data that makes it's way to the Silver and Gold zones in our Medallion Architecture and it kind of makes sense we could use that data to serve operational API's conceptually. Reasoning being it is a source of data we can trust because it has been bought in from source systems and "treated" with business rules and so forth and then obviously can can be served up for the analytics use cases like reporting dashboards, Genie Workspaces, ML Data Science and so forth.

The question I am having trouble finding definitive answers to is can I use that Silver\Gold data to be the source for an Opertional API that might serve a business process like issuing an PO digitally to a customer or acknowledging the PO or sedning a Shipping Notification to a Customer when thier order has been put in a container ready for export? I might want to ingest those "data events" into our Bronze Zone to process for analytics later on, but I am struggling to see why I would use that ingestion process to then serve the data back to an API on an operational or process sense. Has anyone done this or can anyone point me to documentation on how to setup and use Databricks data in a SQL Serverless Warehouse to serve REST or GrpahQL based API data flows.

2 REPLIES 2

nayan_wylde
Esteemed Contributor

Yes, you can use Gold/Silver for API consumptionโ€”but with caveats. Silver and Gold layers contain trusted, curated data, making them ideal for analytics and reporting. However, using them for operational APIs (e.g., issuing POs, sending shipping notifications) depends on:

Latency requirements: Databricks is optimized for analytical workloads, not low-latency transactional operations.
Concurrency and SLA: Operational APIs often require high availability and fast response times, which may be challenging with Spark-based backends unless using SQL Serverless Warehouses.
Data freshness: If your Silver/Gold data is updated in near real-time, it could be viable for operational use. Otherwise, stale data could be a risk.

https://community.mantelgroup.com.au/articles/post/building-a-serverless-restful-data-api-for-databr...

 

Rjdudley
Honored Contributor

Databricks is an analytics system and isn't optimized to perform as an OLTP system.  Additionally, Databricks compute can scale to zero if you set it to do so.  This means if you want to use gold/silver data in a real-time way you need to keep a cluster running continuously (I'd set to scale to 1 and then up as needed).  Databricks has a nifty SQL execution API, Statement Execution API: Run SQL on warehouses - Azure Databricks | Microsoft Learn.  But, that is read-only.  There are also ODBC and JDBC drivers you can use to write a traditional API.  If you want OLTP performance, maybe look at Lakebase | Databricks.