 He's in there He's not good now. What's up guys? I'm over here at the county jail in the city DJ Moosh is in there. It's not looking good Whatever he's behind on Charles Ford. So let's just go through this So again, the purpose of this lecture is we want to discuss the logistics for the course now You know online rather than in person So that way in the first day of class next week we can just jump into all the data stuff right away All right, so let's go through this The reason again, why why am I down here at the county jail? Well, because because the databases right and this is what this course is really all about I've read you're focusing on the most important things in your life. And yeah, sometimes bad things happen So for me that the two most important things in my life are my wife and my biological daughter First they're number one and then after that is databases. That's really, you know What you should be getting out of this course that databases is all-consuming Everything in the world is a database problem and you'll have I think a better appreciation for it's kind of stuff So again, we'll cover this in class next week But the another thing pointing to point out for this lecture this semester or this semester is We're graciously sponsored by single store and they're helping out with course development So single store is a in-memory Column store distributed database system. That's of course just in time great compilation Now if none of that makes sense for you right now, that's that's fine because we'll cover all these things throughout the semester And so we're grateful for them helping it helping us out and they'll become giving a guest lecture at the At the end of the semester So more than that as we go along All right, so today's lecture real quickly We're gonna first obviously discuss the wait list because that's what a lot of you guys care about Then we'll talk about the rules we have But lectures and then go through all the course logistics including homeworks and projects So the first thing obviously to deal with is the wait list As you're probably aware of your senior student the wait list is quite long and You know, there's more people that can take want to take the course then we can actually accommodate so at this point the the CS department has taken over the wait list from from us because they they need to make sure that certain students need to graduate and Take a source of collectives and all that and they all get preference. So we the professors have no control over the wait list So if you send us emails, there's not much. There's nothing we can we can do And the admins will then move students off the wait list, but they're not always going to go in the order that You're ranked in the wait list Because there's multiple sections or undergrads semester students So just because you're some low-nominal wait list, there's no guarantee that we can get you in the semester The good news is that since we've hired Jignesh Patel as the new data professor with me here at Connie Mellon We can now offer 154545455 and 645 every semester So we'll be offered again in in spring 2024 in addition to this semester All right. So the other thing When we have the in-class lectures, it's really important that I want to be interactive We don't just just you know us stand up there for you know an hour and paddle on about databases It's always helpful. It's always fun when students ask questions And these questions be either because we're talking too fast and you want to slow down I get excited when I talk about databases. So like I'm going too fast. Please tell me to shut up and slow down And certainly if you don't understand what we're talking about it's a good time to interrupt to ask clarifying questions There's maybe there's something about you know in the slides or the discussion that doesn't make sense And oftentimes to if you have questions Other people have probably have same questions as well So please anytime during the lectures, please interrupt us with anything that's data which related What we don't want to be interrupted about is whether or not you can go to the bathroom because You're an adult you don't have to ask permission We also don't be interrupted about blockchains watching for databases or stupid We're not gonna cover them. There's no need to cover it. I sure some Ah Where we're in we're not covering these things So now because I want you to interrupt us while we're giving the lectures that means that I we don't want you to Come at the end of the end of the lecture and say, oh, you know, what about slide three? I did this didn't make sense and so right because in the past We've always finished lectures and then there's you know, several students lined up asking the same question over again And again, so this is why I'm saying if you interrupt us as we're going along, you know It'll help everyone at the same time. So please we're not we're not we won't answer any questions about the slides immediately after class All right, so what is this course? so fifteen four hundred five six forty five is a course about the designed implementation of The database management systems now, which is they can we're going to discuss relational database management systems And we'll cover that in the next lecture But it's really about how do you have to build these systems? So this isn't this isn't of course about how to use one It's important how to build an application that that uses an ORM to make calls to the database or whatever And this is really how you build the internals of these systems and the reason why this is you want to focus on this topic because No matter where you go in your life in any aspect of computer science or even outside of computer science There'll be times where you're always going to be interacting with the database and therefore you need to know How these things are actually running so if you don't go off and go to single-storey and work on actually the internal video system You need to know what's actually going on to help you understand You know why the system is behaving a certain way. I'm actually have people email me and tell me that Yeah, a lot of the concepts maybe just databases are applicable to other things Like human systems and whatnot. So like the things we're covering this semester. I think will be super useful throughout your entire career So if you want to learn about how to use a database system or how to administer administer a database system like being a TVA There's a couple courses in Heinz College that you should play take instead This is really about like people want to get their hands dirty on the internals of these systems All right, so the logistics of the course everything will be on the course website Publishing that very soon The all the discussions and announcements throughout the semester will be done through piazza All the homeworks and projects will be submitted for grade scope. Everything will be auto graded And then the final grades will be posted on on campus. And again, if you're enrolled in the course Officially you should have access to all these things right now So if you're a non CMU student, I know a lot of you outside CMU like to like to watch lectures and do projects Well, we have a separate grade scope Account setup for the course that will mirror what the official CMU one does And you can use this code to log in and get access to it And this will allow you to submit your projects and get graded the same way That the CMU students do so again if you're non CMU student We ask you since we're providing this this our materials for you for your charge Please don't post your solutions on github Please don't email myself to Gnash or the TA is for help just because we have so many people we need help here at CMU We can't help everyone There is a discord channel that actually is not run by CMU Somebody outside of it has set this up. It's sort of become the de facto Location for discussing your various aspects before so I encourage you to sign up to check that out again in in exchange for Helping us out with this or us helping everyone with these materials. I ask if you're someone please finish my wikipedia article I think it's been flagged because You know, there was some stuff that was sort of true and not true where someone could fix that for me That'd be great All right, there's a textbook for the course database systems concepts from silver chats worth and shundish in It's not required. Like there's no homework that are based on it But if you want supplemental reading beyond we discuss in the class There'll be a readings. You can go and dive deeper into the various topics Now there are gonna be some things that we discuss that they the textbook doesn't cover I don't think covers as well as they should and That's what we'll revive lecture notes as PDF files that are available there Whether you need to buy this textbook or not It's up to you and depends on how you know how deep you really want to go into this material All right, so the grading rubric for this semester is me falling So this is a project heavy course the 45% of the grade will be based on your projects And also that's what these are in a second the The five homework assignments for projects then a midterm exam and a final exam. You see the breakdown All right So all the homeworks will be based on the material we cover in in class and in design readings The first homework sign will be a sepal assignment or a sepal project where you have to write some sepal queries On against a data set Everything after that place for homework will be all kinds of paper, but you'll still submit those in great scope Again, it's CMU everyone knows this all your homeworks should be done Individually and you shouldn't copy up each other All the projects will be based on a system we've been building for several years now here here Carnegie Mellon called bus time We discussed in class with the name plus that actually means Work where it came from But the idea here is that it's a Tech educational test bed database system where you will do all your projects on and you'll see over time as you add more features to the system you'll get a better understanding how all the various layers fit together and Run queries and see results based on the stuff that you actually go So it's very important that you don't fall behind on the projects because every project is going to build on the previous Like in project one you're going to build a baffle cool manager And then in project two you're going to build a an index that gets pages or gets it's meant So it's really important that you stay on track start projects early and and don't fall behind Bus tub is written in C++ specifically. I think 20 now not 17. We don't use all the band features in the new versions of C++, but the The assumptions that you're coming in to this class with the familiarity and and being comfortable writing and debugging C++ And so I think it was a post on piata whether 2 13 5 13 was enough for this. Yes, there's no Some of the things you'll be able to pick up as you go along, but it's a little bit. I think it's a little more advanced than I'll cover ladies late days in a second, but there's All the late days are only allowed projects on the homeworks And you're given four late days that you can use for any project as we go along And as we release each project, there'll be an online presentation that will hold where you can come in a Week after the paid project released after you've sort of looked at the code You can come in as questions about it with the TAs and for that make that available for everyone So I've had to post it in the in the email and I'll post it up again There is a project zero that we require all students I want to take the class have to complete and this is really a Safety mechanism to make sure that and you're coming to this class prepare to write C++ code And so it's not rated in that it doesn't affect your final score in the class Which you're required to complete it because again, we don't want people who don't know C++ I think they're gonna pick it up as they go along throughout the semester and then realize oh I have to know C++ learn C++ and learn Davis at the same time. It's it's it does not end well We've done this enough that we realized that this is really this really helped you rather than make your life harder So if you do not complete this this project zero by the deadline of September 10th Well, we're gonna ask you about drop and in zero exception. We made I don't care that your brother took 513 10 years ago And you and you saw what he did back then like it doesn't matter You have to complete this it shouldn't take that much time, right? It's a pretty basic trial for office hours The myself Dignesh and the TAs will hold office hours at various times throughout the week, but between Monday and Friday and then there won't be any office hours Regulate on Saturdays, but the day before the every project is due will have a sort of power session We have multiple TAs for multiple hours available for you to come ask questions for But this means that there won't be any office hours on the Sunday When projects are due because we don't want people to wait to the last minute to try You know to try to work on something and then you know hoping the TAs will help them figure things out right again, this is a forcing function to make sure that you are making progress You know soon to start working projects as soon as they're released So you're not trying to do as much as you can at the last the last day because it's again This system programming is not easy And you will make mistakes and you'll have to take time to sort of figure things out For this semester, we're actually offering the course to to CMUQ students So welcome, thank you for joining us and I realized there's time zone difference. And so we will have a Regular scheduled office hour That lines up with your you know, you're working hours With a different TA each week and I'll announce this on Piazza when it will be and that way you at least Talk to somebody if you need to and then if you need to talk to a generation myself It will post how to schedule calls with us at different times as it has needed Again, so this this morning session or whenever it will be will be for the CMUQ students We we asked the regular the Pittsburgh senior students and I'll take and I'll do that And by all means please always have questions post on Piazza right away because you'll get an answer sooner All right, I got some of the late policy For homework to use 10 points every hour And then before they do that I'm talking about will be only be applicable to Four projects if there's a medical emergency if there's some kind of Stream circumstances the term that they seem you like to use so medical emergency family emergency It's if you need an extension please email instructors as soon as possible And that way we can make sure we make the appropriate combinations if necessary. You may need to go through the medical thing But emails sooner rather than later like Can't print this but like it's not good be just we have a 10 year 10 weeks And then you come back say I need an extension if soon as you know, something's up We're here to help. Just let us know. Okay. I gotta say this every year Do not plagiarize so all the homeworks all the projects must be your own original work You're not group assignments. You can discuss your projects with students. That's fine You can even flesh out ideas on the whiteboard, but do not copy source good for other people do not copy source good from get up So again because we make this public people outside CMU. There's a lot of implementations from previous semesters from that are available on get up Chat to BT might be able to even do earlier projects do not copy them because the we use grayscope now and grayscope has a Pleasure checker and basically what we do is we find all the github implementations from non CMU students load them up into github We're talking into grayscope. Let's fake students and then see whether you match against them Do not do not copy your source code from other students. Do not quit source code from github Say also to the github source code is usually pretty crappy. We've done experiments before she has done this The CMU students crush the non CMU students. So it's actually in your best interest not to copy them Again There won't be any exceptions. Oh, I didn't know yeah, like the fact that this is recorded Lecture if we have to report you to Warner Hall We point to this time stamp in the lecture and say where I'm warning you not plagiarize and then you plagiarize Yeah, and if now you're screwed, right? If there's something you want to do that seems kind of like gray zone and you don't want this Okay, like using jet TV or something like that, right? Please, you know email myself and jignesh not the ta is to see whether See whether we want to discuss it And then the link there will be for a CMU's policy or academic integrity again. We take this very seriously Don't around right one of the last thing is that if you love database as much as I do and you may go beyond the force material We are offering a seminar series this semester. It's entirely optional where every Monday starting in September we're having a Different outside speaker come give a talk about the various database company or project so this semester the theme is machine learning for databases and databases machine learning And so we have people that are building a lot of these hot thing now these vector databases We're going to stuff next class, but we're having them talked about their systems How to look for LLM like stuff inside of data systems and then we'll have people talk about how they're using machine learning to optimize Sort of like using to make the system actually faster. So again, this is optional everything will be on zoom Monday's at 430 and then Then we'll post it on YouTube afterwards again in this one. You don't have to be a CMU's to neither You can join it if you're just you can see the list here the whole schedule All right, so that's it for the logistics class. I gotta figure out what we're gonna do about about musho He's not getting out anytime soon. That's it from But it's okay. All right, so next class on Monday. We'll have the in-class lecture And then we'll begin right at the gate not talking any logistics for the course We'll just immediately talk about the relational model and then in databases. Okay. All right guys. See you next week