(Kiemelt kép: Unsplash+)
Az adatmegfigyelhetőség az a folyamat, melynek során betekintést nyerünk abba, hogy az adatok hogyan mozognak egy adott architektúrán keresztül annak biztosítása érdekében, hogy az adatok kiváló minőségűek legyenek és pontos üzleti meglátásokat nyújtsanak. A megfigyelhetőség elengedhetetlen a valós idejű adatfeldolgozáshoz, mivel lehetővé teszi a problémák észlelését, amint azok megjelennek az adatcsatornában, így az adatmérnökök még azelőtt orvosolhatják a problémákat, mielőtt túl késő lenne. Az adatkezelés hagyományos módszerei, például a kézi ellenőrzés, a szabályalapú ellenőrzések és a végponttól végpontig tartó tesztelés korlátozottak, mivel az adatok túl összetettek és túl dinamikusak, így kihívást jelent az adatok viselkedésének mélyebb megértése. A megfigyelhetőség azonban kibővíti ezeket a fogalmakat, és részletesebb és folyamatosabb betekintést nyújt, lehetővé téve a vállalkozások számára, hogy megbízzanak az adataikban, és ezáltal megalapozottabb döntéseket hozzanak.
Az adatok megfigyelhetőségének fő pillérei
Az adatok megfigyelhetőségének biztosítása érdekében az adatmérnököknek és az adatfogyasztóknak a megfigyelhetőség következő kulcsfontosságú pilléreire kell rálátással rendelkezniük:
Mérőszámok: A metrikák olyan mérések, melyek egy rendszer vagy alkalmazás viselkedését és teljesítményét követik nyomon. Az adatok megfigyelhetőségében a metrikákat az adatbeviteli arányok, az adatfeldolgozási idők, az adattárolási kapacitás, az adatlekérdezési arányok, az adatfogyasztási arányok, az adatpontosság, az adatok validálása és így tovább nyomon követésére használják. A mérőszámok használható betekintést nyújtanak, és figyelmeztetik az adatmérnököket, ha valami nem stimmel, így gyorsan orvosolni tudják a teljesítményproblémákat.
Metaadatok: A metaadatok olyan adatok, melyek más adatokat írnak le. A metaadatok különösen fontosak az adatok megfigyelhetősége szempontjából, mivel segítenek az adatmérnököknek megérteni az általuk feldolgozott adatok eredetét, jellemzőit és minőségét. A metaadatok közé tartozhat az adatséma, az adattípus és az adathozzáférési engedélyek. A metaadatok segítenek az adatmérnököknek gyorsan megtalálni és azonosítani a szükséges adatokat, és biztosítják, hogy azok megbízhatóak és jól dokumentáltak legyenek.
Vonalvezetés: Az adatvonal az adatok útjának dokumentálása az eredetüktől a jelenlegi állapotukig. Fontos az adatok megfigyelhetősége szempontjából, mivel segít az adatmérnököknek megérteni, hogyan alakultak át az adatok, milyen kapcsolatok vannak a különböző adatkészletek között, és mely alárendelt függőségek támaszkodnak bizonyos adatforrásokra. A leszármazás, avagy családfa pedig segít az adatmérnököknek az adatvezetékekkel kapcsolatos problémák gyors azonosításában és hibaelhárításában.
Naplók: A naplók a rendszer eseményeinek és tranzakcióinak nyilvántartásai, melyeket későbbi elemzés céljából rögzítettek. Az adatok megfigyelhetőségében a naplók segítenek az adatmérnököknek megérteni, hogy mi történt az adatfeldolgozás során, milyen adatokhoz fértek hozzá, ki fért hozzá, és milyen problémák merültek fel. A naplók elemzésével az adatmérnökök azonosíthatják a mintákat, pontosan meghatározhatják a problémákat és optimalizálhatják az adatfeldolgozási csővezetékeket.
Az adatok megfigyelhetőségének e négy pillérére (metrikák, metaadatok, vonalvezetés és naplók) összpontosítva az adatmérnökök robusztusabb és megbízhatóbb adatfeldolgozási csővezetékeket építhetnek, és biztosíthatják, hogy adataik megbízhatóak, pontosak és könnyen elérhetők legyenek.
Hogyan javítsuk az adatminőséget méretarányosan?
Az adatminőségi problémák hatékony, méretarányos javításához és az adatok kiváló minőségének és pontosságának biztosításához minden adatmérnöknek a következőkre kell törekednie:
Olyan minőség ellenőrzéseket hajtson végre, melyekkel a problémák már a folyamat korai szakaszában felismerhetők. Amint az adatok bekerülnek, szorosan kövesse nyomon azokat, és automatizálással valós időben kövesse nyomon.
Értékelje az adatminőséget rutinszerűen olyan eszközökkel, mint a statisztikai mintavétel, a releváns adatstatisztikák nyomon követése kulcsfontosságú teljesítménymutatókkal (KPI) vagy más heurisztikákkal.
Állítson fel megismételhető folyamatokat és mérőszámokat az adatminőségre vonatkozóan, hogy mérni és jelenteni tudja a hibákat, nyomon tudja követni azokat az idő múlásával, és biztosítani tudja a minőségi követelmények teljesülését.
Amit minden adatmérnöknek tudnia kell
Ön adatmérnök? Íme néhány dolog, amit tudnia kell az adatok megfigyelhetőségének biztosításához:
Értse meg az adatcsővezetékét, hogy milyen adatokat állítanak elő és fogyasztanak.
Ismerje az adatsémát és az adatszerkezetet.
Biztosítsa, hogy az adatai helyesen legyenek formázva, és szükség esetén elérhetők legyenek.
Értse a hiányzó vagy hibás adatok következményeit.
Az adatminőség felügyeletének kiépítése: Az adatvezeték bemeneteinek, feldolgozásának, tárolásának és kimenetének nyomon követése olyan eszközök kombinációjával, mint a riasztások, műszerfalak és automatizálási munkafolyamatok. Ez a felügyelet elengedhetetlen a problémák gyors felismeréséhez és a problémák valós idejű kijavításához.
Az elromlott adatvezetékek megelőzése: A megszakadt adatvezetékek felismerésének néhány módja a következő:
Érvényességi ellenőrzések hozzáadása az adatok csővezetéken való mozgásának mérésére és nyomon követésére. Annak biztosítása, hogy a metrikákat rendszeresen generálják és végponttól végpontig nyomon követik, így láthatóvá válik, hogyan áramlanak az adatok a csővezetéken keresztül.
Az adatok végponttól végpontig tartó megfigyelhetőségének architekturális elemei
A végponttól végpontig tartó megfigyelhetőség lehetővé tételéhez az adatmérnököknek biztosítaniuk kell a következők megvalósítását:
Átfogó és rendkívül pontos adatbevitel.
Lényeges adatelemző motorok és folyamatok.
Végponttól-végpontig tartó naplózás rendkívül részletes információkkal a csővezeték minden szakaszáról.
Adatmintavételi algoritmusok az anomáliák észlelésére és a hibás adatok méretarányos kezelésére.
Íme néhány példa a Google Cloud szolgáltatásainak használatára:
Adatgyűjtés: A Google Cloud adatbeviteli eszközök széles skáláját kínálja, mint például a Cloud Pub/Sub, a Cloud Storage és a Cloud
Functions a különböző forrásokból származó adatok összegyűjtéséhez. A Pub/Sub üzenetküldő szolgáltatással például számos forrásból származó folyamatos adatfolyamokat szívhat be, és integrálhatja azokat a adatfolyam-sorokba.
Adatfeldolgozás: A Google Cloud olyan számítási szolgáltatásokat kínál, mint a Google Cloud Dataflow, a Dataproc és a Google Kubernetes Engine, melyek lehetővé teszik a kötegelt és folyamfeldolgozást. Ezek a szolgáltatások skálázható, megbízható és nagy teljesítményű feldolgozási teljesítményt biztosítanak az adatok átalakításához és elemzéséhez. A Dataflow segítségével például futtathatja az Apache Beam adatátviteli csatornákat, és a feldolgozási igényei alapján könnyedén fel- vagy leméretezheti azokat.
Adattárolás: A Google Cloud Storage skálázható és nagy rendelkezésre állású platformot biztosít az adatok tárolásához és kezeléséhez, mint például a Cloud Firestore és a Bigtable. Ezek a szolgáltatások lehetővé teszik, hogy az adatokat különböző formátumokban tárolja, beleértve a strukturált, félig strukturált és strukturálatlan adatokat, és igény szerint lekérdezhetővé tegye őket.
Adatvizualizáció: A Google Cloud különböző adatelemző és vizualizációs eszközöket, például BigQuery-t, Data Studio-t és Looker-t kínál analitikus műszerfalak és jelentések készítéséhez. A BigQuery segítségével másodpercek alatt elemezhet terabájtnyi adatot, a Data Studio segítségével pedig lenyűgöző vizuális jelentéseket és műszerfalakat hozhat létre, amelyek segítségével gyors, adatvezérelt döntéseket hozhat.
Monitoring és riasztás: A Google Cloud fejlett felügyeleti és riasztási rendszert biztosít a Cloud Monitoring, a Stackdriver Logging és a Stackdriver Trace (Google cloud operations suite) segítségével. Ezek a szolgáltatások lehetővé teszik a csővezetékek állapotának és teljesítményének valós idejű nyomon követését és hibaelhárítását, riasztások beállítását és szükség esetén a megfelelő intézkedések megtételét.
Ezen architektúraelemek és szolgáltatások különböző kombinációkban történő felhasználásával olyan végponttól végpontig tartó adatmegfigyelési megoldást építhet a Google Cloudon, amely teljes átláthatóságot és ellenőrzést biztosít az adatátviteli csatorna felett.
Adatmegfigyelhetőség kontra szoftvermegfigyelhetőség
Az adatmegfigyelhetőség középpontjában az adatok állnak, melyeknek súlyuk van (mozgatásukhoz idő és erőforrások szükségesek), szerkezetük (a különböző darabokat nem lehet kicserélni, mintha cserélhetőek lennének), előzményeik (nem lehet megnyomni a „visszaállítás” gombot). Ezzel szemben a szoftveres megfigyelhetőség a szoftverrendszerekre összpontosít, melyeknek minimális a replikációs határköltsége, cserélhetők és egyre inkább efemerek. Bár általánosak, ezeknek a különbségeknek jelentős következményei vannak.
Különböző pillérek: A szoftver-megfigyelhetőség három pillére a metrikák, a nyomvonalak és a naplók. Az adatok megfigyelhetőségének négy pillére ezzel szemben a metrikák, a metaadatok, az adatvonal és a naplók.
Gyökérelemzés: Az adatok életciklusának jellege miatt (a nyers adatok gyűjtésétől az átalakításon át a fogyasztásig) az adatproblémák alapvető okának azonosítása gyakran a közvetlen függőségek, más néven az adatok származásának vagy eredetének nyomon követése. A legmagasabb szinten ez a vonalvezetés táblák között is leképezhető, bár a finomabb részletezettségi szintek, például az oszlopok vagy akár az értékek közötti vonalvezetés előnyösebb. Ironikus módon, bár az adatoknak elméletben van származásuk, a gyakorlatban ennek a származásnak az összegyűjtése és tárolása rendkívül nehéz lehet, mivel az adatok rendszerek között haladnak át, kombinálódnak és átalakulnak, valamint kódot és adatokat egyaránt tartalmaznak.
Ezzel szemben, bár a szoftverrendszerek gyökérelemzése ugyanilyen frusztráló lehet, a rendszerösszetevők között gyakran egyértelmű függőség áll fenn, és a rendszereken belüli és a rendszerek közötti logikát verzió vezérelt kód diktálja.
Az alárendelt függőségek hatása: A szoftverek megfigyelhetősége esetén általában gépről gépre történik, amíg el nem jutunk magához az alkalmazáshoz, amely az emberek egy meghatározott részhalmazára van hatással: az Ön ügyfeleire. Egyszerűbb megérteni, hogy milyen hatása van annak, ha valami elromlik: az ügyfeleket érinti, és vannak szabványos eszközök és folyamatok, amelyeket használhat, ha valami elromlik: hozzáad egy üzenetet az állapotlapjához, elküldi a javítást, és a termék továbbra is működik az ügyfelek számára. Ha például a Postgres-adatbáziskezelő szolgáltatás késleltetése megnövekszik, az hatással van az API-válaszidőnkre, ami befolyásolja az ügyfelek webalkalmazási élményét. Tehát hozzáadunk egy megjegyzést a státuszoldalunkhoz, amelyben elmagyarázzuk a késleltetést, növeljük a gyorsítótárazási réteget az API-nkhoz, és az ügyfelek továbbra is használhatják az alkalmazást.
Az adatok esetében ezek az eszközök és folyamatok nem igazán léteznek, és az adatoktól való fel- és lefelé irányuló függőségek csak növekednek. Az adatok megfigyelhetősége valóban figyelemmel kíséri a gépek közötti interakciókat, de segít a sok gép és ember közötti interakcióban is. Az adatfogyasztók mind különböző felhasználási esetekkel és követelményekkel rendelkeznek. Egyes fogyasztók számára nem jelentenek gondot a késések vagy a ritkán előforduló problémák (kéthetente használt műszerfalak), de más más fogyasztók számára nem lehetnek problémák, és valós időben használják őket (ML-modellek).
Az adatmegfigyelhetőség a modern adatmérnöki munka alapvető eleme. Valós idejű betekintést nyújt abba, hogy az adatok hogyan mozognak egy rendszeren keresztül, lehetővé teszi az adatfolyam-sorban felmerülő problémák gyors észlelését, és biztosítja az adatok minőségét és pontosságát. A hatékony megfigyelhetőség megköveteli a megfigyelhetőség legfontosabb pilléreinek figyelemmel kísérését, a minőség ellenőrzések végrehajtását és a hatékony adatminőség-ellenőrzés kiépítését. Ezen eszközök és technikák kihasználásával az adatmérnökök kifinomult szintű megfigyelhetőséget és bizalmat szerezhetnek az adataikban, lehetővé téve számukra, hogy rendkívül megbízható, megalapozott döntéseket hozzanak.
Megfigyelhetőség 2.0
Az adatok változnak: méretük, terjedelmük és sebességük egyre nő. Bár a megfigyelhetőség a 2010-es évek közepén bölcs megoldásként jelent meg, nem fejlődött olyan ütemben, mint az adatok. Amikor a megfigyelhetőség reflektorfénybe került, sokan egyszerűen „Monitoring 2.0”-nak nevezték, bár kiderült, hogy önállóan is megállja a helyét. Most a kialakulóban lévő fogalom a „Megfigyelhetőség 2.0”. A modern kori adattájak terepén navigálunk, érdemes így megvizsgálni, hogy pontosan mi is a megfigyelhetőség 2.0 (011y), és mit tartogat a jövő az o11y-rajongók számára.
Adatkép
A modern kori adattérben való navigálás a gyorsan változó trendek összetett hálózatán való átkeléshez hasonlít. A mai informatikai szakembereknek ügyes felfedezőknek kell lenniük, akik az adathegyeken és a folyamatos integrációs és telepítési áramlatokon keresztül térképezik fel a pályákat. Ez a környezet újfajta iránytűt igényel, amely a Megfigyelhetőség 2.0 néven ismert pont felé mutat. A Megfigyelhetőség 2.0 vagy „o11y 2.0”, ahogyan a köznyelvben nevezik, a megfigyelés és az analitika evolúcióját jelenti. Túlmutat a hagyományos naplózáson, megfigyelésen és mérőszámokon, és holisztikus képet nyújt az IT-rendszerek állapotáról, viselkedéséről és teljesítményéről. A megfigyelhetőség 2.0 nem csupán az adatgyűjtésről szól, hanem arról is, hogy az adatok felhasználhatóvá váljanak. Röviden: a megfigyelhetőség 2.0 proaktív, nem pedig reaktív. A fejlett mesterséges intelligenciát és a gépi tanulási algoritmusokat használja ki, hogy még a problémák bekövetkezése előtt megjósolja azokat ahelyett, hogy csak a bekövetkezésük után figyelmeztetne a problémákra. Ez az előrejelző képesség gazdag, kontextustudatos meglátásokkal párosul, lehetővé téve az IT-csapatok számára, hogy ne csak azt értsék, mi romlott el, hanem azt is, hogy miért, méghozzá valós időben!
Az 011y 2.0 pillérei
Míg a megfigyelhetőség három pillére továbbra is a naplózás, a mérések és a nyomkövetés; az o11y 2.0 esetében az alap a kontextualizáció, az MI és az adatföderáció felé tolódott el.
Átfogó adatkontextus: Naplók, mérőszámok, nyomvonalak, és most már felhasználói élmény és üzleti KPI-k integrálása egyetlen, összefüggő narratívába.
Intelligens riasztás: A zaj csökkentése intelligensebb figyelmeztetésekkel, amelyek megértik az adatminták anomáliáinak jelentőségét.
Automatizált problémamegoldás: A mesterséges intelligencia kihasználása nemcsak a problémák észlelésére, hanem önállóan történő orvoslására is.
Együttműködő felületek: Olyan platformok biztosítása, amelyek lehetővé teszik, hogy a funkcionalitáson átívelő csapatok interakcióba lépjenek a megfigyelhetőségi adatokkal, elősegítve az átláthatóság és a közös felelősségvállalás kultúráját.
Nyílt forráskódú megfigyelési keretrendszer
A megfigyelhetőség koncepciója újszerűnek tűnhet, a megfigyelés gyakorlata azonban jól bevált. Gyakran vitatják, hogy a megfigyelhetőség csupán a megfigyelés átnevezése. A megfigyelhetőség, hasonlóan a DevOps szerepéhez az üzemeltetésben, gondolkodásmódbeli változást jelent. A megfigyelés gyakorlatát a fejlesztési fázisba ágyazza, és a kód szövetébe szövi. A megfigyelhetőség lényege három alapvető elemen nyugszik: metrikákon, naplókon és nyomvonalakon. A metrikák mennyiségi mutatóként szolgálnak az idő múlásával, és olyan szempontokat követnek nyomon, mint a rendszer teljesítménye és a hibák gyakorisága. Kiválóan alkalmasak arra, hogy madártávlatból adjanak képet a rendszer állapotáról, például az aktív felhasználók számáról vagy az erőforrás-felhasználás szintjéről, jelezve, ha potenciális problémák merülnek fel. A naplók, az események részletes feljegyzései a rendszer működéséről adnak képet, ami felbecsülhetetlen értékű a problémák diagnosztizálásához. Hasznosságuk ellenére a naplók puszta mennyisége túlterhelheti őket, ami megnehezíti a konkrét problémához tartozó bejegyzések pontos meghatározását, különösen összetett, szolgáltatásorientált architektúrákban. A nyomvonalak árnyaltabb képet nyújtanak, részletesen bemutatva a tranzakciók útját az elosztott rendszerekben. Minden egyes tranzakciót részletes, időbélyegzővel ellátott műveletekre bontanak, így átfogó térképet alkotva a rendszer interakcióiról.
Vegyünk egy egyszerű interakciót, ahol az A szolgáltatás a B szolgáltatást kéri, ami egy adatbázis-lekérdezéshez vezet. A nyomon követés az egész folyamatot nyomon követné, minden egyes lépést pontos időzítéssel és kontextuális adatokkal, például nyomon követési és időtartam-azonosítókkal jelölve. Ezek a részletes adatok rávilágítanak a tranzakcióáramláson belüli hatékonysági hiányosságokra és szűk keresztmetszetekre. A nyomvonalak, mérőszámok és naplók összekapcsolódnak; mindegyik összefüggést biztosít a többihez. Az erőforrás-attribútumok, például a példányazonosítók vagy a Kubernetes-konténercsoportok segítik az adatok szűrését és korrelációját az említett elemek között. Ez az összekapcsoltság a nyílt forráskódú megfigyelési keretrendszer központi eleme, mely egy erős közösség által támogatott együttműködési projekt. A megfigyelhetőségi adatok gyűjtését és kezelését racionalizálja, egységes eszköztárat biztosít a rendszer teljesítményének különböző platformokon és nyelveken történő rögzítéséhez.
A nyílt forráskódú megfigyelési keretrendszer által támogatott Megfigyelhetőség 2.0 nem csupán arról szól, hogy megfigyeljük, hogy egy alkalmazás fut-e, hanem arról is, hogy megértsük, hogyan teljesít, pontosan diagnosztizáljuk a problémákat, és optimalizáljuk a megvalósítható felismerések alapján. A megfigyelhetőségnek ez az átfogó megközelítése új mércét állít fel az alkalmazásfigyelés terén a felhő-natív világban.
Mit tartogat a jövő?
A megfigyelhetőség iránt szenvedélyesen érdeklődők számára a jövő innovációban gazdag tájat ígér.
Íme néhány a legújabb fejlesztések közül:
Kiterjesztett valóság a megfigyelhetőségért: Képzeljük el, hogy felveszünk egy headsetet, és belépünk a rendszer teljesítményadatainak 3D-s reprezentációjába, és virtuális környezetben interakcióba lépünk a problémákkal, illetve boncolgatjuk azokat.
Autonóm megfigyelhetőségi ökoszisztémák: Az adatvilág önvezető autója, ahol a megfigyelhetőségi rendszerek nemcsak diagnosztizálni és javítani tudják a problémákat, hanem tanulni és fejlődni is tudnak, hogy megelőzzék a jövőbeli eseményeket.
Az adatok demokratizálása: A megfigyelhetőségi eszközök felhasználóbarátabbá tétele, hogy még a nem műszaki érdeklődők is megértsék az adatokból származó felismeréseket, és azok alapján cselekedjenek.
Fenntarthatóság a megfigyelhetőségben: Ahogy nő az általunk generált adatok mennyisége, úgy nő a szénlábnyomuk is. A jövőbeni megfigyelhetőségi eszközök nemcsak az adatfeldolgozás, hanem az energiafogyasztás terén is hatékonyak lesznek, és így igazodnak a globális fenntarthatósági célokhoz.
Az adattérképen való utazás véget nem érő és folyamatosan változó. A megfigyelhetőség 2.0 olyan eszközökkel ruház fel minket, amelyekkel nemcsak navigálhatunk, hanem alakíthatjuk is ezt a tájat, biztosítva, hogy a fejlődés során intelligens, felhasználó-központú és fenntartható módon történjen.