Azure Storage Files Data Lake ügyfélkódtár a .NET-hez – 12.13.1-es verzió
Kiszolgáló verziója: 2021-02-12, 2020-12-06, 2020-10-02, 2020-08-04, 2020-06-12, 2020-04-08, 2020-02-10, 2019-12-12, 2019-07-07 és 2019-02-02
Az Azure Data Lake minden olyan képességet tartalmaz, amely ahhoz szükséges, hogy a fejlesztők, az adattudósok és az elemzők könnyen tárolhassanak bármilyen méretű, formájú és sebességű adatokat, és mindenféle feldolgozást és elemzést végezzenek különböző platformokon és nyelveken. Eltávolítja az összes adat betöltésének és tárolásának bonyolultságait, miközben gyorsabbá teszi a kötegelt, streamelési és interaktív elemzések használatát.
Forráskód | Csomag (NuGet) | API-referenciadokumentáció | REST API-dokumentáció | Termékdokumentáció
Első lépések
A csomag telepítése
Telepítse a .NET-hez készült Azure Storage Files Data Lake ügyfélkódtárat a NuGet használatával:
dotnet add package Azure.Storage.Files.DataLake
Előfeltételek
A csomag használatához Azure-előfizetésre és tárfiókra van szükség.
Új tárfiók létrehozásához használhatja az Azure Portalt, a Azure PowerShell vagy az Azure CLI-t. Íme egy példa az Azure CLI használatával:
az storage account create --name MyStorageAccount --resource-group MyResourceGroup --location westus --sku Standard_LRS
Fő fogalmak
A DataLake Storage Gen2 a következőket tervezte:
- Több petabájtnyi információ kiszolgálása több száz gigabites átviteli sebesség fenntartása mellett
- Lehetővé teszi nagy mennyiségű adat egyszerű kezelését
A DataLake Storage Gen2 legfontosabb funkciói a következők:
- Hadoop-kompatibilis hozzáférés
- POSIX-engedélyek szuperhalmaza
- Költséghatékony az alacsony költségű tárolási kapacitás és a tranzakciók szempontjából
- Optimalizált illesztő big data-elemzéshez
A Data Lake Storage Gen2 alapvető része egy hierarchikus névtér hozzáadása a Blob Storage-hoz. A hierarchikus névtér a hatékony adathozzáférés érdekében könyvtárak hierarchiájába rendezi az objektumokat/fájlokat.
Korábban a felhőalapú elemzésnek a teljesítmény, a felügyelet és a biztonság területén is kompromisszumot kellett kötnie. Data Lake Storage Gen2 ezeket a szempontokat a következő módokon kezeli:
- A teljesítmény optimalizálva van, mert nem kell adatokat másolnia vagy átalakítania az elemzés előfeltételeként. A hierarchikus névtér jelentősen javítja a címtárkezelési műveletek teljesítményét, ami javítja a feladatok általános teljesítményét.
- A felügyelet egyszerűbb, mert könyvtárakon és alkönyvtárakon keresztül rendszerezheti és kezelheti a fájlokat.
- A biztonság kényszeríthető, mert POSIX-engedélyeket adhat meg könyvtárakhoz vagy egyedi fájlokhoz.
- A költséghatékonyság akkor érhető el, ha a Data Lake Storage Gen2 az alacsony költségű Azure Blob Storage-ra épül. A további funkciók tovább csökkentik a big data-elemzések Azure-beli futtatásának teljes bekerülési költségét.
Data Lake Storage Gen2 kétféle erőforrást kínál:
- A DataLakeFileSystemClienten keresztül használt fájlrendszer
- A DataLakeFileClient vagy a DataLakeDirectoryClient használatával használt elérési út
ADLS Gen2 | Blob |
---|---|
Fájlrendszer | Tároló |
Elérési út (fájl vagy könyvtár) | Blob |
Megjegyzés: Ez az ügyfélkódtár nem támogatja a hierarchikus névtér (HNS) letiltott tárfiókjait.
Menetbiztonság
Garantáljuk, hogy minden ügyfélpéldány-metódus szálbiztos és független egymástól (útmutató). Ez biztosítja, hogy az ügyfélpéldányok újrafelhasználására vonatkozó javaslat mindig biztonságos legyen, még a szálak között is.
További fogalmak
Ügyfélbeállítások | A válasz | elérése Hosszú ideig futó műveletek | Hibák | kezelése Diagnosztika | Gúnyos | Ügyfélélettartam
Példák
DataLakeServiceClient létrehozása
StorageSharedKeyCredential sharedKeyCredential = new StorageSharedKeyCredential(storageAccountName, storageAccountKey);
// Create DataLakeServiceClient using StorageSharedKeyCredentials
DataLakeServiceClient serviceClient = new DataLakeServiceClient(serviceUri, sharedKeyCredential);
DataLakeFileSystemClient létrehozása
StorageSharedKeyCredential sharedKeyCredential = new StorageSharedKeyCredential(storageAccountName, storageAccountKey);
// Create DataLakeServiceClient using StorageSharedKeyCredentials
DataLakeServiceClient serviceClient = new DataLakeServiceClient(serviceUri, sharedKeyCredential);
// Create a DataLake Filesystem
DataLakeFileSystemClient filesystem = serviceClient.GetFileSystemClient(Randomize("sample-filesystem"));
filesystem.Create();
DataLakeDirectoryClient létrehozása
StorageSharedKeyCredential sharedKeyCredential = new StorageSharedKeyCredential(storageAccountName, storageAccountKey);
// Create DataLakeServiceClient using StorageSharedKeyCredentials
DataLakeServiceClient serviceClient = new DataLakeServiceClient(serviceUri, sharedKeyCredential);
// Get a reference to a filesystem named "sample-filesystem-append" and then create it
DataLakeFileSystemClient filesystem = serviceClient.GetFileSystemClient(Randomize("sample-filesystem-append"));
filesystem.Create();
// Create
DataLakeDirectoryClient directory = filesystem.GetDirectoryClient(Randomize("sample-file"));
directory.Create();
DataLakeFileClient létrehozása
DataLakeFileClient létrehozása DataLakeDirectoryClientből
// Create a DataLake Directory
DataLakeDirectoryClient directory = filesystem.CreateDirectory(Randomize("sample-directory"));
directory.Create();
// Create a DataLake File using a DataLake Directory
DataLakeFileClient file = directory.GetFileClient(Randomize("sample-file"));
file.Create();
DataLakeFileClient létrehozása DataLakeFileSystemClientből
// Create a DataLake Filesystem
DataLakeFileSystemClient filesystem = serviceClient.GetFileSystemClient(Randomize("sample-filesystem"));
filesystem.Create();
// Create a DataLake file using a DataLake Filesystem
DataLakeFileClient file = filesystem.GetFileClient(Randomize("sample-file"));
file.Create();
Adatok hozzáfűzése DataLake-fájlhoz
// Create a file
DataLakeFileClient file = filesystem.GetFileClient(Randomize("sample-file"));
file.Create();
// Append data to the DataLake File
file.Append(File.OpenRead(sampleFilePath), 0);
file.Flush(SampleFileContent.Length);
Adatok beolvasása DataLake-fájlból
Response<FileDownloadInfo> fileContents = file.Read();
DataLake-fájlrendszer listázása/bejárása
foreach (PathItem pathItem in filesystem.GetPaths())
{
names.Add(pathItem.Name);
}
DataLake-fájl engedélyeinek beállítása
// Create a DataLake file so we can set the Access Controls on the files
DataLakeFileClient fileClient = filesystem.GetFileClient(Randomize("sample-file"));
fileClient.Create();
// Set the Permissions of the file
PathPermissions pathPermissions = PathPermissions.ParseSymbolicPermissions("rwxrwxrwx");
fileClient.SetPermissions(permissions: pathPermissions);
Hozzáférés-vezérlés (ACL-ek) beállítása DataLake-fájlon
// Create a DataLake file so we can set the Access Controls on the files
DataLakeFileClient fileClient = filesystem.GetFileClient(Randomize("sample-file"));
fileClient.Create();
// Set Access Control List
IList<PathAccessControlItem> accessControlList
= PathAccessControlExtensions.ParseAccessControlList("user::rwx,group::r--,mask::rwx,other::---");
fileClient.SetAccessControlList(accessControlList);
Hozzáférés-vezérlések (ACL-ek) lekérése DataLake-fájlon
// Get Access Control List
PathAccessControl accessControlResponse = fileClient.GetAccessControl();
DataLake-fájl átnevezése
DataLakeFileClient renamedFileClient = fileClient.Rename("sample-file2");
DataLake-címtár átnevezése
DataLakeDirectoryClient renamedDirectoryClient = directoryClient.Rename("sample-directory2");
Tulajdonságok lekérése DataLake-fájlon
// Get Properties on a File
PathProperties filePathProperties = fileClient.GetProperties();
Tulajdonságok lekérése DataLake-címtárban
// Get Properties on a Directory
PathProperties directoryPathProperties = directoryClient.GetProperties();
Hibaelhárítás
A File DataLake szolgáltatás összes művelete RequestFailedException kivételt küld a hasznos ErrorCode
s hiba esetén. Ezek közül a hibák közül sok helyreállítható.
Következő lépések
Ismerkedés a DataLake-mintákkal:
- "Helló világ!" alkalmazás: DataLake-fájlok hozzáfűzése, olvasása és listázása (vagy aszinkron módon)
- Hitelesítés: Hitelesítés nyilvános hozzáféréssel, megosztott kulcsokkal, közös hozzáférésű jogosultságkódokkal és az Azure Active Directoryval.
Közreműködés
A tár felépítéséről, teszteléséről és közreműködéséről további információt a Storage CONTRIBUTING.md talál.
A projektben szívesen fogadjuk a hozzájárulásokat és a javaslatokat. A legtöbb hozzájáruláshoz el kell fogadnia egy Közreműködői licencszerződést (CLA-t), amelyben kijelenti, hogy jogosult arra, hogy ránk ruházza hozzájárulása felhasználási jogát, és ezt ténylegesen meg is teszi. Részletekért látogasson el cla.microsoft.com.
A projekt a Microsoft nyílt forráskódú projekteket szabályozó etikai kódexe, a Microsoft Open Source Code of Conduct hatálya alá esik. További információkért lásd a viselkedési szabályzattal kapcsolatos gyakori kérdéseket , vagy vegye fel a kapcsolatot opencode@microsoft.com az esetleges további kérdésekkel vagy megjegyzésekkel.