back into it. Now, it has a little bit different screen than because it goes back to this screen, right? Because we're in that 30 day trial. But if I go back on over here, and I say I put it in this folder, I think, so I'm going to locate it, say, where did I put it? I highly recommend, especially with your actual company file, that you know where the company file is on your computer, right? I could find it if I needed to, right? So there it is. Notice it put this other junk in here. I didn't have anything in this folder. And it put all this other kind of stuff in there. That's why you don't want it cluttered up with your documents folder or on the desktop, because it starts to clutter things up, even though I just have one company file in here. And this is the main company file. Now, when I open the file, then I when I opened this up again, at a later point, for example, I could go in here and double click this file. And it should open up the software and then the file. But that's not typically the way most people will do it. Most people will will then open up the the program, which is fine, it's probably the way to do it. And I think you can still like click on this one and this thing I want to see the sample, and it will open up the sample, which is kind of not exactly what you want when you practice. Like if I wanted to open up another sample company file, what you need to do is actually move this sample company file somewhere else so that QuickBooks doesn't remember where it is. And then you should be able to download another sample company file, right? But maybe we'll touch in on that later. But right now I'm going to go, I'm, I'm ready to create my own. No, I'm not going to create my own. I want to open an existing company file, the one that we just downloaded. So I'm going to go to that one existing company file. It's in my folder. There it is. So I'm going to double click on it. Boom. Open it up. Porf of or you're opening. I know I've seen that you told me last time. I still know where I'm at here. And so there it is. And then my normal setup process, when I open this up as I like having the homepage open, I like going to the view drop down and I get rid of the top of the screen. And then actually I don't want to have that there at all. So I'm going to say hide icon bar. And then I say view open windows so I can see the windows on the right. And that's kind of like my setup process, which I will do basically every time. And then we can see that all that if I go into my my data, I can close. Let me close this window out. It's not letting me close the window out. Okay, so there we go. I'm going to close. I'm going to close this window out. I'm going to maximize this window. And then I'm going to notice I can toggle back and forth. I have this super zoomed in by going to my actual monitor size. If I went back to 100, it looks like this, which is very small to see here. So that's why if I zoom in, I think 125 to me is is probably a good zoom in to kind of be working in. But for us to use it, I'm going to go at 150, which will really zoom in, although it could kind of distort things. So so if things are a little distorted, when you do a super zoom in, then you could adjust and zoom back down. Okay, so and just note that if I go into the lists drop down, for example, and we look at our chart of accounts up top, we have our data in the chart of accounts already. If I go to my standard reports and go to reports and company file, profit and loss, and notice it's making it as of 1231, or at the end of 2026, I'm going to start to put the actual data in next year, where there's not any information in it. So for example, if I go to reports here, company file, profit and loss, it's doing it for the year of 2026. I don't know why. Well, what it's doing, it's trying to pick a day like in the future, I guess, and work in the future. And I think the rationale for that is, is that they can use the same sample company file without having to update it all the way out to 2026, right? What I'd like to do when we do our practice problem is look at an income statement, at least, that doesn't have any data in it yet. So I'm going to go from 010127 to 123127. And you can see now we have a clean income statement. And when we do our practice problem, I'll just work with this income statement. So next time, what we're going to do is list out basically the issue in terms of this prepayment issue by looking at the homepage, and then thinking about what the normal process is, what's the issue with the prepayment, and then we'll go through the actual normal process and compare that then to the old deposit or prepayment way that we used to deal with this, and the way you might still deal with it if you didn't have Enterprise. And then we'll go through the new updated prepayment feature, which has that liability account that will be set up. So we'll continue on with this in future presentations now that we're set up with the sample company.


Hello and welcome to the Grand Line Review, your source for everything One Piece. And today I would like to go through a bit of a journey of this incredibly diverse world in order to examine all of the different races that exist within One Piece. It's pretty easy to forget because we spent literal decades slowly introducing and exploring these various tribes, but there are some pretty crazy and amazing rounds of life in One Piece. Although for this video, I will be focusing exclusively on humanoid life. Doing all of the different types of creatures would be an even more massive undertaking which I'm sure we'll get to one day, but before we get into that, it's time to play a quick round of Fishman or Murfolk. A very simple minigame, the rules of which are as follows.  The way to tell being whether they have legs or whether they have a tail. Legs for Fishman, tail for Murfolk. And if you guess incorrectly, then your glorious punishment will be to subscribe to the Grand Line Review. And if you do guess correctly, then I suppose you can have a job at an aquarium, hooray. So here is our aquatic Frankie, but I ask you this, is Frankie a Fishman or a Murfolk? Make your decision now and we will reveal the answer in three, two, one, bam. As it turns out, Frankie is a Murman. If you guess Fishman, then hit that super Frankie button and please do say hi in the comments below if you are new to the Grand Fleet, welcome. But to begin going through all of our races, we are going to start with stock-standard humans. These are by far the most common personoid existence on the planet, coming equipped with all of the boring human things that you and I are familiar with in real life. However, to call humans strictly stock-standard is actually a bit of a mistake on my part because they can vary quite greatly in size and appearance. For example, Charlotte Linlin, despite being almost 10 meters tall, is entirely human. Her parents were both more standard-sized humans and Linlin is just massive for reasons. But we don't have to go quite that far either because sometimes humans can just be absurdly tall like all of the admirals. Well, some humans that just present unexplained yet highly distinguishable features like cannibal who has these ever intriguing eyebrow horn things. Or humans like Masura who just plain resembles an ape or even characters like Mary who has lamb horns, which are not ornamental by the way, they've grown with him since childhood as we saw in chapter zero. Basically though humans in one piece have access to a far larger pool of genetic variants, some of which could potentially be explained by interspecies breeding with some of the other races of the world, some of, but not all. So I guess just bear in mind that the classification of a human in this series is far further reaching than it might be in other works. Now, just like in the real world, humans come in a variety of different tribes and societies, some of which could be quite highly advanced such as the manufacturing powerhouse of water seven and others can be a bit more archaic like the Kujit tribe of Amazon Lily. The greatest tribal differences between humans though comes in the form of the world nobles, a group that I am highly tempted to classify as their own race, which I suppose they would actually prefer because the majority of the world nobles do believe that they are quite literal gods. In reality, they are an offshoot of humanity, descendants of the 20 kingdoms who isolated themselves on the Holy land of Marjwa and after almost a thousand years of inbreeding have become, how shall we say, quite visually distinct. And at this point, while they do have a common ancestry, I would say that the world nobles have pushed the undesirable bounds of evolution to the point where they have pretty much become their own race. But next up, we are going to take a dive 10,000 meters below the surface to the realm of the Murfolk. And here we have fairly standard Mermaidian depictions of life, as all Murfolk possess the upper bodies of a human and the lower bodies of a type of fish thing. Essentially being fishtails, that is, however, they come with quite a variety of lower body options such as the minister of the right who features the lower body of a seahorse or hyozo who has the lower body of a blue-ringed octopus. And very notably female Murfolk being mermaids gain a special ability to split their tail when they turn 30.  As was proudly displayed by Kakora, the very first mermaid the straw hats met. However, mermen do not receive this ability at any stage in their lives. And just as a matter of class, Murfolk is seen as the upper echelon of sea life. And in fact, all of Fishman Island is ruled over by a family of Murfolk, filmed by King Neptune. And royal mermaids are also particularly important because the power of the ancient weapon Poseidon gets passed through them, although it's not always active. Currently it resides within Princess Shirahoshi and it is, it's very active. But moving to Fishman, this race sees a more solid blend of humanoid and aquatic characteristics. Fishman, equipped with legs, which is the primary reason why they are much more commonly seen on the surface than Murfolk. Fishman and Murfolk are not so far removed from each other though, and they are more than capable of breeding, which will result in an equal chance of a Fishman or Murfolk child. Fishman can also breed with humans as well, as seen in human Fishman hybrids such as Dellinger. However, Fishman represent a distinct underclass of the sea and in fact, the world at large. Fishman tend to live in the far more underprivileged areas of Fishman Island. And on the surface, Fishman have a history of being persecuted by humans and even being used as slaves. Although this was mostly a practice used by the world nobles rather than humanity at large. And I think they also enslave just about every race. So Fishman and nothing particularly special here. However, they do have a tendency of being looked down upon more than say Murfolk or I think yet anyone else that we're about to explore. And as a result humans and Fishman have a strained relationship at best. Heading back to the surface now and we have the largest humanoid creatures in one piece represented by the giants. And a lot of these guys are every bit as you would imagine a classic giant to be. They are large, loud and proud. However, the only organized society of giants that we are currently aware of would be those that reside on the island of Elbaugh. And these giants are modeled quite heavily on Scandinavian Viking culture. And they are without a doubt the most powerful race on the planet and should an army of giants ever resurface then there would be a little that humanity or any other race could do to stop them.  It is necessary to state though that not all giants are necessarily from Elbaugh. And in the series we have been exposed to characters like Jagwadi Saul, Morley and Salma Wolf who very much present themselves as the exact opposite of an Elbaughian giant. Not to mention giants like the Eddy Cool brothers who are very biologically distinct from their Elbaughian cousins. And of course it is more than worth mentioning that we have ancient giants who are by far the largest and most demonic looking of all of the things in one piece and quite famously both Oz and Oz Junior were members of this class of giant. And then in terms of interspecies breeding we have only seen one example of a giant fishman hybrid which is known as a Wotan. And currently the only cannon Wotan we know of is Big Pan who was a member of the Foxy Pirates and he participated in the Davy Back Fight although there was another who appeared in the 3D2Y special named Sebastian but despite his fun bow tie he is not cannon. Going even higher now it's time to explore the sky people and these guys are actually very exciting because they did not originate from this planet. That's right each and every sky citizen we see in the series is technically an alien who came to the one piece planet from the moon or one of the moons. There's quite a few we think. And amongst them were three different subsets the first of which would be the Birkins. And in fact there's even an ancient city on the moon named Birker. But for example all of the primary antagonists in the Sky Pier arc are Birkins, even Enel. Even though he doesn't have wings which is interesting actually. But despite Enel having destroyed the settled Sky Island Birker other members of this tribe do still exist such as Mad Monker Rouge and even Haradus the primary caretaker of the Sky Island Wetheria. And interestingly he also has not been shown to have wings as of yet just like Enel. Now the second of these three tribes would be the Sky Peans who came to the planet and settled on Angel Island which would later be expanded into Sky Pier which occurred after half of a blue sea island was blown up there via the knockup stream. The Sky Peans are probably best known for their technical prowess though as they are the ones responsible for developing dial technology and all sorts of stuff simply designed to make daily life easier. And finally we have the Shandians who after their journey from the moon did not elect to land on a sky island and instead they went all the way down to the blue sea settling on an island that would become known as Jaya.  And this may be because the Shandians do have a connection to the elusive ancient kingdom and they were even given a ponderglyft to take care of. This was all prior to the void century though and eventually the 20 kingdoms would come together to crush the Shandians during this time. And rather ironically roughly 400 years prior to the current timeline the Shandians were all blasted up into the sky via the knockup stream plonking them right next to their Sky Pean cousins at which point a great war would break out with the Sky Peans who immediately tried to claim this new sky bound land. And that war has only recently come to a conclusion actually after the defeat of NL the Sky Peans and the Shandians have now found peace and are working together for the first time since their ancestors did on the moon. All right next up we have the comparatively small race being the Ming tribe small in terms of numbers less so size and minks are extraordinarily rare to see in the One Piece world because they mostly live on an isolated phantom island making it nigh on impossible to find them and in addition to that they very rarely venture into the outside world. Similar to fishmen I suppose minks are humanoids with animalistic traits quite specifically mammalian. In fact I don't think we've seen a mink thus far who was not covered in fur and classified as a mammal. These guys can be pretty scary though because they have at least two species exclusive techniques one of which is electro allowing them to perform electric shock based attacks generated from their bodies and the other is the much, much, much more terrifying Sulong form. In a very werewolf kind of manner when a mink gazes at a full moon for too long they will transform into shockingly powerful creatures which are considered to be the true form of the mink tribe. Although this incarnation is very difficult to control and can lead many inexperienced minks to cause themselves severe exhaustion or even death. The mink tribe also have a close relationship with one particular society of humans being the residents of Wano or more specifically the Kozuki clan. At this stage it's not quite clear how this originally came about but all of the minks seem to have a profound sense of loyalty to the Kozuki clan. And then we move to dwarves who I would describe as more fairy style creatures. These are the smallest brands of humanoids on the planet. However, despite that, they are far stronger and faster than your average humans. So much stronger and faster actually. In fact, a single dwarf is capable of destroying an entire man-made building and fast enough for them to vanish in the blink of an eye. As such, dwarves are highly valued as slaves and have a rather unfortunate history as such, particularly the Ton Tata tribe whose home is on Green Bit. Because roughly 900 years ago the Don Quixote King of Dress Rosa enslaved their tribe and in more modern times his descendant Don Quixote Dol Flamingo did exactly the same. And so far, the only dwarves we've seen in one piece are members of the Ton Tata tribe. Although there is a half human, half dwarf member of the Big Mom Pirates named Charlotte Normand. Now getting a bit weirder, we have a couple of distinctive races that's born seemingly from humans. And basically they take one bodily feature and just elongate it, resulting in the long arm, long leg and snake neck tribes respectively. With the long arm tribe, they're pretty cool because their arms actually feature an extra joint in them. Although the long leg and snake neck tribes just have much longer body parts than usual. Oh, and notably there are very hostile relations between the long arm and long leg tribe specifically. A conflict that has apparently spanned well over a thousand years at this point, although we have yet to really delve into either of them. In addition to all of this though, the One Piece world has some rather mysterious and currently unidentified races. The most prominent of which would be the three-eyed tribe, the only member we currently know of being Charlotte Pudding. They are allegedly quite special though and have the power to achieve an awakening with their third eye, thus allowing them to hear the voice of all things or maybe see the voice of all things because it's a bit weird to hear with your eyes but none of this has been confirmed so you do you. In more recent times, we were also exposed to King the Wildfire who was a member of a currently unknown race but he does appear to be the bird equivalent of a fisherman or a mink, having a standard pair of giant black wings and for some reason he's also capable of generating a fire on his back at all times. I don't know why. And another funky mystery race that has been spotted is a Kinokobito which seemed to be humanoids with this mushroom sort of body and four, count them four legs. And they do definitely exist because the one we've seen was captured in Montau's books. Although we still have yet to see or hear anything about them beyond this passing reference. And we could probably go on for quite a while exploring unique individuals in the series. For example, Chopper might technically constitute his own race at this point or we could even dive into artificial intelligence such as the Pasifista or Tomata. But for now, this is a solid rundown of every known race present in the One Piece world. But what do you guys think? Please do leave your thoughts in the comments below or even join my Discord server. And if you'd like to see more videos like this then please do go and check out some of my other content or even subscribe to the channel for more glorious One Piece business uploaded straight into your YouTube feeds. But for now, this has been the ground line review and I'll see you next time.


Hey everyone, welcome to another video lesson from navigationtrading.com. In this video I want to show you a little trade hack on how to copy and paste trades directly into Thinkorswim. So what I'm looking at here is I'm inside the members area in our alerts and let's say for example we sent out an alert and you weren't sure exactly how to place the trade, you haven't gone through the training yet, but you want to start analyzing the trade and kind of understanding what we are doing, this is a good way to do that. I'm going to take an example that we have an alert we sent out on 41119, this is an SPX calendar spread and so what you can do is you can literally copy this alert, right-click and you can copy this from your email where you get the alert or you can go inside your members area like we are here and simply just highlight it, right-click, copy and then go to your Thinkorswim platform and if you go to your trade tab down here at the bottom there's a little up arrow with a line just simply click that and that'll populate your order entry area and then right here is this little copy paste button. You've already copied it to your clipboard, if you hover over that it says paste order from your clipboard, just click on that and the order will input into your system and then from there you can right-click and analyze it just like we teach you in the course when you're setting up a trade. Now this one we sent out several days ago you can see that we are actually down a little bit in it because implied volatility has contracted so you could actually get in a little bit better prices at this time of the recording but the bottom line is you can you can check it out you can analyze it you can understand which strikes we bought which strike we sold what the expiration dates were what the price was that we got filled at in this case you can unlock this to get your current pricing to see what that would look like there and that's it so that's an easy way to kind of start analyzing trades as we send out alerts or if people are posting trade ideas in the trade hacker community you can copy them and paste them into thinkorswim just like that they do not have that feature yet in tasty works I know they are talking about it I've requested it and it's in their queue hopefully they come out with that in tasty works as well but for now we provide all of our alerts out of the thinkorswim platform and so it only works in toss at this point hope this was helpful if you want to check out some of the other stuff we're doing check us out at navigation trading dot com


McGrew, sorry. How do you answer the environmentalist who claim that 97% of scientists, and he says I don't know if they mean all scientists or specifically climatologists, believe in man-caused global warming and its future disastrous impact. So what do you say to them when they say that? So I think you have to separate a few things here. One is that's a bogus statistic, right? It's not 97%. There is no such thing.  That's not real. But it's true that a large percentage, probably a majority, probably an overwhelming majority of scientists who are willing to state an opinion, believe in man-made, caused global alarm. And then you have to say something about, science is not about a vote. Science is not a democracy. It's not about a majority.  So there's a danger there. So then what you have to do is say, I mean, this is what I do. Alex Epstein does it differently. What I do is then I say, I don't have a position on whether the globe is warming or not. And I don't even really have a position about whether it's man-made or not. Because I don't think that's the issue. I think the issue is, even if it is warming, even if it is man-made, what do you do about it? And even if it is warming, even if it is man-made, why do you care? Why is the world getting warmer, upset you so much? Why are you getting so excited about, you know, a few more degrees of heat? Actually, like the idea of, you know, I use the Canada becomes habitable, funny line, which people respond to positively, because everybody thinks Canada, except Canadians thinks Canada, and people who live like in Maine and Minnesota think Canada is uninhabitable. So I guess Jennifer actually thinks Canada is habitable because she lives in Michigan in the cold, really freezing part of Michigan. And then you get into discussion about what are the proposals about dealing with climate change, and how those are nuts, and how those are ridiculous, and how those are incredibly damaging, and how those proposals reveal how, in a sense, unserious the people who claim that climate change is an issue are. That is, the proposals are worse, the proposed solutions are worse than any imaginable problem. And I also throw in there, you know, I throw in a line that goes something like, you know, I'm a finance guy, and if you want me to invest in your fund, then one of the first things I ask you is, how have you done in the past? And if you say, well, really badly, then, you know, forget it, you know, past performance is no necessarily indicator of future performance. But it suddenly is, and then, you know, it suddenly is a starting point, right? If all your performance in the past has been negative, I'm not interested in listening to the pitch. Reversed to the mean, come on, you're wrong. Yeah, right. Everything just reversed the mean automatically. So the same goes with scamongering. If you're telling me the world is going to end tomorrow, I want to know how good you are being in your scamongering predictions in the past. So if you were the same people who predicted that overpopulation and mass starvation, if you were the same people who predicted everybody would have cancer because of chemicals, if you were the same people who predicted that global cooling would happen, if you're the same people who predicted, you know, just any, what was it, ozone hole or a million other things would end life on planet Earth as we know it, then I can't take you that seriously. I just can't. And then, but I think the main issue is the solution, right? And the solution can't be not to use fossil fuels. And that solution is revealing of the true motivation, of the true insanity of the position and everything else that's going on. So that's how I deal with it kind of quickly. Of course, if you wanted to deal with it in a more fundamental sense, you'd have to get into the science. And I say, look, I'm not a scientist. I don't have a strong position about whether there's global warming or not, and about whether it's man-made or not. And that's a fact. I don't have a strong position about it. Again, I'm suspicious of those claiming there is. But that's not enough for me to say there's no such thing. I haven't looked at the data closely enough. I haven't examined the evidence closely enough. My suspicion is that there is global warming. My suspicion is man-made factors probably pay a small role in that warming. And my strong suspicion is that that warming is not going to be catastrophic.


All right, the door is closed, so I guess we're going to get started. We are here today to talk about SEF, the Distributed Store System, and an introduction to how it works. My name is Greg Farnham. I've been working on the SEF project for almost a decade now, which is a really scary thing for me to say. Across several different companies, I'm with Red Hat Now, one of their principal software engineers. Throughout the years, I've been a maintainer of a bunch of systems, including one of the older messengers. I served for three or four years as the SEF of S File System Tech Lead. These days, I've been doing a lot of work in the core system and focusing on our testing and how to modernize the way we do that. In this talk today, we're going to go over what SEF is. And in particular, the RADOS architecture. We'll talk about what that means before we get through it and how SEF deals with failures or the scale it operates. We're going to talk about the three main SEF interfaces, the S3 and Swift-compatible RADOS gateway, the virtual block device RVD, and the POSIX distributed file system SEF of S. And go over some specific new features that have come up starting with Luminous, which is about a year and a half ago, up through some of the stuff in Nautilus, which should be coming out at the end of next month. Just to give me a quick level here, who here thinks they know something about SEF other than what I just said? Raise your hand. Oh, cool. We got all kinds of new people. All right. Well, that's the only question I'm going to ask then. Cool. So SEF started out as a grad student research project in the early mid-2000s at the UC Santa Cruz School in California. It was a long-term project into petabyte sales storage.  And so SEF was designed to try and resolve some of those issues. These days, it's an open source project but with commercial support from a whole bunch of operating system vendors and storage vendors around the world.  So it's seen a lot of success. SEF has a number of main components. First of all, the bottom layer, we have the Reliable Autonomic Distributed Object Store. That's sort of the base layer in which SEF stores all of its data. And then you talk to that rados cluster using a libredos library. And we build all of our interfaces for more common storage systems, such as an object, or a block device, or a file system, on top of that. So if you're setting up to design a system like SEF and rados, sort of what you want to have happen is an application that just says, hey, I want to do a read or a write to this object.   And when you're designing a system like that, you have sort of one of the most important choices you can make is how you know where objects live. Because if I want to find the object foo and there are 47 different servers that it might live on, I need to know which one it's on. So one solution might be to have a metadata server. And every time I want an object, they go, hey, metadata server, where's this object live? And it tells me. And then I go off and ask for the object from the correct location. And that has some advantages. It's simple to build. You can do some nice policies with it. But it has a couple of big disadvantages. One, your metadata server needs to be able to store all of the objects that live in the system and provide you a lookup. And if you get more than you can store in more objects to then you can store the location in one server, then you have to build a whole clustered lookup system. And two, you need to go ask for the location of every object whenever you want it. And so you turn even the simplest request into at least an extra network hop. So instead, Seth prefers to calculate its placement. We have an algorithm called crush. We're not going to go into too many details of it, but we say, hey, crush, I want to find out where this object lives. And the client application runs an algorithm and says, OK, like this object, which is here number 10, lives on these servers. And one of these servers is going to be the one that's in charge of it. Crush has some important properties that we do care about, though. First of all, crush has a description in it of what your cluster looks like. And if you have some of your servers in the cluster fail, crush can, that's one of the inputs, that the server was there, but now it's dead. And so crush can say, oh, well now the object lives in a different location. Sort of some more specifics about it. Important ones, like I said, crush has an idea of what the cluster looks like. So that's not just the number of servers, but it's like, but you can put in there different failure domains in physical locations. You can say, I have two data centers, and one of those data centers has two rooms, and I have this number of racks in each of those rooms, and machines within racks. The calculation is what we call pseudo-random. So it looks approximately the way you expect a random distribution to show up. But it is obviously calculated. So you get the same answer out every time. And it's very fast. And also, yes, it's stable mapping. So you might have heard of some systems where they do a hash ring. But if you go from three servers to four servers, then all of the data moves to a different server. Crush is not like that. If you add, if you have 10 servers and you add one server, about one 11th of your data will move. Within the rados cluster, data, any particular object, lives in a namespace, which is called a pool. And pools are the granularity of placement rules within the cluster. So you might have one pool that lives only on SSDs, and one pool that lives on hard drives, and one pool that lives in a specific room. But you can have several pools within a cluster, and then objects within those pools. There are two main kinds of processes or servers that make up a rados cluster. First of all, there are the object storage demons. They're generally going to run one of those demons per disk that you have in your system. And you can have tons and tons of them. These demons are responsible for serving the actual IO requests from clients to do a read or a write. They are also responsible for noticing that some of their peers are down. And then when a peer gets declared is dead for doing recovery within the system and saying, oh, I have this piece of data that's supposed to have four copies and only has three, so I need to go write another copy of it. Or more usually, it's supposed to have three copies, and we lost one, so I need to go create a new copy on the next location that's supposed to be responsible for it. And then we have a very small number of monitors in the system, somewhere usually between three or five, sometimes seven. And the job of the monitors is just to agree on what the cluster looks like and report that out to the world. So you might have 1,000 OSDs in the system, and the monitors know what all those OSDs are. And they say, oh, I've gotten three reports that OSD 742 is dead. I'm going to mark it as down in the system. And so no clients will send requests to OSD 742. They'll send them to the other OSDs in the system. And they might say, oh, this OSD has been gone for so long, we think it's actually lost. And then the system will, and they'll publish those maps, and the OSDs will look at those changes and start doing system recovery to keep the data durability and availability guarantees up. Critically, monitors are not in the data path in the common, yeah, they're not in the data path. No request for IO goes to the monitors. So let's look at a right. Here's the wall of text, but visually, if you have a new application turn on and say, hey, I just started, I want to do a right to the object foo in the system, then the application first connects the monitor to become a member. It'll say, hey, I'm alive, and it goes to the monitor and says, hey, what's the Rados cluster that I'm talking to look like? And the monitor gives back what's called an OSD map, which describes the state of the system. And then the application within itself runs the crush algorithm on the OSD map and the object foo and says, all right, I found out what we call the primary OSD is. This is the OSD that's going to do me, that's going to serve the reason rights for me. And I'm going to send off to that primary OSD request to do a right on my object foo. That OSD is going to say, all right, I'm responsible with this object, it's in what we call a placement group that I am responsible for. And there are two other OSDs in this placement group with me, and so I'm going to send the request to those OSDs as well, and we're all going to write it down on our hard drives. And then we get an acknowledgement back on the primary OSD that the data is durable, and only when all the OSDs that are participating with a particular object have committed it, or at least all the, sorry, all the live OSDs that are participating in particular objects have committed it to disk, then the primary OSD responds to the client and says, all right, your right is done. In particular, the actual application right only involved talking to the OSD because once the client had the OSD map, so now it does another 10 writes on to the object and it just sends them off to this primary. If it asks, if it needs to do a right to a different object bar, it doesn't need to talk to the monitor anymore, it just puts in to the same thing it did before with bars and input and gets the set of OSDs out. Now, in a system like SAP in which you have a great many disks and a great many servers, things die or get restarted because you do an OS update or something, and it's very important that we'd be able to recover from those kinds of failures. So each of the OSD maps, which as I said before, describe the OSDs in the system and whether they're up or down, each of those OSD maps is numbered with an epoch number and they just start at one and move their way up. And all the monitors and OSDs in the system store a history of those OSD maps, they trim them once they don't need them anymore but they'll all have the last 10 or 100 or 1000 or however many they need.  And that's a critical piece of information for the OSD to know because we need to guarantee, no matter what, SAP is a strictly consistent system at all times, that if we are serving an object foo up to a client, that we know we have the very newest version of it and that we're not missing any updates that have happened. And so it has to go and make sure that it has all the updates and if it doesn't have all the updates, then it needs to go get all the updates before it serves IO. And the process of figuring out who stored that object in the past and seeing if they have any updates that either primary or missing is called peering. So there are two basic things or there are sort of two processes for doing that recovery when it happens. First of all, when an OSD turns on for the first time or when a cluster map changes, the OSD looks at all the data it has and figures out who's supposed to be responsible for it in the newest version of the map and if it's responsible for it good, then it goes into a peering process and if someone else is responsible for it for that placement group, then they tell it so. And so in this case, in map evoc version 20,220, then OSD 11 has just turned on and it got a message from OSD 5 saying, hey, we have this PG in common that you're supposed to own. And so OSD 11 looks at the map history and it sees that, oh, okay. So this particular OSD, or this particular placement group, we'll call it placement group 42, I was responsible for a while ago and I had these two replicas, five and 30, but then I went down. And so five and 30 were responsible for the PG for a little while and did some updates or might have done some updates that I didn't do. And so in this case, it's easy. It knows exactly who stored it and it says, okay, what objects did I miss? Can you tell me exactly which objects have changed? And in this case, this is doing what's called log base recovery where we know exactly what updates have happened because it hasn't been down too long. And so it'll send out that request to five and 30 and they'll give back a list of the objects that changed. And the primary OSD just says, hey, I need you to give me this particular object because it changed and I don't have the newest version of it. And it gets that object back and then moves on to the next one. But sometimes you have a new OSD that's participating in a placement group that's never seen it before or that saw the placement group a long time ago but doesn't have a log anymore because we don't wanna keep an infinite log of the updates. We keep a small number of them. And in that case, as we see here, we've just added OSD 30 to it for the first time. Then we do what's called backfill where we need to go through all the objects in the group or that belong in that placement group and ship them off to the new member of the system. And so in that case, the primary OSD, which is here 11, is responsible for doing the replication. And he says, hey, OSD 30, here are the first five objects that belong in this placement group, write them down. And then OSD 30 does that and says, okay, give me the next set. And that just runs on in the background while IO continues to be served to clients from OSD 11 because it's a primary. But those are the two basic failure recovery mechanisms that we have in CEF. What's nice about these is that the peering process is the same and then one of these failure recovery mechanisms happens for every single possible update to the system, whether you just doubled the size of your CEF cluster and so you need to migrate half of your data or whether you lost a server and 11 OSDs that lived in it. The same process happens. We do the same patterns of IO in order to recover from it and that lets us be very, very sure that no matter what happens to the system, if you then we can keep on serving the IO and keep the data safe, durable, and available within the guarantees we provide with three copies or whatever. So that's sort of the, yes, question. Sorry. I'm actually a hands-on. Okay. I don't know, maybe I hit a plug or something because I was doing some big evacuations in Aguast and we're wrong from some machine side if I were from another department. All right.  Can we do this at the end? Sure. All right. If you got any questions about something on the slides that are about the slides though, let me know. I'm happy to take interruptions or booze or whatever. Okay. So that was the RADOS cluster and the basic RADOS internal interfaces. So the way you talk to that is through the librados library for applications. So with librados, you speak the RADOS protocol out over the wire and you get a very rich API. It's not a get put and delete thing like you might have seen in some object systems. You can say, hey, I want to write five bytes at offset 500 within this object. Hey, I want to set this key value pair on this object. Hey, I want to check if the key with the name version has the value five and if it does then I wanna do this, then I wanna overwrite the object with this data. And so that's the RADOS and that's librados. So on top of the librados API, we've built several different things. The RADOS gateway REST HTTP server, which speaks S3 and Swift languages out the front end. The RADOS block device RBD provides virtual block devices for virtual machines or indeed for physical hardware in the kernel if you want. And the Cephavest distributed file system. So we're gonna go through each of these in order and talk a little bit about how it works. First of all, the RADOS gateway, RGW, it's a web server. Out the front end, you send in a request to do a get put or delete or whatever other S3 request you want. RADOS GW takes that object request and turns it into a string of backend RADOS requests. You can serve many, many RG, or you can run many, many RGWs out of one cluster and they cooperate well together so you can scale horizontally to get enough throughput. Internally, it's nice. So it sort of takes in very large S3 objects and chunks them up into smaller objects that are compatible with the RADOS APIs. And it's a big system, it's nice. One big thing I wanna shout out about RGW is that it's the most geographically dispersed system within SEF or most geographically aware system within SEF. You can have multiple SEF clusters in different parts of the world and say, hey, I want to sync all of the users. I wanna have all the users be able to talk to any one of these clusters and I want to copy some of their buckets around in specific ways between these. I've just got two of them here but you can do, I think, arbitrary numbers of sites within them. If you're interested in this, the very next talk in this room is from Sage about data services within RGW and I think it's gonna cover some of that. Next up, we have the RADOS block device. I'm gonna call it RBD in the rest of the presentation probably. So in RBD, we have the user space LibRBD library which is for embedding within hypervisors and other things like that. So Kimu KVM and I think several others but that's the big one, of course. With RBD, you speak block device requests to it like, hey, write this 512 bytes at 4K or whatever and that turns into radius requests. Any given image that might be 10 gigabytes or 100 gigabytes or a terabyte or sometimes people accidentally create an image that's one exabyte, although that's a lot harder now because we found out that was bad for them but you can distribute those out into RADOS objects across the cluster in whatever pattern you want but usually it's just four megabyte pieces. But RBD's really nice. So first of all, you're storing images within RADOS and that means that the virtual machine is not tied to the host it's running on so you can do live migration really nicely. That's not a super big deal these days but five years ago it was pretty great and in particular with Ceph, this actually works because Ceph is the number one storage provider within OpenStack and so people have figured out where all the rough edges are and made sure that it works well. RBD is very good at taking snapshots. There's a snapshotting mechanism within RADOS itself and RBD takes advantage of that so that you can preserve a version of your disk and then if there's a problem then you can look at differences and go back to it. You can do copy on right clones, you can create a gold image and then instantly spin up 100 or 1,000 copies of that gold image as customers turn on new block devices. And RBD is supported everywhere at least everywhere within the open source cloud world. One kind of cool newer feature within RBD is what we call mirroring. You can, this took a long time but I think it was introduced in Luminus about 18 months ago, a little less. Sorry, that's the Luminus Ceph release. You can run two different Ceph clusters in different data centers and you can pick some of your RBD volumes and actually copy them live as they're doing writes from one cluster into the other. This has some nice use cases. This replication is asynchronous so if your pipe isn't actually fast enough to support them all, you'll fall behind on the writes during the day and then catch up at night or whatever but it is crash consistent so all the writes are ordered. You can choose specific images to replicate within those data centers and it is, oh yes, and the RBD mirroring is highly available. There is a downside to it which is that in order to provide all the services we need to do full data journaling of every update so that means that every write happens twice. In general, you'll submit a write to live RBD for your block device and it'll write that out to a journal and the journal will acknowledge that the write happened and then live RBD will say, all right, the write's done to the block layer but then in the background it has to flush that out to the actual for normal RBD objects and then the RBD mirror demon reads this journal and streams those updates out over the wire. Some other new features within RBD over the last year and a half, RBD now works with erasure coded pools which I will talk about a little more later. RBD, you can turn on a trash can within RBD so that when you do deletes, if you accidentally deleted an image you didn't mean to it's still safe there until some time has elapsed and there have been a number of usability improvements throughout RBD and the rest of the set of projects to sand off some of the rough edges for administrators. And next, the final component that we're gonna talk about is Ceph Ves. I was a tech lead on this for a while, it's my favorite so it's gonna get some extra time. So all the other systems that we've talked about just involve serving IO directly from the OSDs. Ceph Ves is a little bit different because we have to maintain a metadata hierarchy. So we add a new demon type called the metadata server and if you want to do something in the Ceph Ves file system like creating a new file or moving a file or doing a stat then that request goes off to the metadata server but if you wanna do something like writing new data to a file that request still goes from the client directly to the OSD which stores that file data. We used to talk a lot about how RGW and RBD were fully awesome and Ceph Ves was almost often, but almost awesome but that's finally over. Ceph, the whole project is fully awesome at this point. So we've got a number of different things so we're gonna go through some of the parts of Ceph Ves that are awesome in various ways. So first of all, Ceph Ves is a real file system. It's a POSIX file system. It doesn't have the silly NFS open to close consistency semantics. It's got atomic updates. It's got coherent caching. So if you do a write on one node and then you do a read on another node, you'll see the write. It doesn't matter what you've done to the system. If the write completed, you'll see it when you do a read from somewhere else. You can, as it implies, you can actually mount the file system from multiple clients and do updates to it at the same time and we, this is a pain in the butt, so a lot of files doesn't give up on it, but we actually support hard links. And because of the file system, like I said, we have real consistency. In particular, sometimes you'll hear about split brain being a problem with the file system or how to avoid split brain. And if you ever hear in a distributed system about how it's got split brain protection or something, that means it's subject to split brain issues and you don't want to use it. So that's not possible with our consistent caching mechanism. You just don't get stale data. If the client can't guarantee it has the newest data, it'll wait until it can. The file system scales pretty well in a lot of ways. In terms of scaling data throughput, if you have very large files, well, all the file data is stored in rados. In chunks, you can chunk it up in different ways. Again, the default is just the first four megabytes will be one object, the next four will be another object. And all of your clients talk directly to the OSDs for the data. So if you need more data space or more throughput, you can just put in more OSDs. You can make the OSDs faster with SSDs or NVMe. You can do the, you can do striping of objects so that you can write, you end up touching more than one object at a time when you're doing smaller writes. And so sort of the main limiter here is if you need very, very low latency, then you need to get a SEP system that can support low latency. But in terms of throughput, we're in great shape. When you're scaling metadata operations, like trying to do a lot of file creates that are very, even if they're very small files, SEP scales nicely there too, at least in many ways. You can, first of all, SEPFS supports more than one metadata server. So you can just create new metadata servers and the load should move across them. Second of all, SEPFS does not require you to store all your metadata in memory at once. Some systems like HDFS need to know where every single file lives at all times so they don't work. With SEPFS, only the active metadata is stored in memory. So you might have 10 trillion files in your system, but if you only ever talk to 10,000 of them at a time, then you can size your metadata server so that it only needs to worry about 10,000 at a time. And it'll keep the ones it needs in memory and flush the other ones out to disk. And just one cool little thing, SEPFS has our stats, recursive statistics. Because of the way it's implemented, it's pretty cheap for us to say, to give you the actual size of all the data that lives within a directory. So if you do this LS-L on a local file system, you'll tend to see that a directory is four kilobytes because that's one block. Whereas in SEPFS, it'll tell you, no, I have 16 megabytes of data that are stored in this directory. And so you don't need to run DU and things like that. An awesome thing about SEPFS, it actually has a security model. It didn't for a long time and many systems don't. But there is one, clients by default can't do anything with the file system. You need to incrementally grant them permissions. So to say, hey, you're allowed to access this particular subtree. You can act as a specific user and things like that nature. It's important for real security that those be coordinated with the OSD security capabilities too. So in this example, we're saying, all right, the client is allowed to act on the path slash footer and it can read and write on it. And because we didn't specify it can act as any user, but it's restricted to that path. And then the OSD separately will allow that client to read and write only in the foo pool. SEPFS is reasonably secure. The capabilities that clients have are encrypted by the monitor server when it connects and then the client shares them with the OSDs and the MDSs, but it can't, unless it figures out how to break SHA-256, it can't do anything to them and lie about their contents. There is one possible hole, which is that because the clients talk independently to the metadata servers and to the OSDs, then if the clients can see something in the OSD, they can mess around with it. So if you have multiple clients within a particular pool in SEPFS and what we call a namespace within that pool, then they can trample on the raw file data. So if you don't trust your clients, they all need to have their own independent spaces. Okay, awesome thing about SEPFS. You can have hot standby MDS servers. So in SEPFS, not only is the client file data stored in Rados and the OSDs, but also the metadata, while the metadata servers are responsible for that metadata, they actually write it down within the OSDs and Rados. So even if you only have one server running, if you're worried about it crashing, you can spin up as many standby servers as you want. And if you have a standby server to just wait around and if there's a failure, it'll take over. You can also, if you're worried more about how long that takeover takes, you can have those standby servers be doing active replay. And in active replay, then the, well, okay. So the active server is keeping a log of everything it does. Here we've done some file renames and some creates. And a standby replay server is just tailing that log and looking at what's happening and keeping and slurping up all the metadata it needs to follow that log and then what's going on. And that means that the cache has a very fast failover. So if you have an active MDS server that crashes, then the standby or the standby replay will do a final replay of the log and load all the data it needs out of Rados to serve the clients that the log says are connected. The clients can replay any of the operations they had that were in progress. It synchronizes the cache state and then it goes active and IO can resume as normal. Next, besides standby, as you can actually have multiple MDS servers. So no metadata stored in the MDS servers. So it's reasonably easy to migrate the load between them. In this case, we have five servers and it's distributed by how hot the metadata is. So we have one server that's responsible for just one directory because I guess that's a very active directory. And probably in the past, it was on this primary server, but that directory became very hot, so it got migrated off. And the thing we used to do this is called cooperative partitioning. The servers keep a heat map of how, the metadata servers keep a heat map of how hot their metadata is within any given folder in its children and they try to keep that total heat on the servers even across them. So it'll try to migrate sub-trees and it'll try to maintain locality of those trees so that you aren't bouncing back and forth between servers as you descend down the folder structure. Yeah, that was the full statement. Okay. Unfortunately, I said it was basically awesome and that's because doing that balancing is hard or at least takes work to get it to work for any given workload, so it might not work well for your workload. In that case, instead of relying on the balancer, you can pin a particular sub-tree, some folder and everything underneath it to specific MDSs in order to achieve a balance that is good. If you have two servers and you have two clients that both do the same amount of IO, you can just pin one client, two tenants that have their own systems, you can just pin one tenant to each server. In particular though, while you can pin them as you want, you can also change that mapping anytime and it doesn't require you to reboot any of the systems or to wait for, or to wait for through a long migration process, you just set an X adder to change how it spins and everything silently happens in the background. Next, this is an implementation detail, but directory, well it says frags there, but that's short for fragments. Generally, in CFS, when you look at a directory, then that whole directory is loaded off of Rados as a full unit, but sometimes those directories might be very large, they might be gigabytes in size, or it might be that you want to have a single directory that, you know, you have 10,000 clients all writing as fast as they can and two maybe needs to be split up across your whole MDS cluster. So we can fragment those directories into multiple pieces and then they get stored within Rados as different objects and can be migrated independently across MDSs to balance the workload and that does that in, I think our hash order might be alphabetical, but it just does that in hash, Blake breaks them up in pieces and each piece is in hash order.  Ooh, I'm running a little farther behind than I thought. Oh no, I'm not. Okay, good. Just started the presentation 10 minutes early. Feel better. So, in Ceph Vest we have a mechanism called forward scrubbing and in forward scrubbing you can say, hey, I want to scrub within this file path and I want to make sure that everything within the tree looks good underneath there. You have to invoke it manually right now but that can give you some confidence that the whole system agrees on what it's state is supposed to look like. And but in the case of a disaster in which you actually lose data because you lost a third of your servers and you didn't have that much redundancy built in your system, we do have recovery tools. You can repair the file system journals and then we can scan through the RADOS cluster and look at every single object in the RADOS cluster and try and build a file system out of what's left. What's some important things about this? It's parallel workers so you can run like one data scan per OSD to keep the whole cluster busy. And the way it works is by looking at every object and saying, oh, is this object named in a way that it might be a file? And then we say, oh, it is okay and because they're predictably named off of their I know number and which object within that I know they are. And so it'll find, so a scanner will find an object and say, I believe this belongs to this I know number and I'm going to note down on the root node that the I know has to be at least this large. And then from the root nodes, which will also have written down the path to the file that it was written that it was stored in. Okay, that was unclear. So a file is stored somewhere at home, Greg. This one was stored at home, Greg Foo. And so we wrote that down in an X adder on the RADOS object. And that's not an authoritative piece of data. The MDS might move the file and not update that X adder right away. But it does mean that we can look at it in the system and say, oh, like at one point in time this file was called home, Greg Foo. And so I'm going to try and push it back into that directory and assuming that's correct. And so those repair tools, you can run however many of them you want. One per OSD might make sense, I don't know. But they can all run in parallel in order to quickly reassemble a system after massive damage. Very awesome thing about SevVest. It supports snapshotting. Same as RBD and the RADOS system, only even more complicated because it's a file system. So unlike in many storage systems, SevVest does not require you to create volumes or subvolumes and then take snapshots to the whole subvolume. You can say, hey, today I feel like snapshotting my home folder. Or I feel like snapshotting the slash home directory of all the users. Or I feel like creating a snapshot of the storage directory in my home folder. You don't need to prepare them ahead of time or anything. You just go into a folder and the interface we mostly use is actually a hack through maker. You write maker dot snap slash my snapshot. And the dot snap folder is a hidden folder that exists in all directories. And when you create a folder within that, then that's a snapshot. So within the system, we store that metadata in the MDS as what the data structure is called an old inode T. But it's basically just another inode within the system. So we have a mapping that says, okay, we have an object or a file called foo in my home folder. It is this inode number and it existed and we created each of these snapshots. So snapshots one, three, and 10. And that's the metadata. And then the data, of course, is stored in object 1342. But when we actually do an update, maybe back when we created our first snapshot or like the file used to be two megabytes and we created all those snapshots, but then we wrote to the object and so the head object is four megabytes but we still have the old version of it sitting around within rados. There are some parts about CephVest that I will freely admit are not quite as awesome. First of all, multiple file systems. We can create multiple file systems within a single rados cluster right now but it's an experimental feature. Each of those file systems needs to be created within different pools or namespaces. And when you do that, each file system gets its own MDS or MDS cluster and has to be connected to independently when mounting. There are presumably some obvious ways in which that's nice. The reason that it's not stable is, first of all, it's got limited test coverage and second of all, the security model is not where we wanna know or where we wanna be. You can find out the names of file systems that exist in the cluster even if you don't have permission to access them and we'd like that to be hidden knowledge until you're allowed to know about them and most importantly, snapshots are stable and in some configurations, if you have multiple file systems running and you're using snapshots, you might break the way the snapshots work. This is on the roadmap but we're not quite sure where the priority is.  First of all, clients. Clients within CFS are very trusted even within a security model. Because we have our consistent caching that guarantees ultimate consistency, if clients can write to anything... No, sorry. So because of both that consistency and because clients do independent rights to the OSDs without going through an intermediary system that checks their permissions, if a client is allowed to write to something within the OSD, within rados, then they can overwrite it, they can delete it, they can do whatever to it. Next, if clients can read something, then that means that they can prevent anyone from doing rights to it because that client to do a read gets a read lock and if someone tries to write, they can't do a write until the read lock gets dropped and the client has to agree to do that drop. So if you have multiple tenants that aren't cooperative or that you don't trust, then you shouldn't share stuff across them. And finally, clients can do a denial of service on the MDS that they attach to. If you create multiple file systems, then they can only kill their own, so that's nice. But this client trust problem is pretty fundamental. If you wanna talk about, so you can always put Cephavest behind an NFS server and let the client speak NFS if you don't trust them and if you wanna know more about the progress of that, then at five o'clock, Jeff Layton will be in here talking about NFS connection on Cephavest. Next, live systems, debugging them is a little hard. We've got a lot of stuff to let you look at Cephavest and see what it's doing. You can dump off in flight, both on the metadata servers and on clients and see what it's working on. You can list the sessions that are attached to a metadata server and you can dump out the cache of the metadata server and see what the internal state of the system is. But if you run Cephavest, you might have seen a slow request warning or a warning that clients are not giving up caps and we don't yet have good ways of identifying why specific things are going wrong. You just sort of need to trawl through the cache dumps or logs that you might have generated or those operation lists and try and figure out which of them is blocking the others. Another thing that sometimes people ask about is the ability to track access to a file and we don't have any way to do that yet and I'm sure there are other things that people in many circumstances want to know about their system but we haven't thought of that yet. So now I said, what's awesome? What's not awesome? You might wonder who should use Cephavest. So some vendors are targeting Cephavest at OpenStack users. You already have like RBD is the number one provider of block storage to OpenStack and has been for basically forever and so if you can put a file system within that same cluster, that's really nice. There are a number of bigger users within the community who run Kubernetes and store their container volumes on Cephavest. Cephavest in general is very good at large files because you can stream them out to a whole bunch of OSDs. Compared to many distributed file systems, it's fast but any distributed file system, even the very fastest of them is never gonna be as good as a local file system at small files. There are users who store home directories on Cephavest and depending on how large your home directories are and how patient your users are that may be perfectly feasible but if you're gonna do something like that it's important that you be able to run the very latest version all the time because sometimes bugs pop up and there's a lot of bug fixes going in. But if you like exploring, you should try it out. Okay, so I got like eight minutes now. Okay, so some quick new features over the last 18 months that you might not have heard about. So, erasure coding, we're not gonna go into the details of how it works but with erasure coding, you can get smaller overhead than just having three copies while still being very redundant and it's through complicated math. So we've supported erasure coding for a while in Ceph but you could only append to the objects and we added the ability to do overwrites. Hooray! In particular this means that while, I don't know if it's, I think it's not declared stable quite yet because there's some known but, well it's stable. It is stable. Cephavest I think you don't wanna do unless you're, maybe it's the very newest one or maybe Nautilus because there were some bugs that Cephavest exposed that no one else did but it works with RBD and that's great. This is a big announcement a while ago but Ceph used to store data by default within an XFS file system and we now have our own thing called Bluestore that talks to a block device and it is way faster in a whole lot of circumstances. If you use Bluestore, if you tried out Bluestore and were annoyed because it was hard to configure how the caching worked, that will be better in Nautilus. Mark Nelson, one of our performance engineers did a lot of work to try and auto tune the caching to work way better. We have a new network messenger in Nautilus called the async messenger and it's way better than the old one because it uses a lot fewer threads and is easier to configure. And coming up in Nautilus, I'm sorry I didn't say. So Nautilus will be our next Ceph release and it's due in about a month, the end of February. And within the async messenger in Nautilus we're having the new messenger over the wire protocol. The big call out feature there is that it should have encryption. They are scrambling to get it done like right now or I guess it's Saturday, so probably yesterday. But we'll finally have full on the wire encryption available within Ceph, which has been a problem for some people. Ceph added a manager demon in Luminus and it's gotten a lot more capable in Mimic in our previous Mimic release and in the upcoming Nautilus release. The manager takes over some extraneous functionality that the monitor was doing that it didn't need to but it's also really nice because it's a good place to store Python modules for doing integrations. We've got a number of new modules that have come in recently. You can export statistics into Bermetius. A big one is that we have a balancer. So Crush is great but it does have one problem. It's pseudo random, so sometimes you end up with OSDs that are a lot more full than others depending on how your cluster is configured and we have a balancer module that can fix that now. And super, super cool. There's a dashboard, a web dashboard for Ceph now. You can actually, it's not, I'm only showing you the read stuff here but you can manage things. You can create new RBD volumes and new pools and adjust OSD weights and stuff and I believe at four o'clock, Lens will be in this room doing a presentation about the dashboard. In the last release in Mimic, we moved to a centralized configuration so that it used to be that if you wanted to update a configuration file or a configuration option in the OSDs, you need to get that file updated in all the hosts. Now you can just do it in the monitor. There are a bunch of performance improvements to, for dealing with recovery and scrubbing where we're just clever about the way we prioritize client IO against system IO. It used to be that if you had servers that were mixed hard drives and solid state drives, then you need to do some work to try and create different trees to create fast and slow pools. That's easy and automatic now and we use memory more predictable amounts of memory now. There've also been a whole bunch of usability improvements. Not any that I really need to call out. Okay, so for more information, we've got docs at docs.step.com. You can go to our GitHub page or we have a very active community on IRC and the concept channel on OFTC or on our mailing lists with a lot of users. So that's my talk and we got about four minutes for questions. All right, try and make it quick. All right, so I'm gonna ask you, are these good audience questions or should we talk at our booth later? All right, pick one. Just showed monitors and OSDs as separate notes. And in our infrastructure, we are using the monitors as, we are also using them as OSD notes. So I just want to make sure we are not following an anti-matter because we didn't really see a decrease in performance after starting using them. Yeah, so from sort of an upstream perspective, it's perfectly fine to run different kinds of units on multiple servers. That was mostly for illustrative purposes. Some vendors will ask you to dedicate each server to a particular type of service, but if you're not doing that, that's fine. I have a question on PG sizing. So if I get my subsystem now, I define a PG size and then I say in five years, I'm gonna add a few more disks. They have bigger capacity and so on. What's the recommendation? Okay, so I talked about, but sort of alighted a lot of the complexities around placement groups. You need to pick a number of placement groups that live in a pool and that affects the way your balancing works, but also the amount of memory you use and stuff. So unlike some systems, you can change the number of PG's and it works, but it's never been real easier efficient. Going forward in Nautilus, we actually will automatically change the number of placement groups you have in a pool as well, based on the amount of data in it, and so that's what you should do. I thought I had two minutes left. I mean, they're in. You in the back. Okay, the biggest step cluster I know that was ever created was at CERN a year and a half ago, and they had 10,000 OSDs and 55 petabytes of storage available. I know of a whole bunch of clusters that are around five petabytes, but I don't think many over that that people run for very long. All right, we actually have to go now? All right. So we have a booth down in the booth area where we had a bunch of set people, including me, and we'll be around throughout the rest of the stuff. There are a number more set talks in this room and there's a Birds of a Feather session tomorrow.


The Hubble Space Telescope is entering its 25th year in operation. Here it imaged three sections of the beautiful Vale nebula in 1997. We saw those in our segment on star clusters and supernova. In 2015 Hubble took another look, overlaying new images with the old. This allows scientists to study how far the nebula has expanded since it was photographed over 18 years ago. Despite the nebula's complexity and distance from us, the movement of some of the delicate structures is clearly visible, particularly the faint red hydrogen filaments.


So, next we write down unequal contributing, unequal contributing resonating structure. Write down in this case, we cannot find out the exact value of bond order, the exact value of bond order, but we can find out the range of the bond order, exact value they would ask you also in the exam for unequal contributing. So, in this one example you see range of bond order, we can say bond order lies in this range, like the first example I have already taken this example C H 2 negative C double bond O, now the resonating structure of this is what? C H 2 double bond O minus an H, these are equal contributing yes or no? How do we find out equal contributing or not? No, no, how do we find out equal contributing structure? If the stability is same, correct? Are they have they have same stability? No, no, because for this we use the rules of relative stability of resonating structure. Obviously, this one is what? This one is less stable, because negative charge of oxygen, so now when you have the rules, you will have the idea that what rules you have to apply, it is not a social rule, rule 1, rule 2, then directly you can apply, directly you see equal pi bond, oxygen on negative charge, carbon negative, this is more stable. Now when this is more stable, so this contributes more into the structure, correct? Now if you have to find out the bond order, bond order of carbon-carbon bond for this quality, okay? Exact value we cannot find out, but we can say the bond order of carbon-carbon bond lies in this range, first of all this 1 to 2, because here we have 1, here we have 2, right? Now since this one is more stable, so this contributes more, right? So we can further write that the bond order lies in this, 1.5 and 2, right? Understood this? So we can write down the range, we cannot write down the exact value in case of unequal contributing structure, okay? Now what is the bond order of carbon-oxygen bond? What is the range for this? It is 1 to 1.5, clear? So for this you should know the rules which RS is more stable, accordingly you can write down the range of bond order, got it? I will write down some examples, okay one example write down. Sir if the contribution like 60 percent, 40 percent then the bond order we can read. That is difficult to judge, 60, 40 or 70, 30. That is why we will write down range, we cannot write it like that, okay? Next one you see, chlorobangene, have you heard about chlorobangene? Yes. What is chlorobangene? Suppose it is bond A and bond B, carbon-chlorine bond, right carbon-chlorine bond. Tell me the bond order of A and B, bond order comparison of A and B. This one is chlorobangene, this one is what? Cyclohexane, chloro-cyclohexane. The first one is, yes, first one does not have that word, it is cyclohexane and chlorine bond. B is more stable, why? Here we have resonance, do we have resonance here? Do we have resonance here? No. Here we have resonance, this is pi-sigma lone pair conjugate system. So we can draw the resonating structure, right? So when you draw the resonating structure, we will have partial double bond characteristics here. That is why, it is negative double bonds and double bonds C L, positive. So partial double bond characteristics we have between carbon and chlorine, that is why the second bond order is more, bond order of B is more. Can you say what is the aromatic? No, no, we are talking about this bond, aromatic is this ring, we are talking about carbon-chlorine bond. Can we say that the whole thing has more valence to it, so that is more stable. See, no, no, no, this is a bond resonance of each other. See, point is, this is the different molecule, this is a different molecule. Over the stability if you ask me, this is aromatic compound, because ring is more stable, obviously this one is more stable, but here we are trying to find out the bond order of carbon-chlorine bond, like I said, bond order of two atom will say in a molecule. So we are talking about bond order of this bond and this bond, since here we do not have resonance, bond order of this bond we can write. Bond order is one, exactly one, but here it will be between one and two, right. Obviously the bond order of B, bond order of B is more than that of, that is why aryl halide, chlorine on benzene, right, that we call it as aryl halide, when you remove one hydrogen from chlorine, it becomes aryl. Aryl halide is stronger than the normal alkyl halide, because of resonance, because of this resonance it develops a partial double bond characteristics and it is difficult to break, okay. So in comparison alkyl halide and aryl halide, aryl halide is more stable, carbon hydrogen bond is more stable than carbon hydrogen bond is alkyl halide. Exactly, it is stable. First one, first one. First one, carbon-chlorine bond is more stronger. If the second one is less stable, so won't it want to change back into the first structure? That is a different thing, but it has some partial double bond characteristics, because of resonance, because if this delocalized will be there, continuously there, if you draw the actual structure, the actual structure is this, partial double bond characteristics. That's why the second one bond strength. And we know the order of bond length and bond strength. Bond, order and bond strength is? Directly. Directly. And bond length is? Inverse. So any one of these questions, if they ask in the exam, you can compare it. Okay. This question, tell me, bond order of alpha, beta, bond. Yeah. This is alpha. This is beta. And this is? Oh, it's a whole. Alpha means this carbon-carbon bond. Okay. Beta is this gamma. So that's the bond stability. Bond order. Bond order of beta is? The alpha. The highest beta and alpha is gamma. It is. Oh, it's alpha, beta, gamma, not normal. Beta, alpha, gamma. Beta, alpha, gamma. They are not normal clature. No, no, no. This carbon-carbon bond is alpha. Carbon-carbon bond is beta. Carbon-carbon bond is gamma. Like here, we have carbon-carbon bond is A, carbon-carbon bond is B. Which one is the most? Beta. Beta. What is the bond order of this? It's two. And what about this alpha? One, two and something. One, two, two. Right? And this one is? One. Right? So beta is max. Then alpha. And then gamma. Okay. What about this one? CS3. CS2 double bond, CH. OH. OH. And CS3, CH2, OH. Carbon-oxygen. Alpha, carbon-oxygen. Beta. Alpha, beta, comparison. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha. Alpha is more white because it shows us. Here we have resonance possible. No, it shows the two states. It is not paired. They won't draw in the exam. You have to know this. When oxygen bond is in two bonds, it has two lone pairs. It is conjugated, right? Yes. This is conjugated. This there goes partial double bond characteristics. And that's why the bond order of alpha is more than the kind of beta. Okay. Bond order of alpha and beta. Why? Sir, this has more resonating structures than this. So? Sir, if we do the dimensions by number of resonating structures, this one will have less. Alpha is less. See, we have this lone pair and this lone pair. And because of this resonance, it develops partial level bond characteristics. Right? So here the bond order of beta is what? Less than two, but greater than one. Okay? Alpha bond order is what? It is one here. In this molecule, there is no resonance. No resonance when I say it means this lone pair is not involving resonance. Why? Because there is conjugation, but because of this group CS3, there is a static repulsion here. And because of this static repulsion, this group changes its plane. So the entire molecule is not plane at all. Okay? So this CS3, one of the CS3 will go into the plane. You know this bond? It is coming out of the plane at arc range. And this wedge is into the plane. So what is the plane? There is something. How is it not closed? How is it not closed? CS3. This is CS3. This is CS3. See because of this two group present, we have a static repulsion here. Right? Static repulsion means hindrance. Both this CS3 and this CS3 are pushing each other. So because of this hindrance, stability decreases. Right? And to minimize this hindrance, what happens? The plane of this molecule will change. It rotates to minimize the repulsion and adjusts the... Static repulsion is the repulsion here. This group and CS3 repulsion. See, but why doesn't that CS3 and that carbon... That's CS2. Not that much to repulsion. If you have this group present, O-C double bonds is bulky group. Right? And if any group is present, here suppose cyclopropyl like this, then since these two groups are big, so we have a static repulsion. Right? Both groups will push each other. Right? And because of this static repulsion, that stability decreases, you see. So here also we'll have this static repulsion. Right? See, this question, if you get in the exam directly, you'll do it wrong. If you don't do it, you won't know. That's it. Organic chemistry is like that only. You'll see many things where the... No. The basic logic won't apply. You cannot say. You can ask where we consider this static repulsion. Right? You can ask this question. So I can say when there's bulky group attached. Right? So because of this static repulsion, stability changes and you should know when you have to apply. Or the polyethylene group present, and this thing is present, this will have the static repulsion. And to minimize this repulsion, it changes its plane. And you don't have to do anything into it. It adjusts in such a way so that the repulsion is minimized. Right? So what have it conjugated? Because... Up this repulsion, the plane of this and this will change. So it's one, it's like this, another one is like this. So it's not parallel orbit. No resonance. No conjugation, no distance. Sir, is static repulsion the same as static hindrance? Yes, correct. Static clouding, static repulsion, static hindrance, all are same things. Okay? Static clouding, static repulsion, static hindrance, all are same things. So because of this static hindrance, this NH3 hole twice changes its planes and this becomes non-plane and now the entire molecule. And hence the resonance is not possible. Write on this example properly. Okay? So alpha is one, beta is this, so the bond order of beta is more than that of... Sir, there was only one bond there and the right one was very stiff as a bunch. Which one? The bond of the bonds. This entire thing will be under repulsion. Only this bond is there. Only this bond is there. That is what the difference between the two bonds. Done.


One day at a time one day at a time one foot in front of the other or Wheel in front of the other in my case Life doesn't stop someone's got to take the trash up life continues as you know the tasks the chores at the house They don't stop just because you're injured and I tell you what working with a trash can and just keeping at you Just keeping things moving in the house. It is a good core work So with these crutches and the scooter I feel like I'm getting to work out every single day just hopping around Trying to be patient as much as possible. And yes, it was a good solid cross-training day today It wasn't my best, but I do want to say a shout out to Craig I believe is Craig who sent me that Flotation belt that was awesome I'm trying to figure out how to best use it But basically by putting the belt around my waist in the pool I felt like I was able to focus more on driving my legs rather than relying on my arms And that's like that's what I want to make sure I keep as strong as possible through all of this cross-training Are my legs and that's it. That was good. So thank you Craig for sending that Flotation belt whatever it's called and because I'm cross-training it means I cannot drive to the mountains Go seek beauty up in the mountains, which means I have every single day Just a teeny tiny bit more time on my hands not much But just a little bit and it's probably gonna go away pretty soon once I'm back to running and off these crutches I was thinking gosh How can I use my time as wise as possible for helping all of you? Specifically those that have questions about training for a 5k. So here's my idea Listen if I was to become a coach and there are coaches out there just so you know online based coaches Usually and I'll throw some numbers at you Usually you're gonna pay between $75 and $150 a month to hire a coach and a lot of the coaches will only take on like 10 athletes Maybe I've seen as many I think 20 athletes at a time if I were to do that I would love to do that I would be a static to do that with with many of you out there But I don't have time that would mean if I were to do that and become a coach and basically provide Daily or weekly one-on-one phone calls. What would that mean? It would mean these daily vlogs Would go away or at least be dramatically decreased. There's only 24 hours in a day I just don't have that kind of time And so because I don't have a ton of extra time to become a full-blown running coach online right now Maybe down the road not counting it out, but that could be a decade away. I'm not even kidding Like that could be a long long time from now. Therefore. What is the next best option? So here's what I'm thinking I want to take all of my experience over the last 20 years all of my knowledge and Really so I have coached before in the past at the collegiate level at the division 2 collegiate level I obviously ran from Mark Wetmore who took me from a 1627 5k guy down to a 1446 guy So I kind of watched Mark work his magic with me as a walk-on at CU He dropped my time considerably and then I have some experience coaching my brother to a 10th place finish at Footlocker So that was good. I feel good about my 5k Coaching background and so I'm like, okay, let's do this Let's help you out there who want to run faster 5k specifically All right, we're gonna talk more about what's on the board here in a second And so I also know that people watching this YouTube channel right now Some just started running in the last three months. That is amazing and congratulations We have people want watching who have been running for two to three years and are ready to try and break 25 minutes in the 5k or maybe 20 minutes in the 5k and you're just like ready to make that next step Then we've got more advanced runners and then we've got I'm not gonna say elite 5k runners But runners that are trying to let's say high schoolers who are trying to be recruited to running college Okay, so here's where I'm at. I'm thinking of starting two new coaching series on this channel and Basically new playlists on this channel that will focus on two of these categories So I just don't have enough time quite to make a series for all four categories But I'm gonna do basically the two ends of the spectrum I'm gonna start with the I'll just say like the couch to 5k category So really people who are just beginning to run or who have are like walking right now Basically like they want to start running they want to try and run a 5k in 2019 But they frankly have no idea how to go about doing that All right So that's gonna be the first series and then the second series is gonna be the other end of the spectrum Specifically, I would say a lot of high schoolers are are messaging me on Instagram specifically and they're asking how to run a fast 5k So now is the time to put it into action the next series will be all about how to build Specifically now so it's may it's may right now when I'm recording this getting ready for the fall cross-country season So you've got May you've got June you've got July and you've got August so basically Three and a half months. What would I do if I was a high school or if I was a high school cross-country coach? What would I be? What assignments would I be giving my athletes throughout the summer months? All right, so that's gonna be the second playlist and we're gonna do this So, what do you think? I know this is kind of a new topic for this vlog, but I'm excited to help you out there Specifically at the 5k distance now listen I would say I'm just gonna tell you right now if I had to rank the other Distances that I would feel most comfortable coaching. It would be in this order. It would be 5k 10k Ultra whoa Full and then half and let me explain 5k because I already explained with my past coaching experience 10k for my coaching experience at the Division 2 level, but also again under Mark Webmore Just yeah, we raised 10k's in cross-country So I feel pretty good there ultra because that's what I've been racing for the past four years I feel really good about ultra full. I would not feel quite as good giving you coaching advice Why? I never raced a marathon on the roads. So be patient with me I'm trying to trying to figure it out literally as we go maybe in a month from now Maybe in two months from now, but not yet Let me get a good marathon under my belt before I start dishing out Marathon training plans and then the half marathon is just I've raced half marathons But again, I would need to do a lot more Processing and frankly racing at that distance before I would again feel comfortable dishing out half marathon advice And just so you know these videos would not be replacing the daily vlog. That's what you're watching right now We're still gonna be doing that, but it would be step by step training plans very detailed You wouldn't have to think at all. You just have to watch the video You could write it down somewhere or record it on a spreadsheet and then follow it step by step all the way To your starting line on race day and just to give you a quick example of what I would put into the couch to 5k playlist For here we go. I would not have you start running. I would have you start walking Yeah, I know it's crazy But it would be a slow progression again based on a lot of experience over the years If you're really just beginning to run you don't want to start running You want to start walking and then build into running? Alright, that would be one example then number two For the more advanced 5k runners runners that are really trying to run fast at least Let's say for guys in high school if you're trying to run under 17 minutes I would talk very specific about Volume how many miles to run through June through July through August? When to go up when to go down in your volume all of that So that's just a couple examples of what we would hone into and yes The key word is you get to choose if you were to if you wanted me to talk about a specific distance What distance would it be so choose one of these and then let me know in the this is the question of the day What experience level would you be would you put yourself in are you a beginner? Intermediate advanced what and so it's basically choose one of these and then beginner intermediate advanced and then anything else that you'd like to add as far as Your future hopes for training plan help on this YouTube channel. Alright, does that sound good? I'm excited about this and again. I have a little bit of extra time now So now is the time to get the ball rolling for everyone who is interested in running a 5k All right, I'm not gonna sign off quite yet gonna go inside check in on the family I think dinner is almost ready. Let's go. Come on


Γεια σας και ευχαριστούμε! Σήμερα θα πάμε ένα καλύτερο λόγω σε το νοβέμβαιο που εξηγήσαμε με τα τελευταία μου και τελειώα και την επόμενη ημέρα θα πάμε να εξηγήσαμε με 8 καρδιά σε τελειώα χρησιμοποιώντας προς αυτή την εξηγή. Λοιπόν, πρώτα θα ξεκινήσουμε με ένα σνόφληξ πλένδο. Αυτό είναι ένα καλύτερο στάμψετ, πλένδο σνόφληξ. Είναι καλύτερο για τα εξηγή και για τα πλένδο. Μπορείτε να χρησιμοποιήσετε αυτά τα σνόφληξ σε their own but they are actually part of a bigger group. Υπάρχει μια λάμψη που εξηγήσαμε με κάποια από τα σνόφληξ. Λοιπόν, είναι πραγματικά ένα σνόφληξ πλένδο που εξηγήσαμε. Μπορείτε να εξηγήσετε ένα στήριο στον άλλο και θα σας δείξει έναν καλύτερο λόγω. Λοιπόν, υπάρχει και έναν καλύτερο λόγω και τα λάμψη θα εξηγήσετε μόνο το σνόφληξ που είναι το πλένδο. Τώρα, αυτό το μήνυο έναν καλύτερο λόγω πλένδο που εξηγήσαμε αυτό το σνόφληξ που εξηγήσαμε. Λοιπόν, αυτά είναι τα λάμψη πλένδο και μπορείτε να δείξετε ότι έχετε τα ίδια same designs under the stamp. They are not made to cut them out but you can mix and match between all those three sets and you can create beautiful three dimension on the snowflakes. Τώρα, αυτό το μήνυο είναι παρακολουθεί με αδερρισμένος στήριες που θα σας δείξετε. Ας ξεκινήσουμε με τους φίλους στον φόρο, που δημιουργεί four different creatures and a little hut that you can place on top of each one of the creatures and there are also lovely trees to create beautiful scenes. And as always there are matching dice available in case you want to pop all those designs on your cards. Τώρα, εδώ είναι έναν αδερρισμένο στήριο. Τ virtuous greetings, you get a polar pair in three different positions and you also get designs for creating an ice or a snow bank, and they are also matching dice to cut them out and pop them in your cards. Τώρα, εδώ είναι έναν αδερρισμένο στήριο thatís I just love these designs. There are two girls' one is holding a puppy and the other one is holding a little cat then also a cat and a dog that you can stamp on their own, a really adorable stamp set it has something for everyone. και υπάρχουν και μάτια σκέψεις. Και εδώ είναι ένα σκέψι, καλύτερα για λίγο σκέψι. Είναι η διάστηση που κάνεις με το σκέψι μου. Μετά από τα σκέψι, μετά από τα σκέψι σου, βλέπεις πολλές μπέρδεις και μπάνιες και το σκέψι της σκέψις, να βρίσκεις μυαλές σκέψεις. Τώρα, υπάρχουν και μάτια σκέψι, όπως πάνω. Και υπάρχει ένα άλλο σκέψι, που θα σας δείξω, που έχει been released this month. Και αυτό είναι το You Make My Heart Melt. Και as you can see in this case you get three adorable cuts along with even more props to create your little scenes. And also there are matching dyes. Now between these two stumpsets as you can see the proportions are pretty much the same, so you can mix and match them and create beautiful scenes with adorable critters. Let's move on to another type of thumb set. This is coffee date. And as you can see it comes with a solid image as well as an open line one. So you can stamp one inside of the other or you can just use the open one and color it with your favorite mediums. Now I think that this design works well for both coffee lovers and tea lovers. So you can really customize it and make it your own. And as always there are matching dyes. Now as you can see there are no sentiments in this thumb set but there is a thumb set released this month that is called Coffee Break and all the sentiments would go perfectly with that thumb set. And there are sentiments that would go great if you are a tea lover. So you can use the sentiments such as you deserve a break, I miss you, this wine is on me and many more options. And let's move on to the smallest thumb set for this month.  And of course matching sentiments. Now another small thumb set is our favorite little girl. This time she is holding a stocking and it's called Filled with Joy and I think she is perfect to stamp her, color her with your favorite medium and then cut her out and stick her on top of your Christmas gift tags. And now let's move on to the rubber stamp for this month. This is the Mesmerizing Mandala background and I think it's just that so mesmerizing, a beautiful design to create lots of techniques with it such as embossing for example or resist technique I'm going to bring in a standard card so you can see how big it is. It provides a perfect background it's going to cover it up completely and you can stamp it coming from one side from the top, lots and lots of ways to use it. Now there is another version of it and this time in a die it's slightly smaller than the stamp but it provides a really intricate and beautiful die cut which I think would make the perfect focal point for a winter card or a Christmas card and let's take a look on some more dies for this month so this is the word peace it's nice bold and big so it's going to make a great focal point on your card. Now from this release, this is my favorite die set this is called Dear Love and you get two little dears in different sizes on the opposite directions I look with tiny little hearts I think these are adorable I'm going to use it in my create 8 videos and you will see how I work with that. Now this is the ornamental medallion trio and you get three different designs on these medallions and they make beautiful focal points and this is the congratulations circle frame these matches with those pouches for creating shaker cards has the word congratulations all around and it's actually the free with 60 for this month Now these are the link chain circle frames you get four different frames and I think they are beautiful to nest your focal points inside of them they give you beautiful intricate design and you can pop that on top of your card to create beautiful dimensional elements now there are two more sets of dies that you can use again and these are the stitched mod stacks and they come in rectangle and in square shapes they have been released previously but without the stitching and I always like to have that stitching around my panels I think they give a beautiful design and a finished look so I know I will be using these a lot so that was the release for the month of November by my favorite things I will be back tomorrow and the day after posting 8 cards in total featuring products from this release and hoping to inspire you thank you all for watching today and I'll see you all tomorrow