Link Search Menu Expand Document

Otomatik Vacuuming

Bu başlıkta verilen parametre ayarları otomatik vakum özelliğinin davranışını kontrol eder. Daha fazla bilgi için bkz. . Bu ayarların çoğu tablo bazında geçersiz kılınabilir bkz. Depolama Parametreleri.

autovacuum

type: bool default: on context: sighup
Sunucunun autovacuum başlatıcı arka plan programını (autovacuum launcher) çalıştırıp çalıştırmayacağını kontrol eder. Varsayılan olarak açıktır; ancak, autovacuum’un çalışması için track_counts paremetresinin de açık olmalısı gereklidir. Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Otomatik vakumlama, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

Bu parametre devre dışı bırakıldığında bile sistemin transaction ID wraparound’ı önlemek için gerektiğinde otomatik vakum süreçlerini başlatacağını unutmayın. Daha fazla bilgi için bkz.

log_autovacuum_min_duration

type: integer default: -1 min: -1 max: 2147483647 unit: ms context: sighup
Autovacuum tarafından yürütülen her eylemin, en az bu parametrede belirtilen süre boyunca çalıştırılması durumunda loglar. Bu parametreyi sıfıra ayarlamak, tüm otomatik vakum işlemlerini günlüğe kaydeder. -1 (varsayılan) otomatik vakum eylemlerinin günlüğe kaydedilmesini devre dışı bırakır. Bu değer birimsiz belirtilirse milisaniye olarak alınır. Örneğin, 250 ms ayarı, 250 ms veya daha uzun süre çalışan tüm otomatik vakumlar ve analizler günlüğe kaydedilir. Bu parametrenin -1 dışındaki ayar değerlerinde, çakışan bir lock veya eşzamanlı olarak drop edilen bir ilişki sebepli otomatik vakum eylemi atlanırsa günlüğe bir mesaj yazılır. Bu parametrenin etkinleştirilmesi, otomatik vakum aktivitesinin izlenmesinde yardımcı olur. Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_max_workers

type: integer default: 3 min: 1 max: 262143 context: postmaster restart: Gerektirir
Herhangi bir anda çalışabilen maksimum otomatik vakum süreci sayısını (autovacuum launcher dışında) belirtir. Öntanımlı değeri 3’tür. Bu parametre yalnızca sunucu başlangıcında ayarlanabilir.

autovacuum_naptime

type: integer default: 1 min min: 1 max: 2147483 unit: s context: sighup
Herhangi bir veri tabanında otomatik vakum çalışmaları arasındaki minimum gecikmeyi belirtir. Her periyotta arka plan programı veritabanını inceler ve bu veritabanındaki tablolar için ihtiyacına göre VACUUM ve ANALYZE komutlarını verir. Bu değer birimsiz belirtilirse saniye olarak alınır. Öntanımlı değeri 1 dakikadır (1 min). Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir.

autovacuum_vacuum_threshold

type: integer default: 50 min: 0 max: 2147483647 context: sighup
Herhangi bir tabloda VACUUM tetiklemek için gereken minimum değiştirilmiş ve silinmiş tuple sayısını belirtir. Varsayılan 50 tuple’dir. Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_vacuum_insert_threshold

type: integer default: 1000 min: -1 max: 2147483647 context: sighup
Herhangi bir tabloda VACUUM tetiklemek için gerekli insert edilen tuple sayısını belirtir. Varsayılan 1000 tuple’dır. -1 ayarı, insert sayısına bağlı olarak otomatik vakum, herhangi bir tablodaki VACUUM işlemini tetiklemeyecektir. Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_analyze_threshold

type: integer default: 50 min: 0 max: 2147483647 context: sighup
Herhangi bir tabloda bir ANALYZE tetiklemek için gereken minimum eklenen, değiştirilen veya silinen tuple sayısını belirtir. Varsayılan 50 tuple’dir. Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_vacuum_scale_factor

type: real default: 0.2 min: 0 max: 100 context: sighup
Bir VACUUM tetiklenip tetiklenmeyeceğine karar verilirken autovacuum_vacuum_threshold‘a eklenecek tablo boyutu kısmını belirtir. Varsayılan 0,2’dir (tablo boyutunun %20’si). Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_vacuum_insert_scale_factor

type: real default: 0.2 min: 0 max: 100 context: sighup
Bir VACUUM tetiklenip tetiklenmeyeceğine karar verilirken autovacuum_vacuum_insert_threshold‘a eklenecek tablo boyutu kısmını belirtir. Varsayılan 0,2’dir (tablo boyutunun %20’si). Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_analyze_scale_factor

type: real default: 0.1 min: 0 max: 100 context: sighup
Bir ANALYZE tetiklenip tetiklenmeyeceğine karar verilirken autovacuum_analyze_threshold‘a eklenecek tablo boyutu kısmını belirtir. Varsayılan değer 0,1’dir (tablo boyutunun %10’u). Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo saklama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_vacuum_cost_delay

type: real default: 2 ms min: -1 max: 100 unit: ms context: sighup
Otomatik VACUUM işlemlerinde kullanılacak maliyet gecikme değerini belirtir. -1 ayarında normal vacum_cost_delay değeri kullanılır. Bu değer birimsiz belirtilirse milisaniye olarak alınır. Varsayılan değer 2 milisaniyedir. Bu parametre yalnızca postgresql.conf dosyasında ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

autovacuum_vacuum_cost_limit

type: integer default: -1 min: -1 max: 10000 context: sighup
Otomatik VACUUM işlemlerinde kullanılacak maliyet sınırı değerini belirtir. -1 ayarı (varsayılan değerdir) vacuum_cost_limit değerini kullanır. Bu parametre yalnızca postgresql.conf dosyasından ve sunucu komut satırından ayarlanabilir. Bu ayar, tablo depolama parametreleri değiştirilerek belirli tablolar için geçersiz kılınabilir.

Kaynak:

[1]. PostgreSQL Documentation

[2]. postgresqlco.nf