開発者ガイドの概要
このガイドはアプリケーション開発者向けに書かれていますが、TiDB の内部動作に興味がある場合、または TiDB 開発に参加したい場合は、TiDB の詳細についてTiDB カーネル開発ガイドをお読みください。
このチュートリアルでは、TiDB を使用してアプリケーションを迅速に構築する方法、TiDB の使用例、および一般的な問題の処理方法を示します。
このページを読む前に、 TiDB データベース プラットフォームのクイック スタート ガイドを読むことをお勧めします。
TiDB の基本
TiDB を使い始める前に、TiDB がどのように機能するかのいくつかの重要なメカニズムを理解する必要があります。
- TiDB トランザクションの概要を読んで TiDB でのトランザクションの仕組みを理解するか、 アプリケーション開発者向けの取引メモを調べてアプリケーション開発に必要なトランザクションの知識を学んでください。
- 理解するアプリケーションが TiDB と対話する方法 .
- 分散データベース TiDB およびTiDB Cloudを構築するためのコア コンポーネントと概念については、無料のオンライン コースTiDBアーキテクチャの基本を参照してください。
TiDB トランザクション メカニズム
TiDB は分散トランザクションをサポートし、 楽観的な取引と悲観的な取引の両方のモードを提供します。 TiDB の現在のバージョンでは、デフォルトでペシミスティック トランザクションモードが使用されます。これにより、従来のモノリシック データベース (MySQL など) と同じように TiDB でトランザクションを行うことができます。
BEGIN
を使用してトランザクションを開始するか、 BEGIN PESSIMISTIC
を使用して悲観的トランザクションを明示的に指定するか、またはBEGIN OPTIMISTIC
を使用して楽観的トランザクションを明示的に指定できます。その後、トランザクションをコミット ( COMMIT
) またはロールバック ( ROLLBACK
) できます。
TiDB は、 BEGIN
の開始とCOMMIT
またはROLLBACK
の終了の間のすべてのステートメントの原子性を保証します。つまり、この期間中に実行されるすべてのステートメントは、全体として成功または失敗します。これは、アプリケーション開発に必要なデータの一貫性を確保するために使用されます。
楽観的トランザクションが何であるかわからない場合は、まだ使用しないでください。オプティミスティック トランザクションでは、アプリケーションがCOMMIT
ステートメントによって返されるすべてのエラーを正しく処理できる必要があるためです。アプリケーションがそれらをどのように処理するかわからない場合は、代わりにペシミスティック トランザクションを使用してください。
アプリケーションが TiDB と対話する方法
TiDB は MySQL プロトコルとの互換性が高く、 ほとんどの MySQL 構文と機能をサポートしているため、ほとんどの MySQL 接続ライブラリは TiDB と互換性があります。アプリケーション フレームワークまたは言語に PingCAP からの公式の適応がない場合は、MySQL のクライアント ライブラリを使用することをお勧めします。ますます多くのサードパーティ ライブラリが、TiDB のさまざまな機能を積極的にサポートしています。
TiDB は MySQL プロトコルおよび MySQL 構文と互換性があるため、MySQL をサポートするほとんどの ORM は TiDB とも互換性があります。