ClickHouseの超高コア数Intel Xeonプロセッサ上でのパフォーマンス最適化

2025-09-17
ClickHouseの超高コア数Intel Xeonプロセッサ上でのパフォーマンス最適化

インテルの最新プロセッサは数百ものコアを搭載しており、ClickHouseなどの分析データベースにとって大きな機会と課題をもたらしています。インテル上海のエンジニアは、超高コア数サーバー上でのClickHouseのパフォーマンスを体系的に分析し、5つの主要なボトルネック、つまりロック競合、メモリ最適化、並列処理の不足、SIMD命令の利用、偽共有を特定し、最適化しました。ロック保持時間の短縮、メモリ割り当ての改善、シリアルフェーズの並列化、よりスマートなSIMDアルゴリズムの採用、メモリレイアウトの最適化により、超高コア数システム上でのClickHouseのスケーラビリティを大幅に向上させ、個々のクエリで最大10倍の高速化、全体的な幾何平均で10%の改善を実現しました。この作業は、超高コア数時代におけるデータベース最適化において、アルゴリズムとメモリレイアウトの両面からのアプローチが必要であることを浮き彫りにしています。

続きを読む

OLAPデータベースのためのORMを探る:Moose OLAPアプローチ

2025-08-17
OLAPデータベースのためのORMを探る:Moose OLAPアプローチ

現代のアプリケーションは、大規模データセットの集約によって支えられたユーザー向け分析やAI機能にますます依存しており、開発者をClickHouseなどの分析データベースへと駆り立てています。この記事では、OLAPデータベース向けのORMを構築する可能性と課題を探ります。既存のOLTP ORMをOLAPに拡張することは、セマンティックな違いにより問題があります。オープンソースプロジェクトであるMoose OLAPは、ClickHouseに対してORMに似たインターフェースを提供しようと試みています。OLTP ORMの長所を借用していますが、NULL値や一意性制約の扱いなど、OLAPの特性に合わせて調整されています。Moose OLAPは、コードとしてのスキーマを強調し、OLAPネイティブのセマンティクスとデフォルト値を提供し、OLAP環境に固有の動的なスキーマ変更に対処するために、バージョン管理されたマイグレーションをサポートしています。

続きを読む
開発

PostgreSQLの論理レプリケーションスロット作成における厄介なバグとその修正方法

2025-07-15
PostgreSQLの論理レプリケーションスロット作成における厄介なバグとその修正方法

ClickPipesチームは、PostgreSQLで論理レプリケーションスロットを作成中に、厄介なバグに遭遇しました。数秒で完了するはずのクエリが何時間もかかり、終了させることができないというものです。調査の結果、Postgresのバグであることが判明しました。読み取りレプリカで論理レプリケーションスロットを作成すると、主トランザクションの完了を待つ間に長いスリープループに陥り、中断できなくなります。チームは、中断チェックを追加するパッチをPostgresコミュニティに提出しました。これにより、問題は効果的に解決されました。このケースは、成熟したデータベースシステムでさえ、予期せぬエッジケースが発生する可能性があり、オープンソースコミュニティの協力がその解決に不可欠であることを示しています。

続きを読む

ClickHouse Cloudの100PB規模のオブザーバビリティプラットフォーム:LogHouseの進化

2025-06-21
ClickHouse Cloudの100PB規模のオブザーバビリティプラットフォーム:LogHouseの進化

ClickHouse Cloudの内部ロギングプラットフォームであるLogHouseは、1年で19PBから100PB以上に、行数は40兆行から500兆行に増加しました。イベント量の20倍の急増に対応するため、LogHouseチームは、CPU使用率を以前の10%未満に削減するカスタムエクスポーターであるSysExを開発しました。SysExはClickHouseシステムテーブルから直接データをコピーすることで、OpenTelemetryのパースとマーシャリングのボトルネックを回避します。同時に、LogHouseはClickHouseネイティブのオブザーバビリティUIであるHyperDXを統合し、シームレスな探索、相関関係、根本原因分析を提供します。

続きを読む
テクノロジー

ClickHouse、AIネイティブアプリケーションを促進するため3億5000万ドルのシリーズC資金調達

2025-05-29
ClickHouse、AIネイティブアプリケーションを促進するため3億5000万ドルのシリーズC資金調達

リアルタイム分析データベースClickHouseは、3億5000万ドルのシリーズC資金調達ラウンドを発表し、総資金調達額は6億5000万ドルを超えました。この投資は、製品開発、グローバル展開、そして次世代AIネイティブアプリケーションを支援するパートナーシップを促進します。ClickHouseの高性能な列ストアエンジンは、最小限のレイテンシで大量のデータセットに対するインタラクティブな分析クエリを可能にし、AI/MLアプリケーション、リアルタイム分析、クラウドデータウェアハウス、オブザーバビリティワークロードを支えています。年間300%を超える成長を誇り、Anthropic、Tesla、Mercado Libreなど2000社以上の顧客にサービスを提供するClickHouseは、AI時代のリアルタイムデータプラットフォーム構築の課題に取り組み、次世代インテリジェントデータ製品のデフォルトエンジンとしての地位を確立しています。

続きを読む
テクノロジー

ClickHouseの遅延マテリアライゼーション:1500倍の高速化

2025-04-22
ClickHouseの遅延マテリアライゼーション:1500倍の高速化

ClickHouseは「遅延マテリアライゼーション」という新しい最適化によって、クエリ速度を1500倍向上させました。この技術は、列データの読み込みを実際に必要になるまで遅延させることで、不要なI/Oを大幅に削減します。この記事では、Amazonカスタマーレビューのデータセットを用いて、遅延マテリアライゼーションが、カラムストア、スパースプライマリインデックス、PREWHEREなどの他のI/O最適化技術と連携して、クエリの処理時間を219秒から139ミリ秒に短縮する方法を詳しく説明しています。遅延マテリアライゼーションは、特にTop Nクエリにおいて効果的で、SQLを変更せずにパフォーマンスを大幅に向上させます。

続きを読む

ClickHouseがRustを採用:挑戦的な統合への旅

2025-04-09
ClickHouseがRustを採用:挑戦的な統合への旅

もともとC++で記述されていたClickHouseデータベースは、より多くの開発者を惹きつけ、機能を拡張するために、Rustの統合という旅に乗り出しました。この記事では、最初のパイロットプロジェクトとしてBLAKE3ハッシュ関数を選択することから、PRQLクエリ言語とDelta Lakeライブラリの統合に至るまでのプロセスを詳細に説明しています。ビルドシステムの統合、メモリ管理、エラー処理、クロスコンパイルなど、数々の課題に直面しました。Rustライブラリのバグ、非常に長いシンボル名、C++コードとの相互運用性の問題など、いくつかの問題が発生しましたが、ClickHouseチームはこれらの障害を克服し、Rustをプロジェクトに正常に統合し、将来の開発への道を切り開きました。

続きを読む
開発