Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym samouczku dane są pobierane do Fabric lakehouses w formacie Delta Lake. Tutaj definiujemy kilka ważnych terminów:
Lakehouse — lakehouse to kolekcja plików, folderów i / lub tabel reprezentujących bazę danych w usłudze Data Lake. Silnik Spark i silnik SQL używają zasobów "lakehouse" do przetwarzania big data. W przypadku korzystania z tabel w formacie delta typu open source przetwarzanie obejmuje rozszerzone możliwości transakcji ACID.
Delta Lake — usługa Delta Lake to warstwa magazynu typu open source, która zapewnia transakcje ACID, skalowalne zarządzanie metadanymi oraz przetwarzanie danych wsadowych i przesyłanych strumieniowo do platformy Apache Spark. Jako format tabeli danych usługa Delta Lake rozszerza pliki danych Parquet za pomocą dziennika transakcji opartego na plikach na potrzeby transakcji ACID i skalowalnego zarządzania metadanymi.
Azure Open Datasets są wyselekcjonowane publiczne zestawy danych, które dodają funkcje specyficzne dla scenariusza do rozwiązań uczenia maszynowego. Prowadzi to do bardziej dokładnych modeli. Otwarte zestawy danych to zasoby w chmurze, które znajdują się w witrynie Microsoft Azure Storage. Platforma Apache Spark, interfejs API REST, fabryka danych i inne narzędzia mogą uzyskiwać dostęp do otwartych zestawów danych.
W tym samouczku użyjesz platformy Apache Spark do:
- Odczytywanie danych z kontenerów Azure Open Datasets.
- Zapisz dane w tabeli delty usługi Fabric Lakehouse.
Warunki wstępne
Pobierz subskrypcję Microsoft Fabric. Możesz też utworzyć bezpłatne konto Microsoft Fabric wersji próbnej.
Zaloguj się do Microsoft Fabric.
Przełącz na Fabric, używając przełącznika doświadczenia w dolnym lewym rogu twojej strony głównej.
- Dodaj lakehouse do tego notesu. W tym samouczku najpierw pobierzesz dane z publicznego zbioru danych. Następnie dane są przechowywane w tej zasobie typu lakehouse.
Uwaga / Notatka
Przed rozpoczęciem upewnij się, że wykonasz kroki przygotowania systemu: utwórz przestrzeń roboczą, utwórz lakehouse i dołącz go do swojego notesu. Przykładowe dane używane w tym samouczku pochodzą z kontenera publicznego Azure Open Datasets i są uzyskiwane programowo w kodzie notesu.
Notuj na bieżąco w notesie
Notatnik 1-ingest-data.ipynb towarzyszy temu samouczkowi.
Aby otworzyć towarzyszący notes na potrzeby tego samouczka, postępuj zgodnie z instrukcjami w temacie Przygotowywanie systemu do celów nauki o danych, aby zaimportować notes do obszaru roboczego.
Jeśli wolisz skopiować i wkleić kod z tej strony, możesz utworzyć nowy notes.
Przed rozpoczęciem uruchamiania kodu pamiętaj, aby dołączyć usługę Lakehouse do notesu .
Wskazówka
Ten samouczek odczytuje przykładowe dane z kontenera Azure Open Datasets. Jeśli podczas ładowania danych wystąpi błąd dostępu, możesz ręcznie pobrać plik churn.csv z repozytorium GitHub fabric-samples i załadować go do Lakehouse.
Dane dotyczące odpływu klientów banku
Zestaw danych zawiera informacje o stanie odejścia klientów dla 10 000 klientów. Zawiera również atrybuty, które mogą mieć wpływ na współczynnik zmian — na przykład:
- Ocena kredytowa
- Lokalizacja geograficzna (Niemcy, Francja, Hiszpania)
- Płeć (mężczyzna, kobieta)
- Wiek
- Kadencja (liczba lat, w których klient był klientem w tym banku)
- Saldo konta
- Szacowane wynagrodzenie
- Liczba produktów zakupionych przez klienta za pośrednictwem banku
- Stan karty kredytowej (niezależnie od tego, czy klient ma kartę kredytową)
- Stan aktywnego członka (bez względu na to, czy klient ma aktywny stan klienta bankowego)
Zestaw danych zawiera również następujące kolumny:
- numer wiersza
- identyfikator klienta
- nazwisko klienta
Te kolumny nie powinny mieć wpływu na decyzję klienta o opuszczeniu banku.
Zamknięcie konta bankowego klienta oznacza utratę tego klienta. Kolumna zestawu danych exited odnosi się do porzucenia klienta. Dostępny jest niewielki kontekst dotyczący tych atrybutów, więc musisz kontynuować bez informacji podstawowych dotyczących zestawu danych. Naszym celem jest zrozumienie, w jaki sposób te atrybuty przyczyniają się do exited stanu.
Przykładowe wiersze zestawu danych:
| "CustomerID" | "Nazwisko" | Ocena kredytowa | "Geografia" | "Płeć" | "Wiek" | "Czas użytkowania" | "Saldo" | LiczbaProduktów | "HasCrCard" | CzyCzłonekAktywny | Szacowana pensja | "Zakończono" |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 15634602 | Hargrave | 619 | Francja | Kobieta | 42 | 2 | 0,00 | 1 | 1 | 1 | 101348.88 | 1 |
| 15647311 | Wzgórze | 608 | Hiszpania | Kobieta | 41 | 1 | 83807.86 | 1 | 0 | 1 | 112542.58 | 0 |
Pobieranie zestawu danych i przekazywanie do usługi Lakehouse
Wskazówka
Podczas definiowania następujących parametrów można łatwo użyć tego notesu z różnymi zestawami danych:
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
Poniższy fragment kodu pobiera publicznie dostępną wersję zestawu danych, a następnie przechowuje ten zasób w Fabric lakehouse:
Ważny
Upewnij się, że dodasz lakehouse do notatnika przed jego uruchomieniem. Niepowodzenie w tym celu powoduje wystąpienie błędu.
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.")
Powiązana zawartość
Wykorzystujesz dane, które właśnie pozyskałeś: