{"collection":{"slug":"data-engineering","name":"Data & Analytics Engineering"},"digest":{"id":"cwd_gJZuQQ1yWhREmoorH2CcC","weekStart":"2026-09-07","title":"ClickHouse goes on offense while dbt rebuilds its ClickHouse adapter","intro":"ClickHouse shipped its 26.8 LTS release and a wave of platform news — on-demand query compute, managed Postgres on Google Cloud, and a ChatGPT Work data agent launch — while dbt-core's 2.0 line filled out its new adbc_clickhouse driver.","body":"### The 26.8 LTS anchors ClickHouse's big week\n\nClickHouse's headline engineering story is [release 26.8](/release/rel_wBcWAzPEsy_-iSg9Pg_aE-clickhouse-release-26-8), the new LTS cut, which lands background queries, pipelined SQL execution, new text tokenizers, broader data-lake integrations, and faster Parquet, aggregation, and join paths. That foundation was accompanied by a genuinely wide platform push: [On-Demand Compute](/release/rel_moVRa2CYDzzf98Hj6WxCu-announcing-on-demand-compute-instant-compute-for-your-most-intensive-workloads) lets you attach extra workers to a single expensive query without starving production, and [Managed Postgres on Google Cloud](/release/rel_YYW3vbZ_pPqP9-zMv9cS6-announcing-clickhouse-managed-postgres-on-google-cloud) extends the NVMe-backed, CDC-into-ClickHouse offering beyond its original cloud. ClickHouse also became a [launch partner for the Data agent in ChatGPT Work](/release/rel_1ez0gD4EATjS4D68D9Ezi-clickhouse-is-a-launch-partner-for-the-data-agent-in-chatgpt-work), wiring ClickHouse Cloud into natural-language reporting. Maintenance releases trickled out across the supported lines — [26.7.7.92](/release/rel_VmyrUokqij0FUiLPv7efg-release-v26-7-7-92-stable) and [26.6.5.120](/release/rel_fMP5-NcC99kWQW0SNlOqT-release-v26-6-5-120-stable) on stable, [26.3.33.24](/release/rel_pS5yYmpwBWSYQ2-JW1z-c-release-v26-3-33-24-lts) and [26.8.3.105](/release/rel_rkUACQoYFbOzWe_JXFXcA-release-v26-8-3-105-lts) on LTS — the routine churn that keeps long-lived deployments patched.\n\n### Two ways to get Postgres and Parquet data in\n\nClickHouse's ingestion story got two distinct answers this week. [WalShadow](/release/rel_8FZCUoxebbbONZE3ve6Cn-introducing-walshadow-sub-second-postgres-replication-to-clickhouse-from) replicates Postgres straight from physical WAL into ClickHouse at roughly 200 ms latency and 289k rows/sec in benchmarks — a logical-replication-free path for teams who want near-real-time mirrors. On the batch side, the [chdb Postgres extension](/release/rel_OXh2Wx2VOD_RerFET_2As-introducing-chdb-postgres-extension-high-performance-imports-from-cloud-storage) and a guide to [loading Parquet into MySQL via ClickHouse](/release/rel_9qrfls7oUAgbixWrlcBIo-loading-parquet-data-into-mysql-with-clickhouse) show the embedded engine being used as a portable import/export layer rather than a destination. For teams weighing the whole stack, the [first end-to-end CostBench results](/release/rel_zb80xq2kUVokCAhi3v6eF-measuring-real-time-performance-per-dollar-under-continuous-load-costbench-s) put ClickHouse Cloud at 412–1,996× better performance per dollar under continuous load, with a companion analysis of [where that gap versus Snowflake comes from](/release/rel_VFDJlqZ5yY0a5fG75QEIK-clickhouse-cloud-vs-snowflake-what-drives-the-real-time-performance-per-dollar).\n\n### dbt's ClickHouse adapter reaches parity\n\nThe dbt-core 2.0 pre-release track is converging on ClickHouse. The [adbc_clickhouse driver](/release/rel_n5M5ghRS6RQ-469ZZ8vHv-dbt-core-v2-0-0-dev-38-wires-clickhouse-defaults-and-adds-adbc-clickhouse-driver) now handles connection-level settings via profile `custom_settings`, defaults the database to the profile schema, tolerates literal `?` in SQL, and identifies dbt in the HTTP User-Agent, with [dev.39](/release/rel_-F8FAm5PkYDkOxKjqUvey-dbt-core-v2-0-0-dev-39-adds-clickhouse-connection-settings-via-adbc-driver) and the earlier [dev.37](/release/rel_LEQpqx994fhkDGKh789GP-dbt-core-clickhouse-adapter-adds-connection-settings-and-adbc-clickhouse-driver) filling in v1-parity defaults; test-PyPI builds ([dev.39](/release/rel_0ocXD4hC8brqGagOiUX6F-v2-0-0-dev-39-test-pypi), [dev.38](/release/rel_cH05QQN1DF7Ntu-JwQzla-v2-0-0-dev-38-test-pypi), [dev.37](/release/rel_49lN6voy4e0qRiTIwEcl3-v2-0-0-dev-37-test-pypi)) mirror them for early adopters. More consequentially, [rc.2](/release/rel_jZyXi4-fUpSoZ4pY__QfC-dbt-core-v2-0-0-rc-2-adds-clickhouse-unit-tests-and-materialized-view-support) brings unit tests and full materialized-view support to ClickHouse — `table` compatibility with MVs, `on_schema_change`, and in-place refresh-schedule updates — closing a long-standing feature gap. On the stable side, [1.12.4](/release/rel_JpvXNW2o8S0xPXNIDhnhj-dbt-core-v1-12-4-fixes-built-in-test-eviction-after-fusion-manifest-load) fixes built-in generic test eviction after a Fusion manifest load and adds `otel_trace_id()`/`otel_span_id()` Jinja functions, while [1.11.15](/release/rel_wTgqItIndf2HvhbnkIHDY-dbt-core-v1-11-15-validates-package-installation-paths) hardens package install paths.\n\n### Orchestration and streaming glue\n\nElsewhere, [Dagster 1.13.22](/release/rel_0pg8y1ivhuxNkjYs-3JZp-1-13-22-core-0-29-22-libraries) speeds up run dequeuing when concurrency pools are saturated, adds time-window filtering and live paging to the tick timeline, and drops the code-location requirement from its MCP launch tools. Tinybird's [Forward CLI 4.6.17](/release/rel_KaxZJH6otryOdsssAm32B-retry-failed-jobs-from-the-forward-cli) adds `tb job retry` for failed imports and cloud-storage syncs, though it also renames `tinybird.rate_limits_log` to `cluster_control_log` — a breaking change for anyone querying the old Service Data Source. Finally, ClickHouse's own AI Functions write-up ([SQL-native classification, generation, embeddings, and semantic search](/release/rel_jMJPpcjiyJI-xz-9JHSMZ-ai-functions-in-clickhouse-upgrade-your-sql-to-the-ai-age)) and a tutorial on [turning agent text into ClickHouse vectors with Google's MCP Toolbox](/release/rel_ThlVgsPL5kWmO9WvDolOj-how-mcp-toolbox-turns-agent-text-into-clickhouse-vectors) suggest where the vector-and-agent workload is heading.","releaseIds":["rel_wBcWAzPEsy_-iSg9Pg_aE","rel_moVRa2CYDzzf98Hj6WxCu","rel_YYW3vbZ_pPqP9-zMv9cS6","rel_1ez0gD4EATjS4D68D9Ezi","rel_VmyrUokqij0FUiLPv7efg","rel_fMP5-NcC99kWQW0SNlOqT","rel_pS5yYmpwBWSYQ2-JW1z-c","rel_rkUACQoYFbOzWe_JXFXcA","rel_8FZCUoxebbbONZE3ve6Cn","rel_OXh2Wx2VOD_RerFET_2As","rel_9qrfls7oUAgbixWrlcBIo","rel_zb80xq2kUVokCAhi3v6eF","rel_VFDJlqZ5yY0a5fG75QEIK","rel_n5M5ghRS6RQ-469ZZ8vHv","rel_-F8FAm5PkYDkOxKjqUvey","rel_LEQpqx994fhkDGKh789GP","rel_0ocXD4hC8brqGagOiUX6F","rel_cH05QQN1DF7Ntu-JwQzla","rel_49lN6voy4e0qRiTIwEcl3","rel_jZyXi4-fUpSoZ4pY__QfC","rel_JpvXNW2o8S0xPXNIDhnhj","rel_wTgqItIndf2HvhbnkIHDY","rel_0pg8y1ivhuxNkjYs-3JZp","rel_KaxZJH6otryOdsssAm32B","rel_jMJPpcjiyJI-xz-9JHSMZ","rel_ThlVgsPL5kWmO9WvDolOj"],"releaseCount":29,"generatedAt":"2026-09-14T06:25:05.962Z","releases":[{"id":"rel_wBcWAzPEsy_-iSg9Pg_aE","title":"ClickHouse release 26.8","path":"/release/rel_wBcWAzPEsy_-iSg9Pg_aE-clickhouse-release-26-8","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_moVRa2CYDzzf98Hj6WxCu","title":"Announcing On-Demand Compute: Instant compute for your most intensive workloads","path":"/release/rel_moVRa2CYDzzf98Hj6WxCu-announcing-on-demand-compute-instant-compute-for-your-most-intensive-workloads","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_YYW3vbZ_pPqP9-zMv9cS6","title":"Announcing ClickHouse Managed Postgres on Google Cloud","path":"/release/rel_YYW3vbZ_pPqP9-zMv9cS6-announcing-clickhouse-managed-postgres-on-google-cloud","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_1ez0gD4EATjS4D68D9Ezi","title":"ClickHouse is a launch partner for the Data agent in ChatGPT Work","path":"/release/rel_1ez0gD4EATjS4D68D9Ezi-clickhouse-is-a-launch-partner-for-the-data-agent-in-chatgpt-work","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_VmyrUokqij0FUiLPv7efg","title":"Release v26.7.7.92-stable","path":"/release/rel_VmyrUokqij0FUiLPv7efg-release-v26-7-7-92-stable","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_fMP5-NcC99kWQW0SNlOqT","title":"Release v26.6.5.120-stable","path":"/release/rel_fMP5-NcC99kWQW0SNlOqT-release-v26-6-5-120-stable","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_pS5yYmpwBWSYQ2-JW1z-c","title":"Release v26.3.33.24-lts","path":"/release/rel_pS5yYmpwBWSYQ2-JW1z-c-release-v26-3-33-24-lts","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_rkUACQoYFbOzWe_JXFXcA","title":"Release v26.8.3.105-lts","path":"/release/rel_rkUACQoYFbOzWe_JXFXcA-release-v26-8-3-105-lts","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_8FZCUoxebbbONZE3ve6Cn","title":"Introducing WalShadow: Sub-second Postgres replication to ClickHouse from physical WAL","path":"/release/rel_8FZCUoxebbbONZE3ve6Cn-introducing-walshadow-sub-second-postgres-replication-to-clickhouse-from","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_OXh2Wx2VOD_RerFET_2As","title":"Introducing chdb Postgres extension: High-performance imports from cloud storage","path":"/release/rel_OXh2Wx2VOD_RerFET_2As-introducing-chdb-postgres-extension-high-performance-imports-from-cloud-storage","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_9qrfls7oUAgbixWrlcBIo","title":"Loading Parquet data into MySQL with ClickHouse","path":"/release/rel_9qrfls7oUAgbixWrlcBIo-loading-parquet-data-into-mysql-with-clickhouse","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_zb80xq2kUVokCAhi3v6eF","title":"Measuring real-time performance per dollar under continuous load: CostBench’s first end-to-end results","path":"/release/rel_zb80xq2kUVokCAhi3v6eF-measuring-real-time-performance-per-dollar-under-continuous-load-costbench-s","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_VFDJlqZ5yY0a5fG75QEIK","title":"ClickHouse Cloud vs. Snowflake: What drives the real-time performance-per-dollar gap","path":"/release/rel_VFDJlqZ5yY0a5fG75QEIK-clickhouse-cloud-vs-snowflake-what-drives-the-real-time-performance-per-dollar","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_n5M5ghRS6RQ-469ZZ8vHv","title":"dbt-core v2.0.0-dev.38 wires ClickHouse defaults and adds adbc_clickhouse driver","path":"/release/rel_n5M5ghRS6RQ-469ZZ8vHv-clickhouse-connection-defaults-wired-adbc-driver-added","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":2},{"id":"rel_-F8FAm5PkYDkOxKjqUvey","title":"dbt-core v2.0.0-dev.39 adds ClickHouse connection settings via adbc driver","path":"/release/rel_-F8FAm5PkYDkOxKjqUvey-clickhouse-connection-settings-land-on-adbc-driver","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":3},{"id":"rel_LEQpqx994fhkDGKh789GP","title":"dbt-core ClickHouse adapter adds connection settings and adbc_clickhouse driver","path":"/release/rel_LEQpqx994fhkDGKh789GP-clickhouse-adapter-moves-to-adbc-driver-adds-connection-settings","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":2},{"id":"rel_0ocXD4hC8brqGagOiUX6F","title":"v2.0.0-dev.39-test-pypi","path":"/release/rel_0ocXD4hC8brqGagOiUX6F-v2-0-0-dev-39-test-pypi","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":null},{"id":"rel_cH05QQN1DF7Ntu-JwQzla","title":"v2.0.0-dev.38-test-pypi","path":"/release/rel_cH05QQN1DF7Ntu-JwQzla-v2-0-0-dev-38-test-pypi","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":null},{"id":"rel_49lN6voy4e0qRiTIwEcl3","title":"v2.0.0-dev.37-test-pypi","path":"/release/rel_49lN6voy4e0qRiTIwEcl3-v2-0-0-dev-37-test-pypi","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":null},{"id":"rel_jZyXi4-fUpSoZ4pY__QfC","title":"dbt-core v2.0.0-rc.2 adds ClickHouse unit tests and materialized view support","path":"/release/rel_jZyXi4-fUpSoZ4pY__QfC-clickhouse-unit-tests-and-mv-support-land","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":3},{"id":"rel_JpvXNW2o8S0xPXNIDhnhj","title":"dbt-core v1.12.4 fixes built-in test eviction after Fusion manifest load","path":"/release/rel_JpvXNW2o8S0xPXNIDhnhj-built-in-tests-survive-fusion-manifest-loads","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":2},{"id":"rel_wTgqItIndf2HvhbnkIHDY","title":"dbt-core v1.11.15 validates package installation paths","path":"/release/rel_wTgqItIndf2HvhbnkIHDY-package-install-paths-validated-for-safety","org":{"slug":"dbt-labs","name":"dbt Labs"},"importance":2},{"id":"rel_0pg8y1ivhuxNkjYs-3JZp","title":"1.13.22 (core) / 0.29.22 (libraries)","path":"/release/rel_0pg8y1ivhuxNkjYs-3JZp-1-13-22-core-0-29-22-libraries","org":{"slug":"dagster","name":"Dagster"},"importance":null},{"id":"rel_KaxZJH6otryOdsssAm32B","title":"Retry failed jobs from the Forward CLI","path":"/release/rel_KaxZJH6otryOdsssAm32B-retry-failed-jobs-from-the-forward-cli","org":{"slug":"tinybird","name":"Tinybird"},"importance":null},{"id":"rel_jMJPpcjiyJI-xz-9JHSMZ","title":"AI Functions in ClickHouse: Upgrade your SQL to the AI age","path":"/release/rel_jMJPpcjiyJI-xz-9JHSMZ-ai-functions-in-clickhouse-upgrade-your-sql-to-the-ai-age","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null},{"id":"rel_ThlVgsPL5kWmO9WvDolOj","title":"How MCP Toolbox turns agent text into ClickHouse vectors","path":"/release/rel_ThlVgsPL5kWmO9WvDolOj-how-mcp-toolbox-turns-agent-text-into-clickhouse-vectors","org":{"slug":"clickhouse","name":"ClickHouse"},"importance":null}]}}