Rozwiązywanie problemów z dostępem do magazynu puli zadań platformy Apache Spark w usłudze Azure Synapse Analytics
Dotyczy: Azure Synapse Analytics
Apache Spark to platforma przetwarzania równoległego, która obsługuje przetwarzanie w pamięci w celu zwiększania wydajności aplikacji do analizy danych big data. Platforma Apache Spark w usłudze Azure Synapse Analytics jest jedną z implementacji platformy Apache Spark w chmurze firmy Microsoft. Usługa Azure Synapse ułatwia tworzenie i konfigurowanie bezserwerowej puli zadań platformy Apache Spark na platformie Azure. Pule zadań platformy Spark w usłudze Azure Synapse są zgodne z usługami Azure Storage i Azure Data Lake Generation 2 Storage. W związku z tym można używać pul platformy Spark do przetwarzania danych przechowywanych na platformie Azure.
Jeśli występują problemy z dostępem do magazynu puli, takie jak błędy "403" lub błąd obszaru roboczego usługi Synapse w celu znalezienia połączonych usług, skorzystaj z podanych wskazówek, aby rozwiązać problemy.
Nieobsługiwane scenariusze
Następujące przypadki użycia nie są obsługiwane podczas nawiązywania połączenia z kontem magazynu z puli usługi Synapse Spark:
- Nawiązywanie połączenia z kontem magazynu usługi ADLS Gen 1
- Nawiązywanie połączenia z kontem magazynu usługi ADLS Gen 2 przy użyciu tożsamości zarządzanej przypisanej przez użytkownika
- Nawiązywanie połączenia z kontem magazynu usługi ADLS Gen 2, które ma:
- współużytkowanego obszaru roboczego usługi Synapse w sieci wirtualnej
- konta usługi Storage z obsługą zapory
Typowe problemy i rozwiązania
Błąd | Rozwiązanie |
---|---|
"errorMessage":"LSRServiceException to [{"StatusCode":400,"ErrorResponse":{"code":"LSRLinkedServiceFailure","message":"Nie można odnaleźć połączonej usługi AzureDataLakeStorage1; | Ten błąd jest generowany, jeśli obszar roboczy usługi Synapse jest skojarzony z repozytorium Git, usługą Azure DevOps Services lub usługą GitHub. Jest on również generowany, gdy artefakt, taki jak notes lub połączona usługa, nie jest publikowany. Ręcznie opublikuj zmiany kodu w gałęzi współpracy w usłudze Synapse. |
stdout: Wyjątek w wątku "main" org.apache.hadoop.fs.FileAlreadyExistsException: Niepowodzenie operacji: „Ten punkt końcowy nie obsługuje funkcji BlobStorageEvents ani SoftDelete. Wyłącz te funkcje konta, jeśli chcesz użyć tego punktu końcowego.", 409, HEAD, https://< storageaccountname.dfs.core.windows.net/scripts/?upn=false&action=getAccessControl&timeout=90> | Sprawdź, czy magazyn usługi ADLS Gen 2 jest skonfigurowany jako magazyn podstawowy. Aby wyłączyć funkcję SoftDelete, wyczyść pole wyboru Włącz usuwanie nietrwałe obiektów blob dla konta magazynu. |
Rozwiązywanie problemów z błędami "403"
Dostęp do magazynu i dostęp do konta
- Aby zapisywać dane w magazynie za pośrednictwem potoku, msi obszaru roboczego usługi Synapse jest podmiotem zabezpieczeń, który uruchamia wszystkie operacje, takie jak Odczyt, Zapis i Usuń w magazynie.
- Upewnij się, że konto msi obszaru roboczego ma rolę Współautor danych obiektu blob usługi Storage, aby wykonać wszystkie akcje.
- Jeśli używasz usługi Azure Notebooks do uzyskiwania dostępu do konta magazynu, użyj zalogowanego konta, chyba że uzyskujesz dostęp do magazynu za pośrednictwem połączonych usług.
- Konto zalogowanego użytkownika powinno mieć rolę Współautor danych obiektu blob usługi Storage, aby mieć pełny dostęp i uprawnienia.
- Aby nawiązać połączenie z magazynem, użyj połączonej usługi i uwierzytelniania jednostki usługi. Następnie aplikacja zarejestrowana w usłudze Azure Active powinna mieć przypisaną pozycję "Współautor danych obiektu blob usługi Storage" w usłudze Azure Storage.
W przypadku wdrożenia kontroli dostępu na podstawie ról (RBAC) w magazynie szczegółowe ustawienia są określane na poziomie kontenera. Aby uzyskać więcej informacji, zobacz Model kontroli dostępu w usłudze Azure Data Lake Storage Gen2.
Kontrola dostępu na podstawie ról na platformie Azure
Kontrola dostępu oparta na rolach platformy Azure używa przypisań ról do stosowania zestawów uprawnień do podmiotów zabezpieczeń, takich jak msi obszaru roboczego usługi Synapse, zalogowany użytkownik lub rejestracja aplikacji w identyfikatorze Entra firmy Microsoft. Role, takie jak Właściciel, Współautor, Czytelnik i Współautor konta magazynu, umożliwiają podmiotowi zabezpieczeń zarządzanie kontem magazynu.
Listy kontroli dostępu
Użyj list kontroli dostępu (ACL), aby zastosować szczegółowe poziomy dostępu do katalogów i plików.
- Jeśli dla podmiotu zabezpieczeń zostaną znalezione role dostępu do danych, takie jak Czytelnik danych obiektu blob usługi Storage lub Współautor danych obiektu blob usługi Storage, zostanie uruchomiona kontrola, aby sprawdzić, czy rola ma uprawnienia do wykonywania akcji, takich jak zapis, odczyt i usuwanie. Jeśli tak, podmiot zabezpieczeń może uzyskać dostęp do wszystkich plików i folderów na podstawie roli kontenera.
- Nie ma dodatkowych kontroli listy ACL dla plików lub folderów.
- Jeśli rola dostępu do danych nie zostanie znaleziona dla podmiotu zabezpieczeń na poziomie kontenera magazynu, kontrole listy ACL są uruchamiane w plikach i folderach.