ハッシュアルゴリズムに基づくMySQLテーブルパーティション

ハッシュアルゴリズムに基づくMySQLテーブルパーティション

以下に紹介する Mysql テーブルのパーティショニング プロセスは、ハッシュ アルゴリズムに基づいています。Mysql テーブルのパーティショニング プロセスを理解する前に、まずハッシュ アルゴリズムを理解しましょう。

ハッシュ テーブルは、特別なハッシュ アルゴリズムによって計算された値です。この値は一意である必要があり、計算された値を使用して必要な値を見つけることができます。これをハッシュ テーブルと呼びます。

サブテーブルで使用するハッシュ アルゴリズムもこの考え方に似ています。特定のハッシュ アルゴリズムを使用して、元のターゲットの ID または名前からデータ ストレージ テーブルのテーブル名を計算し、対応するテーブルにアクセスします。

上記の Tieba を続けると、各 Tieba にはセクション名とセクション ID があります。これら 2 つの値は固定かつ一意であるため、これら 2 つの値のいずれかに対して何らかの操作を実行することで、対象テーブルの名前を取得することを検討できます。

ここで、Tieba システムについて考えてみましょう。システムで許可されるデータは最大 1 億個で、各テーブルには 100 万件のレコードが格納されると仮定すると、システム全体を 100 個以下のテーブルに収容できます。この標準に従って、Tieba のフォーラム ID をハッシュし、テーブル名であるキー値を取得して、対応するテーブルにアクセスすることを想定しています。

単純なハッシュアルゴリズムを構築します。

関数 get_hash($id){
文字列を bin2hex に変換します。
$ハッシュ = substr($str, 0, 4);
(strlen($hash)<4)の場合{
$ハッシュ = str_pad($ハッシュ、4、"0");
}
$hash を返します。
}

アルゴリズムは基本的にセクション ID 値を渡し、関数は 4 桁の文字列を返します。文字列の長さが足りない場合は、0 が埋め込まれます。

たとえば、get_hash(1) は「3100」を出力し、get_hash(23819) を入力すると 3233 が返されます。その後、テーブル プレフィックスと組み合わせるだけでテーブルにアクセスできます。次に、ID 1 のコンテンツにアクセスする必要がある場合、結合されたテーブルは topic_3100、reply_3100 となり、ターゲット テーブルに直接アクセスできます。

もちろん、ハッシュ アルゴリズムを使用した後、一部のデータが同じテーブルに存在する可能性があります。これはハッシュ テーブルとは異なります。ハッシュ テーブルは競合を解決しようとしますが、ここでは必要ありません。もちろん、テーブル データが格納される可能性のあるテーブル名を予測して分析する必要もあります。

より多くのデータを保存する必要がある場合は、バイナリを16進数に変換するなど、セクション名をハッシュすることもできます。漢字は数字や文字よりもはるかに多いため、重複の可能性は低くなりますが、組み合わせることができるテーブルが増えるため、それに応じて他の問題を考慮する必要があります。

最終的に、ハッシュ方式を使用する場合は、より多くのテーブルを生成し、データをより速くクエリするために、適切なハッシュ アルゴリズムを選択する必要があります。

【編集者のおすすめ】

MySQLサーバーの内部ロック

Mysql マージテーブルの利点

MySQL と SQL Server の 25 の違い

MySQLの一時テーブルについてさらに詳しく知るには

MySQL の概要 ステートメントの使用方法を表示

<<:  ドイツのハッカーはレンタルしたコンピュータリソースを使ってハッシュアルゴリズムを攻撃する

>>:  SQL Server の時間アルゴリズム

ブログ    
ブログ    
ブログ    
ブログ    
ブログ    
ブログ    
ブログ    
ブログ    

推薦する

...

ネイチャー誌の記事で、ウォータールー大学のチームが「量子コンピュータ+大規模言語モデル」の現状と将来についてコメントした。

今日の量子コンピューティング デバイスをシミュレートする際の主な課題は、量子ビット間で発生する複雑な...

...

人工知能はプライバシー侵害につながり、人々は顔スキャンが安全を奪うのではないかと心配している

データの蓄積、コンピュータの計算能力の飛躍的向上、アルゴリズムの最適化により、人工知能は生活をより効...

AIがコスト削減、生産性、雇用に与える影響

AI を活用して雇用を減らし、コストを削減する方法を考えている企業は、間違っていると思います。最近、...

...

ゲーム「原神」では実際に深層強化学習が使われ、オープンソース化されている

[[425402]] 『原神』で魚が釣れないとまだ悩んでいますか?テイワットでの釣りについての遅れば...

誰もが知っておくべき 3 つの機械学習アルゴリズム

解決すべきデータ関連の問題があるとします。機械学習アルゴリズムの素晴らしさについて聞いたことがあるの...

Mamba 論文が ICLR に受け入れられなかったのはなぜですか? AIコミュニティは盛り上がっている

2023年、大規模AIモデルの分野におけるTransformerの優位性が揺らいだ。この挑戦のきっか...

米研究機関:中国は2030年までにAI研究で世界をリードすると予想

アメリカのテクノロジーメディアGeekWireによると、米国シアトルのアレン人工知能研究所(AI2)...

通信ネットワーク運用イベントのナレッジグラフの構築

1. 通信ネットワーク運用シナリオまず、通信ネットワーク運用の背景についてご紹介します。通信ネットワ...

ハイブリッドAIは企業がデータの価値を掘り出すための好ましい方法である

人工知能については、誰もがよくご存知だと思います。実際、人工知能には幅広い知識が含まれており、さまざ...

AI が「脳で画像を完成させる」ことを学習: ニューラル ネットワークが 0 から 1 までの画像を完成させる

1新しいインテリジェンス集出典: arXiv、Github張毅編纂[新しいインテリジェンスの紹介]自...

年次指数レポートではAIが「産業化」しているが、より優れた指標とテストが必要とされている

海外メディアVentureBeatによると、中国は人工知能の研究論文の総数で米国を上回り、資金提供を...