Максим
Добрый день!
Подскажите, пожалуйста, решение проблемы, без использования DBaaS или платных решений.
Мне нужно, чтобы данные через месяц после добавления мигрировали с одного шарда (SSD) на другой (HDD).
Нюанс: в документе нет поля с ISODate(). Но есть поле с Unix Timestamp.
Nick
Максим
https://docs.mongodb.com/manual/tutorial/sharding-tiered-hardware-for-varying-slas/
@yatoba Благодарю, но, кажется, это не подойдет. В этой статье явно указывается как решить это с помощью поля ISODate(), но как я указал в вопросе, что у меня нет его, только Unix Timestamp.
Хотя у меня возник другой вопрос: могу ли я указать таг шарда с SSD поле с Unix Timestamp, где нижнее значение будет: { "<field>": MinKey }, а верхнее значение = { "<field>": { "$gt": { "$expr": { "$sum": [ "$<field>", "2629743" ] } } } }
То есть, где нижнее значение будет равно значению Unix Timestamp, а верхнее значение будет равно сумме значения Unix Timestamp + 1 месяц (2629743 секунд)?
Или такая схема и / или такой синтаксис работать не будет?
Nick
@yatoba Благодарю, но, кажется, это не подойдет. В этой статье явно указывается как решить это с помощью поля ISODate(), но как я указал в вопросе, что у меня нет его, только Unix Timestamp.
Хотя у меня возник другой вопрос: могу ли я указать таг шарда с SSD поле с Unix Timestamp, где нижнее значение будет: { "<field>": MinKey }, а верхнее значение = { "<field>": { "$gt": { "$expr": { "$sum": [ "$<field>", "2629743" ] } } } }
То есть, где нижнее значение будет равно значению Unix Timestamp, а верхнее значение будет равно сумме значения Unix Timestamp + 1 месяц (2629743 секунд)?
Или такая схема и / или такой синтаксис работать не будет?
Тип поля не имеет значения, важно как вы будете задавать границы зон
Volodya
Максим
carnivorous plant
ребят, подскажите в чем проблема, пытаюсь конвертнуть object id в строку в map, но toString метод отсутствует по какой-то причине
carnivorous plant
carnivorous plant
carnivorous plant
в таблице поле _id это object id
carnivorous plant
Если просто выполню такой код, то все работает
carnivorous plant
carnivorous plant
carnivorous plant
какая-то чертовщина, ничего не понял, но пофиксил вот этим
Максим
Ребят как мне прописать regex что бы частичный поиск по названию товара сделать?
Максим
{title: {$regex: /text/gi}} не работает
Daniil
Добрый день, подскажите пожалуйста, как исправить ошибку? Я уже и уникальность выключил в моделе, а ошибка не исчезает
Daniil
Daniil
Nick
Null
Пожалуйста используйте #офтоп или на подобии этого (ради совести).
Null
Я вот читаю сижу и думаю, что за вопрос у чела возник!?
Oleksii
Здраствуйте, возможно странный вопрос
у меня монго подключена к боту в тг, монга сама определяет, что нужно взаимодействовать с юзером Х или это нужно как-то указать, по аналогу sqlite whea(uid=1111) ?
fλüggåɘnk∂€čhiœßøλ∫ên
Nick
Oleksii
Что значит взаимодействовать?
это мой первый опыт работы с nosql бд. привык, что есть метод, по которому я могу найти нужного пользователя по ключу и уже удалять/обновлять/записывать данные, но читая документацию, я не нахожу(либо не понял что это оно) ничего, что могло бы выступать фильтром для юзера. прошу простить если ошибся в лексиконе, только учусь
fλüggåɘnk∂€čhiœßøλ∫ên
Ну ты можешь найди юзера по айди и делать с ним что хочешь, тоже самое же
fλüggåɘnk∂€čhiœßøλ∫ên
find(equal("_id", Id))
Что-то в этом роде
fλüggåɘnk∂€čhiœßøλ∫ên
Напиши что хочешь сделать и получить как результат
Oleksii
db.users.find({"uid": message.user.id}) найдет мне пользователя по его id, а как сразу обновить данные? db.users.find({"uid": message.user.id}).replaceOne(filter, update, options)?
Kirill
wertaer
db.updateOne({ "id": 111 }, { "active": false })
wertaer
Oleksii
fλüggåɘnk∂€čhiœßøλ∫ên
https://docs.mongodb.com/realm/mongodb/actions/collection.findOneAndUpdate/
fλüggåɘnk∂€čhiœßøλ∫ên
Вот дока
Anonymous
Привет всем, получается создавать только одного юзера, после создания второго показывает это E11000 duplicate key error collection: nestjs.users index: email_1 dup key: { email: null }
P1GAS
P1GAS
И при первой регистрации юзер не пишет свой email, поэтому его email: null
Потом приходит второй юзер и тоже не вводит свой email, поэтому и его email: null
Cloud
P1GAS
А email должен быть уникальным
P1GAS
Cloud
Не там в базе уже налл есть
P1GAS
https://stackoverflow.com/questions/44639377/mongoose-field-not-required-but-unique
Cloud
Лечится через sparse: true
Чтобы налл за дубликат не считался
Или рекваирет тру поставить и записи в баще поправит
Шоб налл не было
Anonymous
спасибо за ответы, попробую
Anonymous
но и sparse true не решает проблему
Danil
Всем привет!
В монге не разбираюсь, поэтому может вопрос не очень
Есть таблица, в ней одно из полей массив
Хочется написать запрос примерно такой:
Найти все записи у которых записи в поле array не принадлежат массиву по которому ищем.
Danil
По типу работы с множествами
fλüggåɘnk∂€čhiœßøλ∫ên
Danil
Tony
Danil
hexad3c1mal
Добрый день. Не смог найти информацию, как в pymongo можно передать запрос в синтаксисе lucene
Например, для эластика применяю такую вещь:
{
"query": {
"query_string": {
"query": "timestamp:... && type_ in [12, 13, 14]",
"default_field": "content"
}
}
}
В данном чате нашел упоминание про "полнотекстовый поиск аля Lucene", но вот можно применять сам люциновский синтаксис?
Нашел проект luqum, но он конверитрует в json-формат для эластика, в чистый формат не может.
Nick
Egor
Nick
V
{ skins: { $in: ["5ff799de9d6ee153fbb39a71"] }}
ничего не находит
V
skins это массив
V
ObjectId("5ff799de9d6ee153fbb39a71")
Cloud
mongosh
find({skins: ObjectId("5ff799de9d6ee153fbb39a71")})
mongoose
find({skins: "5ff799de9d6ee153fbb39a71"})
Daniil
Здравствуйте, а что лучше использовать null или пустую строку?
P1GAS
neopoznanniy
Добрый вечер всем. Подскажите пожалуйста, у меня бот телеграма использует бд MongoDB и мне нужно подставить свои данные, как изображено на фото, где их можно найти?
neopoznanniy
да, у меня есть файл базы данных в формате db и в папке с ботом есть исполняющий файл db.py,только теперь мне нужно как то ее импортировать, чтобы у меня не выдавало такую ошибку
Nick
neopoznanniy
хорошо,спасибо. еще вопрос, подскажите, монго использует только формат json?
Nick
Nick
монга для хранения использует bson. Для запросов тоже, но драйвера обычно принимают json и сами конвертируют. Есть всякие ODM, которые работают на уровне сущностей и писать запросы уже надо согласно их синтаксису.
neopoznanniy
вопрос к тому, что у меня уже есть сформированный файл в формате db, и сейчас сталкиваюсь с проблемой, как его импортировать
Zaur
коллеги, подскажите можно ли как то обновить множество документов (updateMany) и вернуть список id затронувших документов ?
Den
Всем привет, кто сможет написать 2 не сложные агрегации? можно через фриланс, можно пэйпэл.
Tony
Zaur