Adatbázisok története: adatbázis és DBMS
Réges-régen egy amerikai országban, egy nagy informatikai cégnél merült fel egykor nagyon nagy mennyiségű adat tárolásának feladata. Mi olyan nehéz ebben, kérdezed? Hiszen a nagy cégeknek van pénzük, ami azt jelenti, hogy több merevlemezt vásárolhat – és ennyi.
Remek ötlet, de ahogy mondani szokás, az ördög a részletekben rejlik. Nagy mennyiségű adatot kellett nemcsak tárolni, hanem változtatni is, ezekből különféle mintákat készítettek. Ezenkívül különböző helyekről különböző adatokat kell kiválasztania, és ezt gyorsan és szépen kell megtennie.
Általánosságban elmondható, hogy minden a szokásos módon zajlik: az ügyfelek olyat akartak, ami nem létezik, és a merevlemez-vásárlási döntés ezúttal nem működött.
![](https://cdn.codegym.cc/images/article/ffb700f7-60b3-4cfc-a274-a1a35a6b1f31/512.jpeg)
Ezért ennek az informatikai cégnek a programozói nagyobb költségvetést csaptak ki maguknak, kutatómunkát végeztek, majd a költségvetés lejártakor egy prezentációt mutattak be, ahol az adatok adatbázis formájában történő tárolását javasolták. Egy adatbázisban minden adat táblákban, és minden tábla külön fájlban van tárolva. Minden ötletes egyszerű és minden működik.
De egy ilyen bemutató nem felelt meg a vásárlóknak, és folytatódott a szedés:
![](https://cdn.codegym.cc/images/article/a7850c1c-b3ee-403d-8453-dcc511174b7b/512.jpeg)
- Hol a pénz, Lebowski?
- Miért jobb az adatbázis, mint a jó öreg adattárolás fájlkészlet formájában?
- Nagyon jó megoldás kell, nem az!
- És ez a teljes költségvetést igénybe vette?
Halálos csend honolt a bemutatóteremben. A helyzetet azonban mindenki számára váratlanul megmentette egy junior fejlesztő, aki elmondta, hogy az adatbázishoz egy speciális program csatlakozik - egy DBMS (Database Management System), amely képes:
- Adatbázisok létrehozása, módosítása és törlése
- Változtassa meg az adatbázisokat, nevezetesen: vegyen fel új rekordokat, törölje a régieket és módosítsa azokat
- És szupergyorsan végrehajtható bármilyen adat különféle kiválasztása
És a programozók még egy speciális szupernyelv tervezését is befejezik az adatok szűrésére - az SQL-t . És azt mondják, hogy ennek a varázslatos SQL-nyelvnek a segítségével bármely menedzser könnyedén szűrhet és ki tud venni bármilyen adatot az adatbázisból.
![](https://cdn.codegym.cc/images/article/216e75d9-299a-44a8-9e0a-0cc1d26717a8/512.jpeg)
A programozók még nem fejezték be a nyelv tervezését , így az SQL-ről és a DBMS-ről egy szó sem esik az előadásban.
Mindenki örömére a vásárlókat lenyűgözte a hallott magyarázat, több egymásnak ellentmondó elképzelést fogalmaztak meg arról, hogy milyen legyen ez az új nyelv, és még költségvetést is szántak a finomítására.
A menedzserek és a műszaki igazgató gratulálni kezdtek egymásnak a projekt sikeres befejezéséhez, és azonnal elmentek megünnepelni ezt az eseményt, nem tudva teljesen, hogy ebben az egész történetben a fiatal programozó a legfontosabb személy ...
Népszerű DBMS és MySQL
Jelenleg (2022 nyarán) több száz népszerű DBMS létezik, ezért hasznos lesz, ha megismer néhányat. Mivel kezdjem…
Egyrészt a vállalati DBMS-piac évtizedek óta létezik. Ezért vannak elismert vezetői és ígéretes újoncok. Másrészt az üzleti igények folyamatosan nőnek, így a vállalatok informatikai infrastruktúrájának kiépítésének megközelítése folyamatosan változik.
Most már senkit sem fog meglepni egy párezer szerverből álló adatbázissal vízszintes és vertikális felosztással, elosztott tranzakciókkal, valamint egy pár tucatnyi rendszergazdából álló informatikai részleggel, akik elmennek és cserélik a szerver merevlemezét. előre meghatározott menetrend.
Általában, ha egy nagy cégnél dolgozik, akkor valószínűleg sok pénzt fizetnek az adatbázisaikért, és valami ilyesmit használnak:
Oracle adatbázis
![](https://cdn.codegym.cc/images/article/8a53ac38-0a59-466a-9597-f3e6bf618a43/800.jpeg)
Az Oracle 1979-ben (43 évvel ezelőtt) adta ki első adatbázisát. Azonnal az Oracle 2.0 nevet viselte, hogy meggyőzze a vásárlókat arról, hogy a termék nem új, hanem már jól bevált.
Az adatbázis jelenlegi verziója az Oracle 21 c , ahol a c betű a felhő szóból származik , ami mintegy arra utal, hogy az Oracle lépést tart a korral, és megoldásai tökéletesen kompatibilisek az összes felhőtechnológiával.
Microsoft SQL Server
![](https://cdn.codegym.cc/images/article/532a4cde-2214-4bec-96db-bff84eb41af6/512.jpeg)
A Microsoft sok pénzt keres azzal, hogy nem Windowst, hanem szervermegoldásokat ad el közép- és nagyvállalatoknak. Microsoft Office, Microsoft SharePoint, Microsoft Server stb. És persze mindehhez jó adatbázis kell. Emiatt nagyon sok Microsoft terméket és megoldást használó cég kénytelen az adatbázisát használni.
A Microsoft DBMS-ét egyszerűen SQL Servernek hívják , tehát ha egy interjú során meghallja a kérdést: „Dolgoztál már SQL Serverrel?”, akkor tudd, hogy ez nem egy elvont DBMS, hanem a Microsoft SQL Server.
PostgreSQL
![](https://cdn.codegym.cc/images/article/b31cfc41-69af-488e-8079-5433fa502551/512.jpeg)
Ez egy jó ingyenes DBMS, amelyet gyakran nem csak a kis- és középvállalatok, hanem a nagyvállalatok is használnak. Ez az egyik olyan adatbázis, amelyet az Amazon AWS DB-szolgáltatásként kínál.
MySQL
![](https://cdn.codegym.cc/images/article/0ea0a78a-41d2-43c3-8cd0-b4c72d4c142a/512.jpeg)
A MySQL egy nagyon népszerű ingyenes és nyílt forráskódú adatbázis. Jól dokumentált, gyorsan működik, és a funkciók széles skáláját támogatja. A mai napig ennek a DBMS-nek a 8. verziója érhető el.
2008-ban megvásárolta a Sun, amit az Oracle 2009-ben. És ez csak előnyére vált – a termék folyamatosan fejlődik és javul.
Megtanuljuk, hogyan kell adatbázisokkal dolgozni, példaként a MySQL Community Server 8.0 használatával .
Táblázatok egy adatbázisban: oszlopok és oszlopok
A különböző DBMS-ek különböző formátumokban tárolhatnak adatokat, ezért a legegyszerűbb és legklasszikusabb lehetőséget választjuk - a MySQL DBMS-t.
És rögtön az a kérdés: hogyan kell tárolni például bármilyen számviteli bizonylatot? A legegyszerűbb lehetőség, ha minden dokumentumot Excel-fájlként tárol. Ezután az összes kapcsolódó dokumentum egy mappában tárolható. Így működik a MySQL.
Egy másik hasonlat: a Java nyelvben osztályok és csomagok vannak a projektben , ugyanakkor az osztályok és csomagok a lemezen fájlokként és mappákként jelennek meg . Valami hasonló létezik a MySQL-ben.
A MySQL-adatokat táblázatok formájában tárolják , amelyeket adatbázisokká egyesítenek , ugyanakkor a táblák és az adatbázis a lemezen fájlokként és mappákként jelennek meg . Az adatbázis egy mappa, a benne lévő fájlok pedig táblázatok.
Minden táblázat oszlopokból és sorokból áll . Példa:
![](https://cdn.codegym.cc/images/article/ef9c797e-174d-4b27-a109-ff88a837ac5a/512.jpeg)
Fontos! Minden oszlopnak neve és adattípusa van , így ugyanabban az oszlopban minden cellának azonos típusú értékeket kell tárolnia .
Hasonló analógia vonható egy MySQL-beli tábla és egy Java osztály között. A táblázat egy osztály, a táblának, akárcsak egy osztálynak, egyedi neve van. A táblázat oszlopai osztálymezők; az oszlopoknak, akárcsak a mezőknek, egyedi neve és típusa van. A táblázat sorai osztálypéldányok a Java nyelvben.
Egy osztály létezhet objektumok nélkül, és egy tábla létezhet sorok nélkül. Java-ban új objektumot hozhatunk létre, MySQL-ben pedig új sort adhatunk a táblához. Megváltoztathatja egy objektum mezőértékeit, a MySQL-ben pedig sorban módosíthatja az értékeket.
Még helyesebb azt mondani, hogy a tábla nem egy osztály, hanem egy bizonyos osztály objektumainak gyűjteménye. Ha a MySQL-ben van egy Employee tábla az alkalmazottak adataival, akkor Java-ban az ArrayList gyűjteményt használnánk
És persze azonnal felmerül a kérdés: hogyan lehet ebből a gyűjteményből bizonyos adatokat szerezni?
GO TO FULL VERSION