Oktatóanyag 1. rész: Adatok betöltése Egy Microsoft Fabric lakehouse-ba az Apache Spark használatával
Ebben az oktatóanyagban delta lake formátumban fog adatokat beszedni a Fabric lakehouse-ba. Néhány fontos fogalom, amit meg kell érteni:
Lakehouse – A lakehouse olyan fájlok/mappák/táblák gyűjteménye, amelyek egy adatbázist képviselnek a Spark motor és az SQL-motor által a big data-feldolgozáshoz használt data lake-en keresztül, és továbbfejlesztett képességeket tartalmaznak az ACID-tranzakciókhoz a nyílt forráskódú Delta formátumú táblák használatakor.
A Delta Lake – Delta Lake egy nyílt forráskódú tárolási réteg, amely ACID-tranzakciókat, méretezhető metaadatok kezelését, valamint kötegelt és streamelt adatfeldolgozást biztosít az Apache Sparkba. A Delta Lake-tábla olyan adattábla-formátum, amely kibővíti a Parquet-adatfájlokat egy fájlalapú tranzakciónaplóval az ACID-tranzakciókhoz és a skálázható metaadatok kezeléséhez.
Az Azure Open Datasets olyan válogatott nyilvános adatkészletek, amelyekkel forgatókönyvspecifikus funkciókat adhat hozzá a gépi tanulási megoldásokhoz a pontosabb modellek érdekében. A nyílt adathalmazok a Felhőben találhatók a Microsoft Azure Storage-ban, és különböző módszerekkel érhetők el, például Apache Spark, REST API, Data Factory és egyéb eszközök.
Ebben az oktatóanyagban az Apache Sparkot használja a következőkre:
- Adatok olvasása az Azure Open Datasets-tárolókból.
- Adatok írása Fabric lakehouse delta táblába.
Előfeltételek
Microsoft Fabric-előfizetés lekérése. Vagy regisztráljon egy ingyenes Microsoft Fabric-próbaverzióra.
A kezdőlap bal oldalán található élménykapcsolóval válthat a Synapse Adattudomány felületre.
- Adjon hozzá egy tóházat ehhez a jegyzetfüzethez. Adatokat fog letölteni egy nyilvános blobból, majd az adatokat a lakehouse-ban fogja tárolni.
Követés a jegyzetfüzetben
Az 1-ingest-data.ipynb az oktatóanyagot kísérő jegyzetfüzet.
Az oktatóanyaghoz mellékelt jegyzetfüzet megnyitásához kövesse a Rendszer előkészítése adatelemzési oktatóanyagokhoz című témakör utasításait, és importálja a jegyzetfüzetet a munkaterületre.
Ha inkább erről a lapról másolja és illessze be a kódot, létrehozhat egy új jegyzetfüzetet.
A kód futtatása előtt mindenképpen csatoljon egy lakehouse-t a jegyzetfüzethez .
Banki forgalom adatai
Az adathalmaz 10 000 ügyfél adatváltozási állapotát tartalmazza. Olyan attribútumokat is tartalmaz, amelyek hatással lehetnek az adatváltozásra, például:
- Kreditpontszám
- Földrajzi hely (Németország, Franciaország, Spanyolország)
- Nem (férfi, nő)
- Kor
- Bérleti idő (a bank ügyfeleként töltött évek)
- Számla egyenlege
- Becsült fizetés
- Az ügyfél által a bankon keresztül vásárolt termékek száma
- Hitelkártya állapota (hogy az ügyfél rendelkezik-e hitelkártyával vagy sem)
- Aktív tag állapota (akár egy aktív bank ügyfele, akár nem)
Az adatkészlet olyan oszlopokat is tartalmaz, mint a sorszám, az ügyfélazonosító és az ügyfél vezetékneve, amelyek nem befolyásolhatják az ügyfél bankból való kilépésre vonatkozó döntését.
Az ügyfél forgalmát meghatározó esemény az ügyfél bankszámlájának bezárása. Az adathalmaz oszlopa exited
az ügyfél lemondására utal. Ezekről az attribútumokról nem áll rendelkezésre sok kontextus, ezért anélkül kell továbblépnie, hogy háttérinformációt kellene adnia az adathalmazról. A cél annak megértése, hogy ezek az attribútumok hogyan járulnak hozzá az exited
állapothoz.
Példasorok az adathalmazból:
"CustomerID" | "Vezetéknév" | "CreditScore" | "Földrajzi hely" | "Nem" | "Életkor" | "Bérleti idő" | "Egyenleg" | "NumOfProducts" | "HasCrCard" | "IsActiveMember" | "Becsült értékesítés" | "Kilépett" |
---|---|---|---|---|---|---|---|---|---|---|---|---|
15634602 | Hargrave | 619 | Franciaország | Nő | 42 | 2 | 0,00 | 0 | 0 | 0 | 101348.88 | 0 |
15647311 | Hill | 608 | Spanyolország | Nő | 41 | 0 | 83807.86 | 0 | 0 | 0 | 112542.58 | 0 |
Adathalmaz letöltése és feltöltése a lakehouse-ba
Tipp.
A következő paraméterek definiálásával ezt a jegyzetfüzetet egyszerűen használhatja különböző adatkészletekkel.
IS_CUSTOM_DATA = False # if TRUE, dataset has to be uploaded manually
DATA_ROOT = "/lakehouse/default"
DATA_FOLDER = "Files/churn" # folder with data files
DATA_FILE = "churn.csv" # data file name
Ez a kód letölti az adathalmaz nyilvánosan elérhető verzióját, majd egy Fabric lakehouse-ban tárolja.
Fontos
A futtatás előtt mindenképpen adjon hozzá egy lakehouse-t a jegyzetfüzethez. Ennek elmulasztása hibát fog eredményezni.
import os, requests
if not IS_CUSTOM_DATA:
# Download demo data files into lakehouse if not exist
remote_url = "https://synapseaisolutionsa.blob.core.windows.net/public/bankcustomerchurn"
file_list = [DATA_FILE]
download_path = f"{DATA_ROOT}/{DATA_FOLDER}/raw"
if not os.path.exists("/lakehouse/default"):
raise FileNotFoundError(
"Default lakehouse not found, please add a lakehouse and restart the session."
)
os.makedirs(download_path, exist_ok=True)
for fname in file_list:
if not os.path.exists(f"{download_path}/{fname}"):
r = requests.get(f"{remote_url}/{fname}", timeout=30)
with open(f"{download_path}/{fname}", "wb") as f:
f.write(r.content)
print("Downloaded demo data files into lakehouse.")
Kapcsolódó tartalom
Az imént betöltött adatokat fogja használni:
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: