Building a CDP on Databricks: Mosaic's Three-Plane Architecture
Summary
- Warner Bros. Discovery built Mosaic, an AI-powered customer data platform on Databricks, to unify fragmented first-party and third-party data from brands including WB Games, DC, and Theatrical into a single governed customer view.
- Mosaic uses a three-plane architecture separating metadata, execution, and delivery concerns, with Delta Lake powering identity resolution and graph building, and a drag-and-drop audience builder enabling self-service segmentation.
- The platform activates audiences to more than 20 destinations including Meta with AI-assisted segmentation and smart campaign recommendations, while enforcing consent filtering and privacy compliance at every stage.
Building a CDP on Databricks: Mosaic's Three-Plane Architecture

Building a scalable customer data platform requires solving fundamental data engineering challenges at enterprise scale. Warner Bros. Discovery needed to unify fragmented customer data from multiple brands and channels while maintaining strict governance and privacy compliance. Building on Databricks, they created Mosaic, an AI-powered CDP that handles millions of subscribers with deterministic audience segmentation and real-time activation.
Learn the three-plane architecture that separates metadata, execution, and delivery concerns for independent evolution. Discover how to use Delta Lake for identity resolution and graph building, implement consent and governance filtering at scale, and optimize audience estimation with machine learning. Explore the demo of drag-and-drop audience builder, AI-assisted segmentation, and seamless activation to 20+ destinations like Meta, with smart campaigns recommendations powered by decision intelligence.
🤝
Chapters
00:00Welcome and Audience Engagement00:56Mosaic, Team, and CDP Definition01:46Challenge and Decision to Build Mosaic02:52Mosaic Capabilities and Benefits04:27Three-Plane Architecture05:47Converting Intent to SQL06:36Execution Plane Data Processing07:25Governance in Evaluation08:15Delivery Plane and Activation10:42Unity Catalog Semantic Layer12:02Identity Resolution12:50Identity Graphs in Databricks13:56Consent Filtering and Compliance15:17Audience Estimation Optimization17:46Demo: Mosaic Platform in Action19:22Creating Audiences21:00Audience Management, Testing, and Data Catalog22:21AI Assistant for Audience Creation24:14Drag-and-Drop Audience Builder26:21Activation to Destinations28:12Scheduling and Consent Management30:12Admin Features and Governance32:19Platform Observability and Smart Campaigns
FAQs
What is a customer data platform and why did Warner Bros. Discovery build their own instead of buying one?
A CDP unifies customer data from multiple sources, resolves identities into a unified profile, and activates audiences across marketing channels. WBD chose to build Mosaic rather than adopt an off-the-shelf solution because they needed an enterprise platform that could scale with their business, adapt to evolving requirements, and serve as a long-term strategic capability across their global portfolio.
How does the three-plane architecture work in Mosaic?
The three planes separate metadata, execution, and delivery concerns so each can evolve independently. The metadata plane manages intent and configuration, the execution plane handles data processing and audience computation, and the delivery plane manages activation and syndication to downstream destinations.
How does Mosaic handle identity resolution across multiple WBD brands?
Mosaic uses Delta Lake to build identity graphs that link customer records from different brands and data sources into unified customer profiles. This enables consistent audience segmentation and activation across CRM, paid media, and advertising channels regardless of which brand the customer interacted with.
How does Mosaic ensure privacy compliance when activating audiences?
Mosaic enforces consent filtering at the evaluation stage so that only customers who have provided appropriate consent are included in a given audience. Scheduling and consent management controls are built directly into the activation workflow, and governance features are managed through Unity Catalog's semantic layer.
Full transcript
[00:08] Good afternoon everyone. And welcome. Today we are going to start with a question. How many of you are comedy genre fans? Great. And how many of you prefer drama?
[00:24] Are we giving any previews? Not yet. But based on their responses, they just basically they consented, but based on their responses they all have been chosen as a target audience in our platform. And that's how we are going to and that's how the topic is going to start
[00:39] today. We are going to start uh This brings us basically to our topic, how a CDP helps us to understand audiences, personalize engagement and deliver the right experiences to you all. I'm Renald Patade from Warner Brothers Discovery and today along with Apratim and
[00:56] Vagishan, we will be sharing our journey of building Mosaic, Warner Brothers Discovery's home grown AI powered CDP built on Databricks. But before we start, I wanted to explain what a CDP means. A CDP is a customer data platform that
[01:13] brings together customer data from various different sources. It resolves identities into a unified customer profile, enables audience creation, and activates those audiences across marketing, advertising, and customer
[01:28] engagement channels. Let's talk about the evolution of Mosaic. At Warner Brothers Discovery, customer data was spread across multiple brands and systems. First-party and third-party data existed in silos, making it difficult to develop
[01:46] a complete view of our audiences. And at the same time, evolving privacy regulations required stronger governance and greater control over how customer data was managed and used. This created a fundamental challenge.
[02:02] How do we eliminate data silos, unify customer data while still enabling innovation at scale? That challenge pushed us to rethink our entire strategy. As we evaluated our options, we realized we did not want another
[02:19] off-the-shelf CDP solution, but we needed an enterprise platform that could scale with our business, adapt to evolving business requirements, and serve as a long-term strategic capability. And out of that vision,
[02:35] Mozuac was born, Warner Bros. Discovery's AI-powered customer intelligence platform, a CDP built to handle the scale, the complexity, and the global reach of WBD.
[02:52] Mozuac brings together first-party and third-party data across WBD brands, including WB Games, DC, Studios, and Theatrical to create a unified customer view. And powered by identity resolution, Mozuac enables audience segmentation and
[03:07] activation across CRM, paid media, and advertising channels. Mozuac provides campaign insights, unified measurement, and attribution. But more importantly, Mozuac is a self-serve tool available for our stakeholders.
[03:23] Now you may ask, "How has Mozuac benefited our stakeholders?" So it has improved marketing effectiveness through more precise audience targeting. It has increased advertising yield through a richer audience segmentation.
[03:38] And it has enhanced customer engagement with more relevant experiences and recommendations. And together, these capabilities drive growth. They enhance engagement and strengthen customer intelligence across our streaming, digital, and advertising
[03:55] businesses. Databricks serves as a backbone of Mosaic platform, providing a unified architecture for large-scale data processing and operational workloads while still maintaining enterprise-grade performance and governance. And with
[04:11] that context, I will call upon Apratim to talk about the architecture behind Mosaic. Thank you, Mina.
[04:27] All right. So, when we were designing Mosaic, uh we had one key concept in mind. We wanted to have separation of concerns. So, we wanted the business intent, computation, and activation to be separated out so that we can evolve them separately. Now, with that thought in mind, we organized Mosaic in
[04:43] three distinct planes. The first is the metadata plane. This is powered by our own Mosaic UI and the Nectar backend service that is hosted on EKS cluster that powers and renders the metadata on the UI. Now, this is where we define
[05:00] traits, user behaviors, and audience segments, explore data, configure activations, and basically anything that what a what user wants to do, user's intent. One thing to note here is that we do not run any backend job or do any execution
[05:17] or heavy lifting here. All what we do is we capture that intent and we save that on our database. Now, intent in its primitive form is of no use, right? Intent is something that has been drag and dropped on the UI, that's
[05:32] how we provide. It's a low-code, more visual experience for the users. So, what happens is that intent is broken down further into algebraic expressions, the normalized DNF what we call. We try to break them down into different algebraic
[05:47] expressions and then map them to the underlying data entities, the columns and the tables which lie on the Delta Lake. So, in that way we come up with a parser that basically composes an SQL that is syntactically correct and compilable.
[06:04] That compiled SQL that can then be handed over to the execution engine for to be executed at scale. Now, one most important things or the one key takeaway from here is that the output of this is a generated code and not an audience in itself. We just
[06:20] generate a code that can be repeatedly run on a cadence. And that's what basically the segmentation is. Coming on to the execution plane, this is probably the heart of CDP I can I can call it, right? Because everything happens here. So,
[06:36] once we have deli- once we have captured the intent here, execution plays basically is the way is the place where we execute that intent. Now, there are three primary responsibilities that the ex- execution plane has. One is to onboard the data. As Munal talked talked
[06:52] about, the first party, the third party signals, all of these data sets that enrich our uh use cases are brought together in this phase on Databricks itself. Now, the second is trade and audience evaluation. So, once the intent is
[07:09] captured, once the intent is broken down uh which we which we saw on the rule compiler, here it is where it's actually executed. So, this is the second uh responsibility that uh the execution plane has. And third, n- last but not the least, uh we have
[07:25] the governance here. So, what we believe is that governance is more of a competition problem than an activation one. So, we have all the consents, delete requests, identity policies, or any regional compliance that we have to cater to, everything happens alongside audience evaluation so that once the
[07:42] filtration is done it cannot go into the next phase without any filter so that it does not leave our lake house. Now in totality if you Sorry. Yeah. So in totality if you see basically the execution plane serves
[07:59] those three fundamental responsibilities. Now coming on to the delivery plane. This is powered by Cindra a high throughput service based on AKKA and Active Base model. Now once the heavy lifting is done the most important responsibility for Cindra is
[08:15] to take that built data and transfer it to the right audience. Sorry, right destination. It takes up the already evaluated data from the execution plane and deliver it to the right address. So the execution plane takes care of what and when and the delivery plane takes
[08:32] care of how. One thing to notice here is that from from the out of box perspective we have Cindra serving or having support of different technologies because we have a lot of CRM partners, we have InStream, we have paid media
[08:49] partners that ingest data in different technologies. So we have built-in connectors for all of these in Cindra itself. So we have S3, we have GCS, we have Kafka, DynamoDB, we have SFTP and all sorts of API connectors which follow the OAuth
[09:06] standards. So all of that is baked in and it can take the source information and the sync information, the addresses of both and can deliver seamlessly data to any of our partners downstream. Cindra is also equipped with if you see at the last box Cindra is also equipped
[09:23] with notification and monitoring and alerting. So the integrations are on PagerDuty so that we can be informed timely about any delays and failures in activation because we know that any competition is a waste if it's not delivered to the uh downstream
[09:38] partners in time. So, this is an overview again for the three layers that we have. So, as we know, metadata plane captures the intent, execution plane executes the intent, and finally deliver the delivery plane operationalizes the intent. And
[09:54] that was the motive that we wanted to to achieve that we can evolve these three separately. Now, this is a zoom out view because the metadata plane has two parts to it, Mosaic UI and the Nexa. And then we have the execute execute plane, and then we have the
[10:10] deliver. Now, having the architecture behind us now and we understand the Mosaic overall architecture, we come to the next most important part, which is data. Any CDP thrives on data, right? So, but the raw data in itself is not
[10:26] usable, right? Uh it has a lot of jargons, a lot of semantic modeling. What we need is business-friendly vocabulary so that business can interact with our data with ease, seamlessly. They don't have to deal with any kind of semantic tables or modeling.
[10:42] That is where the unified catalog comes into picture. Now, behind the scenes we have a plethora of tables, probably dozens, hundreds of tables, hundreds of columns if not thousands. All of those are brought together and unified. So, you can imagine it to be
[10:58] more like a semantic abstraction layer over this complexity so that business can interact with ease with and in the intent capture phase, they can drag and drop those uh known one first-party and the third-party signals uh without being dealt without
[11:14] dealing with any kind of uh nomenclature of Delta Lake uh tables and catalogs and schemas. So, what we can say here, without a proper catalog, without a proper unified catalog, we just have raw data. But with a proper catalog, we have
[11:30] a CDP. And to touch on this more deeply, I'd like to call upon Verghese who will talk more about the execution plane. Thank you, Pratim. So, in our data journey, I want to talk about how our from from scattered data,
[11:45] we actually move into the activation phase. I want to talk about two different things. One is how we resolute identity, and second is how we use the consent applying of filtering the consents, and actually send the consented audience outside of the lakehouse. So, as we said, we get data from a lot
[12:02] of different sources, which means that it comes with a lot of identities. WBD is not a single product, it's a ecosystem. So, it has like HBO Max, CNN, studio and theatrical, a lot of um assets inside that. So, each of them come with their own set of identities.
[12:18] So, we can actually split like there are user-based identities, which are like email-based authentication, or that you have household-based where you have cable channels subscribed in households. And then you have device level where all the devices you watch all these assets from, or the web pages you actually
[12:34] visit from these devices. So, when you want to actually create a graph of that structure, generally traditional CDPs go for a graphical database where they actually get the both the metadata as well as the nodes, the how they are related to. And what we want to do is actually use
[12:50] Databricks itself as identity graph. So, for that initially, we created identity relationship, which kinds of holds the metadata about how each identities are related to each other. So, the identities might be first related based on deterministic matching, like an email ID used in CNN, and email
[13:07] ID um used in HBO Max might be the same. That's a deterministic matching. Or they might go for probabilistic matching where a household might be related to 10 email IDs, and how do you actually relate the right email IDs to the system? So, once we have the meta metadata in the identity relationship, actual
[13:24] identity table will have the actual primary identities with the linked identities and metadata will say how to go hop from one identity to another and the graphical structure is maintained in the metadata table. So, this is how we actually are able to actually find what is our identities
[13:40] needed for each of these destinations which are tend to be sent when the activation channel happens. The second part I want to talk about is the consent. So, this is the funnel through which the consent gate happens. So, once we evaluate an audience, there
[13:56] are two layers which we actually go through before we actually send an audience. First layer is for all the international region-based laws um the EMEA has its own laws in each of these countries. So, we have to consent for GDPR, CCPA, all the different types
[14:12] of laws. So, once we remove the users who are who are not consented, then we have the second stage where we are going for opt-outs and suppression. So, anybody who has opted out not to use their data for marketing or anybody who has sell, do not sell my data, or global
[14:27] suppression cases where you have all the users who would who are suppressed for any types of marketing are all removed. And then when you come, finally the audience you have here is now consented and addressable for any types of activation.
[14:44] So, now that we have all this data in Databricks, which is a warehouse, you know that when you're actually a user who's trying to create campaigns, you want to see the audience estimation sizes. And because it's a warehouse, a simple audience might take 1 minute or a complex audience might take more than 5 minutes. So, in that case, what do we
[15:01] want to do to give a good experience for the user so that they can actually see the estimate sizes even though it might not be 100% accurate. So, for that we had a three-step system where we started with creating sampling tables of 1% or 5% of the regular big tables. Once we
[15:17] created that, the audience query was replaced with the sample table so that it can act actually get the queries in a much faster way. But when you create a sampling table and extrapolate the second step that we scale it to 100% the problem always happens that there is a sampling bias
[15:32] which happens because the data might be taken might be stale at this point. There is new data coming in. So how do we correct that? So we deployed a XGBoost model on MLflow which is a very lightweight model and it had an endpoint. This is getting trained on all the previous audience evaluations as
[15:50] well as the previous snapshot data. So what it does is once the sampling estimation comes in, it calibrates that so that it gets into the accuracy of 90% or more. So that way the accuracy is just 10% less than the actual actual audience sizes which gives a very clear
[16:06] picture for the user who's actually creating it whether they want to know how many people they're actually trying to reach or they want to AB test use cases, how do they want to split the audiences on.
[16:26] So in summary, so the lakehouse it does the heart. So I want to like collate how it is a self-service loop. We start with the UI or the metadata which is getting stored which is getting synced into the Delta Lake. And then the Delta Lake actually evaluates these audiences based on the metadata and then enriches this and once
[16:41] the audience gets evaluated, the identities gets resoluted in the next step and the consents gets filtered. Once the consents are filtered, we are then getting ready that for activation. So only the consented users are leaving the lakehouse. And also we have made sure that the
[16:58] estimation are coming less than 30 seconds for the user to give a good user experience albeit in a 90% accuracy. And also we always send everything in a CDC incremental activation which means that not only for qualification, even for consents if somebody has opted in
[17:14] yesterday and opted out today, they will not leave the Lakers and they will be removed from the actual audience. I want to finish with a quote which I which is one of my favorite quotes. Without data, you're just another person with an opinion. So, in marketing, you're actually making
[17:30] a guess with a budget attached and the CDP is where you actually stop guessing and use actual data to reach the right audience. Now that we have explored the architecture behind Mosaic, the next question is, what does Mosaic look like
[17:46] in action? Let's look at the demo. Now, let's look at the Mosaic CDP tool. Before we dive into the tool, I want to note that all the data shown today is simulated. It has been prepared exclusively for
[18:02] demonstration purposes and does not represent real customer information. All right, now let's log into Mosaic. This is the main home page. One key feature you will notice in the top right corner is the ability to seamlessly switch between different brands and different regions.
[18:19] From this view, you can easily look up a specific customer profile from any WBD brand and region and analyze their various engagement data points. Now, let's look at creating an audience. By clicking audience, we can access user
[18:35] cohorts or segments that are defined by specific rule sets within Mosaic. Along the top, you can see various stakeholder teams utilizing the platform. We have also built in a user management for different teams across Warner Brothers Discovery.
[18:51] This allows us to manage and restrict access based on the team's region, the target activation destination, and the delivery frequency. Here, you can view existing audiences, their active destinations, and profile sizes and creators.
[19:07] The arrow next to the profile count track the daily trend from yesterday to today. Green means the audience is growing and red means it is shrinking. This makes it easy for the stakeholders to spot underperforming segments and quickly deactivate them if they are no longer
[19:22] adding value. By clicking on the three dots on any audience, we can open up a quick action menu. First, we have edit, which lets you modify and fine-tune your audience rules at any time. Next is copy. This is a major time-saver. Instead of building complex
[19:39] rule sets from scratch, users can duplicate an existing audience and simply layer new logic right on top of it. From this menu, you can also directly activate or delete an audience. You will also notice the same activate and delete actions are mirrored at the
[19:55] top of the screen for bulk operations alongside our split and compare feature. Our split feature allows you to segment your audience into smaller tests. Here you can see you can split an audience using various identities. This identity drop-down is pre-populated
[20:12] based on your rule set. You can split an audience into a control and a treatment group to make it 100%. This split is used for AB testing and helps the marketers make more data-driven decisions on how different audience control and treatment groups
[20:27] may respond to differently. Helping marketers better understand customer preferences and behavior. This also helps marketers to optimize their marketing spend and to improve their campaign performance. Now let's look at the compare feature.
[20:44] By clicking on the two audiences, we can compare a feature which allows user to analyze two different segments. This feature helps stakeholders to identify both shared and unique users across two separate audiences, making it easy to see exactly how much they
[21:00] intersect. Now let's look at the data catalog. We automatically onboarded all the first-party and third-party data points. We have onboarded all the ML generated traits, all the ML generated model outputs, such as stats model, next best
[21:16] action, involuntary churn, propensity model, and so on. So that our marketers can activate these data points in support cross-selling and upselling by predicting what a customer is most likely to buy next. It also helps reduce churn and to personalize customer interaction.
[21:33] As you can see here, we have multiple options to create an audience. We can either do it using a drag-and-drop option and build a rule-based rule set, or you can simply onboard or bring in your own data from any external source using a BYOD feature. Or simply using an
[21:49] AI assistant to build your rule set. And with that, we are going to start creating an audience using an AI assistant. Let us say I am a new user to Mosaic Data Platform, and I want to create an audience campaign.
[22:04] I have no idea what attributes or events to use, so I'm going to use our AI assistant and just type it in plain English to start a campaign. Let's say I want to target people who are most likely to watch comedy movies in HBO Max. So, what's happening behind the scenes?
[22:21] The agent is now trying to search our Databricks attribute catalog using vector search, and it validates the rule against our data contract. And then it tries to estimate audience sizes based on historical audience sizes and produces a ready-to-use segmentation
[22:37] rule. It's a tool calling agent running on Databricks model serving powered by Cloud Sonnet. The agent now returns asking for further questions. It wants to confirm if it can use a comedy propensity score, a data science model which predicts
[22:53] comedy viewing likelihood. It also wants to use the Max live movie lovers to make sure that we are actually going for movies. And then finally, it also wanted to see if we have to limit this only for active Max subscribers.
[23:08] So, I'm going to give the response to use a high comedy propensity threshold, to use movie lovers filter, and to limit to paid subscribers, and use all time as the time window. Next, our Spring Boot API sits in the middle of these requests. It authenticates requests, it persists the
[23:25] conversation, injects value verification for string fields, and then calls Data Bricks serving endpoint over HTTPS. Agent never touches the database directly. It only ever calls tools. It has now built an audience using the
[23:40] comedy propensity score, which has greater than the value 0.7 and movie lovers segment. And it has also estimated the audience size as roughly to be 800,000, which is in the range of 400k to 1.2 million.
[23:56] Albeit, this is of low confidence because there might not be historical audiences which are similar. Now, when I apply to builder, it replaces the existing rules, and the audience is now created. Now, let's see how to create an audience using our drag-and-drop feature.
[24:14] Welcome to Mosaic's audience page, where you can view and manage all existing audiences across your different business units. To get started, click on create audience. For this demo, we'll be working with the Supergirl title, which is releasing at the end of this month.
[24:31] We're excited to show you how Mosaic can help drive awareness for this launch. We'll create a new audience called Supergirl for paid media. Select the appropriate category, studios and theatrical, and click create.
[24:46] We're now on the audience builder page, where you can define the rule sets that will generate your custom audience. Our goal here is to help marketing teams reach the audiences most likely to watch Supergirl in theaters. Since Superman and Wonder Woman have historically attracted similar
[25:02] audiences, we'll use engagement with those titles to identify potential Supergirl viewers. Comparable titles are proven strong indicators of audience affinity and interest in similar characters, themes, and genres.
[25:18] Let's start building this audience by dragging and dropping a data source into the center, then selecting an event type. We'll use the event type called event frequency with attribute filter in the time window, which allows us to select a specific engagement trait. Click on that
[25:33] option. Set the count to more than zero occurrences to capture all engagement events. Then set the attribute to title, which contains Superman in our case. As you begin typing, the autocomplete feature suggests matching titles. Here
[25:50] you can see Superman populate, and we'll do the same for Wonder Woman. Both titles are now selected. Set the time window to the last 12 months. This configuration will find all engagements for Superman and Wonder Woman within that period.
[26:05] Click save to store your audience definition. Once saved, click refresh and Mosaic will automatically estimate your audience reach, giving you a count of qualified profiles, user IDs, and email addresses. Once you're ready, click activate.
[26:21] Mosaic will let you choose a paid media destination where you'd like to push this audience for activation. All right, so in order to activate an audience, we go to destinations catalog view. Here we see Mosaic supports more than 20 out-of-the-box destinations, and Meta is
[26:37] one of them. After selecting Meta, I land on the accounts management page. This helps keep vendor configuration centralized instead of redefining it for every activation. We click on create new account. Now, after pressing on the create new
[26:54] account, we come to the account setup. But, in the interest of time, I will use an account that has already been set up. So, in the account setup flow, we first provide the account information, then configure the connection details, such as the relevant meta identifiers
[27:09] and credentials here, and then finally add the destination. So, once the meta destination is configured, I go to an existing audience and choose activate. Now, I find the destination that I have to activate it to.
[27:24] So, this opens up the scheduling and mapping flow. Here, I select the refresh cadence, start and end dates, and the activation identity. The frequency that appear here are permissioned and destination aware. So, for meta, different teams may see different allowed cadences depending on
[27:41] policy and configuration. So, once everything is selected, we press next. So, on this next screen, I apply consent filtering. By default, the destination brand decides the default consents, which are applied already to the activation.
[27:56] But, if the user wants to add more, they can do so from here. Now, we press next and go to the summary page. At this point, Mosaic has everything it needs: the audience, the destination, the cadence, the identity mapping, and the consent context.
[28:12] This is effectively the binding point between what we want to send, which is the audience, and where we want to send it, the meta destination. Now, we go ahead and activate this audience. We can go to Meta Ad Manager, and we can see that the audience has been created
[28:28] here. We'll quickly click on it and go to the history. So, it has just been created here. So, now if you wait for a few moments, because the back-end job has been triggered, you will see the data flowing through this audience in real time.
[28:43] And there you go. You start seeing the numbers here. That means the data is being sent to Meta and it's being updated in this audience ID. So once the audience is activated to Meta, our marketing teams at WD can immediately use it for paid media
[28:58] targeting, suppression, or re-engagement use cases. That turns first-party Mosaic audiences into directly actionable segments for campaign execution and measurement. Now let's look at some of Mosaic's admin features. The first in line is the external data
[29:15] source on boarder. This gives users a centralized inventory of what is already available in Mosaic, and it also makes governance much easier because onboarding is visible, searchable, and standardized. Now to add a new data source, we click on add new data source, and we provide
[29:32] the catalog, schema, and the table, and then we press next. So now in the second step, we define the business and technical context for that source. Now on this screen, we attach column name to the display name, and then we hit save. Let's do a quick sanity check.
[29:49] So we have it here. Now to see if that was made available in the audience building catalog, we'll go to audience, select any audience here, and see one of those columns that we selected there. So let's say lapsed DCUI, and we have it
[30:04] here. So it was ingested correctly, and these are made available to be selected and dragged and dropped into the audience building scheme. Another key Mosaic admin capability is the platform observability. That is how we make sure that Mosaic is
[30:19] operationally excellent. For example, the event latency dashboard helps us monitor how quickly events are flowing through the system by region and by source. So teams can detect delays early and respond before they impact downstream activation or reporting.
[30:36] Coming back, we have Grafana. We can go into Mosaic, and we have all the services listed here. We can go to any and see the metrics there. Here we also have Databricks SQL health checks and alerts configured by region. So the team can quickly detect failures,
[30:53] threshold breaches, or degraded query behavior before they impact downstream. Last but not the least, we have also added a decision intelligence layer on top of Mosaic. Introducing smart campaigns. Today, Mosaic helps marketers discover
[31:08] audiences, understand customers, and activate segments across destinations. Smart campaigns is the next evolution in Mosaic. Instead of asking marketers to manually decide who to target, which channels to use, and how to allocate budget, Mosaic can now recommend the
[31:24] entire campaign strategy. Now, in order to create a new campaign, we hit the new campaign button. And instead of filling all of these fields in form, we'll use AI to do that for us. So we say, "I need to promote Euphoria season finale, get views and impressions
[31:40] for the budget 200K." And we do fill form. So once the campaign is generated, Mosaic evaluates audience signals, content affinity, viewing behavior, subscription status, historical performance patterns, governance rules, and channel effectiveness to produce
[31:57] ranked recommendations. So let's go ahead and do that. So now, as you see, instead of returning one single audience, Mosaic produces multiple recommended audience and channel combinations, each ranked by confidence. For every recommendation, we provide projected reach, expected
[32:13] starts, completions, incremental lift, audience size guidance, and the signal driving the recommendation. Marketers can inspect the generated audience logic, understand the audience profile, and review similar audiences as well
[32:29] here. And see exactly why Mosaic believes this recommendation is likely to succeed. It also recommends channels, expected reach, confidence score, budget allocation, and overlap analysis. So, here if you see, owned channels are
[32:44] prioritized first with paid media introduced only when additional incremental reach is required. Finally, coming to governance and activation. So, every recommendation is automatically validated against Mosaic's governance framework, including consent,
[32:59] regional restrictions, eligibility rules, and identity policies. So, once everything's proofread, now let's go ahead and select one audience and activate it. And it's done. So, when we come back to smart campaigns, we can see that the Euphoria
[33:14] campaign that we created has gotten activated here. Looking ahead, our roadmap focuses on expanding the foundation for this AI-driven marketing and measurement features. We will expand on the AI-powered smart
[33:31] campaigns to automate audience selection and activation. We will enhance on the smart audiences with predictive segmentation, look-alike modeling, and real-time segment enrichment to improve the targeting and personalization at scale.
[33:46] And last but not the least, connect all of the marketing and advertising campaign performance into that unified measurement framework, delivering the true end-to-end closed-loop attribution. And with these investments, Mosaic will continue to evolve from a customer data
[34:02] platform into an intelligent growth platform for Warner Bros. Discovery. And with that, I would like to open it up for questions. Thank you all for coming.
Learn more about the Databricks Data and AI platform.
The information provided herein is for general informational purposes only and may not reflect the most current product capabilities or configurations.