Aug. 25, 2026

Microsoft Fabric End-to-End: From Raw Data to Business Decisions with Amit Chandak [MVP]

Microsoft Fabric End-to-End: From Raw Data to Business Decisions with Amit Chandak [MVP]
Microsoft Fabric End-to-End: From Raw Data to Business Decisions with Amit Chandak [MVP]
M365 FM Podcast
Microsoft Fabric End-to-End: From Raw Data to Business Decisions with Amit Chandak [MVP]

Key Takeaways

  • Microsoft Fabric unifies analytics workloads around shared foundations like OneLake, common capacities, and the Delta format to eliminate unnecessary data duplication.
  • OneLake acts as a virtualized single storage foundation for the entire tenant, conceptually similar to OneDrive but designed for enterprise-scale data architecture.
  • Shortcut capabilities allow teams to reference data across environments without physical copying, while also enabling workload and capacity isolation.
  • Choosing between a Lakehouse and a Warehouse comes down to data types, preferred technologies, and team skills, with Lakehouses handling structured and unstructured data via Spark, and Warehouses providing a T-SQL experience.
  • Semantic models are evolving beyond traditional Power BI report foundations into critical business layers that can be consumed by AI agents, Data Agents, and Fabric Apps.

Microsoft Fabric brings data engineering, analytics, business intelligence, governance and increasingly AI together in one platform. But what does an end-to-end Fabric architecture actually look like when you move beyond individual features and start connecting everything?In this episode of the M365 FM Podcast, Mirko Peters is joined by Amit Chandak [Microsoft Data Platform MVP] for a practical journey through Microsoft Fabric β€” starting with raw organizational data and ending with trusted information that business users can use to make decisions.

WHY MICROSOFT FABRIC?
Before Fabric, organizations could already build sophisticated analytics architectures using Azure, Power BI and other platforms. The problem wasn't a lack of technology. In many cases, it was the opposite: organizations had too many choices, separate storage technologies, different compute models and multiple copies of essentially the same data.Amit explains how Microsoft Fabric attempts to simplify this architecture by bringing workloads together around shared foundations such as OneLake, common Fabric capacity and the Delta format. Lakehouses, warehouses, Power BI and other Fabric experiences can therefore operate as parts of a broader platform instead of completely isolated services.

ONELAKE AS THE FOUNDATION
OneLake is one of the central concepts behind Fabric. Amit compares it conceptually to OneDrive: instead of every analytics workload creating completely independent storage environments, OneLake provides a virtualized storage foundation across the Fabric tenant.Organizations can still separate data through workspaces, Lakehouses, Warehouses and domains, but those resources exist within a common Fabric storage architecture. This becomes particularly important when organizations want to reduce unnecessary duplication while maintaining security and organizational boundaries.

CENTRALIZED DATA OR DATA MESH?
Fabric doesn't automatically mean putting everything into one giant centralized analytics environment.For smaller organizations, a centralized architecture may still work well. As organizations become larger, Amit sees increasing value in domain-oriented architectures where areas such as sales, finance and purchasing can have their own workspaces and responsibilities.IT can remain responsible for availability, governance and the technical foundation while business domains increasingly take ownership of how their data is analyzed and consumed.

SHORTCUTS INSTEAD OF COPYING DATA
One of the recurring themes throughout the conversation is avoiding unnecessary copies of data.Fabric Shortcuts allow teams to reference data stored elsewhere rather than physically copying it into every environment that needs it. That can apply both inside Fabric and to supported external storage.Amit also explains an interesting architectural benefit of shortcuts: they can help separate workloads across capacities. This can become important when organizations want Power BI consumption workloads isolated from intensive data engineering workloads while still working with the same underlying information.

LAKEHOUSE VS. WAREHOUSE
One of the biggest Fabric architecture questions remains: Should you use a Lakehouse or a Warehouse?A Lakehouse can work with structured and unstructured data and is naturally aligned with Spark. A Fabric Warehouse focuses on structured data and provides the familiar T-SQL experience.Both ultimately use Delta for structured data inside Fabric, which means the decision increasingly comes down to the type of data, preferred technologies and workloads.Organizations with strong SQL teams don't necessarily need to abandon their existing skills. Teams working with very large datasets, advanced engineering scenarios, unstructured information or extensive data science workloads may find the Lakehouse and Spark approach more attractive.

GETTING DATA INTO FABRIC
Once the architecture is defined, organizations still need to bring data into Fabric.Amit walks through several approaches, including Shortcuts, Mirroring, Pipelines, Copy Activity, Copy Jobs, Dataflow Gen2 and notebooks.The right option depends heavily on the source and use case. Dataflow Gen2 remains particularly useful because of its broad connector support and familiar Power Query experience. For Power BI professionals entering Fabric, this can provide a natural starting point before moving toward more engineering-oriented approaches.

WHEN PYSPARK BECOMES IMPORTANT
Power Query and Dataflow Gen2 can work very well for small and medium-sized workloads, but scale changes the equation.For larger transformation workloads, Amit sees significant advantages in Spark-based processing. PySpark and Spark notebooks provide greater flexibility and are designed for distributed processing at scale.SQL and Power BI professionals don't necessarily have to make that transition immediately. Spark SQL can provide a familiar entry point for SQL developers, while many PySpark operations have conceptual similarities to transformations Power Query users already understand.

DO YOU REALLY NEED BRONZE, SILVER AND GOLD?
The Medallion Architecture has become almost synonymous with modern data engineering: Bronze for raw data, Silver for cleaned and transformed data, and Gold for business-ready information.But Amit argues that organizations shouldn't create layers simply because an architecture diagram says they should.If an organization already has excellent master data management and high-quality source data, every intermediate layer may not provide enough value to justify another copy and another transformation step. Where source data quality is inconsistent, however, the traditional Bronze-Silver-Gold structure remains highly valuable.

WHERE SHOULD BUSINESS LOGIC LIVE?
Another important architecture decision is determining where calculations and business rules belong.Amit prefers keeping measures and KPIs in the semantic model where possible because they remain dynamic and easier to change. Heavy row-level calculations across millions of records, however, are generally better handled earlier in the Gold layer.The result is not an either-or decision. A mature Fabric architecture distributes business logic deliberately between the transformation layer and semantic model depending on the type and cost of the calculation.

SEMANTIC MODELS ARE BECOMING MORE IMPORTANT
The semantic model was traditionally viewed primarily as the foundation for Power BI reports. AI is changing that role.Relationships, measures, KPIs and business definitions encoded within a semantic model represent organizational knowledge. That knowledge can increasingly be consumed by experiences beyond traditional dashboards.Amit discusses how Data Agents, ontology-driven solutions and Fabric Apps can build on semantic models. Instead of being merely a Power BI component, the semantic model can become a reusable business layer between organizational data and multiple human or AI-driven experiences.

DOES DAX STILL MATTER IN THE AI ERA?
AI can already generate DAX, SQL, PySpark and other code remarkably quickly. Does that mean professionals no longer need to learn these languages?Amit argues that expertise still matters, particularly when generated solutions don't work correctly or need optimization. AI can dramatically reduce the amount of syntax professionals need to write manually, but understanding the underlying logic remains valuable for debugging and improving what AI creates.Over time, the skill may shift from remembering syntax toward understanding architecture, algorithms, business logic and how to describe requirements precisely.

SECURITY FROM WORKSPACE TO DATA
Putting more organizational data into a unified platform makes security increasingly important.The discussion covers security across multiple layers, beginning with Fabric workspace roles and continuing through item-level access, OneLake security and semantic-model security.For larger organizations, Amit recommends using security groups rather than managing individual users wherever possible. Microsoft Entra provides the identity and group foundation, while Fabric applies those identities and groups to workspaces, items and data access.

FROM DATA ENGINEERING TO BUSINESS DECISIONS
Ultimately, most business users don't care whether their information came through PySpark, a Lakehouse, Delta tables or Dataflow Gen2. They care about getting reliable answers.This is where Amit sees Data Agents, ontology and AI-driven analytics becoming increasingly important.Instead of every user receiving the same predefined dashboard, future analytics experiences could become far more dynamic. Users may interact conversationally with organizational data and eventually have personalized reports or applications generated around their specific questions and responsibilities.

RAPID FIRE
The episode closes with a rapid-fire round.SQL or PySpark? PySpark.Dataflow Gen2 or Notebook? Notebook.DAX or SQL? DAX.Most underrated Fabric feature? Fabric Apps.Biggest Power BI modeling mistake? Many-to-many relationships.And perhaps the most provocative answer of the episode:Are Fabric Apps the new Power BI?Amit's answer: Yes.

THE BIG PICTURE
Microsoft Fabric isn't simply another analytics product to add to the Microsoft stack.Its larger opportunity is connecting ingestion, engineering, storage, Lakehouse and Warehouse architectures, semantic models, security, Power BI and emerging AI experiences into one coherent analytics platform.The technical architecture matters, but the endpoint isn't OneLake, PySpark or even Power BI.The endpoint is trusted information that people β€” and increasingly AI agents β€” can turn into better business decisions.

Become a supporter of this podcast: https://www.spreaker.com/podcast/m365-fm-modern-work-security-and-productivity-with-microsoft-365--6704921/support.

πŸš€ Want to be part of m365.fm?

Then stop just listening… and start showing up.

πŸ‘‰ Connect with me on LinkedIn and let’s make something happen:

  • πŸŽ™οΈ Be a podcast guest and share your story
  • 🎧 Host your own episode (yes, seriously)
  • πŸ’‘ Pitch topics the community actually wants to hear
  • 🌍 Build your personal brand in the Microsoft 365 space

This isn’t just a podcast — it’s a platform for people who take action.

πŸ”₯ Most people wait. The best ones don’t.

πŸ‘‰ Connect with me on LinkedIn and send me a message:
"I want in"

Let’s build something awesome πŸ‘Š

Frequently Asked Questions

What is Microsoft Fabric?

Microsoft Fabric is an end-to-end analytics platform that brings together data engineering, data integration, warehousing, business intelligence, governance, and AI into a single unified environment.

What is OneLake in Microsoft Fabric?

OneLake is a centralized, virtualized storage foundation across the entire Fabric tenant. It functions like a single drive for all organizational data, eliminating the need for independent storage silos.

When should you use Microsoft Fabric shortcuts?

Shortcuts should be used to reference data stored in other workspaces, external cloud storage, or Lakehouses without making physical copies, helping save storage and isolate compute capacities.

What is the difference between a Lakehouse and a Warehouse in Fabric?

A Lakehouse handles both structured and unstructured data governed by Spark, whereas a Warehouse focuses purely on structured data and provides a familiar T-SQL query experience.

1
00:00:00,000 --> 00:00:04,360
Welcome everybody to the new episode of the MC65FM podcast.

2
00:00:04,360 --> 00:00:08,400
Today we are going to end to end with Microsoft Fabric.

3
00:00:08,400 --> 00:00:10,960
Not looking at one isolated feature,

4
00:00:10,960 --> 00:00:14,400
but at how the different parts of the platform

5
00:00:14,400 --> 00:00:17,840
come together to create a modern analytics architecture.

6
00:00:17,840 --> 00:00:23,240
How should organization think about leg house versus data warehouse,

7
00:00:23,240 --> 00:00:25,760
where do spiced back belong?

8
00:00:25,760 --> 00:00:29,000
When should we use data flow gen 2?

9
00:00:29,000 --> 00:00:31,760
How do the mental models fit into the architecture?

10
00:00:31,760 --> 00:00:35,200
And ultimately, how do we turn all this technology

11
00:00:35,200 --> 00:00:38,880
into power BI solutions that business user can actually use

12
00:00:38,880 --> 00:00:40,520
and make a better decision?

13
00:00:40,520 --> 00:00:42,800
My guest today is Amit Shaktaq.

14
00:00:42,800 --> 00:00:49,400
Microsoft data, Microsoft data, platform MVP and power BI community

15
00:00:49,400 --> 00:00:53,320
super user, Amit has more than 22 years of experience

16
00:00:53,320 --> 00:00:56,040
in data analytics and currently leads data engineering

17
00:00:56,040 --> 00:01:01,640
and the leg solution at Canerica is experience response

18
00:01:01,640 --> 00:01:05,760
Microsoft fabric power BI SQL databases, Tableau,

19
00:01:05,760 --> 00:01:08,480
in quarter data engineering modeling and visualization.

20
00:01:08,480 --> 00:01:12,240
Today we are going to build the Microsoft fabric analytics

21
00:01:12,240 --> 00:01:15,720
story from the ground up from architecture

22
00:01:15,720 --> 00:01:19,440
to ingesting through transformations, storage,

23
00:01:19,440 --> 00:01:22,760
semantics models, security performance, and final power BI.

24
00:01:22,760 --> 00:01:27,240
Amit, welcome to the MC65 podcast.

25
00:01:27,240 --> 00:01:29,720
Thanks, thanks for inviting me for this podcast.

26
00:01:29,720 --> 00:01:33,080
It's my pleasure to be part of this one, Peter.

27
00:01:33,080 --> 00:01:34,080
Awesome.

28
00:01:34,080 --> 00:01:38,240
Before we get deeply technical,

29
00:01:38,240 --> 00:01:44,120
how did your journey into data and analytics begin?

30
00:01:44,120 --> 00:01:49,800
Yeah, so I joined Oracle in 2003.

31
00:01:49,800 --> 00:01:54,360
I selected Oracle as an act of campus and I became the part

32
00:01:54,360 --> 00:01:56,800
of their BI team.

33
00:01:56,800 --> 00:02:00,240
They were going to one of the transformation at that time.

34
00:02:00,240 --> 00:02:02,600
We were building this tool which is known as the

35
00:02:02,600 --> 00:02:06,040
BI daily business intelligence and that's where I started my journey.

36
00:02:06,040 --> 00:02:12,480
After I left Oracle, I started a company along with one of my colleagues

37
00:02:12,480 --> 00:02:16,200
and I ran a data analytics startup for 10 years.

38
00:02:16,200 --> 00:02:19,800
We created our own tool very similar to Power BI directory.

39
00:02:19,800 --> 00:02:23,480
We used to have the tool completely on the web.

40
00:02:23,480 --> 00:02:25,320
At that time, you know, having a complete web

41
00:02:25,320 --> 00:02:26,440
all thing was a challenge.

42
00:02:26,440 --> 00:02:31,000
So that tool was completely authored on web, designing reports,

43
00:02:31,000 --> 00:02:34,960
creating the semantic models and everything was on the web.

44
00:02:34,960 --> 00:02:36,760
So complete web all thing was there.

45
00:02:36,760 --> 00:02:42,040
And then I done that for 10 years and post that I decided to move on.

46
00:02:42,040 --> 00:02:44,160
That's where I joined my current company, Connecticut.

47
00:02:44,160 --> 00:02:47,200
I also moved to Microsoft technology around the same time.

48
00:02:47,200 --> 00:02:54,400
I became a Power BI community super user around 2020 and then around 2022,

49
00:02:54,400 --> 00:02:59,600
October when I became Microsoft MVP for data platform.

50
00:02:59,600 --> 00:03:00,600
Awesome.

51
00:03:00,600 --> 00:03:03,280
That's, yeah, that's the way it went.

52
00:03:03,280 --> 00:03:05,960
22 years, it's a lot of time.

53
00:03:05,960 --> 00:03:09,560
But yeah, that's direct jump into the fabric part.

54
00:03:09,560 --> 00:03:11,800
So let's start with the big question.

55
00:03:11,800 --> 00:03:16,880
What problem is Microsoft fabric actual trying to dissolve?

56
00:03:16,880 --> 00:03:23,160
See prior to Microsoft Fabric, see, it's not that we are doing data

57
00:03:23,160 --> 00:03:26,000
engineering something new with fabric.

58
00:03:26,000 --> 00:03:29,040
The whatever components fabric has, all those components

59
00:03:29,040 --> 00:03:32,720
were previously available at different places.

60
00:03:32,720 --> 00:03:35,520
So if you look at Azure ecosystem, you could have, you know,

61
00:03:35,520 --> 00:03:38,280
100 plus choices to do what fabric is doing today.

62
00:03:38,280 --> 00:03:41,600
If I look at the larger ecosystem, if I include Azure,

63
00:03:41,600 --> 00:03:48,000
AWS, even Google platform, I might have 1000 plus choices to do my own data engineering work.

64
00:03:48,000 --> 00:03:49,480
But the challenge was bigger.

65
00:03:49,480 --> 00:03:52,040
Now choice of technology was one challenge.

66
00:03:52,040 --> 00:03:55,800
Then other than choice of technology, create a multiple copies of data.

67
00:03:55,800 --> 00:03:59,160
What happens in the data analytics or BIA ecosystem?

68
00:03:59,160 --> 00:04:00,440
We say single source of proof.

69
00:04:00,440 --> 00:04:02,040
We always talk about it.

70
00:04:02,040 --> 00:04:05,120
But our own ecosystem, because we sometime we need data lake,

71
00:04:05,120 --> 00:04:08,840
another time we need data warehouse and then we need powerful tools like power

72
00:04:08,840 --> 00:04:13,040
BIA, which for input would be our self creating copies of data.

73
00:04:13,040 --> 00:04:18,120
And all these tools are working on different technologies is they have different kind of back ends.

74
00:04:18,120 --> 00:04:19,520
Their storage were different.

75
00:04:19,520 --> 00:04:23,000
They they were created at different time frames.

76
00:04:23,000 --> 00:04:27,640
So all of them were, you know, built differently, storing differently.

77
00:04:27,640 --> 00:04:31,280
And they were using different ways compute powers getting compute.

78
00:04:31,280 --> 00:04:35,560
A Microsoft node challenge and I think that's where they start in the center apps where

79
00:04:35,560 --> 00:04:37,520
they wanted to address this one.

80
00:04:37,520 --> 00:04:41,840
A fabric name was even higher where they sorted out the entire stuff.

81
00:04:41,840 --> 00:04:46,600
Whether you have the structure data and structure data, where you wanted to have warehouse,

82
00:04:46,600 --> 00:04:50,760
where you wanted to have power BIA or even real time analytics, they were able to put everything

83
00:04:50,760 --> 00:04:52,240
at one place.

84
00:04:52,240 --> 00:04:56,640
And they starting, you know, with a few foundations like one lake where, you know, your entire

85
00:04:56,640 --> 00:05:00,760
data assets, whether it's a metadata data can decide.

86
00:05:00,760 --> 00:05:05,000
Then they solved the problem of compute by saying, okay, all the workloads in Microsoft

87
00:05:05,000 --> 00:05:07,400
fabric can share one single compute.

88
00:05:07,400 --> 00:05:11,920
Now you can have multiple computers per requirement, but that that is one of the biggest achievement

89
00:05:11,920 --> 00:05:14,600
because think about your running spark workload.

90
00:05:14,600 --> 00:05:17,760
How would you compare that with power BIA or CQVV?

91
00:05:17,760 --> 00:05:18,760
They're all together.

92
00:05:18,760 --> 00:05:24,560
But everything gets converted to compute units and getting chard within the same number

93
00:05:24,560 --> 00:05:26,560
of computers which is available with you.

94
00:05:26,560 --> 00:05:29,200
Let's say paradew per 30 seconds.

95
00:05:29,200 --> 00:05:31,920
Then comes the challenge which is there with the storage.

96
00:05:31,920 --> 00:05:36,200
Now I have storage, which is available for the greater work, but what happens when I

97
00:05:36,200 --> 00:05:39,560
store the data, let's say for lake house, I might prefer some format.

98
00:05:39,560 --> 00:05:43,080
Now where else doesn't understand that format and that's why I was copying data from lake house

99
00:05:43,080 --> 00:05:45,320
to where else when I was doing previous term.

100
00:05:45,320 --> 00:05:48,360
Similarly, power BIA was not comfortable with data warehouse formats.

101
00:05:48,360 --> 00:05:49,760
So it was creating on copy.

102
00:05:49,760 --> 00:05:54,400
Now whenever we store the structured data, whether it's a lake house, whether it's a warehouse,

103
00:05:54,400 --> 00:06:00,560
it all getting stored into delta format, which created that uniform format, which lake

104
00:06:00,560 --> 00:06:05,480
house understand, which spark understand, which T-SQL understand, which even the power

105
00:06:05,480 --> 00:06:08,000
query engine has been modified to understand that.

106
00:06:08,000 --> 00:06:11,960
So it means I am not unnecessary creating copies of data.

107
00:06:11,960 --> 00:06:16,200
Definitely most of us follows the medallion architecture and in that we will have, you know,

108
00:06:16,200 --> 00:06:20,040
bronze, silver and gold, but it doesn't mean that I'm going to create unnecessary copies

109
00:06:20,040 --> 00:06:23,160
of my bronze data and unnecessary copies of my gold data.

110
00:06:23,160 --> 00:06:28,680
So these are some of the challenges which existed while, you know, we have the ecosystems

111
00:06:28,680 --> 00:06:31,640
available for last 15 to 20 years to do data analytics.

112
00:06:31,640 --> 00:06:35,760
But these are some of the challenges which emerges because of the growth of the data, which

113
00:06:35,760 --> 00:06:42,160
is there with us and Microsoft fabric has, you know, went ahead and addressed that.

114
00:06:42,160 --> 00:06:52,960
And how much to do an organization's data practice need to be before a depth thing fabric?

115
00:06:52,960 --> 00:06:58,640
See Microsoft fabric is basically complete end to end solution for your data analytics need.

116
00:06:58,640 --> 00:07:04,760
So even if you are starting for data analytics, Microsoft fabric can be there.

117
00:07:04,760 --> 00:07:08,800
So the only in the chart is needed at the source level that you understand your sources

118
00:07:08,800 --> 00:07:12,960
and you understand what is needed for data analytics.

119
00:07:12,960 --> 00:07:18,200
If you are ready to analyze your data, if your data is arranged, let's say, if your data

120
00:07:18,200 --> 00:07:22,880
is completely unorganized, you are, you know, still working on some of those spreadsheets

121
00:07:22,880 --> 00:07:30,560
a lot, some of the, let's say ERP or CRM implementations are still ongoing or on middle of it, then

122
00:07:30,560 --> 00:07:31,880
it might not be the right time.

123
00:07:31,880 --> 00:07:36,720
But if you are a data mature company in terms of capturing the data and wanted to do

124
00:07:36,720 --> 00:07:40,720
entities or already there with some analytics and wanted to transform it to the model system,

125
00:07:40,720 --> 00:07:44,440
I think in both case you are ready for data and it is on Microsoft fabric.

126
00:07:44,440 --> 00:07:46,480
It provides you everything these days.

127
00:07:46,480 --> 00:07:51,000
If you, if you say I just wanted to do simple, simple, create very simple report using

128
00:07:51,000 --> 00:07:52,600
Powerway, that's also possible.

129
00:07:52,600 --> 00:07:57,040
And you want to follow the complete architecture, you know, bringing data to the lake houses,

130
00:07:57,040 --> 00:07:59,520
transforming it and create warehouse and then wanted to do it.

131
00:07:59,520 --> 00:08:02,320
That is also possible in Microsoft fabric.

132
00:08:02,320 --> 00:08:08,960
What, what did you think, how important is domain oriented architecture in fabric or

133
00:08:08,960 --> 00:08:16,920
or short organizations create one large centralized fabric environment or distribute responsibility

134
00:08:16,920 --> 00:08:19,520
across business domains?

135
00:08:19,520 --> 00:08:25,080
I think we are in an era where we talk about business owning these stuff where we talk about

136
00:08:25,080 --> 00:08:28,080
data mesh architecture where we talk about domains.

137
00:08:28,080 --> 00:08:33,080
So in the modern architecture, why, you know, your IT could be custodian of your data,

138
00:08:33,080 --> 00:08:38,320
but you need to create, you know, multiple domains in which the data is going to decide

139
00:08:38,320 --> 00:08:39,320
finally.

140
00:08:39,320 --> 00:08:43,840
So you can have a master data separately analyzed for the organization level because master

141
00:08:43,840 --> 00:08:48,160
data management is key for all the analysis post that I think it is based on let's say

142
00:08:48,160 --> 00:08:53,160
sales, finance, and purchase can have their own workspaces can they have their own domain

143
00:08:53,160 --> 00:08:54,920
and the data can decide.

144
00:08:54,920 --> 00:08:59,920
If you are a small to medium size organization having a centralized data warehouse, a works

145
00:08:59,920 --> 00:09:05,400
means it can have anything, but if you are a medium to large enterprise or a very large

146
00:09:05,400 --> 00:09:09,760
enterprise, it is always good to have, you know, data mesh architecture where you have

147
00:09:09,760 --> 00:09:14,280
the domains and, you know, the ownership lies with business more than IT.

148
00:09:14,280 --> 00:09:19,600
So it is the combined governance, while the data, entity and the data availability ensure

149
00:09:19,600 --> 00:09:24,920
by IT, but the analysis part of it, distribution part of it and the management part of this is

150
00:09:24,920 --> 00:09:27,640
governed by the business.

151
00:09:27,640 --> 00:09:38,000
And I think the core term when we talk about Microsoft Fabric is it's one leg, what is

152
00:09:38,000 --> 00:09:41,960
one leg in practical terms?

153
00:09:41,960 --> 00:09:44,840
Like today what happens?

154
00:09:44,840 --> 00:09:49,560
Let's talk about our own stuff when we are trying to go online.

155
00:09:49,560 --> 00:09:55,240
One other thing what we do is we either we choose let's say one drive for ourself, we are

156
00:09:55,240 --> 00:10:00,120
trying to put our word file, excel file, everything on the one drive and say, okay, my data is

157
00:10:00,120 --> 00:10:03,880
you know all stored at one place in one one drive.

158
00:10:03,880 --> 00:10:10,320
Now the, now in Microsoft Fabric world, one leg is the one drive whether it is my lakehouse

159
00:10:10,320 --> 00:10:14,400
data warehouse data my metadata my power be a cementing model everything is getting stored

160
00:10:14,400 --> 00:10:16,200
at one place.

161
00:10:16,200 --> 00:10:22,080
And the good thing about this is this is one single virtualize storage for your tenant.

162
00:10:22,080 --> 00:10:27,480
Now think about you kind of have a tenant which is, you know, single tenant which is across

163
00:10:27,480 --> 00:10:28,480
geographies and everything.

164
00:10:28,480 --> 00:10:30,200
You need to take care about that.

165
00:10:30,200 --> 00:10:33,600
And that is where you know, Fabric does it smartly that at the workspace level you can

166
00:10:33,600 --> 00:10:37,680
have those regional aspect taking care of.

167
00:10:37,680 --> 00:10:43,240
So virtualized as one but yet still internally you can have the security aspect or the regional

168
00:10:43,240 --> 00:10:46,120
aspect covered.

169
00:10:46,120 --> 00:10:54,840
And what problem do is the one leg soft compared to organization creating I don't know multiple

170
00:10:54,840 --> 00:10:57,880
independent data data lakes.

171
00:10:57,880 --> 00:11:04,480
See when we say data lake understand inside Microsoft fabric again we can have multiple lakehouses.

172
00:11:04,480 --> 00:11:08,640
And think about it this let's say if I wanted to store it at different different places

173
00:11:08,640 --> 00:11:12,920
typical previous architecture which you talk about let's say multiple lakehouses see when

174
00:11:12,920 --> 00:11:17,000
we store at different places we need different security keys.

175
00:11:17,000 --> 00:11:18,480
We need different management.

176
00:11:18,480 --> 00:11:20,360
We have different costs around it.

177
00:11:20,360 --> 00:11:25,520
Now here what is happening you are being charged for what you are storing maybe it is stored

178
00:11:25,520 --> 00:11:30,360
practically for purpose in different work workspaces and different lake houses these are

179
00:11:30,360 --> 00:11:31,680
just containers folders.

180
00:11:31,680 --> 00:11:36,120
This is like if I go my computer I will not store everything in one drive or one folder I

181
00:11:36,120 --> 00:11:37,840
will have this set of folders.

182
00:11:37,840 --> 00:11:44,080
So Microsoft fabric make it so easy inside your one lake that it is one virtualized disk for

183
00:11:44,080 --> 00:11:46,000
you where you have different different folders.

184
00:11:46,000 --> 00:11:51,480
Now the folder could be lake house or something below that you have the data in that aspect

185
00:11:51,480 --> 00:11:53,040
you are storing it.

186
00:11:53,040 --> 00:11:57,200
So the entire storage at one place you are getting charge at one place now the security is

187
00:11:57,200 --> 00:12:01,080
entire SSO security or your item level security which comes in and play.

188
00:12:01,080 --> 00:12:08,680
So you can secure it easily it is all getting secure using one set of you know way it is not

189
00:12:08,680 --> 00:12:14,520
different experience at okay if I have a data stored in let's say ADLS storage or AWS storage

190
00:12:14,520 --> 00:12:18,780
I need to have different different processes for that and how do I secure and still give

191
00:12:18,780 --> 00:12:23,400
access to everyone that's not a challenge here it is the same common interface to you know

192
00:12:23,400 --> 00:12:28,720
put the data in and secure it for everyone using that the workspace level security or item

193
00:12:28,720 --> 00:12:34,320
level security or inside even item means let's say that is warehouse or lake house or item or

194
00:12:34,320 --> 00:12:38,800
entities inside that further I can go and secure it individual table columns or even the

195
00:12:38,800 --> 00:12:42,000
role of a data.

196
00:12:42,000 --> 00:12:49,080
And how should organization think about ownership when multiple teams consume the same data

197
00:12:49,080 --> 00:12:52,280
through one lake.

198
00:12:52,280 --> 00:12:57,560
See so for the ownership that is why we have these concepts of work spaces where the actual

199
00:12:57,560 --> 00:13:02,320
security process starts so what we typically do is we divide the content into different

200
00:13:02,320 --> 00:13:07,520
different work spaces and from those work spaces for individual items we give access to

201
00:13:07,520 --> 00:13:11,920
the other people who wanted to access like I will have a master data workspace where entire

202
00:13:11,920 --> 00:13:16,600
my master data besides now the same master data would be consumed by say steam it is also

203
00:13:16,600 --> 00:13:20,920
being consumed by finance team so I will give the access the read access to all the people

204
00:13:20,920 --> 00:13:26,400
who are consuming that data to read it and then further they can you know go add and give

205
00:13:26,400 --> 00:13:30,920
the access to the end users and consumers.

206
00:13:30,920 --> 00:13:38,400
Okay and when we have this architecture how important are short cut in this architecture

207
00:13:38,400 --> 00:13:45,720
and when should you use a shortcut instead of a physical copying data.

208
00:13:45,720 --> 00:13:52,400
Okay so shortcut could be a shortcut on external now first way to work because because

209
00:13:52,400 --> 00:13:57,200
it is a shortcut for multiple purposes. So external shortcut is something basically the

210
00:13:57,200 --> 00:14:02,480
data is outside the Microsoft family ecosystem and you can still create a shortcut to it.

211
00:14:02,480 --> 00:14:07,000
Basically you have something on AWS or some somewhere in Google and then you wanted to

212
00:14:07,000 --> 00:14:08,000
bring that.

213
00:14:08,000 --> 00:14:13,600
When you create shortcut the data is typically not getting copied here it is just treated

214
00:14:13,600 --> 00:14:18,760
as the data at that place and then we can when as and when we need it get query definitely

215
00:14:18,760 --> 00:14:21,320
there is a cache mechanism to bring it.

216
00:14:21,320 --> 00:14:26,360
Now the shortcut could be in Azure which typically it is as native storage because everything

217
00:14:26,360 --> 00:14:29,000
else is another unless you are in different region.

218
00:14:29,000 --> 00:14:33,080
Now within Microsoft fabric system ecosystem also we create shortcuts.

219
00:14:33,080 --> 00:14:37,160
We create shortcuts to another lake houses or warehouses and bring the things together.

220
00:14:37,160 --> 00:14:41,200
So what happens then you have this multiple domain architecture and we firmly believe in

221
00:14:41,200 --> 00:14:45,480
not copying the data so what we end up doing is creating shortcuts so finance will have

222
00:14:45,480 --> 00:14:51,280
a shortcut to master data to read the master data also shortcuts provide two more things

223
00:14:51,280 --> 00:14:57,720
you can you know have your security bifurcated because of the shortcuts and one more thing

224
00:14:57,720 --> 00:15:02,880
which shortcut does is basically shortcut uses the capacity of the current workspace.

225
00:15:02,880 --> 00:15:08,040
So it is practically possible that I have a workspace one which is working on capacity

226
00:15:08,040 --> 00:15:13,960
one and workspace to which is working on capacity to and I created the shortcuts in capacity

227
00:15:13,960 --> 00:15:20,080
to workspace then it can use capacity to for that workspace and that is needed for the

228
00:15:20,080 --> 00:15:25,000
power be use case because what would happen the report consumption is something which is

229
00:15:25,000 --> 00:15:30,800
done by you know executives and that is the place where if your data engineering workloads

230
00:15:30,800 --> 00:15:35,800
are working you don't want them to consume your entire capacity and these executives are

231
00:15:35,800 --> 00:15:38,080
seeing the slowness into the report.

232
00:15:38,080 --> 00:15:44,920
So you would definitely want your power be a reports to run without being worried about

233
00:15:44,920 --> 00:15:49,880
what is happening to my data engineering which is continuously running in some organization

234
00:15:49,880 --> 00:15:54,880
but it is reading the same data because it is the same only power be is not copying the data

235
00:15:54,880 --> 00:15:55,880
now.

236
00:15:55,880 --> 00:15:59,880
So when it is not copying so data though I have separated out the workspace the workspace

237
00:15:59,880 --> 00:16:06,360
to is power be a workspace one is data which is lake house and the movement it queries

238
00:16:06,360 --> 00:16:11,280
it goes to the workspace one where my lake house is decided to start using that capacity

239
00:16:11,280 --> 00:16:17,120
but the shortcuts ensures that it uses the workspace to so I create a lake house with shortcuts

240
00:16:17,120 --> 00:16:23,440
in workspace to and now it is accessing by power be I which ensures that now I am using

241
00:16:23,440 --> 00:16:26,960
the capacity of workspace to not the workspace one.

242
00:16:26,960 --> 00:16:33,760
So many objective no copy of data isolation of you know your workspace capacities and even

243
00:16:33,760 --> 00:16:37,880
the security aspect when you try to secure and you don't want to secure some of those things

244
00:16:37,880 --> 00:16:43,080
that can also be handled with shortcuts so there are many uses and it is a really whenever

245
00:16:43,080 --> 00:16:45,640
it possible we should use shortcuts.

246
00:16:45,640 --> 00:16:52,240
Now only thing one thing we should remember when we go cross systems is cross cloud because

247
00:16:52,240 --> 00:16:56,520
in that case at every time you send the query other than caching it may end up querying

248
00:16:56,520 --> 00:17:03,520
the data and sometime the other system it gives out the data it may have a cost so we

249
00:17:03,520 --> 00:17:08,240
can also see what is the cost we are going to incur when we take out the data and that

250
00:17:08,240 --> 00:17:13,360
will decide whether we need to have shortcut or mirroring or copying of data.

251
00:17:13,360 --> 00:17:16,120
Awesome.

252
00:17:16,120 --> 00:17:25,960
That is what one thing in fabric it is I can choose the lake house and I also can choose

253
00:17:25,960 --> 00:17:37,000
the data warehouse when I choose what and why it is the data warehouse still existing there.

254
00:17:37,000 --> 00:17:42,720
Okay so let us start with the term in the images known as our warehouse.

255
00:17:42,720 --> 00:17:47,160
Basically if you call about we talking about data warehouse for almost maybe around 30 years

256
00:17:47,160 --> 00:17:50,600
so there is one in this data which is known as data warehouse which is basically because

257
00:17:50,600 --> 00:17:55,320
single source of thought where typically what all of us say is that it is where our goal

258
00:17:55,320 --> 00:18:00,760
data is at the data which is ready for consumption for bi but when we come to the ecosystem like

259
00:18:00,760 --> 00:18:04,400
Microsoft fabric we have a lake house we have a warehouse.

260
00:18:04,400 --> 00:18:08,840
Now are we talking warehouse as a single source of two no we are talking here warehouse is

261
00:18:08,840 --> 00:18:12,720
one of the storage piece and how the data is going to store.

262
00:18:12,720 --> 00:18:16,840
So let us say lake house can store both structure and structure data warehouse can only store

263
00:18:16,840 --> 00:18:21,360
structure data so one call is decided okay if I have unstructured data files I need lake

264
00:18:21,360 --> 00:18:22,360
house to be there.

265
00:18:22,360 --> 00:18:28,200
Now the second thing is basically the data when stored as structure data both lake house

266
00:18:28,200 --> 00:18:31,160
and warehouse save it as delta format.

267
00:18:31,160 --> 00:18:36,960
The only difference is the lake house delta files are governed by spark you can say and

268
00:18:36,960 --> 00:18:42,280
warehouse delta files are governed by t-SQL so who is the first technology who understand

269
00:18:42,280 --> 00:18:46,300
the data changes so in case of lake house the first technology which understand the data

270
00:18:46,300 --> 00:18:50,480
changes is spark and in case of warehouse the first technology which understand the data

271
00:18:50,480 --> 00:18:57,680
changes is t-SQL so now technology is a choice let us say we are unstructured data now where

272
00:18:57,680 --> 00:19:02,840
whether I would use spark or whether I would use t-SQL that can decide my choices.

273
00:19:02,840 --> 00:19:05,440
Structured unstructured was another choice.

274
00:19:05,440 --> 00:19:10,320
Now there is one more thing which we have in Microsoft fabric use ecosystem is basically

275
00:19:10,320 --> 00:19:11,320
seqlDB.

276
00:19:11,320 --> 00:19:16,520
Now seqlDB comes in place when we want it to have OLTP kind of a system is if I want to

277
00:19:16,520 --> 00:19:23,160
have create let us say app which is pretty much possible in fabric like I can create you

278
00:19:23,160 --> 00:19:29,520
know application which can take the data insert data quickly in such cases we use seqlDB

279
00:19:29,520 --> 00:19:34,440
now seqlDB replicate data again in data format which is very similar to warehouse.

280
00:19:34,440 --> 00:19:42,360
So live versus means OLTP versus OLAP in OLAP we have a choice versus technology or versus

281
00:19:42,360 --> 00:19:50,120
basically the structure unstructured data now lake house can have unlimited historical

282
00:19:50,120 --> 00:19:54,080
data also we call time travel so lake house can pretty much you can control whatever you

283
00:19:54,080 --> 00:19:55,240
want.

284
00:19:55,240 --> 00:20:00,080
Where house is also between a range two days to one twenty days is something which you can

285
00:20:00,080 --> 00:20:04,200
control one twenty is the right of the highest limit but time travel is possible so time

286
00:20:04,200 --> 00:20:08,880
travel is basically I went ahead and let us update the data today but I can still see

287
00:20:08,880 --> 00:20:14,200
what was my data before that update so there is more flexibility when you use lake house

288
00:20:14,200 --> 00:20:19,400
because it is spark govern and the underlying data technology is more wealth versus the spark

289
00:20:19,400 --> 00:20:26,600
so that is why you get more flexibility when you use lake house also it is one of the

290
00:20:26,600 --> 00:20:31,440
misconception that everybody has that we cannot work on warehouse using the pi spark we

291
00:20:31,440 --> 00:20:36,240
can work using pi spark the only thing is there are special snaps libraries which are there

292
00:20:36,240 --> 00:20:39,800
which you have to use to work with that again there are certain limitation because where

293
00:20:39,800 --> 00:20:44,140
house is still T seql govern so not all the operations are supported but you can work

294
00:20:44,140 --> 00:20:49,440
with the pi spark in the now pi spark the technology because it is supported by spark or

295
00:20:49,440 --> 00:20:56,360
let us say scala on it say spark are or spark sequel they have a huge extendable it means

296
00:20:56,360 --> 00:21:02,920
you can run you know petabytes of data transformation everything using spark while sequel is a great

297
00:21:02,920 --> 00:21:07,640
technology up to a volume of data so that is where if your system is really really large

298
00:21:07,640 --> 00:21:13,240
you will go for lake house so if you are really huge on data you need to you know really

299
00:21:13,240 --> 00:21:19,640
save bring the data whether I should be able to run fast but I want to do it quickly spark

300
00:21:19,640 --> 00:21:24,520
helps you now on the other end sequel extend is own way is it is a same traditional sequel

301
00:21:24,520 --> 00:21:30,120
way where it extend it goes you take the power and you know do does the job but I can tell

302
00:21:30,120 --> 00:21:34,920
you up to you are up to few millions you will not be able to differentiate between the performance

303
00:21:34,920 --> 00:21:39,080
we have implementations which have been done on lake houses and warehouses and both equally

304
00:21:39,080 --> 00:21:45,400
performs good and on millions of rows sequel also never let you down it does really good

305
00:21:45,400 --> 00:21:50,600
performance it shows that you know work done within time with lesser CU consumption all these

306
00:21:50,600 --> 00:21:56,680
things makes it really amazing so I think it is more about choice of technology by the organization

307
00:21:56,680 --> 00:22:02,760
and definitely if it is unstructured data and you need to do a lot of data science where lake house

308
00:22:02,760 --> 00:22:07,720
definitely wins compared to warehouse the the thing the lake house architect

309
00:22:07,720 --> 00:22:15,160
sorry require the different mindset so what if an organization already has a strong SQL and

310
00:22:15,160 --> 00:22:24,440
traditional data warehouse team see see ultimately the two concepts is same now the here here is

311
00:22:24,440 --> 00:22:30,120
understood even if I implement complete lake house so let's say bronze silver and gold all our

312
00:22:30,120 --> 00:22:35,640
lake houses so my so-called one source of truth lake could be a lake house also which is so-called

313
00:22:35,640 --> 00:22:40,680
warehouse in the functional terminology and it will all be warehouse if it is all structured data

314
00:22:40,680 --> 00:22:45,240
I'm happy to be with warehouse but yes if I need to do a lot of data science and when I say data

315
00:22:45,240 --> 00:22:50,520
science is not the use of AI or lm that's pretty much possible even using data is in celebrity but I

316
00:22:50,520 --> 00:22:55,560
need to let's say do develop my own algorithm plus string classifications and everything that is where

317
00:22:55,560 --> 00:23:01,000
you know that scale is typically more easily possible with spark and that is where probably I would

318
00:23:01,000 --> 00:23:06,440
like my data underlying data to be in lake house compared to warehouse while I already said that you

319
00:23:06,440 --> 00:23:11,880
know you can access your data on the warehouse using price part but definitely there is an intermediate

320
00:23:11,880 --> 00:23:16,520
intervention which is required while saving so I would just if I have to do a lot of data science

321
00:23:16,520 --> 00:23:21,480
stuff or I have a lot of unstructured data which I have to be I profoundly you go at the lake house

322
00:23:21,480 --> 00:23:29,160
and read those the data lake fit into the story I think a little bit or what other

323
00:23:29,160 --> 00:23:36,360
almanches of the data tables inside the fabric okay so when we initially so the concept of the lake

324
00:23:36,360 --> 00:23:40,680
which we call data lake is basically you can store any kind of data any format of data

325
00:23:40,680 --> 00:23:46,280
structured or unstructured someplace so lake house fits in that story so basically when we say

326
00:23:46,280 --> 00:23:51,960
lake house the lake house the structured data is basically delta which is same as warehouse in

327
00:23:51,960 --> 00:23:56,280
the in fabric world because it is also delta format in the back end but the unstructured data is

328
00:23:56,280 --> 00:24:00,680
something which you are storing the file so we have the file part which we can store any kind of data

329
00:24:00,680 --> 00:24:06,280
so the concept of one lake or the data lake so the concept of data lake is getting replicated

330
00:24:06,280 --> 00:24:11,400
by lake house while warehouse represents the traditional sequel warehouses with those warehouses

331
00:24:11,400 --> 00:24:15,800
kind of a properties as it properties and everything and yeah definitely acid properties are

332
00:24:15,800 --> 00:24:18,840
something which are not supported on lake house which are supported on the house.

333
00:24:20,440 --> 00:24:28,040
So I think now we understand where the data shows the lift but we need also get them there

334
00:24:28,040 --> 00:24:34,040
what are the main ingestions in fabric.

335
00:24:34,040 --> 00:24:42,840
So injation of the thing we can have a look at the data if it was now the second one

336
00:24:42,840 --> 00:24:49,000
consists of the lake there are few sources for which the mirroring is directly available and for

337
00:24:49,000 --> 00:24:53,880
others you have custom mirroring. Now the advantage of mirroring which by organization like is

338
00:24:53,880 --> 00:25:00,280
basically it is self managed everywhere where we have a good change data capture mechanism mirroring

339
00:25:00,280 --> 00:25:06,600
works very easy. Now Microsoft doesn't charge you for the compute as well as storage up to a limit

340
00:25:06,600 --> 00:25:13,160
for bringing that time so let's say if on in fabric I have on F2 capacity I will get two terabyte of

341
00:25:13,160 --> 00:25:19,480
free storage and pretty compute to bring that to terabyte. I am if I'm on F64,

342
00:25:19,480 --> 00:25:24,680
our F64 is one of the very common capacities and the reason for that is one is there are very

343
00:25:24,680 --> 00:25:31,880
high limitations on the data set size especially for power BA and the power BA viewer license are free

344
00:25:31,880 --> 00:25:38,920
after F64 onwards. So if I am on F64 capacity the mirroring will allow me 64 terabyte of data to

345
00:25:38,920 --> 00:25:44,840
be stored for free and to compute free for bringing that so that is my second choice or you can say

346
00:25:44,840 --> 00:25:53,080
first choice if I don't come short course then comes my ability to bring in data using pipelines which

347
00:25:53,080 --> 00:26:02,200
has copy activity and copy job. Copy job again is having very good CDC a co-options available and copy

348
00:26:02,200 --> 00:26:07,640
activity also now both are meant for the purpose. So if I want to bring the data these are my choices

349
00:26:07,640 --> 00:26:15,400
but yes the pipeline copy activity and copy job has around 40-50 connectors and that is where data

350
00:26:15,400 --> 00:26:22,440
flow wins because data flow gen 2 has more than 200 plus connectors it is it has power query which

351
00:26:22,440 --> 00:26:28,920
can also do the transformations. So data flow gen 2 would be your fallback option most of the

352
00:26:28,920 --> 00:26:35,720
cases when you are not able to connect and all of them has generic connector like RSTPI and we

353
00:26:35,720 --> 00:26:43,240
also have the ODBC generic connector or we have OLEDB all these things are also available web

354
00:26:43,240 --> 00:26:50,520
connector etc. So our choice would be finally if we are falling back we use data flow gen 2 to bring

355
00:26:50,520 --> 00:26:55,960
in the data it has maximum number of connectors and it has also fast copy connector now which will

356
00:26:55,960 --> 00:27:00,920
make sure that it is as good as your copy activity in most of the cases definitely transformation

357
00:27:00,920 --> 00:27:06,440
choices are there in case you are bringing from data flow gen 2 you can transform the data also

358
00:27:06,440 --> 00:27:13,640
there. So now because we have this path and Python inside the system if your data is available

359
00:27:13,640 --> 00:27:19,560
online right now it is not supported for on-premise sources you do have now various connectors available

360
00:27:19,560 --> 00:27:24,200
at the notebook level previously also we were able to bring the data in but we have to mention all

361
00:27:24,200 --> 00:27:28,120
the credentials in the notebook but for now we have connections which is basically supported

362
00:27:29,000 --> 00:27:34,120
in a manner that you don't have to show your credentials in the notebook and that again creates one

363
00:27:34,120 --> 00:27:38,840
more way to bring in your data now when you bring in the notebook the handling of the data is

364
00:27:38,840 --> 00:27:43,640
mostly in your end it is basically how you bring how much you bring in everything while in all

365
00:27:43,640 --> 00:27:48,440
other cases it is managed by the system so you have these many choices to bring in data.

366
00:27:48,440 --> 00:27:55,720
And what would you say how important is power-carry knowledge for working effectively with

367
00:27:55,720 --> 00:28:04,040
the data flow gen 2? See power-carry is something which is data flow gen 2 is having basically it is

368
00:28:04,040 --> 00:28:10,360
same as our power-base power-carry or your our data flow gen 1's query and if we know power

369
00:28:10,360 --> 00:28:16,120
query it would be really helpful because I can tell you those who are migrating from power-bava

370
00:28:16,120 --> 00:28:21,640
word their first choices data flow gen 2 those who are coming from Azure word their first choices

371
00:28:21,640 --> 00:28:30,200
typically the data pipelines and let's say PISPAR transformations and everything so we will get very

372
00:28:30,200 --> 00:28:35,080
familiar things whenever we are coming from a different you know world to the fabric world.

373
00:28:35,080 --> 00:28:39,080
fabric is new so somebody from the power-bava world will come somebody from the let's say

374
00:28:39,080 --> 00:28:45,960
the PISPAR engine world will come somebody will come from different migration kind of a

375
00:28:45,960 --> 00:28:50,360
pools which is very similar to pipeline you will come so orchestration everything it happens so

376
00:28:50,360 --> 00:28:53,800
we will find some very similar tools here in Microsoft fabric to start with.

377
00:28:53,800 --> 00:29:02,520
Okay awesome I think is there performance on main

378
00:29:02,520 --> 00:29:08,680
tiny ability limits that we should know about in that of low gen 2?

379
00:29:08,680 --> 00:29:17,400
Okay so this is a really easy so teach gen 2 is very good for a small to medium size of data

380
00:29:17,800 --> 00:29:22,920
but when you come to a larger scale the transformation in PISPAR can excel much faster than the

381
00:29:22,920 --> 00:29:28,520
in data flow gen 2 while Microsoft is continuously investing and consistently improving the

382
00:29:28,520 --> 00:29:33,560
performance of data flow gen 2 when it is large volume of data but it becomes really easy

383
00:29:33,560 --> 00:29:39,240
because Spark is PISPARC or Python is like an open language you can have tons of things to do

384
00:29:39,240 --> 00:29:45,080
and manage it and that is why you know if it is a really large scale data transformation we

385
00:29:45,080 --> 00:29:51,400
prefer PISPARC. I don't have a data flow gen 2 versus PISPARC but data flow gen 1 versus

386
00:29:51,400 --> 00:29:57,960
PISPARC performance could be having 80% gain both in terms of compute as well as in terms of time

387
00:29:57,960 --> 00:30:03,000
that is a proven fact but we have observed at the customer level. So data flow if you had a data

388
00:30:03,000 --> 00:30:07,800
flow gen 1 if you completely converted into PISPARC because save a lot on the compute units as well

389
00:30:07,800 --> 00:30:13,320
as the time both you are saving it is not one we are saving and that is where PISPARC could be a

390
00:30:13,320 --> 00:30:18,360
really good choice for data transformation going forward in the future for large scale data.

391
00:30:18,360 --> 00:30:28,520
That is interesting for someone coming from the PowerBRS-L part when they actually need PISPARC.

392
00:30:28,520 --> 00:30:35,080
So the data transformation part is something which is basically instead of SQL can happen on

393
00:30:35,080 --> 00:30:41,000
the PISPARC and when I say PISPARC I have this habit of calling PISPARC but we can use these Spark

394
00:30:41,000 --> 00:30:45,720
notebooks which could be in Scala which could also be in Spark SQL. So if you are from SQL

395
00:30:45,720 --> 00:30:50,760
where you will find Spark SQL very familiar to you. If you are from let's say power query world

396
00:30:50,760 --> 00:30:55,400
you will see PISPARC almost has similar kind of functions which you have let's say if I want to

397
00:30:55,400 --> 00:31:00,520
join they are also have I have table dot let's say join something and here also I have the data

398
00:31:00,520 --> 00:31:06,280
frame dot join. So very similar functions I have here also to do one one on one operations with

399
00:31:06,280 --> 00:31:13,000
compared to power query. So definitely if we are coming from let's say SQL plus power query world

400
00:31:13,000 --> 00:31:19,000
we can start on fabrics with those but as the data goes is the things grows slowly we have to start

401
00:31:19,000 --> 00:31:26,920
moving some of our stuff to PISPARC or maybe we can say Spark notebooks. Yeah yeah I think that's

402
00:31:26,920 --> 00:31:34,040
interesting how do notebooks change the way data engineer teams work actually. See we have to

403
00:31:34,040 --> 00:31:39,640
understand that the notebooks especially running by Spark is made for scale.

404
00:31:39,640 --> 00:31:45,960
So because we can decide you know how much compute they should use they should use 10 node

405
00:31:45,960 --> 00:31:52,440
small cluster or a step small cluster or large cluster all those things we can do and that

406
00:31:52,440 --> 00:31:58,120
scale comes up with Spark and because of that you know you might do need to do heavy lifting

407
00:31:58,120 --> 00:32:03,560
and that heavy lifting you want it to do and you also want it to save time not only the volume

408
00:32:03,560 --> 00:32:07,880
of data increasing but you also want to reduce the time that is where easily can happen Spark and

409
00:32:07,880 --> 00:32:13,640
Spark is meant for the entire illusion of Spark happens that okay I have the huge data how do I

410
00:32:13,640 --> 00:32:20,760
want to process that data and get the time in time processing in quickly and that's where the

411
00:32:20,760 --> 00:32:25,240
Spark was entered that you know okay distribute this entire jobs on multiple nodes and then do it

412
00:32:25,240 --> 00:32:29,400
and then bring the results in and that's where the Spark notebooks are providing you here in

413
00:32:29,400 --> 00:32:36,280
Microsoft fabric. So for scale and for you know getting the results faster the Spark always helps you

414
00:32:36,280 --> 00:32:47,000
that's so sounds interesting is there any performance mistake begin us to with Spark?

415
00:32:47,000 --> 00:32:53,320
The thing which we have to do is when you start as a beginner don't try to play around with

416
00:32:53,320 --> 00:32:58,760
these Spark settings of fabric also secondly instead of dealing with it in the notebook level

417
00:32:58,760 --> 00:33:04,360
please create those different Spark clusters settings at the workspace level or capacity level and

418
00:33:04,360 --> 00:33:09,160
use it because I remember a case where what happens one of the team and we have allowed the setting

419
00:33:09,160 --> 00:33:14,280
of the Spark cluster at the workspace level one of the team is created such a big cluster

420
00:33:14,280 --> 00:33:18,040
and they were able to complete their job in one hour they were really happy but they end up

421
00:33:18,040 --> 00:33:22,760
consuming the entire capacity for all other performance so those could be there and again

422
00:33:23,560 --> 00:33:30,040
there is a little bit of there are less of control sometimes required in the fabric spark because

423
00:33:30,040 --> 00:33:34,760
some of the things are already handled by fabric so you might not to explicitly go and start Spark

424
00:33:34,760 --> 00:33:39,640
it automatically creates sessions for you so the small unlearning here that you know you already

425
00:33:39,640 --> 00:33:44,040
already have a Spark session you only to explicitly started you can start using it and then there

426
00:33:44,040 --> 00:33:48,520
are only selective parameters which it takes if you take care of these things I think it's pretty

427
00:33:48,520 --> 00:33:54,200
smooth journey and even I think for a beginner who doesn't understand as a Spark works it is much

428
00:33:54,200 --> 00:34:00,040
easier journey because you are not taking care of where is my root folder how should I start the Spark

429
00:34:00,040 --> 00:34:03,720
I just know that I have a Spark session with all those capabilities and I can use it.

430
00:34:03,720 --> 00:34:14,920
Awesome another topic I think the biggest buzzer words is the it's yeah I don't know the mid-medallion

431
00:34:14,920 --> 00:34:21,080
architecture and I think it's a little bit of that marketing that we call it Bronx the Servant Gold

432
00:34:21,080 --> 00:34:32,760
have have these vocabulary are modern how how how important are the the medallion architecture

433
00:34:32,760 --> 00:34:39,640
for for fabric see for see architecture should depend on you know organization and what kind of

434
00:34:39,640 --> 00:34:46,360
data we have see if war organization is having a very strong master data management done at the

435
00:34:46,360 --> 00:34:52,520
source level and data cleaning was a real big focus probably you will have very clean data which

436
00:34:52,520 --> 00:34:57,480
is coming into the grass layer itself then you daily need silver or then can you directly go to

437
00:34:57,480 --> 00:35:02,600
silver plus gold layer that is the call you have to take because I firmly be the number of layer should

438
00:35:02,600 --> 00:35:07,880
you entire dependent on the kind of data instead of you know I want to follow medallion architecture

439
00:35:07,880 --> 00:35:12,360
because when we initially started the data engineering if you remember we used our staging area and

440
00:35:12,360 --> 00:35:17,640
the warehouse the one source of truth we we were you know doing that entire as a part of transformation

441
00:35:17,640 --> 00:35:23,240
maybe we were creating the intermediate table not explicitly calling it silver now because

442
00:35:23,240 --> 00:35:27,160
this has been a well defined structure of medallion architecture we have bronze silver and gold

443
00:35:27,160 --> 00:35:33,320
so if you have a very strong master data foundation which is laid outside probably just think about

444
00:35:33,320 --> 00:35:38,440
do you really need one silver copy because you might have clean data but yes if the master data

445
00:35:38,440 --> 00:35:45,480
foundation is not so great then we need to bring in bronze create a really strong clean layer for

446
00:35:45,480 --> 00:35:51,480
the consumption of data at silver layer and then create the gold layer so and I see most of the

447
00:35:51,480 --> 00:35:57,800
organization at some stage or other having this challenges of master data because it's not managed

448
00:35:57,800 --> 00:36:03,480
so greatly so probably if you can say 80% of the organization will fall in a category when they have

449
00:36:03,480 --> 00:36:07,800
to follow the medallion architecture of bronze silver gold yes there are organization who has

450
00:36:07,800 --> 00:36:12,520
really strong on you know data quality and data master data management and everything

451
00:36:12,520 --> 00:36:17,480
probably for them silver is not too much other than you know having a following an architecture

452
00:36:17,480 --> 00:36:21,720
probably they could have bronze and silver gold together while doing the transformation putting

453
00:36:21,720 --> 00:36:27,960
it into the gold yeah that's interesting so so where should the the the business logic

454
00:36:27,960 --> 00:36:33,080
live so should it be the logic primarily exist in transformation in the warehouse in the

455
00:36:33,080 --> 00:36:40,520
thematic model or some well now this is a testing now there are so this is a little bit of

456
00:36:40,520 --> 00:36:49,480
the business logic which are little complex and the lying level we cannot keep them at the

457
00:36:49,480 --> 00:36:56,040
semantic model level ideally speaking I would be happy to have all my major able or KPI's or

458
00:36:56,040 --> 00:37:01,160
performance indicator at the semantic model level because it's easy it's dynamic I don't need to

459
00:37:01,160 --> 00:37:05,880
reload the data for doing it so anything which I can keep at that level but the problem is if the

460
00:37:05,880 --> 00:37:12,120
calculations are at lying level if I have millions of rows where I need to go and do one calculation

461
00:37:12,120 --> 00:37:18,040
and then do it up it is not going to work out at the semantic model level and in such cases we always

462
00:37:18,040 --> 00:37:23,000
prefer to have the calculation done at the gold layer means basically when we load our data from

463
00:37:23,000 --> 00:37:29,000
silver to board we will apply those business logic so business logic is shared between the gold

464
00:37:29,000 --> 00:37:35,000
layer creation and the semantic model our preference is to have it at the semantic model level because

465
00:37:35,000 --> 00:37:39,960
they can change easily we can change formula we can create new matrices but definitely we don't

466
00:37:39,960 --> 00:37:45,000
want to do role level calculations for that so we have to take a cautious call to make it at the

467
00:37:45,000 --> 00:37:53,720
two levels that's how it moves to a side awesome and that's a little bit move closer to the

468
00:37:53,720 --> 00:38:01,480
business layer where are the semantic models so important and what makes the good semantic model

469
00:38:01,480 --> 00:38:09,320
okay see if you actually would ask this question we could be couple of your banks

470
00:38:09,320 --> 00:38:14,520
or three years back for a semantic model is for consumption of power VA isn't it so we have a

471
00:38:14,520 --> 00:38:19,320
semantic model we create power VA reports on that but within fabrics the things have changed

472
00:38:19,320 --> 00:38:26,040
especially after data agent ontology and fabric app is all changing this playground and creating

473
00:38:26,040 --> 00:38:31,640
the bigger role for semantic model so if you ask me if AI brings a challenge to let's say power VA

474
00:38:31,640 --> 00:38:37,000
as a visualization where power VA is not facing challenge is the semantic model because

475
00:38:37,000 --> 00:38:41,880
understand one thing our all business logic are going to decide the relationship and the key

476
00:38:41,880 --> 00:38:46,600
majors and their definitions are known for semantic model and if I work on a semantic model I don't

477
00:38:46,600 --> 00:38:51,000
need to tell the definition what is my net sense semantic model knows it what is my gross is what is

478
00:38:51,000 --> 00:38:56,440
my revenue definition everything semantic model knows it and let's say if somebody need to do and

479
00:38:56,440 --> 00:39:00,760
go and do some transformation on directly on my lake house and warehouse they don't know this

480
00:39:00,760 --> 00:39:06,840
definition now we have a semantically lab library which can enable you now our data agents also

481
00:39:06,840 --> 00:39:11,960
work on semantic model it means the data agent wanted to take the advantage of the definitions which

482
00:39:11,960 --> 00:39:18,040
are not similarly the ontology can be created on our semantic model it which is going to take the

483
00:39:18,040 --> 00:39:22,840
advantage of already existing knowledge by the semantic models the relationship the KPIs

484
00:39:22,840 --> 00:39:27,960
now we have fabric apps which I got wrong recently so one of the things which has happened because

485
00:39:27,960 --> 00:39:35,640
of this AI explosion over the last few years that we came to something which we are doing let's say

486
00:39:35,640 --> 00:39:41,000
maybe a 20 years back that I can have my custom created report which whatever I want

487
00:39:41,000 --> 00:39:47,960
and then from there in that place we move to the tools because it is heavy maintenance because

488
00:39:47,960 --> 00:39:52,520
I can create my report let's say on Java technology by connecting to database and do everything

489
00:39:52,520 --> 00:39:56,840
and have slice and dice and everything but it was a huge maintenance I can't do it and that's why I

490
00:39:56,840 --> 00:40:02,440
knew tools like Power BI tab you to just do it with drag and drop but what AI has done over

491
00:40:02,440 --> 00:40:07,240
the last couple of years is you know you just go type in some command and your react dashboard is

492
00:40:07,240 --> 00:40:12,920
ready you say okay I need all these features it's already and that's where you know we were coming

493
00:40:12,920 --> 00:40:17,560
back okay why should I have you know executive only looking at you know reports which is

494
00:40:17,560 --> 00:40:23,880
fixed in the boundaries of what the tool can create and that is where you home we have seen a lot

495
00:40:23,880 --> 00:40:29,320
of people were developing these AI apps and the challenge of all those AI apps is they understand the

496
00:40:30,920 --> 00:40:36,280
warehouse or lake house better because they are having sequel and points and you the most the most

497
00:40:36,280 --> 00:40:41,720
common technology to be used by anyone is sequel or as a sequel and because of that developing here

498
00:40:41,720 --> 00:40:45,880
but our logics for lying in semantic model who will transform those major or those

499
00:40:45,880 --> 00:40:51,080
capyra definitions into the sequel and there's again work and that's where Microsoft came up with

500
00:40:51,080 --> 00:40:58,280
fabric app enabled by Rafe in framework now it can create these those reports those it's so it

501
00:40:58,280 --> 00:41:03,800
used typescript and you can create those reports which all the kind of UI you need the custom UI

502
00:41:03,800 --> 00:41:09,480
the kind of slicers you need the visual out of the box visuals and everything you on your semantic

503
00:41:09,480 --> 00:41:14,920
model and that's what we call fabric and then it is again getting published inside your fabric works

504
00:41:14,920 --> 00:41:21,000
pieces so same security same everything so now the role of the semantic model has greatly increased

505
00:41:21,000 --> 00:41:26,440
in terms of relationship and the definition it owns but yes the consumption could be power be

506
00:41:26,440 --> 00:41:33,640
a visualization could be data agent could be ontology ontology driven data agents or maybe fabric apps

507
00:41:33,640 --> 00:41:40,200
but yes we have a layer which store which knows our business which understand our business well

508
00:41:40,200 --> 00:41:42,760
and it can be used for the downstream by anything

509
00:41:42,760 --> 00:41:51,000
and and what would you say how should teams approach measure of firsts calculated columns

510
00:41:53,320 --> 00:41:59,880
okay so when we say calculated columns probably I would like them at the gold layer other than

511
00:41:59,880 --> 00:42:04,360
these calculated columns which are now which is very interesting thing which has very recently

512
00:42:04,360 --> 00:42:09,320
happened in the power be a world is contracts driven calculated columns now contracts given calculated

513
00:42:09,320 --> 00:42:14,200
columns means they change their value because of user climate it also help us in you know

514
00:42:14,200 --> 00:42:19,880
some time to hide some data basically if I wanted to do data masking it also helps in that

515
00:42:19,880 --> 00:42:24,920
and sometime it helped in changing the column basically I want to show different column so if it is

516
00:42:24,920 --> 00:42:30,760
if your column is not a context driven column it should happen at the gold layer all the majors

517
00:42:30,760 --> 00:42:37,000
anything which is a major should be going to happen at the semantic model level context even calculated

518
00:42:37,000 --> 00:42:41,640
columns should happen at the model level semantic model level and rest of the calculation which are

519
00:42:41,640 --> 00:42:45,960
line level or really complex which is which can slow down at the runtime should be moved back to the

520
00:42:45,960 --> 00:43:01,000
bouldier. If I worked with fabric and probably iDux was the I don't know the main topic and I see

521
00:43:01,000 --> 00:43:13,400
Aids awesome in generating DAX code now did you think DAX stays important or makes tends to learn DAX

522
00:43:13,400 --> 00:43:20,600
anymore see I think in the new world what is happening because AI is doing everything like I am when

523
00:43:20,600 --> 00:43:25,400
I created a let's say referring dashboard it uses typescript I am not sure what typescript is

524
00:43:25,400 --> 00:43:29,960
how it is written what is the structure of that and everything similarly it is happening with all

525
00:43:29,960 --> 00:43:35,080
the technology like probably you can generate a pi spark notebook using co-pilot or even AI

526
00:43:35,080 --> 00:43:40,840
that is to the DAX also but we have to understand when the things does not work and when the things

527
00:43:40,840 --> 00:43:45,880
need to be optimized and that is where expertise comes in place now some of us who are there in the

528
00:43:45,880 --> 00:43:51,080
industry for some time we had gained that expertise over a period of time now for the new learners

529
00:43:51,080 --> 00:43:56,920
it is very easy to get a DAX from AI so do I really need to have an expertise I think in a longer run

530
00:43:56,920 --> 00:44:02,360
at least for next few years you need to have that expertise on the subject I know the technology

531
00:44:02,360 --> 00:44:08,040
is really fast and maybe after some time it is more on the logics and less on the technology so

532
00:44:08,040 --> 00:44:15,240
probably the language would be you know using your logics and explaining your logic to the AI

533
00:44:15,240 --> 00:44:21,960
by our prompts not let's say if C Java DAX of our query it's just the thing which internally getting

534
00:44:21,960 --> 00:44:27,960
created and getting debugged also by AI only but yes definitely knowing something in depth how it

535
00:44:27,960 --> 00:44:32,600
works it's always really important because in that case you can go and fix something which is

536
00:44:32,600 --> 00:44:39,400
actually not getting fixed by AI or which is getting not optimized by AI but as this intervention

537
00:44:39,400 --> 00:44:46,760
increase probably up to me loving you know how the algorithm works how the logic works at different

538
00:44:46,760 --> 00:44:50,840
places is more important than you know the language is what we are working use in future.

539
00:44:50,840 --> 00:44:59,080
And I think another topic a lot of people aware of actually it's it's security I have all my

540
00:44:59,080 --> 00:45:07,000
data now and well like so how should we start with security in fabric architecture?

541
00:45:07,000 --> 00:45:15,400
See in terms of the security start from your workspace is from where you can start controlling

542
00:45:15,400 --> 00:45:21,640
by rules whether you are a viewer you are a member you are a contributor or you are an

543
00:45:21,640 --> 00:45:28,600
advent that's the first step now in the fabric what typically we are trying not to have the workspace

544
00:45:28,600 --> 00:45:33,480
level access we try to have item level access like in a lake house or warehouse I can have a read data

545
00:45:33,480 --> 00:45:38,840
read and write and all those permissions then if further goes down I can go to the item level now item

546
00:45:38,840 --> 00:45:44,680
level permissions typically we will try to control using one-leg security wherever possible

547
00:45:44,680 --> 00:45:49,240
and if we are not putting one-leg security we are going to have semantic model level security

548
00:45:49,240 --> 00:45:56,200
a one-leg security has came I think around one and a half to years back and it is still evolving at some

549
00:45:56,200 --> 00:46:00,600
places it may not provide you that option and that is where we go and put the security

550
00:46:00,600 --> 00:46:03,880
semantic model level but one-leg security is something which we are going to use

551
00:46:03,880 --> 00:46:12,920
and that is where we can secure the data means we can do both the object level security

552
00:46:12,920 --> 00:46:19,480
OLS and RLS using one-leg security so what we are going to do here is basically where but possible

553
00:46:19,480 --> 00:46:25,960
in terms of OLS and RLS if possible we are going to use one-leg security if we are unable to control

554
00:46:25,960 --> 00:46:30,360
at one level one-leg level or we don't want to contain at one-leg level basically

555
00:46:30,360 --> 00:46:34,920
lake house of warehouse we are going to do it at the semantic model level and definitely object

556
00:46:34,920 --> 00:46:39,320
level security needs a set level security basically or report so do your warehouse on

557
00:46:39,320 --> 00:46:44,120
lake house we can control them at the works is either the workspace level or individual item level

558
00:46:44,120 --> 00:46:48,680
so from workspace to item to inside the item with one-leg security

559
00:46:48,680 --> 00:47:00,760
awesome so the how how do is the role level security works with the semantic level correct

560
00:47:00,760 --> 00:47:08,360
or what's the best practice see the role of a security basically now it can be done at two level

561
00:47:08,360 --> 00:47:13,960
one is basically at the one-leg security which is can again you can go and define okay I for

562
00:47:13,960 --> 00:47:19,400
this is the filter for that so in one-leg you decide the filter and then you create a role and

563
00:47:19,400 --> 00:47:23,720
that can assign to the people so that filter will get applied so you will let's say only get north

564
00:47:23,720 --> 00:47:29,080
I create a filter it is north and it will get applied at the end all the endpoints SQL endpoints the

565
00:47:29,080 --> 00:47:35,560
the semantic model endpoint or even at the file endpoint now when I come to the semantic model the

566
00:47:36,360 --> 00:47:41,720
semantic model security of power be a remain same so it is the same way we create a role and inside

567
00:47:41,720 --> 00:47:47,080
the role we again define a dynamic security using a table where we have the email addresses using

568
00:47:47,080 --> 00:47:52,920
user principle a model static security by like saying reason equal to north and then we once the

569
00:47:52,920 --> 00:47:58,600
semantic model is published we go in the security model layer and add users or security groups

570
00:47:58,600 --> 00:48:02,920
preferably we should use security groups and security groups should be created like you know

571
00:48:02,920 --> 00:48:07,240
this is a viewer security group or this is a financial viewer security group this is says viewer security

572
00:48:07,240 --> 00:48:12,040
group or says contributor security groups we should create security groups and assign those security

573
00:48:12,040 --> 00:48:18,680
groups to the security layer or to the report or to the one-leg security that is always a best

574
00:48:18,680 --> 00:48:25,400
practice so so we have the workspace permissions we have the data permissions and we have the semantic

575
00:48:25,400 --> 00:48:33,880
model security but how how to gather when this when when an organization has hundreds of thousands of

576
00:48:33,880 --> 00:48:43,400
users and with different requirements yeah see I think the why we have these multiple layers and

577
00:48:43,400 --> 00:48:48,760
but all these are all you know really smooth and integrated so the reason is let's say if I want

578
00:48:48,760 --> 00:48:53,080
to have few people to be admin and having access to everything I don't have to you know go and

579
00:48:53,080 --> 00:48:57,080
do multiple permission I can deal with workspace level permission and they can access everything

580
00:48:57,080 --> 00:49:01,480
in the workspace they want but there are certain set of user I don't want to give them you know

581
00:49:01,480 --> 00:49:08,440
access to everything let's say we happened with us also there are report user who are report builder

582
00:49:08,440 --> 00:49:13,720
as well as the report viewer but we don't want to expose them the let's say warehouse is or

583
00:49:13,720 --> 00:49:18,280
lake houses so we control the security at the semantic model level we give them access and we make

584
00:49:18,280 --> 00:49:22,200
sure that it happens in such a manner that they don't have to see other objects so all those

585
00:49:22,200 --> 00:49:27,080
possibilities are covered and that is why you have this two three years now we can do some AI

586
00:49:27,080 --> 00:49:32,680
automation for that to make sure it happens like basically the security when we create the security

587
00:49:32,680 --> 00:49:37,560
group on a larger organization these are also not manually created you have let's say a service

588
00:49:37,560 --> 00:49:42,120
request which I go to raise and you will get added to a security group the same request may add you

589
00:49:42,120 --> 00:49:47,880
to let's say a RLS table also where you get an access to a region to a city or to a product also

590
00:49:48,440 --> 00:49:53,480
and then those RLS tables are used in your semantic model to govern the security and similarly

591
00:49:53,480 --> 00:49:59,080
the assignment also happens let's say I asked for sales viewer role so sales viewer role with let's say

592
00:49:59,080 --> 00:50:06,760
city as new new york so the service request will go add me to the sales viewer security group it will

593
00:50:06,760 --> 00:50:11,720
go mid go and add me to the new york it will also go and add me to the let's say workspace or to the

594
00:50:11,720 --> 00:50:19,720
reports which I can see as the sales viewer so all these automations can help us out. And I have the

595
00:50:19,720 --> 00:50:28,760
fabric admin center I also have I don't know it's power be either same name but I also have the

596
00:50:28,760 --> 00:50:37,000
option in power be I and and I also can use use entra how show I had all these tools or what's

597
00:50:37,000 --> 00:50:46,280
the best practice here. So, so we have it that level so basically entra all the security where

598
00:50:46,280 --> 00:50:51,000
where basically your all log is getting created and security groups are also getting created at the

599
00:50:51,000 --> 00:50:57,160
Azure level so that part happens there after that fabric and power be I is the workspace level

600
00:50:57,160 --> 00:51:02,280
security same way to apply suppose that we give the assignment of the objects on the fabric

601
00:51:02,280 --> 00:51:06,440
level to the security groups permissions are also decided security or sometime you will let's say

602
00:51:06,440 --> 00:51:10,840
try let's say fabric app came is a new feature now I don't want everybody to go ahead and create those

603
00:51:10,840 --> 00:51:15,480
reports so I will give permission to a set of users which are part of a security group to create

604
00:51:15,480 --> 00:51:21,320
those reports same way I'll give the finance user access to let's say as a contributor or a member

605
00:51:21,320 --> 00:51:26,200
or admin to you know build the content and give it and viewers of those let's say finance

606
00:51:26,200 --> 00:51:30,840
report security group of finance viewers I'll add deadness the viewers and also add them to security

607
00:51:31,640 --> 00:51:37,720
so this is how it happens so definitely entrap part of the Azure creation of your emails and everything

608
00:51:37,720 --> 00:51:42,520
not going away so that will happen security group creation should also happen from there and

609
00:51:42,520 --> 00:51:48,920
rest of the security will be managed at the fabric level. Yeah I think we have a lot from from

610
00:51:48,920 --> 00:51:55,480
the engineering part but yeah ultimately the most business users don't care about spark data

611
00:51:55,480 --> 00:52:03,080
levels or like house they care about answering questions how do we bridge these these get

612
00:52:03,080 --> 00:52:12,360
so the fabric has lots of options basically if you ask me future could be talking to your data

613
00:52:12,360 --> 00:52:18,680
agents right now we also see a lot of people started using data agents and in that data agent

614
00:52:18,680 --> 00:52:23,480
ontology driven data agent is something really important because what happens when you create ontology

615
00:52:23,480 --> 00:52:28,280
on top of your data it do understand data much better it goes look at the data and try to have the

616
00:52:28,280 --> 00:52:32,840
data part match and it can provide better answer and it can sometimes work even better on the

617
00:52:32,840 --> 00:52:38,040
snowflake models or the models where you know the typical star schema kind of stuff is not there

618
00:52:38,040 --> 00:52:44,200
it also works better there so ontology driven data agents would be our first choice in the future

619
00:52:44,200 --> 00:52:49,000
to communicate with our data and understand our data then we will have the reports definitely

620
00:52:49,000 --> 00:52:54,520
I will not wanted to go and communicate and always ask questions I would definitely want some

621
00:52:54,520 --> 00:52:59,320
numbers in front of me every day morning now those everyday morning numbers will either come from

622
00:52:59,320 --> 00:53:05,000
a fabric app report or power be a report there are very high chances in the future that your data

623
00:53:05,000 --> 00:53:11,640
agents might create a report for you which is basically could be a fabric app and a power be app

624
00:53:11,640 --> 00:53:16,040
after you ask a set of question okay this is how I perform these are the KPI I look at it

625
00:53:16,040 --> 00:53:20,680
this is the information I need Monday morning this is what I need to do morning so data agent probably

626
00:53:20,680 --> 00:53:26,040
could go ahead and create finally based on your communication a report which works the VR way

627
00:53:26,040 --> 00:53:32,600
and not you know the report created by a developer which gives you okay same set of reports for all

628
00:53:32,600 --> 00:53:40,760
four executive same set of reports for you know thousands of users so probably data agent and the

629
00:53:40,760 --> 00:53:48,520
data agent created reports would be something which we will be frontending in future yeah I think a

630
00:53:48,520 --> 00:53:57,960
lot of power be I and business users like to have a self service be I it's a little bit distressed

631
00:53:57,960 --> 00:54:04,040
us from our most organization what do successful service ourselves levels I look like

632
00:54:04,040 --> 00:54:10,120
okay so now see understand we are talking about this town self service but when we use that

633
00:54:10,120 --> 00:54:15,320
creating those reports the movement we go into the complex calculation we realize we need to go

634
00:54:15,320 --> 00:54:19,480
back to the developer even in the power be in world where you know you have the self service knowledge

635
00:54:19,480 --> 00:54:25,320
of decks was required but in this new world of AI driven you don't need that even if a major is not

636
00:54:25,320 --> 00:54:31,080
there your AI agent is going to create so this is real self sir your model doesn't need to have all

637
00:54:31,080 --> 00:54:36,760
the formula your model doesn't need to have all the logics it will on the flight created now definitely

638
00:54:36,760 --> 00:54:42,120
realize okay if it creates on the flight takes lot of time it's better to improve my model to answer

639
00:54:42,120 --> 00:54:46,520
some of those questions maybe better to have a major for that so I think two self surveys what we

640
00:54:46,520 --> 00:54:52,360
are calling is on the plate using data agents and the AI driven development so where you know

641
00:54:52,360 --> 00:54:59,320
users will just be so I'll tell you I was on the weekend I have created entire fabric from

642
00:54:59,320 --> 00:55:05,640
ingestion of data to transformation creating a power be a model creating a report just by talking

643
00:55:05,640 --> 00:55:12,280
to the GitHub co-pilot I have not went ahead in any of the UI other than the testing so we're reaching

644
00:55:12,280 --> 00:55:17,480
to that level now understand what would be the future that you define your requirement well to

645
00:55:17,480 --> 00:55:21,880
define your requirement well you have tools also which will define your requirement well then they

646
00:55:21,880 --> 00:55:25,640
will break it and then you will only go ahead and say okay go ahead and create the tickets on my

647
00:55:25,640 --> 00:55:30,280
DevOps and then you will come to GitHub co-pilot and say okay execute all these tickets on my one

648
00:55:31,080 --> 00:55:38,040
and this getting created and you do so the knowledge of technology only needed for the debugging skills

649
00:55:38,040 --> 00:55:43,480
for what is not working how to make it work but it's going to be a really self-serve environment like

650
00:55:43,480 --> 00:55:50,280
you know in our generation we used to learn computers but if you look at the next generation they

651
00:55:50,280 --> 00:55:55,080
they know computer by you know they they know is as a skill be it's just like a language skill for

652
00:55:55,080 --> 00:55:59,720
that for future the AI would be cut that kind of skill where everybody knows how to you know build

653
00:55:59,720 --> 00:56:05,400
those complex some of those systems using you know AI so that will become a primary skill for the

654
00:56:05,400 --> 00:56:10,600
next set of people who are you know now learning those things so probably for them it would be just

655
00:56:10,600 --> 00:56:18,200
okay I go or I type prompt I'll have my stuff ready for me awesome yeah thank you are we really

656
00:56:18,200 --> 00:56:25,640
little bit running out of time so I have in every session of rapid fire rounds so I ask a short

657
00:56:25,640 --> 00:56:32,520
question you give a short answer is it though are you ready out yeah okay let's also warehouse

658
00:56:32,520 --> 00:56:42,680
lecels escuelor pi spark pi spark dataflow gen 2 or notebook not book back so escuel

659
00:56:44,680 --> 00:56:55,160
decks most underrated fabric feature fabric apps the biggest power be I'm modeling mistake

660
00:56:55,160 --> 00:57:04,520
many many relationships what is when such an gallia called you and say hey you get all the money

661
00:57:04,520 --> 00:57:13,000
resources to build your dream feature what will you build probably I would want to improve

662
00:57:13,000 --> 00:57:17,800
upon on data agents so just ask them okay this is my requirement have a dashboard ready every day

663
00:57:17,800 --> 00:57:23,320
it should change based on some requirements I don't want to see same dashboard every day one

664
00:57:23,320 --> 00:57:31,080
fabric skill every power be I professional show to low probably you should be knowing power query

665
00:57:31,080 --> 00:57:42,840
index if nothing else is fabric apps in you power be I yes awesome so and we should I invite

666
00:57:42,840 --> 00:57:53,400
next at what questions do I ask I think you can this in Rajin who's again Microsoft fabric MVP

667
00:57:53,400 --> 00:58:01,480
and scheme more questions about ontology and fabric app I think he's one lot of working on

668
00:58:01,480 --> 00:58:05,640
real-time analytics actually he's working a lot on real-time analytics so maybe you have a session

669
00:58:05,640 --> 00:58:13,560
on fabric real-time with Rajindra the data platform MVP and if an organization wants to start with

670
00:58:13,560 --> 00:58:22,440
fabric tomorrow what should it's first project be I think any data project where you think I need

671
00:58:22,440 --> 00:58:28,840
some kind of analysis it just in a starting point it could be just you know knowing you know

672
00:58:28,840 --> 00:58:33,640
how my employee performance is there or how my sales is ongoing if you think you need data analysis

673
00:58:33,640 --> 00:58:39,400
fabric is there for you awesome so yeah I'm a thank you for for joining me and talking taking

674
00:58:39,400 --> 00:58:45,720
us through the computer the Microsoft fabric analytics journey what I think in this conversion

675
00:58:45,720 --> 00:58:52,200
makes clear is that fabric isn't simply another in real analytics product real opportunity comes

676
00:58:52,200 --> 00:58:56,760
from connecting data in guest gen engineering lake house where our architectures and

677
00:58:56,760 --> 00:59:03,240
semantic model security power bar into one core and platform and the technology alone isn't

678
00:59:03,240 --> 00:59:10,280
enough the architecture ultimately has has to deliver trust information that people can use

679
00:59:10,280 --> 00:59:16,520
to make better decisions so for all the people to listen to the podcast and interested to connect

680
00:59:16,520 --> 00:59:23,800
and see how it works you can look at the show notes and you find this profile there and yeah

681
00:59:23,800 --> 00:59:32,760
thank you again I'm it for for being a part of the show thank you thank you for inviting me