Altinity Stable Builds are an increasingly popular distribution of ClickHouse. We just released version 23.3 a few days ago. It’s a great time to remind ClickHouse users about Altinity Stable benefits and why people choose them over other distributions.
Interestingly Altinity Stable Builds even benefit ClickHouse users who don’t use them! To find out why, keep reading.
What are Altinity Stable Builds?
Altinity Stable Builds are production ready ClickHouse releases that we offer to all ClickHouse users. The code is 100% open source and the build process is likewise fully open. Stable Builds are API compatible with official builds from the upstream ClickHouse repo in GitHub. Here are the main features.
- Ready for production use. We publish only after extensive testing as well as review of experiences from our hundreds of customers and users.
- Three years of maintenance including security patches. You can run for years without having to do a major upgrade.
- Improvements like FIPS-compatible operation and selected feature backports from later releases requested by our customers.
- Detailed release notes, including upgrade instructions.
Altinity Stable Builds are based on upstream ClickHouse Long Term Support (LTS) releases, which appear twice a year in March and August. Our builds typically release 3 to 4 months after the base LTS release appears in upstream ClickHouse. The reason for the delay is two-fold.
- Evaluating release quality. This includes running upstream tests as well as the extensive test suite developed at Altinity. We also evaluate early usage of upstream builds and upgrade experience from earlier releases.
- Waiting for the release to stabilize. When LTS releases first appear, they are just another monthly build with regressions as well as unstable features. Community members (including Altinity) identify problems and provide fixes, which the ClickHouse Inc team merges and backports. We track backport progress carefully.
When they do appear, Altinity Stable Builds are fully up-to-date. For example, the first ClickHouse 22.214.171.12423 LTS build was tagged on 31 March 2023. Altinity Stable 23.3.8. released on 14 July 2023. It was based on the 126.96.36.199 LTS build, which was tagged less than 48 hours previously and contained backports of several critical bug fixes that we had been watching.
As a result, when you install an Altinity Stable Build, you can be pretty sure that it will work in production systems without needing further upgrades.
Does Altinity still support ClickHouse Inc builds?
Absolutely! About half our customer base operates on upstream ClickHouse releases, and many of them upgrade to the latest release regularly. You can call it the “leading edge deployment model.” It works as follows.
- Upgrade regularly to the latest ClickHouse release.
- If there’s a problem, revert back quickly.
- Fix your apps or post a bug on the ClickHouse GitHub.
- Try the upgrade again when you have a workaround or the bug fix appears in upstream.
Leading edge deployment provides early access to new features of ClickHouse or bug fixes that are not practical to backport. Leading edge deployments also help the ClickHouse community as a whole by detecting and reporting bugs.
There are of course drawbacks, because leading edge builds are not fully stable. This can lead to high-stress issues like the following.
- Serious bugs that compromise application stability or even corrupt data (like this one and this one).
- Rapidly evolving or undocumented configuration changes that make it difficult to get around operational issues. S3 configuration parameters are an example.
Many teams nevertheless run quite successfully on the leading edge release model. Those teams tend to share some or all of the following characteristics.
- Possess deep expertise in ClickHouse
- Can change ClickHouse and analytic applications without involving other teams
- Exercise configuration management discipline to deploy and roll back quickly
- Value quick access to new features
The leading edge of an airplane wing gets to the destination faster than the trailing edge. It also hits a lot of bugs and the occasional goose. Both edges get to the same place, but on the leading edge you must exercise care to avoid a rough ride or at least a long weekend.
Altinity Stable Builds and the trailing edge deployment model
You might have heard statements that having multiple distributions for ClickHouse creates confusion or that users should always just upgrade to the latest upstream build. These comments reflect a lack of understanding how enterprises actually operate business-critical analytic applications.
For many enterprises, deploying ClickHouse releases involves the following steps at minimum:
- Ensure the new release clears in-house security review.
- Schedule testing and application changes across multiple development teams, sometimes in different business units. It is often impractical to automate tests fully, so this can mean standing up the entire stack and testing with real users.
- Plan and test rollout to ensure the new release–and concomitant changes to applications–goes up flawlessly with minimal effect on users.
The most cost-efficient path for these users is a “trailing edge deployment model” based on very stable releases. They can expect deployment to go right the first time and to apply drop-in patches for long periods–as in years–between major upgrades. This applies to self-managed ClickHouse installations as well as cloud services.
Altinity Stable Builds are intended for exactly such customers. The trailing edge deployment model is like being on the back of an aircraft wing. It gets there a little slower than the leading edge but there’s less turbulence and fewer problems with errant birds.
Altinity Stable Builds help all ClickHouse users
Altinity Stable Builds meets the needs of a substantial part of the market that values stability over rapid evolution. We’re delighted and proud that hundreds of organizations use them in this way. However, our builds also help the community as a whole, which includes users who do not run Altinity builds.
First, the Altinity Stable release notes are a great guide for anyone who uses ClickHouse, regardless of source. Moving from ClickHouse 22.8 to 23.3? Read our 23.3 release notes! Practically everything applies to ClickHouse upstream builds as well.
Second, Altinity Stable build and test helps make ClickHouse better. Like ClickHouse Inc we run upstream ClickHouse tests, but each team focuses on additional areas. For example, the ClickHouse Inc team builds ClickHouse using sanitizers that winkle out C++ issues. Altinity’s tests focus on API stability, often in excruciating detail. We also test carefully with our own customers, who often have specialized use cases.
Third, we preserve recipes to build older ClickHouse versions. If you are happy with an old release and can’t upgrade quickly, we can help by fixing bugs or security issues, then release an updated Altinity Stable Build.
Fourth, competition is healthy. The ClickHouse build process is complex and difficult to run. Our server team has around 10 engineers working either full or part-time on delivering releases. The benefits for users include downward cost pressure and the assurance that the future of ClickHouse is not dependent on any single vendor.
It’s useful to remember that Linux, the most successful open source project of all time, has benefited enormously from having many different distributions – from rapidly moving Fedora to conservative RHEL. Competition and interaction helped make Linux a powerhouse.
Where to find out more about Altinity Stable Builds
Altinity Stable Builds are 100% open source ClickHouse builds that meet the needs of enterprise users who value stability over rapid evolution. Altinity releases them freely to everyone as part of our commitment to our customers as well as the broader community of ClickHouse users.
If you would like to find out more about Altinity Stable builds, please visit our website, read our many blog articles and videos about them, or read the documentation. You can run them in Altinity.Cloud just by selecting a Stable Build version when you start or upgrade ClickHouse clusters. If you find problems feel free to log issues on our ClickHouse fork in GitHub or join the conversion on our public Altinity Slack Workspace.
You can also contact us directly for more information about support as well as adapting ClickHouse in innovative ways that meet the needs of your business. In the meantime, take an Altinity Stable Build out for a spin!