mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-22 23:52:03 +00:00
123 KiB
123 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | e8cd92bba3 |
78 | 2018 |
ClickHouse sürümü 18.16
ClickHouse sürümü 18.16.1, 2018-12-21
Hata düzeltmeleri:
- ODBC kaynağı ile sözlükleri güncelleme ile ilgili sorunlara yol açan bir hata düzeltildi. #3825, #3829
- Toplama işlevlerinin JIT derlemesi artık LowCardinality sütunlarıyla çalışır. #3838
Geliştirmeler:
- Add theed the
low_cardinality_allow_in_native_format
ayar (varsayılan: etkin). Devre dışı bırakıldığında, LOWCARDİNALİTY sütunları, SELECT sorguları için sıradan sütunlara dönüştürülür ve INSERT sorguları için sıradan sütunlar beklenir. #3879
İyileştirmeler oluşturun:
- MacOS ve ARM üzerine inşa için düzeltmeler.
ClickHouse yayın 18.16.0, 2018-12-14
Yenilik:
DEFAULT
ifadeler, yarı yapılandırılmış giriş biçimlerinde veri yüklenirken eksik alanlar için değerlendirilir (JSONEachRow
,TSKV
). Özelliği ile etkininsert_sample_with_metadata
ayar. #3555- Bu
ALTER TABLE
sorgu şimdi varMODIFY ORDER BY
bir tablo sütunu eklerken veya kaldırırken sıralama anahtarını değiştirme eylemi. Bu tablolar için yararlıdırMergeTree
bu sıralama anahtarına dayalı olarak birleştirilirken ek görevler gerçekleştiren aileSummingMergeTree
,AggregatingMergeTree
ve bu yüzden. #3581 #3755 - Tablolar için
MergeTree
aile, şimdi farklı bir sıralama anahtarı belirtebilirsiniz (ORDER BY
ve dizin (PRIMARY KEY
). Sıralama anahtarı dizin daha uzun olabilir. #3581 - Add theed the
hdfs
tablo fonksiyonu veHDFS
hdfs'ye veri içe ve dışa aktarmak için tablo motoru. chenxing-xc - Base64 ile çalışmak için fonksiyonlar eklendi:
base64Encode
,base64Decode
,tryBase64Decode
. Alexander Krasheninnikov - Şimdi hassasiyetini yapılandırmak için bir parametre kullanabilirsiniz
uniqCombined
toplama işlevi (HyperLogLog hücrelerinin sayısını seçin). #3406 - Add theed the
system.contributors
ClickHouse taahhüt yapılan herkesin adlarını içeren tablo. #3452 - Bölüm için ihmal yeteneği eklendi
ALTER TABLE ... FREEZE
tüm bölümleri bir kerede yedeklemek için sorgu. #3514 - Katma
dictGet
vedictGetOrDefault
dönüş değeri türünü belirtmeyi gerektirmeyen işlevler. Tür sözlük açıklamasından otomatik olarak belirlenir. Amos Kuşu - Şimdi tablo açıklamasında bir sütun için yorum belirtmek ve kullanarak değiştirebilirsiniz
ALTER
. #3377 - Okuma için desteklenir
Join
basit tuşlarla tabloları yazın. Amos Kuşu - Şimdi seçenekleri belirtebilirsiniz
join_use_nulls
,max_rows_in_join
,max_bytes_in_join
, vejoin_overflow_mode
oluştururken birJoin
tablo yazın. Amos Kuşu - Add theed the
joinGet
kullan allowsmanıza olanak sağlayan bir işlevJoin
bir sözlük gibi tablo yazın. Amos Kuşu - Add theed the
partition_key
,sorting_key
,primary_key
, vesampling_key
Col theum thens to thesystem.tables
tablo tuşları hakkında bilgi vermek için tablo. #3609 - Add theed the
is_in_partition_key
,is_in_sorting_key
,is_in_primary_key
, veis_in_sampling_key
Col theum thens to thesystem.columns
Tablo. #3609 - Add theed the
min_time
vemax_time
Col theum thens to thesystem.parts
Tablo. Bölümleme anahtarı aşağıdakilerden oluşan bir ifade olduğunda bu sütunlar doldurulurDateTime
sütun. Emmanuel Donin de Rosière
Hata düzeltmeleri:
- Düzeltmeler ve performans iyileştirmeleri için
LowCardinality
veri türü.GROUP BY
kullanımLowCardinality(Nullable(...))
. Değerlerini almakextremes
. Yüksek mertebeden fonksiyonların işlenmesi.LEFT ARRAY JOIN
. DağılıGROUP BY
. Dönen işlevlerArray
. YürütmeORDER BY
. YazmaDistributed
tablolar (nicelulu). Geriye dönük uyumluluk içinINSERT
uygulayan eski istemcilerden gelen sorgularNative
protokol. İçin destekLowCardinality
içinJOIN
. Tek bir akışta çalışırken geliştirilmiş performans. #3823 #3803 #3799 #3769 #3744 #3681 #3651 #3649 #3641 #3632 #3568 #3523 #3518 - Sabit nasıl
select_sequential_consistency
seçenek çalışır. Daha önce, bu ayar etkinleştirildiğinde, bazen yeni bir bölüme yazmaya başladıktan sonra tamamlanmamış bir sonuç döndürüldü. #2863 - DDL yürütülürken veritabanları doğru belirtilir
ON CLUSTER
sorgular veALTER UPDATE/DELETE
. #3772 #3460 - Veritabanları doğru bir görünüm içinde alt sorgular için belirtilir. #3521
- Bir hata düzeltildi
PREWHERE
ileFINAL
içinVersionedCollapsingMergeTree
. 7167bfd7 - Şimdi kullanabilirsiniz
KILL QUERY
henüz başlatılmamış olan sorguları iptal etmek için, tablonun kilitlenmesini bekliyorlar. #3517 - Saatlerin gece yarısı geri hareket ettirilmesi durumunda düzeltilmiş tarih ve saat hesaplamaları (bu İran'da olur ve Moskova'da 1981'den 1983'e kadar olur). Önceden, bu, gerekenden bir gün önce sıfırlanma süresine yol açtı ve ayrıca tarih ve saatin metin biçiminde yanlış biçimlendirilmesine neden oldu. #3819
- Bazı durumlarda sabit hatalar
VIEW
ve veritabanını atlayan alt sorgular. Kış Zhang - Aynı anda bir yarıştan okurken bir yarış durumu düzeltildi
MATERIALIZED VIEW
ve Silme birMATERIALIZED VIEW
nedeniyle değil kilitleme içMATERIALIZED VIEW
. #3404 #3694 - Hata düzeltildi
Lock handler cannot be nullptr.
#3689 - Sabit sorgu işleme zaman
compile_expressions
seçenek etkindir (varsayılan olarak etkindir). Gibi Nondeterministic sabit ifadelernow
işlev artık açılmıyor. #3457 - Sabit olmayan bir ölçek argümanı belirtilirken bir kilitlenme düzeltildi
toDecimal32/64/128
işlevler. - Bir dizi eklemeye çalışırken bir hata düzeltildi
NULL
element inlerValues
bir sütuna Biçimlendir türüArray
olarakNullable
(eğerinput_format_values_interpret_expressions
= 1). #3487 #3503 - Sabit sürekli hata günlüğü
DDLWorker
ZooKeeper mevcut değilse. 8f50c620 - Sabit dönüş türü için
quantile*
gelen fonksiyonlarDate
veDateTime
argüman türleri. #3580 - Sabit
WITH
Ifade olmadan basit bir takma ad belirtirse yan tümcesi. #3570 - Adlandırılmış alt sorgular ve nitelikli sütun adları ile sorguların sabit işleme
enable_optimize_predicate_expression
etkindir. Kış Zhang - Hata düzeltildi
Attempt to attach to nullptr thread group
maddi görüşlerle çalışırken. Marek Vavruša - Belirli yanlış argümanları iletirken bir kilitlenme düzeltildi
arrayReverse
işlev. 73e3a7b6 - Tampon taş theması Düzelt theildi
extractURLParameter
işlev. Geliştirilmiş performans. Sıfır bayt içeren dizelerin doğru işlenmesi eklendi. 141e9799 - Sabit tampon taşması
lowerUTF8
veupperUTF8
işlevler. Üzerinde bu işlevleri yürütmek için yeteneği kaldırıldıFixedString
bağımsız değişkenleri yazın. #3662 - Silerken nadir bir yarış durumu düzeltildi
MergeTree
Tablolar. #3680 - Okuma sırasında bir yarış durumu düzeltildi
Buffer
tablolar ve aynı anda performansALTER
veyaDROP
hedef masalarda. #3719 - Sabit bir segfault eğer
max_temporary_non_const_columns
sınır aşıldı. #3788
Geliştirmeler:
- Sunucu için işlenmiş yapılandırma dosyalarını yazmaz
/etc/clickhouse-server/
dizin. Bunun yerine, onları kaydederpreprocessed_configs
içindeki dizinpath
. Bu demektir/etc/clickhouse-server/
dizin için yazma erişimi yokclickhouse
güvenliği artıran kullanıcı. #2443 - Bu
min_merge_bytes_to_use_direct_io
seçenek varsayılan olarak 10 GiB olarak ayarlanır. Mergetree ailesinden tabloların büyük bölümlerini oluşturan bir birleştirme gerçekleştirilirO_DIRECT
aşırı sayfa önbellek tahliyesini önleyen mod. #3504 - Hızlandırılmış sunucu, çok sayıda tablo olduğunda başlar. #3398
- Bir bağlantı havuzu ve HTTP eklendi
Keep-Alive
yinelemeler arasındaki bağlantılar için. #3594 - Sorgu sözdizimi geçersiz ise,
400 Bad Request
kod iade edilirHTTP
arabirim (500 daha önce iade edildi). 31bc680a - Bu
join_default_strictness
option is set toALL
uyumluluk için varsayılan olarak. 120e2cbe - Kaldırılan günlüğü
stderr
şuradanre2
geçersiz veya karmaşık düzenli ifadeler için kütüphane. #3723 - İçin eklendi
Kafka
tablo altyapısı: kafka'dan okumaya başlamadan önce abonelikleri denetler; tablo için kafka_max_block_size ayarı. Marek Vavruša - Bu
cityHash64
,farmHash64
,metroHash64
,sipHash64
,halfMD5
,murmurHash2_32
,murmurHash2_64
,murmurHash3_32
, vemurmurHash3_64
işlevler artık herhangi bir sayıda bağımsız değişken ve bağımsız değişkenler için tuples şeklinde çalışır. #3451 #3519 - Bu
arrayReverse
işlev artık herhangi bir dizi türü ile çalışır. 73e3a7b6 - İsteğe bağlı bir parametre eklendi: yuva boyutu için
timeSlots
işlev. Kirill Shvakov - İçin
FULL
veRIGHT JOIN
, bumax_block_size
ayar, sağ tablodan birleştirilmemiş veri akışı için kullanılır. Amos Kuşu - Add theed the
--secure
komut satırı parametresiclickhouse-benchmark
veclickhouse-performance-test
TLS'Yİ etkinleştirmek için. #3688 #3690 - Tür dönüştürme zaman yapısı bir
Buffer
tür tablo hedef tablonun yapısıyla eşleşmiyor. Vitaly Baranov - Add theed the
tcp_keep_alive_timeout
belirtilen zaman aralığı için hareketsizlikten sonra canlı tutma paketlerini etkinleştirme seçeneği. #3441 - Bölüm anahtarı için değerlerin gereksiz alıntı kaldırıldı
system.parts
tablo tek bir sütundan oluşuyorsa. #3652 - Modulo fonksiyonu için çalışır
Date
veDateTime
veri türleri. #3385 - İçin eş anlamlı eklendi
POWER
,LN
,LCASE
,UCASE
,REPLACE
,LOCATE
,SUBSTR
, veMID
işlevler. #3774 #3763 Bazı işlev adları, SQL standardı ile uyumluluk için büyük / küçük harf duyarsızdır. Sözdizimsel şeker eklendiSUBSTRING(expr FROM start FOR length)
SQL ile uyumluluk için. #3804 - Yeteneği eklendi
mlock
karşılık gelen bellek sayfalarıclickhouse-server
bellek yetersiz zorla önlemek için yürütülebilir kod. Bu özellik varsayılan olarak devre dışıdır. #3553 - Okuma sırasında geliştirilmiş performans
O_DIRECT
(ilemin_bytes_to_use_direct_io
seçeneği etkin). #3405 - Geliştirilmiş performans
dictGet...OrDefault
sabit anahtar bağımsız değişkeni ve sabit olmayan bir varsayılan bağımsız değişken için işlev. Amos Kuşu - Bu
firstSignificantSubdomain
işlev artık etki alanlarını işlergov
,mil
, veedu
. Igor Hatarist Geliştirilmiş performans. #3628 - Başlangıç için özel ortam değişkenlerini belirleme yeteneği
clickhouse-server
kullanarakSYS-V init.d
tanım bylayarak scriptCLICKHOUSE_PROGRAM_ENV
içinde/etc/default/clickhouse
. Pavlo Bashynskyi - Clickhouse-server init komut dosyası için doğru dönüş kodu. #3516
- Bu
system.metrics
tablo şimdi varVersionInteger
metr andik vesystem.build_options
eklenen satır varVERSION_INTEGER
, ClickHouse sürümünün sayısal formunu içeren, örneğin18016000
. #3644 - Karşılaştırma yeteneği kaldırıldı
Date
gibi olası hataları önlemek için bir sayı ile yazındate = 2018-12-17
, tarih etrafında tırnak yanlışlıkla ihmal nerede. #3687 - Durumsal işlevlerin davranışı gibi düzeltildi
rowNumberInAllBlocks
. Daha önce sorgu analizi sırasında başlatma nedeniyle bir sayı daha büyük olan bir sonuç çıkardılar. Amos Kuşu - Eğer...
force_restore_data
dosya silinemez, bir hata mesajı görüntülenir. Amos Kuşu
İyileştirmeler oluşturun:
- Güncelleme
jemalloc
olası bir bellek sızıntısını gideren kitaplık. Amos Kuşu - İle profil profilingleme
jemalloc
hata ayıklama yapıları için varsayılan olarak etkindir. 2cc82f5c - Yalnızca entegrasyon testlerini çalıştırma yeteneği eklendi
Docker
sistemde yüklü. #3650 - Select sorgularında fuzz ifade testi eklendi. #3442
- Daha fazla yarış koşullarını tespit etmek için paralel ve rastgele sırayla fonksiyonel testler gerçekleştiren taahhütler için bir stres testi eklendi. #3438
- Bir Docker görüntüsünde clickhouse-server başlatmak için yöntem geliştirildi. Elghazal Ahmed
- Bir Docker görüntüsü için, dosyaları kullanarak veritabanlarını başlatmak için destek eklendi
/docker-entrypoint-initdb.d
dizin. Konstantin Lebedev - Arm üzerine inşa için düzeltmeler. #3709
Geriye dönük uyumsuz değişiklikler:
- Karşılaştırma yeteneği kaldırıldı
Date
bir sayı ile yazın. YerinetoDate('2018-12-18') = 17883
, açık tür dönüştürme kullanmanız gerekir= toDate(17883)
#3687
ClickHouse sürümü 18.14
ClickHouse yayın 18.14.19, 2018-12-19
Hata düzeltmeleri:
- ODBC kaynağı ile sözlükleri güncelleme ile ilgili sorunlara yol açan bir hata düzeltildi. #3825, #3829
- DDL yürütülürken veritabanları doğru belirtilir
ON CLUSTER
sorgular. #3460 - Sabit bir segfault eğer
max_temporary_non_const_columns
sınır aşıldı. #3788
İyileştirmeler oluşturun:
- Arm üzerine inşa için düzeltmeler.
ClickHouse yayın 18.14.18, 2018-12-04
Hata düzeltmeleri:
- Sabit hata
dictGet...
tip sözlükler için işlevrange
, argümanlardan biri sabit ve diğeri değilse. #3751 - Mesajlara neden olan Sabit hata
netlink: '...': attribute type 1 has an invalid length
Linux çekirdeği günlüğüne yazdırılmak üzere, bu sadece Linux çekirdeğinin yeterince taze sürümlerinde gerçekleşiyordu. #3749 - Fonksiyon sabit segfault
empty
argüman içinFixedString
tür. Daniel, Dao Quang Minh. - Büyük bir değer kullanırken sabit aşırı bellek ayırma
max_query_size
ayar (bir bellek yığınımax_query_size
bayt bir kerede önceden tahsis edildi). #3720
Yapı değişiklikleri:
- OS paketlerinden sürüm 7 LLVM/Clang kütüphaneleri ile sabit yapı (bu kütüphaneler çalışma zamanı sorgu derleme için kullanılır). #3582
ClickHouse yayın 18.14.17, 2018-11-30
Hata düzeltmeleri:
- ODBC köprü işlemi ana sunucu işlemi ile sonlandırmak değil sabit durumlar. #3642
- Sabit senkron ekleme içine
Distributed
uzak tablonun sütun listesinden farklı bir sütun listesi içeren tablo. #3673 - Bir MergeTree tablosunu düşürürken bir kazaya yol açabilecek nadir bir yarış durumu düzeltildi. #3643
- Sorgu iş parçacığı oluşturma ile başarısız olduğunda bir sorgu kilitlenme düzeltildi
Resource temporarily unavailable
hatasız. #3643 - Sabit ayrıştırma
ENGINE
fık thera ne zamanCREATE AS table
sözdizimi kullanıldı veENGINE
fık thera daha önce belirt theilmiştiAS table
(hata, belirtilen motoru yok saymakla sonuçlandı). #3692
ClickHouse yayın 18.14.15, 2018-11-21
Hata düzeltmeleri:
- Bellek yığınının boyutu, türün sütununu seri hale getirirken fazla tahmin edildi
Array(String)
bu yol açar “Memory limit exceeded” hatasızlar. Sorun 18.12.13 sürümünde ortaya çıktı. #3589
ClickHouse yayın 18.14.14, 2018-11-20
Hata düzeltmeleri:
- Sabit
ON CLUSTER
küme güvenli (bayrak) olarak yapılandırıldığında sorgular<secure>
). #3599
Yapı değişiklikleri:
- Sabit sorunlar (sistemden llvm-7, macos) #3582
ClickHouse yayın 18.14.13, 2018-11-08
Hata düzeltmeleri:
- Sabit
Block structure mismatch in MergingSorted stream
hatasız. #3162 - Sabit
ON CLUSTER
küme yapılandırmasında güvenli bağlantıların açık olması durumunda sorgular (<secure>
bayrak). #3465 - Kullanılan sorgularda bir hata düzeltildi
SAMPLE
,PREWHERE
ve alias sütunları. #3543 - Sabit bir nadir
unknown compression method
hata ne zamanmin_bytes_to_use_direct_io
ayar etkinleştirildi. 3544
Performans iyileştirmeleri:
- Sorguların sabit performans gerilemesi
GROUP BY
AMD EPYC işlemciler üzerinde yürütülürken uint16 veya tarih türü sütunların. Igor Lapko - Uzun dizeleri işleyen sorguların sabit performans gerilemesi. #3530
İyileştirmeler oluşturun:
ClickHouse yayın 18.14.12, 2018-11-02
Hata düzeltmeleri:
- İki isimsiz alt sorgu katılmadan bir kilitlenme düzeltildi. #3505
- Hatalı sorgular oluşturma sabit (boş
WHERE
yan tümcesi) dış veritabanlarını sorgularken. hotid - ODBC sözlüklerinde yanlış bir zaman aşımı değeri kullanılarak düzeltildi. Marek Vavruša
ClickHouse yayın 18.14.11, 2018-10-29
Hata düzeltmeleri:
- Hata düzeltildi
Block structure mismatch in UNION stream: different number of columns
sınır sorgularında. #2156 - İç içe geçmiş yapılar içinde diziler içeren tablolarda veri birleştirirken sabit hatalar. #3397
- Sabit yanlış sorgu sonuçları eğer
merge_tree_uniform_read_distribution
ayar devre dışı (varsayılan: etkin). #3429 - Yerel formatta dağıtılmış bir tabloya ekler üzerinde bir hata düzeltildi. #3411
ClickHouse yayın 18.14.10, 2018-10-23
- Bu
compile_expressions
ayar (ifadelerin JIT derlemesi) varsayılan olarak devre dışıdır. #3410 - Bu
enable_optimize_predicate_expression
ayar varsayılan olarak devre dışıdır.
ClickHouse yayın 18.14.9, 2018-10-16
Yenilik:
- Bu
WITH CUBE
değiştirici içinGROUP BY
(alternatif sözdizimiGROUP BY CUBE(...)
ayrıca kullanılabilir) vardır. #3172 - Add theed the
formatDateTime
işlev. Alexandr Krasheninnikov - Add theed the
JDBC
masa motoru vejdbc
tablo işlevi (clickhouse-jdbc-bridge yüklenmesini gerektirir). Alexandr Krasheninnikov - ISO hafta numarası ile çalışmak için fonksiyonlar eklendi:
toISOWeek
,toISOYear
,toStartOfISOYear
, vetoDayOfYear
. #3146 - Şimdi kullanabilirsiniz
Nullable
Col forum forns forMySQL
veODBC
Tablolar. #3362 - İç içe geçmiş veri yapıları, iç içe geçmiş nesneler olarak okunabilir
JSONEachRow
biçimli. Add theed theinput_format_import_nested_json
ayar. Veloman Yunkan - Paralel işleme birçok kişi için kullanılabilir
MATERIALIZED VIEW
s veri eklerken. Görmekparallel_view_processing
ayar. Marek Vavruša - Add theed the
SYSTEM FLUSH LOGS
sorgu (sistem tablolarına zorla günlük basması gibiquery_log
) #3321 - Şimdi önceden tanımlanmış kullanabilirsiniz
database
vetable
bildirirken makrolarReplicated
Tablolar. #3251 - Okuma yeteneği eklendi
Decimal
mühendislik notasyonunda değerleri yazın (on yetkilerini gösterir). #3153
Deneysel özellikler:
- GROUP BY CLA clauseuse for
LowCardinality data types.
#3138 - İçin ifadelerin optimize hesaplama
LowCardinality data types.
#3200
Geliştirmeler:
- İle sorgular için önemli ölçüde azaltılmış bellek tüketimi
ORDER BY
veLIMIT
. Görmekmax_bytes_before_remerge_sort
ayar. #3205 - Yokluğ theunda
JOIN
(LEFT
,INNER
, …),INNER JOIN
kabul edilir. #3147 - Nitelikli yıldız işaretleri ile sorgularda düzgün çalışır
JOIN
. Kış Zhang - Bu
ODBC
table engine doğru bir uzak veritabanı SQL lehçesinde tanımlayıcıları alıntı yöntemi seçer. Alexandr Krasheninnikov - Bu
compile_expressions
ayar (ifadelerin JIT derlemesi) varsayılan olarak etkindir. - Varsa eşzamanlı damla veritabanı/tablo için sabit davranış ve varsa veritabanı/tablo oluşturun. Daha önce, bir
CREATE DATABASE ... IF NOT EXISTS
sorgu hata iletisi döndürebilir “File … already exists” veCREATE TABLE ... IF NOT EXISTS
veDROP TABLE IF EXISTS
sorgular dönebilirTable ... is creating or attaching right now
. #3101 - MySQL veya ODBC tablolarından sorgularken sabit bir sağ yarıya sahip ifadelerde ve ifadelerde uzak sunucuya geçirilir. #3182
- MySQL ve ODBC tablolarından sorgularken bir WHERE yan tümcesinde sabit ifadelerle karşılaştırmalar uzak sunucuya geçirilir. Önceden, sadece sabitler ile karşılaştırmalar geçirildi. #3182
- Terminalde satır genişliğinin doğru hesaplanması
Pretty
hiyeroglifli dizeler de dahil olmak üzere formatlar. Amos Kuşu. ON CLUSTER
için belirt forilebilirALTER UPDATE
sorgular.- Verileri okumak için geliştirilmiş performans
JSONEachRow
biçimli. #3332 - İçin eş anlamlı eklendi
LENGTH
veCHARACTER_LENGTH
uyumluluk için fonksiyonlar. BuCONCAT
işlev artık büyük / küçük harfe duyarlı değildir. #3306 - Add theed the
TIMESTAMP
eşanlamlıDateTime
tür. #3390 - Günlük satırı bir sorgu ile ilişkili olmasa bile, sunucu günlüklerinde query_id için ayrılmış alan her zaman vardır. Bu, sunucu metin günlüklerini üçüncü taraf araçlarla Ayrıştırmayı kolaylaştırır.
- Gigabayt bir tamsayı sonraki düzeyini aştığında, bir sorgu tarafından bellek tüketimi kaydedilir. #3205
- Yerel protokolü kullanan istemci kitaplığı sunucu ekleme sorgusu için beklediğinden daha az sütun yanlışlıkla gönderdiğinde durum için uyumluluk modu eklendi. Bu senaryo, clickhouse-cpp kitaplığını kullanırken mümkün oldu. Daha önce, bu senaryo sunucunun çökmesine neden oldu. #3171
- Kullanıcı tanımlı bir ifade içinde
clickhouse-copier
şimdi kullanabilirsinizpartition_key
alias (kaynak tablo bölümüne göre ek filtreleme için). Bu, bölümleme şeması kopyalama sırasında değişirse, ancak yalnızca biraz değişirse yararlıdır. #3166 - Bu iş akışı
Kafka
motor, yüksek yüklerde veri okuma hızını otomatik olarak azaltmak için bir arka plan iş parçacığı havuzuna taşındı. Marek Vavruša. - Okuma desteği
Tuple
veNested
gibi yapıların değerleristruct
in theCap'n'Proto format
. Marek Vavruša - İçin en üst düzey etki alanlarının listesi
firstSignificantSubdomain
işlev artık etki alanını içerirbiz
. decaseal - Dış sözlüklerin yapılandırmasında,
null_value
varsayılan veri türü değeri olarak yorumlanır. #3330 - İçin destek
intDiv
veintDivOrZero
fonksiyonlar içinDecimal
. b48402e8 - İçin destek
Date
,DateTime
,UUID
, veDecimal
anahtar olarak türlerisumMap
toplama işlevi. #3281 - İçin destek
Decimal
harici sözlüklerde veri türü. #3324 - İçin destek
Decimal
veri türüSummingMergeTree
Tablolar. #3348 - İçin uzmanlık eklendi
UUID
içindeif
. #3366 - Sayısı azal thedı
open
veclose
bir gelen okurken sistem çağrılarıMergeTree table
. #3283 - A
TRUNCATE TABLE
sorgu (sorgu için lider yineleme geçirilir) herhangi bir yineleme üzerinde çalıştırılabilir. Kirill Shvakov
Hata düzeltmeleri:
- İle bir sorun düzeltildi
Dictionary
için tablolarrange_hashed
sözlükler. Bu hata 18.12.17 sürümünde oluştu. #1702 - Yüklerken bir hata düzeltildi
range_hashed
söz dictionarieslükler (mesajUnsupported type Nullable (...)
). Bu hata 18.12.17 sürümünde oluştu. #3362 - Sabit hatalar
pointInPolygon
birbirine yakın bulunan çok sayıda köşe ile çokgenler için yanlış hesaplamaların birikmesi nedeniyle işlev. #3331 #3341 - Veri parçalarını birleştirdikten sonra, elde edilen parçanın sağlama toplamı, başka bir kopyadaki aynı birleştirme sonucundan farklıysa, birleştirme sonucu silinir ve veri kısmı diğer kopyadan indirilir (bu doğru davranıştır). Ancak, veri bölümünü indirdikten sonra, parçanın zaten var olduğu bir hata nedeniyle çalışma kümesine eklenemedi(çünkü veri kısmı birleşmeden sonra bir miktar gecikmeyle silindi). Bu, aynı verileri indirmek için döngüsel girişimlere yol açtı. #3194
- Sorgularla toplam bellek tüketiminin yanlış hesaplanması düzeltildi (yanlış hesaplama nedeniyle,
max_memory_usage_for_all_queries
ayar yanlış çalıştı veMemoryTracking
metrik yanlış bir değere sahipti). Bu hata, 18.12.13 sürümünde oluştu. Marek Vavruša - İşlevselliğini sabit
CREATE TABLE ... ON CLUSTER ... AS SELECT ...
Bu hata, 18.12.13 sürümünde oluştu. #3247 - İçin veri yapılarının sabit gereksiz hazırlanması
JOIN
eğer sorgu başlatan sunucuda sJOIN
yalnızca uzak sunucularda gerçekleştirilir. #3340 - Sabit hatalar
Kafka
motor: verileri okumaya başladığınızda istisnalardan sonra kilitlenmeler ve tamamlandıktan sonra kilitler Marek Vavruša. - İçin
Kafka
tablolar, isteğe bağlıschema
parametre geç notilm (edi (şemaCap'n'Proto
biçimli). Vojtech Splichal - ZooKeeper sunucularının topluluğu, bağlantıyı kabul eden ancak el sıkışmaya yanıt vermek yerine hemen kapatan sunuculara sahipse, ClickHouse başka bir sunucuya bağlanmayı seçer. Daha önce, bu hata üretti
Cannot read all data. Bytes read: 0. Bytes expected: 4.
ve sunucu başlatılamadı. 8218cf3a - Zookeeper sunucularının topluluğu, DNS sorgusunun bir hata döndürdüğü sunucular içeriyorsa, bu sunucular yoksayılır. 17b8e209
- Arasında sabit tip dönüşüm
Date
veDateTime
veri eklerkenVALUES
biçim (eğerinput_format_values_interpret_expressions = 1
). Daha önce, dönüşüm Unix dönem zamanındaki gün sayısının sayısal değeri ile Unix zaman damgası arasında gerçekleştirildi ve bu da beklenmedik sonuçlara yol açtı. #3229 - Arasında düzeltilmiş tip dönüşümü
Decimal
ve tam sayı. #3211 - Sabit hatalar
enable_optimize_predicate_expression
ayar. Kış Zhang - Varsayılan olmayan bir CSV ayırıcı kullanılıyorsa, kayan noktalı sayılarla CSV formatında bir ayrıştırma hatası düzeltildi
;
#3155 - Sabit
arrayCumSumNonNegative
fonksiyon (akümülatör sıfırdan az ise negatif değerler biriktirmez). Aleksey Studnev - Sabit nasıl
Merge
tablolar üstünde çalışırDistributed
kullanırken tablolarPREWHERE
. #3165 - Hata düzeltmeleri
ALTER UPDATE
sorgu. - Sabit hatalar
odbc
18.12 sürümünde görünen tablo işlevi. #3197 - İle toplama fonksiyon operationlarının çalışmasını sabit
StateArray
birleştiriciler. #3188 - Bir bölme sırasında bir kilitlenme düzeltildi
Decimal
sıfır değeri. 69dd6609 - Kullanarak işlemler için sabit çıktı türleri
Decimal
ve tamsayı argümanları. #3224 - Sırasında segfault sabit
GROUP BY
üzerindeDecimal128
. 3359ba06 - Bu
log_query_threads
ayar (sorgu yürütme her iş parçacığı hakkında bilgi günlüğe kaydetme) şimdi yalnızcalog_queries
(sorgularla ilgili bilgileri günlüğe kaydetme) seçeneği 1 olarak ayarlanır. Sin thece thelog_query_threads
seçenek varsayılan olarak etkindir, sorgu günlüğü devre dışı bırakılmış olsa bile iş parçacıkları hakkında bilgi daha önce günlüğe kaydedildi. #3241 - Quantiles toplama fonksiyonunun dağıtılmış işleminde bir hata düzeltildi (hata mesajı
Not found column quantile...
). 292a8855 - Aynı anda sürüm 18.12.17 sunucuları ve eski sunuculardan oluşan bir küme üzerinde çalışırken uyumluluk sorunu düzeltildi. Hem sabit hem de sabit olmayan uzunluktaki GROUP BY anahtarlarıyla dağıtılmış sorgular için, toplanacak büyük miktarda veri varsa, döndürülen veriler her zaman tam olarak toplanmadı (iki farklı satır aynı toplama anahtarlarını içeriyordu). #3254
- Değiştirmelerin sabit kullanımı
clickhouse-performance-test
, sorgu testte bildirilen değiştirmelerin yalnızca bir kısmını içeriyorsa. #3263 - Kullanırken bir hata düzeltildi
FINAL
ilePREWHERE
. #3298 - Kullanırken bir hata düzeltildi
PREWHERE
sırasında eklenen sütun overların üzerindeALTER
. #3298 - Olmaması için bir çek eklendi
arrayJoin
içinDEFAULT
veMATERIALIZED
ifadeler. Önceden,arrayJoin
veri eklerken bir hataya yol açtı. #3337 - Olmaması için bir çek eklendi
arrayJoin
in aPREWHERE
yan. Daha önce, bu gibi mesajlara yol açtıSize ... doesn't match
veyaUnknown compression method
sorguları yürütürken. #3357 - Değiştirilen optimizasyon ve eşitlik değerlendirmelerinden karşılık gelen ifadeyle zincirler sonra nadir durumlarda ortaya çıkabilecek sabit segfault. liuyimin-bytedance
- İçin küçük düzeltmeler
clickhouse-benchmark
: daha önce, istemci bilgileri sunucuya gönderilmedi; şimdi yürütülen sorguların sayısı kapatılırken ve yineleme sayısını sınırlamak için daha doğru hesaplanır. #3351 #3352
Geriye dönük uyumsuz değişiklikler:
- Kaldır theılan
allow_experimental_decimal_type
seçenek. BuDecimal
veri türü varsayılan kullanım için kullanılabilir. #3329
ClickHouse sürümü 18.12
ClickHouse yayın 18.12.17, 2018-09-16
Yenilik:
invalidate_query
(bir dış sözlük güncelleştirilmesi gerekip gerekmediğini denetlemek için bir sorgu belirtmek için yeteneği)clickhouse
kaynaklı. #3126- Kullanma yeteneği eklendi
UInt*
,Int*
, veDateTime
veri türleri (birlikteDate
type) as arange_hashed
aralıkların sınırlarını tanımlayan dış sözlük anahtarı. ŞimdiNULL
açık bir aralık belirlemek için kullanılabilir. Vasily Nemkov - Bu
Decimal
şimdi yazın desteklervar*
vestddev*
toplama fonksiyonları. #3129 - Bu
Decimal
tip artık matematiksel fonksiyonları destekliyor (exp
,sin
ve böyle devam eder.) #3129 - Bu
system.part_log
tablo şimdi varpartition_id
sütun. #3089
Hata düzeltmeleri:
Merge
şimdi düzgün çalışıyorDistributed
Tablolar. Kış Zhang- Sabit uyumsuzluk (gereksiz bağımlılık
glibc
sürüm) bu Clickhouse'u çalıştırmayı imkansız hale getirdiUbuntu Precise
ve eski sürümleri. Uyumsuzluk 18.12.13 sürümünde ortaya çıktı. #3130 - Sabit hatalar
enable_optimize_predicate_expression
ayar. Kış Zhang - 18.12.13'ten önceki sürümlerde bir kopya kümesiyle çalışırken ve aynı anda daha yeni bir sürüme sahip bir sunucuda bir tablonun yeni bir kopyasını oluştururken ortaya çıkan geriye dönük uyumluluğa sahip küçük bir sorun düzeltildi (mesajda gösterilir
Can not clone replica, because the ... updated to new ClickHouse version
, mantıklı, ama olmamalı). #3122
Geriye dönük uyumsuz değişiklikler:
- Bu
enable_optimize_predicate_expression
seçenek varsayılan olarak etkindir (oldukça iyimser olan). Sütun adları için arama için ilgili sorgu çözümleme hataları oluşursa, ayarlaenable_optimize_predicate_expression
0'a. Kış Zhang
ClickHouse yayın 18.12.14, 2018-09-13
Yenilik:
- İçin destek eklendi
ALTER UPDATE
sorgular. #3035 - Add theed the
allow_ddl
kullanıcının DDL sorgularına erişimini kısıtlayan seçenek. #3104 - Add theed the
min_merge_bytes_to_use_direct_io
seçeneği içinMergeTree
birleştirmenin toplam boyutu için bir eşik ayarlamanıza izin veren motorlar(eşiğin üstünde olduğunda, veri parçası dosyaları o_direct kullanılarak işlenecektir). #3117 - Bu
system.merges
sistem tablosu şimdi içerirpartition_id
sütun. #3099
Geliştirmeler
- Bir veri parçası mutasyon sırasında değişmeden kalırsa, yinelemeler tarafından indirilmez. #3103
- Otomatik tamamlama ile çalışırken ayarların adları için kullanılabilir
clickhouse-client
. #3106
Hata düzeltmeleri:
- Elemanları olan dizilerin boyutları için bir kontrol eklendi
Nested
eklerken alanları yazın. #3118 - İle harici sözlükler güncellenmesi bir hata düzeltildi
ODBC
kaynak vehashed
depolama. Bu hata, 18.12.13 sürümünde oluştu. - Bir sorgudan geçici bir tablo oluştururken bir kilitlenme düzeltildi
IN
koşul. Kış Zhang - Olabilecek diziler için toplam işlevlerde bir hata düzeltildi
NULL
öğeler. Kış Zhang
ClickHouse yayın 18.12.13, 2018-09-10
Yenilik:
- Add theed the
DECIMAL(digits, scale)
veri türü (Decimal32(scale)
,Decimal64(scale)
,Decimal128(scale)
). Etkinleştirmek için ayarı kullanınallow_experimental_decimal_type
. #2846 #2970 #3008 #3047 - Yeni
WITH ROLLUP
değiştirici içinGROUP BY
(alternatif sözdizimi:GROUP BY ROLLUP(...)
). #2948 - JOIN ile sorgularda, yıldız karakteri SQL standardına uygun olarak tüm tablolardaki sütunların bir listesine genişletir. Ayarlayarak eski davranışı geri yükleyebilirsiniz
asterisk_left_columns_only
kullanıcı yapılandırma düzeyinde 1'e. Kış Zhang - Tablo fonksiyonları ile katılmak için destek eklendi. Kış Zhang
- Clickhouse-client sekmesine basarak otomatik tamamlama. Sergey Shcherbin
- CTRL + C clickhouse-client girilen bir sorguyu temizler. #2877
- Add theed the
join_default_strictness
ayar (değerler:"
,'any'
,'all'
). Bu belirtmemenizi sağlarANY
veyaALL
içinJOIN
. #2982 - Sorgu işleme ile ilgili sunucu günlüğünün her satırı sorgu kimliğini gösterir. #2482
- Artık clickhouse-client'da sorgu yürütme günlükleri alabilirsiniz (
send_logs_level
ayar). Dağıtılmış sorgu işleme ile günlükleri tüm sunuculardan basamaklandırılır. #2482 - Bu
system.query_log
vesystem.processes
(SHOW PROCESSLIST
) bir sorgu çalıştırdığınızda tablolar artık tüm değiştirilen ayarları hakkında bilgi var (iç içe geçmiş yapısıSettings
veriler). Add theed thelog_query_settings
ayar. #2482 - Bu
system.query_log
vesystem.processes
tablolar artık sorgu yürütülmesine katılan iş parçacığı sayısı hakkında bilgi gösterir (bkz.thread_numbers
sütun). #2482 - Katma
ProfileEvents
ağ üzerinden okuma ve yazma ve diske okuma ve yazma için harcanan zamanı, ağ hatalarının sayısını ve ağ bant genişliği sınırlı olduğunda bekleyen harcanan zamanı ölçen sayaçlar. #2482 - Katma
ProfileEvents
rusage gelen ((bekle zaman G/Ç hakkında daha fazla bilgi edinmek için bu kullanım, CPU zamanı bekle ve veri miktarını okuma ve kaydedilen, sayfa önbelleği olan ve olmayan) kullanıcı alanı ve çekirdek, sayfa hataları ve bağlam anahtarlarının yanı sıra taskstats ölçülerine CPU kullanımı hakkında bilgi almak için onları kullanabilirsiniz) sistem ölçümlerini içeren sayaçları. #2482 - Bu
ProfileEvents
sayaçlar, genel olarak ve her sorgu için ve ayrıca sorguya göre kaynak tüketimini ayrıntılı olarak profillemenize izin veren her sorgu yürütme iş parçacığı için uygulanır. #2482 - Add theed the
system.query_thread_log
her sorgu yürütme iş parçacığı hakkında bilgi içeren tablo. Add theed thelog_query_threads
ayar. #2482 - Bu
system.metrics
vesystem.events
tablolar artık yerleşik belgelere sahiptir. #3016 - Add theed the
arrayEnumerateDense
işlev. Amos Kuşu - Add theed the
arrayCumSumNonNegative
vearrayDifference
işlevler. Aleksey Studnev - Add theed the
retention
toplama işlevi. Sundy Li - Artık Plus operatörünü kullanarak toplama işlevlerinin durumlarını ekleyebilir (birleştirebilirsiniz) ve toplama işlevlerinin durumlarını negatif olmayan bir sabitle çarpabilirsiniz. #3062 #3034
- Mergetree ailesindeki tablolar artık sanal sütuna sahip
_partition_id
. #3089
Deneysel özellikler:
- Add theed the
LowCardinality(T)
veri türü. Bu veri türü otomatik olarak yerel bir değer sözlüğü oluşturur ve sözlüğü açmadan veri işlemeye izin verir. #2830 - JIT derlenmiş işlevlerin bir önbellek ve derlemeden önce kullanım sayısı için bir sayaç eklendi. JIT derleme ifadeleri için
compile_expressions
ayar. #2990 #3077
Geliştirmeler:
- Terkedilmiş yinelemeler olduğunda çoğaltma günlüğünün sınırsız birikimi ile ilgili sorun giderildi. Uzun bir gecikme ile kopyaları için etkili bir kurtarma modu eklendi.
- Geliştirilmiş performans
GROUP BY
bunlardan biri dize ve diğerleri sabit uzunlukta olduğunda birden fazla toplama alanı ile. - Kullanırken geliştirilmiş performans
PREWHERE
ve ifad ofelerin örtülü olarak aktar ofılmasıylaPREWHERE
. - Metin formatları için geliştirilmiş ayrıştırma performansı (
CSV
,TSV
). Amos Kuşu #2980 - İkili biçimlerde okuma dizeleri ve diziler geliştirilmiş performans. Amos Kuşu
- Sorgular için artan performans ve azaltılmış bellek tüketimi
system.tables
vesystem.columns
tek bir sunucuda çok sayıda tablo olduğunda. #2953 - Bir hataya neden olan büyük bir sorgu akışı durumunda bir performans sorunu düzeltildi (
_dl_addr
fonksiyon görünürperf top
, ancak sunucu çok fazla CPU kullanmıyor). #2938 - Koşullar Görünüm içine atılır (ne zaman
enable_optimize_predicate_expression
etkin) değildir. Kış Zhang - İçin işlevsellik geliştirmeleri
UUID
veri türü. #3074 #2985 - Bu
UUID
veri türü-Simyacı sözlüklerde desteklenir. #2822 - Bu
visitParamExtractRaw
işlev iç içe geçmiş yapılarla düzgün çalışır. Kış Zhang - Ne zaman
input_format_skip_unknown_fields
ayarı etkin, nesne alanlarıJSONEachRow
biçim doğru atlanır. BlahGeek - İçin...
CASE
koşullarla ifade, şimdi atlayabilirsinizELSE
eşdeğer olanELSE NULL
. #2920 - ZooKeeper ile çalışırken operasyon zaman aşımı artık yapılandırılabilir. urykhy
- İçin bir ofset belirtebilirsiniz
LIMIT n, m
olarakLIMIT n OFFSET m
. #2840 - Kullanabilirsiniz
SELECT TOP n
için alternatif olarak sözdizimiLIMIT
. #2840 - Sistem tablolarına yazmak için sıranın boyutunu arttırdı, böylece
SystemLog parameter queue is full
hata sık sık olmaz. - Bu
windowFunnel
toplama işlevi artık birden çok koşulu karşılayan olayları destekler. Amos Kuşu - Yinelenen sütunlar bir
USING
için fık forraJOIN
. #3006 Pretty
biçimlerin artık genişliğe göre sütun hizalaması üzerinde bir sınırı vardır. Kullan...output_format_pretty_max_column_pad_width
ayar. Bir değer daha genişse, yine de bütünüyle görüntülenecektir, ancak tablodaki diğer hücreler çok geniş olmayacaktır. #3003- Bu
odbc
tablo işlevi artık veritabanı/şema adını belirtmenizi sağlar. Amos Kuşu - Belirtilen bir kullanıcı adı kullanma yeteneği eklendi
clickhouse-client
yapılandırma dosyası. Vladimir Kozbin - Bu
ZooKeeperExceptions
sayaç üç sayaçlara ayrılmıştır:ZooKeeperUserExceptions
,ZooKeeperHardwareExceptions
, veZooKeeperOtherExceptions
. ALTER DELETE
sorgular hayata görünümler için çalışır.- Temizleme ipliğini periyodik olarak çalıştırırken randomizasyon eklendi
ReplicatedMergeTree
çok sayıda olduğunda periyodik yük ani önlemek için tablolarReplicatedMergeTree
Tablolar. - İçin destek
ATTACH TABLE ... ON CLUSTER
sorgular. #3025
Hata düzeltmeleri:
- İle bir sorun düzeltildi
Dictionary
tablolar (atarSize of offsets doesn't match size of column
veyaUnknown compression method
özel). Bu hata 18.10.3 sürümünde göründü. #2913 - Birleştirirken bir hata düzeltildi
CollapsingMergeTree
veri parçalarından biri boşsa tablolar (bu parçalar birleştirme sırasında oluşturulur veyaALTER DELETE
tüm veriler silindiyse) vevertical
birleştirme için algoritma kullanıldı. #3049 - Sırasında bir yarış durumu düzeltildi
DROP
veyaTRUNCATE
içinMemory
eş zamanlı tablolarSELECT
, sunucu çökmelerine neden olabilir. Bu hata 1.1.54388 sürümünde göründü. #3038 - Takarken veri kaybı olasılığı düzeltildi
Replicated
tablolar iseSession is expired
hata döndürülür (veri kaybı tarafından tespit edilebilirReplicatedDataLoss
ölçü). Bu hata 1.1.54378 sürümünde oluştu. #2939 #2949 #2964 - Sırasında bir segfault sabit
JOIN ... ON
. #3000 - Sütun adlarını ararken hata düzeltildi
WHERE
ifade tamamen nitelikli bir sütun adından oluşur, örneğinWHERE table.column
. #2994 - Sabit “Not found column” uzak bir sunucudan bir alt sorgu ile bir In ifadesinden oluşan tek bir sütun isteniyorsa, dağıtılmış sorgular yürütülürken oluşan hata. #3087
- Sabit
Block structure mismatch in UNION stream: different number of columns
kırıklardan biri yerel ve diğeri değilse dağıtılmış sorgular için oluşan hata ve taşınmanın en iyi duruma getirilmesiPREWHERE
tetik .lenir. #2226 #3037 #3055 #3065 #3073 #3090 #3093 - Sabit
pointInPolygon
dışbükey olmayan poligonların belirli durumları için işlev. #2910 - Karşılaştırırken yanlış sonuç düzeltildi
nan
tamsayılarla. #3024 - Sabit bir hata
zlib-ng
nadir durumlarda segfault yol açabilir kütüphane. #2854 - Bir tabloya eklerken bir bellek sızıntısı düzeltildi
AggregateFunction
sütunlar, toplama işlevinin durumu basit değilse (belleği ayrı olarak ayırır) ve tek bir ekleme isteği birden çok küçük blokla sonuçlanırsa. #3084 - Aynı şeyi oluştururken ve silerken bir yarış durumu düzeltildi
Buffer
veyaMergeTree
aynı anda tablo. - Tuples gibi bazı önemsiz olmayan türlerinden oluşan tuples karşılaştırırken bir segfault olasılığını düzeltildi. #2989
- Belirli çalıştırırken bir segfault olasılığı düzeltildi
ON CLUSTER
sorgular. Kış Zhang - Sabit bir hata
arrayDistinct
fonksiyonu içinNullable
dizi elemanları. #2845 #2937 - Bu
enable_optimize_predicate_expression
seçenek şimdi doğru olan durumları desteklerSELECT *
. Kış Zhang - Zookeeper oturumunu yeniden başlatırken segfault düzeltildi. #2917
- ZooKeeper ile çalışırken sabit potansiyel engelleme.
- Bir iç içe veri yapıları eklemek için sabit yanlış kod
SummingMergeTree
. - Toplama işlevlerinin durumları için bellek ayırırken, hizalama doğru bir şekilde dikkate alınır, bu da toplama işlevlerinin durumlarını uygularken hizalama gerektiren işlemlerin kullanılmasını mümkün kılar. chenxing-xc
Güvenlik düzeltme:
- ODBC veri kaynaklarının güvenli kullanımı. ODBC sürücüleri ile etkileşim ayrı bir
clickhouse-odbc-bridge
işleyiş. Üçüncü taraf ODBC sürücülerindeki hatalar artık sunucu kararlılığı veya güvenlik açıklarıyla ilgili sorunlara neden olmaz. #2828 #2879 #2886 #2893 #2921 - Dosya yolunun yanlış doğrulanması düzeltildi
catBoostPool
tablo işlevi. #2894 - Sistem tablolarının içeriği (
tables
,databases
,parts
,columns
,parts_columns
,merges
,mutations
,replicas
, vereplication_queue
) kullanıcının veri tabanlarına yapılandırılmış erişimine göre filtrelenir (allow_databases
). Kış Zhang
Geriye dönük uyumsuz değişiklikler:
- JOIN ile sorgularda, yıldız karakteri SQL standardına uygun olarak tüm tablolardaki sütunların bir listesine genişletir. Ayarlayarak eski davranışı geri yükleyebilirsiniz
asterisk_left_columns_only
kullanıcı yapılandırma düzeyinde 1'e.
Yapı değişiklikleri:
- Çoğu entegrasyon testleri artık commit tarafından çalıştırılabilir.
- Kod stili kontrolleri de commit tarafından çalıştırılabilir.
- Bu
memcpy
CentOS7/Fedora üzerinde inşa ederken uygulama doğru seçilir. Etienne Champetier - Oluşturmak için clang kullanırken, bazı uyarılar
-Weverything
düzenli ek olarak, eklenmiştir-Wall-Wextra -Werror
. #2957 - Yapı hata ayıklama kullanır
jemalloc
hata ayıklama seçeneği. - ZooKeeper ile etkileşim için kütüphanenin arayüzü soyut olarak ilan edilir. #2950
ClickHouse sürümü 18.10
ClickHouse yayın 18.10.3, 2018-08-13
Yenilik:
- HTTPS çoğaltma için kullanılabilir. #2760
- Fonksiyonları eklendi
murmurHash2_64
,murmurHash3_32
,murmurHash3_64
, vemurmurHash3_128
mevcut ek olarakmurmurHash2_32
. #2791 - ClickHouse ODBC sürücüsündeki null türleri için destek (
ODBCDriver2
çıkış biçimi). #2834 - İçin destek
UUID
anahtar sütunlarda.
Geliştirmeler:
- Kümeler, yapılandırma dosyalarından silindiğinde sunucuyu yeniden başlatmadan kaldırılabilir. #2777
- Dış sözlükler, yapılandırma dosyalarından kaldırıldıklarında sunucuyu yeniden başlatmadan kaldırılabilir. #2779
- Katma
SETTINGS
için destekKafka
masa motoru. Alexander Marshalov - İçin iyileştirmeler
UUID
veri türü (henüz tamamlanmadı). #2618 - Birleştikten sonra boş parçalar için destek
SummingMergeTree
,CollapsingMergeTree
veVersionedCollapsingMergeTree
motorlar. #2815 - Tamamlanan Mut recordsasyon recordsların eski kayıtları silinir (
ALTER DELETE
). #2784 - Add theed the
system.merge_tree_settings
Tablo. Kirill Shvakov - Bu
system.tables
tablo artık bağımlılık sütunları var:dependencies_database
vedependencies_table
. Kış Zhang - Add theed the
max_partition_size_to_drop
yapılandırma seçeneği. #2782 - Add theed the
output_format_json_escape_forward_slashes
seçenek. Alexander Bocharov - Add theed the
max_fetch_partition_retries_count
ayar. #2831 - Add theed the
prefer_localhost_replica
yerel bir yineleme tercihini devre dışı bırakmak ve işlemler arası etkileşim olmadan yerel bir yinelemeye gitmek için ayarlama. #2832 - Bu
quantileExact
toplama işlevi döndürürnan
boş bir toplama durumundaFloat32
veyaFloat64
koymak. Sundy Li
Hata düzeltmeleri:
- ODBC için bağlantı dizesi parametrelerinin gereksiz bir şekilde kaçması kaldırıldı, bu da bağlantı kurmayı imkansız hale getirdi. Bu hata 18.6.0 sürümünde oluştu.
- İşleme mantığı düzeltildi
REPLACE PARTITION
çoğaltma sırasındaki komutlar. İki tane varsaREPLACE
aynı bölüm için komutlar, yanlış mantık, bunlardan birinin çoğaltma kuyruğunda kalmasına ve yürütülmesine neden olabilir. #2814 - Tüm veri parçaları boş olduğunda bir birleştirme hatası düzeltildi (birleştirme veya
ALTER DELETE
tüm veriler silindiyse). Bu hata 18.1.0 sürümünde göründü. #2930 - Eşzamanlı için bir hata düzeltildi
Set
veyaJoin
. Amos Kuşu - Sabit
Block structure mismatch in UNION stream: different number of columns
için oluşan hataUNION ALL
bir alt sorgu içindeki sorgularSELECT
sorgular yinelenen sütun adları içerir. Kış Zhang - Bir MySQL sunucusuna bağlanırken bir istisna oluşursa bir bellek sızıntısı düzeltildi.
- Bir sorgu hatası durumunda sabit yanlış clickhouse-istemci yanıt kodu.
- Farklı içeren hayata görünümleri sabit yanlış davranış. #2795
Geriye dönük uyumsuz değişiklikler
- Dağıtılmış tablolar için kontrol tablosu sorguları için destek kaldırıldı.
Yapı değişiklikleri:
- Ayırıcı değiştirildi:
jemalloc
şimdi yerine kullanılırtcmalloc
. Bazı senaryolarda, bu hız %20'ye kadar artar. Ancak, %20'ye kadar yavaşlamış sorgular vardır. Bellek tüketimi, bazı senaryolarda geliştirilmiş kararlılık ile yaklaşık %10 oranında azaltılmıştır. Son derece rekabetçi yüklerle, userspace ve sistemdeki CPU kullanımı sadece hafif bir artış gösterir. #2773 - Bir alt modülden libressl kullanımı. #1983 #2807
- Bir alt modülden unixodbc kullanımı. #2789
- Bir alt modülden mariadb-connector-c kullanımı. #2785
- Test verilerinin kullanılabilirliğine bağlı olan depoya işlevsel test dosyaları eklendi (şimdilik, test verilerinin kendisi olmadan).
ClickHouse sürümü 18.6
ClickHouse yayın 18.6.0, 2018-08-02
Yenilik:
- Sözdizimi üzerinde katılmak için ifadeler için destek eklendi:
JOIN ON Expr([table.]column ...) = Expr([table.]column, ...) [AND Expr([table.]column, ...) = Expr([table.]column, ...) ...]
İfade, and operatörü tarafından birleştirilen bir eşitlik zinciri olmalıdır. Eşitliğin her bir tarafı, tablolardan birinin sütunları üzerinde keyfi bir ifade olabilir. Tam sütun adlarının kullanımı desteklenir (table.name
,database.table.name
,table_alias.name
,subquery_alias.name
) doğru tablo için. #2742 - HTTPS çoğaltma için etkinleştirilebilir. #2760
Geliştirmeler:
- Sunucu, sürümünün düzeltme eki bileşenini istemciye geçirir. Yama sürümü bileşeni ile ilgili veriler
system.processes
vequery_log
. #2646
ClickHouse sürümü 18.5
ClickHouse sürümü 18.5.1, 2018-07-31
Yenilik:
- Karma fonksiyonu eklendi
murmurHash2_32
#2756.
Geliştirmeler:
- Şimdi kullanabilirsiniz
from_env
#2741 ortam değişkenlerinden yapılandırma dosyalarındaki değerleri ayarlamak için öznitelik. - Eklenen büyük / küçük harf duyarlı sürümleri
coalesce
,ifNull
, venullIf functions
#2752.
Hata düzeltmeleri:
- Bir kopya başlatırken olası bir hata düzeltildi #2759.
ClickHouse sürümü 18.4
ClickHouse yayın 18.4.0, 2018-07-28
Yenilik:
- Eklenen sistem tabloları:
formats
,data_type_families
,aggregate_function_combinators
,table_functions
,table_engines
,collations
#2721. - Bir argüman olarak bir tablo yerine bir tablo işlevini kullanma yeteneği eklendi
remote
veyacluster table function
#2708. - İçin destek
HTTP Basic
çoğaltma protokolünde kimlik doğrulama #2727. - Bu
has
fonksiyon artık bir dizi sayısal bir değer için arama sağlarEnum
değerler Maxim Khrisanfov. - Gelen okurken keyfi mesaj ayırıcılar eklemek için destek
Kafka
Amos Kuşu.
Geliştirmeler:
- Bu
ALTER TABLE t DELETE WHERE
sorgu, where koşulundan etkilenmeyen veri bölümlerini yeniden yazmaz #2694. - Bu
use_minimalistic_checksums_in_zookeeper
seçeneği içinReplicatedMergeTree
tablolar varsayılan olarak etkindir. Bu ayar 1.1.54378, 2018-04-16 sürümüne eklendi. 1.1.54378'den eski sürümler artık yüklenemez. - Koşu için destek
KILL
veOPTIMIZE
belirten sorgularON CLUSTER
Kış Zhang.
Hata düzeltmeleri:
- Hata düzeltildi
Column ... is not under an aggregate function and not in GROUP BY
bir in ifadesi ile toplama için. Bu hata 18.1.0 sürümünde göründü. (bbdd780b) - Bu bir hata düzeltildi
windowFunnel aggregate function
Kış Zhang. - Bu bir hata düzeltildi
anyHeavy
toplama fonksiyonu (a2101df2) - Kullanırken sabit sunucu çökmesi
countArray()
toplama işlevi.
Geriye dönük uyumsuz değişiklikler:
- İçin parametreler
Kafka
motor değiştirildiKafka(kafka_broker_list, kafka_topic_list, kafka_group_name, kafka_format[, kafka_schema, kafka_num_consumers])
-e doğruKafka(kafka_broker_list, kafka_topic_list, kafka_group_name, kafka_format[, kafka_row_delimiter, kafka_schema, kafka_num_consumers])
. Tablolar kullanıyorsanızkafka_schema
veyakafka_num_consumers
parametreleri, elle meta dosyaları düzenlemek zorundapath/metadata/database/table.sql
ve Eklekafka_row_delimiter
parametre ile''
değer.
ClickHouse sürümü 18.1
ClickHouse sürümü 18.1.0, 2018-07-23
Yenilik:
- İçin destek
ALTER TABLE t DELETE WHERE
çoğaltılmamış MergeTree tabloları için sorgu (#2634). - İçin keyfi türleri için destek
uniq*
agrega fonksiyonları ailesi (#2010). - Karşılaştırma operatörlerinde keyfi türler için destek (#2026).
- Bu
users.xml
dosya biçiminde bir alt ağ maskesi ayarlama sağlar10.0.0.1/255.255.255.0
. Bu, ortada sıfır olan IPv6 ağları için Maskeler kullanmak için gereklidir (#2637). - Add theed the
arrayDistinct
işlev (#2670). - SummingMergeTree altyapısı artık AggregateFunction türü sütunları ile çalışabilir (Constantin S. Pan).
Geliştirmeler:
- Sürüm sürümleri için numaralandırma düzenini değiştirdi. Şimdi ilk bölüm sürüm yılını içeriyor (A. D., Moskova saat dilimi, eksi 2000), ikinci bölüm büyük değişikliklerin sayısını içeriyor (çoğu sürüm için artar) ve üçüncü bölüm yama sürümüdür. Aksi changelog belirtilmediği sürece bültenleri hala geriye dönük uyumludur.
- Kayan noktalı sayıların bir dizeye daha hızlı dönüştürülmesi (Amos Kuşu).
- Ayrıştırma hataları nedeniyle bir ekleme sırasında bazı satırlar atlanmışsa (bu,
input_allow_errors_num
veinput_allow_errors_ratio
ayarları etkin), atlanan satır sayısı şimdi sunucu günlüğüne yazılır (Leonardo Cecchi).
Hata düzeltmeleri:
- Geçici tablolar için TRUNCATE komutu düzeltildi (Amos Kuşu).
- Yanıtı okurken bir ağ hatası olduğunda meydana gelen ZooKeeper istemci kütüphanesinde nadir bir kilitlenme düzeltildi (c315200).
- Null türleri için bir döküm sırasında bir hata düzeltildi (#1322).
- Yanlış sonuç düzeltildi
maxIntersection()
aralıkların sınırları çakıştığında işlev (Michael Furmur). - Bir işlev argümanında or ifade zincirinin yanlış dönüşümü düzeltildi (chenxing-xc).
- İçeren sorgular için sabit performans düşüşü
IN (subquery)
başka bir alt sorgu içindeki ifadeler (#2571). - Bir kullanan dağıtılmış sorgularda farklı sürümleri ile sunucular arasında sabit uyumsuzluk
CAST
büyük harflerle olmayan işlev (fe8c4d6). - Harici bir DBMS sorguları için tanımlayıcıları alıntı eksik eklendi (#2635).
Geriye dönük uyumsuz değişiklikler:
- DateTime için sıfır sayısını içeren bir dize dönüştürme çalışmaz. Örnek:
SELECT toDateTime('0')
. Bu da nedeniDateTime DEFAULT '0'
tablolarda da çalışmıyor<null_value>0</null_value>
sözlüklerde. Çözüm: değiştirin0
ile0000-00-00 00:00:00
.
ClickHouse sürüm 1.1
ClickHouse sürümü 1.1.54394, 2018-07-12
Yenilik:
- Add theed the
histogram
toplama fonksiyonu (Mikhail Surin). - Şimdi
OPTIMIZE TABLE ... FINAL
için bölümler belirt specifyingmeden kullanılabilirReplicatedMergeTree
(Amos Kuşu).
Hata düzeltmeleri:
- Çoğaltılmış verileri gönderirken ve indirirken okumak ve yazmak için soketler için çok küçük bir zaman aşımı (bir saniye) ile ilgili bir sorun düzeltildi, bu da ağ veya diskte bir yük varsa daha büyük parçaları indirmeyi imkansız hale getirdi (parçaları indirmek için döngüsel girişimlerle sonuçlandı). Bu hata 1.1.54388 sürümünde oluştu.
- Tabloda yinelenen veri blokları eklediyseniz zookeeper chroot kullanırken sorunlar giderildi.
- Bu
has
işlev artık boş öğelere sahip bir dizi için doğru çalışıyor (#2115). - Bu
system.tables
tablo şimdi dağıtılmış sorgularda kullanıldığında düzgün çalışır. Bumetadata_modification_time
veengine_full
sütunlar artık sanal değil. Tablodan yalnızca bu sütunlar sorgulanırsa oluşan bir hata düzeltildi. - Sabit nasıl boş
TinyLog
tablo boş bir veri bloğu ekledikten sonra çalışır (#2563). - Bu
system.zookeeper
zookeeper düğümün değeri NULL ise Tablo çalışır.
ClickHouse sürümü 1.1.54390, 2018-07-06
Yenilik:
- Sorgular gönderilebilir
multipart/form-data
biçim (içindequery
alan), sorgu işleme için harici veriler de gönderilirse yararlıdır (Olga Hvostikova). - CSV formatında veri okurken tek veya çift tırnak işleme etkinleştirmek veya devre dışı bırakmak için yeteneği eklendi. Bunu şu şekilde yapılandırabilirsiniz:
format_csv_allow_single_quotes
veformat_csv_allow_double_quotes
ayarlar (Amos Kuşu). - Şimdi
OPTIMIZE TABLE ... FINAL
olmayan çoğaltılmış varyantları için bölüm belirtmeden kullanılabilirMergeTree
(Amos Kuşu).
Geliştirmeler:
- Geliştirilmiş performans, azaltılmış bellek tüketimi, ve doğru bellek tüketimi izleme kullanımı ile In operatör zaman bir tablo Endeksi kullanılabilir (#2584).
- Bir veri parçası eklerken sağlama toplamlarının gereksiz denetimi kaldırıldı. Bu, çok sayıda çoğaltma olduğunda önemlidir,çünkü bu durumlarda toplam kontrol sayısı n^2'ye eşittir.
- İçin destek eklendi
Array(Tuple(...))
arg theum argumentsents for thearrayEnumerateUniq
işlev (#2573). - Katma
Nullable
için destekrunningDifference
işlev (#2594). - Çok sayıda ifade olduğunda geliştirilmiş sorgu analizi performansı (#2572).
- Birleştirme için veri parçalarının daha hızlı seçimi
ReplicatedMergeTree
Tablolar. ZooKeeper oturumunun daha hızlı iyileşmesi (#2597). - Bu
format_version.txt
için dosyaMergeTree
eksikse tablolar yeniden oluşturulur, bu da dizin yapısını dosyalar olmadan kopyaladıktan sonra ClickHouse başlatılırsa mantıklı olur (Ciprian Hacman).
Hata düzeltmeleri:
- ZooKeeper ile çalışırken, sunucuyu yeniden başlatmadan önce oturumu ve readonly tablo durumlarını kurtarmayı imkansız hale getirebilecek bir hata düzeltildi.
- Oturum kesilirse eski düğümlerin silinmemesine neden olabilecek ZooKeeper ile çalışırken bir hata düzeltildi.
- Sabit bir hata
quantileTDigest
Float argümanları için işlev (bu hata 1.1.54388 sürümünde tanıtıldı) (Mikhail Surin). - Birincil anahtar sütunu, aynı boyuttaki imzalı ve imzasız tamsayılar arasındaki türleri dönüştürmek için işlevin içinde bulunuyorsa, mergetree tabloları için dizinde bir hata düzeltildi (#2603).
- Sabit segfault eğer
macros
kullanılır ancak yapılandırma dosyasında değildir (#2570). - İstemci yeniden bağlanırken varsayılan veritabanına sabit anahtarlama (#2583).
- Ne zaman meydana gelen bir hata düzeltildi
use_index_for_in_with_subqueries
ayar devre dışı bırakıldı.
Güvenlik düzeltme:
- Mysql'e bağlandığında dosya göndermek artık mümkün değil (
LOAD DATA LOCAL INFILE
).
ClickHouse sürümü 1.1.54388, 2018-06-28
Yenilik:
- İçin destek
ALTER TABLE t DELETE WHERE
çoğaltılmış tablolar için sorgu. Add theed thesystem.mutations
bu tür sorguların ilerlemesini izlemek için tablo. - İçin destek
ALTER TABLE t [REPLACE|ATTACH] PARTITION
*MergeTree tabloları için sorgu. - İçin destek
TRUNCATE TABLE
sorgu (Kış Zhang) - Birkaç yeni
SYSTEM
çoğaltılmış tablolar için sorgular (RESTART REPLICAS
,SYNC REPLICA
,[STOP|START] [MERGES|FETCHES|SENDS REPLICATED|REPLICATION QUEUES]
). - MySQL motoru ve ilgili tablo fonksiyonu ile bir tabloya yazma yeteneği eklendi (sundy-li).
- Add theed the
url()
tablo fonksiyonu veURL
masa motoru (Alexander Sapin). - Add theed the
windowFunnel
toplama fonksiyonu (sundy-li). - Yeni
startsWith
veendsWith
dizeler için işlevler (Vadim Plakhtinsky). - Bu
numbers()
tablo işlevi artık ofset belirtmenizi sağlar (Kış Zhang). - Şifre için
clickhouse-client
etkileşimli olarak girilebilir. - Sunucu günlükleri artık syslog'a gönderilebilir (Alexander Krasheninnikov).
- Paylaşılan kitaplık kaynağı ile sözlüklerde oturum açma desteği (Alexander Sapin).
- Özel CSV sınırlayıcılar için destek (Ivan Zhukov)
- Add theed the
date_time_input_format
ayar. Bu ayarı şu şekilde değiştirirseniz'best_effort'
, DateTime değerleri biçimleri geniş bir yelpazede okunacaktır. - Add theed the
clickhouse-obfuscator
veri gizleme için yardımcı program. Kullanım örneği: performans testlerinde kullanılan verileri yayınlama.
Deneysel özellikler:
- Hesaplamak için yeteneği eklendi
and
argümanlar sadece ihtiyaç duydukları yerde (Anastasia Tsarkova) - Yerel kod JIT derleme bazı ifadeler için artık kullanılabilir (pyos).
Hata düzeltmeleri:
- Yinelemeler artık bir sorgu için görünmüyor
DISTINCT
veORDER BY
. - İle sorgular
ARRAY JOIN
vearrayFilter
artık yanlış bir sonuç döndürmez. - İç içe geçmiş bir yapıdan bir dizi sütunu okurken bir hata düzeltildi (#2066).
- Gibi bir having yan tümcesi ile sorguları analiz ederken bir hata düzeltildi
HAVING tuple IN (...)
. - Özyinelemeli takma adlarla sorguları analiz ederken bir hata düzeltildi.
- Tüm satırları filtreleyen PREWHERE bir koşul ile ReplacingMergeTree okurken bir hata düzeltildi (#2525).
- HTTP arabirimindeki oturumları kullanırken kullanıcı profili ayarları uygulanmadı.
- Clickhouse-local'deki komut satırı parametrelerinden ayarların nasıl uygulandığı düzeltildi.
- ZooKeeper istemci kitaplığı artık sunucudan alınan oturum zaman aşımını kullanır.
- İstemci zaman aşımı daha uzun sunucu yanıt bekledi ZooKeeper istemci kütüphanesinde bir hata düzeltildi.
- Bölüm anahtar sütunlarındaki koşullarla sorgular için parçaların sabit budaması (#2342).
- Birleşmeler şimdi mümkün
CLEAR COLUMN IN PARTITION
(#2315). - ODBC tablo işlevinde tür eşleme düzeltildi (sundy-li).
- Tür karşılaştır formaları Düzelt forildi
DateTime
saat dilimi ile ve olmadan (Alexander Bocharov). - Sabit sözdizimsel ayrıştırma ve biçimlendirme
CAST
operatör. - Dağıtılmış tablo motoru için somutlaştırılmış bir görünüme sabit ekleme (Babacar Diassé).
- Veri yazarken bir yarış durumu düzeltildi
Kafka
motor için hayata görünümleri (Yangkuan Liu). - Uzak () tablo işlevinde sabit SSRF.
- Sabit çıkış davranışı
clickhouse-client
çok satırlı modda (#2510).
Geliştirmeler:
- Çoğaltılmış tablolardaki arka plan görevleri artık ayrı iş parçacıkları yerine bir iş parçacığı havuzunda gerçekleştirilir (Silviu Caragea).
- Geliştirilmiş lz4 sıkıştırma performansı.
- Çok sayıda birleştirme ve alt sorgu ile sorgular için daha hızlı analiz.
- Çok fazla ağ hatası olduğunda DNS önbelleği artık otomatik olarak güncellenir.
- Çok fazla parçaya sahip olduğundan, materialized görünümlerden birine ekleme mümkün değilse, tablo ekleri artık oluşmaz.
- Olay sayaçlarındaki tutarsızlık düzeltildi
Query
,SelectQuery
, veInsertQuery
. - Gibi ifadeler
tuple IN (SELECT tuple)
tuple türleri eşleşirse izin verilir. - Çoğaltılmış tabloları olan bir sunucu, Zookeeper'ı yapılandırmasanız bile başlayabilir.
- Mevcut CPU çekirdeklerinin sayısını hesaplarken, C gruplarındaki sınırlar şimdi dikkate alınmaktadır (Atri Sharma).
- Systemd yapılandırma dosyasında yapılandırma dizinleri için chown eklendi (Mikhail Shiryaev).
Yapı değişiklikleri:
- Gcc8 derleyicisi yapılar için kullanılabilir.
- Alt modülden llvm oluşturma yeteneği eklendi.
- Librdkafka kütüphanesinin sürümü v0.11.4 olarak güncellendi.
- Sistem libcpuid kütüphanesini kullanma yeteneği eklendi. Kütüphane sürümü 0.4.0 olarak güncellendi.
- Vectorclass kütüphanesini kullanarak yapı düzeltildi (Babacar Diassé).
- Cmake şimdi varsayılan olarak ninja için dosyalar üretir (kullanırken olduğu gibi
-G Ninja
). - Libtermcap yerine libtınfo kütüphanesini kullanma yeteneği eklendi (Georgy Kondratiev).
- Fedora Rawhide bir başlık dosyası çakışması düzeltildi (#2520).
Geriye dönük uyumsuz değişiklikler:
- Çıkar escapingıldı
Vertical
vePretty*
format Andlar ve silinenVerticalRaw
biçimli. - 1.1.54388 (veya daha yeni) sürümüne sahip sunucular ve daha eski bir sürüme sahip sunucular dağıtılmış bir sorguda aynı anda kullanılıyorsa ve sorgunun
cast(x, 'Type')
ifade olmadanAS
anahtar kelime ve kelime yokcast
büyük harfle, bir istisna gibi bir mesajla atılırNot found column cast(0, 'UInt8') in block
. Çözüm: tüm kümedeki sunucuyu güncelleyin.
ClickHouse sürümü 1.1.54385, 2018-06-01
Hata düzeltmeleri:
- Bazı durumlarda zookeeper işlemlerinin engellenmesine neden olan bir hata düzeltildi.
ClickHouse sürümü 1.1.54383, 2018-05-22
Hata düzeltmeleri:
- Bir tablo birçok yinelemeler varsa çoğaltma kuyruğunun bir yavaşlama düzeltildi.
ClickHouse sürümü 1.1.54381, 2018-05-14
Hata düzeltmeleri:
- ClickHouse ZooKeeper sunucusuna bağlantı kaybettiğinde ZooKeeper bir düğüm sızıntısı düzeltildi.
ClickHouse sürüm 1.1.54380, 2018-04-21
Yenilik:
- Tablo fonksiyonu eklendi
file(path, format, structure)
. Örnek okuma baytları/dev/urandom
:ln -s /dev/urandom /var/lib/clickhouse/user_files/random``clickhouse-client -q "SELECT * FROM file('random', 'RowBinary', 'd UInt8') LIMIT 10"
.
Geliştirmeler:
- Alt sorgular sarılabilir
()
sorgu okunabilirliğini artırmak için parantez. Mesela:(SELECT 1) UNION ALL (SELECT 1)
. - Basit
SELECT
gelen sorgularsystem.processes
tablo dahil değildirmax_concurrent_queries
sınır.
Hata düzeltmeleri:
- Sabit yanlış davranış
IN
operatör ne zaman seçinMATERIALIZED VIEW
. - Gibi ifadelerde bölüm indeksi ile sabit yanlış filtreleme
partition_key_column IN (...)
. - Sabit yetersizlik yürütmek için
OPTIMIZE
eğer lider olmayan çoğaltma üzerinde sorguREANAME
masaya yapıldı. - Yürütülürken yetkilendirme hatası düzeltildi
OPTIMIZE
veyaALTER
olmayan bir lider çoğaltma sorgular. - Sabit donma
KILL QUERY
. - Saatlerin kaybına yol açan ZooKeeper istemci kütüphanesinde bir hata, dağıtılmış DDL kuyruğunun dondurulması ve boş olmayan bir çoğaltma kuyruğundaki yavaşlamalar düzeltildi
chroot
önek ZooKeeper yapılandırmasında kullanılır.
Geriye dönük uyumsuz değişiklikler:
- Gibi ifadeler için destek kaldırıldı
(a, b) IN (SELECT (a, b))
(eşdeğer ifadeyi kullanabilirsiniz(a, b) IN (SELECT a, b)
). Önceki sürümlerde, bu ifadeler belirsizliğe yol açtıWHERE
filtreleme veya neden olan hatalar.
ClickHouse sürümü 1.1.54378, 2018-04-16
Yenilik:
- Günlük düzeyi sunucuyu yeniden başlatmadan değiştirilebilir.
- Add theed the
SHOW CREATE DATABASE
sorgu. - Bu
query_id
geç canilebilirclickhouse-client
(elBroom). - Yeni ayar:
max_network_bandwidth_for_all_users
. - İçin destek eklendi
ALTER TABLE ... PARTITION ...
içinMATERIALIZED VIEW
. - Sistem tablosunda sıkıştırılmamış formdaki veri parçalarının boyutu hakkında bilgi eklendi.
- Dağıtılmış tablolar için sunucudan sunucuya şifreleme desteği (
<secure>1</secure>
rep thelik thea config in<remote_servers>
). - Tablo düzeyi için yapılandırma
ReplicatedMergeTree
Zookeeper saklanan veri miktarını en aza indirmek için aile: :use_minimalistic_checksums_in_zookeeper = 1
- Yapılandırma
clickhouse-client
istem. Varsayılan olarak, sunucu adları artık istemine çıktı. Sunucunun görünen adı değiştirilebilir. Ayrıca gönderilenX-ClickHouse-Display-Name
HTTP Başlığı (Kirill Shvakov). - Birden çok virgülle ayrılmış
topics
için belirt theilebilirKafka
motor (Tobias Adamson) - Bir sorgu tarafından durdurulduğunda
KILL QUERY
veyareplace_running_query
, müşteri alırQuery was canceled
eksik bir sonuç yerine istisna.
Geliştirmeler:
ALTER TABLE ... DROP/DETACH PARTITION
sorgular, çoğaltma kuyruğunun önünde çalıştırılır.SELECT ... FINAL
veOPTIMIZE ... FINAL
tablo tek bir veri parçası olduğunda bile kullanılabilir.- A
query_log
el ile silindiyse tablo anında yeniden oluşturulur (Kirill Shvakov). - Bu
lengthUTF8
fonksiyon daha hızlı çalışır (zhang2014). - Senkron ekler geliştirilmiş performans
Distributed
Tablolar (insert_distributed_sync = 1
) çok sayıda parça olduğunda. - Sunucu kabul eder
send_timeout
vereceive_timeout
istemciden ayarlar ve istemciye bağlanırken bunları uygular (bunlar ters sırada uygulanır: sunucu soketininsend_timeout
için ayarlanırreceive_timeout
müşteriden alınan değer ve tersi). - Asenkron ekleme için daha sağlam kilitlenme kurtarma
Distributed
Tablolar. - Dönüş türü
countEqual
fonksiyon değiştirildiUInt32
-e doğruUInt64
(谢磊).
Hata düzeltmeleri:
- Bir hata düzeltildi
IN
ifadenin sol tarafı olduğundaNullable
. - Tuples ile birlikte kullanıldığında doğru sonuçlar şimdi döndürülür
IN
bazı tuple bileşenleri tablo dizininde olduğunda. - Bu
max_execution_time
limit şimdi dağıtılmış sorgularla düzgün çalışır. - Bileşik sütunların boyutunu hesaplarken sabit hatalar
system.columns
Tablo. - Geçici bir tablo oluştururken bir hata düzeltildi
CREATE TEMPORARY TABLE IF NOT EXISTS.
- Sabit hatalar
StorageKafka
(##2075) - Sabit sunucu, belirli toplam işlevlerin geçersiz argümanlarından çöker.
- Engellenen hata düzeltildi
DETACH DATABASE
için arka plan görevlerini durdurma sorgusuReplicatedMergeTree
Tablolar. Too many parts
toplu materialized görünümler (##2084) eklerken durum daha az olasıdır.- Bir ikame aynı düzeyde başka bir ikame tarafından takip edilmesi gerekiyorsa, yapılandırmada değiştirmelerin düzeltilmiş özyinelemeli işleme.
- Bir oluştururken meta veri dosyasında sözdizimi düzeltildi
VIEW
bu bir sorgu ile kullanırUNION ALL
. SummingMergeTree
şimdi bir bileşik anahtar ile iç içe veri yapılarının toplamı için doğru çalışır.- Lider seçerken bir yarış durumu olasılığı sabit
ReplicatedMergeTree
Tablolar.
Yapı değişiklikleri:
- Yapı destekler
ninja
yerinemake
ve kullanımlarıninja
sürümleri oluşturmak için varsayılan olarak. - Yeniden adlandırılan paketler:
clickhouse-server-base
içindeclickhouse-common-static
;clickhouse-server-common
içindeclickhouse-server
;clickhouse-common-dbg
içindeclickhouse-common-static-dbg
. Yüklemek için kullanınclickhouse-server clickhouse-client
. Eski adlara sahip paketler, geriye dönük uyumluluk için depolara yüklenmeye devam edecektir.
Geriye dönük uyumsuz değişiklikler:
- Sol tarafta bir dizi belirtilmişse, bir In ifadesinin özel yorumunu kaldırıldı. Daha önce, ifade
arr IN (set)
olarak yorum waslandı “at least onearr
element belongs to theset
”. Yeni sürümde aynı davranışı elde etmek için şunları yazınarrayExists(x -> x IN (set), arr)
. - Soket seçeneğinin yanlış kullanımı devre dışı bırakıldı
SO_REUSEPORT
, poco kitaplığında varsayılan olarak yanlış etkinleştirildi. Linux'ta artık adresleri aynı anda belirtmek için herhangi bir neden olmadığını unutmayın::
ve0.0.0.0
for listen – use just::
(varsayılan çekirdek yapılandırma ayarları ile) IPv4 ve IPv6 üzerinden hem bağlantı dinleme sağlar. Belirterek önceki sürümlerden davranışa da geri dönebilirsiniz<listen_reuse_port>1</listen_reuse_port>
config.
ClickHouse sürümü 1.1.54370, 2018-03-16
Yenilik:
- Add theed the
system.macros
tablo ve yapılandırma dosyası değiştirildiğinde makroların otomatik güncellenmesi. - Add theed the
SYSTEM RELOAD CONFIG
sorgu. - Add theed the
maxIntersections(left_col, right_col)
aynı anda kesişen aralıkların maksimum sayısını döndüren toplama işlevi[left; right]
. BumaxIntersectionsPosition(left, right)
fonksiyonun başlangıcını döndürür “maximum” aralıklı. (Michael Furmur).
Geliştirmeler:
- Bir veri eklerken
Replicated
tablo, daha az istek yapılırZooKeeper
(ve kullanıcı düzeyinde hataların çoğuZooKeeper
günlük). - Veri kümeleri için takma ad oluşturma yeteneği eklendi. Örnek:
WITH (1, 2, 3) AS set SELECT number IN set FROM system.numbers LIMIT 10
.
Hata düzeltmeleri:
- Sabit
Illegal PREWHERE
birleştirme tablolarından okunurken hataDistributed
Tablolar. - Eğer IPv4 sadece Docker kaplarda clickhouse-server başlatmak için izin eklendi düzeltmeler.
- Sistemden okurken bir yarış durumu düzeltildi
system.parts_columns tables.
- Bir senkron ekleme sırasında çift tamponlama kaldırıldı
Distributed
zaman aşımı için bağlantı neden olabilir tablo. - Başlamadan önce kullanılamayan bir kopya için aşırı uzun beklemelere neden olan bir hata düzeltildi
SELECT
sorgu. - Sabit yanlış tarihler
system.parts
Tablo. - İmkansız bir veri eklemek için yapılan bir hata düzeltildi
Replicated
tablo isechroot
yapılandırmada boş değildiZooKeeper
küme. - Boş bir dikey birleştirme algoritması düzeltildi
ORDER BY
Tablo. - Uzak tablo, bu sözlük istemcisi sunucu üzerinde yoksa bile sorgular sözlük kullanma olanağı sağlandı. Bu işlevsellik 1.1.54362 sürümünde kayboldu.
- Gibi sorgular için davranışı geri
SELECT * FROM remote('server2', default.table) WHERE col IN (SELECT col2 FROM default.table)
ne zaman sağ tarafıIN
bir uzaktan kumanda kullanmalıdefault.table
yerel bir yerine. Bu davranış 1.1.54358 sürümünde bozuldu. - Kaldırılan gereksiz hata düzeyi günlüğü
Not found column ... in block
.
ClickHouse Yayın 1.1.54362, 2018-03-11
Yenilik:
- Olmadan toplama
GROUP BY
boş bir set için (örneğinSELECT count(*) FROM table WHERE 0
) şimdi SQL standardına uygun olarak toplam işlevler için boş değerlere sahip bir satırla bir sonuç döndürür. Eski davranışı geri yüklemek için (boş bir sonuç döndürür),empty_result_for_aggregation_by_empty_set
1'e. - İçin Tip dönüştürme eklendi
UNION ALL
. Farklı takma ad adlarına izin verilirSELECT
pozisyon inlarUNION ALL
, SQL standardına uygun olarak. - Keyfi ifadeler desteklenir
LIMIT BY
yanlar. Daha önce, yalnızca aşağıdakilerden kaynaklanan sütunları kullanmak mümkündüSELECT
. - Dizini
MergeTree
tablolar şu durumlarda kullanılırIN
birincil anahtarın sütunlarından bir ifade kümesine uygulanır. Örnek:WHERE (UserID, EventDate) IN ((123, '2000-01-01'), ...)
(Anastasiya Tsarkova). - Add theed the
clickhouse-copier
kümeleri ve resharding veri (beta) arasında kopyalama aracı. - Tutarlı karma fonksiyonları eklendi:
yandexConsistentHash
,jumpConsistentHash
,sumburConsistentHash
. Onlar sonraki reshardings sırasında ağ trafiği miktarını azaltmak için bir sharding anahtar olarak kullanılabilir. - Eklenen fonksiyonlar:
arrayAny
,arrayAll
,hasAny
,hasAll
,arrayIntersect
,arrayResize
. - Add theed the
arrayCumSum
fonksiyon (Javi Santana). - Add theed the
parseDateTimeBestEffort
,parseDateTimeBestEffortOrZero
, veparseDateTimeBestEffortOrNull
çok çeşitli Olası biçimlerde metin içeren bir dizeden datetime okumak için işlevler. - Veriler, güncelleme sırasında harici sözlüklerden kısmen yeniden yüklenebilir (yalnızca belirtilen alanın değerinin önceki indirmeden daha büyük olduğu kayıtları yükleyin) (Arsen Hakobyan).
- Add theed the
cluster
tablo işlevi. Örnek:cluster(cluster_name, db, table)
. Buremote
tablo işlevi, bir tanımlayıcı olarak belirtilirse, küme adını ilk bağımsız değişken olarak kabul edebilir. - Bu
remote
vecluster
tablo fonksiyonları kullanılabilirINSERT
sorgular. - Add theed the
create_table_query
veengine_full
sanal sütunlar içinsystem.tables
Tablo . Bumetadata_modification_time
sütun sanal. - Add theed the
data_path
vemetadata_path
sütunlar içinsystem.tables
vesystem.databases
tablolar ve eklenenpath
Col theum then to thesystem.parts
vesystem.parts_columns
Tablolar. - Birleştirme hakkında ek bilgi eklendi
system.part_log
Tablo. - Keyfi bir bölümleme anahtarı için kullanılabilir
system.query_log
tablo (Kirill Shvakov). - Bu
SHOW TABLES
sorgu şimdi de geçici tablolar gösterir. Geçici tablolar eklendi veis_temporary
sütun içinsystem.tables
(zhang2014). - Katma
DROP TEMPORARY TABLE
veEXISTS TEMPORARY TABLE
sorgular (zhang2014). - İçin destek
SHOW CREATE TABLE
geçici tablolar için (zhang2014). - Add theed the
system_profile
iç işlemler tarafından kullanılan ayarlar için yapılandırma parametresi. - Yükleme desteği
object_id
bir nitelik olarakMongoDB
sözlükler (Pavel Litvinenko). - Okuma
null
harici bir sözlük için veri yüklerken varsayılan değer olarakMongoDB
kaynak (Pavel Litvinenko). - Okuma
DateTime
değerleriValues
tek tırnak işaretleri olmadan bir Unix zaman damgasından biçimlendirin. - Yük devretme desteklenir
remote
tablo işlevleri bazı yinelemeler istenen tablo eksik olduğunda durumlar için. - Çalıştırdığınızda yapılandırma ayarları komut satırında geçersiz kılınabilir
clickhouse-server
. Örnek:clickhouse-server -- --logger.level=information
. - Uygulanan
empty
fonksiyonu birFixedString
argüman: dize tamamen boş bayttan oluşuyorsa (zhang2014) işlev 1 döndürür. - Add theed the
listen_try
bazı adresler dinlenemiyorsa (IPv4 veya IPv6 için engelli desteği olan sistemler için kullanışlıdır), dinleme adreslerinden en az birini bırakmadan dinlemek için yapılandırma parametresi. - Add theed the
VersionedCollapsingMergeTree
masa motoru. - Satır ve rasgele sayısal türleri için destek
library
sözlük kaynağı. MergeTree
tablolar birincil anahtar olmadan kullanılabilir (belirtmeniz gerekirORDER BY tuple()
).- A
Nullable
tipi olabilirCAST
olmayan -Nullable
bağımsız değişken değilse yazınNULL
. RENAME TABLE
için yapılabilirVIEW
.- Add theed the
throwIf
işlev. - Add theed the
odbc_default_field_size
bir ODBC kaynağından yüklenen değerin en büyük boyutunu genişletmenizi sağlayan seçenek (varsayılan olarak, 1024'tür). - Bu
system.processes
masa veSHOW PROCESSLIST
şimdi varis_cancelled
vepeak_memory_usage
sütun.
Geliştirmeler:
- Sonuç üzerindeki sınırlar ve kotalar artık Ara verilere uygulanmıyor
INSERT SELECT
sorgular veyaSELECT
alt sorgular. - Daha az yanlış tetikleyici
force_restore_data
durumunu kontrol ederkenReplicated
sunucu başladığında tablolar. - Add theed the
allow_distributed_ddl
seçenek. - Nondeterministic işlevleri için ifadelerde izin verilmez
MergeTree
masa tuşları. - Değiştirmeleri olan dosyalar
config.d
dizinler alfabetik sırayla yüklenir. - Geliştirilmiş performans
arrayElement
elemanlardan biri olarak boş bir dizi ile sabit çok boyutlu bir dizi durumunda işlev. Örnek:[[1], []][x]
. - Sunucu, yapılandırma dosyalarını çok büyük ikamelerle (örneğin, çok büyük IP ağları listeleri) kullanırken daha hızlı başlar.
- Bir sorgu çalıştırırken, tablo değerli işlevleri bir kez çalıştırın. Önceden,
remote
vemysql
tablo değerli işlevler, tablo yapısını uzak bir sunucudan almak için aynı sorguyu iki kez gerçekleştirdi. - Bu
MkDocs
belg .eleme üret .eci kullanılır. - Bir tablo sütunu silmeye çalıştığınızda,
DEFAULT
/MATERIALIZED
diğer sütunların ifadeleri bağlıdır, bir istisna atılır (zhang2014). - İçin sayı 0 olarak metin biçimlerinde boş bir satır ayrıştırmak için yeteneği eklendi
Float
veri türleri. Bu özellik daha önce mevcuttu, ancak 1.1.54342 sürümünde kayboldu. Enum
değerleri kullanılabilirmin
,max
,sum
ve diğer bazı fonksiyonlar. Bu durumlarda, karşılık gelen sayısal değerleri kullanır. Bu özellik daha önce mevcuttu, ancak 1.1.54337 sürümünde kayboldu.- Katma
max_expanded_ast_elements
yinelemeli genişleyen takma adlar sonra AST boyutunu kısıtlamak için.
Hata düzeltmeleri:
- Gereksiz sütunlar hatalı alt sorgulardan kaldırıldığında veya içeren alt sorgulardan kaldırılmadığında sabit durumlar
UNION ALL
. - İçin birleştirir bir hata düzeltildi
ReplacingMergeTree
Tablolar. - Sabit senkron eklemeler
Distributed
Tablolar (insert_distributed_sync = 1
). - Belirli kullanımlar için sabit segfault
FULL
veRIGHT JOIN
alt sorgularda yinelenen sütunlarla. - Belirli kullanımlar için sabit segfault
replace_running_query
veKILL QUERY
. - Sabit sipariş
source
velast_exception
Col theum thens in thesystem.dictionaries
Tablo. - Sabit hata zaman
DROP DATABASE
sorgu meta verileri ile dosyayı silmedi. - Sabit
DROP DATABASE
sorgu içinDictionary
veritabanılar. - Sabit düşük hassasiyet
uniqHLL12
veuniqCombined
100 milyondan fazla öğe için işlevler (Alex Bocharov). - Aynı anda varsayılan açık ifadeleri hesaplamak için gerektiğinde örtülü varsayılan değerlerin hesaplanması düzeltildi
INSERT
sorgular (zhang2014). - Bir sorgu için nadir bir durum düzeltildi
MergeTree
tablo bitiremedi (chenxing-xc). - Bir çalışırken meydana gelen bir kilitlenme düzeltildi
CHECK
sorgu içinDistributed
tüm parçalar yerel ise tablolar (chenxing.xcc). - Düzenli ifadeler kullanan işlevlerle hafif bir performans gerilemesi düzeltildi.
- Karmaşık ifadelerden çok boyutlu diziler oluştururken bir performans gerilemesi düzeltildi.
- Ekstra bir neden olabilecek bir hata düzeltildi
FORMAT
bir bölümde görün toecek bölüm.sql
meta veriler içeren dosya. - Neden bir hata düzeltildi
max_table_size_to_drop
s deleteilmeye çalış aılırken uygulanacak sınırMATERIALIZED VIEW
açıkça belirtilen bir tabloya bakıyor. - Eski istemcilerle sabit uyumsuzluk (eski istemciler bazen
DateTime('timezone')
anlamadıkları tür). - Okurken bir hata düzeltildi
Nested
kullanılarak eklenen yapıların sütun elemanlarıALTER
ancak, bu sütunların koşulları taşındığında eski bölümler için boşPREWHERE
. - Tabloları sanal olarak filtrelerken bir hata düzeltildi
_table
sorgu columnslardaki sütunlarMerge
Tablolar. - Kullanırken bir hata düzeltildi
ALIAS
Col inum inns inDistributed
Tablolar. - Gelen toplam fonksiyonları ile sorgular için dinamik derleme imkansız hale bir hata düzeltildi
quantile
aile. - Kullanırken çok nadir durumlarda meydana gelen sorgu yürütme boru hattında bir yarış durumu düzeltildi
Merge
çok sayıda tablo içeren tablolar ve kullanırkenGLOBAL
alt sorgular. - Farklı boyutlarda dizileri geçerken bir kilitlenme düzeltildi
arrayReduce
birden çok bağımsız değişkenden toplam işlevleri kullanırken işlev. - İle sorgu useların kullanılması yasaktır
UNION ALL
in aMATERIALIZED VIEW
. - Başlatma sırasında bir hata düzeltildi
part_log
sunucu başlatıldığında sistem tablosu (varsayılan olarak,part_log
devre dışı) olur.
Geriye dönük uyumsuz değişiklikler:
- Kaldır theılan
distributed_ddl_allow_replicated_alter
seçenek. Bu davranış varsayılan olarak etkindir. - Kaldır theılan
strict_insert_defaults
ayar. Bu işlevi kullanıyorsanız,clickhouse-feedback@yandex-team.com
. - Kaldır theılan
UnsortedMergeTree
motor.
ClickHouse Yayın 1.1.54343, 2018-02-05
- Dağıtılmış DDL sorgularında ve dağıtılmış tabloların oluşturucularında küme adlarını tanımlamak için makro desteği eklendi:
CREATE TABLE distr ON CLUSTER '{cluster}' (...) ENGINE = Distributed('{cluster}', 'db', 'table')
. - Şimdi gibi sorgular
SELECT ... FROM table WHERE expr IN (subquery)
kullanılarak iş arelenirtable
dizin. - Çoğaltılmış tablolara eklerken çoğaltmaların işlenmesi geliştirildi, böylece artık çoğaltma kuyruğunun yürütülmesini yavaşlatmazlar.
ClickHouse Sürümü 1.1.54342, 2018-01-22
Bu sürüm önceki sürüm 1.1.54337 için hata düzeltmeleri içerir:
- 1.1.54337'de bir gerileme düzeltildi: varsayılan kullanıcı salt okunur erişime sahipse, sunucu mesajla başlamayı reddediyor
Cannot create database in readonly mode
. - 1.1.54337 bir gerileme sabit: systemd ile sistemlerde, günlükleri her zaman ne olursa olsun yapılandırma syslog yazılır; watchdog komut dosyası hala init kullanır.d.
- Docker görüntüde yanlış varsayılan yapılandırma: 1.1.54337 bir gerileme düzeltildi.
- Graphıtemergetree sabit nondeterministic davranış (günlük mesajları görebilirsiniz
Data after merge is not byte-identical to the data on another replicas
). - Çoğaltılmış tablolara sorguyu OPTİMİZE ettikten sonra tutarsız birleştirmelere yol açabilecek bir hata düzeltildi (günlük iletilerinde görebilirsiniz
Part ... intersects the previous part
). - (ZHANG2014 tarafından) hedef tabloda MATERİALİZED sütunlar mevcut olduğunda arabellek tabloları şimdi düzgün çalışır.
- NULL uygulanmasında bir hata düzeltildi.
ClickHouse Sürümü 1.1.54337, 2018-01-18
Yenilik:
- Çok boyutlu diziler ve tuples depolanması için destek eklendi (
Tuple
veri türü) tablolarda. - Masa fonksiyonları için destek
DESCRIBE
veINSERT
sorgular. Alt sorgular için destek eklendiDESCRIBE
. Örnekler:DESC TABLE remote('host', default.hits)
;DESC TABLE (SELECT 1)
;INSERT INTO TABLE FUNCTION remote('host', default.hits)
. İçin destekINSERT INTO TABLE
ayrıcaINSERT INTO
. - Saat dilimleri için geliştirilmiş destek. Bu
DateTime
veri türü ayrıştırma ve metin biçimlerinde biçimlendirme için kullanılan saat dilimi ile açıklamalı. Örnek:DateTime('Europe/Moscow')
. Zaman dilimleri için işlevlerde belirtildiğindeDateTime
bağımsız değişkenler, dönüş türü saat dilimini izler ve değer beklendiği gibi görüntülenir. - Fonksiyonları eklendi
toTimeZone
,timeDiff
,toQuarter
,toRelativeQuarterNum
. ButoRelativeHour
/Minute
/Second
fonksiyonlar bir tür değeri alabilirDate
bir argüman olarak. Bunow
işlev adı büyük / küçük harf duyarlıdır. - Add theed the
toStartOfFifteenMinutes
fonksiyon (Kirill Shvakov). - Add theed the
clickhouse format
sorguları biçimlendirme aracı. - Add theed the
format_schema_path
configuration parameter (Marek Vavruşa). It is used for specifying a schema inCap'n Proto
biçimli. Şema dosyaları yalnızca belirtilen dizinde bulunabilir. - Yapılandırma değiştirmeleri için destek eklendi (
incl
veconf.d
) dış sözlüklerin ve modellerin konfigürasyonu için (Pavel Yakunin). - İçin belgeler içeren bir sütun eklendi
system.settings
tablo (Kirill Shvakov). - Add theed the
system.parts_columns
her veri bölümünde sütun boyutları hakkında bilgi içeren tabloMergeTree
Tablolar. - Add theed the
system.models
yüklenen hakkında bilgi içeren tabloCatBoost
makine öğrenme modelleri. - Add theed the
mysql
veodbc
tablo fonksiyonu ve karşılık gelenMySQL
veODBC
uzak veritabanlarına erişmek için tablo motorları. Bu işlevsellik beta aşamasındadır. - Türünde bir argüman geçme imkanı eklendi
AggregateFunction
içingroupArray
toplama işlevi (böylece bazı toplama işlevinin bir dizi durumunu oluşturabilirsiniz). - Agrega fonksiyon birleştiricilerinin çeşitli kombinasyonlarındaki kısıtlamalar kaldırıldı. Örneğin, kullanabilirsiniz
avgForEachIf
kezaavgIfForEach
farklı davranışlara sahip toplam fonksiyonlar. - Bu
-ForEach
toplama işlevi Birleştiricisi, birden çok bağımsız değişkenin toplama işlevleri için genişletilir. - Toplam fonksiyonları için destek eklendi
Nullable
işlevin bir non döndürdüğü durumlarda bile argümanlar-Nullable
sonuç (Silviu Caragea'nın katkısıyla eklendi). Örnek:groupArray
,groupUniqArray
,topK
. - Add theed the
max_client_network_bandwidth
içinclickhouse-client
(Kirill Shvakov). - İle kullanıcılar
readonly = 2
setting are allowed to work with TEMPORARY tables (CREATE, DROP, INSERT…) (Kirill Shvakov). - İle birden fazla tüketici kullanmak için destek eklendi
Kafka
motor. İçin genişletilmiş yapılandırma seçenekleriKafka
(Marek Vavruša). - Add theed the
intExp3
veintExp4
işlevler. - Add theed the
sumKahan
toplama işlevi. - To * Number* ornull işlevleri eklendi, burada * Number * sayısal bir türdür.
- İçin destek eklendi
WITH
CLA anus anes for anINSERT SELECT
sorgu (yazar: zhang2014). - Eklenen ayarlar:
http_connection_timeout
,http_send_timeout
,http_receive_timeout
. Özellikle, bu ayarlar çoğaltma için veri parçalarını indirmek için kullanılır. Bu ayarları değiştirmek, ağ aşırı yüklenmişse daha hızlı yük devretme olanağı sağlar. - İçin destek eklendi
ALTER
tip tablolar içinNull
(Anastasiya Tsarkova). - Bu
reinterpretAsString
işlev, bellekte bitişik olarak depolanan tüm veri türleri için genişletilir. - Add theed the
--silent
seçeneği içinclickhouse-local
aracı. Bu stderr yazdırma sorgu yürütme bilgi bastırır. - Tip değerlerini okumak için destek eklendi
Date
ay ve/veya Ayın gün iki basamak (Amos kuş) yerine tek bir basamak kullanılarak belirtilen bir biçimde metinden.
Performans iyileştirmeleri:
- Agrega fonksiyonlarının geliştirilmiş performansı
min
,max
,any
,anyLast
,anyHeavy
,argMin
,argMax
dize argümanlarından. - Fonksiyonların geliştirilmiş performansı
isInfinite
,isFinite
,isNaN
,roundToExp2
. - Ayrıştırma ve biçimlendirmenin geliştirilmiş performansı
Date
veDateTime
değerleri metin biçiminde yazın. - Kayan nokta sayılarının ayrıştırılmasında geliştirilmiş performans ve hassasiyet.
- İçin bellek kullanımını azalt fortı
JOIN
sol ve sağ parçaların, içinde bulunmayan aynı adlara sahip sütunlara sahip olması durumundaUSING
. - Agrega fonksiyonlarının geliştirilmiş performansı
varSamp
,varPop
,stddevSamp
,stddevPop
,covarSamp
,covarPop
,corr
hesaplama kararlılığını azaltarak. Eski fonksiyonlar isimler altında mevcutturvarSampStable
,varPopStable
,stddevSampStable
,stddevPopStable
,covarSampStable
,covarPopStable
,corrStable
.
Hata düzeltmeleri:
- Bir çalıştırdıktan sonra sabit veri tekilleştirme
DROP
veyaDETACH PARTITION
sorgu. Önceki sürümde, bir bölümü bırakmak ve aynı verileri tekrar eklemek işe yaramadı çünkü eklenen bloklar kopya olarak kabul edildi. - Yanlış yorumlanmasına yol açabilecek bir hata düzeltildi
WHERE
için fık forraCREATE MATERIALIZED VIEW
ile sorgularPOPULATE
. - Kullanarak bir hata düzeltildi
root_path
param parametereter in thezookeeper_servers
yapılandırma. - Geçen sabit beklenmedik sonuçlar
Date
arg toum argumentent totoStartOfDay
. - Sabit
addMonths
vesubtractMonths
fonksiyonlar ve aritmetikINTERVAL n MONTH
sonuç bir önceki yıla sahip olduğu durumlarda. - İçin eksik destek eklendi
UUID
için veri türüDISTINCT
,JOIN
, veuniq
agrega fonksiyonları ve dış sözlükler (Evgeniy Ivanov). İçin destekUUID
hala eksik. - Sabit
SummingMergeTree
satırların sıfıra toplandığı durumlarda davranış. - İçin çeşitli düzeltmeler
Kafka
engine (Marek Vavruša). - Sabit yanlış davranış
Join
masa motoru (Amos kuş). - FreeBSD ve OS X altında yanlış ayırıcı davranışı düzeltildi.
- Bu
extractAll
fonksiyon artık boş eşleşmeleri destekliyor. - Kullanımını engelleyen bir hata düzeltildi
libressl
yerineopenssl
. - Sabit
CREATE TABLE AS SELECT
geçici tablolardan sorgu. - Çoğaltma kuyruğunu güncelleme sabit olmayan atomicity. Bu, sunucu yeniden başlatılıncaya kadar eşlemelerin eşitlenmemesine neden olabilir.
- Sabit Olası taşma
gcd
,lcm
vemodulo
(%
operatör) (Maks Skorokhod). -preprocessed
dosyalar şimdi değiştirdikten sonra oluşturulurumask
(umask
config değişmiş) olabilir.- Parçaların arka plan kontrol bir hata düzeltildi (
MergeTreePartChecker
) özel bir bölüm anahtarı kullanırken. - Tuples sabit ayrıştırma (değerleri
Tuple
veri türü) metin biçimlerinde. - Uyumsuz türlerle ilgili geliştirilmiş hata mesajları
multiIf
,array
ve diğer bazı fonksiyonlar. - İçin yeniden tasarlanmış destek
Nullable
türler. Bir sunucu çökmesine yol açabilir sabit hatalar. İlgili hemen hemen tüm diğer hatalar düzeltildiNULL
destek: INSERT SELECT yanlış tür dönüşümleri, sahip ve PREWHERE içinde Nullable için yetersiz destek,join_use_nulls
mod, argümanlar olarak Nullable türleriOR
operatör, vb. - Veri türlerinin iç semantiği ile ilgili çeşitli hatalar düzeltildi. Örnekler: gereksiz toplama
Enum
type Fi fieldsel fieldsds inSummingMergeTree
; hizalamaEnum
yazmakPretty
format ,lar vb. - Bileşik sütunların izin verilen kombinasyonları için daha sıkı kontroller.
- İçin çok büyük bir parametre belirlerken taşma düzeltildi
FixedString
veri türü. - Bu bir hata düzeltildi
topK
genel bir durumda toplama işlevi. - Toplam fonksiyonların n-ary varyantlarının argümanlarında dizi boyutlarının eşitliği için eksik kontrol eklendi
-Array
birleştirici. - Bir hata düzeltildi
--pager
içinclickhouse-client
(yazar: ks1322). - Sabit hassasiyet
exp10
işlev. - Davranışı Düzelt theildi
visitParamExtract
belgelere daha iyi uyum için işlev. - Yanlış veri türleri belirtildiğinde kilitlenme düzeltildi.
- Davranışı düzeltildi
DISTINCT
tüm sütunların sabitler olması durumunda. - Kullanarak durumunda sabit sorgu biçimlendirme
tupleElement
tuple öğesi dizini olarak karmaşık bir sabit ifadeyle işlev. - Bir hata düzeltildi
Dictionary
için tablolarrange_hashed
sözlükler. - Sonucunda aşırı satırlara yol açan bir hata düzeltildi
FULL
veRIGHT JOIN
(Amos Kuşu). - Geçici dosyaları oluştururken ve kaldırırken bir sunucu çökmesi düzeltildi
config.d
yapılandırma yeniden yükleme sırasında dizinler. - Sabit
SYSTEM DROP DNS CACHE
sorgu: önbellek temizlendi, ancak küme düğümlerinin adresleri güncelleştirilmedi. - Davranışı düzeltildi
MATERIALIZED VIEW
çalıştırdıktan sonraDETACH TABLE
for the table under the view (Marek Vavruša).
İyileştirmeler oluşturun:
- Bu
pbuilder
aracı oluşturur için kullanılır. Yapı işlemi, yapı ana bilgisayarı ortamından neredeyse tamamen bağımsızdır. - Farklı işletim sistemi sürümleri için tek bir yapı kullanılır. Paketler ve ikili Linux sistemleri geniş bir yelpazede ile uyumlu yapılmıştır.
- Add theed the
clickhouse-test
paket. Fonksiyonel testleri çalıştırmak için kullanılabilir. - Kaynak tarball artık depoya yayınlanabilir. Github kullanmadan yapıyı yeniden oluşturmak için kullanılabilir.
- Travis CI ile sınırlı entegrasyon eklendi. Travis oluşturma süresi sınırları nedeniyle, yalnızca hata ayıklama yapı sınanır ve sınamaların sınırlı bir alt kümesi çalıştırılır.
- İçin destek eklendi
Cap'n'Proto
varsayılan yapı içinde. - Dokümantasyon kaynaklarının biçimini değiştirdi
Restricted Text
-e doğruMarkdown
. - İçin destek eklendi
systemd
(Vladimir Smirnov). Bazı işletim sistemi görüntüleri ile uyumsuzluk nedeniyle varsayılan olarak devre dışı bırakılır ve manuel olarak etkinleştirilebilir. - Dinamik kod üretimi için,
clang
velld
içine gömülüclickhouse
ikilik. Olarak da çağr alsoıla invokedbilirlerclickhouse clang
veclickhouse lld
. - GNU uzantılarının koddan kaldırılması. Etkin
-Wextra
seçenek. İle inşa ederkenclang
varsayılan değerlibc++
yerinelibstdc++
. - Elde
clickhouse_parsers
veclickhouse_common_io
kütüphaneler hızlandırmak için çeşitli araçlar oluşturur.
Geriye dönük uyumsuz değişiklikler:
- İşaret formatlerin biçimi
Log
içeren tabloları yazınNullable
sütunlar geriye dönük uyumsuz bir şekilde değiştirildi. Bu tablolar varsa, bunları dönüştürmek gerekirTinyLog
yeni sunucu sürümünü başlatmadan önce yazın. Bunu yapmak için değiştirinENGINE = Log
ileENGINE = TinyLog
karşılık gelen.sql
dosya içindemetadata
dizin. Masanız yoksaNullable
sütun veya tablonuzun türü değilseLog
o zaman hiçbir şey yapmanıza gerek yok. - Kaldır theılan
experimental_allow_extended_storage_definition_syntax
ayar. Şimdi bu özellik varsayılan olarak etkindir. - Bu
runningIncome
işlev olarak yeniden adlandırıldırunningDifferenceStartingWithFirstvalue
karışıklığı önlemek için. - Kaldır theılan
FROM ARRAY JOIN arr
array JOİN, tablo olmadan (Amos Bird) doğrudan FROM sonra belirtildiğinde sözdizimi. - Kaldır theılan
BlockTabSeparated
sadece gösteri amaçlı kullanılan format. - Toplu işlevler için durum biçimini değiştirdi
varSamp
,varPop
,stddevSamp
,stddevPop
,covarSamp
,covarPop
,corr
. Bu toplama işlevlerinin durumlarını tablolarda depoladıysanız (AggregateFunction
veri türü veya ilgili durumları ile hayata görünümleri), yazınız clickhouse-feedback@yandex-team.com. - Önceki sunucu sürümlerinde belgelenmemiş bir özellik vardı: bir toplama işlevi parametrelere bağlıysa, yine de AggregateFunction veri türünde parametreler olmadan belirtebilirsiniz. Örnek:
AggregateFunction(quantiles, UInt64)
yerineAggregateFunction(quantiles(0.5, 0.9), UInt64)
. Bu özellik kayboldu. Belgesiz olmasına rağmen, gelecek sürümlerde tekrar desteklemeyi planlıyoruz. - Enum veri türleri min / max toplama işlevlerinde kullanılamaz. Bu yetenek bir sonraki sürümde iade edilecektir.
Yükseltme yaparken lütfen unutmayın:
- Bir kümede, bazı yinelemelerin Clickhouse'un eski sürümünü çalıştırdığı ve bazılarının yeni sürümü çalıştırdığı noktada yuvarlanan bir güncelleme yaparken, çoğaltma geçici olarak durdurulur ve ileti
unknown parameter 'shard'
günlüğünde görünür. Kümenin tüm yinelemeleri güncelleştirildikten sonra çoğaltma devam eder. - Clickhouse'un farklı sürümleri küme sunucularında çalışıyorsa, aşağıdaki işlevleri kullanarak dağıtılmış sorguların yanlış sonuçları olması olasıdır:
varSamp
,varPop
,stddevSamp
,stddevPop
,covarSamp
,covarPop
,corr
. Tüm küme düğümlerini güncelleştirmelisiniz.