Jaa


Opas Osa 1: Käytä Apache Sparkia tietojen vastaanottamiseen Microsoft Fabric -järvenrakennukseen

Tämä opetusohjelma siirtää dataa Fabric-järvitaloihin delta lake -muodossa. Määritämme tässä muutamia tärkeitä termejä:

  • Lakehouse – Lakehouse on kokoelma tiedostoja, kansioita ja /tai taulukoita, jotka edustavat Data Lake -tallennustilan tietokantaa. Spark-moduuli ja SQL-moduuli käyttävät Lakehouse-resursseja massadatan käsittelyyn. Kun käytät avoimen lähdekoodin Delta-muotoiltuja taulukoita, prosessointi sisältää parannetut ACID-tapahtumaominaisuudet.

  • Delta Lake - Delta Lake on avoimen lähdekoodin tallennuskerros, joka tuo ACID-tapahtumat, skaalattavan metatietojen hallinnan sekä erä- ja suoratoistotietojen käsittelyn Apache Sparkiin. Tietotaulukkomuotona Delta Lake laajentaa Parquet-datatiedostoja tiedostopohjaisella tapahtumalokilla ACID-tapahtumia varten ja skaalattaville metatietojen hallinnalle.

  • Azuren avoimet tietoaineistot ovat kuratoituja julkisia aineistoja, jotka lisäävät koneoppimisratkaisuihin skenaariokohtaisia ominaisuuksia. Tämä johtaa tarkempiin malleihin. Open Datasets ovat pilviresursseja, jotka sijaitsevat Microsoft Azure-tallennus -palvelussa. Apache Spark, REST API, Data Factory ja muut työkalut voivat käyttää avoimia tietojoukkoja.

Tässä opetusohjelmassa käytetään Apache Sparkiä

  • Lue dataa Azuren avoimet tietoaineistot containersista.
  • Kirjoita data Fabric Lakehouse delta-taulukkoon.

Edellytykset

  • Lisää tähän muistikirjaan lakehouse. Tässä opetusohjelmassa lataat ensin tiedot julkisesta blob-objektista. Sitten tiedot tallennetaan kyseiseen Lakehouse-resurssiin.

Muistio

Ennen kuin aloitat, varmista, että suoritat Valmistele järjestelmäsi -vaiheet: luo työtila, luo järvenrakennus ja liitä se muistikirjaasi. Tässä opastuaalissa käytetty esimerkkidata tulee Azuren avoimet tietoaineistot -julkisesta kontista ja niihin pääsee ohjelmallisesti käyttöön muistikirjan koodissa.

Seuraa mukana muistikirjassa

1-ingest-data.ipynb-muistikirja on tämän opetusohjelman mukana.

Juomaraha

Tämä opas lukee esimerkkidataa Azuren avoimet tietoaineistot -kontista. Jos kohtaat käyttövirheen datan lataamisessa, voit manuaalisesti ladata churn.csv-tiedoston fabric-samples GitHub repository ja ladata sen lakehouseen.

Pankin vaihtuvuustiedot

Tietojoukko sisältää vaihtuvuustilan tiedot 10 000 asiakkaalle. Se sisältää myös määritteitä, jotka voivat vaikuttaa vaihtumiseen – esimerkiksi:

  • Luottopisteet
  • Maantieteellinen sijainti (Saksa, Ranska, Espanja)
  • Sukupuoli (mies, nainen)
  • Ikä
  • Asiakkuuden pituus (vuosien määrä, jolloin asiakas oli asiakkaana kyseisessä pankissa)
  • Tilin saldo
  • Arvioitu palkka
  • Asiakkaan pankin kautta ostamien tuotteiden määrä
  • Luottokortin tila (riippumatta siitä, onko asiakkaalla luottokortti)
  • Aktiivisen jäsenen tila (riippumatta siitä, onko asiakkaalla aktiivinen pankin asiakastila)

Tietojoukko sisältää myös seuraavat sarakkeet:

  • rivin numero
  • asiakastunnus
  • asiakkaan sukunimi

Näillä sarakkeilla ei pitäisi olla vaikutusta asiakkaan päätökseen poistua pankista.

Asiakkaan pankkitilin sulkeminen määrittää kyseisen asiakkaan vaihtuvuuden. Tietojoukkosarake exited viittaa asiakkaan hylkäämiseen. Näiden määritteiden kontekstia on vähän, joten sinun on edettävä ilman tietojoukkoa koskevia taustatietoja. Tavoitteenamme on ymmärtää, miten nämä määritteet vaikuttavat exited tilaan.

Esimerkkitietojoukon riveistä:

"Asiakastunnus" "Sukunimi" "CreditScore" "Maantiede" "Sukupuoli" "Ikä" "Hallinnan kesto" "Saldo" "NumOfProducts" "HasCrCard" "IsActiveMember" "Arvioitu vaihtoehto" "Exited"
15634602 Hargrave 619 Ranska Naispuolinen 42 2 0.00 1 1 1 101348.88 1
15647311 Kukkula 608 Espanja Naispuolinen 41 1 83807.86 1 0 1 112542.58 0

Lataa tietojoukko ja lataa se Lakehouseen

Juomaraha

Kun määrität seuraavat parametrit, voit helposti käyttää tätä muistikirjaa, jossa on eri tietojoukkoja:

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

Seuraava koodipätkä lataa julkisesti saatavilla olevan version aineistosta ja tallentaa sen sitten Fabric-järvenrakennukseen:

Tärkeä

Varmista, että lisäät muistikirjaan lakehousen , ennen kuin suoritat sen. Jos näin ei tehdä, tuloksena on virhe.

import os, requests
if not IS_CUSTOM_DATA:
# Download demo data files into lakehouse if not exist
    remote_url = "https://synapseaisolutionsa.z13.web.core.windows.net/data/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.")

Käytät juuri käyttämiäsi tietoja: