Köra U-SQL-skript på din lokala dator

Viktigt

Azure Data Lake Analytics drog sig tillbaka den 29 februari 2024. Läs mer med det här meddelandet.

För dataanalys kan din organisation använda Azure Synapse Analytics eller Microsoft Fabric.

När du utvecklar U-SQL-skript kan du spara tid och kostnader genom att köra skripten lokalt. Azure Data Lake Tools för Visual Studio stöder körning av U-SQL-skript på din lokala dator.

Grundläggande begrepp för lokala körningar

Följande diagram visar komponenterna för lokal körning och hur dessa komponenter mappas till molnkörning.

Komponent Lokal körning Molnkörning
Storage Rotmapp för lokala data Standardkonto för Azure Data Lake Store
Compute Lokal U-SQL-körningsmotor Azure Data Lake Analytics-tjänst
Kör miljö Arbetskatalog på lokal dator Azure Data Lake Analytics-kluster

Följande avsnitt innehåller mer information om lokala körningskomponenter.

Rotmappar för lokala data

En lokal datarotmapp är ett lokalt arkiv för det lokala beräkningskontot. Alla mappar i det lokala filsystemet på den lokala datorn kan vara en lokal datarotmapp. Det är samma som standardkontot för Azure Data Lake Store för ett Data Lake Analytics konto. Att växla till en annan datarotmapp är precis som att växla till ett annat standardlagringskonto.

Datarotmappen används på följande sätt:

  • Lagra metadata. Exempel är databaser, tabeller, tabellvärdesfunktioner och sammansättningar.
  • Leta upp sökvägarna för indata och utdata som definieras som relativa sökvägar i U-SQL-skript. Med hjälp av relativa sökvägar är det enklare att distribuera dina U-SQL-skript till Azure.

Lokala U-SQL-körningsmotorer

En lokal U-SQL-körningsmotor är ett lokalt beräkningskonto för U-SQL-jobb. Användare kan köra U-SQL-jobb lokalt via Azure Data Lake Tools för Visual Studio. Lokala körningar stöds också via Azure Data Lake U-SQL SDK-kommandorads- och programmeringsgränssnitt. Läs mer om Azure Data Lake U-SQL SDK.

Arbetskataloger

När du kör ett U-SQL-skript behövs en arbetskatalogmapp för att cachelagra kompileringsresultat, köra loggar och utföra andra funktioner. I Azure Data Lake Tools för Visual Studio är arbetskatalogen U-SQL-projektets arbetskatalog. Den finns under <U-SQL project root path>/bin/debug>. Arbetskatalogen rensas varje gång en ny körning utlöses.

Lokala körningar i Microsoft Visual Studio

Azure Data Lake Tools för Visual Studio har en inbyggd lokal körningsmotor. Verktygen ytbehandlar motorn som ett lokalt beräkningskonto. Om du vill köra ett U-SQL-skript lokalt väljer du kontot Lokal dator eller Lokalt projekt i skriptets nedrullningsbara meny för redigeringsmarginal. Välj sedan Skicka.

Skicka ett U-SQL-skript till ett lokalt konto

Lokala körningar med ett lokalt datorkonto

Ett lokalt datorkonto är ett delat lokalt beräkningskonto med en enda lokal datarotmapp som det lokala lagringskontot. Som standard finns datarotmappen på C:\Users<username>\AppData\Local\USQLDataRoot. Det kan också konfigureras via Verktyg>Data Lake-alternativ>och inställningar.

Konfigurera en lokal datarotmapp

Ett U-SQL-projekt krävs för en lokal körning. U-SQL-projektets arbetskatalog används för arbetskatalogen för lokal U-SQL-körning. Kompileringsresultat, körningsloggar och andra jobbkörningsrelaterade filer genereras och lagras under arbetskatalogmappen under den lokala körningen. Varje gång du kör skriptet igen rensas och återskapas alla filer i arbetskatalogen.

Lokala körningar med ett lokalt projektkonto

Ett lokalt projektkonto är ett projektisolerad lokal beräkningskonto för varje projekt med en isolerad rotmapp för lokala data. Varje aktivt U-SQL-projekt som öppnas i Solution Explorer i Visual Studio har ett motsvarande (Local-project: <project name>) konto. Kontona visas i både Server Explorer i Visual Studio och U-SQL-skriptredigerarens marginal.

Kontot Lokalt projekt ger en ren och isolerad utvecklingsmiljö. Ett lokalt datorkonto har en delad rotmapp för lokala data som lagrar metadata och indata och utdata för alla lokala jobb. Men ett lokalt projektkonto skapar en tillfällig lokal datarotmapp under en U-SQL-projektarbetskatalog varje gång ett U-SQL-skript körs. Den här temporära datarotmappen rensas när en återskapande eller omkörning sker.

Ett U-SQL-projekt hanterar den isolerade lokala körningsmiljön via en projektreferens och -egenskap. Du kan konfigurera indatakällorna för U-SQL-skript i både projektet och de refererade databasmiljöerna.

Hantera indatakällan för ett lokalt projektkonto

Ett U-SQL-projekt skapar en lokal datarotmapp och konfigurerar data för ett lokalt projektkonto . En tillfällig datarotmapp rensas och återskapas under U-SQL-projektets arbetskatalog varje gång en återskapande och lokal körning sker. Alla datakällor som konfigureras av U-SQL-projektet kopieras till den här tillfälliga rotmappen för lokala data innan det lokala jobbet körs.

Du kan konfigurera rotmappen för dina datakällor. Högerklicka på U-SQL-projektets>egenskap>Testa datakälla. När du kör ett U-SQL-skript på ett lokalt projektkonto kopieras alla filer och undermappar i mappen Test Data Source till den tillfälliga lokala datarotmappen. Filer under undermappar ingår. När ett lokalt jobb har körts kan utdataresultat också hittas under den tillfälliga lokala datarotmappen i projektarbetskatalogen. Alla dessa utdata tas bort och rensas när projektet återskapas och rensas.

Konfigurera ett projekts testdatakälla

Hantera en refererad databasmiljö för ett lokalt projektkonto

Om en U-SQL-fråga använder eller frågor med U-SQL-databasobjekt måste du göra databasmiljöerna redo lokalt innan du kör U-SQL-skriptet lokalt. För ett lokalt projektkonto kan U-SQL-databasberoenden hanteras av U-SQL-projektreferenser. Du kan lägga till U-SQL-databasprojektreferenser till ditt U-SQL-projekt. Innan du kör U-SQL-skript på ett lokalt projektkonto distribueras alla refererade databaser till den tillfälliga rotmappen för lokala data. Och för varje körning rensas den tillfälliga datarotmappen som en ny isolerad miljö.

Se den här relaterade artikeln:

Skillnaden mellan lokala datorkonton och lokala projektkonton

Ett lokalt datorkonto simulerar ett Azure-Data Lake Analytics-konto på användarnas lokala datorer. Den delar samma upplevelse med ett Azure Data Lake Analytics-konto. Ett lokalt projektkonto ger en användarvänlig lokal utvecklingsmiljö. Den här miljön hjälper användare att distribuera databasreferenser och indata innan de kör skript lokalt. Ett lokalt datorkonto tillhandahåller en delad permanent miljö som kan nås via alla projekt. Ett lokalt projektkonto tillhandahåller en isolerad utvecklingsmiljö för varje projekt. Den uppdateras för varje körning. Ett lokalt projektkonto ger en snabbare utvecklingsupplevelse genom att snabbt tillämpa nya ändringar.

Fler skillnader mellan lokala ochlokala projektkonton visas i följande tabell:

Skillnadsvinkel Lokal dator Lokalt projekt
Lokal åtkomst Kan nås av alla projekt. Endast motsvarande projekt kan komma åt det här kontot.
Rotmapp för lokala data En permanent lokal mapp. Konfigureras via Verktyg>Data Lake-alternativ>och inställningar. En tillfällig mapp som skapats för varje lokal körning under arbetskatalogen för U-SQL-projektet. Mappen rensas när en återskapande eller omkörning sker.
Indata för ett U-SQL-skript Den relativa sökvägen under den permanenta lokala datarotmappen. Ange via U-SQL-projektegenskapen>Testa datakälla. Alla filer och undermappar kopieras till den tillfälliga datarotmappen före en lokal körning.
Utdata för ett U-SQL-skript Relativ sökväg under den permanenta lokala datarotmappen. Utdata till den tillfälliga datarotmappen. Resultatet rensas när en återskapande eller omkörning sker.
Refererad databasdistribution Refererade databaser distribueras inte automatiskt när de körs mot ett lokalt datorkonto . Det är samma sak när du skickar till ett Azure Data Lake Analytics-konto. Refererade databaser distribueras automatiskt till det lokala projektkontot före en lokal körning. Alla databasmiljöer rensas och distribueras om när en återskapande eller omkörning sker.

En lokal körning med U-SQL SDK

Du kan köra U-SQL-skript lokalt i Visual Studio och även använda Azure Data Lake U-SQL SDK för att köra U-SQL-skript lokalt med kommandorads- och programmeringsgränssnitt. Med dessa gränssnitt kan du automatisera lokala U-SQL-körningar och tester.

Läs mer om Azure Data Lake U-SQL SDK.

Nästa steg