GridFS - это (грубо говоря) набор функций которые работают с MongoDB, можно назвать синтаксическим сахаром. В итоге файлы хранятся в самой базе нарезанными на куски. И ими можно оперировать обычными функциями find/update/insert
И вообще это на уровне драйвера, возможно сама монга ничего не знает про GridFS (т.е. в монге нет спец. функционала под GridFS)
> всегда будет существовать birthdate, хотя-бы равный NULL
Я глубоко не копал, но думаю что оно так.
> другой строке 1000 полей "y0000...y0999"
Думаю речь про один из этих подходов: www.datastax.com/dev/blog/does-cql-support-dynamic...
1) т.е. либо можно на один индексный ключ повесить несколько строк и воспринимать их как один объект
2) тоже что и 1, только использовать cell+value
3) использовать map с произвольными данными
Dmitrii Solovev: нет, только это.
добавление транзакции и изменение аккаунта - 2 операции, поэтому если произойдет сбой в этот момент, то 2-я операция может быть не выполнена и данные разойдутся.
Посмотрите про двухфазный коммит, как это можно обруливать.
Дмитрий Масленников: По идее правильно, только за вас это должна делать бд. В mysql сходу не на нашел как, а в других бд (конкретно в mongodb) это делается просто.
Дмитрий Масленников: Составной индекс должен содержать обратную сортировку вторым "параметром" (первый owner_id), тогда запрос будет работать мгновенно, т.к. бд не будет вручную сортировать результат, а будет просто брать элементы из индекса по порядку.
Надежный в плане чего?
Если про сохранность данных - это очень спорный вопрос, т.к. правильно настроенная монга гораздо надежней дефолтного постгре.