MySQL インデックスの確立は、MySQL を効率的に運用するために非常に重要であり、インデックスによって MySQL の検索速度が大幅に向上します。
たとえば、適切に設計され、インデックスを使用する MySQL がランボルギーニである場合、設計されておらず、インデックスを使用する MySQL は人間の三輪車です。
インデックスは、単一列インデックスと結合インデックスに分かれています。単一列インデックスとは、インデックスに 1 つの列のみが含まれていることを意味します。テーブルには複数の単一列インデックスを含めることができますが、これは結合インデックスではありません。結合インデックス、つまり、インデックスに複数の列が含まれています。
インデックスを作成するときは、インデックスが SQL クエリ ステートメントに適用される条件 (通常は WHERE 句の条件として) であることを確認する必要があります。
実際、インデックスはテーブルでもあり、主キーとインデックス フィールドが格納され、エンティティ テーブルのレコードを指します。
32 コア、30 G 以上のメモリ、1,000 万エントリの非クラスター化インデックスの作成に 7 分かかりました。
データ量が 1 億件の場合、70 分以上かかると予想されます。
クラスター化インデックスには時間がかかります。これには、インデックスのソートとブランチ インデックス複合 B ツリーの構築が必要です。
一般に、大規模なデータの場合は、新しいテーブルを作成し、インデックスを確立してから、データをバッチごとにインポートすることをお勧めします。
1 億のデータにインデックスを作成すると、貧弱なマシンは基本的にクラッシュするかゾンビになります。
ゆっくり待つしかないので、1日経ってもダメなら上記の方法を使ってみます。
インデックスは型と密接に関連しています。一般に、固定長フィールドは可変長フィールドよりも単純で、IO 消費量が少なく、時間を節約できます。複合インデックスが長くなるほど、複雑になります。2 番目複数のインデックスを持つ 1 つのテーブル この場合、さまざまなストレージ インデックス構造が派生するため、さらに時間がかかります。
テーブル内のデータ ページの数、ファイルの数、各ページにあるスロットの数が時間に影響します。
以上がmysqlインデックスの更新にはどのくらい時間がかかりますかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。