Az Amazon Comprehend és az Amazon Kinesis Data Firehose PlatoBlockchain Data Intelligence segítségével közel valós időben távolítsa el az érzékeny adatokat a streaming adatokból. Függőleges keresés. Ai.

Az Amazon Comprehend és az Amazon Kinesis Data Firehose segítségével közel valós időben távolítsa el az érzékeny adatokat a streaming adatokból

Az adatok és betekintések közel valós idejű szállítása lehetővé teszi a vállalkozások számára, hogy gyorsan reagáljanak ügyfeleik igényeire. A valós idejű adatok számos forrásból származhatnak, beleértve a közösségi médiát, az IoT-eszközöket, az infrastruktúra-figyelést, a call center-figyelést és egyebeket. A több forrásból bevitt adatok szélessége és mélysége miatt a vállalkozások olyan megoldásokat keresnek, amelyek megvédik ügyfeleik magánéletét, és megakadályozzák a kényes adatokhoz való hozzáférést a végrendszerekből. Korábban a személyazonosításra alkalmas információk (PII) szabálymotorjaira kellett támaszkodnia, amelyek téves pozitív üzeneteket jelezhettek vagy kihagyhattak adatokat, vagy egyéni gépi tanulási (ML) modelleket kellett készítenie és karbantartania, hogy azonosítsa a személyazonosításra alkalmas információkat a streamelési adatokban. Ezenkívül be kellett vezetnie és karban kell tartania az ezen motorok vagy modellek támogatásához szükséges infrastruktúrát.

A folyamat egyszerűsítése és a költségek csökkentése érdekében használhatja Amazon Comprehend, egy természetes nyelvi feldolgozó (NLP) szolgáltatás, amely az ML-t használja arra, hogy betekintést és kapcsolatokat keressen, például embereket, helyeket, érzéseket és témákat strukturálatlan szövegben. Mostantól használhatja az Amazon Comprehend ML képességeit az ügyfél e-mailekben, a támogatási jegyekben, a termékismertetőkben, a közösségi médiában és egyebekben található személyazonosításra alkalmas adatok észlelésére és törlésére. ML tapasztalat nem szükséges. Elemezheti például a támogatási jegyeket és tudáscikkeket, hogy észlelje a személyazonosításra alkalmas entitásokat, és szerkeszthesse a szöveget a dokumentumok indexelése előtt. Ezt követően a dokumentumok mentesek a személyazonosításra alkalmas adatoktól, és a felhasználók felhasználhatják az adatokat. A személyazonosításra alkalmas entitások szerkesztése segít megvédeni ügyfelei adatait, és betartani a helyi törvényeket és előírásokat.

Ebből a bejegyzésből megtudhatja, hogyan implementálhatja az Amazon Comprehend szolgáltatást a streaming architektúrákba, hogy a személyazonosításra alkalmas adatokat csaknem valós időben szerkeszthesse. Amazon Kinesis Data Firehose val vel AWS Lambda.

Ez a bejegyzés a kiválasztott mezőkből származó adatok törlésére irányul, amelyek a Kinesis Data Firehose segítségével bekerülnek egy adatfolyam-architektúrába, ahol további származékos másolatokat szeretne létrehozni, tárolni és karbantartani az adatokról a végfelhasználók vagy a későbbi alkalmazások számára. Ha használsz Amazon Kinesis adatfolyamok vagy további használati esetei vannak a személyazonosításra alkalmas adatok szerkesztésén kívül, lásd Az Amazon Kinesis Data Analytics, az Amazon Translate és az Amazon Comprehend segítségével SQL-függvények segítségével lefordíthatja, szerkesztheti és elemzi a streaming adatokat, ahol megmutatjuk, hogyan használhatod Amazon Kinesis Data Analytics Studio powered by Apache Zeppelin és a Apache Flash a streaming adatok szövegmezőinek interaktív elemzéséhez, lefordításához és szerkesztéséhez.

Megoldás áttekintése

A következő ábra egy példaarchitektúrát mutat be a streaming adatok személyazonosításra alkalmas adatok valós időben történő szerkesztésére, a használatával Amazon egyszerű tárolási szolgáltatás (Amazon S3), Kinesis Data Firehose adattranszformáció, Amazon Comprehendés AWS Lambda. Ezen kívül használjuk a AWS SDK Pythonhoz (Boto3) a lambda funkciókhoz. Amint az a diagramon látható, az S3 nyers tároló nem szerkesztett adatokat, az S3 szerkesztett gyűjtő pedig az Amazon Comprehend használata után szerkesztett adatokat tartalmaz. DetectPiiEntities API egy Lambda függvényen belül.

A felmerülő költségek

A Kinesis Data Firehose, az Amazon S3 és a Lambda költségein kívül ez a megoldás használati költségekkel is jár az Amazon Comprehend részéről. A fizetett összeg a személyazonosításra alkalmas adatokat és a Lambda függvény által feldolgozott karaktereket tartalmazó rekordok teljes számának tényezője. További információkért lásd: Amazon Kinesis Data Firehose árképzés, Amazon Comprehend árképzésés AWS lambda árazás.

Példaként tegyük fel, hogy 10,000 500 naplórekordja van, és a kulcsérték, amelyből a személyazonosításra alkalmas adatokat törölni kívánja, 10,000 karakter. A 50 XNUMX naplóbejegyzésből XNUMX-ben azonosították a személyazonosításra alkalmas adatokat. A költségek részletei a következők:

Személyazonosításra alkalmas adatok költségét tartalmazza:

  • Az egyes kulcsértékek mérete = 500 karakter (1 egység = 100 karakter)
  • Egységek száma (100 karakter) rekordonként (minimum 3 egység) = 5
  • Összes egység = 10,000 5 (rekord) x 1 (egységenként rekord) x 50,000 (Amazon Comprehend kérések rekordonként) = XNUMX XNUMX
  • Egységár = 0.000002 USD
    • A naplórekordok személyazonosító adatokkal való azonosításának teljes költsége a ContainsPiiEntities API használatával = 0.1 USD [50,000 0.000002 egység x XNUMX USD] 

Személyazonosításra alkalmas adatok költségének módosítása:

  • Személyazonosításra alkalmas adatokat tartalmazó összes egység = 50 (rekord) x 5 (egységenként rekord) x 1 (Amazon Comprehend kérések rekordonként) = 250
  • Egységár = 0.0001 USD
    • A személyazonosításra alkalmas adatok helyének azonosításának teljes költsége a DetectPiiEntities API használatával = [egységek száma] x [egységenkénti költség] = 250 x 0.0001 USD = 0.025 USD

Az azonosítás és a szerkesztés teljes költsége:

  • Teljes költség: 0.1 USD (ellenőrzés, ha a mező személyazonosító adatokat tartalmaz) + 0.025 USD (a személyazonosításra alkalmas adatokat tartalmazó mezők törlése) = 0.125 USD

Telepítse a megoldást az AWS CloudFormation segítségével

Ehhez a bejegyzéshez egy AWS felhőképződés streaming adatok szerkesztése sablon, amely a megvalósítás teljes részleteit tartalmazza az ismételhető telepítések lehetővé tétele érdekében. Üzembe helyezéskor ez a sablon két S3 tárolót hoz létre: az egyiket az Amazon Kinesis Data Generator (KDG) által bevitt nyers mintaadatok tárolására, a másikat pedig a szerkesztett adatok tárolására. Ezenkívül létrehoz egy Kinesis Data Firehose szállítási adatfolyamot DirectPUT bemenetként, és egy Lambda függvény, amely meghívja az Amazon Comprehendet ContainsPiiEntities és a DetectPiiEntities API a személyazonosításra alkalmas adatok azonosítására és szerkesztésére. A Lambda függvény a felhasználói bevitelre támaszkodik a környezeti változókban annak meghatározásához, hogy mely kulcsértékeket kell megvizsgálni a személyazonosításra alkalmas adatok szempontjából.

Ebben a megoldásban a lambda funkció 100 KB-ra korlátozza a hasznos terhelés méretét. Ha olyan hasznos adatot adnak meg, ahol a szöveg nagyobb, mint 100 KB, a Lambda funkció kihagyja azt.

A megoldás üzembe helyezéséhez hajtsa végre a következő lépéseket:

  1. Indítsa el a CloudFormation stacket az USA keleti részén (N. Virginia) us-east-1:
    Az Amazon Comprehend és az Amazon Kinesis Data Firehose PlatoBlockchain Data Intelligence segítségével közel valós időben távolítsa el az érzékeny adatokat a streaming adatokból. Függőleges keresés. Ai.
  2. Adja meg a verem nevét, és hagyja a többi paramétert az alapértelmezett értékükön
  3. választ Tudomásul veszem, hogy az AWS CloudFormation létrehozhat IAM-erőforrásokat egyéni névvel.
  4. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Verem létrehozása.

Erőforrások manuális telepítése

Ha inkább manuálisan szeretné felépíteni az architektúrát az AWS CloudFormation használata helyett, hajtsa végre az ebben a szakaszban található lépéseket.

Hozza létre az S3 vödröket

Hozza létre az S3 vödröket a következő lépésekkel:

  1. Az Amazon S3 konzolon válassza a lehetőséget Kanalak a navigációs ablaktáblában.
  2. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Vödör létrehozása.
  3. Hozzon létre egy gyűjtőzónát a nyers adatokhoz, egyet pedig a szerkesztett adatokhoz.
  4. Jegyezze fel az imént létrehozott vödrök nevét.

Hozd létre a Lambda függvényt

A Lambda funkció létrehozásához és üzembe helyezéséhez hajtsa végre a következő lépéseket:

  1. A Lambda konzolon válassza a lehetőséget Funkció létrehozása.
  2. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Szerző a semmiből.
  3. A Funkció neve, belép AmazonComprehendPII-Redact.
  4. A Runtime, választ Python 3.9.
  5. A Építészetválassza x86_64.
  6. A Végrehajtási szerepválassza Hozzon létre egy új szerepet Lambda engedélyekkel.
  7. A függvény létrehozása után írja be a következő kódot:
    import json
    import boto3
    import os
    import base64
    import sys
    
    def lambda_handler(event, context):
        
        output = []
        
        for record in event['records']:
            
            # Gathers keys from enviroment variables and makes a list of desired keys to check for PII
            rawkeys = os.environ['keys']
            splitkeys = rawkeys.split(", ")
            print(splitkeys)
            #decode base64
            #Kinesis data is base64 encoded so decode here
            payloadraw=base64.b64decode(record["data"]).decode('utf-8')
            #Loads decoded payload into json
            payloadjsonraw = json.loads(payloadraw)
            
            # Creates Comprehend client
            comprehend_client = boto3.client('comprehend')
            
            
            # This codes handles the logic to check for keys, identify if PII exists, and redact PII if available. 
            for i in payloadjsonraw:
                # checks if the key found in the message matches a redact
                if i in splitkeys:
                    print("Redact key found, checking for PII")
                    payload = str(payloadjsonraw[i])
                    # check if payload size is less than 100KB
                    if sys.getsizeof(payload) < 99999:
                        print('Size is less than 100KB checking if value contains PII')
                        # Runs Comprehend ContainsPiiEntities API call to see if key value contains PII
                        pii_identified = comprehend_client.contains_pii_entities(Text=payload, LanguageCode='en')
                        
                        # If PII is not found, skip over key
                        if (pii_identified['Labels']) == []:
                            print('No PII found')
                        else:
                        # if PII is found, run through redaction logic
                            print('PII found redacting')
                            # Runs Comprehend DetectPiiEntities call to find exact location of PII
                            response = comprehend_client.detect_pii_entities(Text=payload, LanguageCode='en')
                            entities = response['Entities']
                            # creates redacted_payload which will be redacted
                            redacted_payload = payload
                            # runs through a loop that gathers necessary values from Comprehend API response and redacts values
                            for entity in entities:
                                char_offset_begin = entity['BeginOffset']
                                char_offset_end = entity['EndOffset']
                                redacted_payload = redacted_payload[:char_offset_begin] + '*'*(char_offset_end-char_offset_begin) + redacted_payload[char_offset_end:]
                            # replaces original value with redacted value
                            payloadjsonraw[i] = redacted_payload
                            print(str(payloadjsonraw[i]))
                    else:
                        print ('Size is more than 100KB, skipping inspection')
                else:
                    print("Key value not found in redaction list")
            
            redacteddata = json.dumps(payloadjsonraw)
            
            # adds inspected record to record
            output_record = {
                'recordId': record['recordId'],
                'result': 'Ok',
                'data' : base64.b64encode(redacteddata.encode('utf-8'))
            }
            output.append(output_record)
            print(output_record)
            
        print('Successfully processed {} records.'.format(len(event['records'])))
        
        return {'records': output}

  8. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Telepítése.
  9. A navigációs panelen válassza a lehetőséget Konfigurációt.
  10. navigáljon Környezeti változók.
  11. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a szerkesztése.
  12. A Kulcs, belép keys.
  13. A Érték, adja meg azokat a kulcsértékeket, amelyekből törölni szeretné a személyazonosításra alkalmas adatokat, vesszővel és szóközzel elválasztva. Például írja be Tweet1, Tweet2 ha a bejegyzés következő részében található minta tesztadatokat használja.
  14. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Megtakarítás.
  15. navigáljon Általános konfiguráció.
  16. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a szerkesztése.
  17. Módosítsa a Timeout 1 percig.
  18. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Megtakarítás.
  19. navigáljon Engedélyek.
  20. Válassza ki a szerep nevét az alatt Végrehajtási szerep.
    Ön át lesz irányítva a AWS Identity and Access Management (IAM) konzol.
  21. A Engedélyek hozzáadása, választ Szabályzatok csatolása.
  22. belép Comprehend lépjen a keresősávba, és válassza ki a házirendet ComprehendFullAccess.
  23. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Szabályzatok csatolása.

Hozza létre a Firehose kézbesítési adatfolyamot

A Firehose kézbesítési adatfolyam létrehozásához hajtsa végre a következő lépéseket:

  1. A Kinesis Data Firehose konzolon válassza a lehetőséget Kézbesítési adatfolyam létrehozása.
  2. A forrásválassza Közvetlen PUT.
  3. A Rendeltetési helyválassza Amazon S3.
  4. A Kézbesítési adatfolyam neve, belép ComprehendRealTimeBlog.
  5. Alatt Forrásrekordok átalakítása az AWS Lambdávalválassza Engedélyezett.
  6. A AWS lambda funkció, írja be a létrehozott függvény ARN-jét, vagy tallózással keresse meg a függvényt AmazonComprehendPII-Redact.
  7. A Pufferméret, állítsa az értéket 1 MB-ra.
  8. A Puffer intervallum, hagyja 60 másodpercnek.
  9. Alatt Úticél beállításai, válassza ki a szerkesztett adatokhoz létrehozott S3 tárolót.
  10. Alatt Biztonsági mentési beállítások, válassza ki a nyers rekordokhoz létrehozott S3 tárolót.
  11. Alatt Engedély, hozzon létre vagy frissítsen egy IAM-szerepet, vagy válasszon egy meglévő szerepet a megfelelő jogosultságokkal.
  12. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Kézbesítési adatfolyam létrehozása.

Telepítse az adatfolyam-megoldást a Kinesis Data Generator segítségével

Használhatja a Kinesis Data Generator (KDG) mintaadatokat a Kinesis Data Firehose-ba, és tesztelheti a megoldást. A folyamat egyszerűsítése érdekében biztosítunk egy Lambda-függvényt és egy CloudFormation-sablont egy Amazon Cognito felhasználót, és rendelje hozzá a megfelelő engedélyeket a KDG használatához.

  1. A Amazon Kinesis Data Generator oldal, választ Hozzon létre egy Cognito-felhasználót a CloudFormation segítségével.A rendszer átirányítja az AWS CloudFormation konzolra a verem létrehozásához.
  2. Adjon meg egy felhasználónevet és jelszót annak a felhasználónak, amellyel bejelentkezik a KDG-be.
  3. Hagyja a többi beállítást az alapértelmezett értékükön, és hozza létre a veremét.
  4. A Kimenetek lapon válassza a KDG UI hivatkozást.
  5. A bejelentkezéshez adja meg felhasználónevét és jelszavát.

Küldje el a tesztrekordokat, és érvényesítse a szerkesztést az Amazon S3-ban

A megoldás teszteléséhez hajtsa végre a következő lépéseket:

  1. Jelentkezzen be az előző lépésben létrehozott KDG URL-címére.
  2. Válassza ki azt a régiót, ahol az AWS CloudFormation verem telepítésre került.
  3. A Adatfolyam/szállítási adatfolyam, válassza ki a létrehozott kézbesítési adatfolyamot (ha használta a sablont, akkor a formátuma megvan accountnumber-awscomprehend-blog).
  4. A többi beállítást hagyja az alapértelmezett értékükön.
  5. A rekordsablonhoz létrehozhat saját teszteket, vagy használhatja a következő sablont. Ha az alábbi mintaadatokat használja a teszteléshez, frissített környezeti változókkal kell rendelkeznie a AmazonComprehendPII-Redact Lambda funkció Tweet1, Tweet2. Ha a CloudFormation segítségével telepíti, frissítse a környezeti változókat erre Tweet1, Tweet2 a létrehozott Lambda függvényen belül. A minta tesztadatok az alábbiak:
    {"User":"12345", "Tweet1":" Good morning, everybody. My name is Van Bokhorst Serdar, and today I feel like sharing a whole lot of personal information with you. Let's start with my Email address SerdarvanBokhorst@dayrep.com. My address is 2657 Koontz Lane, Los Angeles, CA. My phone number is 818-828-6231.", "Tweet2": "My Social security number is 548-95-6370. My Bank account number is 940517528812 and routing number 195991012. My credit card number is 5534816011668430, Expiration Date 6/1/2022, my C V V code is 121, and my pin 123456. Well, I think that's it. You know a whole lot about me. And I hope that Amazon comprehend is doing a good job at identifying PII entities so you can redact my personal information away from this streaming record. Let's check"}

  6. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Adatok küldése, és várjon néhány másodpercet, amíg a rekordok elküldésre kerülnek az adatfolyamra.
  7. Néhány másodperc elteltével állítsa le a KDG generátort, és ellenőrizze, hogy az S3 vödreiben vannak-e kézbesített fájlok.

A következő példa a nyers S3 tárolóban lévő nyers adatokra:

{"User":"12345", "Tweet1":" Good morning, everybody. My name is Van Bokhorst Serdar, and today I feel like sharing a whole lot of personal information with you. Let's start with my Email address SerdarvanBokhorst@dayrep.com. My address is 2657 Koontz Lane, Los Angeles, CA. My phone number is 818-828-6231.", "Tweet2": "My Social security number is 548-95-6370. My Bank account number is 940517528812 and routing number 195991012. My credit card number is 5534816011668430, Expiration Date 6/1/2022, my C V V code is 121, and my pin 123456. Well, I think that's it. You know a whole lot about me. And I hope that Amazon comprehend is doing a good job at identifying PII entities so you can redact my personal information away from this streaming record. Let's check"}

Az alábbiakban egy példa látható a szerkesztett S3 tárolóban lévő szerkesztett adatokra:

{"User":"12345", "Tweet1":"Good morning, everybody. My name is *******************, and today I feel like sharing a whole lot of personal information with you. Let's start with my Email address ****************************. My address is ********************************** My phone number is ************.", "Tweet"2: "My Social security number is ***********. My Bank account number is ************ and routing number *********. My credit card number is ****************, Expiration Date ********, my C V V code is ***, and my pin ******. Well, I think that's it. You know a whole lot about me. And I hope that Amazon comprehend is doing a good job at identifying PII entities so you can redact my personal information away from this streaming record. Let's check"}

Az érzékeny információkat eltávolítottuk a törölt üzenetekből, így biztos lehet benne, hogy megoszthatja ezeket az adatokat a végrendszerekkel.

Razzia

Ha végzett ezzel a megoldással, tisztítsa meg erőforrásait az AWS CloudFormation konzol segítségével a példában telepített összes erőforrás törléséhez. Ha követte a kézi lépéseket, manuálisan kell törölnie a két vödröt, a AmazonComprehendPII-Redact funkció, a ComprehendRealTimeBlog folyam, a naplócsoport a ComprehendRealTimeBlog adatfolyamot és a létrehozott IAM-szerepeket.

Következtetés

Ez a bejegyzés bemutatta, hogyan integrálhatja a személyazonosításra alkalmas adatok szerkesztését a közel valós idejű adatfolyam-architektúrába, és hogyan csökkentheti az adatfeldolgozási időt a repülés közbeni szerkesztéssel. Ebben a forgatókönyvben megadja a törölt adatokat a végfelhasználóknak, és a Data Lake rendszergazdája biztosítja a nyers gyűjtőtárat későbbi használatra. Az Amazon Comprehend segítségével további feldolgozást is létrehozhat a hangszín vagy hangulat azonosítása, az adatok entitásainak azonosítása és az egyes üzenetek osztályozása érdekében.

Ennek a bejegyzésnek a részeként minden egyes szolgáltatáshoz egyedi lépéseket biztosítottunk, valamint tartalmaztunk egy CloudFormation-sablont is, amely lehetővé teszi a szükséges erőforrások biztosítását a fiókjában. Ezt a sablont csak a koncepció bizonyítására vagy a tesztelési forgatókönyvekre szabad használni. Ehhez olvassa el a fejlesztői útmutatókat Amazon Comprehend, Lambdaés Kinesis Data Firehose bármilyen szolgáltatási korlátra.

A személyazonosításra alkalmas adatok azonosításának és szerkesztésének megkezdéséhez lásd: Személyazonosításra alkalmas adatok (PII). Az ebben a bejegyzésben található példaarchitektúrával az Amazon Comprehend API-k bármelyikét integrálhatja közel valós idejű adatokkal a Kinesis Data Firehose adatátalakítás segítségével. Ha többet szeretne megtudni arról, hogy mit építhet a közel valós idejű adatokból a Kinesis Data Firehose segítségével, tekintse meg a Amazon Kinesis Data Firehose fejlesztői útmutató. Ez a megoldás minden AWS-régióban elérhető, ahol az Amazon Comprehend és a Kinesis Data Firehose elérhető.


A szerzőkről

Az Amazon Comprehend és az Amazon Kinesis Data Firehose PlatoBlockchain Data Intelligence segítségével közel valós időben távolítsa el az érzékeny adatokat a streaming adatokból. Függőleges keresés. Ai. Joe Morotti az Amazon Web Services (AWS) megoldástervezője, aki az Egyesült Államok középnyugati részén segíti a vállalati ügyfeleket. Technikai szerepkörök széles skáláját töltötte be, és szívesen bemutatja az ügyfelek művészetét a lehetséges lehetőségekről. Szabadidejében szívesen tölt minőségi időt családjával új helyek felfedezésével és sportcsapata teljesítményének túlértékelésével.

Az Amazon Comprehend és az Amazon Kinesis Data Firehose PlatoBlockchain Data Intelligence segítségével közel valós időben távolítsa el az érzékeny adatokat a streaming adatokból. Függőleges keresés. Ai.Sriharsh Adari az Amazon Web Services (AWS) vezető megoldástervezője, ahol segít az ügyfeleknek abban, hogy az üzleti eredményektől visszamenőleg dolgozzanak innovatív megoldásokat az AWS-en. Az évek során több ügyfelének segített az adatplatformok átalakításában az iparági vertikumokban. Fő szakterülete a technológiai stratégia, az adatelemzés és az adattudomány. Szabadidejében szeret teniszezni, mámorosan tévéműsorokat nézni és Tablát játszani.

Időbélyeg:

Még több AWS gépi tanulás