ClickHouseCalc Audit: MergeTree on NVMe VDS vs Elasticsearch / OpenSearch ELK Footprint
In our deterministic ClickHouseCalc storage equations, Elasticsearch/OpenSearch inverted indexes plus stored `_source` JSON typically occupy 1.1x–1.6x of raw log volume alongside 31 GB JVM heaps, whereas ClickHouse MergeTree with ZSTD(3) packs structured telemetry down to ~0.095x of raw volume.
ClickHouseCalc Tariff & Storage Architecture Matrix (ultahost-nvme-vds-vs-elasticsearch-logs)
| OLAP Audit Dimension | Incumbent Platform | Self-Hosted ClickHouse MergeTree |
|---|---|---|
| Modeled On-Disk Footprint per 10 TB Raw JSON Logs | ~11.0 TB – 15.5 TB (Lucene inverted postings + `_source`) | ~0.95 TB – 1.22 TB (Columnar ZSTD(3) + 22% merge buffer) |
| Memory Architecture at 250M Logs/Day (~370 GB/day) | Multi-node cluster keeping JVM Heap <= 31 GB Compressed OOPs | Single 64 GB UltaHost NVMe VDS ($58.00/mo published rate) |
| Full-Text Substring vs Analytical Group-By Strength | Strong relevance-scored fuzzy search & BM25 ranking | Strong columnar `GROUP BY` + `tokenbf_v1` bloom skip filtering |
| Retention Expiry Mechanism | Index Lifecycle Management (ILM) shard rollover & delete | Metadata-level MergeTree partition `DROP` with minimal I/O |
ClickHouseCalc Architectural Deep Dive: ultahost-nvme-vds-vs-elasticsearch-logs
When ClickHouseCalc Recommends Keeping Elasticsearch vs Migrating to MergeTree
If your primary workload is human-facing e-commerce product search requiring BM25 relevance scoring, stemming, and fuzzy typo tolerance, Elasticsearch, OpenSearch, or Meilisearch remains the right tool. For append-only machine logs and OTel spans filtered by timestamp and `service_name`, ClickHouse sparse indexes avoid multi-terabyte inverted posting lists.
ClickHouseCalc Bloom Filter (`tokenbf_v1`) Design for Substring Log Lookups
Attaching a `TYPE tokenbf_v1(32768, 3, 0)` skip index on the `body` column adds under 3% storage overhead while letting ClickHouse skip 8,192-row granules that cannot match rare error tokens or request UUIDs. Real side-by-side ingestion logs are tracked as direct host-level telemetry verification on your target instance.