Перенос моего приложения на NoSQL (MongoDB использует Mongoid в моем случае). До миграции мои пользовательские модели выглядели так:
class User < ActiveRecord::Base
has_one :profile, class_name: 'UserProfile', dependent: destroy
end
class UserProfile < ActiveRecord::Base
belongs_to :user
belongs_to :country
belongs_to :region
belongs_to :locality
end
class Country < ActiveRecord::Base
has_many :regions, dependent: destroy
has_many :localities, dependent: destroy
has_many :user_profiles
end
class Region < ActiveRecord::Base
belongs_to :country
has_many :localities, dependent: destroy
has_many :user_profiles
end
class Locality < ActiveRecord::Base
belongs_to :country
belongs_to :region
has_many :user_profiles
end
Итак, я разделил таблицы «пользователи», «user_profiles», «страны», «регионы», «местности».
У меня нет большого опыта работы с Mongo, но, как я знаю, запросов на объединение нет, поэтому я не уверен, что моя текущая структура вписывается в парадигму NoSQL. Не вызовет ли это много дополнительных запросов?