Korzystanie z usługi Azure Data Lake Storage Gen2 w połączeniu z klastrami usługi Azure HDInsight
Azure Data Lake Storage Gen2 to usługa magazynu w chmurze przeznaczona do analizy danych big data, oparta na usłudze Azure Blob Storage. Wynikowa usługa oferuje funkcje usługi Azure Data Lake Storage, w tym semantyka systemu plików, zabezpieczenia na poziomie katalogu i poziom plików oraz możliwość dostosowywania. Oprócz tanich, warstwowych magazynów, wysokiej dostępności i możliwości odzyskiwania po awarii z usługi Azure Blob Storage.
Aby uzyskać pełne porównanie opcji tworzenia klastra przy użyciu usługi Data Lake Storage Gen2, zobacz Porównanie opcji magazynu do użycia z klastrami usługi Azure HDInsight.
Ostrzeżenie
Rozliczenia dla klastrów usługi HDInsight są naliczane proporcjonalnie na minutę, niezależnie od tego, czy są używane. Pamiętaj, aby usunąć klaster po zakończeniu korzystania z niego. Zobacz , jak usunąć klaster usługi HDInsight.
Dostępność usługi Data Lake Storage Gen2
Usługa Data Lake Storage Gen2 jest dostępna jako opcja magazynu dla prawie wszystkich typów klastrów usługi Azure HDInsight jako domyślnego i dodatkowego konta magazynu. Baza HBase może jednak mieć tylko jedno konto z usługą Data Lake Storage Gen2.
Uwaga
Po wybraniu usługi Data Lake Storage Gen2 jako podstawowego typu magazynu nie można wybrać usługi Data Lake Storage Gen1 jako dodatkowego magazynu.
Tworzenie klastrów usługi HDInsight przy użyciu usługi Data Lake Storage Gen2
Skorzystaj z poniższych linków, aby uzyskać szczegółowe instrukcje dotyczące tworzenia klastrów usługi HDInsight z dostępem do usługi Data Lake Storage Gen2.
- Korzystanie z portalu
- Korzystanie z interfejsu wiersza polecenia platformy Azure
- Program PowerShell nie jest obecnie obsługiwany do tworzenia klastra usługi HDInsight przy użyciu usługi Azure Data Lake Storage Gen2.
Kontrola dostępu dla usługi Data Lake Storage Gen2 w usłudze HDInsight
Jakiego rodzaju uprawnienia obsługuje usługa Data Lake Storage Gen2?
Usługa Data Lake Storage Gen2 używa modelu kontroli dostępu, który obsługuje zarówno kontrolę dostępu opartą na rolach platformy Azure (Azure RBAC) jak i listy kontroli dostępu podobne do modelu POSIX (ACL).
Kontrola dostępu oparta na rolach platformy Azure używa przypisań ról do efektywnego stosowania zestawów uprawnień do użytkowników, grup i jednostek usługi dla zasobów platformy Azure. Zazwyczaj te zasoby platformy Azure są ograniczone do zasobów najwyższego poziomu (na przykład kont usługi Azure Blob Storage). W przypadku usługi Azure Blob Storage, a także usługi Data Lake Storage Gen2, ten mechanizm został rozszerzony na zasób systemu plików.
Aby uzyskać więcej informacji na temat uprawnień do plików z kontrolą dostępu opartą na rolach platformy Azure, zobacz Kontrola dostępu oparta na rolach (RBAC) platformy Azure.
Aby uzyskać więcej informacji na temat uprawnień do plików z listami ACL, zobacz Listy kontroli dostępu dotyczące plików i katalogów.
Jak mogę kontrolować dostęp do moich danych w usłudze Data Lake Storage Gen2?
Możliwość dostępu do plików przez klaster usługi HDInsight w usłudze Data Lake Storage Gen2 jest kontrolowana za pomocą tożsamości zarządzanych. Tożsamość zarządzana to tożsamość zarejestrowana w usłudze Microsoft Entra, której poświadczenia są zarządzane przez platformę Azure. W przypadku tożsamości zarządzanych nie musisz rejestrować jednostek usługi w identyfikatorze Entra firmy Microsoft. Możesz też zachować poświadczenia, takie jak certyfikaty.
Usługi platformy Azure mają dwa typy tożsamości zarządzanych: przypisane przez system i przypisane przez użytkownika. Usługa HDInsight używa tożsamości zarządzanych przypisanych przez użytkownika do uzyskiwania dostępu do usługi Data Lake Storage Gen2. Element A user-assigned managed identity
jest tworzony jako autonomiczny zasób platformy Azure. W ramach procesu tworzenia platforma Azure tworzy tożsamość w dzierżawie firmy Microsoft Entra, która jest zaufana przez używaną subskrypcję. Utworzoną tożsamość można przypisać do co najmniej jednego wystąpienia usługi platformy Azure.
Cykl życiowy tożsamości przypisanej przez użytkownika jest zarządzany oddzielnie od cyklu życiowego wystąpień usługi platformy Azure, do których została przypisana. Aby uzyskać więcej informacji na temat tożsamości zarządzanych, zobacz Co to są tożsamości zarządzane dla zasobów platformy Azure?.
Jak mogę ustawić uprawnienia dla użytkowników firmy Microsoft Entra do wykonywania zapytań dotyczących danych w usłudze Data Lake Storage Gen2 przy użyciu programu Hive lub innych usług?
Aby ustawić uprawnienia dla użytkowników do wykonywania zapytań dotyczących danych, użyj grup zabezpieczeń firmy Microsoft Entra jako przypisanego podmiotu zabezpieczeń w listach ACL. Nie przypisuj bezpośrednio uprawnień dostępu do plików poszczególnym użytkownikom lub jednostkom usługi. Dzięki grupom zabezpieczeń firmy Microsoft Entra w celu kontrolowania przepływu uprawnień można dodawać i usuwać użytkowników lub jednostki usługi bez ponownego wprowadzania list ACL do całej struktury katalogów. Musisz tylko dodać lub usunąć użytkowników z odpowiedniej grupy zabezpieczeń firmy Microsoft Entra. Listy ACL nie są dziedziczone, dlatego ponowne zastosowania list ACL wymagają zaktualizowania listy ACL w każdym pliku i podkatalogu.
Dostęp do plików z klastra
Istnieje kilka sposobów uzyskiwania dostępu do plików w usłudze Data Lake Storage Gen2 z klastra usługi HDInsight.
Przy użyciu w pełni kwalifikowanej nazwy. W przypadku tej metody należy podać pełną ścieżkę do pliku, do którego chcesz uzyskać dostęp.
abfs://<containername>@<accountname>.dfs.core.windows.net/<file.path>/
Przy użyciu skróconego formatu ścieżki. Dzięki temu podejściu należy zastąpić ścieżkę do katalogu głównego klastra następującymi elementami:
abfs:///<file.path>/
Przy użyciu ścieżki względnej. W przypadku tej metody należy podać tylko względną ścieżkę do pliku, do którego chcesz uzyskać dostęp.
/<file.path>/
Przykłady dostępu do danych
Przykłady są oparte na połączeniu SSH z węzłem głównym klastra. W przykładach są używane wszystkie trzy schematy identyfikatorów URI. Zastąp CONTAINERNAME
wartości i STORAGEACCOUNT
odpowiednimi wartościami
Kilka poleceń hdfs
Utwórz plik w magazynie lokalnym.
touch testFile.txt
Tworzenie katalogów w magazynie klastra.
hdfs dfs -mkdir abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -mkdir abfs:///sampledata2/ hdfs dfs -mkdir /sampledata3/
Kopiowanie danych z magazynu lokalnego do magazynu klastra.
hdfs dfs -copyFromLocal testFile.txt abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -copyFromLocal testFile.txt abfs:///sampledata2/ hdfs dfs -copyFromLocal testFile.txt /sampledata3/
Wyświetlanie listy zawartości katalogu w magazynie klastra.
hdfs dfs -ls abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -ls abfs:///sampledata2/ hdfs dfs -ls /sampledata3/
Tworzenie tabeli programu Hive
Trzy lokalizacje plików są wyświetlane w celach ilustracyjnych. W przypadku rzeczywistego wykonania użyj tylko jednego z LOCATION
wpisów.
DROP TABLE myTable;
CREATE EXTERNAL TABLE myTable (
t1 string,
t2 string,
t3 string,
t4 string,
t5 string,
t6 string,
t7 string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
STORED AS TEXTFILE
LOCATION 'abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/example/data/';
LOCATION 'abfs:///example/data/';
LOCATION '/example/data/';
Następne kroki
- Integracja usługi Azure HDInsight z usługą Data Lake Storage Gen2 w wersji zapoznawczej — lista ACL i aktualizacja zabezpieczeń
- Wprowadzenie do usługi Azure Data Lake Storage Gen2
- Samouczek: wyodrębnianie, przekształcanie i ładowanie danych przy użyciu zapytania interakcyjnego w usłudze Azure HDInsight