Mamy dużą witrynę z wiadomościami, która ma duży ruch w sieci. Architektura to często spotykana baza danych - warstwa repo - warstwa usług - Asp.Net MVC. Problem, który widzieliśmy, dotyczy wydajności odczytu. Okazuje się, że te wszystkie obiekty w domenie DDD są świetne teoretycznie dla reguł biznesowych, ale utrudniają życie, jeśli chodzi o optymalizację wydajności odczytu.
Jako rozwiązanie rozważam coś zupełnie nowego (dla nas): użycie noSQL. Chciałbym użyć bazy danych noSQL do prezentacji danych na naszej stronie internetowej. Nie możemy pozbyć się naszego SQL Servera (przynajmniej nie w najbliższym czasie), ale wydaje mi się, że praktycznym krokiem byłoby użycie Mongo jako bazy danych zapytań dla wszystkich nowych rozwiązań.
Moje pytanie brzmi, czy można używać programu SQL Server jako bazy danych rekordów i Mongo jako bazy danych zapytań razem ?
Kiedy więc jeden z naszych redaktorów zaktualizuje rekord, dane będą przechowywane w SQL Server. Jest to konieczne, ponieważ istnieje zbyt wiele starszego kodu, którego nie można ponownie napisać z dnia na dzień.
Ale kiedy przeglądający w witrynie przegląda artykuł lub listę artykułów, chciałbym skorzystać z wydajności Mongo kontra SQL Server. Aby dane były nieco aktualne, powiedzmy 15 minut lub mniej, dane programu SQL Server musiałyby odświeżyć Mongo. RDBMS ma narzędzia do replikacji do takich operacji i zastanawiam się, czy istnieje coś takiego do zrobienia od SQL Server do Mongo. Może serwer Lync?