Postgres vs MySQL: Mana yang lebih sulit untuk diukur?

8

Dari pengalaman Anda, layanan basis data mana yang lebih sulit untuk diukur? MySQL atau Postgres? Saya tahu MySQL memiliki beberapa fitur scaling / clustering out-of-the-box, tetapi dengan Postgres tidak ada yang keluar-of-the-box. CMIIW.

EDIT :

Maaf atas kebingungan di sini, pertanyaan saya mengacu pada penskalaan (penskalaan horizontal), yaitu pengelompokan, pengabaian, dll. Saya tahu keduanya dapat menskala secara horizontal, tetapi mana yang lebih mudah diterapkan?

Terima kasih sudah berbagi.

Joshua Partogi
sumber

Jawaban:

1

MySQL adalah A LOT easer untuk skala, pengelompokan dan replikasi keduanya asli dan sangat mudah dikelola dan diimplementasikan (bahkan untuk seseorang yang tidak benar-benar memiliki pengetahuan basis data).

PostgreSQL hanya mendukung replikasi dasar untuk saat ini, dan tidak ada yang resmi tentang pengelompokan (secara teknis Anda dapat melalui alat pihak ke-3, tetapi menjadi sangat sulit untuk dikelola).

Saya tidak akan pernah memilih Postgresql jika saya berencana untuk keluar.

Sunting: jawaban yang sangat lama menggunakan sebutir garam karena postgres dan mysql telah banyak berubah sejak ini dijawab.

Kedare
sumber
Jadi Postgres hanya baik untuk database monolitik?
Joshua Partogi
Keduanya bagus di database server tunggal, untuk melihat fitur spesifik apa dari MySQL atau PostgreSQL yang Anda butuhkan
Kedare
2
MySQL memang jauh lebih mudah, tetapi masalah dengan MySQL adalah tidak memeriksa integritas data. Selain itu, PostGreSQL sepenuhnya mendukung pengelompokan dan replikasi. Lihat: wiki.postgresql.org/wiki/Clustering dan wiki.postgresql.org/wiki/…
Quandary
7
Tentu saja ada banyak solusi untuk meningkatkan "PostgreSQL" keluar, dan banyak situs dan sistem terbesar di luar sana hanya menggunakan ini. MySQL akan lebih mudah untuk ditingkatkan jika Anda sudah tahu mysql , dan postgresql akan lebih mudah untuk keluar jika Anda sudah tahu postgresql . Jika Anda tidak tahu, mereka mungkin cukup sama dengan seberapa sulitnya, dan Anda harus melihat properti lain dari database untuk memilih satu.
Magnus Hagander
Saya ingin tahu apakah jawaban ini masih relevan itu dijawab hampir 8 tahun yang lalu
CommonSenseCode
8

Sementara pertanyaan ini tampaknya bertentangan dengan prinsip "Hindari mengajukan pertanyaan subyektif atau argumentatif" dari situs saya tidak bisa menahan diri untuk mencoba menjawab.

Tergantung.

Sedang berbicara tentang konfigurasi server tunggal yang menskala ke dataset sangat besar?
Keduanya dapat bekerja dalam situasi ini tergantung pada dataset, tetapi keduanya mungkin tidak akan berjalan dengan baik tanpa konfigurasi khusus dan perencanaan yang tepat. Dalam pengalaman saya ketika bekerja pada dataset besar dengan banyak penulisan, saya menemukan Postgres memiliki lebih sedikit kondisi yang menyebabkan pemblokiran dan kinerja keseluruhan lebih baik.

Apakah Anda berbicara tentang konfigurasi multi-server yang skala ke banyak budak untuk banyak pembaca?
MySQL secara historis telah dianggap sebagai pemimpin dalam ruang ini sejak ia datang dengan replikasi asinkron built-in. Ini tidak lagi terjadi jika Anda tidak menentang untuk menggunakan perangkat lunak DB terbaru; Postgres sekarang juga memiliki built in ini dengan rilis 9.0. Pengalaman saya dengan replikasi MySQL sudah lebih dari cukup untuk saat ini.

Apakah Anda berbicara tentang konfigurasi multi-server yang skala ke banyak master untuk banyak penulis?
Sejauh ini, ini adalah cara paling sulit untuk menskala produk mana pun dan berkali-kali dapat dihindari melalui penggunaan server failover. Jika Anda benar-benar perlu meningkatkan ketersediaan addon server master / instalasi alternatif tidak dapat dihindari. Untuk MySQL ada MySQL Cluster NDB yang memiliki opsi open source atau versi komersial . Untuk Postgres ada banyak addons yang bisa membuat Anda mendapatkan berbagai level HA dan pooling

Dalam jangka panjang, penskalaan basis data Anda biasanya bermuara pada perencanaan desain. Jika aplikasi Anda dirancang dengan mempertimbangkan skala maka sistem db yang paling cocok untuk pengembang Anda sering merupakan pilihan terbaik.

Ed.
sumber
3

PostGre memiliki lebih banyak fitur dan opsi konfigurasi.

Dengan demikian, kemungkinan akan lebih sulit untuk menskala, tetapi juga kemungkinan akan menskala lebih baik, yaitu, jika dikonfigurasi dengan benar.

Secara umum, MySQL mungkin masih akan lebih cepat, di sisi lain, pertanyaan sebenarnya adalah seberapa banyak Anda menghargai integritas data, dan fitur apa yang Anda butuhkan, dan apakah Anda ingin bergantung pada Oracle (sekarang memiliki MySQL)?

Juga, ada pertanyaan lisensi, seperti apakah Anda benar-benar ingin membeli lisensi MySQL hanya karena Anda tidak ingin menerbitkan aplikasi Anda di bawah GPL?
Dengan PostGreSQL, ini bukan masalah, yang merupakan nilai tambah yang sangat besar.

Kebingungan
sumber