Mamy wiele danych dotyczących interakcji użytkowników z różnych stron internetowych przechowywanych w Cassandra, takich jak pliki cookie, odwiedzane strony, reklamy wyświetlane, klikane reklamy itp., Które chcielibyśmy wykonywać raportowanie. Nasz aktualny schemat Cassandra obsługuje podstawowe raporty i zapytania. Jednakże chcielibyśmy również tworzyć duże zapytania, które zazwyczaj obejmują łączenia w dużych rodzinach kolumn (zawierających miliony wierszy).Analityka i wydobywanie danych z Cassandra
Jakie podejście najlepiej nadaje się do tego? Jedną z możliwości jest wyodrębnienie danych do relacyjnej bazy danych, takiej jak mySQL, i eksploracja danych w tym miejscu. Alternatywą może być próba użycia hadoopu z ulem lub świnią do uruchomienia mapy, aby ograniczyć zapytania w tym celu? Muszę przyznać, że mam zerowe doświadczenie z tym ostatnim.
Ktoś ma doświadczenie w różnicach wydajności w jednym z nich w stosunku do drugiego? Czy uruchomisz mapę, zmniejszając zapytania w żywej instancji produkcyjnej Cassandra lub w kopii zapasowej, aby zapobiec wpływowi obciążenia na wydajność zapisu?
Cześć Tyler, dziękuję bardzo! Masz bardzo interesującą perspektywę! Czy możesz wskazać mi jakąś dokumentację opisującą zdolność DSE do poświęcenia części klastra Cassandry na analitykę? –
Mam problem ze znalezieniem jednej strony, która je podsumowuje, ale przeczytaj o [NetworkTopologyStrategy] (http://www.datastax.com/docs/1.1/cluster_architecture/replication#networktopologystrategy) (jeśli go nie znasz). Dane CFS mają tylko repliki w analityce "DC", a dane Cassandra mają repliki w obu. Normalne węzły Cassandra mogą pisać w LOCAL_QUORUM, a węzły analityczne mogą odczytywać w LOCAL_QUORUM, więc żaden DC nie będzie miał znaczącego wpływu na wydajność drugiego. Może to być również przydatne: http://www.datastax.com/docs/1.1/cluster_architecture/about_client_requests –
Dzięki Tylerowi udało mi się przeczytać na ten temat i rozwiązuje to wiele z naszych problemów. Na pewno spróbujemy zastosować to podejście. –