Мне интересно узнать о стратегиях разработки, которые вы использовали с нереляционными базами данных nosql - то есть (в основном новый) класс хранилищ данных, которые не используют традиционные реляционные дизайн или SQL (например, Hypertable, CouchDB, SimpleDB, хранилище данных Google App Engine, Voldemort, Cassandra, службы данных SQL и т.д.). Они также часто упоминаются как "хранилища ключей/значений", а на основе они действуют как гигантские распределенные постоянные хеш-таблицы.
В частности, я хочу узнать о различиях в разработке концептуальных данных с этими новыми базами данных. Что проще, что еще сложнее, чего нельзя вообще сделать?
-
Придумали ли вы альтернативные проекты, которые намного лучше работают в нереляционном мире?
-
Ты ударился головой о все, что кажется невозможным?
-
Вы объединили пробел с любыми шаблонами проектирования, например. переводить с одного на другого?
-
Вы вообще делаете явные модели данных вообще (например, в UML), или вы полностью их удалили в пользу полуструктурированных/документированных данных blobs?
-
Пропускаете ли вы какие-либо из основных дополнительных сервисов, которые предоставляют RDBMS, такие как реляционная целостность, произвольно сложная поддержка транзакций, триггеры и т.д.?
Я исхожу из базы данных реляционных баз данных SQL, поэтому нормализация в моей крови. Тем не менее, я получаю преимущества нереляционных баз данных для простоты и масштабирования, и моя кишка говорит мне, что должно быть более богатое перекрытие возможностей дизайна. Что вы сделали?
FYI, были обсуждения StackOverflow на похожие темы здесь: