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

Pembagian basis data vs partisi

Partisi lebih merupakan istilah umum untuk membagi data di seluruh tabel atau database. Sharding adalah salah satu jenis partisi khusus, bagian dari apa yang disebut partisi horizontal.

Di sini Anda mereplikasi skema di (biasanya) beberapa instance atau server, menggunakan semacam logika atau pengenal untuk mengetahui instance atau server mana yang mencari data. Pengenal semacam ini sering disebut "Shard Key".

Logika tanpa kunci yang umum adalah menggunakan alfabet untuk membagi data. A-D adalah instans 1, E-G adalah instans 2, dll. Data pelanggan sangat cocok untuk ini, tetapi akan sedikit disalahartikan dalam ukuran di seluruh instans jika partisi tidak memperhitungkan bahwa beberapa huruf lebih umum daripada yang lain.

Teknik umum lainnya adalah menggunakan sistem atau logika sinkronisasi kunci yang memastikan kunci unik di seluruh instance.

Contoh terkenal yang dapat Anda pelajari adalah bagaimana Instagram memecahkan partisi mereka di hari-hari awal (lihat tautan di bawah). Mereka mulai dipartisi di sangat sedikit server, menggunakan Postgres untuk membagi data sejak awal. Saya percaya itu beberapa ribu pecahan logis pada beberapa pecahan fisik itu. Baca artikel keren mereka dari tahun 2012 di sini:Instagram Engineering - Sharding &ID

Lihat juga di sini:http://www.quora. com/Whats-the-difference-between-sharding-and-partition



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bisakah saya menggunakan ON DUPLICATE KEY UPDATE dengan kueri INSERT menggunakan opsi SET?

  2. Buat bidang tanggal dari hari, bulan, tahun di MySQL

  3. prosedur di mysql

  4. Dapatkan String Kueri MySQL Lengkap saat Sisipkan atau Perbarui

  5. Cara Melakukan Rolling Upgrade untuk MySQL