1 00:00:00,090 --> 00:00:10,110 ‫Acid, which stands for a tomasetti, consistency, isolation and durability, are four critical properties 2 00:00:10,140 --> 00:00:12,150 ‫of relational database systems. 3 00:00:12,750 --> 00:00:20,790 ‫I think any engineer working with the relational databases such as Postgres, MySchool, SQL Server, 4 00:00:21,120 --> 00:00:30,930 ‫Oracle and even no sequel databases or graph databases must really understand these four building blocks 5 00:00:30,930 --> 00:00:37,080 ‫and fundamentals and first principles that build database systems. 6 00:00:37,200 --> 00:00:44,340 ‫In this course, we'll go through these four properties in details, and I'll explain why each of these 7 00:00:44,340 --> 00:00:51,690 ‫properties is critical to build and use relational databases successfully. 8 00:00:52,530 --> 00:00:54,180 ‫Let's get started. 9 00:00:54,420 --> 00:01:02,670 ‫So part of the work that we're going to discuss in this section is what is a transaction before we even 10 00:01:02,670 --> 00:01:05,100 ‫start talking about these four properties? 11 00:01:05,280 --> 00:01:11,100 ‫We need to understand what is a database transaction at its core. 12 00:01:11,460 --> 00:01:17,490 ‫And once we understand this, then we're going to jump into the first property at Thomas City. 13 00:01:17,610 --> 00:01:19,320 ‫What is it exactly? 14 00:01:19,320 --> 00:01:25,440 ‫Why is it the most important thing to guarantee consistency? 15 00:01:25,620 --> 00:01:36,930 ‫Speaking of consistency, we really need to talk about the transaction isolation as I start multiple 16 00:01:36,930 --> 00:01:39,360 ‫transactions concurrently. 17 00:01:40,110 --> 00:01:42,360 ‫All of these are accessing my data. 18 00:01:42,600 --> 00:01:46,320 ‫All of these transaction, at the same time changing my data. 19 00:01:46,650 --> 00:01:54,240 ‫What does it mean to a for these transactions to be isolated from each other? 20 00:01:54,420 --> 00:01:55,620 ‫What can they see? 21 00:01:55,650 --> 00:02:03,570 ‫What can not what should not they see all these results in to the consistency? 22 00:02:03,810 --> 00:02:10,170 ‫Fourth parameter, I flipped the order here because I really believe talking about automaticity and 23 00:02:10,170 --> 00:02:14,880 ‫isolation before consistency is actually critical to understand consistency. 24 00:02:15,240 --> 00:02:20,370 ‫Because now, if you have a transaction and this transaction change is something that I just wrote, 25 00:02:20,850 --> 00:02:22,440 ‫then you are going to get the result. 26 00:02:22,440 --> 00:02:25,890 ‫That is unexpected, that affects your consistency. 27 00:02:25,890 --> 00:02:28,230 ‫You get a data that you didn't expected. 28 00:02:28,470 --> 00:02:29,820 ‫It's bizarre, right? 29 00:02:30,660 --> 00:02:37,530 ‫And finally, the most important one, one of the most actually and one of the properties that a lot 30 00:02:37,560 --> 00:02:40,770 ‫of NoSQL databases play with durability. 31 00:02:41,130 --> 00:02:49,380 ‫The some databases sacrifice durability for performance, and nothing wrong with that is just understanding 32 00:02:49,380 --> 00:02:55,230 ‫the concept of durability that when I actually commit that transaction, when I actually say save, 33 00:02:55,770 --> 00:03:04,980 ‫this should really be persisted in an non-volatile place so that I can go back and read this data. 34 00:03:04,980 --> 00:03:12,600 ‫Even if my databases crash, even if I lost power, I can still get access to my data. 35 00:03:12,660 --> 00:03:16,830 ‫We're going to talk about all of these in detail if you are interested in this thing. 36 00:03:17,220 --> 00:03:21,030 ‫Stay tuned and see you in their next lecture. 37 00:03:21,630 --> 00:03:22,800 ‫Oh, I forgot to mention one thing. 38 00:03:24,180 --> 00:03:30,150 ‫By the end of this section, I added a little bit of a small quiz that I think you guys were going to 39 00:03:30,150 --> 00:03:30,930 ‫enjoy. 40 00:03:31,380 --> 00:03:33,750 ‫And obviously, the answers are in the quiz. 41 00:03:34,080 --> 00:03:43,620 ‫And even if you pick any wrong answer, I give you detailed explanation why that answer is not the actual 42 00:03:43,620 --> 00:03:45,420 ‫correct answer, right? 43 00:03:45,690 --> 00:03:49,770 ‫And we have all sorts of great discussions in this course as well. 44 00:03:50,490 --> 00:03:54,000 ‫Now let's jump to the next lecture.