Skip to content

ClickHouse Compatibility Matrix

ClickHouse Compatibility Matrix

Comprehensive compatibility reference for HeliosDB’s ClickHouse protocol implementation.

Overall Compatibility: 85%

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

Protocol Support

Native Protocol (TCP)

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

HTTP Protocol

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

Table Engines

MergeTree Family

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

Integration Engines

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

Special Engines

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

Data Types

Numeric Types

TypeResultNotes
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

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

Date/Time Types

TypeResultNotes
DateSupportedCalendar date
Date32SupportedExtended range
DateTimeSupportedTimestamp
DateTime64SupportedWith precision

Composite Types

TypeResultNotes
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

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

JOIN Operations

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

Window Functions

FunctionResultNotes
ROW_NUMBERSupported
RANKSupported
DENSE_RANKSupported
LEADSupported
LAGSupported
FIRST_VALUESupported
LAST_VALUESupported
NTH_VALUESupported

Aggregation Functions

Basic Aggregations

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

Statistical Functions

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

Quantile Functions

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

Unique Functions

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

Top-K Functions

FunctionResultNotes
topK()SupportedTop K values
topKWeighted()SupportedWeighted

State Functions

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

Array Functions

FunctionResultNotes
arrayJoinSupportedFlatten arrays
arrayMapSupportedTransform
arrayFilterSupportedFilter
arrayReduceSupportedReduce
arraySortSupportedSort
arrayReverseSupportedReverse
arraySliceSupportedSlice

String Functions

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

Date/Time Functions

FunctionResultNotes
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

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

File Formats

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

Performance Features

FeatureResultNotes
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