Adatbziskezels 2 0 Elads Dr Pauler Gbor egyetemi
Adatbáziskezelés 2 0. Előadás Dr. Pauler Gábor, egyetemi docens PTE-TTK BRTT, 7624 Pécs, Ifjúság u. 6. F 104 Mobil: 30/9015 -488, Skype: gjpauler E-mail: pauler@t-online. hu Facebook: Pécs Gazdinfo Adatbázis http: //www. facebook. com/groups/278606362188127/ ftp: //gamma. ttk. pte. hu/pub/pauler/Database 2/
Az előadás tartalma Alapvető kurzus információk A tárgy célja Személyes példa Tantárgyi tematika A tananyagok elérhetősége Követelményrendszer A vállalati adatkezelő rendszerek Fogalma, Követelményeik A magyar valóság A Pauler-teszt Mért szükséges tervezni? Szakirodalom
Kurzus alapinformációk: A tárgy célja Miért NEM érdemes adatbázisokról tanulni? „Mert dögunalom. Ha már progi, akkor játék!” /Droid Pisti/ „Jaj, ez ilyen szemüveges kis lúzer pasiknak való” Miért érdemes adatbázisokról/céges adattárházakról tanulni? Tiéd a Jószág, Tiéd a Hatalom, Tiéd a Szőkeség, Mindörökké. Ámen. „Nem szereted az adatbáziskezelést”? – Ne a Lambót próbáld lefektetni: az adatbázis nem a cél, hanem az út a vágyott dolgokhoz. . . !
Kurzus alapinformációk: A legjobb példa a személyes példa 1 2000 és 2004 közt több szakaszban 2. 5 évet töltöttem a State University of New York at Buffalo (SUNY)-n Fulbright ösztöndíjasaként A Jacobs School of Management, a Center for Computational Research (CCR) és Tops Friendly Markets Inc. 168 üzletből álló, NY, OH, PA államokban tevékenykedő áruházlánc közös adatbázis-marketing projektjében: 3. 3 millió fogyasztói kártyával rendelkező háztartás heti egyedi vásárlásait elemeztük Hogy személyes szokásaik megismerésével profitabilisabb termékek vásárlására vegyük rá őket, jól becélzott akciókkal Eredetileg csak üzleti elemző lettem volna, ám az adattárház építés indiaiakra volt bízva, így. . . Egyszer a főnök megkérdezte: „Tudsz adattárházat tervezni? ” – „Nem” – „És ha jól megfizetünk? ” – „Akkor igen”. 1 hét múlva tudtam. 4 év meló, szép ház, kocsi lett belőle 5 indiai rabszolgám volt + az alábbi vas 10%-a: 2000 db×(2. 7 GHz CPU, 0. 5 GB RAM, 50 GB HDD) klaszter-elvű szuperszámítógép A világ akkori 6. legnagyobb nem katonai szuperszámítógépe. Nem katonai!? 2001. 09. 11 után 3 hónap alatt készült el a SUNY földalatti páncéltermében, és a gép többi részén vírusokat modelleztek. . . Supercomputer. wmv – ha az összes merevlemez beindult, a föld megremegett alattuk
Kurzus alapinformációk: A legjobb példa a személyes példa 2 Az általam Oracle 9. 11 -ben összerakott adattárház mérete: 168 szupermarket NY, OH, PA államokban 1900 M$/év forgalom 3. 3 M háztartás, 4. 8 M fogyasztói kártya (világelső akkor: Tesco 12 M) 215, 000 féle termék egyedi vonalkóddal, 44 fő-, 450 alkategóriában, 2600 márka 100 M vásárlás/év, 1500 M megvásárolt tétel/év 41 adatbázis tábla, 520 GB/év Az adattárház tartalma: $/hét/háztartás-ra összesítve: Eladott termékek mennyisége, Forgalma, A kitermelt nyereség (a termékenkénti, hetenkénti haszonkulcsok alapján), Az ezt csökkentő kedvezmények, kuponok.
Kurzus alapinformációk: A legjobb példa a személyes példa 3 Néhány piszkos trükk, hogy lehet pénzt csinálni „uncsi” adattárházakból: Geokódolás: Probléma: Nem elég azt tudni, 1 háztartás mit vett nálad, de mit vehetett másnál Megoldás: feliratkozik a jóember hűségkártyára hogy megtakarítson lemond személyiségi jogai egy részéről, pl. megadja a címét geokódoljuk a címeket Arc. View-val egy digitális térképen, és beazonosítjuk melyik népszámlálási körzetbe (Census Block Group, CBG) esnek népszámlálási adatokból várható fogyasztása kiszámítható a rés (az egyéni eltérések CBG szinten kiegyenlítődnek) Profitkinyerés: Probléma: Nem az a jó vevő, aki sokat vásárol (pl. afro-amerikai mindent kuponnal vesz, mi fizetünk, hogy bejött a boltba 1 kólát venni), hanem aki profitabilis dolgokat Megoldás: Az adattárház figyeli, az adott háztartás mely termékeket vesz tendenciózusan együtt – kiegészítő (Complementary) termékek (pl. pizza-ketchup). Egyedi árengedményt adsz neki egy jobb fajta pizzára HA kereskedelmi márkás (Private brand) (pl. Metro – Aro, Tesco – Gazdaságos, Spar – Budget) ketchupot vesz. Ez rendszerint kevésbé jó, mint a nagy ketchup márkák, de a nyereségtartama sokszorosa azoknak bőven behozza az árengedményt! Vevő magunkhoz kötése: Probléma: A „hűség” kártya nagy kezdőbefektetést igényel a hardwer-szoftver és az árengedmények miatt, viszont nem generál egy csepp hűséget sem: minden pénztárcában ott lapul 2 -3 konkurrens is. Megoldás 1: Adattárház figyeli adott háztartás papír-írószer fogyasztásának kiugrását iskolakezdés körül valószínűleg iskolás gyerekek vannak háztartásra becélzott batman-figurás promóció (költség 15 cent) amerikai kölyök az áruház közepén kiüvölt egy profitabilis vásárlást (profit 8 -10$) Megoldás 2: Adattárház figyeli a papírtányér-papírpohár-műanyagvilla kiugrását, mert amerikai nő vendégek után nem mosogat 1 év múlva integrált parti rendezés kuponcsomag, hátha évente ismétlődő szülinap bekaszálható a teljes parti-rendezés bevétele, mert nem lesz energiája máshova is elmenni Megoldás 3: Rendszeres intimbetét vásárló, majd egyszer csak félbeszakad, még mást vesz továbbra is lehet hogy teherbe esett +9 hónap múlva kezdő csali pelenka kupon csomag brutális árrés van rajta, fogyasztása nem korlátozható
Kurzus alapinformációk: Tantárgyi tematika Hét Prezentáció Gyakorlat Projekt feladat 0 Bevezető, adatkezelő rendszerkövetelmények - Saját projekt kiválasztása 1 Szervezeti előfeltételek, BPD, Papír, DFD, Excel ERWin/MS Visio BPD Saját projekt BPD 2 Excel, OOP, Relációs adatb. , 1. Normálforma MS Access Intro/Import, tábla analizáló varázsló Saját projekt BPD, mintatábla analízis 3 2. és 3. Normálforma MS Visio ERD, Tervezési gyak: Kórház, Terhesség Saját projekt ERD, 2. -3. Normálformáig 4 4. és 5. Normálforma Tervezési gyak: Autóke-reskedő, Úthálózat Tervezési gyakorlat: Családfa 5 MDH: Általános/ speciális dimenziók Értékesítési rendszer, Gázszolgáltató Saját projekt ERD, 4. -5. Normálforma 6 Adatbázisterv projekt prezentáció 7 Modern adatbáziskezelők MS SQL, Oracle GUI Saját projekt adatbázis generáció 8 DDL UDT, Rule UDT saját projektben 9 Egy táblás SQL lekérdezések Egy táblás lekérdezések 10 Több táblás SQL lekérdezések, DML Több táblás lekérdezések 11 Adatbázis GUI tervezés MS Access Forms Saját projekt űrlapok 12 OLAP Excel kimutatások Kimutatás tábla 13 Adatbázis megvalósítás projekt prezentáció
Kurzus alapinformációk: A tananyag elérhetősége Minden tananyag a PTE-TTK nyílt ftp-site-járól érhető el: ftp: //gamma. ttk. pte. hu/pub/pauler/Database 2/ Power. Point prezentációk formájában: Presentation. X – előadások, Practice. X - gyakorlatok Ezek NEM hagyományos „három mondat/dia” kivetíthető prezentációk, hanem majdnem teljes szövegű tananyagok: Becsatolt fájlokkal és esettanulmányokkal Lépésenként animált szoftverhasználattal laborgépi használatra De erősen javasoljuk a handout formában történő kinyomtatásukat, és a kézi mellé jegyzetelést, mert amit az oktató hozzájuk mond, azon dolgokat is számonkérhetjük! Itt ne adj meg számkódot! Minden szakkifejezés mellett ott található az angol fordítása is
Kurzus alapinformációk: Követelményrendszer Követelmények a szorgalmi időszakban: 2 × 25 p (+max. 12 p angol nyelvért) csoportprezentáció, max. 5 fős projekt csoportokban, a csapat által választott (oktató által jóváhagyott) alkalmazás tetszőleges relációs adatbázis platformon fejlesztéséről: Emelt szintű hallgató: vezeti a csapatot, kiosztja a feladatokat, prezentálja az eredményeket, értékeli az alpszintűeket (nem teljesítés esetén pontelvételi lehetőséggel), bonyolultabb tételsorból szóbelizik Alap szintű hallgató: megcsinálja a rá kiosztott részfeladatot, egyszerűbb tételsorból szóbelizik Követelmények a vizsgaidőszakban: 50 p Szóbeli vizsga: Géppel sorsolt, azonnal megválaszolandó beugró kérdés Géppel sorsolt, kidolgozandó alap/emelt szintű tétel Az alap/emelt szintű tételsor és a beugró kérdések előre kiadásra kerülnek Összesített ponthatárok félévközi + vizsga (külön alsó korlát nincs): 0 -49 pontig 1 -es 2 db szóbeli javítóvizsga lehetőséggel, 50 -59 pontig 2 -es, 60 -69 pontig 3 -mas 70 -79 pontig 4 -es, 80 -100 pontig 5 -ös A pontok nyomonkövetése+konzultáció a tárgy Facebook csoportjában: https: //www. facebook. com/groups/278606362188127/
Az előadás tartalma Alapvető kurzus információk A tárgy célja Személyes példa Tantárgyi tematika A tananyagok elérhetősége Követelményrendszer A vállalati adatkezelő rendszerek Fogalma, Követelményeik A magyar valóság A Pauler-teszt Mért szükséges tervezni? Szakirodalom
1. 2. 3. 4. 5. A vállalati adatkezelő rendszerek: Fogalma, Követelményeik 1 A vállalati adatkezelő rendszerek (Enterprise Data Processing System, EDPS) egy vállalkozásra vagy részeire vonatkozó adatok rendszerezett létrehozását, módosítását, visszakeresését, törlését lehetővé tevő rendszerek: Valamilyen hardver (Hardware) eszközön működnek (papír, számítógép) Valamilyen szoftver (Software) (emberi munka, programkód) végzi az adatok kezelését Az adatkezelő rendszerekkel szemben támasztott követelmények: Redundancia-mentesség (Non-Redundancy): az adatok nem ismétlődhetnek, csak egyszer tároljuk el őket, a fajlagos helyfogyasztást minimalizálva (Fucked Up Beyond All Repair, FUBAR példák): „Először gépeld be ide, utána be kell írnod ugyanazt oda is”, „az én példányomban ez nem így szerepel” Hatékonyság (Efficiency): gyors visszakeresés és adatmódosítás FUBAR: „Töltse ezt ki 3 példányban és 30 napos határidővel megkapja a választ a hatóságtól”, „Azért adtunk meg téves adatot, mert még nem volt idő frissíteni a nyilvántartást” Rugalmasság (Flexibility): nem fix hosszúságú, bonyolult adatszerkezetek tárolása FUBAR: „ezt a kedvezményt az ötödik gyerekére azért nem veheti igénybe, mert a rendszer maximum 4 gyerek adatát képes tárolni” Programozhatóság (Programmability): az adatszerkezetek és a feldolgozó eljárások egyszerű módosítása FUBAR: „Nyomtassa ezt ki ebből az Excelből, és gépelje be abba a másikba, úgy hogy előbb legyen a keresztnév, és utána a vezetéknév” Adatfüggetlenség (Data Independence): az adatok, és az adatszerkezet hardvertől, szoftvertől való függetlensége FUBAR: „Átmásoltam Excelből Open. Office-be, de az másképp kezeli a hét napjait, ezért csinálhattam újra az egészet”
6. 7. 8. 9. 10. A vállalati adatkezelő rendszerek: Követelményeik 2 Metaadatok elekülönülése (Separation of Meta. Data): az adatok szerkezeti leírását és feldolgozási eljárásaikat az adatoktól elkülöníthető módon kell tárolni FUBAR: „Beszúrtam az irányítószámot a W oszlopba ebben az Excelben, de az utána lévő oszlopok ettől tönkrementek” Adatintegritás (Data Integrity): a tárolt adatoknak folyamatos módosítások közepette is eleget kell tennie bizonyos szabályoknak FUBAR: „Felvittem a terhességeket, de elfelejtettem, hogy a férfiakhoz nem kellett volna, ezért most azok is terhesek a rendszerben” Adatbiztonság (Data Safety): adatok védelme a hardver- és szoftverhibák ellen FUBAR: „Mackó, segíts, mert a pendrájvot, amin a szakdolimat tartom, a fodrászom beleejtette a hidrogén-peroxidba, mikor szőkítette a hajamat, állítsd vissza róla” Adatvédelem (Data Security): az adatokat csak az arra jogosult felhasználók kezelhessék FUBAR: „Kérem megad hitelkártya számod és tű kód, hogy minősülni USD 1 milliárd nyeremény Google lottón” Osztott adathozzáférés (Shared Data Access): ugyanazokkal az adatokkal több felhasználó is dolgozhasson egyidejűleg. FUBAR: „Juliska, lépjél most ki abból az Excelből a hálózati mappában, mert nekem sürgősebb felvinnem az én adataimat, és lehetőleg ne írd majd felül őket a hülyeségeiddel, mint a múltkor!” A követelmények teljesítése egymás rovására megy (pl. a sebesség maximalizálása tárhely-igény növekedést okoz, a helyigény minimalizálása lassítja a rendszert) Ezért az adatkezelő rendszerek létrehozása nem egyszerű, algoritmizálható folyamat, hanem rosszul struktúrált döntési probléma (Ill Structured Decision Problem), ahol az inputok és az outputok közt nem mindig van egyértelmű összefüggésrendszer, és ezért nem lexikálisan tanulható tudásanyag, hanem gyakorlati példák megoldásában alakuló gondolkodásmód
Vállalati adatkezelő rendszerek: A nagy büdös magyar valóság 1 Minden vállalkozás ügyviteli rendszere 3 dologgal kezdődik: 1 db kis kockás füzet, amibe a megrendeléseket felírják Dr. Pauler Gábor, Pécs, Kisréti 1 db számlatömb, amivel számláznak (vagy nem teszik…) u. 2 T: 480 -641 1 db Szőke Nusi, ügyintéző, aki esetenként más célra is jó - PVC Szegély, sárga, 60 fm Idővel meg fog jelenni Beste Lenke, a stresszre hízó dagadt könyvelőnő, aki nyilván valamilyen könyvelő szoftvert használ. Ez - Padlószönyeg, Flottex, könyvelési-pénzügyi területek ügyvitelét némileg automatizálja, velúr szín, 5. 5 m × 6 m azonban nem hat vissza a reál területek (értékesítés, logisztika, 2004. 02. 28 délután 5. 00!!! termeléstervezés) színvonalára, mert a számviteli rendszer – lévén az adóztatás fő eszköze – adóelkerülési okokból már rég elszakadt a vállalkozás valós folyamatainak nyomonkövetésétől, holott eredetileg arra találták ki, bármily nehezen is hihető ez. Szőke Nusi mellett ezután megjelenik 1 számítógép és a „Zexel” (ld. : Rendelés. xls ) amiből Nusi – ha igazán szőke, nem csak hidrogénezett – kinyomtatja az adatokat, majd újra begépeli egy másik Excelbe, esetleg szalagos számológéppel összeadogatja benne a számokat és beírja a végeredményt. Mert „a Zexel hüjje amerikai titkárnők részére készült szoftver, amit amúgyis mindenki tud kezelni” – de lehet, hogy mégse igazán… És ez így folyhat több 100 MFt-os árbevételig, mindenféle adatbázis nélkül. Idővel, ha a cég pl. német ügyfeleknek végez bérmunkát, kellene az ISO minősítés, amit, ha betartanának (minden árués anyagmozgást dokumentálni kell) papírtengerrel árasztaná el a céget. Sebaj, egy csomó ügyes tanácsadó cég él abból, hogy 3 -4 évente 1 hétre, ellenőrzéskor kamu-ISO rendszert kreáljon.
Vállalati adatkezelő rendszerek: A nagy büdös magyar valóság 2 10 ilyen vállalkozásból 9 db 2 éven belül bebukik, de a tizediknél a vállkozó véletlenül telibetalálja a piacot, és az árbevétel meglódul, átlép a 500 MFt/év bűvös határon. És ekkor történik a baj: a cég az ügyviteli rendszer reformja nélkül bele fog bukni, csődbe fog menni a saját növekedésébe!!! Miért? A magyar vállalkozók – tisztelet a kivételnek – kevés pénzt forgatnak vissza a nyereségből a vállalkozás fejlesztésébe, inkább felélik luxus-fogyasztásként (bizonyos körökben a fux, a susi, az X 5 -ös vagy A 6 -os (hitelből, kajmán-szigeteki rendszámmal) kötelező színpadi belépő kellékek), ha baj van, csődöt jelentenek, meglépnek a hitelezők elől, megkenik az igazságszolgáltatást, és nemsokára más cégbe kezdenek. Ez a dolgok normál, rutin ciklusa. Minden vállalkozó rögeszmésen hisz benne, hogy ő ért az adott dologhoz a legjobban a világon, nehezen osztja meg az irányítási hatásköröket. Ha már végképp nem tud ott lenni mindenhol személyesen, akkor is inkább megbízható rokonokat alkalmaz szakemberek helyett, természetesen informatikai területen is. A két tényező együttes hatásaként általában esély nincsen rá, hogy Dr. Izom Agy, a vállalkozó nagy levegőt vegyen, visszafogja a fogyasztását, és stratégiai befektetést eszközöljön integrált ügyviteli rendszer megvásárlásába (ez még a dolog kisebb része) és bevezetésébe (ez az igazán drága), helyette ezt mondja: Ecsém, erre az adatbázis szarságra nekem nincsen pézzem, vazze! Maj’ a Droid Pisti megcsinálja okosba, mer’ ő programozó… Zinformatikáhó’ különbenismosmá’ mindenkiért, mióta vindózvan, vazze!
Vállalati adatkezelő rendszerek: a Pauler-teszt És jönnek a Droid Pistik az „óccsóér” összetákolt, össze nem függő kis sziget-alkalmazásaikkal (ld. : Droid. Pisti. Rendelesi. Rendszere. mdb, Rendelés. htm) A Pauler-teszt (Pauler Test): a Turing-teszt analógiájára, hogyan lehet eldönteni, hogy egy adatbázis rendszert ember vagy droid készített? Alan Turing népszerű, de elavult tétele 1950 -ből, a kibernetika hajnaláról, miszerint egy gép akkor tekinthető intelligensnek, ha vele angolul beszélgetve nem jövünk rá, komoly, hogy nem ember. 1. MS Accessben próbáltak nagyméretű alkalmazást létrehozni (-1 p) 2. 1 táblás, beágyazott 1: több kapcsolatokkal (-1 p) 3. Emiatt pl. a vevő nevét és címét újra ki kell tölteni minden megrendelt tételnél, időpazarlás (-1 p) 4. A tábláknak nincs elsődleges kulcsmezője (-1 p) 5. Ezért nem lehet kinézegető táblákat csatolni, így Nusinak papírból kell nézegetni, mit írhat be(-1 p) 6. A cím normalizálatlan, egyetlen szövegmezőbe ömlesztve, nem lehet keresni/szűrni a részeire(-1 p) 7. Hiányzó mezők (pl. Fizetve) adatvesztés (-1 p) 8. Dátum szövegként, nem tud számolni vele (-1 p) 9. Mezők/tábla nevében ékezetes betűk, szóköz – nem lehet más rendszerbe exportálni (-1 p)
Vállalati adatkezelő rendszerek: Miért kell megtervezni? Ezek után összesítsük a pontlevonásokat, hasonlóan a női magazinok „Megcsalja-e Önt a férje? ” tesztjehez Az összesítés alapján az adatbázist készítette: 0. . -1 p: ember, -2. . -3 p: asszony, -3. . -4 p: csimpánz, -5. . -6 p: delfin, -7. . -8 p: droid, -9 p: közbeszerzés. Ez nem volt túl vicces, de az meg pláne nem, hogy a Droid Pistik által fejlesztett, össze nem függő sziget-alkalmazások recsegveropogva fognak működni (néha), megduplázva a munkaerőigényt (megbízhatalanságuk miatt papíron is vinni kell a dolgokat), és felére lassítva a folyamatokat A rázúduló megrendelések alatt a cég ügyviteli rendszere egyszerűen összeomlik, nem azt szállít, nem oda, nem akkor és nem olyan minőségben, mint ahogy megrendelték, mert az információ nem fog átjutni A írósztalról a tőle 4 méterre lévő B íróasztalra Emiatt a piac ugyanolyan gyorsan kiejti kegyeiből a céget és termékeit, mint ahogy felkapta Háezér’ kell, vazze!
0. Házi Feladat: Saját projekt kiválasztása A félév során minden, max. 5 fős projekt csapatnak önálló adatbázis alkalmazást kell fejleszteni A témája szabadon választható, de a gazdaságinformatika miatt ajánlott, hogy legyen üzleti vonatkozása. Különlegesen jó kidolgozás esetén azonban nem gazdasági témájú munkát is elfogadunk (pl. söralátét-gyűjtők adatbázisa, stb. ) Aki nem tud önállóan témát választani, annak az oktató fog javasolni az uncsibbnál uncsibb sztenderd adatbázis iskolapéldák közül: Webes pizzafutár Könyvtári rendszer Bolt készletnyilvántartása Fodrászat és szépségszalon számlázási rendszere Autószerelő műhely ügyfél-adatbázisa A rendszer tetszőleges adatbázis- és felhasználói felület platformon megvalósítható (de be kell tudni mutatni működés közben), de elsősorban MS Access, MS SQL, Oracle, . Net ajánlott Írja le fél A 4 oldalban az 1. Gyakorlat kezdetéig a választott témát és a rendszer tervezett szolgáltatásait, majd posztolja ki a tárgy Facebook-oldalán A másolásgyanús estek elkerülése végett – mely esetben a rosszindulatú oktató minden érintett félnek automatikusan 0 pontot ad az adott feladatra – az összes beadott házi feladatában BÁRMELY azonosító nevet (Táblanév, Mezőnév, Formnév, Fájlnév, stb. ) kezdjen a csapatnév 3 betűs rövidítésével: pl. Nyelviskolai adatbázis NYIKönyv, NYISzámla, NYIEgységÁr Ezek hiányát vagy váratlan egyezését máséval másolásként értékeljük!
Szakirodalom Szervezeti háttér: Jan Carlzon: www. andrewgibbons. co. uk/documents/Moments. doc Northcote C. Parkinson: http: //en. wikipedia. org/wiki/Parkinson's_law Vállalati adatkezelő rendszerek problémái: http: //www. processorg. hu/termekek/cronologica http: //www. kku. bme. hu/publikaciok/doktori/Bona. Krisztian_phd. pdf
- Slides: 18