Operace systému souborů na Data Lake Storage Gen1 pomocí sady .NET SDK
V tomto článku se dozvíte, jak provádět operace systému souborů na Data Lake Storage Gen1 pomocí sady .NET SDK. Mezi operace systému souborů patří vytváření složek v účtu Data Lake Storage Gen1, nahrávání souborů, stahování souborů atd.
Pokyny k provádění operací správy účtů na Data Lake Storage Gen1 pomocí sady .NET SDK najdete v tématu Operace správy účtů na Data Lake Storage Gen1 pomocí sady .NET SDK.
Požadavky
Visual Studio 2013 nebo vyšší. Pokyny v tomto článku používají Visual Studio 2019.
Předplatné Azure. Viz Získání bezplatné zkušební verze Azure.
Azure Data Lake Storage účet Gen1. Pokyny k vytvoření účtu najdete v tématu Začínáme s Azure Data Lake Storage Gen1.
Vytvoření aplikace .NET
Ukázka kódu, která je k dispozici na GitHubu, vás provede procesem vytvoření souborů v úložišti, zřetězení souborů, stažení souboru a nakonec odstranění některých souborů v úložišti. Tato část článku vás provede hlavními částmi kódu.
V sadě Visual Studio vyberte nabídku File (Soubor ), New (Nový) a pak Project ( Projekt).
Zvolte Konzolová aplikace (.NET Framework) a pak vyberte Další.
Do pole Název projektu zadejte
CreateADLApplication
a pak vyberte Vytvořit.Přidejte do projektu balíčky NuGet.
V Průzkumníku řešení klikněte pravým tlačítkem na název projektu a klikněte na možnost Správa balíčků NuGet.
Na kartě Správce balíčků NuGet se ujistěte, že je zdroj balíčku nastavený na nuget.org. Ujistěte se také, že je zaškrtnuté políčko Zahrnout předběžnou verzi .
Vyhledejte a nainstalujte následující balíčky NuGet:
-
Microsoft.Azure.DataLake.Store
– Tento článek používá verzi v1.0.0. -
Microsoft.Rest.ClientRuntime.Azure.Authentication
– Tento článek používá verzi v2.3.1.
Zavřete Správce balíčků NuGet.
-
Otevřete soubor Program.cs, odstraňte stávající kód a potom vložte následující příkazy, čímž přidáte odkazy na obory názvů.
using System; using System.IO;using System.Threading; using System.Linq; using System.Text; using System.Collections.Generic; using System.Security.Cryptography.X509Certificates; // Required only if you're using an Azure AD application created with certificates using Microsoft.Rest; using Microsoft.Rest.Azure.Authentication; using Microsoft.Azure.DataLake.Store; using Microsoft.IdentityModel.Clients.ActiveDirectory;
Deklarujte proměnné, jak je znázorněno níže, a nahraďte zástupné symboly příslušnými hodnotami. Také se ujistěte, že na počítači existuje místní cesta a název souboru, které tady zadáte.
namespace SdkSample { class Program { private static string _adlsg1AccountName = "<DATA-LAKE-STORAGE-GEN1-NAME>.azuredatalakestore.net"; } }
Ve zbývajících částech článku se dozvíte, jak používat dostupné metody .NET k provádění operací, jako je ověřování, nahrávání souborů atd.
Authentication
- Informace o ověřování koncových uživatelů pro vaši aplikaci najdete v tématu Ověřování koncových uživatelů pomocí Data Lake Storage Gen1 pomocí sady .NET SDK.
- Informace o ověřování mezi službami pro vaši aplikaci najdete v tématu Ověřování mezi službami s Data Lake Storage Gen1 pomocí sady .NET SDK.
Vytvoření objektu klienta
Následující fragment kódu vytvoří Data Lake Storage Gen1 objekt klienta systému souborů, který se používá k vydávání požadavků na službu.
// Create client objects
AdlsClient client = AdlsClient.CreateClient(_adlsg1AccountName, adlCreds);
Vytvoření souboru a adresáře
Přidejte do své aplikace následující fragment kódu. Tento fragment kódu přidá soubor a jakýkoli nadřazený adresář, který neexistuje.
// Create a file - automatically creates any parent directories that don't exist
// The AdlsOutputStream preserves record boundaries - it does not break records while writing to the store
using (var stream = client.CreateFile(fileName, IfExists.Overwrite))
{
byte[] textByteArray = Encoding.UTF8.GetBytes("This is test data to write.\r\n");
stream.Write(textByteArray, 0, textByteArray.Length);
textByteArray = Encoding.UTF8.GetBytes("This is the second line.\r\n");
stream.Write(textByteArray, 0, textByteArray.Length);
}
Připojení k souboru
Následující fragment kódu připojí data k existujícímu souboru v účtu Data Lake Storage Gen1.
// Append to existing file
using (var stream = client.GetAppendStream(fileName))
{
byte[] textByteArray = Encoding.UTF8.GetBytes("This is the added line.\r\n");
stream.Write(textByteArray, 0, textByteArray.Length);
}
Čtení souboru
Následující fragment kódu přečte obsah souboru v Data Lake Storage Gen1.
//Read file contents
using (var readStream = new StreamReader(client.GetReadStream(fileName)))
{
string line;
while ((line = readStream.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
Získání vlastností souboru
Následující fragment kódu vrátí vlastnosti přidružené k souboru nebo adresáři.
// Get file properties
var directoryEntry = client.GetDirectoryEntry(fileName);
PrintDirectoryEntry(directoryEntry);
Definice PrintDirectoryEntry
metody je k dispozici jako součást ukázky na GitHubu.
Přejmenování souboru
Následující fragment kódu přejmenuje existující soubor v účtu Data Lake Storage Gen1.
// Rename a file
string destFilePath = "/Test/testRenameDest3.txt";
client.Rename(fileName, destFilePath, true);
Výpis obsahu adresáře
Následující fragment kódu obsahuje výčet adresářů v účtu Data Lake Storage Gen1.
// Enumerate directory
foreach (var entry in client.EnumerateDirectory("/Test"))
{
PrintDirectoryEntry(entry);
}
Definice PrintDirectoryEntry
metody je k dispozici jako součást ukázky na GitHubu.
Rekurzivní odstranění adresářů
Následující fragment kódu rekurzivně odstraní adresář a všechny jeho podadresáře.
// Delete a directory and all its subdirectories and files
client.DeleteRecursive("/Test");
Ukázky
Tady je několik ukázek, které ukazují, jak používat sadu SDK systému souborů Data Lake Storage Gen1.
Viz také
- Operace správy účtů na Data Lake Storage Gen1 pomocí sady .NET SDK
- referenční informace k sadě .NET SDK Data Lake Storage Gen1