‫So here's the thing, so a database engine is nothing but a library that take care of the disk storage
‫and the crud operations like create and update and delete on the actual describe, because guess what?
‫When you do insert into a table values one, two or three.
‫Well, what happens here is there are a lot of layers.
‫And the lowest layer is we're going to take your denim, flush it to describe whether this is it's deeper
‫or just in a normal, hard, hard drive.
‫Right.
‫Spinning wheel.
‫Right.
‫There is there is a library that does that.
‫Most of the databases has always merged this kind of a database into one monolithic thing.
‫Right.
‫But recently, this has started being broken into.
‫OK, let me break these libraries into two parts.
‫Right.
‫The data, the actual work to store on the disk versus the actual work to do, for example, a client
‫server.
‫That's different.
‫Right.
‫And I want I want this to be separated from this so I can like classic classic reusability software.
‫Right.
‫This database engine can be as simple as just the key value store really is just example, a level.
‫Right.
‫So I can put a key there's a value store to disk that set.
‫Right.
‫And it could be as rich as complex to support full acid transaction.
‫And we talked about it, guys, I'm going to reference it here.
‫Atomistic consistently isolation and right and support transaction supports foreign keys.
‫All these functionality could be moved to the database engine and that's could be could be really powerful
‫for people who want to create new databases.
‫Right.
‫So I say, let me just use this engine.
‫I don't want to write my own engine.
‫Right.
‫So, yeah, database could very could be as simple as this.
‫It could be as complex as have all these features.
‫So RDBMS can use the database engine and build features on top of it.
‫Right.
‫You might say Hosain.
‫Well I thought that it was just storing stuff on disk.
‫Right.
‫That's its job.
‫Well, you're wrong because databases support so many other features.
‫And if you and I don't use it, enterprises use it.
‫So like server application, I want to I want to do a master follower setup where I have master database
‫or a leader database.
‫And I want this follower node to copy its data that that has nothing to do with storage.
‫Right.
‫This is a feature of the database.
‫So you want to build this at the DBMS level, this database engine level.
‫So isolation, some databases do very high level isolation at the database level, database software
‫level stored procedures.
‫Fording Keith, so many things features that the database can support.
‫Right.
‫But it's independent of the engine storage stuff.
‫So if you want to write a new database, you don't have to start from scratch.
‫Just pick up an engine, pick up one of those engines are we're going to talk about and then write your
‫own database on top.
‫And you can be you can you can design your database to fit a single good use case that maybe the general
‫purpose databases out there don't outfits you use case.
‫Right.
‫So you can start thinking on it.
‫And that's where we start to see a lot of databases, software being being created because there are
‫specific use cases.
‫And to be optimal in this day and age where latency really matter where, where, when performance really
‫matter.
‫Well, I'm going to create my own database.
‫And I'm I am just defining my my workload so that it is for example, it's a very high end sort of total
‫workload.
‫But I barely read from my database.
‫Right.
‫I don't know.
‫This could be like a cold storage kind of a thing.
‫Like I'm I'm I'm starting log's.
‫Just let me store my logs and I don't really care about reading.
‫So that's one use case.
‫Another use case could be, hey, I'm barely writing to this thing, but I'm reading a lot.
‫So make read very fast.
‫I don't care if you're going to sacrifice rights.
‫OK, so you can play with this stuff.
‫Right.
‫Sometimes referred to as a storage engine or embedded database as we talk.
‫Right.
‫Embroideries means you can take it as it is and run it on your software on yourself.
‫You can run it on your laptop immediately, directly.
‫There is no client and server connection, right?
‫It's a single library that you import in your code.
‫And once you open up your software, it just exists, right?
‫Very.
‫Awful stuff, so some DBMS gives you the flexibility to switch engines, just like my Wal-Mart, EDB
‫or persona another fork of my school, I couldn't find another database that I me to switch engines
‫except my school.
‫But I might be I might be wrong there.
‫So correct me if I'm wrong.
‫Some database.
‫DBMS database management system that is comes with a built in engine that you cannot change, Bosco's
‫is an example here, right?
‫You cannot change the engine of Polska just to be something else.
‫It's always better, I believe.
‫And that's that.
‫You stuck with Beatriz's, right?
‫So.
‫Maybe that's a good thing, maybe that's a bad thing and I'm trying to remember was switched from I'm
‫not sure whether they switched from a they switched either from Postgres to my school, from my school
‫to Bosco's.
‫I need to confirm this information.
‫Right.
‫I they switched for a reason, I think now or that that was part of the reason.
‫So I just confirmed I'm going to link the the article below.
‫So they switched from Posterous to my school.
‫Right.
‫I don't know the reasons, but probably one of the attractive reasons for my school is the ability to
‫switch engines.
‫The underlying engine.
‫You're not stuck to one engine.
‫You can you can create a table with this engine my eyes and then create another table with another completely
‫different engine that does completely different things.
‫So that's kind of attractive.
‫I'm not saying that's the only reason I'm going to reference the article below.
‫So they actually switched from PostScript to my sequel, right?
‫All right, so that's that's another attractive thing.