SQL ambarı oturumları nedir?

SQL ambarı oturumları değişkenleri tanımlamanıza, geçici görünümler oluşturmanıza ve birden çok sorgu çalıştırması genelinde durum değişikliklerini korumanıza olanak sağlar. Oturumlarla, tüm deyimleri aynı anda çalıştırmaya gerek kalmadan SQL mantığını yinelemeli olarak oluşturabilirsiniz.

BIR SQL ambarı eklendiğinde aşağıdaki bağlamlarda oturumları kullanabilirsiniz:

Örnek kullanım örneği

Oturumlar, paylaşılan durumu korurken deyimleri tek tek çalıştırmanıza olanak tanır. Örneğin, bir değişken bildirebilir, bu değişkeni kullanan geçici bir görünüm oluşturabilir ve sonra görünümü ayrı olarak sorgulayabilirsiniz.

Aşağıdaki örnekte bu iş akışı gösterilmektedir:

-- Statement 1: Declare a variable
DECLARE VARIABLE row_limit = 10;

-- Statement 2: Create a temporary view using the variable
CREATE OR REPLACE TEMPORARY VIEW filtered_data AS
SELECT
  *
FROM
  main.default.sales_data
LIMIT row_limit;

-- Statement 3: Query the temporary view
SELECT
  *
FROM
  filtered_data;

Oturumlarla her deyimi tek tek çalıştırabilirsiniz. Değişken ve geçici görünüm kullanılabilir durumda kalır ve önceki tüm deyimleri yeniden çalıştırmadan sorgularınızda yineleme yapmanıza olanak sağlar.

Oturumlar nasıl çalışır?

Kullanıcı SQL ambarı üzerinde sorgu çalıştırdığında oturum oluşturulur. Bir komut en az sekiz saatte bir çalıştırıldığında oturumlar etkin kalır. Ambar durdurulsa veya yeniden başlatıldığında bile oturumlar devam eder.

Sekiz saatlik etkinlik dışı kalma süresinden sonra oturumun süresi dolar.

Paylaşılan oturum durumu bilgisi

Aynı oturumda çalıştırılacak tüm komutlar aşağıdakileri paylaşır:

  • ile bildirilen değişkenler DECLARE VARIABLE
  • ile oluşturulan geçici görünümler CREATE TEMPORARY VIEW
  • ile CREATE TEMPORARY TABLEoluşturulan geçici tablolar. Bkz . Geçici tablolar
  • Geçerli katalog ve şema gibi ortam ayarları
  • SET QUERY_TAGS ile veya oturum yapılandırma parametreleriyle ayarlanan sorgu etiketleri. Bkz . Sorgu etiketleri

Oturum kapsamı ve işbirliği

Oturumlar hem sorgu nesnesine (sorgu, not defteri veya dosya) hem de bağlı olduğu belirli SQL ambarlarına bağlıdır. Bu nesne ve ambar bağlantısına erişimi paylaşan tüm kullanıcılar da aynı oturumu paylaşır.

Örneğin:

  • A Kullanıcısı, X Ambarı'na bağlıyken Sorgu 1'de geçici bir görünüm tanımlar.
  • B kullanıcısı, X Ambarı'ndaki Sorgu 1'de aynı geçici görünüme başvuran bir SQL komutu çalıştırabilir.
  • Sorgu 1 farklı bir depoya yeniden bağlanırsa, kendi yalıtılmış durumuyla yeni bir oturum oluşturulur.

Bu işbirliğine dayalı davranış, ekiplerin paylaşılan sorgu geliştirme üzerinde birlikte çalışmasına olanak tanır, ancak aynı zamanda bir kullanıcı tarafından yapılan değişikliklerin aynı oturumu paylaşan diğer tüm kullanıcıları etkilediği anlamına da gelir.

Sonraki Adımlar