2012. június 18.

Számítógépes nyelvészet 101: Architektúra és adatbázisok

Sorozatunk előző részében rázúdítottunk az óvatlan olvasóra egy rakat matematikai könyvet. Reméljük a sokkot sikerült feldolgozni. Most a számítástudomány fránya materiális oldalára koncentrálunk, amit illik ismerni. Sokkal kevesebb, ám annál vaskosabb köteteket ajánlunk, de ezeket nem kell bebiflázni, sokkal inkább kedvünk szerint lassan olvasgassuk mind. A számítógép architektúra, hálózatok, operációs rendszerek és adatbázisok jönnek!

Kimenet A mindennapi munka során egy számítógépes nyelvész ritkán találkozik élesben az operációs rendszerek vagy az internet protokollok problémáival. Viszont ezek vitathatatlanul jelen vannak a mindennapokban. PC-ket, laptopokat, mobilokat, tableteket, szervereket, felhőalapú megoldásokat használunk nap mint, egy olyan alkalmazás ami nem a "netre termett" nem pálya. Szövegeket gyűjtünk be html, webes felületeket generálunk, adatokat mozgatunk ide-oda. Ezek egészen absztrakt szinten jelennek meg, legtöbbször egy könyvtár formájában. Ha értjük mi van ezek mögött, jobban tudunk alkalmazkodni az IT gyorsan változó világához. Ajánlásunk első részét tekintsük úgy mint olvasmányos bevezetést - jó ha hallunk ilyen dolgokról. A lényeg az adatbázisok alapjain van.

Gépek és kábelek A bevett irodalom Andrew S. Tanenbaum műveit jelenti ezen a téren. Szerencsére a köteteknek jó minőségű magyar fordításai vannak. Áruk nem éppen diákbarát, de a Panem kiadó oldalán rendelve sokat spórolhatunk, de elvileg minden rendes egyetemi könyvtárban kell legyen belőlük egy példány.
Ahogy jeleztük nem kell bebiflázni a fenti könyveket, sőt végig sem kell olvasni, de ismerkedni a témával és hagyni hogy ránk ragadjon belőle valami, elengedhetetlen.

Adatbázisok Mielőtt nagy elánnal a noSQL adatbázisoknak esünk, nem árt egy kis old school alapozás. Hogy miért? A noSQL nem a relációs adatbázisok ellen született, nem célja hogy felváltsa azokat, sokkal inkább bizonyos területekre kínál más megoldási stratégiát. Mivel a relációs adatbázisok már régóta jelen vannak, kialakult irodalmuk, a tananyagban pedig megszilárdult helyük van. A noSQL szakirodalom gyakran hivatkozik az SQL-re mint viszonyítási pont. Nem árt hát, ha az alapokkal tisztában vagyunk.
Listánk két részre bomlik. Előszöre egy gyakorlatias megközelítést ajánlunk.
Az elméleti alapozás és elmélyültebb gyakorlat bemutatásához szintén egy legendás szerzőhöz, C.J. Date-hez fordulunk:
  • An Introduction to Databse Systems - hosszú, de nagyon alapos (és még élvezhető) bevezetés. Kicsit talán túl tankönyvízű, nulla adatbázis ismeretekkel nehezen emészthető, de alapos munka.
  • Database Design - középszintű könyv, a gyakorlat és az elmélet összekapcsolását célozta meg és célba is ért.
Ügyeljünk arra hogy egy kicsit gyakoroljunk is és ismerkedjünk meg rendesen az SQL-lel.

Habár ez a lista rövidebb lett, a kötetek hossza jelentős. Mint említettük az első rész inkább a tájékozódást segíti, a második viszont sok munkát igényel. Habár nincs semmi előfeltételük, időzítés szempontjából jó ha túl vagyunk már egy bevezető logika kurzuson és egy kicsit foglalkoztunk programozással is mielőtt nekiugrunk a tanulásnak. Tanenbaum könyveit viszonylag könnyen végig lehet rágni ha nem végezzük el a feladatokat és átugorjuk a túl technikai részeket. Ugyanakkor az ember ezekhez a kötetekhez időről-időre visszatér akár évekig is. Az SQL és adatbázisok témaköre sokkal praktikusabb, de jól feldolgozható akár önállóan is.

Nincsenek megjegyzések: