tencent cloud

TencentDB for MySQL

動向とお知らせ
製品アップデート情報一覧
初心者ガイド
製品紹介
製品概要
製品の優位性
適用シナリオ
データベースのアーキテクチャ
タグ編集
製品機能リスト
データベースインスタンス
高可用性(マルチアベイラビリティゾーン)
地域とAvailability Zone
自社研究カーネル
TXSQLカーネル概要
機能系特性
パフォーマンス系特性
セキュリティ系特性
安定性系特性
TXRocksエンジン
購入ガイド
課金概要
購入方法
支払い更新の説明
支払い延滞の説明
返金説明
インスタンス調整の料金の説明
バックアップキャパシティ課金説明
クイックスタート
概要
MySQLインスタンスの作成
操作ガイド
使用制限
操作一覧
インスタンスの管理とメンテナンス
アップグレードインスタンス
拡張インスタンス
データベースプロキシ
データベース管理(DMC)
アカウント管理
パラメータ設定
バックアップとロールバック
データ移行
インターネットとセキュリティ
監視とアラーム
ログセンター
タグ
プラクティスチュートリアル
MySQL利用規約
アプリケーションの自動再接続機能のコンフィグレーション
MySQLマスターインスタンスパラメータの変更影響
MyISAMからInnoDBエンジンへの切り替え制限
TencentDB for MySQLのためのVPC作成
MySQLによるサービス負荷能力の向上
2地域3センターのディザスタリカバリ構築
リード・ライト分離によるTencentDB for MySQLパフォーマンスの拡張
DTSでInnoDBデータをRocksDBに移行します
LAMPスタック上のWebアプリケーションの構築
Drupalウエブサイトの構築
Python言語によるMySQL APIの使用
ホワイトペーパー
パフォーマンス白書
セキュリティ白書
トラブルシューティング
接続に関する問題
性能関連
インスタンスデータの同期遅延
大文字と小文字を区別しない設定に失敗しました
APIドキュメント
History
Introduction
API Category
Instance APIs
Making API Requests
Data Import APIs
Database Proxy APIs
Database Audit APIs
Security APIs
Task APIs
Backup APIs
Account APIs
Rollback APIs
Parameter APIs
Database APIs
Monitoring APIs
Log-related API
Data Types
Error Codes
よくある質問
課金関連
ロールバック関連の問題
接続とログインに関する問題
パラメータを変更
アップグレード関連の問題
アカウント権限
性能メモリ
運営する
データ移行
機能特徴
コンソール関連
ログ関連
API 2.0切り替え 3.0ガイド
Service Agreement
Service Level Agreement
Terms of Service
汎用参考
標準と認証
お問い合わせ
用語集

TXRocksベストプラクティス

PDF
フォーカスモード
フォントサイズ
最終更新日: 2024-07-25 16:20:38
このドキュメントは、TXRocksを使用するベストプライクティスとして、大量のデータをインポートするときのインポート速度が向上することについてご説明します。

背景

シナリオ:大量のデータをTXRocksエンジンのデータベースにインポートする場合、インポートを高速化する必要があります。
影響:大量のデータをインポートすると、エラーRows inserted during bulk load must not overlap existing rowsが発生する可能性があります。

処理方法1

1. 最初にセカンダリインデックスを削除します(プライマリキーインデックスのみを保持します)。
2. 仕様とユーザーデータ量に基づいてメモリ関連パラメータを調整します。
説明:
仕様とデータ量に応じて、パラメータrocksdb_merge_buf_sizeとrocksdb_merge_combine_read_sizeを適切に大きくする必要があります。
rocksdb_merge_buf_sizeは、インデックス作成中にマルチパスマージのときの1パスあたりのデータ量を表し、rocksdb_merge_combine_read_sizeは、マルチパスマージのときの各ウェイで消費される合計メモリを表します。
rocksdb_block_cache_sizeは、rocksdb_block_cacheのサイズを表します。マルチパスマージのときには、一時的に小さくすることをお勧めします。
3. bulk load方式によるデータのインポート。
SET session rocksdb_bulk_load_allow_unsorted=1;
SET session rocksdb_bulk_load=1;
...
データのインポート
...
SET session rocksdb_bulk_load=0;
SET session rocksdb_bulk_load_allow_unsorted=0;
説明:
インポートしたデータが順序付けられている場合は、rocksdb_bulk_load_allow_unsortedを設定する必要はありません。
4. セカンダリインデックスの再構築には、すべてのデータのインポートが完了した後で、セカンダリインデックスを1つずつ再構築することができます。
ご注意:
セカンダリインデックスの作成にはマルチパスマージが含まれます。rocksdb_merge_buf_sizeは1パスあたりのデータサイズ、rocksdb_merge_combine_read_sizeはマージ中にマルチパスマージに使用された合計メモリーサイズです。
例えば、rocksdb_merge_buf_sizeを64MB以上、rocksdb_merge_combine_read_sizeを1GB以上に設定することをお勧めします。OOMを回避するには、データのインポートが完了したら必ず元のパラメータ値に戻します。
また、各セカンダリインデックス作成プロセスでは多くのメモリが消費されるため、同時に複数のセカンダリインデックスを作成することは推奨されません。

処理方法2

データのインポート中にunique_checkをオフにすると、インポートにおけるパフォーマンスが向上します。
SET unique_checks=OFF;
...
データのインポート
...
SET unique_checks=ON;
ご注意:
処理が完了したら、unique_checksを必ずONに戻してください。そうしないと、その後の通常のトランザクションによって書き込まれるinsert操作は一意性をチェックしません。

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック