Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Apa itu Partisi MYSQL?

Gagasan di balik partisi bukanlah menggunakan banyak server tetapi menggunakan beberapa tabel alih-alih satu tabel. Anda dapat membagi tabel menjadi banyak tabel sehingga Anda dapat memiliki data lama di satu sub tabel dan data baru di tabel lain. Kemudian database dapat mengoptimalkan kueri di mana Anda meminta data baru mengetahui bahwa mereka berada di tabel kedua. Terlebih lagi, Anda menentukan bagaimana data dipartisi.

Contoh sederhana dari Dokumentasi MySQL :

CREATE TABLE employees (
    id INT NOT NULL,
    fname VARCHAR(30),
    lname VARCHAR(30),
    hired DATE NOT NULL DEFAULT '1970-01-01',
    separated DATE NOT NULL DEFAULT '9999-12-31',
    job_code INT,
    store_id INT
)
PARTITION BY RANGE ( YEAR(separated) ) (
    PARTITION p0 VALUES LESS THAN (1991),
    PARTITION p1 VALUES LESS THAN (1996),
    PARTITION p2 VALUES LESS THAN (2001),
    PARTITION p3 VALUES LESS THAN MAXVALUE
);

Hal ini memungkinkan untuk mempercepat mis.:

  1. Menghapus data lama dengan sederhana:

    ALTER TABLE employees DROP PARTITION p0;
    
  2. Basis data dapat mempercepat kueri seperti ini:

    SELECT COUNT(*)
    FROM employees
    WHERE separated BETWEEN '2000-01-01' AND '2000-12-31'
    GROUP BY store_id;
    

Mengetahui bahwa semua data disimpan hanya di partisi p2.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kursor Bersarang di Mysql

  2. Bagaimana cara menghapus semua karakter numerik non-alfa dari string di MySQL?

  3. Bagaimana saya bisa mengatur jumlah maksimal proses atau utas MySQL?

  4. MySQL Menghitung nilai yang berbeda dari satu kolom

  5. Optimalkan permintaan MySQL untuk menghindari Menggunakan di mana; Menggunakan sementara; Menggunakan filesort