Теория базы данных и номинальная практика существуют, чтобы обеспечить основу для большинства случаев. Не каждый шаблон использования базы данных аккуратно вписывается в третью нормальную форму. Отсюда и появление NoSQL. Эти базы данных не работают хорошо в большинстве случаев, но отлично работают в определенных случаях. Одна из причин, по которой они работают хорошо, заключается в том, что они НЕ работают как обычные РСУБД. У Кассандры действительно есть возможность «присоединиться», но я не помню точных деталей. Если вы хотите быстрого понимания, я бы порекомендовал блог разработчиков Digg. Есть хорошее простое описание.
Проблема в том, что я готов поспорить, что объединение 4 таблиц будет медленнее, чем mySQL. И единственный способ узнать наверняка - это изучить новую СУБД, установить ее, настроить установку, а также настроить MySQL и настроить все свои данные, и ... вы захотите узнать, что MySQL чертовски хорош .
Попытка решить проблему ТОЧНО ЖЕ, то, что ТОЧНО ЖЕ с помощью другого движка, не поможет: вам нужно ДУМАТЬ как разработчик NoSQL, а не разработчик СУБД, использующий NoSQL.
Но вы можете думать о проблеме так, как предлагает Фрустрированный.
Почему у нас третья нормальная форма? Простота обновления в основном. Я обновляю одну строку вместо десятков. Это также помогает ограничить данные, если я тщательно контролирую добавление стран в таблицу стран, я никогда не получу плохую в таблице кампании. После этого 3NF не делает запросы быстрее, поэтому мы изобрели базы данных отчетов, OLAP, Cubes, Star Schemas.
Ключ в том, что это другая структура для отчетности и редактирования / захвата.
Как сказал Фрустрированный, определите скорость изменения ваших базовых данных. Если вы действительно добавляете страны каждые 5 минут, я буду ошеломлен. Кампания? вероятно случайный? Объявления? пару раз в день. Сколько времени потребуется, чтобы построить полностью сплющенную таблицу и проиндексировать ее? Сколько строк это производит? если это время цикла намного меньше вашей частоты обновления ... создайте его и посмотрите. Проверьте скорость запроса. Это более дешевый эксперимент, чем переход на совершенно новую БД.