跟讀練習: Learn Data Modeling in 8 minutes: Dimensional Data Modeling, Data Vault, and One Big Table - 通過影片學習英語口語

選擇練習模式

每種模式都會開啟全屏練習室。

120 句
如果句子過短或過長,請點選 Edit 進行調整。
1
Data modeling is one of the most important skills that data engineers have to learn.
2
So how is it so important?
3
Well, at the end of the day, data modeling is the structure of the data that we create for businesses.
4
Because the asset that we produce for businesses is data to make better decisions.
5
And data modeling has a bunch of different components to it.
6
And we're going to talk about each of them.
7
There's the highest level, it's called conceptual data modeling.
8
Then we're going to be going over the next layer down, which is logical data modeling.
9
And then the final layer that we're going to talk about is physical data modeling.
10
In this video, we should be covering all of those.
11
So at the end of this, you should know all the ins and outs of all three types of these data modeling.
12
So let's first talk about the highest level conceptual data modeling, which is the highest level way of thinking about it is like, what data do we need?
13
What data does the business desire?
14
What data do we have access to?
15
What are the sources?
16
Where can we find this data?
17
Can we like think about all the relationships of this data, like at a very high level? because sometimes you might want data in a business, but it's actually unfeasible to get it,
18
or it's going to take months and months and months.
19
And it's not ROI positive
20
because the time it would take to get the data is more than the value you can get out of it.
21
So this area of data modeling is very, very, very important because if you get this wrong,
22
you can end up spending a lot of extra time on the data model for things that don't matter that much.
23
Like there might be an extra column or an extra table
24
that like some data scientists ask for that they're only going to use one time.
25
And if you push back on that, it makes your job as a data engineer a lot easier because you remove that requirement because it's a low value requirement.
26
So you need to be able to like walk through all the requirements of the data model at this highest level.
27
And really having a deep understanding of the business is where you can really, really shine as a data engineer with conceptual data modeling.
28
So after you have mastered the conceptual data model, you skip into the next layer, which is the logical data model.
29
So the logical data model is where you start talking about like facts and dimensions and how they're related.
30
Like, so facts are events.
31
You can think of that as like I click the login button.
32
I purchase a product.
33
I send a message to a friend.
34
Like all of these are like events and actions that you can take on a website.
35
And these are going to be your facts because they can't really change.
36
After I've logged in on Facebook at 6.03 p.m., like I can't go back into a time machine and change that.
37
So then you have dimensions, which are going to be like your nouns or like your actors in this space, right?
38
So you have things like users or listings or posts or, you know, devices.
39
These are all like things that bring context.
40
Cause like I could be like, I'm a user in China who clicks an ad, right?
41
And then the user in China bit, that part of my user object and then clicking the ad is part of the fact.
42
And so those are the ways to be thinking about all of these things.
43
So the logical data model is all about how do you find all of these entities and how are they related.
44
So like, for example, when you click on an ad on Facebook, the entities that are involved, the user who clicked the ad, you also have the device that clicked the ad,
45
you also have the browser potentially that clicked the ad.
46
And so those are three dimensions
47
that you can bring in to your fact data to make your fact data richer and more powerful.
48
So after you have gotten the logical data layer nailed down, then you move into the final layer, which is the physical layer.
49
And this is the layer where people oftentimes, like they think the physical layer is the only part of data modeling when it's actually not,
50
it's actually like probably the least important in some regards, but it's also where it becomes real.
51
It becomes reality.
52
It's physical data now.
53
So this is where you start looking at the schema.
54
What are the columns of your data?
55
Like what are the data types of your data?
56
How are you storing this data?
57
How can you compress this data to make it smaller?
58
So in this space, you have a couple different data modeling techniques
59
that you can look into
60
that can really help understand all the way up from like physical to logical to conceptual
61
and you can like understand there's a couple different paradigms here
62
so one is called one big table
63
so one big table essentially says you don't need facts
64
and dimensions you can essentially have a fact
65
that has all of its context all the context is already in the fact
66
so you don't need to do joins you can just do aggregations you don't need to join at all
67
because when data gets very big joins become very expensive like actually joining in the the nouns into your data.
68
But the trade here, right, is that you're duplicating data, right?
69
Because every now my user data is now in every single fact, right?
70
And say I do 300 events on a data set.
71
This is what's called the compute storage trade off, right?
72
Because it is duplicated in storage.
73
But why is this potentially worth it is
74
because you can now do aggregations without doing join
75
and aggregations are faster than join because you don't have to like pull data from all these different locations, you can just aggregate right down and group very quickly.
76
And so this is what is the advantage of one big table, even though one big table also duplicates a lot of data and is super painful.
77
So then you have the more traditional approach of facts and dimensions, where like you separate your nouns and you separate your verbs and your events, and then you join them together.
78
That's called dimensional data modeling.
79
Dimensional data modeling is the oldest technique of all the techniques that we have talked about.
80
And it's the one that most data engineers should probably pick.
81
It's the most foundational and the most fundamental.
82
So definitely, if you haven't learned about dimensional data modeling, I'll put a link in the description below.
83
I have many hours of content on dimensional data modeling on my YouTube channel.
84
And then last but not least here is called a data vault.
85
So data vault is very interesting because data vault is all about preserving the rawness of the data.
86
So you want to bring in data in its most untransformed state and kind of stack it onto things.
87
And this allows you to essentially know exactly what the data was in its rawest form.
88
So you don't end up filtering something out that you didn't mean to or transform something that you made a mistake on.
89
And Data Vault allows you to back up into like the most raw form of the data.
90
It's kind of related to ELT, you know, extract load transform instead of extract transform load.
91
That's it's kind of related to that.
92
But it's also about how you actually model the data.
93
And it has a very strict kind of thing in it and like a strict kind of ideology to it.
94
That's why I don't really I don't really subscribe to Data Vault as much.
95
I really like dimensional data modeling and one big table data modeling.
96
But at the end of the day, like it's still a very useful technique.
97
And you can combine all of these techniques.
98
I'm going to give an example.
99
So when I worked at Airbnb, I actually built a data model that was a mix of one big table and data vault and dimensional data modeling.
100
So how it worked was we use data vault to get all of the inputs.
101
So the inputs in this case were for availability and price
102
because the host sets the price rules like what is the daily price?
103
Are there any discounts?
104
Are there any like any length of stay requirements?
105
Maybe you have to book for three days or seven days or you know, you can only book 48 hours in advanced, there's a lot of these different rules that hosts can set in Airbnb.
106
And so I took all those rules in their raw form and combine them into one data set called inputs.
107
And that was the data vault kind of technique that I use.
108
And then from the inputs table, we process it through to a new table called listing pricing.
109
So now we actually know what the actual prices would have been given those rules.
110
And that table was one big table because it had all of the nights in one column.
111
So one of the giveaways of like a one big table data set is that it uses complex data types, like it uses things like struct and array and like map
112
and those kind of like more complicated data types more than just like, you know, string and integer and decimal.
113
It's like one big table very often is a table within a table.
114
And that was a big thing I did here at Airbnb.
115
Keeping in mind that like you don't have to adhere to any one of these three religions
116
when you are working with with data modeling, you can also kind of do whatever you want, right?
117
And mix and match.
118
It's more of an art than a science.
119
And it's really about matching business requirements to the physical data modeling needs that you, or the physical data modeling tools that you have.
120
So yeah, I hope you found this content interesting and make sure to like, follow, and subscribe.

下載應用

流利口語所需的一切

AI 發音評分逐句打分
音標練習掌握每個音
詞彙學習建立你的詞庫
詞彙遊戲邊玩邊學
FOR YOU

推薦影片

本課的詞彙與口語要點

這段影片共有 120 個句子、1736 個單詞可供跟讀。 講話部分時長為 8:06。 說話人語速較快,每分鐘約 214 個詞,會出現較多連讀和弱讀。 87% 的單詞屬於英語最常用的 3,000 詞,詞彙容易理解。

影片中的重點詞彙

影片中 15 個不太常見的單詞,附發音和釋義:

  • layer /ˈleɪ̯ɚ/ (名詞) — 層 /層. A single thickness of some material covering a surface.
  • vault /vɑlt/ (名詞) — 拱頂 /拱頂. An arched masonry structure supporting and forming a ceiling, whether freestanding or forming part of a larger building.
  • technique /tɛkˈniːk/ (名詞) — 技術 /技術, 技巧. The practical aspects of a given art, occupation etc.; formal requirements.
  • dimensional /daɪˈmɛn.ʃə.nəl/ (形容詞) — 維的 /維的. Of or pertaining to dimensions.
  • requirement /ɹɪˈkwaɪɹmənt/ (名詞) — 要求, 需求. A necessity or prerequisite; something required or obligatory. Its adpositions are generally of in relation to who or what has given it, on in relation to whom…
  • dimension /daɪˈmɛn.ʃən/ (名詞) — 方面, 特點 /特點. A single aspect of a given thing.
  • input /ˈɪnpʊt/ (名詞) — 輸入 /輸入. The act or process of putting in; infusion.
  • essentially /ɪˈsɛnʃəli/ (副詞) — 本質上 /本質上, 基本上. In essence: by nature.
  • transform /tɹænsˈfɔɹm/ (動詞) — 變換 /變換, 變形 /變形. To change greatly the appearance or form of.
  • noun /naʊn/ (名詞) — 名詞 /名詞. A word that functions as the name of a specific object or set of objects, such as person, animal, place, word, thing, phenomenon, substance, quality, or idea…
  • duplicate /ˈd(j)uː.plɪˌkeɪt/ (動詞) — 複製 /複製. To make a copy of.
  • column /ˈkɒləm/ (名詞) — 柱子, 柱. A solid upright structure designed usually to support a larger structure above it, such as a roof or horizontal beam, but sometimes for decoration.
  • combine /kəmˈbaɪn/ (動詞) — 結合 /結合, 組合 /組合. To bring (two or more things or activities) together; to unite.
  • entity /ˈɛn.tə.ti/ [-tʰi] (名詞) — 實體 /實體, 整體 /整體. That which has a distinct existence as an individual unit, often used for organizations which have no physical form.
  • extract /ˈɛkstɹækt/ (名詞) — 精. Something that is extracted or drawn out.

影片中出現的短語動詞

  • end up (動詞) — 到達. To bring to a conclusion.
  • look at (動詞) — 觀察 /觀察, 看. To observe or watch.

需要注意的發音

說話人用了 23 次縮略和弱讀形式,例如 don't, we're, can't。請按聽到的簡短形式來說。

  • “sh” 和 “zh” 音: dimensional /daɪˈmɛn.ʃə.nəl/, dimension /daɪˈmɛn.ʃən/, essentially /ɪˈsɛnʃəli/, potentially /pəˈtɛnʃ(ə)li/, shine /ʃaɪn/
  • 長單詞——注意重音位置: dimensional /daɪˈmɛn.ʃə.nəl/, essentially /ɪˈsɛnʃəli/, potentially /pəˈtɛnʃ(ə)li/, entity /ˈɛn.tə.ti/ [-tʰi], complicated /ˈkɑm.plɪˌkeɪ.tɪd/

如何用這段影片練習

  1. 先完整聽一遍影片,不要開口,記下不認識的單詞。
  2. 先用 0.75 倍速逐句跟讀,熟練之後再回到正常速度。
  3. 錄下自己的聲音並與原聲對比,特別注意 layer, vault, technique 這類單詞。

影片中的語法

說話人最常用的結構,並附上影片中的原話:

結構影片中的用法
現在完成時 have/has + 過去分詞 — 過去發生但與現在仍有關聯的事have mastered · I've logged · have gotten
被動語態 be + 過去分詞 — 強調發生了什麼,而不是誰做的are involved · is called · is duplicated
定語從句 who / which + 從句 — 補充說明人或事物down, which is · modeling, which is · layer, which is

什麼是跟讀法?

跟讀法 (Shadowing) 是一種有科學依據的語言學習技巧,最初開發用於專業口譯員的培訓,並由多語言者Alexander Arguelles博士普及。這個方法簡單而強大:您在聽英語母語原聲的同時立即大聲重複——就像是一個延遲1-2秒緊跟說話者的影子。與被動聽力或語法練習不同,跟讀法強迫您的大腦和口腔肌肉同時處理並模模擬實的講話模式。研究表明它能顯著提高發音準確性,語調,節奏,連讀,聽力理解和口語流利度——使其成為雅思口語備考和真實英語交流最有效的方法之一。

影子跟讀法: 閱讀完整分步指南 →