Skip to content

ClickHouse Compatibility Matrix

ClickHouse Compatibility Matrix

Comprehensive compatibility reference for HeliosDB’s ClickHouse protocol implementation.

Overall Compatibility: 85%

CategoryCoverageStatus
Native Protocol100%Complete
HTTP Protocol100%Complete
SQL Language90%Complete
Table Engines80%Core engines
Data Types95%All standard types

Protocol Support

Native Protocol (TCP)

FeatureStatusNotes
ConnectionSupportedPort 9000
AuthenticationSupportedPassword-based
CompressionSupportedLZ4, ZSTD, LZ4HC
SSL/TLSSupportedEncrypted connections
Query ExecutionSupportedFull SQL
Batch InsertSupportedHigh throughput

HTTP Protocol

FeatureStatusNotes
GET QueriesSupportedRead operations
POST QueriesSupportedWrite operations
StreamingSupportedLarge result sets
CompressionSupportedgzip, deflate
JSON OutputSupportedMultiple formats

Table Engines

MergeTree Family

EngineStatusNotes
MergeTreeSupportedPrimary engine
ReplacingMergeTreeSupportedUpsert behavior
SummingMergeTreeSupportedAuto-summing
AggregatingMergeTreeSupportedPre-aggregation
CollapsingMergeTreeSupportedCollapsing rows
VersionedCollapsingMergeTreeSupportedVersioned collapse
GraphiteMergeTreePartialBasic support

Integration Engines

EngineStatusNotes
DistributedSupportedMulti-node queries
KafkaSupportedStream ingestion
S3SupportedCloud storage
HDFSPartialBasic support
PostgreSQLSupportedExternal tables
MySQLSupportedExternal tables

Special Engines

EngineStatusNotes
MemorySupportedIn-memory tables
LogSupportedSimple logging
NullSupportedDiscard data
ViewSupportedStandard views
MaterializedViewSupportedAuto-refresh
DictionarySupportedFast lookups

Data Types

Numeric Types

TypeStatusNotes
UInt8/16/32/64SupportedUnsigned integers
Int8/16/32/64SupportedSigned integers
Float32/64SupportedIEEE 754
Decimal(P, S)SupportedFixed precision
UInt128/256SupportedLarge integers
Int128/256SupportedLarge signed

String Types

TypeStatusNotes
StringSupportedVariable length
FixedString(N)SupportedFixed length
UUIDSupportedUUID type
IPv4SupportedIP addresses
IPv6SupportedIPv6 addresses

Date/Time Types

TypeStatusNotes
DateSupportedCalendar date
Date32SupportedExtended range
DateTimeSupportedTimestamp
DateTime64SupportedWith precision

Composite Types

TypeStatusNotes
Array(T)SupportedDynamic arrays
Tuple(T1, T2, …)SupportedNamed tuples
Map(K, V)SupportedKey-value maps
NestedSupportedNested columns
Enum8/16SupportedEnumerated types
LowCardinalitySupportedDictionary encoding
Nullable(T)SupportedNULL support

SQL Features

SELECT Clauses

ClauseStatusNotes
SELECTSupportedColumn selection
FROMSupportedTable references
WHERESupportedRow filtering
PREWHERESupportedEarly filtering
GROUP BYSupportedAggregation
HAVINGSupportedGroup filtering
ORDER BYSupportedSorting
LIMITSupportedRow limiting
OFFSETSupportedRow skipping
SAMPLESupportedData sampling
FINALSupportedDeduplication
WITHSupportedCTEs

JOIN Operations

TypeStatusNotes
INNER JOINSupported
LEFT JOINSupported
RIGHT JOINSupported
FULL JOINSupported
CROSS JOINSupported
ASOF JOINSupportedTime-series joins
GLOBAL JOINSupportedDistributed joins

Window Functions

FunctionStatusNotes
ROW_NUMBERSupported
RANKSupported
DENSE_RANKSupported
LEADSupported
LAGSupported
FIRST_VALUESupported
LAST_VALUESupported
NTH_VALUESupported

Aggregation Functions

Basic Aggregations

FunctionStatusNotes
count()SupportedRow count
sum()SupportedSum values
avg()SupportedAverage
min()SupportedMinimum
max()SupportedMaximum
any()SupportedAny value

Statistical Functions

FunctionStatusNotes
stddevPop()SupportedStd deviation
varPop()SupportedVariance
covarPop()SupportedCovariance
corr()SupportedCorrelation

Quantile Functions

FunctionStatusNotes
quantile()SupportedApproximate
quantileExact()SupportedExact
quantileTiming()SupportedTiming data
quantiles()SupportedMultiple

Unique Functions

FunctionStatusNotes
uniq()SupportedApproximate
uniqExact()SupportedExact
uniqCombined()SupportedCombined
uniqHLL12()SupportedHyperLogLog

Top-K Functions

FunctionStatusNotes
topK()SupportedTop K values
topKWeighted()SupportedWeighted

State Functions

FunctionStatusNotes
*State()SupportedAggregate state
*Merge()SupportedMerge states
*If()SupportedConditional

Array Functions

FunctionStatusNotes
arrayJoinSupportedFlatten arrays
arrayMapSupportedTransform
arrayFilterSupportedFilter
arrayReduceSupportedReduce
arraySortSupportedSort
arrayReverseSupportedReverse
arraySliceSupportedSlice

String Functions

FunctionStatusNotes
concatSupportedConcatenation
substringSupportedSubstring
lengthSupportedLength
lower/upperSupportedCase conversion
trimSupportedTrim whitespace
splitByCharSupportedSplit string
matchSupportedRegex match
extractSupportedRegex extract

Date/Time Functions

FunctionStatusNotes
toDateSupportedConvert to date
toDateTimeSupportedConvert to datetime
toStartOf*SupportedPeriod start
toYear/Month/DaySupportedExtract parts
date_add/subSupportedDate arithmetic
dateDiffSupportedDate difference
now()SupportedCurrent time

External Data Integration

S3 Functions

FeatureStatusNotes
s3()SupportedRead from S3
s3Cluster()SupportedDistributed read
INSERT INTO s3()SupportedWrite to S3

File Formats

FormatStatusNotes
CSVSupportedText format
TSVSupportedTab-separated
JSONSupportedJSON format
ParquetSupportedColumnar format
ORCSupportedColumnar format
AvroPartialBasic support

Performance Features

FeatureStatusNotes
Columnar StorageSupportedNative
Data CompressionSupportedLZ4, ZSTD
Vectorized ExecutionSupportedSIMD
Parallel QuerySupportedMulti-thread
Query PipeliningSupportedStreaming
Index SkippingSupportedSparse index

Known Limitations

Not Supported

FeatureReason
Replicated EnginesUse HeliosDB replication
Embedded ZooKeeperDifferent architecture
Kafka Exactly-OnceDifferent guarantees
HDFS Full SupportPlanned

Behavioral Differences

  1. Replication: Uses HeliosDB replication instead of ClickHouse Keeper
  2. Storage: Uses HeliosDB storage engine
  3. Mutations: May have different timing
  4. Settings: Some advanced settings may differ

Related: README.md | CONFIGURATION.md | EXAMPLES.md

Last Updated: December 2025