T-SQL kullanarak elastik işler oluşturma ve yönetme
Şunlar için geçerlidir: Azure SQL Veritabanı
Bu makalede, T-SQL kullanarak elastik işlerle çalışmaya başlamaya yönelik bir öğretici ve örnekler sağlanır. Elastik işler, bir veya daha fazla Transact-SQL (T-SQL) betiğinin birden fazla veritabanında paralel olarak çalıştırılmasını sağlar.
Bu makaledeki örneklerde iş veritabanında bulunan saklı yordamlar ve görünümler kullanılır.
Bu uçtan uca öğreticide, birden çok veritabanında sorgu çalıştırmak için gereken adımları öğreneceksiniz:
- Elastik iş aracısı oluşturma
- İşlerin hedeflerinde betik yürütebilmesi için iş kimlik bilgileri oluşturma
- İşi çalıştırmak istediğiniz hedefleri (sunucular, elastik havuzlar, veritabanları) tanımlayın
- Aracının işleri bağlaması ve yürütmesi için hedef veritabanlarında veritabanı kapsamlı kimlik bilgileri oluşturma
- İş oluşturma
- Bir işe iş adımları ekleme
- Bir işin yürütülmesini başlatma
- Bir işi izleme
Elastik iş aracısı oluşturma
Transact-SQL (T-SQL), işleri oluşturmak, yapılandırmak, yürütmek ve yönetmek için kullanılabilir.
Elastik iş aracısı oluşturma işlemi T-SQL'de desteklenmez, bu nedenle önce Azure portalını kullanarak bir elastik iş aracısı oluşturmanız veya PowerShell kullanarak elastik iş aracısı oluşturmanız gerekir.
İş kimlik doğrulamasını oluşturma
Elastik iş aracısı her hedef sunucuda veya veritabanında kimlik doğrulaması yapabilmelidir. İş aracısı kimlik doğrulaması oluşturma bölümünde açıklandığı gibi, önerilen yaklaşım Microsoft Entra kimlik doğrulamasını (eski adıYla Azure Active Directory) kullanıcı tarafından atanan yönetilen kimlikle (UMI) kullanmaktır. Daha önce tek seçenek veritabanı kapsamlı kimlik bilgileriydi .
İş yürütme için UMI ile Microsoft Entra kimlik doğrulamasını kullanma
Kullanıcı tarafından atanan yönetilen kimlikte (UMI) önerilen Microsoft Entra (eski adıYla Azure Active Directory) kimlik doğrulaması yöntemini kullanmak için aşağıdaki adımları izleyin. Elastik iş aracısı, Microsoft Entra kimlik doğrulaması aracılığıyla istenen hedef mantıksal sunuculara/veritabanlarına bağlanır.
Oturum açma bilgilerine ve veritabanı kullanıcılarına ek olarak, aşağıdaki betikteki komutların eklenmesine GRANT
de dikkat edin. Bu izinler, bu örnek işte seçtiğimiz betik için geçerlidir. İşleriniz farklı izinler gerektirebilir. Örnek hedeflenen veritabanlarında yeni bir tablo oluşturduğundan, her hedef veritabanındaki veritabanı kullanıcısının başarıyla çalışması için uygun izinlere sahip olması gerekir.
Hedef sunucuların/veritabanlarının her birinde, UMI ile eşlenmiş bir kapsanan kullanıcı oluşturun.
- Elastik işin mantıksal sunucusu veya havuz hedefleri varsa, hedef mantıksal sunucunun veritabanında UMI'ye
master
eşlenen kapsanan kullanıcıyı oluşturmanız gerekir. - Örneğin, adlı kullanıcı tarafından atanan yönetilen kimliği (UMI)
job-agent-UMI
temel alarak veritabanında kapsanan bir veritabanı oturum açma bilgilerimaster
ve kullanıcı veritabanında bir kullanıcı oluşturmak için:
--Create a login on the master database mapped to a user-assigned managed identity (UMI)
CREATE LOGIN [job-agent-UMI] FROM EXTERNAL PROVIDER;
--Create a user on a user database mapped to a login.
CREATE USER [job-agent-UMI] FROM LOGIN [job-agent-UMI];
-- Grant permissions as necessary to execute your jobs. For example, ALTER and CREATE TABLE:
GRANT ALTER ON SCHEMA::dbo TO jobuser;
GRANT CREATE TABLE TO jobuser;
- Mantıksal sunucuda oturum açma gerekli değilse, bağımsız veritabanı kullanıcısı oluşturmak için:
--Create a contained database user on a user database mapped to a user-assigned managed identity (UMI)
CREATE USER [job-agent-UMI] FROM EXTERNAL PROVIDER;
-- Grant permissions as necessary to execute your jobs. For example, ALTER and CREATE TABLE:
GRANT ALTER ON SCHEMA::dbo TO jobuser;
GRANT CREATE TABLE TO jobuser;
İş yürütme için veritabanı kapsamlı bir kimlik bilgisi kullanma
Veritabanı kapsamlı kimlik bilgileri, betik yürütme için hedef veritabanlarınıza bağlanmak için kullanılır. Kimlik bilgilerinin betiği başarıyla yürütmek için hedef grup tarafından belirtilen veritabanlarında uygun izinlere sahip olması gerekir. Mantıksal SQL sunucusu ve/veya havuz hedef grubu üyesi kullanılırken, iş yürütülme sırasında sunucunun ve/veya havuzun genişletilmesinden önce kimlik bilgilerini yenilemek için kullanılacak bir kimlik bilgisi oluşturmanız önerilir. Veritabanı kapsamlı kimlik bilgileri iş aracısı veritabanında oluşturulur.
Tüm hedef veritabanlarında Oturum Açma Veritabanı İzinleri vermek için Oturum Açma Oluşturma ve Oturum Açmadan Kullanıcı Oluşturma için aynı kimlik bilgileri kullanılmalıdır.
--Connect to the new job database specified when creating the elastic job agent
-- Create a database master key if one does not already exist, using your own password.
CREATE MASTER KEY ENCRYPTION BY PASSWORD='<EnterStrongPasswordHere>';
-- Create two database-scoped credentials.
-- The credential to connect to the Azure SQL logical server, to execute jobs
CREATE DATABASE SCOPED CREDENTIAL job_credential WITH IDENTITY = 'job_credential',
SECRET = '<EnterStrongPasswordHere>';
GO
-- The credential to connect to the Azure SQL logical server, to refresh the database metadata in server
CREATE DATABASE SCOPED CREDENTIAL refresh_credential WITH IDENTITY = 'refresh_credential',
SECRET = '<EnterStrongPasswordHere>';
GO
Ardından, hedef sunucularda oturum açma bilgileri veya hedef veritabanlarında kapsanan veritabanı kullanıcıları oluşturun.
Önemli
Her hedef sunucu/veritabanındaki oturum açma/kullanıcı, iş kullanıcısı için veritabanı kapsamlı kimlik bilgilerinin kimliğiyle aynı ada ve iş kullanıcısının veritabanı kapsamlı kimlik bilgileriyle aynı parolaya sahip olmalıdır.
Mantıksal SQL sunucusunun veritabanında ve her kullanıcı veritabanındaki kullanıcılarda oturum açma bilgileri master
oluşturun.
--Create a login on the master database
CREATE LOGIN job_credential WITH PASSWORD='<Enter_same_StrongPassword_as_database_scoped_credential>';
--Create a user on a user database mapped to a login.
CREATE USER [job_credential] FROM LOGIN [job_credential];
-- Grant permissions as necessary to execute your jobs. For example, ALTER and CREATE TABLE:
GRANT ALTER ON SCHEMA::dbo TO job_credential;
GRANT CREATE TABLE TO job_credential;
Mantıksal sunucuda oturum açma gerekli değilse, bağımsız bir veritabanı kullanıcısı oluşturun. Genellikle bunu yalnızca bu elastik iş aracısı ile yönetecek tek bir veritabanınız varsa yaparsınız.
--Create a contained database user on a user database mapped to a Microsoft Entra account
CREATE USER [job_credential] WITH PASSWORD='<Enter_same_StrongPassword_as_database_scoped_credential>';
-- Grant permissions as necessary to execute your jobs. For example, ALTER and CREATE TABLE:
GRANT ALTER ON SCHEMA::dbo TO job_credential;
GRANT CREATE TABLE TO job_credential;
Hedef sunucuları ve veritabanlarını tanımlama
Aşağıdaki örnekte, bir sunucudaki tüm veritabanlarında bir işin nasıl yürütülecekleri gösterilmektedir.
job_database
hedef grubu ve hedef üyeyi eklemek için'e bağlanın ve aşağıdaki komutu çalıştırın:
-- Connect to the job database specified when creating the job agent
-- Add a target group containing server(s)
EXEC jobs.sp_add_target_group 'ServerGroup1';
-- Add a server target member
EXEC jobs.sp_add_target_group_member
@target_group_name = 'ServerGroup1',
@target_type = 'SqlServer',
@server_name = 'server1.database.windows.net';
--View the recently created target group and target group members
SELECT * FROM jobs.target_groups WHERE target_group_name='ServerGroup1';
SELECT * FROM jobs.target_group_members WHERE target_group_name='ServerGroup1';
Tek bir veritabanını dışlama
Aşağıdaki örnekte, adlı MappingDB
veritabanı dışında bir işin bir sunucudaki tüm veritabanlarında nasıl yürütülecekleri gösterilmektedir.
Microsoft Entra kimlik doğrulamasını (eski adıyla Azure Active Directory) kullanırken, yalnızca veritabanı kapsamlı kimlik bilgileri kullanılırken sağlanması gereken parametresini atla @refresh_credential_name
. Aşağıdaki örneklerde parametresi açıklama @refresh_credential_name
satırı yapılır.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
-- Add a target group containing server(s)
EXEC [jobs].sp_add_target_group N'ServerGroup';
GO
-- Add a server target member
EXEC [jobs].sp_add_target_group_member
@target_group_name = N'ServerGroup',
@target_type = N'SqlServer',
--@refresh_credential_name = N'refresh_credential', --credential required to refresh the databases in a server
@server_name = N'London.database.windows.net';
GO
-- Add a server target member
EXEC [jobs].sp_add_target_group_member
@target_group_name = N'ServerGroup',
@target_type = N'SqlServer',
--@refresh_credential_name = N'refresh_credential', --credential required to refresh the databases in a server
@server_name = 'server2.database.windows.net';
GO
--Exclude a database target member from the server target group
EXEC [jobs].sp_add_target_group_member
@target_group_name = N'ServerGroup',
@membership_type = N'Exclude',
@target_type = N'SqlDatabase',
@server_name = N'server1.database.windows.net',
@database_name = N'MappingDB';
GO
--View the recently created target group and target group members
SELECT * FROM [jobs].target_groups WHERE target_group_name = N'ServerGroup';
SELECT * FROM [jobs].target_group_members WHERE target_group_name = N'ServerGroup';
Hedef grup oluşturma (havuzlar)
Aşağıdaki örnekte, bir veya daha fazla elastik havuzdaki tüm veritabanlarını hedefleme gösterilmektedir.
Microsoft Entra kimlik doğrulamasını (eski adıyla Azure Active Directory) kullanırken, yalnızca veritabanı kapsamlı kimlik bilgileri kullanılırken sağlanması gereken parametresini atla @refresh_credential_name
. Aşağıdaki örneklerde parametresi açıklama @refresh_credential_name
satırı yapılır.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
-- Add a target group containing pool(s)
EXEC jobs.sp_add_target_group 'PoolGroup';
-- Add an elastic pool(s) target member
EXEC jobs.sp_add_target_group_member
@target_group_name = 'PoolGroup',
@target_type = 'SqlElasticPool',
--@refresh_credential_name = 'refresh_credential', --credential required to refresh the databases in a server
@server_name = 'server1.database.windows.net',
@elastic_pool_name = 'ElasticPool-1';
-- View the recently created target group and target group members
SELECT * FROM jobs.target_groups WHERE target_group_name = N'PoolGroup';
SELECT * FROM jobs.target_group_members WHERE target_group_name = N'PoolGroup';
İş ve adımlar oluşturma
T-SQL ile iş veritabanında sistem saklı yordamlarını kullanarak işler oluşturun: jobs.sp_add_job ve jobs.sp_add_jobstep. T-SQL komutları söz dizimi, SQL Server'da SQL Aracısı işleri ve iş adımları oluşturmak için gereken adımlara benzer.
İş veritabanında iç katalog görünümlerini güncelleştirmemelisiniz. Bu katalog görünümlerini el ile değiştirmek iş veritabanını bozabilir ve hataya neden olabilir. Bu görünümler yalnızca salt okunur sorgulama içindir. İş veritabanınızdaki şemada jobs
saklı yordamları kullanabilirsiniz.
- Hedef sunucularda/veritabanlarında kimlik doğrulaması yapmak üzere Bir Microsoft Entra Kimliği veya kullanıcı tarafından atanan yönetilen kimlik için Microsoft Entra kimlik doğrulaması kullanılırken, veya için
sp_add_jobstep
sp_update_jobstep
@credential_name bağımsız değişkeni sağlanmamış olmalıdır. Benzer şekilde, isteğe bağlı @output_credential_name ve @refresh_credential_name bağımsız değişkenlerini atlar. - Hedef sunucularda/veritabanlarında kimlik doğrulaması yapmak için veritabanı kapsamlı kimlik bilgileri kullanılırken ve
sp_update_jobstep
içinsp_add_jobstep
@credential_name parametresi gerekir.- Örneğin,
@credential_name = 'job_credential'
.
- Örneğin,
Aşağıdaki örnekler, elastik işlerle ortak görevleri gerçekleştirmek için T-SQL kullanarak iş ve iş adımları oluşturmaya yönelik kılavuzlar sağlar.
Örnekler
Birçok veritabanına yeni şema dağıtma
Aşağıdaki örnekte yeni şemanın tüm veritabanlarına nasıl dağıtılacağı gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
--Add job for create table
EXEC jobs.sp_add_job @job_name = 'CreateTableTest', @description = 'Create Table Test';
-- Add job step for create table
EXEC jobs.sp_add_jobstep @job_name = 'CreateTableTest',
@command = N'IF NOT EXISTS (SELECT * FROM sys.tables WHERE object_id = object_id(''Test''))
CREATE TABLE [dbo].[Test]([TestId] [int] NOT NULL);',
@target_group_name = 'PoolGroup';
Yerleşik parametreleri kullanarak veri toplama
Birçok veri toplama senaryosunda, işin sonuçlarının işlenmesine yardımcı olmak için bu betik değişkenlerinden bazılarını eklemek yararlı olabilir.
$(job_name)
$(job_id)
$(job_version)
$(step_id)
$(step_name)
$(job_execution_id)
$(job_execution_create_time)
$(target_group_name)
Örneğin, aynı iş yürütmesinden elde edilen tüm sonuçları birlikte gruplandırmak için aşağıdaki komutta gösterildiği gibi kullanın $(job_execution_id)
:
@command= N' SELECT DB_NAME() DatabaseName, $(job_execution_id) AS job_execution_id, * FROM sys.dm_db_resource_stats WHERE end_time > DATEADD(mi, -20, GETDATE());'
Not
Elastik işlerdeki tüm zamanlar UTC saat dilimindedir.
Veritabanı performansını izleme
Aşağıdaki örnek, birden çok veritabanından performans verilerini toplamak için yeni bir iş oluşturur.
Varsayılan olarak, iş aracısı döndürülen sonuçları depolamak için çıkış tablosunu oluşturur. Bu nedenle, çıktı kimlik bilgileriyle ilişkili veritabanı sorumlusunun en azından şu izinlere sahip olması gerekir: CREATE TABLE
veritabanında, , ALTER
SELECT
, , INSERT
, DELETE
çıkış tablosunda veya şemasında ve SELECT
sys.indexes katalog görünümünde.
Tabloyu önceden el ile oluşturmak istiyorsanız aşağıdaki özelliklere sahip olması gerekir:
- Sonuç kümesi için doğru ada ve veri türlerine sahip sütunlar.
- benzersizleştiricinin veri türüne sahip için ek sütun
internal_execution_id
. - Sütunda
internal_execution_id
adlıIX_<TableName>_Internal_Execution_ID
bir kümelenmemiş dizin. - Veritabanındaki izinler dışında
CREATE TABLE
daha önce listelenen tüm izinler.
İş veritabanına bağlanın ve aşağıdaki komutları çalıştırın:
--Connect to the job database specified when creating the job agent
-- Add a job to collect perf results
EXEC jobs.sp_add_job @job_name ='ResultsJob', @description='Collection Performance data from all customers'
-- Add a job step w/ schedule to collect results
EXEC jobs.sp_add_jobstep
@job_name = 'ResultsJob',
@command = N' SELECT DB_NAME() DatabaseName, $(job_execution_id) AS job_execution_id, * FROM sys.dm_db_resource_stats WHERE end_time > DATEADD(mi, -20, GETDATE());',
@target_group_name = 'PoolGroup',
@output_type = 'SqlDatabase',
@output_server_name = 'server1.database.windows.net',
@output_database_name = '<resultsdb>',
@output_table_name = '<output_table_name>';
--Create a job to monitor pool performance
--Connect to the job database specified when creating the job agent
-- Add a target group containing elastic job database
EXEC jobs.sp_add_target_group 'ElasticJobGroup';
-- Add a server target member
EXEC jobs.sp_add_target_group_member
@target_group_name = 'ElasticJobGroup',
@target_type = 'SqlDatabase',
@server_name = 'server1.database.windows.net',
@database_name = 'master';
-- Add a job to collect perf results
EXEC jobs.sp_add_job
@job_name = 'ResultsPoolsJob',
@description = 'Demo: Collection Performance data from all pools',
@schedule_interval_type = 'Minutes',
@schedule_interval_count = 15;
-- Add a job step w/ schedule to collect results
EXEC jobs.sp_add_jobstep
@job_name='ResultsPoolsJob',
@command=N'declare @now datetime
DECLARE @startTime datetime
DECLARE @endTime datetime
DECLARE @poolLagMinutes datetime
DECLARE @poolStartTime datetime
DECLARE @poolEndTime datetime
SELECT @now = getutcdate ()
SELECT @startTime = dateadd(minute, -15, @now)
SELECT @endTime = @now
SELECT @poolStartTime = dateadd(minute, -30, @startTime)
SELECT @poolEndTime = dateadd(minute, -30, @endTime)
SELECT elastic_pool_name , end_time, elastic_pool_dtu_limit, avg_cpu_percent, avg_data_io_percent, avg_log_write_percent, max_worker_percent, max_session_percent,
avg_storage_percent, elastic_pool_storage_limit_mb FROM sys.elastic_pool_resource_stats
WHERE end_time > @poolStartTime and end_time <= @poolEndTime;
',
@target_group_name = 'ElasticJobGroup',
@output_type = 'SqlDatabase',
@output_server_name = 'server1.database.windows.net',
@output_database_name = 'resultsdb',
@output_table_name = '<output_table_name>';
İşi çalıştırma
Aşağıdaki örnekte, bir işin el ile ve planlanmamış eylem olarak hemen nasıl başlatılmaya başlandığı gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
-- Execute the latest version of a job
EXEC jobs.sp_start_job 'CreateTableTest';
-- Execute the latest version of a job and receive the execution ID
declare @je uniqueidentifier;
exec jobs.sp_start_job 'CreateTableTest', @job_execution_id = @je output;
select @je;
-- Monitor progress
SELECT * FROM jobs.job_executions WHERE job_execution_id = @je;
İşin yürütülmesini zamanlama
Aşağıdaki örnekte, gelecekteki yürütme için her 15 dakikada bir yinelenen olarak bir işin nasıl zamanlandığı gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
EXEC jobs.sp_update_job
@job_name = 'ResultsJob',
@enabled=1,
@schedule_interval_type = 'Minutes',
@schedule_interval_count = 15;
İş tanımlarını görüntüleme
Aşağıdaki örnekte geçerli iş tanımlarının nasıl görüntüleyebileceğiniz gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
-- View all jobs
SELECT * FROM jobs.jobs;
-- View the steps of the current version of all jobs
SELECT js.* FROM jobs.jobsteps js
JOIN jobs.jobs j
ON j.job_id = js.job_id AND j.job_version = js.job_version;
-- View the steps of all versions of all jobs
SELECT * FROM jobs.jobsteps;
İş yürütme durumunu izleme
Aşağıdaki örnekte tüm işler için yürütme durumu ayrıntılarının nasıl görüntüleyebileceğiniz gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
--View top-level execution status for the job named 'ResultsPoolJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob' and step_id IS NULL
ORDER BY start_time DESC;
--View all top-level execution status for all jobs
SELECT * FROM jobs.job_executions WHERE step_id IS NULL
ORDER BY start_time DESC;
--View all execution statuses for job named 'ResultsPoolsJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob'
ORDER BY start_time DESC;
-- View all active executions
SELECT * FROM jobs.job_executions
WHERE is_active = 1
ORDER BY start_time DESC;
Bir işi iptal etme
Aşağıdaki örnekte, bir iş yürütme kimliğinin nasıl alınıp bir iş yürütme işleminin nasıl iptal edileceği gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
-- View all active executions to determine job execution ID
SELECT * FROM jobs.job_executions
WHERE is_active = 1 AND job_name = 'ResultPoolsJob'
ORDER BY start_time DESC;
GO
-- Cancel job execution with the specified job execution ID
EXEC jobs.sp_stop_job '01234567-89ab-cdef-0123-456789abcdef';
Eski iş geçmişini silme
Aşağıdaki örnekte, belirli bir tarihten önce iş geçmişinin nasıl silineceği gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
-- Delete history of a specific job's executions older than the specified date
EXEC jobs.sp_purge_jobhistory @job_name='ResultPoolsJob', @oldest_date='2016-07-01 00:00:00';
--Note: job history is automatically deleted if it is >45 days old
Bir işi ve tüm iş geçmişini silme
Aşağıdaki örnekte bir işin ve tüm ilgili iş geçmişinin nasıl silineceği gösterilmektedir.
'a bağlanın job_database
ve aşağıdaki komutu çalıştırın:
--Connect to the job database specified when creating the job agent
EXEC jobs.sp_delete_job @job_name='ResultsPoolsJob';
EXEC jobs.sp_purge_jobhistory @job_name='ResultsPoolsJob';
--Note: job history is automatically deleted if it is >45 days old
İş saklı yordamları
Aşağıdaki saklı yordamlar işler veritabanındadır. Benzer şekilde adlandırılırlar ancak SQL Server Agent hizmeti için kullanılan sistem saklı yordamlarından ayrı olarak farklıdırlar.
Saklı yordam | Açıklama |
---|---|
sp_add_job | Yeni bir iş ekler. |
sp_update_job | Mevcut bir işi güncelleştirir. |
sp_delete_job | Var olan bir işi siler. |
sp_add_jobstep | İşe adım ekler. |
sp_update_jobstep | İş adımlarını güncelleştirir. |
sp_delete_jobstep | İş adımlarını siler. |
sp_start_job | bir işi yürütmeye başlar. |
sp_stop_job | bir iş yürütmeyi durdurur. |
sp_add_target_group | Bir hedef grup ekler. |
sp_delete_target_group | Hedef grubu siler. |
sp_add_target_group_member | Hedef gruba veritabanı veya veritabanı grubu ekler. |
sp_delete_target_group_member | Hedef grup üyesini hedef gruptan kaldırır. |
sp_purge_jobhistory | bir işin geçmiş kayıtlarını kaldırır. |
İş görünümleri
İşler veritabanında aşağıdaki görünümler kullanılabilir.
Göster | Açıklama |
---|---|
job_executions | İş yürütme geçmişini gösterir. |
Işleri | Tüm işleri gösterir. |
job_versions | Tüm iş sürümlerini gösterir. |
jobsteps | Her işin geçerli sürümündeki tüm adımları gösterir. |
jobstep_versions | Her işin tüm sürümlerindeki tüm adımları gösterir. |
target_groups | Tüm hedef grupları gösterir. |
target_group_members | Tüm hedef grupların tüm üyelerini gösterir. |