2012-08-08 33 views
5

Czytam pewne rzeczy o hostowanych (aka chmura) bazach danych. Na przykład Cloudant oferuje hostowaną bazę danych CouchDB lub Cassandra.io oferuje hostowaną Cassandrę. Rozumiem, dlaczego te usługi rozwiązują niektóre problemy.Hostowane bazy danych: jak radzi sobie z opóźnieniem?

Moje pytanie: Dlaczego te usługi działają? Przypuszczam, że hostuję własną aplikację na własnych serwerach (lub gdzieś na platformie hostingowej w chmurze) i używam jednej z tych usług do przechowywania moich danych. Dla każdego żądania bazy danych (czytać lub pisać), muszę zapłacić pełny objazd przez Internet (zakładam, że moja aplikacja nie jest hostowana w tym samym miejscu co mój dostawca chmury bazy danych). Dlaczego te objazdy mnie nie zabijają? Myśląc o SQL, każde zapytanie kosztowałoby kolejne x * 10ms tylko dla sieci, bez żadnego czasu.

W jaki sposób rozwiązano ten problem? Czy te usługi nie są odpowiednie dla aplikacji wymagających szybkich odpowiedzi i mogą być używane tylko do przetwarzania danych, w których opóźnienie nie jest problemem?

Odpowiedz

1

Ogólnie rzecz biorąc, fizyczne hosty usług hostowanych baz danych zwykle znajdują się w głównych centrach danych (np. AWS). Aby zmniejszyć opóźnienie sieci, klienci mogą zdecydować, czy mają być hostowane na serwerach znajdujących się w fizycznym centrum danych, w którym znajdują się hostowane bazy danych.

Większość wysokowydajnych aplikacji i/lub stron internetowych, które nie korzystają z hostowanych usług baz danych, zazwyczaj utrzymuje swoje serwery aplikacji i ich serwery baz danych na osobnych hostach z powodów związanych z wydajnością. Krótko mówiąc, przejście na usługę hostowanej bazy danych niekoniecznie zwiększy opóźnienie sieci.