Tüm Ürünler
Search
Belge Merkezi

ApsaraDB for SelectDB:Değişken yönetimi

Son Güncelleme:Oct 08, 2026

ApsaraDB for SelectDB değişkenleri, sorgu davranışını, oturum ayarlarını ve küme genelindeki yapılandırmayı kontrol eder. Değişkenler iki kategoriye ayrılır: ApsaraDB for SelectDB'ye özgü olanlar ve MySQL istemci protokolüyle uyumlu olanlar.

Değişkenlerin çalışma biçimi

Değişkenler iki kapsamda ayarlanabilir:

  • Oturum kapsamı: Yalnızca geçerli bağlantı için etkili olur. Oturum sonlandığında sıfırlanır.

  • Global kapsam: Geçerli oturum ve sonraki tüm oturumlar için etkili olur. Global değişkenleri yalnızca admin kullanıcısı ayarlayabilir.

Birden fazla düzey yapılandırıldığında, ayarlar şu öncelik sırasına göre etkili olur (en yüksekten en düşüğe):

  1. Oturum değişkenleri

  2. Kullanıcı özellikleri

  3. Global değişkenler

  4. Varsayılan değerler

Daha yüksek öncelikli bir ayar yapılandırılmamışsa, bir sonraki düzey otomatik olarak devreye girer.

Değişkenleri görüntüleme

Tüm değişkenleri ve mevcut değerlerini listelemek için SHOW VARIABLES komutunu çalıştırın:

SHOW VARIABLES;

İsme göre filtrelemek için:

SHOW VARIABLES LIKE '%time_zone%';

Değişken ayarlama

Oturum değişkeni ayarlama

Oturum değişkenleri hemen etkili olur ve yalnızca geçerli bağlantıya uygulanır:

SET exec_mem_limit = 137438953472;
SET forward_to_master = true;
SET time_zone = "Asia/Shanghai";

Değişkenler ayrıca sabit ifadeleri de kabul eder:

SET exec_mem_limit = 10 * 1024 * 1024 * 1024;
SET forward_to_master = concat('tr', 'u', 'e');

Global değişken ayarlama

Global değişkenler, geçerli oturum ve sonraki tüm oturumlar için etkili olur:

SET GLOBAL exec_mem_limit = 137438953472;
Önemli

Global değişkenleri yalnızca admin kullanıcısı ayarlayabilir.

Aşağıdaki değişkenler hem oturum hem de global kapsamı destekler:

  • time_zone

  • wait_timeout

  • sql_mode

  • enable_profile

  • query_timeout

  • insert_timeout

  • exec_mem_limit

  • batch_size

  • allow_partition_column_nullable

  • insert_visible_timeout_ms

  • enable_fold_constant_by_be

Aşağıdaki değişkenler yalnızca global kapsamı destekler:

  • default_rowset_type

  • default_password_lifetime

  • password_history

  • validate_password_policy

Tek bir sorgu için değişkeni geçersiz kılma

Oturum durumunu değiştirmeden tek bir ifade için oturum değişkeni ayarlamak üzere SET_VAR ipucunu kullanın:

SELECT /*+ SET_VAR(exec_mem_limit = 8589934592) */ name FROM people ORDER BY name;
SELECT /*+ SET_VAR(query_timeout = 1, enable_partition_cache=true) */ sleep(3);
Yorumlar /*+ ile başlamalı ve SELECT ifadesini takip etmelidir.

Saat dilimi değişkenleri

ApsaraDB for SelectDB iki saat dilimi değişkeni sağlar:

Değişken Açıklama Değiştirilebilir
system_time_zone Kümenin sistem saat dilimi. Sunucu başlatıldığında, sunucunun işletim sistemi saat dilimine göre otomatik olarak ayarlanır. Hayır
time_zone Kümenin geçerli saat dilimi. Zaman işlevlerini ve saat dilimi ofsetleri içeren içe aktarılan verileri etkiler. Evet

Saat dilimi değişkenlerini sorgulama ve ayarlama

Her iki saat dilimi değişkenini de görüntülemek için:

SHOW VARIABLES LIKE '%time_zone%';

Oturum saat dilimini ayarlamak için:

SET time_zone = 'Asia/Shanghai';

Sonraki tüm oturumlar için küme saat dilimini ayarlamak için:

SET GLOBAL time_zone = 'Asia/Shanghai';

Desteklenen saat dilimi formatları

Format türü Örnekler
Adlandırılmış (IANA tz veritabanı) Asia/Shanghai, America/Los_Angeles
UTC ofseti +02:30, -10:00
Kısaltmalar GMT, UTC (+00:00 ile eşdeğer); CST (Asia/Shanghai ile eşdeğer)
Zulu Z (+00:00 ile eşdeğer)
Bazı veri içe aktarma yöntemleri, yukarıda listelenmeyen ek saat dilimi formatlarını kabul edebilir. Üretim ortamında standart olmayan formatlara güvenmeyin; ApsaraDB for SelectDB bunları işleme biçimini istediği zaman değiştirebilir.

Saat dilimi ayarlarının işlevleri ve verileri nasıl etkilediği

Etkilenen işlevler

Aşağıdaki işlevler, geçerli time_zone ayarına göre sonuç döndürür:

İşlev Davranış
FROM_UNIXTIME Bir UTC zaman damgasını yapılandırılan saat dilimindeki tarih ve saate dönüştürür. CST ile FROM_UNIXTIME(0) ifadesi 1970-01-01 08:00:00 değerini döndürür.
UNIX_TIMESTAMP Tarih ve saati bir UTC zaman damgasına dönüştürür. CST ile UNIX_TIMESTAMP('1970-01-01 08:00:00') ifadesi 0 değerini döndürür.
CURTIME Yapılandırılan saat dilimindeki geçerli saati döndürür.
NOW Yapılandırılan saat dilimindeki geçerli tarih ve saati döndürür.
CONVERT_TZ Tarih ve saati bir saat diliminden diğerine dönüştürür.

SHOW LOAD ve SHOW BACKENDS çıktısı da yapılandırılan saat dilimini yansıtır.

Saat dilimi ayarlarından etkilenmeyenler:

  • CREATE TABLE içindeki zaman türü bölüm anahtarı sütunlarının less than değerleri

  • DATE veya DATETIME türü olarak depolanan değerler (depolanan değerin kendisi değişmez)

İçe aktarma sırasında zaman türü veriler

DATE, DATEV2, DATETIME veya DATETIMEV2 türündeki verileri içe aktarırken ApsaraDB for SelectDB saat dilimi dönüşümünü aşağıdaki gibi işler:

  • Saat dilimi sonekli veriler (örneğin, 2020-12-12 12:12:12+08:00): Kümenin geçerli time_zone değerine dönüştürülür. Örneğin, time_zone değeri +00:00 ise, depolanan değer 2020-12-12 04:12:12 olur.

  • Saat dilimi soneki olmayan veriler (örneğin, 2020-12-12 12:12:12): Mutlak zaman olarak kabul edilir — dönüşüm yapılmadan olduğu gibi içe aktarılır.

Yaz saati uygulaması

Yaz saati uygulamaları ayarlamaları adlandırılmış saat dilimlerine gömülüdür. Örneğin, America/Los_Angeles Mart ayında -08:00 değerinden -07:00 değerine, Kasım ayında tekrar eski değerine geçer.

Yaz saati değişikliklerinden kaçınmak için, time_zone değerini America/Los_Angeles gibi adlandırılmış bir bölge yerine sabit bir UTC ofsetine (örneğin, -08:00) ayarlayın.

Saat dilimi veri kaynakları

Her backend (BE) düğümünde, ApsaraDB for SelectDB saat dilimi verilerini sırasıyla aşağıdaki konumlarda arar:

  1. TZDIR komutu tarafından döndürülen dizin

  2. /usr/share/zoneinfo

  3. BE dağıtım dizinindeki zoneinfo dizini

Hiçbir konumda saat dilimi verisi bulunamazsa, BE düğümü başlatılamaz.

En iyi uygulamalar

Saat dilimine duyarlı veriler

Verileri içe aktarmadan önce saat dilimi bilgilerinin tutarlı bir şekilde nasıl işleneceğine karar verin. DATETIME gibi zaman türündeki veriler bir saat dilimi depolamaz; ApsaraDB for SelectDB iki kategoriyi ayırt eder:

Mutlak zaman: Veride saat dilimi yoktur, içe aktarma sırasında saat dilimi yapılandırılmamıştır. Örnek: 2023-12-12 08:00:00. Olduğu gibi depolanır ve sorgulanır, time_zone değerinden etkilenmez.

Belirli bir saat dilimindeki zaman: Veri bir saat dilimi soneki içerir. Örnek: 2020-12-12 12:12:12+02:00. Hangi saat dilimi ayarının geçerli olacağı içe aktarma yöntemi tarafından belirlenir:

  • INSERT INTO: time_zone oturum değişkeni tarafından yönetilir.

  • Stream Load veya Broker Load: timezone istek üstbilgisi tarafından yönetilir. timezone üstbilgisi ile time_zone oturum değişkeni çakışırsa, timezone üstbilgisi önceliklidir.

ApsaraDB for SelectDB, gelen verilerdeki gerçek saat dilimini, içe aktarma sırasında time_zone ile yapılandırılan saat dilimine dönüştürür.

Önerilen yaklaşım: İçe aktarmadan önce time_zone değerini bir kez ayarlayın ve ardından tutarlı tutun. Saat dilimi farkındalığı olan verileri içe aktardıktan sonra time_zone değerini değiştirmek, depolanan değerlerin sonraki sorgularda yanlış yorumlanmasına neden olur.

Aşağıdaki örnek, time_zone değerinin oturum ortasında değiştirilmesi durumunda ne olduğunu gösterir:

-- Current time zone: Asia/Hong_Kong
SELECT @@time_zone;
-- +----------------+
-- | @@time_zone    |
-- +----------------+
-- | Asia/Hong_Kong |
-- +----------------+

-- Import data with literal time zone +02:00
-- Stored as 2020-12-12 18:12:12 (converted to Asia/Hong_Kong)
INSERT INTO dtv23 VALUES('2020-12-12 12:12:12+02:00');

SELECT * FROM dtv23;
-- +-------------------------+
-- | k0                      |
-- +-------------------------+
-- | 2020-12-12 18:12:12.000 |
-- +-------------------------+

-- Changing time_zone does not update stored values
SET time_zone = 'America/Los_Angeles';

-- A second import now uses America/Los_Angeles for conversion
INSERT INTO dtv23 VALUES('2020-12-12 12:12:12+02:00');

SELECT * FROM dtv23;
-- Rows now carry inconsistent time zone semantics
-- +-------------------------+
-- | k0                      |
-- +-------------------------+
-- | 2020-12-12 02:12:12.000 |  -- imported under America/Los_Angeles
-- | 2020-12-12 18:12:12.000 |  -- imported under Asia/Hong_Kong
-- +-------------------------+

Saat dilimi en iyi uygulamalarının özeti:

  • Verileri içe aktarmadan önce kümenin time_zone değerini onaylayın ve sonrasında değiştirmeyin.

  • Stream Load veya Broker Load kullanırken, timezone üstbilgisini time_zone oturum değişkeniyle aynı değere ayarlayın.

  • Mutlak zaman verileri için saat dilimi soneki olmadan içe aktarın. Saat dilimi farkındalığı olan veriler için saat dilimi sonekini ekleyin ve dönüşümü ApsaraDB for SelectDB'nin işlemesine izin verin.

Yaz saati uygulaması doğruluğu

Adlandırılmış saat dilimi verileri (yaz saati uygulama başlangıç ve bitiş tarihleri dahil) Internet Assigned Numbers Authority (IANA) tarafından korunur. Her BE düğümünde depolanan veriler, IANA tarafından geçerli yıl için onaylanan en son değişiklikleri yansıtmayabilir.

İş yükünüz en son yaz saati uygulaması takvimini gerektiriyorsa, her BE düğümündeki saat dilimi veri kaynağının en son IANA tz veritabanı sürümünü içerdiğinden emin olun. En son veriler için bkz. The tz-announce Archives.

Zaman aşımı ayarları

ApsaraDB for SelectDB, query_timeout ve insert_timeout değişkenlerini ve kullanıcı özelliklerini kullanarak birden çok düzeyde zaman aşımı yapılandırmasını destekler.

Priority order (highest to lowest): Oturum değişkenleri > Kullanıcı özellikleri > Global değişkenler > Varsayılan değerler

Değişken Kapsam Varsayılan Açıklama
query_timeout Oturum, Global, Kullanıcı özelliği 900 sn (15 dk) Tüm sorgu ifadelerinin zaman aşımını kontrol eder.
insert_timeout Oturum, Global, Kullanıcı özelliği 14400 sn (4 sa) Özellikle INSERT ifadelerinin zaman aşımını kontrol eder. INSERT çalıştırılırken, query_timeout ve insert_timeout değerlerinden daha uzun olanı uygulanır.

Zaman aşımı için kullanıcı özellikleri:

  • query_timeout ve insert_timeout kullanıcı özellikleri, belirli bir kullanıcı için yalnızca admin kullanıcısı tarafından ayarlanabilir.

  • Bu özelliklerin kota anlambilimi yoktur; belirtilen kullanıcı için varsayılan zaman aşımını değiştirirler.

  • Kullanıcı özelliklerinde yapılan değişiklikler, istemci yeniden bağlandıktan sonra etkili olur.

Ek

Desteklenen değişkenler

Boole değişkenleri

Boole değişkenleri bir özelliği etkinleştirir veya devre dışı bırakır. Geçerli değerler: true ve false.

Değişken Varsayılan Açıklama
delete_without_partition false true olduğunda, bölüm yan tümcesi olmayan bir DELETE ifadesi otomatik olarak tüm bölümlere uygulanır. Bu, DELETE işleminin süresini uzatır ve çok sayıda görev oluşturur. Gerekmedikçe devre dışı bırakın.
disable_colocate_join false true olduğunda, Colocation Join özelliğini devre dışı bırakır. Yürütme planı Colocation Join işlemlerini denemez.
enable_bucket_shuffle_join true false olduğunda, Bucket Shuffle Join özelliğini devre dışı bırakır. Yürütme planı Bucket Shuffle Join işlemlerini denemez.
disable_streaming_preaggregations false true olduğunda, akış ön toplamasını devre dışı bırakır. Bu değişken değiştirilemez.
enable_insert_strict false true olduğunda, INSERT ifadesi veri içe aktarmaları için katı modu etkinleştirir.
enable_spilling false true olduğunda, büyük veri kümeleri için disk üzerinde sıralamayı etkinleştirir. Geçici veriler BE üzerindeki doris-scratch/ dizinine yazılır ve sorgu tamamlandıktan sonra temizlenir. Bu özellik deneyseldir; üretimde etkinleştirmeyin.
forward_to_master true true olduğunda, belirli SHOW ifadelerini yürütme için ana FE düğümüne iletir. Ana FE düğümü, SHOW FRONTENDS, SHOW BACKENDS, SHOW BROKER, SHOW TABLET, SHOW REPLICA DISTRIBUTION, SHOW REPLICA STATUS ve SHOW PROC için daha ayrıntılı bilgi döndürür.
enable_profile false true olduğunda, her sorgudan sonra sorgu profilini FE'ye gönderir. Profilleri fe_host:fe_http_port/query adresinde görüntüleyin. Sayfa, bu değişken etkinleştirildikten sonraki en son 100 sorguyu gösterir.
rewrite_count_distinct_to_bitmap_hll true true olduğunda, bitmap veya HyperLogLog (HLL) verileri için COUNT DISTINCT ifadesini BITMAP_UNION_COUNT veya HLL_UNION_AGG ile değiştirir.
allow_partition_column_nullable true true olduğunda, bölüm anahtarı sütunları NULL olarak tanımlanabilir. false olduğunda, bölüm anahtarı sütunları NOT NULL olmalıdır.
enable_exchange_node_parallel_merge false true olduğunda, exchange düğümü sıralı verileri paralel olarak birleştirmek için birden çok iş parçacığı kullanır ve büyük sıralama işlemlerinde tek iş parçacığı birleştirme darboğazlarını azaltır.
extract_wide_range_expr false true olduğunda, geniş ortak çarpan çıkarmayı etkinleştirir.
enable_fold_constant_by_be false true olduğunda, sabit katlama uzaktan yordam çağrısı (RPC) istekleri aracılığıyla BE üzerinde gerçekleştirilir. false olduğunda, sabit katlama FE üzerinde çalışır.
disable_join_reorder false true olduğunda, tüm otomatik Join Reorder algoritmalarını devre dışı bırakır. JOIN işlemleri SQL ifadesindeki tablo sırasını izler.
enable_infer_predicate true true olduğunda, yüklem türetmeyi etkinleştirir. false olduğunda, ApsaraDB for SelectDB türetme olmadan orijinal yüklemi kullanır.
trim_tailing_spaces_for_external_table_query false true olduğunda, Hive harici tablolarını sorgularken alanlardaki sondaki boşlukları kırpır.
enable_inverted_index_query true true olduğunda, ters dizinler sorgularda kullanılır.
skip_missing_version false true olduğunda, sorgular FE'de kaydedilen görünür sürümü yoksayar ve bunun yerine BE çoğaltma sürümünü kullanarak eksik sürümleri atlar. Yalnızca acil durum veri kurtarma senaryolarında kullanın. Bu değişken yalnızca use_fix_replica değeri -1 olarak ayarlandığında etkili olur.
enable_parquet_lazy_materialization true true olduğunda, Parquet Reader için geç materyalizasyonu etkinleştirir.
enable_orc_lazy_materialization true true olduğunda, ORC Reader için geç materyalizasyonu etkinleştirir.
enable_strong_consistency_read true true olduğunda, oturumlar arasında veri okumaları için güçlü tutarlılığı etkinleştirir. Varsayılan olarak, güçlü tutarlılık yalnızca aynı oturum içinde korunur. Oturumlar arasında veri okumaları için güçlü tutarlılığı etkinleştirmek istiyorsanız, bu değişkeni true olarak ayarlayın.
truncate_char_or_varchar_columns false true olduğunda, altta yatan Parquet veya ORC dosyası farklı bir uzunluk kullanıyor olsa bile, CHAR ve VARCHAR sütunlarını tablo şemasında tanımlanan maksimum uzunluğa kırpır.
jdbc_clickhouse_query_final false true olduğunda, JDBC Catalog özelliği aracılığıyla yapılan ClickHouse sorgularına, ReplacingMergeTree tablo motoruyla deduplikasyon için FINAL anahtar sözcüğünü ekler.
enable_memtable_on_sink_node false true olduğunda, içe aktarma sırasında Data Sink düğümünde bir bellek tablosu oluşturur ve segmentleri bRPC akışı aracılığıyla diğer BE düğümlerine göndererek çoğaltmalar arasındaki yinelenen işleri azaltır.
enable_unique_key_partial_update false true olduğunda, Merge on Write (MOW) modunu kullanan Unique Key model tablolarında INSERT INTO için kısmi sütun güncelleme anlambilimini etkinleştirir. Hem enable_unique_key_partial_update hem de enable_insert_strict değerleri true ise, INSERT INTO yalnızca mevcut satırları güncelleyebilir. Kısmi sütun güncellemeleriyle yeni satırlar eklemek için enable_unique_key_partial_update değerini true ve enable_insert_strict değerini false olarak ayarlayın.
describe_extend_variant_column false true olduğunda, DESCRIBE çıktısında VARIANT türü sütunlar için alt sütunları görüntüler.
dry_run_query false true olduğunda, gerçek sonuç kümesi yerine yalnızca satır sayısını döndürür. Data Sink düğümü verileri yazmak yerine bırakır. Sonuçları iletme yükü olmadan büyük veri kümelerini test etmek için kullanışlıdır.
drop_table_if_ctas_failed true true olduğunda, CREATE TABLE AS SELECT bir yazma hatası nedeniyle başarısız olursa oluşturulan tabloyu siler.
show_user_default_role false true olduğunda, SHOW ROLES çıktısına her kullanıcının örtük rolünü dahil eder.
group_by_and_having_use_alias_first false true olduğunda, GROUP BY ve HAVING yan tümceleri FROM yan tümcesini aramadan önce sütun takma adlarını çözer.
enable_file_cache false true olduğunda, blok dosya önbelleğini etkinleştirir. Bu değişken yalnızca BE'nin be.conf dosyasında da enable_file_cache=true ayarlanmışsa etkili olur.
enable_auto_analyze true true olduğunda, otomatik istatistik toplamayı etkinleştirir.
enable_cost_based_join_reorder false true olduğunda, JOIN işlemlerinde tablo sırasını otomatik olarak ayarlamak için maliyet tabanlı Join Reorder'ı etkinleştirir.
enable_fallback_to_original_planner false true olduğunda, yeni optimize edici desteklenmeyen senaryolarla karşılaştığında otomatik olarak orijinal optimize ediciye geri döner.
enable_odbc_transcation false true olduğunda, JDBC Catalog'a veri yazmak için işlem desteğini etkinleştirir.
enable_parallel_outfile false true olduğunda, SELECT INTO OUTFILE için paralel taramayı etkinleştirir.
enable_sql_cache false true olduğunda, SQL ifadesi sonuç önbelleğini etkinleştirir.
enable_unicode_name_support false true olduğunda, Unicode karakterleri (Çince dahil) içeren tablo ve sütun adlarını destekler.
enable_vectorized_engine true true olduğunda, sorguları hızlandırmak için vektörize motoru etkinleştirir.
experimental_enable_nereids_planner true true olduğunda, yeni optimize ediciyi (Nereids) etkinleştirir. Bu özellik deneyseldir.
experimental_enable_pipeline_engine true true olduğunda, Pipeline yürütme motorunu etkinleştirir. Bu özellik deneyseldir.
experimental_enable_single_replica_insert false true olduğunda, veri içe aktarma için bir çoğaltmayı birincil olarak seçer. Diğer çoğaltmalar, yazma tamamlandıktan sonra veri dosyalarını birincilden çeker ve çoğaltmalar arasındaki yinelenen hesaplamayı azaltır.
faster_float_convert false true olduğunda, daha hızlı bir kayan noktalı sayı dönüştürme algoritması kullanır. Bu algoritmanın çıktı formatını değiştirebileceğini unutmayın.
enable_page_cache true true olduğunda, sayfa düzeyi önbelleği etkinleştirir.
strict_mode false true olduğunda, veri içe aktarma için katı modu etkinleştirir.

Yapılandırma değişkenleri

Yapılandırma değişkenleri, basit bir true/false değerinin ötesinde bir değer aralığını kabul eder.

Değişken Varsayılan Açıklama
auto_broadcast_join_threshold 0.8 Broadcast Join için izin verilen karma tablo belleğinin toplam yürütme belleğine oranının maksimum değeri. Karma tablo bu oranı aştığında, ApsaraDB for SelectDB Shuffle Join'a geçer. Yayını tamamen devre dışı bırakmak için -1 olarak ayarlayın. Join yöntemini açıkça kontrol etmek için join[shuffle] gibi bir sorgu ipucu kullanın.
batch_size 1024 Bir sorgu sırasında düğümler arasında iletilen paket başına satır sayısı. Daha büyük değerler, büyük taramalar için aktarım hızını artırır ancak küçük sorgular için gecikme süresini ve bellek kullanımını artırabilir. Önerilen aralık: 1024–4096.
default_order_by_limit -1 ORDER BY sonrasında döndürülen varsayılan satır sayısı. -1 sınırı olmadığı anlamına gelir (maksimum LONG değerine kadar).
exec_mem_limit 2 GB Tek bir sorgu için maksimum bellek. Birimleri kabul eder: bayt (varsayılan), KB, MB, GB, TB, PB. Fragment instance başına belleği sınırlar; küme genelindeki sorgu için toplam belleği değil. Memory Exceed Limit hatası oluşursa, bu değeri üstel olarak artırın (4 GB, 8 GB, 16 GB).
lower_case_table_names 0 Tablo adı büyük/küçük harf duyarlılığını kontrol eder. 0: Büyük/küçük harfe duyarlı. 1: Büyük/küçük harfe duyarsız; adlar küçük harfle depolanır ve karşılaştırılır. 2: Büyük/küçük harfe duyarsız; adlar CREATE TABLE içinde belirtildiği gibi depolanır ancak küçük harfle karşılaştırılır. Küme başlatma sırasında fe.conf dosyasında ayarlanmalı ve daha sonra SET ile değiştirilemez.
max_pushdown_conditions_per_column -1 Sütun başına depolama motoruna itilen yüklem koşullarının maksimum sayısı. -1 değeri, be.conf değerini kullanır. Pozitif bir değer, geçerli oturum için be.conf değerini geçersiz kılar.
max_scan_key_num -1 Bir tarama düğümünün sorgu başına bölebileceği tarama anahtarlarının maksimum sayısı. -1 değeri, be.conf değerini kullanır. Pozitif bir değer, geçerli oturum için be.conf değerini geçersiz kılar.
parallel_exchange_instance_num -1 Yukarı akış düğümünün aşağı akış düğümlerinden veri almak için kullandığı exchange düğümlerinin sayısı. -1 değeri, aşağı akış instance sayısıyla eşleşir. Aşağı akış instance sayısından düşük pozitif bir değer, exchange düğümlerinin sayısını sınırlar ve küçük toplu çıkışlı toplama sorgularında ek yükü azaltmak için kullanışlıdır.
analyze_timeout 43200 sn ANALYZE ifadeleri için saniye cinsinden zaman aşımı.
auto_analyze_end_time — Otomatik istatistik toplama penceresinin bitiş zamanı.
auto_analyze_start_time — Otomatik istatistik toplama penceresinin başlangıç zamanı.
auto_analyze_table_width_threshold 70 Bu eşiğinden fazla sütunu olan tablolar, otomatik istatistik toplamadan hariç tutulur.
div_precision_increment 4 / bölme işlemlerinin sonucuna eklenen ek ondalık basamak sayısı.
external_agg_bytes_threshold — Toplama işlemleri için bellek eşiği. Aşıldığında, bellek içi veriler diske dökülür.
external_sort_bytes_threshold — Sıralama işlemleri için bellek eşiği. Aşıldığında, bellek içi veriler diske dökülür.
external_table_auto_analyze_interval_in_millis 86400000 ms Harici tablolar için otomatik istatistik toplamaları arasındaki minimum aralık.
fragment_transmission_compression_codec lz4 Düğümler arasında veri iletimi sırasında kullanılan sıkıştırma formatı.
huge_table_auto_analyze_interval_in_millis 0 Büyük tablolar (huge_table_lower_bound_size_in_bytes ile belirtilen boyutun 5 katından büyük) için otomatik istatistik toplamaları arasındaki minimum aralık.
huge_table_default_sample_rows 4194304 Otomatik istatistik toplama sırasında büyük tablolar için örneklenen satır sayısı.
huge_table_lower_bound_size_in_bytes 0 Bu eşiğinden büyük tablolar, otomatik istatistik toplama sırasında örneklenir.
ignore_runtime_filter_ids (boş) Yoksayılacak çalışma zamanı filtre kimlikleri.
max_filter_ratio 0 İçe aktarma sırasında filtrelenebilen satırların maksimum oranı (örneğin, doğrulamayı geçemeyen satırlar).
max_instance_num 64 parallel_pipeline_task_num ayarlanmadığında, SQL sorgusu başına eşzamanlı Pipeline görevlerinin maksimum sayısı.
parallel_pipeline_task_num 0 SQL sorgusu başına eşzamanlı Pipeline görevlerinin sayısı. 0 olduğunda, ApsaraDB for SelectDB bunu her BE düğümündeki CPU çekirdek sayısının yarısına, max_instance_num değerine kadar olacak şekilde ayarlar.
runtime_filter_type IN veya Bloom filtresi Kullanılan çalışma zamanı filtresinin türü. Seçenekler: Bloom filtresi, MinMax filtresi, IN yüklemi, IN veya Bloom filtresi, bitmap filtresi.
runtime_filter_mode GLOBAL Çalışma zamanı filtreleri için itme politikası. Seçenekler: OFF, LOCAL, GLOBAL.
runtime_filter_wait_time_ms 1000 ms Sol tablonun tarama düğümünün her bir çalışma zamanı filtresi için beklediği süre.
runtime_filters_max_num 10 Sorgu başına maksimum Bloom filtresi sayısı.
runtime_bloom_filter_min_size 1048576 bayt (1 MB) Bloom filtresinin minimum boyutu.
runtime_bloom_filter_max_size 16777216 bayt (16 MB) Bloom filtresinin maksimum boyutu.
runtime_bloom_filter_size 2097152 bayt (2 MB) Bloom filtresinin varsayılan boyutu.
runtime_filter_max_in_num 1024 IN yüklemi oluşturulabilecek sağ tablodaki maksimum satır sayısı.
parallel_fragment_exec_instance_num 1 Her BE düğümünde tarama aralıklarını işleyen instance sayısı. Bu değeri artırmak, büyük sorgular için aktarım hızını artırır ancak CPU, bellek ve disk G/Ç kullanımını artırır.
query_timeout 900 sn Geçerli bağlantıdaki tüm sorgu ifadeleri için zaman aşımı. INSERT ifadeleri için bunun yerine insert_timeout kullanın.
insert_timeout 14400 sn INSERT ifadeleri için zaman aşımı. insert_timeout değeri query_timeout değerinden küçükse, query_timeout değeri uygulanır (geriye dönük uyumluluk için).
send_batch_parallelism — INSERT işlemleri sırasında toplu veri gönderimleri için varsayılan eşzamanlılık. BE yapılandırma öğesi max_send_batch_parallelism_per_job ile sınırlıdır.
sql_mode — SQL sözdizimi uyumluluğunu ve veri doğrulama katılığını kontrol eder. Bkz. SQL Mode.
sql_select_limit (sınır yok) SELECT tarafından döndürülen varsayılan maksimum satır sayısı; INSERT içindeki SELECT dahil.
time_zone system_time_zone değeri Geçerli oturumun saat dilimi. Zaman işlevi sonuçlarını etkiler. Bkz. Saat dilimi değişkenleri.
wait_timeout 28800 sn (8 sa) Boşta kalan bağlantı zaman aşımı. ApsaraDB for SelectDB, bu süreden daha uzun süre boşta kalan bağlantıları kapatır.
default_rowset_type beta Hesaplama düğümleri için varsayılan depolama formatı. Geçerli değerler: alpha, beta.
use_v2_rollup — Sorguların Segment V2 formatındaki ROLLUP dizinlerini kullanıp kullanmayacağını kontrol eder. Segment V2 geçişi sırasında doğrulama için kullanılır.
prefer_join_method — Broadcast Join ve Shuffle Join'in maliyeti eşit olduğunda tercih edilen join yöntemi. Geçerli değerler: broadcast, shuffle.
insert_visible_timeout_ms 10000 ms ApsaraDB for SelectDB'nin bir INSERT tamamlandıktan sonra işlemin commit edilmesini ve verilerin görünür hale gelmesini beklediği süre. Minimum değer: 1000 ms.
cpu_resource_limit -1 (sınır yok) Bir sorgunun tek bir düğümde kullanabileceği tarama iş parçacığı sayısını sınırlar. parallel_fragment_exec_instance_num değerini geçersiz kılar. cpu_resource_limit kullanıcı özelliği tarafından geçersiz kılınır. Bu özellik deneyseldir.
return_object_data_as_binary — true olduğunda, SELECT sonuçlarında bitmap ve HLL verilerini ikili format olarak döndürür. SELECT INTO OUTFILE için CSV çıktısı Base64 olarak kodlanır; Parquet çıktısı bir bayt dizisi olarak depolanır. Java'da örnek: stmt.execute("set return_object_data_as_binary=true");. Daha fazla bilgi için bkz. samples.
block_encryption_mode NULL Blok şifreleme modu. AES_128_ECB Advanced Encryption Standard (AES) algoritmasını kullanır. SM4_128_ECB ShangMi 4 (SM4) algoritmasını kullanır. Desteklenen modların tam listesi için değişken açıklamasına bakın.
default_password_lifetime 0 (asla sona ermez) Gün cinsinden varsayılan parola sona erme süresi. Yalnızca PASSWORD_EXPIRE DEFAULT ilkesine sahip kullanıcılar için geçerlidir.
password_history 0 (sınır yok) Saklanan önceki parolaların sayısı. Yalnızca PASSWORD_HISTORY DEFAULT ilkesine sahip kullanıcılar için geçerlidir.
validate_password_policy NONE (0) Parola gücü ilkesi. STRONG (2), en az 8 karakterden oluşan ve büyük harfler, küçük harfler, rakamlar ve özel karakterlerden (~ ! @ # $ % ^ & * ( ) _ + | < > , . ? / : ; ' [ ] { } ") en az 3'ünü içeren parolalar gerektirir.
rewrite_or_to_in_predicate_threshold 2 OR operatörlerinin IN yüklemine yeniden yazılmadan önceki minimum sayısı.
file_cache_base_path rastgele BE'deki blok dosya önbelleği için depolama yolu. BE yapılandırmasından rastgele seçilen bir yola varsayılan olarak ayarlanır.
topn_opt_limit_threshold 1024 top-N sorgu optimizasyonlarını (dinamik filtreleme, iki aşamalı sonuç alma, anahtar sıralı okuma) etkinleştirmek için LIMIT yan tümcesi eşiği. Optimizasyonlar n <= threshold olduğunda uygulanır.
use_fix_replica -1 (devre dışı) 0 veya daha yüksek bir değere ayarlandığında, her zaman o seri numarası rütbesine sahip çoğaltmayı kullanır (0 = en küçük).

Uyumlu ve ayrılmış değişkenler

Bu değişkenlerin ApsaraDB for SelectDB'de işlevsel bir etkisi yoktur. MySQL istemcileri veya JDBC bağlantı havuzlarıyla uyumluluk için mevcutturlar.

Değişken Amaç
SQL_AUTO_IS_NULL c3p0 JDBC bağlantı havuzuyla uyumluluk.
auto_increment_increment MySQL istemci uyumluluğu. Otomatik artan sütun davranışını etkilemez.
auto_increment_offset MySQL istemci uyumluluğu. Otomatik artan sütun davranışını etkilemez.
autocommit MySQL istemci uyumluluğu.
character_set_client MySQL istemci uyumluluğu.
character_set_connection MySQL istemci uyumluluğu.
character_set_results MySQL istemci uyumluluğu.
character_set_server MySQL istemci uyumluluğu.
collation_connection MySQL istemci uyumluluğu.
collation_database MySQL istemci uyumluluğu.
collation_server MySQL istemci uyumluluğu.
have_query_cache MySQL istemci uyumluluğu.
init_connect MySQL istemci uyumluluğu.
interactive_timeout MySQL istemci uyumluluğu.
language MySQL istemci uyumluluğu.
max_allowed_packet c3p0 JDBC bağlantı havuzuyla uyumluluk.
net_buffer_length MySQL istemci uyumluluğu.
net_read_timeout MySQL istemci uyumluluğu.
net_write_timeout MySQL istemci uyumluluğu.
query_cache_size MySQL istemci uyumluluğu.
query_cache_type c3p0 JDBC bağlantı havuzuyla uyumluluk.
sql_safe_updates MySQL istemci uyumluluğu.
tx_isolation MySQL istemci uyumluluğu.
tx_read_only MySQL istemci uyumluluğu.
transaction_read_only MySQL istemci uyumluluğu.
transaction_isolation MySQL istemci uyumluluğu.
version MySQL istemci uyumluluğu.
performance_schema MySQL JDBC 8.0.16 ve sonraki sürümlerle uyumluluk.
codegen_level LLVM codegen düzeyini ayarlar. Etkisi yoktur.
license ApsaraDB for SelectDB lisansını görüntüler.
resource_group Ayrılmış.
system_time_zone Küme başlatma sırasında sistem saat dilimine ayarlanır. Değiştirilemez.
version_comment ApsaraDB for SelectDB sürümünü görüntüler. Değiştirilemez.
dump_nereids_memo Gerileme testi için kullanılır.
group_concat_max_len Bazı iş zekası (BI) araçlarıyla uyumluluk.
be_number_for_test Pratik bir etkisi yoktur.
workload_group Ayrılmış.

Başvurular