How Alpine Linux Reduces Container Size
Alpine Linux shrinks container images by replacing glibc with musl and using a minimal base, but introduces compatibility trade-offs you must evaluate before switching.
ClickhouseTutorial
ClickHouse 26.8 can serve as a streaming HTTP API for controlled queries, using named handlers rather than requiring a separate pass-through layer. Using the UK property prices dataset, it sets up a MergeTree table with 30,452,463 transactions spanning 1995-01-01 to 2025-07-31 and occupying 339.08 MiB. The implementation covers named endpoints, typed query-string and URL-path parameters, result modification, direct table exposure, and framing formats that stream query data and progress in one response. It also uses an API user with a default JSONEachRow format and row limit, query logs for request visibility, and a SQL SECURITY DEFINER view to expose aggregates without granting access to source transactions. These features can replace a pass-through service for controlled queries, while business logic, orchestration, or application-specific validation still require an application layer.
A thin API layer commonly sits in front of ClickHouse to accept HTTP parameters, construct queries, and return results. The post addresses how controlled ClickHouse queries can be exposed directly, while noting that application layers remain necessary for business logic, orchestration, or application-specific validation.
The implementation uses ClickHouse 26.8 named HTTP handlers with typed query-string and URL-path parameters, result modification, framing formats, and direct table exposure. It configures API users and limits, observes requests through query logs, and uses a SQL SECURITY DEFINER view to expose aggregated data without granting access to the underlying transactions.
Named HTTP handlers can expose controlled ClickHouse queries through GET, POST, PUT, or DELETE endpoints, with typed parameters and configurable result behavior.
An API user can set JSONEachRow as the default output format and apply a default row limit, while request-specific limits can override that setting.
A SQL SECURITY DEFINER view can expose an aggregated result to a restricted user without granting access to the underlying property transactions.
Summaries are generated from the original by a language model. Check the original before relying on it.
See the idea
Alpine Linux shrinks container images by replacing glibc with musl and using a minimal base, but introduces compatibility trade-offs you must evaluate before switching.
Keep reading
The Good Stuff
Paid picks we use ourselves. Links carry a referral code — a subscription through one earns us a commission at no extra cost to you.
One useful email. Unsubscribe anytime.