Dela via


Scheman i Reporting Services

Reporting Services tillhandahåller delade scheman och rapportspecifika scheman som hjälper dig att styra bearbetningen och distributionen av rapporter. Skillnaden mellan de två typerna av scheman är hur de definieras, lagras och hanteras. Den interna konstruktionen av de två typerna av scheman är densamma. Alla scheman anger en typ av upprepning: varje månad, varje vecka eller varje dag. Inom återkommande typ anger du intervall och omfång för hur ofta en händelse inträffar. Typen av upprepningsmönster och hur dessa mönster anges är desamma oavsett om du skapar ett delat schema eller ett rapportspecifikt schema.

  • Delade scheman skapas som separata objekt. När de har skapats refererar du till dem när du definierar en prenumeration eller någon annan schemalagd åtgärd.

  • Rapportspecifika scheman skapas när du definierar en prenumeration eller anger rapportkörningsegenskaper. Att fylla i schemainformation är en del av att definiera en prenumeration eller ange egenskaper. Om du vill definiera ett rapportspecifikt schema öppnar du den rapport eller prenumeration som använder den.

Ett delat schema innehåller schema- och upprepningsinformation som valfritt antal publicerade rapporter och prenumerationer som körs på en Reporting Services-rapportserver kan använda. Om du har många rapporter och prenumerationer som körs samtidigt kan du skapa ett delat schema för dessa jobb. Om du vill ändra upprepningsmönstret eller slutdatumet kan du göra ändringen på ett och samma ställe.

Delade scheman är enklare att underhålla och ger dig större flexibilitet i hanteringen av schemalagda åtgärder. Du kan till exempel pausa och återuppta delade scheman. För många schemalagda operationer kan köras samtidigt. Om de körs samtidigt kan du skapa flera delade scheman som körs vid olika tidpunkter. Justera sedan schemainformationen tills bearbetningsbelastningen jämnas ut över rapportservern.

Vad du kan göra med scheman

Du kan använda Reporting Services-webbportalen och SQL Server Management Studio i internt läge och SharePoint-webbplatsadministrationssidor i SharePoint-läge för att skapa och hantera dina scheman. Du kan:

  • Schemalägg rapportleverans i en standard- eller datadriven prenumeration.

  • Schemalägg rapporthistoriken så att nya ögonblicksbilder läggs till i rapporthistoriken med jämna mellanrum.

  • Schemalägg när data för en rapportögonblicksbild ska uppdateras.

  • Schemalägg när data för en delad datauppsättning ska uppdateras

  • Schemalägg förfallodatumet för en cachelagrad rapport eller delad datauppsättning så att den sker vid en fördefinierad tidpunkt så att den kan uppdateras.

Du kan skapa ett delat schema om du vill använda samma schemainformation för många rapporter eller prenumerationer. Delade scheman definieras separat och refereras sedan till i rapporter, delade datauppsättningar och prenumerationer som behöver schemainformation.

När du skapar ett schema sparar rapporten schemainformationen i rapportserverdatabasen eller i SharePoint-läge, tjänstprogramdatabasen. Rapportservern skapar också ett SQL Server Agent-jobb som används för att utlösa schemat. Schemabearbetning baseras på den lokala tiden för rapportservern som innehåller schemat. Tidsformatet följer Microsoft Windows-operativsystemets standard.

Mer information om hur du skapar och hanterar scheman finns i Skapa, ändra och ta bort scheman.

Anmärkning

Schemaåtgärder är inte tillgängliga i varje utgåva av SQL Server. En lista över funktioner som stöds av versionerna av SQL Server finns i Utgåvor och funktioner som stöds i SQL Server 2022.

Jämföra delade och rapportspecifika scheman

Båda typerna av scheman ger samma utdata:

  • Delade scheman är portabla objekt med flera funktioner som innehåller schemainformation som är redo att användas. Eftersom delade scheman är objekt på systemnivå kräver skapandet av ett delat schema behörigheter på systemnivå. Därför skapar en rapportserveradministratör eller innehållshanterare vanligtvis de delade scheman som är tillgängliga på rapportservern. Delade scheman lagras och hanteras på rapportservern med hjälp av webbportalen eller SharePoint-webbplatsinställningarna.

    I motsats till specifika scheman som du definierar via rapport, delad datauppsättning eller prenumerationsegenskaper är delade scheman enklare att hantera och underhålla av följande skäl:

    • Delade scheman kan hanteras från en central plats. En central plats gör det enklare att jämföra schemaegenskaper och justera frekvens- och upprepningsmönster om schemalagda åtgärder körs för nära varandra eller i konflikt med andra processer på servern.

    • De gör att du snabbt kan anpassa dig till ändringar i databehandlingsmiljön. Anta till exempel att du har en uppsättning rapporter som körs kl. 04:00 efter att ett informationslager har uppdaterats. Om datauppdateringsåtgärden schemaläggs om eller fördröjs kan du enkelt anpassa den ändringen genom att uppdatera schemainformationen i ett enda delat schema.

    • Om du bara använder delade scheman vet du exakt när schemalagda åtgärder inträffar. Den här kunskapen gör det enklare att förutse och hantera serverbelastningar innan prestandaproblem uppstår. Om du till exempel bestämmer dig för att schemalägga datorsäkerhetskopior vid en viss timme kan du justera delade scheman så att de körs vid olika tidpunkter.

  • Rapportspecifika scheman definieras i kontexten för en enskild rapport-, prenumerations- eller rapportkörningsåtgärd för att fastställa cachens giltighetstid eller uppdateringar av ögonblicksbilder. Dessa scheman skapas direkt när du definierar en prenumeration eller anger egenskaper för rapportkörning. Du kan skapa ett rapportspecifikt schema om ett delat schema inte ger det frekvens- eller upprepningsmönster som du behöver. Om du vill förhindra att en rapport körs redigerar du ett rapportspecifikt schema manuellt. Enskilda användare kan skapa rapportspecifika scheman.

Konfigurera datakällorna

Innan du kan schemalägga data- eller prenumerationsbearbetning för en rapport konfigurerar du rapportdatakällan så att den använder lagrade autentiseringsuppgifter eller kontot för obevakad rapportbearbetning. Om du använder lagrade autentiseringsuppgifter kan du bara lagra en uppsättning autentiseringsuppgifter och de används av alla användare som kör rapporten. Autentiseringsuppgifterna kan vara ett Windows-användarkonto eller ett databasanvändarkonto.

Kontot för obevakad rapportbearbetning är ett specialkonto som konfigurerats på rapportservern. Rapportservern använder kontot för att ansluta till fjärrdatorer när en schemalagd åtgärd kräver hämtning av en extern fil eller bearbetning. Om du konfigurerar kontot kan du använda det för att ansluta till externa datakällor som tillhandahåller data till en rapport.

Om du vill ange lagrade autentiseringsuppgifter eller kontot för obevakad rapportbearbetning redigerar du rapportens egenskaper för datakällan. Om rapporten använder en delad datakälla redigerar du den delade datakällan i stället.

Lagra autentiseringsuppgifter och bearbetningskonton

Hur du arbetar med ett schema beror på uppgifter som ingår i din rolltilldelning. Om du använder fördefinierade roller kan användare som är innehållshanterare och systemadministratörer skapa och hantera valfritt schema. Om du använder anpassade rolltilldelningar måste rolltilldelningen innehålla uppgifter som stöder schemalagda åtgärder.

Om du vill Inkludera den här uppgiften Inbyggt läge fördefinierade roller SharePoint-lägesgrupper
Skapa, ändra eller ta bort delade scheman Hantera delade scheman Systemadministratör Ägare
Välj delade scheman Visa delade scheman Systemanvändare Members
Skapa, ändra eller ta bort rapportspecifika scheman i en användardefinierad prenumeration Hantera enskilda prenumerationer Webbläsare, Report Builder, Mina rapporter, Content Manager Besökare, medlemmar
Skapa, ändra eller ta bort rapportspecifika scheman för alla andra schemalagda åtgärder Hantera rapporthistorik, hantera alla prenumerationer, hantera rapporter Innehållshanteraren Ägare

Mer information om säkerhet i inbyggt läge Reporting Services finns i Rolldefinitioner – fördefinierade roller, Bevilja behörigheter på en rapportserver i inbyggt läge samt Uppgifter och behörigheter. Mer information om SharePoint-läge finns i Reporting Services roles-tasks vs. SharePoint groups-permissions

Så här fungerar schemaläggning och leveransbearbetning

Schemaläggnings- och leveransprocessorn har följande funktioner:

  • Underhåller en kö med händelser och meddelanden i rapportserverdatabasen. I en skalbar distribution delas kön mellan alla rapportservrar i distributionen.

  • Anropar rapportprocessorn för att köra rapporter, bearbeta prenumerationer eller rensa en cachelagrad rapport. All rapportbearbetning som sker till följd av en schemahändelse utförs som en bakgrundsprocess.

  • Anropar leveranstillägget som anges i en prenumeration så att rapporten kan levereras.

Andra komponenter och tjänster som fungerar med schemaläggnings- och leveransprocessorn hanterar aspekter av en schemaläggnings- och leveransåtgärd. Mer specifikt körs schemaläggnings- och leveransprocessorn i rapportservertjänsten och använder SQL Server Agent som en timer för att generera schemalagda händelser. Följande stegvisa beskrivning förklarar hur de schemalagda åtgärderna fungerar i en Reporting Services-distribution:

  1. En schemalagd åtgärd definieras när en användare skapar ett schema. Schemat definierar ett datum och en tid som används för att aktivera en prenumeration för leverans av rapporter, uppdatera en momentopptagning eller låta en cache gå ut.

  2. Rapportservern sparar schemainformationen i rapportserverdatabasen.

  3. Rapportservern skapar ett motsvarande jobb i SQL Server Agent som innehåller schemainformationen. Jobben skapas via en lagrad procedur och använder den befintliga öppna anslutningen till rapportserverdatabasen.

  4. SQL Server-agenten kör jobbet på det datum och den tid som anges i schemat. Jobbet skapar en händelse som läggs till i en kö som underhålls av Reporting Services.

  5. Händelsen orsakar att en rapport- eller prenumerationsprocess startas. Händelser bearbetas när de identifieras i kön och rapporten bearbetas eller levereras därefter.

    Innan händelserna bearbetas utför schemaläggnings- och leveransprocessorn ett autentiseringssteg för att kontrollera att prenumerationsägaren har behörighet att visa rapporten.

Reporting Services underhåller en händelsekö för alla schemalagda åtgärder. Den avsöker kön med jämna mellanrum för att söka efter nya händelser. Som standard genomsöks kön med 10 sekunders intervall. Du kan ändra intervallet genom att ändra konfigurationsinställningarna PollingInterval, IsNotificationService och IsEventService i RSReportServer.config-filen. SharePoint-läget använder också RSreporserver.config för de här inställningarna och värdena gäller för alla Reporting Services-tjänstprogram. Mer information finns i RsReportServer.config konfigurationsfil.

Serverberoenden

Schemaläggnings- och leveransprocessorn kräver att rapportservertjänsten och SQL Server-agenten startas. Funktionen för schema- och leveransbearbetning måste aktiveras via egenskapen ScheduleEventsAndReportDeliveryEnabled för Surface Area Configuration for Reporting Services aspekten i policybaserad hantering. Både SQL Server-agenten och rapportservertjänsten måste köras för att schemalagda åtgärder ska kunna utföras.

Anmärkning

Du kan använda funktionen Surface Area Configuration for Reporting Services för att stoppa schemalagda åtgärder tillfälligt eller permanent. Även om du kan skapa och distribuera anpassade leveranstillägg är schemaläggnings- och leveransprocessorn i sig inte utökningsbar. Du kan inte ändra hur den hanterar händelser och meddelanden. Mer information om hur du inaktiverar funktioner finns i Schemalagda händelser och leverans.

Stoppa SQL Server-agenten

Schemalagd rapportbearbetning använder SQL Server Agent som standard. Om du stoppar tjänsten läggs inga nya bearbetningsbegäranden till i kön om du inte lägger till dem programmatiskt via FireEvent metoden. När du startar om tjänsten återupptas jobben som skapar begäranden om rapportbearbetning. Rapportservern försöker inte återskapa rapportbearbetningsjobb som inträffat tidigare, medan SQL Server Agent var offline. Om du stoppar SQL Server-agenten i en vecka går alla schemalagda åtgärder förlorade för den veckan.

Anmärkning

Funktionerna som SQL Server Agent tillhandahåller till Reporting Services kan ersättas med anpassad kod som använder FireEvent metoden för att lägga till schemahändelser i kön.

Stoppa rapportservertjänsten

Om du stoppar rapportservertjänsten fortsätter SQL Server Agent att lägga till begäranden om rapportbearbetning i kön. Statusinformation från SQL Server Agent anger att jobbet lyckades. Men eftersom rapportservertjänsten har stoppats sker ingen rapportbearbetning. Begäranden fortsätter att ackumuleras i kön tills du startar om rapportservertjänsten. När du har startat om rapportservertjänsten bearbetas alla begäranden om rapportbearbetning i kön i ordning.