A hatékony adatkezelés nemcsak megkönnyítheti, hanem meg is gyorsíthatja a munkafolyamatokat. Emiatt a programozók mellett számos más területen is elterjedt az SQL szerverek használata. Egy korábbi webináriumunk alkalmával így Farkas Máté, a Microsoft Data Platform tanácsadója és hivatalos oktatója volt a vendégünk, aki az utóbbi 10 évben kizárólag SQL szerverekkel foglalkozik és közreműködött egy 10.000+ lekérés/másodperc és több TB/másodperc lekéréseket kezelő adatbázisok létrehozásában is.
Segítségével egy átfogó előadás keretében áttkeintettük az adatbázis és az Excel közötti legfontosabb különbségeket, kitértünk a relációs adatbázisok és az SQL nyelv működésére, valamint felhasználási területeire. Ha csak néhány perced van, olvasd el összefoglalónkat, ha pedig kíváncsi vagy a teljes előadásra, az alábbi videóra kattintva visszanézheted.
Adatbázis vs. Excel: a legfontosabb különbségek
Habár az adatbázis és az excel is jellemzően adatok tárolására, lekérésére, összehasonlítására, kezelésére használható, jelentős eltérések figyelhetőek meg közöttük. Vendégünk ezek közül néhányat emelt ki, amelyeket az alábbiakban részletezünk.
“Sokan azt hiszik, hogy az Excel is egy adatbázis, pedig pontosan azért nem, mert azokat a dolgokat nem tudja, amit egy adatbázistól elvárnánk.”
“Az Excelben, ha valaki megnyitja a fájlt, akkor azt csak egy valaki tudja szerkeszteni és a többiek legfeljebb csak olvasni tudják, mondjuk ha ez egy hálózati helyen van a vállalaton belül. Az adatbázisok ezzel szemben pedig kifejezetten arra vannak kifejlesztve, hogy egyszerre többen is írni is, módosítani tudják az adatokat és lehetőleg az adatok ne kavarodjanak össze, a felhasználók ne írják felül egymás munkáját.”
“A másik amit kiemelnék, az a sorok száma. Jelenleg egymillió soros rendszert lehet kezelni Excelben. De nem tudom, hogy dolgozott-e valaki egymillió soros Excellel, hát nem egy kellemes élmény. Jó sok memória kell, hogy legyen a gépünkben és óvatosan kell vele bánni. Ezzel szemben az adatbázisok úgy vannak tervezve, hogy elméletileg végtelen sorral képesek legyenek dolgozni, még akkor is, ha ez nem fér el a számítógép memóriájában.”
Mik is azok a relációs adatbázisok?
“Ezek tulajdonképpen nem mások, mint adatbázisokat tartalmazó egységek.”
Úgy működnek, hogy például egy eladásokat és vásárlókat tartalmazó adatbázisban az eladások táblában elég feltüntetni a vásárló azonosítóját, ami egy másik adatbázisban az azonosító mellett tartalmazza a vásárló adatait. Így nem kell minden alkalommal megismételni őket, ha eladás történik. Ez hatékonyabbá teszi a folyamatot és csökkenti az adatbeviteli szükséget, amivel rövidül a munkafolyamat, kompaktabb marad az adatbázis és csökken a hibák lehetősége is.
Ha szeretnéd te is elsajátítani az SQL nyelv használatát, nézd meg a 3 hetes Adatbázis lekérések SQL segítségével című kurzusunk, vagy a 12 hetes Adatbázisok fejlesztése Microsoft SQL Server környezetben című kurzusunk tematikáját, melyek oktatója Farkas Máté lesz, aki gyakorlati feladatokon keresztül adja majd át tudását a résztvevőknek.
SQL nyelv
A lekérdező nyelvek közé tartozik, amikkel a jelölő nyelvek által tárolt adatokhoz lehet hozzáférni. Ebbe a nyelvcsaládba tartozik még az SQL-en kívül a JQuery, XQuery és az XPath is.
“Aki SQL-t tanul, nagyon fontos megjegyezni, hogy az nem programozni tanul, tehát az SQL az nem egy programozási nyelv, inkább egy ilyen logikai nyelv, amivel meg lehet fogalmazni azt, hogy a lekérdezésemnek az eredménye hogy nézzen ki. Ezt az SQL szerver le fogja futtatni és ténylegesen azt az eredményt fogja kiadni, amit én az SQL nyelvvel leírtam.
Az SQL nyelv használata és a szerver architektúra
“Az SQL szervert kizárólag SQL parancsokkal lehet elérni. Nincs semmilyen más mód, vagy script, amivel külön valamilyen módon hozzá lehetne férni az adatbázisokhoz vagy a kiszolgálóhoz. Csak SQL parancsokat lehet beküldeni és ő arra ad vissza valamilyen választ.”
Hogyan néz ki egy SQL lekérdezés?
Az SQL betűszó feloldása a Structured Query Language, amelynek gyakorlati használatát az alábbi példán keresztül láthatod:
“Itt a színeknek is van jelentősége. Ez abban segít, hogy egy kicsit könnyebben tudjuk értelmezni és olvasni a lekérdezésnek a szövegét. De egyébként egy ilyen nagyon egyszerű szövegről van szó. Bármilyen szövegszerkesztő programban össze lehet rakosgatni és ezt kell elküldeni az SQL szerver felé.”
Ha valaki tud angolul, akkor láthatja, hogy a logika és a szókapcsolatok nagyon maguktól értetődőek. Akár le is lehetne fordítani magyarra. Az SQL nyelv egyik lényege, hogy egy leegyszerűsített angol mondat. Amikor megalkották az SQL nyelvet, akkor fontos volt, hogy olyanok is tudják használni, akik nem biztos, hogy tudnak programozni.
Adatbázis szakterületek
Éppen egyszerűsége miatt az SQL használata nemcsak a programozók körében rendkívül elterjedt. Számos munkafolyamatot egyszerűbbé és gyorsabbá tehetünk a hatékony adatbázis kezelés elsajátításával. Az alábbi szakterületeken használják például előszeretettel:
- üzleti elemzés,
- data science,
- szoftverfejlesztés,
- üzleti adatbázis kezelés és adminisztráció,
- minőségellenőrzés,
- kutatás és oktatás,
- marketing,
- újságírás.
Adatbázis technológiák
“Egyre gyakrabban az adatbázisok már nem is helyi adatközpontokban vannak, hanem valahol a felhőben. De azért továbbra is megmarad még az on-premise világ, vagyis a helyi adatbázisok üzemeltetése. Itt van most egy kettészakadás. A kettő világ között az a különbség, hogy a felhős adatbázisnak az üzemeltetését nem mi végezzük. […] Ez azoknak a vállalatoknak jó, akik nem tudnak fenntartani egy külön rendszergazda csapatot, akik az adatbázissal foglalkoznak, egyszerűen csak fizetnek ezért a felhős szolgáltatásért. Így a felhő szolgáltatás üzemeltetője átvállalja ezeket a feladatokat egy kis plusz pénzért.”
“Ennek az ellentettje a helyi adatbáziskiszolgáló SQL szervereknek a használata. Ott nekünk kell figyelni arra, hogy a hálózatunkkal minden rendben legyen, hogy nehogy a diskek, a háttértárak beteljenek és, hogy legyen mindig elég erőforrás ezekben a szerverekben. Tehát az egész üzemeltetés ránk hárul. Attól függően, hogy mekkora a vállalat, előfordulhat, hogy egy egész csapatra van szükség.”