Apakah disarankan untuk menggunakan SQL Server sebagai basis data untuk aplikasi berskala besar?


10

Katakanlah Anda berencana membuat situs web skala Facebook (Jika saya akan mengutip nama situs web, mengapa tidak Facebook ?!). Apakah disarankan untuk menggunakan SQL Server sebagai basis data Anda untuk aplikasi seperti itu?

Saya mengajukan pertanyaan ini karena banyak rekan saya mengatakan bahwa SQL server tidak boleh digunakan aplikasi semacam itu. Mereka lebih memilih Oracle atau MySQL.


1
Apakah mereka menggunakan SQL Server untuk aplikasi apa pun?
JeffO

5
Saya tidak tahu apakah SQL server adalah jawabannya, tetapi Oracle tidak lebih baik dari SQl Server.
Ayub

9
Pertama-tama tanyakan pada diri Anda pertanyaan - apakah data Anda berhubungan ?
Henrik

2
Apakah anggaran Anda secara besar-besaran dapat diskalakan?
sasfrog

Jawaban:


10

Ya , SQL Server telah dirancang untuk penggunaan berat termasuk web. Ini memiliki kemampuan untuk dimasukkan ke dalam banyak konfigurasi differents seperti instance memori digabungkan dengan instance cpu dan SAN sebagai penyimpanan.

Tanyakan saran integrator atau penginjil Microsoft setempat.

Anda dapat menemukan banyak sumber tentang kemampuan penskalaan SQL Server di web, dan sebagai starter di sini adalah posting blog yang bagus dari tim SQL Server tentang masalah ini: http://blogs.msdn.com/b/sqlcat/archive/ 2008/06/12 / sql-server-scale-out.aspx

Pastikan untuk memeriksa bagaimana Azure menyediakan SQL Server di cloud.


SQL Azure bukan hanya 'SQL Server in the cloud', ada beberapa perbedaan. Tapi itu tentu saja pilihan yang layak untuk situs berskala besar dan harus dilihat.
Bart

Jika Anda punya uang untuk melemparnya maka itu akan skala.
David Neale

3

SQL Server cocok untuk database lain untuk jenis pekerjaan ini, tetapi jika Anda berpikir untuk melakukan sesuatu pada skala semacam itu Anda mungkin lebih baik bekerja dengan sistem penyimpanan tabel cloud daripada database relasional konvensional dalam hal skalabilitas , atau mendesain sistem heterogen yang menggunakan penyimpanan tabel untuk manajemen data skala yang lebih besar dan database untuk tempat-tempat di mana Anda memerlukan fasilitas relasional atau transaksional yang ditawarkan.


Ya, jawaban diterima. Terpilih. ;)
Henrik

3

Anda tidak boleh menggunakan mesin basis data tradisional jika Anda membutuhkan kemampuan skalabel yang masif dan asli.

Database SQL tradisional melakukan skala cukup baik (Anda akan menemukan banyak contoh situs besar menggunakan MySQL, SQL Server atau Orcale) tetapi pada titik tertentu Anda akan mencapai batas skalabilitas. Tepat ketika ini terjadi akan tergantung pada tingkat permintaan, kompleksitas persyaratan aplikasi Anda, seberapa banyak Anda bersedia menghabiskan pada server mahal dan seberapa baik Anda dapat mengoptimalkan penggunaan database. Banyak situs tidak akan pernah mencapai batas ini, tetapi jika Anda melakukannya maka itu cukup menyakitkan dan Anda akan dihadapkan dengan tantangan teknik besar untuk memperbaiki masalah.

Di luar titik ini, Anda benar-benar membutuhkan database NoSQL yang terdistribusi penuh - misalnya sesuatu seperti Cassandra , yang sebenarnya dikembangkan di Facebook untuk menyelesaikan beberapa tantangan data besar mereka. Database NoSQL secara eksplisit mengorbankan beberapa kemampuan database SQL tradisional (biasanya di sekitar transaksi, penguncian dan akhirnya konsistensi) untuk memungkinkan skalabilitas horizontal tak terbatas yang efektif.

Secara keseluruhan, saran saya adalah mencari tahu apakah Anda benar-benar membutuhkan skalabilitas besar, dan pilih jalur teknologi Anda yang sesuai.


2

Iya. Saya percaya Microsoft Live.com dibangun di atas SQL Server.

Menjadi penggemar Linux / PostgreSQL, izinkan saya mengatakan bahwa Anda dapat membuat Facebook dengan teknologi apa pun saat ini, khususnya SQL Server.

Jika Anda tidak berencana untuk memiliki pengguna sebanyak Facebook (500M), maka situs web yang paling (jaringan Stack Overflow) ini dibangun di atas. Net dan SQL Server.


2

Sebagai alat Anda mungkin dapat menggunakan SQL Server tetapi ingat situs seperti Facebook tidak dibangun di atas Database saja. Mereka menggunakan berbagai teknologi untuk menyelesaikan tugas, memeriksa video Yahoo untuk menemukan bagaimana facebook mengelola Log sendirian dan Anda akan menyadari bahwa DB hanyalah bagian dari Arsitektur yang sangat besar yang dapat diukur. Pada sekitar 10.000 baris pembaruan per detik saya telah melihat SQL Server dan Oracle DB menjadi sangat lambat setelah beberapa hari pada mesin konfigurasi yang baik. Masalah saya adalah saya tidak bisa menggunakan komputasi terdistribusi. Oleh karena itu penting untuk melihat sistem pendukung yang dapat diberikan oleh DB atau Arsitektur yang dapat diskalakan.


2

Saya tidak bisa menjawab untuk MySQL (!) Tapi saya punya pengalaman mendukung pelanggan kami memilih apakah akan menggunakan SQLServer atau Oracle. Sejauh ini, kami telah menemukan bahwa secara umum tidak ada perbedaan di antara mereka, tetapi ketika segala sesuatunya mencapai ujung, Oracle adalah produk yang jauh lebih baik. Sebagai contoh, kami saat ini mencatat sistem kami 24/7 misi kritis untuk membersihkan banyak catatan sebagai SQLServer memutuskan akan memakan waktu berjam-jam untuk melakukan tugas ini saat berjalan (dalam lingkungan cermin). Kami memiliki masalah dengan pengiriman log dari dataset besar di tautan WAN yang tidak pernah diselesaikan. Hal-hal seperti ini selalu membuat kami senang untuk mendukung pelanggan yang menggunakan Oracle, di mana kami tidak pernah memiliki masalah seperti itu.

Jadi, jika Anda mencari sistem yang dapat diskalakan secara besar-besaran, saat itulah Anda cenderung menemukan masalah ini. Oracle membosankan, sulit dan menjengkelkan, tetapi itu benar-benar berfungsi.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.