リソースの概要
この記事では、ClickHouse Cloud デプロイメントを最大限に活用するために、 ドキュメント内で利用できる各種リソースの概要を紹介します。 以下のトピックごとに整理されたリソースを参照してください。
より具体的なトピックに進む前に、まずは ClickHouse を使用する際に従うべき 一般的なベストプラクティスをまとめた ClickHouse ベストプラクティスガイドを 参照することをおすすめします。
| Page | Description |
|---|---|
| プライマリキーの選択 | クエリパフォーマンスを最大化し、ストレージオーバーヘッドを最小化できるプライマリキーの選び方。 |
| データ型の選択 | メモリ使用量を削減し、圧縮を高め、クエリを高速化するための最適なデータ型の選び方。 |
| マテリアライズドビューの活用 | データを事前集計するためにマテリアライズドビューを活用し、分析クエリを大幅に高速化します。 |
| JOIN の最小化と最適化 | ClickHouse の JOIN 機能を効率的に使用するためのベストプラクティス。 |
| パーティションキーの選択 | データプルーニングを効率化し、クエリ実行を高速化するパーティション戦略の選び方。 |
| 挿入戦略の選択 | 適切な挿入パターンにより、データインジェストのスループットを最適化し、リソース消費を削減します。 |
| データスキップインデックス | セカンダリインデックスを戦略的に適用し、不要なデータブロックをスキップしてフィルタクエリを高速化します。 |
| ミューテーションを避ける | 高コストな UPDATE / DELETE 操作を排除できるスキーマとワークフローを設計し、パフォーマンスを向上させます。 |
| OPTIMIZE FINAL を避ける | どのような場合に OPTIMIZE FINAL が有害になり、パフォーマンスボトルネックを引き起こすかを理解し、回避します。 |
| 適切な場面で JSON を使用する | ClickHouse で半構造化 JSON データを扱う際に、柔軟性とパフォーマンスのバランスを取ります。 |
クエリ最適化手法とパフォーマンスチューニング
| Topic | Description |
|---|---|
| クエリ最適化ガイド | クエリ最適化の基本から始め、代表的なシナリオとパフォーマンス向上テクニックを通じて、クエリ実行速度を高める方法を解説します。 |
| プライマリインデックス上級ガイド | ClickHouse 独自のスパースなプライマリインデックスシステムを詳細に掘り下げ、従来のデータベースとの違いや、最適なインデックス戦略のベストプラクティスを説明します。 |
| クエリの並列実行 | ClickHouse が処理レーンと max_threads 設定を用いてクエリ実行をどのように並列化するか、さらに並列実行を確認・最適化する方法を学びます。 |
| パーティションキー | 効率的なデータセグメントのプルーニングを可能にし、ありがちなパーティション設計の落とし穴を避けることで、クエリ性能を大幅に改善できるパーティションキー選定を習得します。 |
| データスキップインデックス | 二次インデックスを戦略的に適用して不要なデータブロックをスキップし、プライマリキー以外の列に対するフィルタ付きクエリを高速化します。 |
PREWHERE 最適化 | PREWHERE が不要な列を読み込む前にデータをフィルタリングして自動的に I/O を削減する仕組みと、その有効性を監視する方法を理解します。 |
| バルク挿入 | データ挿入を効果的にバッチ処理することで、インジェストスループットを最大化し、リソースのオーバーヘッドを削減します。 |
| 非同期挿入 | サーバー側のバッチ処理を活用してクライアント側の複雑さを軽減し、高頻度の挿入におけるスループットを向上させます。 |
| ミューテーションの回避 | 追加専用(append-only)のワークフローを設計し、高コストな UPDATE や DELETE 操作を排除しつつ、データの正確性とパフォーマンスを維持します。 |
| nullable 列の回避 | 可能な場合は nullable 列の代わりにデフォルト値を使用することで、ストレージのオーバーヘッドを削減し、クエリ性能を向上させます。 |
OPTIMIZE FINAL の回避 | OPTIMIZE TABLE FINAL をいつ使用すべきか、また使用すべきでないかを理解します。 |
| Analyzer | ClickHouse の新しいクエリアナライザーを活用してパフォーマンスボトルネックを特定し、クエリ実行プランを最適化して効率を高めます。 |
| クエリプロファイリング | サンプリングクエリプロファイラーを使用してクエリ実行パターンを分析し、ホットスポットを特定して、リソース使用を最適化します。 |
| クエリキャッシュ | ClickHouse に組み込まれたクエリ結果キャッシュを有効化・設定し、頻繁に実行される SELECT クエリを高速化します。 |
| ハードウェアのテスト | インストール不要で任意のサーバー上で ClickHouse のパフォーマンスベンチマークを実行し、ハードウェアの性能を評価します。(ClickHouse Cloud には適用されません) |
監視
| ページ | 説明 |
|---|---|
| 高度なダッシュボード | 組み込みの高度なダッシュボードを使用して、サービスの健全性と性能を監視します |
| Prometheus 連携 | Prometheus を使用してクラウドサービスを監視します |
| クラウド監視機能 | 組み込みの監視機能と連携オプションの概要を確認します |
セキュリティ
| Page | Description |
|---|---|
| ClickHouse Cloud Security Features | ClickHouse の組織およびサービスを保護するために利用できるセキュリティオプションとベストプラクティスの詳細です。 |
| Cloud access management guides | このセクションには、ClickHouse Cloud でのアクセス管理方法を解説するステップバイステップのガイドが含まれます。 |
| Setting IP filters | IP アクセスリストを作成または変更する方法を説明するガイドです。 |
| Private networking | ClickHouse Cloud は、サービスをクラウド仮想ネットワークに接続する機能を提供します。プロバイダーごとのセットアップ手順については、これらのガイドを参照してください。 |
| Data masking | ClickHouse でデータマスキングを行う方法を説明します。 |
| Data encryption | 透過的データ暗号化 (Transparent Data Encryption) およびカスタマー管理暗号鍵 (Customer Managed Encryption Keys) を有効化する方法を説明します。 |
| Audit logging | ClickHouse Cloud コンソールで監査イベントにアクセスして確認する方法に関するガイドと、顧客が独自の BYOC セキュリティプログラムを構築する際に利用できるログとクエリのサンプルを紹介します。 |
| HIPAA onboarding | ClickHouse Cloud で HIPAA 準拠サービスのデプロイメントを有効化する手順を説明するページです。 |
| PCI onboarding | ClickHouse Cloud で PCI 準拠サービスのデプロイメントを有効化する手順を説明するページです。 |
コスト最適化と課金
| ページ | 説明 |
|---|---|
| データ転送 | ClickHouse Cloud がインバウンドおよびアウトバウンドのデータ転送量をどのように計測・課金するかを理解します |
| 通知 | ClickHouse Cloud サービスに対する通知を設定します。たとえば、クレジット使用量がしきい値を超えたときに通知を受け取れます |