Mark Cuban was born on the 31st of July 1958 in Pittsburgh, Pennsylvania, United States. His father was an awful stirrer. While his mother never had a specific choice of career throughout her life, Mark grew up in a working-class Jewish family and he started developing an entrepreneurial spirit from the age of 12 when he sold garbage bags so he could realize enough money to buy a pair of expensive basketball shoes. Throughout his teenagehood, Mark was engaged in various types of petty businesses, from selling stamps and coins to becoming a paper boy. At the age of 24, he moved to Dallas, Texas after graduating from the Kelly School of Business with a Bachelor's of Science degree in Management. He was informed by some of his friends that there were available job opportunities at the time. However, when he arrived, he met things differently. Mark couldn't get any good paying job to lay his hands on. He had to resort to doing different kinds of odd jobs to survive. He was later employed as a bartender but lost the job almost immediately because he could not open a bottle of wine without a cock falling inside the bottle. After leaving the bartending job, Mark luckily got another employment offer to work in a fast-food restaurant. However, he wasn't a very good cook. Mark couldn't know when the food was ready except he caught a piece and tested it. This made him so incompetent, impelling his boss to fire him. Shortly after losing the job, the young man was employed a game by one of the largest PC software retailers in Dallas. Mark worked as a salesman and this time, he was bent on avoiding any flaw that would make him lose his job. Several months after working for the company, he was unfortunately fired due to an intolerable offense that he committed. At this point in time, Mark was fed up of working for an employer. He decided to overcome his failures by becoming his own boss. With the little money he had realized, Mark started his own company called Microsolutions. It was an establishment that sold software configured networks and computers and even offered training. After spending just five years in the world of entrepreneurship, Mark's company became a multi-million dollar business that grew up to $30 million in revenue. He later sold the company for a huge fortune and built another company, Broadcast.com, which was what over $5 billion at the time he sold it as well to Yahoo in 1999. Before the age of 45, Mark was already one of America's richest entrepreneurs and investors. It's technically impossible to live your entire life without being confronted by failures. Inevitably, everyone eventually fails at one thing or the other. However, what's important is your ability to understand the necessity of failure and how to overcome it. Winston Churchill said, success consists of going from failure to failure without losing enthusiasm. The only way you can eventually succeed after a series of failures is by never losing interest or enthusiasm in the pursuit of your goal. Sometimes people stop chasing their dreams after failing. This is because they are not enthusiastic about becoming successful. If they truly have enthusiasm, they will keep on trying until they are no longer able to fail anymore. Thomas Edison said, many of life's failures are people who did not realize how close they were to success when they gave up. One of the most common reasons for failed careers, businesses, and academic journeys is the decision to give up when success is close by. You never can tell when you would finally succeed, so it's very advisable to continue chasing your dreams regardless of what happens. Truman Capote said, failure is the condiments that give success its flavor. A success story can never be inspiring without failures in it. If you become a successful individual without facing roadblocks and objections, then there would be nothing to learn from you and nothing to make you feel that you deserve that success. This is one of the key reasons you shouldn't be discouraged by failures.


Hi, this is James Randi, and I've prepared this short video so that our viewers and readers will understand better what Penn Gillette of Penn and Teller actually said on Friday, June 20th, at the amazing meeting number six, which was, incidentally, a great success. Penn is outspoken, to say the least. He's frank. He tells people what he thinks as he thinks it. He made a very succinct statement, as you'll see, which was not well represented in Newsweek on their internet blog. I think that the reporter who talked about that in the blog was not quite careful enough to explain exactly what Penn said. Well, now you'll know, because this is the entire segment in which he deals with the situation at hand. He was asked about science and all kinds of things during the interview, and answered all the questions very well. This particular one, however, got a lot of attention on Newsweek and came in for some criticism. So let's take a look at Penn Gillette Friday, June the 20th, in Las Vegas, at Tam Six. Here's what he said.   He seems that way to me, but my feeling on that is a feeling. If there's one thing we all believe, it's that that's not enough. I still try to read about the climate change and the environmentalism and all that stuff. I try to read. I try to ask friends who are smarter than me, which is virtually all my friends. And I just haven't got an answer. I just don't know. I believe, it feels to me like in 30 years, they're going to look back at the environmental movement like Hula Hoops.  It's never worked in history. We didn't save tin by conserving tin. We saved tin by inventing aluminum. There's cases like that over and over again. We're not going to save the planet if indeed the planet is in jeopardy by driving slower and smaller cars.  But the environmental movement, I just don't know.  I don't believe in any of it and just walk around strutting, but I can't bring myself to do that because really smart people have made really compelling arguments and I'm completely and utterly stymied.


Hello everyone, welcome to Chanakya IAS Academy current affair MCQs. Let's see today's questions. Question number one. A typical caves recently seen in news is located in which of the following state? The options are A. Bihar, B. Karnataka, C. Kerala and D. Andhra Pradesh. The correct answer is C. Kerala. These caves are located 3,900 feet above the sea level on the majestic Ambu Kuthi Hills. The name Addical itself means a stone in between. The unique intricate stone carvings that date back to the Neolithic and Mesolithic ages. The caves are two natural formations that are believed to have been formed by a large split in the huge rock. These features, Neolithic era pictorial writings believed to be dating to at least 6000 BCE. Let's see the features. The caves sport human and animal figures besides symbols and letters. Inside the caves are pictorial drawings and engravings that indicate the presence of ancient human settlements in the region. Despite their name, the Addical caves are not actually caves. They are part of a prehistoric rock shelter formed naturally when one huge boulder got wedged between two bigger ones. Human figures, animals, tools, vehicles, day-to-day occurrences and scripts in different language scripts have been discovered here. The diversity of the engravings suggests that the Addical caves were inhabited several times at different points in the history. The Muniaras or ancient burial sites that have been discovered in these hills have yielded a rich collection of ancient earthenware and pottery. Q2. Operation Nannae Farishthe recently seen in news is related to a.  Redress security-related complaints of train passengers c. Rescue children and reunite them with their family and d. To step up the process of development of regional rapid transit system. The correct answer is c. Rescue children and reunite them with their family c. Operation Nannae Farishthe the operation aims to rescue children and reunite them with their family It was launched on Indian railways by the Railway Protection Force c. Operation AAHD it is an effective operation to curb the evil plans of human traffickers c. Operation Uplugged in this operation the doubts were arrested and legal action was taken against their master law d. Doubts are the persons who sell tickets unofficially at a much higher price than the official price especially outside the theater, stadium, railway station or other places c. Operation Yathri Suraksha in order to redress security-related complaints of passengers in distress and for immediate assistance this operation was launched Question number 3 The state of economy report is released by the options are a. Reserve Bank of India b. Ministry of Finance c. Nitiayog and d. Ministry of Commerce and Industry The correct answer is a. Reserve Bank of India The state of the economy report is a paper that the Reserve Bank of India releases which gives a summary of how the country's economy is doing The report talks about things like prices going up, how much the economy is growing how many people have jobs and the banks plan for managing money The RBI uses the report to make decisions about interest rates and other economic rules and it also helps people like economists, investors and regular citizens understand the economy and make smart choices Question number 4 Indian Army's recent initiative to promote indigenous military knowledge by merging ancient strategic insights with modern military practices is named The options are a. Project Udbhav b. Project Avishkar c. Project Shakti and d. Project Chanakya The correct answer is a. Project Udbhav The effort for the integration of India's ancient strategic acumen into the contemporary military domain and develop an indigenous strategic vocabulary rooted in India's philosophy and culture was launched under Project Udbhav of Indian Army Question number 5 The correct answer is b. United Nations World Tourism Organization The correct answer is b. United Nations World Tourism Organization Dhodo Village in Gujarat made it to the World Tourism Organization's best villages list It is a global initiative to highlight those villages where tourism preserves cultures and traditions celebrates diversity, provide opportunities and safeguards biodiversity United Nations World Tourism Organization is the United Nations Specialized Agency responsible for the promotion of responsible, sustainable and universally accessible tourism It was established in 1975 with headquarters at Madrid, Spain We conclude today's MCQs here Tomorrow we will meet with few more MCQs Till then, please like, share and subscribe our channel Thank you


I personally really like that the theme is Science for Humanity because I think one of the main focuses of science should always be to help those around us and that it started the foundation of science in the first place.


In John chapter 15 verse 5 a secret place we talked about a message series of spending time with the Lord and developing a secret place last Sunday we talked about how a secret place is less of a place more of a mindset it's an attitude it's how you live on the inside of you living from the inside out in John chapter 15 verse 5 it says the following I am divine you are the branches he who abides in me and I in him bears much fruit for without me you can do nothing Jesus pretty much put it out there for us and says that he wants us to bear fruit and fruit is something that we cannot do without him meaning it's impossible to bear fruit without Jesus so fruit is not something that we work hard at it if all of our hard labor cannot produce fruit it's impossible to produce fruit fruit is something that is Christ likeness but in other words fruit is producing what's impossible it's doing something that is not possible for you to do for some of us it could be something big like honestly finishes school is impossible and that could be your fruit for some of us is to keep our tongue tame our tongue is impossible and that could be something for you for some of you to honestly nobody in your family has ever stayed married and that's honestly impossible to keep one spouse and to have kids that come from only both parents mom and dad that's impossible and for you to actually have a happy marriage is going to be that fruit so fruit it will be different for different of us but one thing that is going to be this is that it's something you cannot do without God if you can do it without God that is great that requires your efforts but Jesus is fruit is something that you cannot do without God that is incredible you know sometimes we complain that all people put such a heavy pressure on us people have such a high expectations at work you know my parents expect so much well take this Jesus expects you to do impossible that trumps everything that is that is a very heavy pressure to be under I want to let you know that God doesn't have low expectations of you he has expectations so high his expectations is impossible he says I want you to do impossible you can't control your anger that's what I want you to do you can you can be punctual that's exactly what I want you to do you can't stop watching porn that's exactly what I want you to stop doing you can quit smoking while I'm just addicted that's exactly what I want you I want you to do what you cannot because you can do it without me oh but I can't get a business I can't get a job I can't finish school you don't understand I just can't Jesus says that's exactly what I expect out of you I expect impossible God expects us to do impossible Jesus gets angry at his disciples in the boat when they were worried about the storm and you were like Jesus what do you expect us to do impossible stop the storm how can we stop the storm we're not God well you've been hanging out with God and you've seen how he does things and Jesus is upset at them he says what is wrong with you why didn't you do anything about it and accept you bothering me because Jesus expects impossible there's a story in the Bible where a leper a commander comes to the Prophet to the king with the letter and the letter reads like this I'm a leper you need to heal me so the king being humble takes the letter or it's just clothes apart and says what am I God I can't heal you and when I read that I'm like yeah I could connect with that he's not God we can't just heal people and then the Prophet hears about it sends the messenger to the king and says why did you rip your clothes he said why did you do that well out of humility that I'm not God he said send that guy to me so that he will know there is a prophet in the nation I thought the king ripping his clothes is what Christians supposed to do to tell the world we can't do anything turns out the king ripping his clothes is not what God wants us to do it's a false sense of humility God was on the side of a prophet not a king meaning God wants us to face the world and not say what we can't do but to deliver impossible now that freaks me out I'm gonna be honest with you that freaks me out because I'm like I can't heal but why did Jesus tell me to heal the sick Jesus didn't say to pray for the sake he says heal the sick he expects me to produce what's impossible that's why the secret place is so important because a secret place makes impossible possible secret place makes supernatural natural a secret place abiding in Jesus that's what Jesus says abide in me not so that you can do better not so you can feel better not only so that well I could just you know be a little bit happier most of us can be a little bit happier with just $5 raise that's now what the Lord is asking us just to be a little bit improved in our life he says abide in me let me abide in you meaning dwell in my secret place so you can produce fruit you can produce what's impossible that your life will carry a fruit a fingerprint of God things that are not possible the world is expecting that out of us the world is not expecting us to be perfect Christ is not expecting us to be perfect he expects us to produce fruit now let me just remove the pressure the pressure is not on us my friends the pressure is on Jesus in the Old Testament see this whole vine vine and branches story for most of us that doesn't unless you live somewhere in process or sunny side and you have a vineyard like for most of us this is not a store like yeah great we don't have those things planted in a backyard so my dad does but we don't for Israel the story of the vineyard was very similar to them because God many times compared Israel to a vineyard and he would punish Israel for them not producing the fruit Israel was divine and Abraham was the root system the Abrahamic covenant was the root system Jesus comes and he says I am divine the pressure now the father has is on me to produce you guys are just an extension of me I want to let you know the pressure is not on you the pressure is on Jesus and you're the extension of Jesus yes you are weak Jesus is strong but the same thing that Jesus had you have branches even look similar to the vine they're just weaker feeble and they're not the source but the pressure is in Jesus to produce I'm just the extension of doing impossible when our church started when this building was bought many years ago and I remember being a little teenager in in the console of the holy man of God I was is dropping on what they were talking about in the pastor my father and few others were sitting in the pastor presented this idea that you know we need to buy a building and this was about 18 or something years ago and I heard the panic I heard the the worry I heard the but is this the right move we don't have the money to put it in perspective church had no money but that wasn't the problem church had no papers so we actually didn't exist in the eyes of the law we were I don't think we even had a bank account because you can't open a bank account if you don't have the papers so and we didn't speak the language we didn't understand the culture and this church did not have a future from the human standpoint of you and my pastor says that we need to get a building so usually people get people first and then they get the building so people can help to pay for it I passed the duty that are the opposite this was impossible to get a building without money but what was impossible with some time became a step of faith it was risky when we moved into this facility and we were gathering the finances there was another person who was trying to acquire this facility for book publishing and for print publishing company in fact he was Christian and I was told that there were times that our pastor would come to pray here and he would pray here as well to him for him to have a building and for our pastor to have a building the only thing that he did not do that I think our pastor beat him to is fasting is our pastor added fasting he overpowered him and we got the building I'm just kidding I'm not sure that's how it worked but I want you to see that we didn't get the miracle of this facility because we were smarter richer and wealthier is that when you abide you'd expect it to produce supernatural you'd expect it to do what's impossible what's not possible you'd expect it to step out and to do what honestly is out of out of your comfort out of your resources and your possibilities and that's exactly what happened when we got the building it was the greatest miracle for us it was impossible and it became possible and the crazy part is we were not paying for it because around the same time that we started to pay for the building the school government school lost their facility they need a facility to rent they rented half of our facility and they pay twice as much as a monthly mortgage impossible became possible then then there was a part of then there was the part of filling this building that was that was also impossible where for years we've done everything we could so that we could see people come to know Jesus and come and see people come and sit on our biggest conferences we wouldn't pack what we see today on our normal Sunday morning it was difficult it was impossible put it in perspective we've done everything we could from standing with the signs praise God that some of you guys did not come here 10 years ago you'll be embarrassed to be part of hungry Jen fasting was least of our problems fasting we did it like Joel brother Larry knows I sat in waiting he made it you made it about brother Larry yeah through all of that I mean I'm talking about standing with signs on the highway long signs many signs like life like threatening signs like there's not like God loves your signs but like signs like it wasn't raining when Noah was built in the Ark like these kind of signs I'm talking about going to the park with guitar and Arkadeon and playing Russian songs hoping that God will translate them for the English-speaking community that they will get the message that we're trying to save him and they thought we were mariachi band and we're trying to give us some money I'm talking about disco and dancing was very popular and I remember we decided to do a retro meets disco or disco meets retro something foolish like that none of us knew neither what those things meant because we grew up in the Pentecostal house dancing was demonic and so we didn't do any dancing and so we brought a disco ball in the gym and none of us knew what to do with that ball and of course nobody showed up to our disco meets retro and so we pretty much turn on Michael W Smith I think and prayed together and that's about it took the disco ball down and realized that didn't work and so I'm letting you know it was really impossible all of our efforts were were kind of futile from bringing the pig to the sheep to driving a motorcycle the car getting stuck in the lobby to a lot of things that were done spreading flyers so many flies that I almost got expelled from second largest high school in the state of Washington Pasco High cuz I didn't know you have to ask for permission and I put a thousand flyers on the walls of Pasco High and pretty much put staplers everywhere and so a lot of things were done that were it seemed like it was impossible today we're looking at Sunday morning service and we have 30 something people that are coming from all around of United States that that was the size of our youth group and today that's the size of our just one school we have two of them today both of the services are filled to the capacity today there's no service where somebody doesn't give their life to Jesus what was impossible today is possible we are facing another impossible right now we want new building there's a there's a land that's for sale and wrote a hundred it's only one million five hundred thousand dollars it's as big as was the size of when we bought this building was three hundred thousand dollars so the land is what four or five times more it's only 17 acres where this one is about three something acres and and we are praying to buy the land we're believing that God wants us not only to do this here but God wants us to have a facility maybe something that will in the beginning will be like smaller facility six hundred five hundred seats and then it will be you know two three thousand seats auditorium there will be attached to it that we will have a dormitory there for our entrance and our schools that will come in and it will be for generations to come but a million and a half is not is not what this building is worth or you know how much we paid off as I want to let you know today that God expects impossible God expects us to aim for impossible God expects us to dream of impossible he that's actually his standard expectation of a branch you have to understand I with all of my education all of my wisdom if my life would depend on me I can't produce a grape I can't produce an apple I just can't you can beat me you can cut me to pieces but I just cannot produce an apple I cannot produce them but for a branch that is connected to the vine it comes natural you must understand when you connect it to God you must understand when you have a secret place you can dream of impossible you can dream of overcoming limitation you can dream of seeing your sickness being healed you can dream of seeing your addiction being broken you can dream of seeing your back record your bad record to be cleansed you can dream of starting a business you can dream of seeing your children come back home you can dream of the impossible because that is what God expects of those who dwell in a secret place to live in the impossible somebody give God some praise right now if you believe for the impossible with us give God some praise right now if you believe impossible is simply impossible give God some praise right now thanks be to God thanks be to God hallelujah hallelujah hallelujah we thank you God we thank you God that's why we believe the sick will be healed that's why we believe the captives will be delivered that's why we believe that backsliding children will come home that's why we believe that divorce is not the solution God has a solution it might be impossible it might be impossible but God says you know what impossible is it's just two words impossible God says I am possible God says I can do it I can help you some of you sitting here I'm looking at your faces and I'm remembering the stories of how your situation was impossible I'm remembering Brian you know with you those four time and that was impossible and he's few months away to finish his bachelor's today because the impossible becomes possible I remember other couples other couples who lived in fornication who live not being together but one person got saved the other person got saved and today not only they're a wonderful example to their family but they're leading different teams at church because impossible becomes normal my friend you may say well that this is all great you know feels like you know Tony Robbins just encouraging them I'm not I'm not preaching positive Christianity this is not about hype this is about faith this is not about positive thinking this is about cooperation with Holy Spirit we're not preaching positive thinking we are preaching faith even say what is the difference Goliath had positive thinking he was very positive very positive there was not one negative thought in him and well he had no reason for to be negative he was very tall and he was very strong and he had a very good record but all of that positivity did not have power against the forces of darkness David was also positive but David was in partnership with Holy Spirit we are abiding in Jesus we have a secret place and that secret place is not only so that we can feel better so we can become pious or religious it's a secret place so that we can attempt to do the impossible I believe God is expecting the church to make the same statement Jesus made if I don't do the works don't believe me imagine what happened if we would say that if nothing happens here they cannot be explained don't trust Jesus that's what Jesus said we're His extension I believe God wants us to believe for impossible that's why we believe for the sick to be healed that's why we pray for the captives to be delivered that's why we stand and we believe for those things that are impossible for them to to find the solution Jesus says every branch in me that doesn't bear fruit and at verse 2 chapter 15 he says my father he lifts up I used to be intimidated by this verse because in the way I grew up this was presented like this that if you are in Jesus and you don't bear fruit God cuts you off and I was like oh that sucks you know I mean like if I don't produce Christ likeness God comes in and so you're like man and so you will always you always had this pressure like oh my God I really want to perform why I don't want to burn in hell but in here that's not what this means the word lifts up in or takes up in the original language means to elevate to lift up and most of your Bibles it will use the word decided lift up it what happens like this is sometimes a branch on the vine it's actually connected to the vine it has all the sap flowing into it but somehow it finds its way to the ground and the owner doesn't come and cut it the owner comes and lifts it and ties it to something higher I believe if you are here today you are in Christ and you have a secret place but you're under the ground of impossible situations you realize you're not producing impossible you're in the dust you're not producing anything you're overwhelmed by the problems of life I want to tell you Jesus is not here to cut you he's here to lift you up he's here to encourage you the only people he cuts away is those who don't want to abide in him because they themselves cut themselves out Jesus doesn't condemn he motivates he encourages he inspires he says listen I got you I know you can't control your anger but let me do it with you I know you can't change your attitude but let me do it with you I know you cannot change your kids but let's do it together abiding me let's let's get you off the ground let's get you off of the guilt let's get you off of depression let's get you off of condemnation let's get you off of all the things that you've been biting the dust let's lift you up to my word let's lift you up to my promise let's lift you up to what you can't do through me because I live inside of you don't be on the ground I want you to be on the post I want you to be on my word I want you to be on my truth if you recognizing you surrounded with impossible but you're not conquering impossible Jesus wants to lift you up right now he wants to lift your situation he wants to lift your spirit he wants to give you a new attitude my friend it's a choice a lion is not a king of jungle because a lion is the biggest elephants are bigger than a lion yet a lion is the king of jungle lion is not the king of jungle because the lion is the smartest half of other animals are smarter than lion lion is not the king of jungle because the lion is the fastest cheetahs are faster than lion lion is not the king of the jungle because lion is biggest better or faster or smarter the only reason why lion is the king of jungle is because the view lion has of himself when lion walks into a jungle he sees everything as food when other animals look at lion they see him as an eater let me ask you a question it's not about your education right now it's not about your connection it's not about your appearance and it's not about what you've been what you've done and who you've done it with the question is this what is your view of you it's not how the society views you it's not how your husband views you it's not what your wife called you it's not what your parents labeled you it's not what people said you are what is you say about you and see some of us the view we have of ourselves is we are on the dirt we are on the ground and that's why it limits the secret place is not able to produce the impossible out of us because it's limited by the mindset we have of ourselves and God wants to take the lid off and says don't view you through you view you through me view you through the cross view you through my promise view you through the Calvary make impossible and impossible will become possible my friends if you stop viewing you through view but through his cross and through his promise what the secret place does for me is that is it takes the lid off of me and it lets me expect impossible even when that impossible is just not possible for me to write a book and the second book is coming out in about a few weeks I have high school diploma okay I don't have college degree but I have people who have college degrees I can write it they can edit it and proofread it and and we have people that are very educated the work on our on our staff and I'm very very honored them way better than them and you know for somebody like me to do to do what I do is impossible some of the people that knew me 18 years ago they said that's that's not you see that's exactly what God expects out of you and me it doesn't mean that you have to be an author it doesn't mean you have to be a businessman it doesn't mean but but something you have to do that is not you because the Holy Spirit doesn't make me better than you he makes me better than me he changes me he makes me do what's not possible because to him his grace flowing his sap flowing you're not called to live a busy life you're called to live a fruitful life see without the Holy Spirit you will be busy but with the Holy Spirit you'll be fruitful God doesn't want us to just be busy God wants us to be fruitful meaning produce what's not possible by human strength by his grace can somebody say amen amen well that was my point one I think that's good for today every impossible situation has to bow their knee to Jesus Christ this has to be our hunger and our appetite we don't bow to the impossible situations impossible situations bow to Jesus Smith Wigsworth was sitting in one house and and one guy had two legs amputated and it wasn't like we have artificial legs today with our you know they actually look you know somewhat decent you won't be able to see the difference they was very obvious that the guy had no legs and it wasn't all pretty and Smith looks at him and he says I want you to go tomorrow and buy yourself new pair of shoes the guy looked at him said are you insulting me you know he didn't say anything back because it was Smith he went to sleep and he was just went to sleep offended he says Lord how dare he tells me to buy a new pair of shoes I have amputated legs I don't need shoes number one number two is that I I have already these little artificial things and he hears the Holy Spirit in the sleep in his before he goes to sleep says he told you just do it next morning he goes to the store and he says I want to buy a new pair of shoes they ask him what the size is he gives him the size that he wants and the guy looked at his artificial legs and he said is this for your friends or is it for me he takes the leg he takes the shoes and that's according to the eyewitness testimony is I've read the moment he takes the shoe is artificial legs he takes the shoe and as he puts on his artificial leg the artificial leg turns into skin muscles blood and bones becomes real leg he takes it on a second one it becomes real leg you may say but that's impossible so is walking on water you may say but that's impossible so is cleansing 10 lepers that's impossible so is being born blind by Timaeus and then your eyes open you may say but that's impossible so is the dead Lazarus who died is impossible I want to tell you something Jesus says and the works that you that I do you will do even greater I want us to have an appetite for supernatural an appetite for impossible why because with God nothing is impossible today is the day my God wants us to hunger for the impossible situations to bow their knee to Jesus for us to see thousands locally and millions globally for us to see people from all four corners of the earth not only to come to hungry Jen and be equipped watch and be blessed but to receive Jesus to find healing and to find deliverance impossible to bow their knee to Jesus hallelujah we are in this room today what I want us to pray for today is I want us to pray for our next step which is difficult but not impossible without God is I want us to believe that as one day it was not possible for us to have this building as one day for many years of attempts it was not possible to fill it to believe that God will give us a really beautiful land that will be paid for they will have the favor with the city and the permits and that one day will step in the new phase there will be a beautiful facility where there will be a school where people will be able to come and live there and then it will be a bigger facility that will build there for the glory of God it's not just for us my friends we can stay here just fine but it's for our children it for our grandchildren it's for thousands others who are still don't even know they're lost like some of us in here today you didn't even know there is hungry generation didn't even know anything about God but somebody was dreaming somebody was aiming for the impossible they made room and today you and I are here and we're gonna do exactly same thing for the next generation we're gonna do exactly same thing for so many others that are yet to come that are yet to receive Jesus I want you to rise to your feet


Can I have this one? Yeah. We got the baby wipes in there. No! They're over the baby wipes? Come on. We're having you on the flight today. How's it going? Bro, we out here.   I was like, in and out, in and out, in and out. Really? I can see you. What's up, baby? How you doing? Nice jacket, bro. Yeah, it's good for the four of you. Yeah, let's do it, man. Are they Asians here? Have they seen people like me around here? Have they really made shirts? That is a sick view of a mountain. So we're high altitude, huh? Yeah, that's how it is. It's like we're tired. What are you doing over here, bro? I'm trying to make some money while we're waiting for the car rental, bro. We're trying to get some verbal here. I was trading on the plane today. How long was the flight? Two hours. Five hours, like one hour delay. Are we trading today? IMPP. How we doing? It's good short. I saw that IMD went up to 30. Yeah. This should have gone up to 34. Check out this, George. I got the exact club you bought on the way. With that PR? Well, this is day three. Everyone thought it was over. You signed? Oil went up last night. It went up like crazy. This ship went up like crazy. This thing moves on oil. Oil keeps going. Right, right, right. Plus, it helps everyone because we get to meet people who we've never met before. You guys do editing for a bunch of different types of people, too, not just traders. Alex, these have been your editors for how long, though? Two and a half years, right? You've never met, right? We met in California one time. We had a big house in the hills. Any moment he gets, we're whipping out the left. That's not bad. We got Lamborghini. Oh, we got to take the black, guys. You got that? You got to take the black, Alex. Is that Lamborghini? Yeah. We can take that. $400 a day, yeah. What are we paying now? They're both about the same. Yeah, we got more black and white. Oh, do these? Oh, wait a minute. Let's take this one. All right.  I'm still connected to the airport with Wi-Fi and beer. Yo, so we just left the airport. It's been about 20 minutes. My NDO is around, what, $32, $33? Now it's trading at $47, bro. That's crazy. $47. Where is it? Where is it? Dude, that is going insane, dude. Insane. Oh my God. I'm assuming it halted today.  Wow, 260. IMPP finally followed. Let's see what happens. That's the hotel here. Waiting for Bal to get ready. We're going to get some Argentinian food. We don't even know if Bal likes Argentinian food, but we're going to see. We're going out with the editors, huh? Yeah, so you guys are editing this video right now. We're going out with your boss. Let's go, baby. There he is. There he is. In the last vlog, I had the blue jacket. This one, Bal. Yeah. We're going to get both of them, bro. Alex, you need that steak. Big time. Can we throw in the tamag? No. Oh, we have to take two days ahead of time. No way. What? Yeah, boys. Cheers. All right, guys. How was it, bro? I'll sweat it, bro. What's the weather? 50 degrees. It's not bad. What's the low though? 46. I think we got the best editors in the world, baby. I'd love to see all of y'all do close up. We're like, where do you have to edit my videos for years?   I'm bad at repetition. Hey, if it's working, keep doing it. Yeah. Don't change it up yet. It's all right. It's 9 a.m. here in Utah. Me and George just woke up. We're going to get breakfast. Turns out that bow already got breakfast twice. This is going to be his third time. Yo. Third. What's going on? Literally.  Dear Creek State Park. On set. On set. With the MIC boys. Yes. Put a 7-Eleven that serves that goal? Yeah, but I did, bro. I think I have to go to a state-run liquor store. What are you thinking? What are you thinking? I don't know, whatever you want, man. You think I'm hard? I'm hard.  I'll make do for now. What are we thinking? I think black cherry.  You got to get this top ramen. We don't tell him until we get back. Should we get some stir-fry, too? I think the stir-fry is more Asian for us. Stir-fry. That's amazing. That's amazing. We're cooking with alcohol. Oh, there's no hardly a Christian? No. Oh, it's on the way. Commonwealth, see? Commonwealth consulate spirits. They're all... They're all owned by the state. I know this. I know what alcohol is. They paid for you. I was like, they bought me white cloth. Good. Gosh. Glass is going to break up in the back. Yeah, yeah, yeah. Can you do it with this? Oh, yeah, yeah. I'm not Asian Asian, but I'll try. Oh, so... Wait, I don't know if you're doing that, right? I don't know how to do it, right? Hold this, hold this. Yeah, you get George here. All right, hey, hi there, dude. Is it recording? Yeah, yeah, no, baby. All right, man. No! I think he's where he's now. He's taking the car. Why don't you just get one bottle? Here, here, Alex, I found it. The 1942? One night. And you can't take this on the plane back with you.  They're going to the liquor store. And I wanted to go to the mall. Look at the name, man. The liquor store. Makes it look like a jail. I don't know why I drink. Oh, you got it? Damn. Alex, you don't want to swim, all right? You don't want your driver to get drunk. I appreciate you keeping it safe. Cheers.  What an animal. It's so cold. Ooh. Wow.  Set up tonight. We have goodie bags with our limited edition t-shirts. If you didn't get one already, you should get one. First of all, I want to just start off with our co-founder, Mr. David Ruffalo. Go from outside, you can talk, and even outside of the country, to take the time to be here. So thank you guys so much for being here. Yo, it's been a good fight over, huh?


Hello, I'm Hannah Blythen, Welsh Government Minister for the Environment and I'd like to wish you all a very happy World Water Day. This year's World Water Day theme is Nature for Water, which looks at how nature can help us find solutions to the water challenges we face.


So Cattle has started as an open source consultancy and that's what we do, open sources is about what we do and that actually brought us to Moodle. We do a lot of other things as well including infrastructure design and just general software development. Open source we believe is the best tool set to satisfy our client's needs and it gives us, it's our point of differentiation and we sort of, we ideologically believe that OpenSix technology is better as a technological source and you know there's some strange perceptions about open source out there but you know one of the things we like to remind people that the whole of Silicon Valley was built on open source technologies.


Hi, I'm Specialist Cody Ziegler. I'm with 23 Infantry at Joint Base Lewis McCord, Washington. What we're doing today is we are mopping up the black. We're going 100 feet in and making sure it's all cold, so it doesn't jump the line. We're also doing hose lay so we can get water basically just to suppress the fire. My job prior to the military was I was on a Type 2 IA crew for Miller Timber basically fighting wildland fires. I was a soiler and a pre-logging too, so I had a lot of experience with the saw. With having that past experience from Specialist Ziegler, that's a huge additional asset to helping us out identify some of the stuff that we don't know. I left Miller Timber around 2019. That's when I joined the military. I wanted a new experience. I wanted to build myself. I'm able to help the guys on what to do, what to look out for, make sure they're safe. It means a lot for me to be out here with my team and to help the community and the people that were affected by the fire.


Hey everyone, it's Gabrielle with Oxmerotic Group here today at Oxmer Toyota for Facebook Use Vehicles of the Week. So I have three vehicles. Now all three have a clean car fax and they had one previous owner. So let's go over some details on this first one. This is a 2017 Honda Pilot. It is a Touring and it is all-wheel drive. The exterior color is in a white. So the vehicle in the interior does have the DVD Entertainment System. There is navigation. The vehicle has heated seating. There is a sunroof backup camera that interiors a black leather. Mileage on here is $18,607 and the price is $35,551. Moving on to our second vehicle. This is a 2014 Jeep Wrangler Unlimited Rubicon. The exterior color is in a orange. Now this vehicle does have a three-piece hard top. There is the UConnect audio system. Vehicle does have heated seats. Also has new tires and there was 17-inch alloy wheels on the exterior. Now that interior color is black. Mileage is $29,323. The price is $32,558. For our last vehicle, this is a 2014 Ford Edge SEL. Exterior color is in a white. This vehicle does have 20-inch chrome wheels. There is a backup camera, Bluetooth. Also has a sunroof. That interior color we're seeing is a medium light stone. Mileage is $62,867. The price is $16,680. If you guys have any questions, please feel free to let us know. Also, check out our new Express Store on the website. I will have a link to this, but if you have any questions, please give us a call. Phone number is<PHONE_NUMBER>. Thanks guys. Bye.


Yo, hey, yo, hey, yo, yo. Pack the chrome style, fly like Mrs. Jones. Lyrical mathematics will have the devil smoking stones. I put heads to bed, lick shots, and rap was fed. Hey, guys. Sorry for not being Pittsburgh, as I said.  I'm actually in front of the courthouse right now because Smooshu's boy, Three Fingers, and this guy, Jesus the Goose, they got popped last year for passing bad checks. And so they asked me to come in as a character witness for them. It's not looking good in there for them. That's their problem, not mine. So I figured let's come out here and do the class lecture. Let's talk about databases. So for today's class, we're going to be talking about sort of an overview of what these sort of modern query engines or these modern OLAP database systems look like at a high level. And that'll then set us up for how we've progressed through the various topics throughout the rest of the semester. So this is a high level outline of where we're going in this course. And I didn't want to bring this up last class because I wanted to spend time talking about the sort of historical overview of the state of the database. So to understand why we're at the point where we're today and we're focusing on the relational database systems. But this is a high level architecture of the roadmap of how to build a modern OLAP database system. So we're going to first talk about storage, essentially how are we actually going to represent data on disk, compress it, maybe build some indexes that we can use for accelerating query execution. And then we'll use all that storage ideas about how we want to store the database. We'll then spend most of our time discussing how we actually want to execute queries on this data. So we'll talk about processing models, how to schedule queries, the tasks within them. We'll spend a lot of time talking about how to vectorize execution, taking advantage of SIMD, query compilation will be another major theme or method we can use to speed things up. We'll spend a lot of time talking about different join algorithms. And something new that we'll discuss this year that I haven't discussed in previous years is materialized views. The full emit materialized views is actually something I know the least about in database systems. So we'll spend some time on this. And then we'll talk about query optimization, how do you take a query plan, convert it into SQL query, generate the query plan, how to design sort of modern networking interfaces. And then the rest of the semester after that will be doing a analysis and deep introspection into real systems like the Snowflake system you guys read in today's paper, but also BigQuery, Spark, and a bunch of other modern systems. So this sort of layer diagram showing here is very similar to what we discussed in the intro class, where it's essentially the system going from the bottom up. You're going to build these different abstraction interfaces and they'll expose an API that we then integrate with to the layer above it and then to the ambient, the client interface will be exposed to the application. So this, going for the next three lectures, four lectures or so, we'll focus on the storage layer and then that'll then define how we actually want to... what API will have exposed to us when we run queries. Okay. So today's execution, as I said, this is a high-level overview of what modern OLAP systems look like. And so we're not going to go too deep on, like, what are the algorithms you do for the queries because that'll also come later. And this class isn't necessarily about distributed databases because I want to spend time discussing, you know, what are the modern techniques of what we do on a single node to process data and then we'll layer on top of that the distributed architecture. But it's good to understand a little bit of what a distributed system would look like in the modern OLAP system. So, you know, to understand the big picture where we're going, but it really is, as I said before in many other classes, we need to get the single node system to be high-performance and super-optimized first before we make it distributed. Like, making a database distributed isn't this magic wand or magic solution that solves all the scalability problems.  So, we need to nail that down first. And I'm going to spend a little time talking at the end about this bigger trend about the commoditization of the components of these OLAP systems. So, we're most of me talking about systems like Snowflake and Spark where there are these monolithic systems that are all where the vendor has implemented all the bits and pieces of them. But there is a trend now where people are trying to build sort of standalone pieces of actually the layer diagram I showed before. And in theory, one could then put these things together at a later point to hold that whole new OLAP system. But we're not entirely there yet, but I'll talk about some early work in this space. All right. So, the first thing I understand what does a distributed query look like in a distributed database system? And I will say at a high level, it's essentially the same as you would have in a single-node system, right? SQL query shows up, you run it through the parser, the binder, the optimizer, and so forth, and it'll generate a directed, a cyclic graph of physical operators where you have these physical operators, the scan, a join implementation, and they're taking some input coming from its children operators, doing some amount of computation on them, and then passing that along to its parent operator. And so, the fact that these operators may be exiting across multiple nodes versus all running on a single box, a single node, at a high level, again, there really isn't any difference. There's the orchestration of the tasks and so forth, but that's sort of outside the scope of what we're talking about right here today. Like, at the end of the day, there's a query plan. We break it up into tasks and we distribute it across nodes. It's no different than taking a query plan, breaking up the tasks and distributing across cores on a multi-CPU box. So, all the operators that we had before, there's a single node system, table scans, joins, and aggregation sorting, all of these exist in an distributed system. So, at a high level, it's going to look like this. So, say there's going to be some notion of a worker node, and the worker node is going to have a CPU, it's going to have local memory, it's going to have local disk. And say if we go from sort of left to right in the diagram here, we're trying to execute a query, each of these nodes are going to be responsible for taking some input in, doing some computation for the operator that they've been assigned for a given task, and then producing output as results. That then either goes back to the client or goes off to the next worker nodes. So, say we start at the very beginning, say this is the bottom of a query plan and we want to read what we'll call persistent data. So, the persistent data is going to be the underlying tuples of the tables that are defined in the database. So, these are going to be some files that are going to have data that we know how to interpret their types based on some scheme information in the catalog, and we know how to access that and scan it and do something. And so, I'm not showing this diagram whether the persistent data is local to the worker node or it's some shared disk architecture or object store which we'll cover in a second. For our purposes here, it doesn't matter. So, again, we've taken the persistent data, we're doing some kind of scan, and we're going to produce some amount of intermediate data. And then we now need to ship this intermediate data to the next stage of the query plan which either could be on the same node or a different node. And so, one of the ways we can do this is through what is called a shuffle operation where after we do some operator, we would pass along this intermediate data to another set of nodes that are going to distribute the results based on some hash key or some range partitioning. And then there'll be some other worker nodes that can then pull that data from these shuffle nodes. Now, I'm putting the shuffle node phase as optional here because I don't think Snowflake does this with explicit nodes, but BigQuery and Dremel do this. So the idea is like these in-memory nodes that are... These shuffle nodes have a lot of memory, so they try to keep everything in cache without squaring the disk. It's a way to sort of redistribute things. And I'm also showing here there's a sort of one-to-one correspondence between number of shuffle nodes and worker nodes. It doesn't necessarily need to be the case. You could fan out or fan in at this different stage. But again, it's just a way to get the intermediate data from the previous stage to the next stage and if necessary, redistribute it on some new partition key. And then this next worker node does additional computations. It has more intermediate data. It says it's a shuffle phase or not, it doesn't matter. But now it descends it to this other worker node who then does some final aggregation of coalescing of the data to produce the result of the application. So again, there's nothing really... There's nothing drastically, dramatically different than how we'd execute a query on a distributed system versus a single-node system. We just may have to do... spend more time doing data movement, which nowadays is actually not as bad as it used to be. It used to be that the hierarchy was that the network... Going over the network was always the slowest, then reading from disk was the slowest, and then memory... The networks have gotten really fast now. And especially in the case of BigQuery, they have accelerated... They have hardware acceleration for these shuffle operations. So in some cases it's actually faster to send things to the network than read from disk. So this shuffle phase is not always a big deal. But the main thing I want to sort of expose here is this notion of persistent data and intermediate data, because that's going to depend on... Or that what we actually do with these different types of data is going to depend on what the architecture of... whether it's a shared or not shared disk system. So this taxonomy between persistent data and intermediate data comes from the scientific paper that you guys read. And they would call if persistent data is the data that's going to call the source of record for the database. So if I insert a tuple as part of bulk loading some data or copying or insert operation, I expect that tuple to reside in these persistent files and the persistent data. So in a modern system, we're going to assume that the persistent data... the files of persistent data is immutable. And that's a dramatic change from how people designed or assumed data systems were built from the years past because you assume you're running with a local disk that you can read and write as needed. But in a modern cloud setting where you're running on an object store or even if you're running on an early predecessor like HDFS, those file systems were... some of them were appended only and you couldn't do in-place updates. So in the case of a modern lab system, they're going to assume that these files are immutable and you still have to support updating them and you have to maintain some metadata to keep track of whether something is... whether a version of a tuple has been overwritten by a newer version of something. But we'll come to that. We'll talk about that in the next class. And then the other interesting part of this effect is going to be these... what we call intermediate data. And this is the output of the operators that we execute in a query plan that we then need to send along to the next operator in the query plan. And this actually can be a lot of data. And in the Cineflake paper they talk about how the amount of intermediate data that a query would generate has little to no correlation to the amount of persistent data they're reading, meaning the table could be really, really small but then they still end up producing a lot of intermediate data because of some computation that they're doing. Or it could also be... it's not correlated to the execution time. So if a query takes a long time to run, that doesn't necessarily mean they have to generate a lot of intermediate data. So this intermediate data is interesting because it's... it's... it's... you need to move along as fast as possible but you don't need to necessarily need to worry about durability, fault tolerance, as soon as you finish the query, the next stage is going from operator to the next, you immediately throw it away. So the paper talks about how the sort of trade-off between deciding what the spell and disk, persistent data versus intermediate data. And it was often the case you want to keep intermediate data in memory as you move along. So we need to talk about what the system architecture would look like in a modern OLAP system. And there's a couple of ways to think about this but the end of the day is there's the... how it's going to move data, or move persistent data to... start beginning the execution on the persistent data, like start scanning it, and it will determine also where it's located. And again, in the intro class we talk about this like sort of a shared nothing and shared disk or just push the query to the data, pull data to the query. We talk about these things as being very... these mutually exclusive, but it's actually not the case, especially in a modern... platforms where systems don't clean divide along these lines, they actually do a little bit of everything. And so we can understand sort of the trade-offs and the applications of these approaches. So the first thing I'm going to say, again, if we want to start reading persistent data, how should we begin that process? And then as we move from one stage to the next that we execute operators, how do we transfer or what do we transfer for the intermediate results? So first, just talking about like how do we begin the execution things or the movement of data. The two choices, again, pushing the query to the data or pulling the data to the query. And this, again, these ideas aren't new. They go back to a lot of the work that was done in the late 80s, early 90s on some of the first like parallel distributed data system architectures. And the trade-offs of understanding these things, I think have changed in modern times just because of honestly the how much hardware has gotten better, especially the proliferation of cloud services like object stores. Where maybe things in the past like shared nothing and was the dominant architecture that would assume that was the best approach and it was always logical to push the data to the query to push the computation where the data is located. But now that's not always the case in the cloud. So the first thing is again how we want to initiate the process of executing portions of a query on a database or on data. So the first approach is to pushing the query to the data and this means that we want to move as much computation as we can to the location of where data is located. And the thought process here is that the cost of executing some portion of a query where the data is located was always going to be much cheaper than the cost of transferring the data to some other compute node. So again think about it, I have a disk on one node, I have a computation on another I'd rather send the query to the data on the disk that has the disk where it's located than have to transfer it out because the net cost is so high. The alternative is to pull the data to the query and this is where the query is, you leave it at that computational resource and then the data needs access, the data needs access, you transfer it over to that node. And this can be necessary in a situation where you can't run any queries, you can't do any computation where the data is located. If I have a remote file system and I can't run anything, I can only do gets and sets and deletes you'd have to do pull data to the query. So as I said the hardware has gotten much better in recent years where this isn't always the best design choice. Pull data to the query because now again the network in cloud systems is pretty fat. The other interesting thing also too is these aren't always mutually exclusive anymore because there are some cloud object stores where you can actually push some computation to the data, even though you wouldn't think you'd be able to do it. So on S3 they have this select operation where you can do something that sort of looks like a pseudo-sequel a pseudo-sequel with a where cause and you can send that to and to do some initial filtering directly in S3 so that you're only now trashing the data that would satisfy your where cause. So again the idea is that I do a select state that I can maybe send a portion of the where cause to S3, S3 knows how to natively understand CSV file, JSON, or parquet files and then do that filtering and then only send back the results that within the rows that satisfy it. So that's actually pretty powerful now because that's basically pushing the data to the query, but not all of the query, but at least enough where you could get a big way of doing some filtering. Microsoft Azure Blob Storage has something pretty similar where you can do something again that looks like SQL to do some initial filtering. I don't know what file formats they support, but the basic idea is the same thing. So again just going forward we're going to be using pull data to the query for the lower portions of the query plan, like the access methods of scanning the tables, but then we're probably going to want to be pushed but as we go from the intermediate phases it's also probably pushing data to the query as well. So now we want to talk about the two high level approaches for better attribute assessment. Again these aren't this one is actually pretty this is pretty rigid this is how this is a clean dichotomy for systems today, but the first type of architecture is the more traditional one where people think of distributed database systems is a shared nothing system and this is actually a phrase or term coined by Mike Sternbraker going back to like the 1980s and again the idea here was this was presumed to be the better way to build distributed database systems for decades up until maybe 10 years ago. The idea here is that each is going to have its own CPU its own memory, its own locally attached disk, think of like MVME and the only way that nodes can communicate with each other and see other portions of the database is to send messages over the network. So like if I'm running on one node on the left I need to access data on the right I just can't peek into its disk I got to go send a message to say hey send me that data and so the database is going to have to be partitioned into distribution subsets across these nodes, sometimes called shards where each node will have a sort of unique portion of the database of the tables and ideally you would have to pick a partition key that reduces the amount of data transfer you have to do when you do joins we'll talk a little bit about this next class which is historically a very hard problem to do but it does make a big difference the challenge is going to be now that since the storage is tied to the compute I can't easily add either more capacity at the compute side of the storage side without bringing in a whole new node now if I bring a whole new node I got to do repartitioning to move data around to balance things out so again we'll discuss the implications of this so each of these are also going to be when I say I know this I mean one of these things the other thing too is that because data is considered local like with the locally attached disk traditionally a database system will access the disk using a POSIX API or an NVMe like it'll be a sys call to go read data directly to the disk yes there's the you can do kernel bypass which the storage data playing kit from Intel that's a nightmare we'll talk about that later on but in general we're using POSIX to do reads and writes to the local disk and if I need to send things over the network to a community with another node I make the perfect calls to do that as well the alternative approach for distribution is called shared disk and with this one now we still have on every single database the database system node they'll have their own CPU memory and disk but that disk on each node essentially just a cache and that the persistent data the persistent files of the database system is going to be down on this separate storage layer so at the top here we'll have the compute layer this is where we're going to execute queries they can communicate with each other over network over the network but their storage is essentially used for ephemeral data either as a write through cache in case of snowflake or a holding area or staging area for intermediate data but the node is essentially stateless meaning if it crashes the compute layer, if a node is stateless we don't lose the database because that's all stored down here in the storage layer and the storage layer essentially looks as one giant disk it's not entirely true in an object store because you don't access it through a POSIX API you use a user space API that the cloud vendor or whatever the object store they would provide so and the reason why this matters instead of using the POSIX API because if it's a POSIX API the database system is not aware of maybe the different physical locations of the data you would have different file paths and so forth like that but the database system it would just see here's some file system I can read and write to and maybe not understand or could not push down the selects the filtering stuff that we talked about before if you're using a POSIX because there's no way to do hey read this but also filter some stuff for me down in the storage layer just to recap everything the two choices we shared nothing and the pros and cons of this that it potentially achieved better performance because the each database system node if it's accessing only data that's local to it it'll be it'll perform better because there's less data movement potentially between between the nodes and as said with modern NVME drives with PCI-E 5 or 6 those things pretty fat pipes that you can get but modern networks are pretty good the two days too so traditionally it was always going to be faster to read from local disk than over the network but it's not always the case these days but the big challenge is going to be hard to scale out capacity actually in both directions up and down but I can't add new nodes without shuffling data around to sort of rebalance things, repurchase it and I can't take nodes away without doing the same thing with coalescing now with a shared disk system in a modern setting in the cloud the great big advantage is that we're going to be able to scale out the compute layer and storage layer independently meaning if I find myself being CPU bound on my nodes then I can add new compute nodes because they're stateless I don't have to do I don't have to move a lot of data around to rebalance things now again the snowflake paper talks about how they use consistent hashing it changes the assignment of what files are processed from persistent storage layer to the new nodes but you're warming it up and it's telling you here's the data and you start processing it's not like you have to always copy things from one node to the other if you want to do that safely it requires you to use transactions it's a little bit more complicated so the other nice advantage too and this matters a lot for database systems that want to claim that they're serverless I can shut down the compute layer the portions that I'm not needing the nodes that I'm not needing if I'm not exiting any queries and the data doesn't go away right again in a shared nothing system that's tied to the storage if I shut down a compute node that portion of the database stored in that node is no longer accessible whereas if I shut down a compute node in a shared disk system the remaining nodes can go get data from the shared disk no problem so in a service environment this can make a big difference because you can shut down idle things and then the last one is the disadvantage we talked about the over-tree persistent data that isn't cached locally in the compute node I have to I have to pull it from the shared disk layer, the storage layer and maybe I can do some early filtering that we talked about from Amazon or Azure but that's not always the case because it depends on what the filter is actually you want to do like you can't do complex regex or execute a UDF on S3 they're not going to let you do that so our focus going forward the rest of the semester we're going to focus on shared disk systems now for some of the algorithms we'll talk about it doesn't actually matter the joint algorithms they don't know don't care whether it's reading from shared disk or shared nothing system because at that point of when you're actually computing the join you've already scanned the table and fed it into a scan operator so it doesn't matter where it came from just in the back of our minds we're going to be mindful of that okay we should think about okay if I'm scanning this table or scanning data what does it mean to be coming from S3 or an object store so as I said before traditionally the in a shared disk architecture it was assumed that the storage layer was the storage layer would be some dedicated on-prem appliance or storage device or NAS that expose like a POSIX API that you could read and write to in the more high-end systems like oral exadata they do use a storage appliance these racks sort of look like this you have a computer and a storage layer but the data system is aware that it's talking to a special storage appliance and it goes over a Fiverr channel and it's not making POSIX calls to read data sending proprietary commands and they actually can do some predicate pushdown in these systems but the system, the environment we're going to focus on as I said is the object stores because this is how everyone's building these modern OLAP systems around the cloud and the nice thing is that they're infinitely scalable put that in quotes obviously but like you know as long as your credit card has enough money on it you can keep putting as much data as you want in Amazon S3 and the local Adelaide stored for you with pretty high guarantees and durability same for Azure and GCP's cloud storage so you no longer have to worry about provisioning storage appliance storage space like you would have to do in an on-prem system you just keep throwing more and more data in your storage layer and you know and you don't have to scale a compute layer separately either you just keep putting more data in so these object stores what do they actually look like so they're only going to expose you a pretty simple API we talk about Amazon select but in general they're going to have three commands put, get and delete and so what happens is you have your data that you're ingesting you're going to break them up into these large immutable blocks of data these files and you're going to do a put to store it in the object store and then you'll have some catalog that will keep track of some file ID is found at this location in the object store so we'll talk more about what these these files look like next class but in general they're going to be some binary format for a column store in a columnar format it's going to use a Pax layout where within each block the attributes of the table will be broken up in a columnar fashion but all the attributes for a single logical tuple will be found in that block and this is different than how like maybe the Vertica store files sort of data where you would have a separate file for each column at a table with Pax you basically have all the data within a single attribute in the single file so the data sometimes the footer like in parquet will contain metadata about the offsets of the file for where columns start what kind of compression schemes are using for the different columns because that can change per per file sometimes there's pre-computed indexes to do filtering or zone maps again these are things we'll cover later in the semester but you would store all that information within the file itself in the object store you would make a request on the object store just to retrieve the header of the of the file block and then that'll get all that metadata about where the columns are located and what kind of compression schemes are being used and then you can then do selective get's just to get the byte ranges of the data you actually need so you don't need to bring in the full page or the full block from the object store and then parse it you can just bring a little bit in figure out where you need to go to get the rest of it and retrieve the minimum amount again that's different than what we talked about doing disk I.O. in the intro class where we'd say every page is 8 kilobytes or 4 kilobytes you go fetch the whole thing even though you only need a portion of it you can be a bit more intelligent here because the blocks are larger and you obviously don't want to retrieve the whole block I think in snowflake I think the lowest is like 50 megs maybe goes up to like 100 megs or something like that these aren't small blocks these are pretty big so you don't need to fetch the whole thing if you don't need it so one interesting system I like to bring up is yellow brick so this is actually a slide from a talk that gave with us during the pandemic a few years ago but it shows just sort of how they're using the object store with S3 so again this architecture looks a lot like what everybody shared you you have these worker nodes you can fetch NVME SSD so it's interesting about yellow brick is that they talked about how they tried using Amazon's S3 library the access library to communicate with S3 and they found it was super slow so they wrote their own library and they were to get a 3x performance using retrieving the same data from S3 instead of using Amazon's so I'm bringing this up just to say that you don't have to use whatever the cloud manager provides you for the client side libraries you can write your own thing and potentially get much better performance I forget what the secret they used here they might be doing they might be doing kernel bypass to get through the object store again you can do this on the client side you can't do it on the server side because Amazon controls the server but another cool thing they were doing is that they would communicate between UDP with the Intel DPDK which is the data plane development kit it's a way to do kernel bypass on talking from the NIC which is not easy to use all this Intel kernel bypass stuff is super tricky and super painful again we'll cover that throughout the semester alright there's a bunch of other stuff that we're not going to talk about today but we'll start covering these things over the next throughout the semester there's different file formats again I've mentioned the packs layout but we'll talk about different approaches again all this is going to be very highly depressed because it's columnar storage we'll talk about next class how you actually decide how to do horizontal partitioning on your tables and split them up based on values so you can minimize the data transfer between nodes for inmate results then there's a whole process of how you want to do ingest new data like a big part of databases put data in it and so there are there's fast pass instead of just running a search team it's as fast as do bulk loading and get data into the system as quickly as possible obviously you want to be an updater to delete it how do you handle that even though the files are immutable and then we're not going to talk too much about this but this will come up when we talk about data lakes especially with with photon and databases that are on but in a modern cloud system you also want to support the ability for people to have existing files just sitting in S3 like in say in a parkway format without having to first bulk load them to your database system you want to be able to operate directly on the files as they exist so how do you discover that these files these files exist then we'll talk about how you're scheduling adaptivity we'll spend a little time talking about it means that as the query is running how do we maybe make changes on the fly to better utilize resources maybe under provision or over provisioned the tasks or the workers and we can scale that and make changes as we go along again there's a lot of things we're not covering here that are important we'll get to later this semester okay so I talked about this a little bit at the beginning when I make an observation here that the in the snowflake paper you guys read even though it's about snowflake they talk about snowflake does certain things but they make some important observations about what a monitor or a lab system looks like that's why I had you guys read it but the the thing to point out a system like snowflake like Dremel like BigQuery like Yellow Brick like Databricks these are monolithic systems meaning that they're building all the components that that you need for the database these are monolithic systems meaning they're building all the components you need to build a database and entirely in-house with their engineers and most of the non-academic systems that we'll talk about in the semester are going to have pretty much the same architecture right you have a query engine you'll have some storage layer you'll have an orchestrator to move data around or execute tasks, scheduler, some sort right they're all pretty much implementing the same thing and that means basically that we have people where they have companies and a lot of money writing the same database system software over and over again they're writing the same thing to do the same thing and obviously that's a it's a huge labor effort to do this and it may not be in the best interest for the database community broadly speaking to do this right if everybody's running for the same SQL parser what is that actually that moving us forward maybe for a time it would be better spent doing other more innovative things and so there's this interesting development in the last five years or so where you're starting to see various projects of in the open source community or organizations to build to break out portions of a modern old lab system into standalone components that are open source that other people could build on other people could take advantage of and other people could reuse either for well for I mean for their own new old lab systems and again the idea here is that instead of everybody implementing the same thing this all redundant parts of the system lets everyone work together on you know one thing and have that be really really good and everyone gets to reap the rewards it's sort of like Linux right Linux is what it'd be kind of stupid now are insane outside of you know research academia to try to build a new operating system from scratch and to compete with Linux where the sort of eventualism or the mindset is everyone's focused on okay Linux is what we're using let's make that really really good it's not exactly the same because the OS is a major major undertaking where these other parts I'm talking about are smaller but the idea is the same thing right instead of having two people build competing parts that do the same thing let's work together so you see this in sort of four sort of categories and you can sort of see how this is tied to the different layers I talked about in the beginning so there's people building system catalogs query optimizers which is the hardest part of the data system these file formats act as live in an extension engine so I want to quickly go through these different components and just sort of talk about the major efforts the major major projects and just can be aware of that as we talked about the semester for these different engines different systems a lot of them aren't going to use these things but you know they'll be potentially open source alternatives for them and this idea of breaking the system up into reusable components or modular components is not new and so there's this paper by a famous researcher at MSR Surgeon Chargery where he back in I think it was like 19 year 2000 we talked about what they call risk-style database systems now this argument here was built for how to make these different sort of sub-components modular reusable and to make it easier to automate the tuning of them make it like a autonomous database system but the idea of again breaking the system into these separate layers that can be implemented through some standard API is basically the approach that they were talking about in this paper long ago alright so the first thing is the system catalogs and again we'll talk about this next class but system catalog basically is the registry where the data system keeps track of what the schema looks like what tables they have, what columns they have and if there's persistent files where are they located in the object store on the disk and so the way the basic catalog works is that if you're calling and just sort the data for you like an insert query or a copy command then the data system will maintain its catalogs because it's creating the files as it goes along if there's a discovery process as I said where there's a bunch of existing S3 files and the catalog needs to have an API needs a way to be told hey there's these files and you'll be aware of them so there's now several projects where people build these sort of cloud catalogs that essentially again just keep track of what data exists what tables and columns are in these files sometimes there's some basic statistics about what's in them but as I said before oftentimes the statistics are stored in the file themselves so probably the most famous one or why they use one is the H catalog this came out of the Hive project it's a wrapper of the Hive Metastore I know you can use this for Spark I think there's some other systems that take advantage of it and again think of it just like it's like a key value store that keeps track of again the database schema Google has this data catalog Amazon got its data catalog they're all doing this at the same thing the H catalog is actually the only other source one the next is the query optimizers so we'll spend a several classes talking about query optimization but think of these are just generic frameworks where you can define the heuristics or the cost based search rules to do query optimization how to take a some of them actually they'll parse the SQL query for you but then convert it into a logical plan through transformation rules and then run a cost based search to generate a physical plan and so the this is the hardest part of building a database system because there's all these corner cases in SQL there's all these optimization rules that you can apply to do a correlated sub-queries like it gets very messy very quick and the idea is that rather than everybody building their own first crappy heuristic optimizer which everyone does you know in theory you could have a cost based search which is pretty powerful out of the box so the two notable source implementations are Apache CalCyde and Green Plum Orca CalCyde came out of LucidDB LucidDB was a I think commercial system late 2000s that failed but for whatever reason CalCyde was pulled out and was reused getting as a standalone query optimizer which is pretty cool and then the Green Plum guys built this thing called Orca it was designed to be the query optimizer for both Green Plum which is an OLAP system as we talked about last class that VMware owns and but they also built it for this other thing called Hawk which is like their version of SQL on top of Hadoop and so they tried to build a single optimizer framework that could be used in both systems Hawk is still around it's not that people actually use it but Green Plum uses it as well so the main thing is to think about it Green Plum is less known than CalCyde it's written in C++ CalCyde is written in Java and that's more used there's more systems used in CalCyde I don't know which one is more powerful or not they both look roughly equivalent then there's also these source file formats and actually this is a pretty this is a pretty novel idea that is definitely made possible by the amount modern cloud systems so historically, database systems always use their own proprietary data format SQLite, Postgres, MySQL whatever you name it then when they write files to disk it's in their proprietary binary format so you can't take out Postgres data files and read them in MySQL Oracle DuckTV can read SQLite files but it's designed to do that and so the only way to really transfer data or be able to take data from one database system and reuse it or do computations on it and another database system is if you dump it out as a CSV or JSON file so starting in the last decade there was this movement to say let's actually build these binary file formats so we don't have to dump it's like text-based formats like JSON and then we can build libraries for these different database systems to access this stuff very efficiently so these libraries, especially those you're an iterator to retrieve batches of columns from these files you can do some selective scans and pick which columns you actually want and some of them do all the decompression stuff for you but again, you're just like this, the lowest level of the query plan is the access methods so this is probably the 6 most widely used or famous ones in 2013 there was parquet and orc and carbon data came out parquet is probably the most widely used one this is a compressed column format from cladera and twitter it has more aggressive compression than orc whether or not it's faster or not depends on what the data looks like depends on how you're actually accessing it so I can't say one is better than another, it depends on a lot of things but at a high level they're pretty, they're basically equivalent orc came out of facebook's high project carbon data came out of hawaii and as I said I think in the intro class I'm working with a former student of mine and they actually tried using carbon data in all the open source libraries don't compile or don't work I don't have anybody outside of hawaii that uses the carbon data Iceberg is a newer one at Netflix and we'll see a little bit of this in the next class where it's a way to do support updates and schema evolution over parquet files you can do, they have like a deltoid store you can do updates and then apply them to do the parquet files plus read the struggle data HD5 is a much older data format from the scientific community from the late 90s this is for multi-dimensional data again I don't know of any sort of commercial database system that uses HD5 HDF5 it's primarily used for, as I said scientific calculations, scientific instruments and then Apache Arrow is a memory column format that's designed to be the exchange format for sort of sharing data between processes and over the network very efficiently again it looks something like parquet but it's for memory data so for our class this class we're mostly going to be focusing on things that look like parquet and orc and arrow and then for project project one which we'll discuss next class will be building a foreign data reference to parts that looks like a parquet file because that could be a parquet the last one that's super interesting is the standalone library to query execution and this is kind of what the whole point of this class is as I showed in the very beginning we spend a lot of time talking about how to build the execution engine how to vectorize execution how to do query compilation how to do joins it's not the hardest part that he's and that's always the query optimization but this is certainly the part that can have a huge impact on performance obviously if you generate a crappy query plan you're screwed anyway but having this doing this right can make a big difference so there's now work being done to build standalone query engines that are vectorized and use all the modern techniques that we've talked about before again, it's just a dag of physical operators they've required something else to do the scheduling and do access to the data do orchestration, do data round but at the end of the day the kernels are essentially the query operators so the most famous one of this is going to be Velox which we'll spend time talking about at the end of the semester but this is actually very fascinating now because vectorized query execution is sort of what made snowflakes so good and so unique at least it was the starting point of making it so unique 10 years ago that they were building one of the first vectorized data extensions now it's so complex everybody everybody has vectorized execution for the most part but 10 years ago it was a big deal but now Facebook is building Velox there's data fusion from the Aero and InflexDB guys Intel has this yeah so now this is super interesting because Facebook is going to spend a lot of time building up this this execution engine that anybody could come along and build a wraparound and make the next snowflake and not have to worry about writing an execution engine and essentially this becomes a commodity like a vectorized execution engine using the modern techniques we're talking about today it does not differentiate one system from the next it's now going to be the communication between the different nodes sort of like the yellow bricks we were talking about before and then all the query optimizers yeah we're good my boys in there I got teaching class yeah I'm teaching class though okay this other guy he's almost done oh he's coming down we're good from the FBI it's like my f*** f*** thanks okay so this is super fascinating and we'll spend a lot of time talking about this right so this was supposed to be a high level approach a high level overview of what the query optimizers look like again as I said the way you on a single node itself the ability system is not different than how you build a single node database system it's going to be that data movement stuff that we talked about before and also again assuming that we're coming from retrieving data from a cloud-based object store shared disk the rest of the semester we focus on how to build these different components that we talked about and make them using the modern techniques right so next class we'll talk about storage models we'll talk about how to represent data within the columns themselves the bytes, how to do table positioning and then system catalogs as well so hopefully I gotta deal with these guys, forget what's going on with them hopefully they'll be done soon and then I'll film the class next class and post that on YouTube as well later on okay and then next class we'll talk about project one alright guys have a good night, see ya I make a mess unless I can do it like a Gio ice cube with the G to the E to the T now here comes Duke I play the game where there's no roots homies on the cusse, I'm a foo cause I drink bro put the bus a cap on the ice bro push wick on the goal with a blow to the ice show I drink it by 12 they say bill makes you fat but saying eyes is straight so it really don't matter