Alexander
Да А я к примеру хочу чтобы одна коллекция хранилась в двух файлах
Alexander
Как это осуществить?
yopp
Никак.
Sergey
Шардировать
yopp
Шардинг
yopp
Проблема в том что места не хватает или iops?
yopp
https://www.mongodb.com/blog/post/training-machine-learning-models-with-mongodb
Artur
всем привет, как лучше реализовать проверку isEmpty при удалении коллекции через drop() ?
CC-BY-SA-4.0/Docker-ce30.0
if not collection.find_one(): collection.drop() например
CC-BY-SA-4.0/Docker-ce30.0
или .count()
CC-BY-SA-4.0/Docker-ce30.0
смотря что быстрее
Artur
ну да реализовал так же collection.count().then( res => { if (res) { collection.drop(); console.log('Database successfully droped!'); } else { console.log('Database is alredy empty!'); } } );
Artur
подумал что костыльно
CC-BY-SA-4.0/Docker-ce30.0
alreAdy
Artur
странно что drop возвращает false только если нет коллекции
CC-BY-SA-4.0/Docker-ce30.0
dropPed
Artur
)
CC-BY-SA-4.0/Docker-ce30.0
а в драйвере у дропа нет для этого параметров?
Artur
а вот щас гляну
CC-BY-SA-4.0/Docker-ce30.0
а надо было сразу )
Artur
спасибо за помощь)
Anonymous
Ребят, я нахожу коллекцию по _id, и в ней уже есть массив users, и в нем мне нужно снова найти объект по _id. Может Mongoose достучаться до нужного объекта в массиве? оба _id известны
Anonymous
Или нужно делать перебор массива?
yopp
без mongoose это делается через dot notation: user._id
yopp
но вообще это смысла не имеет в монге делать, а в монгусе скорее всего нужно просто reduce какой сделать сравнивая _id с нужным или что подобное
Anonymous
Нашел что-то, щас попробую, но перебирать не хотело бы
Mr. Best
подскажите плз, почему-то по такому запросу выдаётся неверные значения, не нул:
Mr. Best
Mr. Best
пытаюсь заселектить все записи, где элемент по этому пути равен нулу
ALEX
Попробуйте сделать статический метод к схеме, который будет перебирать и выдавать те коллекции где есть null
ALEX
// define a schema ` var animalSchema = new Schema({ name: String, type: String }); animalSchema.methods.findSimilarTypes = function(cb) { return this.model('Animal').find({ type: this.type }, cb); }; animalSchema.statics.findByName = function(name, cb) { return this.find({ name: new RegExp(name, 'i') }, cb); }; `
ALEX
var Animal = mongoose.model('Animal', animalSchema); Animal.findByName('fido', function(err, animals) { console.log(animals); }); var dog = new Animal({ type: 'dog' }); dog.findSimilarTypes(function(err, dogs) { console.log(dogs); // woof });
Nick
все правильно выбирает, тот 0 что вы используете понимается монгой как поле "0", которого нет, поэтому и нулл срабатвает Вам скорее всего в сторону https://docs.mongodb.com/manual/reference/operator/query/elemMatch/
Mr. Best
@yatoba спасибо
Nick
хотя про 0 наверное неправильно я вспомнил
Nick
https://docs.mongodb.com/manual/tutorial/query-for-null-fields/index.html говорит что должно было вернуть либо с нулом либо если бы не было значения, там же есть пример как запросить именно на наличие null в качестветве значения.
Pavel
ку всем. Не подскажите как сделать $lookup на такое поле? { someField: { "0": ObjectId(), "1": ObjectId(), "2": ObjectId(), } }
Kirill
Всем привет! Подскажите пожалуйста, как решить проблему с ошибкой errmsg: 'Authentication failed.'? Я использую Mongo в связке с TypeORM
Kirill
И все настройки я беру из конфига orm.
Igor
И все настройки я беру из конфига orm.
ты импортируешь этот конфиг например как Import Config from " pathtoconfig" и потом используешь как Config.usermane ?
Kirill
Суть в том, что создаётся json рядом с package.json, где хранятся все настройки для соединения и потом они используются в методе createConnection
Kirill
http://typeorm.io/#/using-ormconfig
Igor
тебе может попробовать поискать проблему в TypeORM а не в монге?
Igor
имхо монга то тут причем
Kirill
Просто вдруг, кто использует и натыкался на подобную ошибку)
Михаил Макарычев
Зачем parseInt() ?
Может, у него ts?
Kirill
а ты про это
SvPupok
Коллеги, поделитесь мудростью. Для анализа запросов по определенной БД и коллекции работает связка анализ лога + профилирование + explain(). А если необходим анализ запросов по шардированной коллекции? профилирование включать на каждой шарде?
yopp
Увы, да: на каждом включать и потом ещё отдельно с каждого снимать дампы коллекций с профалера
yopp
Их можно влить в одну коллекцию
yopp
И дальше волшебная сила аггрегаций
SvPupok
надо попробовать на питоне нарисовать скриптик для выгрузки. а дальше агрегировать ручками.
yopp
Поищи, скорее всего уже всё написано :)
Kirill
тебе может попробовать поискать проблему в TypeORM а не в монге?
в итоге да, мой косяк в том, что я забивал настройки для авторизации в конфиг вместе с докером=)
SvPupok
Увы, да: на каждом включать и потом ещё отдельно с каждого снимать дампы коллекций с профалера
есть еще небольшой вопрос, db.setProfilingLevel(1,{slowms: 100}) - включает профилирование, и записывает в коллекцию system.profile все запросы от 100 мсек. А порог записи запросов в лог монги, этой же командой устанавливается?
yopp
Не уверен. Вроде в конфигурации.
SvPupok
я просто в описании db.setLogLevel() ничего похожего не нашел.
SvPupok
Не уверен. Вроде в конфигурации.
как ни странно я оказался прав. опытным путем менял порог профилирования, порог записи запросов в логи так же менялся.
Kirill
Такая проблема, что постоянно при подключении к БД пишет ошибку авторизации. Я решил зайти в mongo -> use admin и удалить там записи всех пользователей и пересоздать админ юзера, но...
Kirill
Что-то делаю короче не так(
Kirill
Может ли кто подсказать последовательность действий правильную на начальном этапе настройки бд.
Сергей
Aleksandr
Привет. Такая ситуация: монга 3.0.12, в net.bindIp указан <hostname>,localhost6,localhost. У сервера сменился ip и после перезагрузки монга пытается биндиться на старый ip, хотя явно он нигде не прописан. Откуда она может его брать?
SvPupok
/etc/hosts ?
Aleksandr
/etc/hosts ?
Да, он самый. Спасибо. Я перерыл все от локального резолвера до содержимого dbPath. А ответ на поверхности..
SvPupok
Бгг))) бывает. У меня похожая ситуация с oracle была)
Junusali
Внизу он делает апдейт только для первого друга и второго емайла. А если я не знаю точную позицию почты или друга. Что делать? Как можно вставить переменную в индекс после точек? Я на pymongo. db.users.update ({_id: '123'}, { '$set': {"friends.0.emails.1.email" : '2222'} })
yopp
http://www.nyriad.com/products/nsulate/
Talgatio
привет всем! ТАкой вопрос. Как можно представить модельку в монгусе с таким представлением: { type: 'Airport', geometry: [ [ -110.633351959, 35.066679621 ], [ -110.633351961, 35.0833462950001 ], [ -110.616685285, 35.083346297 ], [ -110.616685283, 35.066679623 ], [ -110.633351959, 35.066679621 ] ], ceiling: 400 }
Talgatio
Интересует именно `geometry`
Nick
Интересует именно `geometry`
http://mongoosejs.com/docs/schematypes.html ofArrays: [[]],