Was ist der beste Weg, um eine einzelne Datenbank horizontal zu skalieren?Kennen Sie gute verteilte Datenbanksysteme?
Antwort
In this episode der Software Engineering Radio Podcast der Interviewer Gespräche mit einem Distinguished Architect bei eBay. Wie Sie sich vielleicht vorstellen können, hat eBay sowohl horizontal als auch vertikal Bedenken hinsichtlich der Skalierbarkeit. Dieses Thema wird ausführlich besprochen und ist es wert, gehört zu werden, da der Architekt es besser und gründlicher erklärt, als ich es hier könnte.
Viele der Systeme, die ich horizontal, dass Maßstab verwenden MS SQL Server 2005.
Datenbank-Design, einen großen Teil der Skalierung spielt auch gesehen haben. Verwenden Sie GUID für Primärschlüssel in Ihrer Tabelle, damit Primärschlüsselkollisionen von Einfügungen verhindert werden. Ich verwende dann SQL Server Merge Replication, um die Datenbank synchronisiert zu halten.
Dies ist nur eine kurze Zusammenfassung, aber es wird Ihnen einen Vorsprung geben.
Für diejenigen unter Ihnen, die ein wenig zu faul sind (oder haben Kopfhörer nicht), können Sie die Folien herunterladen (von der Präsentation über Alan sprach) hier -
Alternativ Sie können diesen Artikel lesen -
http://www.infoq.com/articles/ebay-scalability-best-practices
dieser Artikel spricht über Flickr Architektur und wie sie mit MySQLSkalierung
delthttp://www.niallkennedy.com/blog/uploads/flickr_php.pdf
Ein weiterer guter Ort Referenz für die Skalierung ist: http://highscalability.com/
- 1. Kennen Sie gute JMonkeyEngine Tutorials und Dokumente?
- 2. Was sind gute verteilte Warteschlangenmanager in PHP?
- 3. Kennen Sie einige gute Ressourcen zum Erlernen von NoSQL-Datenbanken?
- 4. Kennen Sie eine gute C++ Support Vector Machine (SVM) Bibliotheken?
- 5. Kennen Sie das gute Entwurfsmuster für diesen Algorithmus?
- 6. Welche Datenbanksysteme sollte ein Startup-Unternehmen berücksichtigen?
- 7. So verwenden Sie verschiedene Datenbanksysteme von Windows-Anwendung
- 8. Kennen Sie einen Webseitenerscheinungsvergleicher?
- 9. welchem Punkt sollte jemand entscheiden, Datenbanksysteme
- 10. Verteilte Zufallszahlengenerierung
- 11. Wo \ Wie verteilte Konfigurationsdaten gespeichert werden
- 12. Kennen Sie eine OCAML IDE?
- 13. Kennen Sie eine gute Einführung in JMS für IBM MQ (MQSeries) Person?
- 14. Kennen Sie gute Tutorial-Websites, um eine PrePost in Tomcat zu entwickeln?
- 15. Thread-Namen - wann müssen Sie sie kennen?
- 16. Verteilte Datenbanken Fragen
- 17. SOAP für verteilte Transaktion
- 18. Verteilte Transaktionen mit WCF
- 19. verteilte Cache-Technologie
- 20. DC/OS - Verteilte Dienste
- 21. Quellwolken-Datenfluss verteilte Verarbeitung
- 22. Welcher verteilte Cache?
- 23. Q: orientdb verteilte Probleme
- 24. gleichmäßig verteilte Zufallszahlengenerierung
- 25. Verteilte Entwicklung mit Git
- 26. Verteilte Nachricht in D?
- 27. Scala verteilte Middleware
- 28. dask verteilte Speicherfehler
- 29. JavaScript verteilte Computing-Projekt
- 30. C++ verteilte Programmierung
Bin ich falsch in der Annahme, dass die Skalierbarkeit Verteilung orthogonal ist? In meinen Augen ist eine verteilte Datenbank eine, die über mehrere Standorte hinweg repliziert wird. Dies ist nicht dasselbe wie ein skalierbarer Cluster, der für Clients als einzelne Datenbankinstanz angezeigt wird, aber möglicherweise auf mehrere physische Maschinen verteilt ist, um Skalierbarkeit und Zuverlässigkeit zu erreichen. – Kief