Udostępnij za pośrednictwem


Schemat bazy danych stanów trwałych

W tym temacie opisano publiczne widoki obsługiwane przez magazyn wystąpień przepływu pracy SQL.

Widok wystąpień

Widok Wystąpienia zawiera ogólne informacje o wszystkich wystąpieniach przepływu pracy w bazie danych.

Nazwa kolumny Typ kolumny opis
InstanceId Uniqueidentifier Identyfikator wystąpienia przepływu pracy.
PendingTimer DateTime Wskazuje, że przepływ pracy jest zablokowany w działaniu Opóźnienie i zostanie wznowiony po wygaśnięciu czasomierza. Ta wartość może mieć wartość null, jeśli przepływ pracy nie zostanie zablokowany podczas oczekiwania na wygaśnięcie czasomierza.
CreationTime DateTime Wskazuje, kiedy przepływ pracy został utworzony.
LastUpdatedTime DateTime Wskazuje czas ostatniego utrwalonego przepływu pracy w bazie danych.
ServiceDeploymentId BigInt Działa jako klucz obcy w widoku [ServiceDeployments]. Jeśli bieżące wystąpienie przepływu pracy jest wystąpieniem usługi hostowanej w Internecie, ta kolumna ma wartość, w przeciwnym razie jest ustawiona wartość NULL.
SuspensionExceptionName Nvarchar(450) Wskazuje typ wyjątku (np. InvalidOperationException), który spowodował wstrzymanie przepływu pracy.
SuspensionReason Nvarchar(max) Wskazuje, dlaczego wystąpienie przepływu pracy zostało zawieszone. Jeśli wyjątek spowodował wstrzymanie wystąpienia, ta kolumna zawiera komunikat skojarzony z wyjątkiem.

Jeśli wystąpienie zostało ręcznie zawieszone, ta kolumna zawiera określoną przez użytkownika przyczynę zawieszenia wystąpienia.
ActiveBookmarks Nvarchar(max) Jeśli wystąpienie przepływu pracy jest bezczynne, ta właściwość wskazuje, na co zakładki wystąpienie jest zablokowane. Jeśli wystąpienie nie jest bezczynne, ta kolumna ma wartość NULL.
CurrentMachine Nvarchar(128) Wskazuje nazwę komputera, na który obecnie jest załadowane wystąpienie przepływu pracy w pamięci.
LastMachine Nvarchar(450) Wskazuje ostatni komputer, który załadował wystąpienie przepływu pracy.
Executionstatus Nvarchar(450) Wskazuje bieżący stan wykonywania przepływu pracy. Możliwe stany obejmują wykonywanie, bezczynność, zamknięcie.
Isinitialized Bitowych Wskazuje, czy wystąpienie przepływu pracy zostało zainicjowane. Zainicjowane wystąpienie przepływu pracy to wystąpienie przepływu pracy, które zostało utrwalone co najmniej raz.
IsSuspended Bitowych Wskazuje, czy wystąpienie przepływu pracy zostało zawieszone.
Iscompleted Bitowych Wskazuje, czy wystąpienie przepływu pracy zakończyło wykonywanie. Uwaga: jeśli właściwość InstanceCompletionAction jest ustawiona na DeleteAll, wystąpienia zostaną usunięte z widoku po zakończeniu.
KodowanieOption Tinyint Opisuje kodowanie używane do serializacji właściwości danych.

- 0 — brak kodowania
- 1 – GzipStream
ReadWritePrimitiveDataProperties Varbinary(max) Zawiera zserializowane właściwości danych wystąpienia, które zostaną dostarczone z powrotem do środowiska uruchomieniowego przepływu pracy po załadowaniu wystąpienia.

Każda właściwość pierwotna jest natywnym typem CLR, co oznacza, że do deserializacji obiektu blob nie są potrzebne żadne specjalne zestawy.
WriteOnlyPrimitiveDataProperties Varbinary(max) Zawiera właściwości danych wystąpienia serializowanego, które nie są dostarczane z powrotem do środowiska uruchomieniowego przepływu pracy po załadowaniu wystąpienia.

Każda właściwość pierwotna jest natywnym typem CLR, co oznacza, że do deserializacji obiektu blob nie są potrzebne żadne specjalne zestawy.
ReadWriteComplexDataProperties Varbinary(max) Zawiera właściwości danych wystąpienia serializowanego, które zostaną dostarczone z powrotem do środowiska uruchomieniowego przepływu pracy po załadowaniu wystąpienia.

Deserializator wymaga znajomości wszystkich typów obiektów przechowywanych w tym obiekcie blob.
WriteOnlyComplexDataProperties Varbinary(max) Zawiera właściwości danych wystąpienia serializowanego, które nie są dostarczane z powrotem do środowiska uruchomieniowego przepływu pracy po załadowaniu wystąpienia.

Deserializator wymaga znajomości wszystkich typów obiektów przechowywanych w tym obiekcie blob.
IdentityName Nvarchar(max) Nazwa definicji przepływu pracy.
IdentityPackage Nvarchar(max) Informacje o pakiecie podane podczas tworzenia przepływu pracy (na przykład nazwa zestawu).
Tworzenie BigInt Numer kompilacji wersji przepływu pracy.
Główna BigInt Główna liczba wersji przepływu pracy.
Mały BigInt Pomocnicza liczba wersji przepływu pracy.
Wersja BigInt Numer poprawki wersji przepływu pracy.

Uwaga

Widok Wystąpienia zawiera również wyzwalacz Usuwania. Użytkownicy z odpowiednimi uprawnieniami mogą wykonywać instrukcje usuwania względem tego widoku, które wymuszają usunięcie wystąpień przepływu pracy z bazy danych. Zalecamy usunięcie bezpośrednio z widoku tylko w ostateczności, ponieważ usunięcie wystąpienia z poziomu środowiska uruchomieniowego przepływu pracy może spowodować niezamierzone konsekwencje. Zamiast tego użyj punktu końcowego zarządzania wystąpieniami przepływu pracy, aby środowisko uruchomieniowe przepływu pracy zakończyło wystąpienie. Jeśli chcesz usunąć dużą liczbę wystąpień z widoku, upewnij się, że nie ma aktywnych środowisk uruchomieniowych, które mogą działać w tych wystąpieniach.

Widok serviceDeployments

Widok ServiceDeployments zawiera informacje o wdrożeniu dla wszystkich usług przepływu pracy hostowanych w sieci Web (IIS/WAS). Każde wystąpienie przepływu pracy hostowane w sieci Web będzie zawierać identyfikator ServiceDeploymentId odwołujący się do wiersza w tym widoku.

Nazwa kolumny Typ kolumny opis
ServiceDeploymentId BigInt Klucz podstawowy dla tego widoku.
Nazwa witryny Nvarchar(max) Reprezentuje nazwę witryny zawierającej usługę przepływu pracy (np. domyślną witrynę sieci Web).
RelativeServicePath Nvarchar(max) Reprezentuje ścieżkę wirtualną względem lokacji, która wskazuje usługę przepływu pracy. (np. /app1/PurchaseOrderService.svc).
RelativeApplicationPath Nvarchar(max) Reprezentuje ścieżkę wirtualną względem lokacji, która wskazuje aplikację zawierającą usługę przepływu pracy. (np. /app1).
ServiceName Nvarchar(max) Reprezentuje nazwę usługi przepływu pracy. (np. PurchaseOrderService).
ServiceNamespace Nvarchar(max) Reprezentuje przestrzeń nazw usługi przepływu pracy. (np. MyCompany).

Widok serviceDeployments zawiera również wyzwalacz Usuwania. Użytkownicy z odpowiednimi uprawnieniami mogą wykonywać instrukcje usuwania względem tego widoku, aby usunąć wpisy serviceDeployment z bazy danych. Należy pamiętać, że:

  1. Usunięcie wpisów z tego widoku jest kosztowne, ponieważ cała baza danych musi być zablokowana przed wykonaniem tej operacji. Jest to konieczne, aby uniknąć scenariusza, w którym wystąpienie przepływu pracy może odwoływać się do nieistniejącego wpisu ServiceDeployment. Usuń z tego widoku tylko w godzinach pracy/oknach obsługi.

  2. Każda próba usunięcia wiersza serviceDeployment, który jest przywoływany przez wpisy w widoku Wystąpienia , spowoduje brak operacji. Wiersze usługi ServiceDeployment można usuwać tylko z odwołaniami zerowymi.

Widok InstancePromotedProperties

Widok InstancePromotedPromotedProperties zawiera informacje dotyczące wszystkich promowanych właściwości określonych przez użytkownika. Promowana właściwość działa jako właściwość pierwszej klasy, której użytkownik może używać w zapytaniach do pobierania wystąpień. Na przykład użytkownik może dodać promocję PurchaseOrder, która zawsze przechowuje koszt zamówienia w kolumnie Value1 . Umożliwiłoby to użytkownikowi wykonywanie zapytań dotyczących wszystkich zamówień zakupu, których koszt przekracza określoną wartość.

Typ kolumny Typ kolumny opis
InstanceId Uniqueidentifier Identyfikator wystąpienia przepływu pracy
KodowanieOption Tinyint Opisuje kodowanie używane do serializacji promowanych właściwości binarnych.

- 0 — brak kodowania
- 1 – GZipStream
PromotionName Nvarchar(400) Nazwa promocji skojarzonej z tym wystąpieniem. Nazwa promocji jest wymagana do dodania kontekstu do kolumn ogólnych w tym wierszu.

Na przykład wartość PromotionName of PurchaseOrder może wskazywać, że wartość Value1 zawiera koszt zamówienia, wartość Value2 zawiera nazwę klienta, który złożył zamówienie, wartość 3 zawiera adres klienta itd.
Wartość[1–32] Sqlvariant Wartość[1–32] zawiera wartości, które można przechowywać w kolumnie SqlVariant. Pojedyncza promocja nie może zawierać więcej niż 32 sqlVariants.
Wartość[33–64] Varbinary(max) Wartość[33–64] zawiera serializowane wartości. Na przykład wartość Value33 może zawierać plik JPEG zakupionego elementu. Pojedyncza promocja nie może zawierać więcej niż 32 właściwości binarnych

Widok InstancePromotedPromotedProperties jest powiązany ze schematem, co oznacza, że użytkownicy mogą dodawać indeksy w co najmniej jednej kolumnie, aby zoptymalizować zapytania względem tego widoku.

Uwaga

Widok indeksowany wymaga większej ilości miejsca do magazynowania i dodaje dodatkowe obciążenie związane z przetwarzaniem. Aby uzyskać więcej informacji, zobacz Poprawianie wydajności za pomocą indeksowanych widoków programu SQL Server 2008.