Buffer

QVD dosyaları buffer önekiyle otomatik olarak oluşturulabilir ve korunabilir. Bu önek, koddaki çoğu LOAD ve SELECT deyiminde kullanılabilir. QVD dosyalarının deyimin sonucunu önbelleğe/arabelleğe almak için kullanıldığını belirtir.

Syntax:  

Buffer [(option [ , option])] ( loadstatement | selectstatement )

option::= incremental | stale [after] amount [(days | hours)]

 

Bir seçenek kullanılmazsa, kodun ilk yürütülmesiyle oluşturulan QVD belleği süresiz olarak kullanılır.

Arabellek dosyası, genellikle C:\ProgramData\Qlik\Sense\Engine\Buffers (sunucu yüklemesi) veya C:\Kullanıcılar\{user}\Belgeler\Qlik\Sense\Buffers (Qlik Sense Desktop) olan Arabellekler alt klasöründe depolanır.

QVD dosyasının adı hesaplanan bir addır, yani takip eden LOAD veya SELECT deyiminin tamamının veya diğer ayırıcı bilgilerin 160 bit onaltılık karmasıdır. Bu, QVD belleğinin, takip eden LOAD veya SELECT deyimindeki herhangi bir değişiklikle geçersiz kılınacağı anlamına gelir.

QVD bellekleri normalde, oluşturduğu uygulamadaki tam kod yürütme boyunca herhangi bir konumda artık kendisine referansta bulunulmadığında veya oluşturduğu uygulama artık var olmadığında kaldırılır.

Arguments:  

Bağımsız Değişken Açıklama
artışlı incremental seçeneği, temel bir dosyanın yalnızca bir bölümünü okuma özelliğini etkinleştirir. Dosyanın önceki boyutu, QVD dosyasının XML üst bilgisinde depolanır. Bu, özellikle günlük dosyalarıyla kullanışlıdır. Önceki bir durumda yüklenen tüm kayıtlar QVD dosyasından okunurken, takip eden yeni kayıtlar orijinal kaynaktan okunur ve son olarak güncelleştirilmiş bir QVD dosyası oluşturulur. incremental seçeneğinin yalnızca LOAD deyimleriyle ve metin dosyalarıyla kullanılabileceğini ve eski verilerin değiştirildiği veya silindiği durumlarda artışlı yüklemenin kullanılamayacağını unutmayın!
stale [after] amount [(days | hours)] amount, zaman dönemini belirten bir sayıdır. Ondalıklar kullanılabilir. Atlandığında birimin günler olduğu varsayılır.

stale after seçeneği, orijinal verilerde basit bir zaman damgasının bulunmadığı durumlarda tipik olarak veritabanı kaynaklarıyla kullanılır. Bunun yerine, kullanılacak QVD anlık görüntüsünün ne kadar eski olabileceğini belirtirsiniz. Stale after cümlesi, basit bir şekilde, QVD belleğinin oluşturulma zamanından başlayan ve sonrasında geçerli sayılmayacağı bir zaman dönemi belirtir. Bu zamandan önce QVD belleği veriler için kaynak olarak kullanılır ve bundan sonra orijinal veri kaynağı kullanılır. Bu durumda QVD bellek dosyası otomatik olarak güncelleştirilir ve yeni bir dönem başlar.

Limitations:  

Çeşitli sınırlamalar mevcuttur; bunlardan en önemlisi, herhangi bir karmaşık deyimin çekirdeğinde bir dosya LOAD veya SELECT deyimi olması gerekliliğidir.

Example 1:  

Buffer SELECT * from MyTable;

Example 2:  

Buffer (stale after 7 days) SELECT * from MyTable;

Example 3:  

Buffer (incremental) LOAD * from MyLog.log;