ホームGoXiaoMi/Gaea
// archived 2026-04-13
XiaoMi

Gaea

Database#MySQL#Middleware#Sharding#Go#Database Proxy
GitHub で見る →
2,771

// 概要

Gaea は Xiaomi Group が MySQL プロトコルをベースに独自開発したデータベースミドルウェアであり、モバイル、金融、インターネットなど幅広いビジネス分野で活用されています。本システムは sharding、SQL routing、read-write splitting といった主要機能をサポートし、Mycat や Kingshard のルーティングスキームと互換性があります。TiDB Parser などの成熟した技術を統合することで、multi-tenant management、connection pooling、hot configuration loading といった豊富な基本機能をユーザーに提供します。

// 技術解説

Gaea は Xiaomi が開発した MySQL データベースミドルウェアであり、大規模なビジネスシナリオにおけるデータベースのスケーリングと管理の課題を解決するために設計されています。このプロジェクトは Mycat や Kingshard のルーティングスキームと互換性を持つことで柔軟なデータベースのシャーディングとテーブルパーティショニングを実装しており、TiDB SQL Parser を統合することで解析の精度を確保しています。そのアーキテクチャはマルチクラスターおよびマルチテナント管理をサポートしており、gaea-cc と etcd の連携を通じて一元的な構成管理とホットロードを実現し、データベースクラスターの運用効率とスケーラビリティを効果的に向上させます。

// 主要ハイライト

01
データベースのシャーディングとテーブルパーティショニングをサポートし、Mycat および Kingshard のルーティングルールと互換性があるため、既存ビジネスの移行を容易にします。
02
組み込みの TiDB SQL Parser により、複雑な SQL ステートメントの正確な解析と透過的な転送を保証します。
03
包括的な読み書き分離とスレーブノードの負荷分散メカニズムを備えており、データベースの並行処理能力を効果的に強化します。
04
Slow SQL および Error SQL のフィンガープリント機能を提供し、開発者がパフォーマンスのボトルネックを迅速に特定して最適化できるよう支援します。
05
マルチクラスターおよびマルチテナントアーキテクチャをサポートし、etcd を介した構成のホットロードを実現することで、大規模ビジネスの柔軟なデプロイニーズに対応します。
06
組み込みのコネクションプーリングと IP ホワイトリスト管理により、接続リソースの利用を最適化しつつ、データベースアクセスのセキュリティを確保します。

// ユースケース

01
sharding、各種 aggregate functions、および Join operations をサポートします
02
read-write splitting と replica load balancing を実装し、パフォーマンスを向上させます
03
multi-cluster、multi-tenant management、および透過的な SQL forwarding 機能を備えています

// クイックスタート

開発者はプロジェクトドキュメント内の quickstart.md を参照することで、デプロイプロセスについて学習できます。まず etcd と gaea-cc を構成してクラスター管理を実装し、その後に configuration.md を参照してデータベースノードの統合とルーティングルールの設定を完了することを推奨します。