一般的に使用される Oracle10g パーティションは、範囲 (範囲パーティション)、リスト (リスト パーティション)、ハッシュ (ハッシュ パーティション)、範囲ハッシュ (範囲ハッシュ パーティション)、および範囲リスト (リスト複合パーティション) です。 レンジ パーティション分割: レンジ パーティション分割は、広く使用されているテーブル パーティション分割方法です。列値の範囲をパーティション分割条件として使用し、列値が配置されているレンジ パーティションにレコードを格納します。 たとえば、パーティションが時間に基づいている場合、2010 年 1 月のデータはパーティション a に配置され、2 月のデータはパーティション b に配置されます。パーティションを作成するときは、パーティションの基準となる列と範囲値を指定する必要があります。 時間でパーティション分割する場合、一部のレコードの範囲が当面予測できない場合は、maxvalue パーティションを作成できます。指定された範囲にないすべてのレコードは、maxvalue が配置されているパーティションに格納されます。のように: createtable pdba (ID 番号、時刻日付) 範囲によるパーティション (時刻) ( パーティションp1の値が(to_date('2010-10-1'、'yyyy-mm-dd'))より小さい場合、 パーティションp2の値が(to_date('2010-11-1'、'yyyy-mm-dd'))より小さい場合、 パーティションp3の値が(to_date('2010-12-1'、'yyyy-mm-dd'))より小さい パーティションp4の値が(maxvalue)より小さい ) ハッシュパーティション: 範囲に効果的に分割できないテーブルの場合、ハッシュ パーティション分割を使用すれば、パフォーマンスの向上に役立ちます。ハッシュ パーティション分割では、テーブル内のデータが、指定した複数のパーティションに均等に分散されます。列が配置されているパーティションは、パーティション列のハッシュ値に基づいて自動的に割り当てられます。したがって、どのレコードがどのパーティションに配置されるかを制御または把握することはできません。ハッシュ パーティション分割では、複数の従属列もサポートされます。のように: 作成可能テスト ( transaction_idnumber 主キー、 item_idnumber(8)がnullではありません ) ハッシュによるパーティション(トランザクションID) ( パーティションpart_01 表領域tablespace01、 パーティションpart_02 表領域 tablespace02、 パーティションpart_03 テーブルスペース tablespace03 ); ここでは、各パーティションの表領域を指定します。 リストパーティション: リスト パーティション分割では、列の値も指定する必要があります。パーティション値は明示的に指定する必要があります。パーティション列は 1 つだけです。範囲パーティション分割やハッシュ パーティション分割とは異なり、複数の列を同時にパーティション依存列として指定することはできません。ただし、1 つのパーティションに複数の対応する値を設定できます。 パーティション分割を行う際は、パーティション列の可能な値を決定する必要があります。挿入された列の値がパーティション範囲外になると、挿入/更新は失敗します。そのため、通常、リスト パーティション分割を使用して指定された範囲外のレコードを格納する場合は、範囲パーティションの maxvalue パーティションと同様に、デフォルト パーティションを作成することをお勧めします。 都市コードなどの特定のフィールドに基づいてパーティション分割する場合は、デフォルトのパーティションを指定し、パーティション分割ルールに準拠しないすべてのデータをこのデフォルトのパーティションに配置できます。のように: 作成テーブルcustaddr ( idvarchar2(15バイト) NULLではない、 エリアコードvarchar2(4バイト) ) パーティションリスト (エリアコード) (パーティションt_list025の値('025')、 パーティションt_list372値('372')、 パーティションt_list510値('510')、 パーティションp_other値(デフォルト) ) 結合されたパーティション: 列ごとにパーティション分割した後もテーブルが大きい場合、またはその他の要件がある場合は、パーティション内にサブパーティションを作成してパーティションをさらにパーティション分割することができます。つまり、複合パーティション方式です。 10g には、範囲ハッシュと範囲リストの 2 種類の複合パーティションがあります。順序に注意してください。ルート パーティションは範囲パーティションのみにすることができ、サブパーティションはハッシュ パーティションまたはリスト パーティションにすることができます。 のように: 作成可能テスト ( transaction_idnumber 主キー、 取引日 ) 範囲(transaction_date)によるパーティション分割、ハッシュ(transaction_id)によるサブパーティション分割 サブパーティション3は(tablespace01、tablespace02、tablespace03)に格納されます。 ( パーティションpart_01の値が(to_date('2009-01-01','yyyy-mm-dd'))より小さい パーティションpart_02の値が(to_date('2010-01-01','yyyy-mm-dd'))より小さい パーティションpart_03の値が(maxvalue)より小さい ); createtable emp_sub_template (部門番号、従業員名 varchar(32)、等級番号) 範囲(部門番号)によるパーティション分割、ハッシュ(従業員名)によるサブパーティション分割 サブパーティションテンプレート (サブパーティション表領域ts1、 サブパーティションb 表領域ts2、 サブパーティションc 表領域 ts3、 サブパーティション化された表領域 ts4 ) (partitionp1の値が(1000)未満の場合) パーティションp2の値が(2000)未満の場合、 パーティションp3の値が(maxvalue)より小さい ); 四半期地域別売上表を作成します (部門番号、項目番号varchar2(20)、 txn_date日付、txn_amount番号、状態varchar2(2)) テーブルスペース4 パーティション範囲 (txn_date) サブパーティションリスト (状態) (partitionq1_1999 の値は (to_date('1-apr-1999','dd-mon-yyyy') より小さい) (サブパーティションq1_1999_northwest値(「または」、「wa」)、 サブパーティションq1_1999_southwest値(「az」、「ut」、「nm」)、 サブパーティションq1_1999_northeast値(「ny」、「vm」、「nj」)、 サブパーティションq1_1999_southeast値(「fl」、「ga」)、 サブパーティションq1_1999_northcentral値(「sd」、「wi」)、 サブパーティションq1_1999_southcentral値(「ok」、「tx」) )、 パーティションq2_1999の値が(to_date('1-jul-1999'、'dd-mon-yyyy'))より小さい (サブパーティションq2_1999_northwest値(「または」、「wa」)、 サブパーティションq2_1999_southwest値('az'、'ut'、'nm')、 サブパーティションq2_1999_northeast値(「ny」、「vm」、「nj」)、 サブパーティションq2_1999_southeast値(「fl」、「ga」)、 サブパーティションq2_1999_northcentral値(「sd」、「wi」)、 サブパーティションq2_1999_southcentral値(「ok」、「tx」) )、 パーティションq3_1999の値は(to_date('1-oct-1999'、'dd-mon-yyyy'))より小さい (サブパーティションq3_1999_northwest値(「または」、「wa」)、 サブパーティションq3_1999_southwest値('az'、'ut'、'nm')、 サブパーティションq3_1999_northeast値(「ny」、「vm」、「nj」)、 サブパーティションq3_1999_southeast値(「fl」、「ga」)、 サブパーティションq3_1999_northcentral値(「sd」、「wi」)、 サブパーティションq3_1999_southcentral値(「ok」、「tx」) )、 パーティションq4_1999の値が(to_date('1-jan-2000'、'dd-mon-yyyy'))より小さい (サブパーティションq4_1999_northwest値(「または」、「wa」)、 サブパーティションq4_1999_southwest値('az'、'ut'、'nm')、 サブパーティションq4_1999_northeast値(「ny」、「vm」、「nj」)、 サブパーティションq4_1999_southeast値(「fl」、「ga」)、 サブパーティションq4_1999_northcentral値(「sd」、「wi」)、 サブパーティションq4_1999_southcentral値(「ok」、「tx」) ) ); MySQLのパーティションは一般的に範囲、リスト、ハッシュ、キーなどが使用されます。 RANGE パーティション分割: タプルは列値の範囲に基づいてパーティションに割り当てられます。 リスト パーティション分割: RANGE パーティション分割と似ていますが、リスト パーティション分割は離散値セット内の値と一致する列値に基づいている点が異なります。 HASH パーティショニング: テーブルに挿入される行の列値を使用して計算されたユーザー定義関数の戻り値に基づいてパーティションが選択されます。この関数には、負でない整数値を生成する、MySQL で有効な任意の式を含めることができます。 KEY パーティショニング: HASH パーティショニングと似ていますが、KEY パーティショニングでは 1 つ以上の列の計算のみがサポートされ、MySQL サーバーが独自のハッシュ関数を提供する点が異なります。 上記は、Oracle 10 パーティションと MySQL パーティションの違いについての詳細な説明です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: vue3 watch と watchEffect の使い方と違い
>>: Trash-Cli: Linux のコマンドラインごみ箱ツール
XHTML は現在国際的に推奨されている標準的な Web サイト設計言語です。Webjx.com も...
目次1. 概要2. シンプルなクラスを定義する3. 継承4. public、private、prot...
目次使用インストールルーティングでどのように使用しますか?読み込み速度の比較最近、中間およびバックエ...
コードをコピーコードは次のとおりです。 <form action="/hehe&qu...
基本概念現在の読み取りとスナップショットの読み取りMVCC では、読み取り操作はスナップショット読み...
CSSコードコンテンツをクリップボードにコピー.bottomTable{背景色: rgb (249,...
この記事の例では、衝突検出を実装するためのjsの具体的なコードを参考までに共有しています。具体的な内...
目次1. データベース内の MySQL ステータスを確認します。 2. 設定ファイルを変更します。 ...
フォーム要素はたくさんあります。簡単にまとめると、次のようになります。私のやり方では、主にテキスト ...
目次nginxとは1. 必要な依存関係をダウンロードする2. nginxの圧縮パッケージをダウンロー...
目次1. psutilパッケージをインストールする次に、オペレーティングシステム内のすべてのサービス...
MySQLでは判定記号がよく使われますが、等しくない記号はもっと一般的に使われます。次の3つの等しく...
グローバル ID を生成する方法は多数あります。ここでは簡単な解決策を紹介します。MySQL の自動...
1. 機能: xargs は、stdin 内のスペースまたは改行で区切られたデータをスペースで区切ら...
Nginx ロード バランシング サーバー: IP: 192.168.0.4 (Nginx-Serv...