Нуриддин
...только id или путь?
Смотри по конкретной задача и как будет идти структура твоего поиска
Нуриддин
Если тебе позволяет твоя логика бекэнда ловить данные по id в принципе это очень не плохо
Нуриддин
Но если данных слишком много(широкая табличка) и скорее всего запросы будут разные, то стоит проанализировать как точно будут идти запросы, что будете искать точно, а что в перспективе на апгрейд
Нуриддин
И уже строить с начала все запросы по ключам
Нуриддин
И конечно поставить индекс соответственно запросам, чтобы было ещё быстрее
Светлячок
Всем привет, подскажите пожалуйста, есть ли орм для Пайтона поддерживающая асинхронность?
Светлячок
А то начал гуглить, там костыли какие то
Нуриддин
А групп по пайтону нет???
Ivan
Gimolost
Pymongo)))
Или mongoengine
Gimolost
http://docs.mongoengine.org/
Светлячок
А групп по пайтону нет???
Я там и там спросил, но прошу прощения если мой вопрос не по теме обидел тебя.
Светлячок
Есть. YADM умеет.
Спасибо, гляну
Alexander
Спасибо, гляну
Если будут вопросы — пиши в личку. Я автор.

Привет Ребят кто то встречался с Replication у меня возникает проблемы есть сервер с ip address есть клиент c динамический ip у клиенте со времени не может быть доступ к интернету когда у клиента нет интернет он записывает данные себе и должен отправить к хосту как это реализовать пж дайте правильное направление

mqtt
спасибо за ответ можно подробно буду рад
𝔏𝔢𝔯𝔬𝔶
спасибо за ответ можно подробно буду рад
MQTT – это протокол для обмена сообщениями между устройствами через интернет, который работает даже при нестабильном соединении. он подходит для задач, где устройства часто отключаются от сети или имеют ограниченный доступ к интернету. MQTT используется для надежной отправки данных с одного устройства на другое или на сервер, гарантируя, что информация будет доставлена даже после временных сбоев в сети.
Александр
Возникает вопрос, так как в разных местах пишут и говорят по-разному: -- поле _id обязательно должно быть типа ObjectId, или все-таки оно может быть типа Number? Речь идет об id Телеграм аккаунтов, которые всегда уникальны без исключений. Просто я не вижу смысла в том, чтобы искать ObjectId связанной записи в другой коллекции в начале, если можно просто использовать значение, которое и так известно, и таким образом сократить количество запросов к базе.
Александр
Просто даже в примерах, не раз используют это поле. Но встроенный чекер кода от gpt, тоже теперь считает это ошибкой. Хотя ранее, он так точно не считал
Александр
Кажется вот тут показано использование кастомного значения для поля _id. Я думаю можно, но тут вопрос насколько оно будет эффективно шардироваться
Да, из-за этого и непонятно, вроде как даже в примерах есть но многие считают что так нельзя. Правда из тех кто считает, обосновать это никак не могут, что по сути хорошо
yopp
Возникает вопрос, так как в разных местах пишут и говорят по-разному: -- поле _id обязательно должно быть типа ObjectId, или все-таки оно может быть типа Number? Речь идет об id Телеграм аккаунтов, которые всегда уникальны без исключений. Просто я не вижу смысла в том, чтобы искать ObjectId связанной записи в другой коллекции в начале, если можно просто использовать значение, которое и так известно, и таким образом сократить количество запросов к базе.
В качестве object_id может выступать любой BSON объект, кроме массива. Вы свободно можете использовать идентификаторы от телеграмм в качестве _id. На мой личный взгляд, внешние идентификаторы в качестве основных ключей не самая надежная и удобная конструкция, особенно когда начинаются связи внешних объектов со внутренними (GPT дает очень плохие советы, не стоит ему доверять)
yopp
А вот словарь в виде _id это абсолютно всегда очень плохая идея
yopp
_id: {foo: 1, bar: 2}
Александр
_id: {foo: 1, bar: 2}
Это надо быть супер извращенцем, что бы такое использовать 😅 Но спасибо за пример.
yopp
Это частая ошибка при проектировании схемы: расчёт на то, что индексироваться будут пары ключ-значение внутри словаря, хотя при построение стандартного индекса значения, если упрощать, рассматриваются как bson блоб. Как следствие поиск по такому индексу не по полному совпадению (включая порядок ключей), это та еще задача. Но у такой схемы все же есть валидные кейсы, но это невероятно редкие ситуации, которые с каждым новым мажорным релизом становятся менее актуальными
Viktar
Я использую такую схему в кейсе с пейджингом. _id : { lastname, page}. Работает хорошо по полному совпадению. Частично не использую.
Viktar
База в 4Тб
:q!
Привет, как можно сравнить дату и время (которая записана в бд просто полем) с датой (без времени)? Что-то поковырялся и не нашел в мануалах( ps: сравнить equal, а не lte gte)
Gimolost
lt, gt
:q!
lt, gt
а без этого можно?
Gimolost
Aram
Да
Магомед
Привет. Вопрос глупый, но я не могу разобраться. У меня есть документ, имеющий поле cities - это массив ObjectId. Как мне найти документы, имеющие хотя бы одно совпадение? Я пытался использовать $in, но у меня почему-то не выходит. Буду благодарен за подсказку
Магомед
Магомед
У тебя '65a83...' это же строка а не objectId, там вроде строку надо обернуть в тип. Типа ObjectId('560c24b853b558856ef193a3')
Да, это сработало. Спасибо! Обычно я всегда использую mongoose и при указании строки вместо ObjectId он отрабатывает нормально, но я не знал, что в mongosh необходимо явно указывать ObjectId

ребят подскажите пожалуйста у меня 2 реплика сети мы выполняем разные операции оба реплике когда дела доходить в синхронизации удаляет данные вместе синхронизации как мне это реализовать что все работал корректно

данные тупо удаляется
Kirilll
Всем привет Кто то сталкивался с проблемой автокомплишна при табуляции в mongosh 2.1.4? Если коллекция вложена в другую вида db.coll1.coll2 то после coll1. добить табом можно только системные команды (count, find и т.п.), вложенные в нее колл не добиваются Исключения составляют только системные коллекции, с ними все ок Кто как решал или может в Джире монги уже есть подобный баг, который я не нашел
Kirilll
нет, это не документ также коллекция, т.е. сущность бд
Kirilll
автокомплит работает только на сущности БД. Вы же хотите работать с телом документа
Например у вас есть база жильцов домов В БД есть коллекция houses В этой коллекции есть коллекции house_1, house 2 и т.д. и уже в коллекции house_1 лежат док-ы с описание жильцов Для того что бы обратиться к документу одного из жильцов нужен запрос db.houses.house_1.findOne({}) В версии монги 4.4.9 с оболочкой mongos табуляция после db.houses. работала отлично и помимо этого команда выводила список коллекций. в том числе если дописать так db.houses.ho, то при табуляции получим список колл/команд, подходящих по началу названия
Nick
Mongo v6
где развернута?
Kirilll
где развернута?
локально на виртуалках
Kirilll
не облако
Kirilll
Почему это массивы?
Kirilll
да, так они и называются вложенные коллекции
Nick
да, так они и называются вложенные коллекции
это называется соглашение о наименовании. Никакой вложенности тут нет
Kirilll
Хорошо Как называть - это другой не менее интересный вопрос) Интересует, есть ли решение с автокомплишном на данный момент
Nick
вложенное это иерархическая структура, а то что в названии просто договорились через точку делать более удобный формат для навигации по системе никакого отношения к вложенности не имеет, т.к. все это просто обычные коллекции, которые лежат в одной и той же БД на одном уровне
Nick
Хорошо Как называть - это другой не менее интересный вопрос) Интересует, есть ли решение с автокомплишном на данный момент
скорее всего нет, т.к. точки в названия - это постоянные проблемы и то что автокомплит не работает в целом просто намек что надо бы называть по другому. Например через символ подчеркивания
Nick
ну и еще можно попробоват ьэкранировать, но как именно через апостроф или кавычку не подскажу
Jkprime
всем привет, вопрос, у меня есть фласк приложение и монго дб с кластером, и я задеплоил это в pythonanywhere и это ругается что не может коннектится с uri на монго дб, и я добавил айпи адрес настроил все что есть но не работает, может ли это быть из за тарифного плана beginner? error: pymongo.errors.ServerSelectionTimeoutError
Светлячок
Всем привет, можно ли как то установить юзера на базу данных установленную локально?
Александр
Всем привет, можно ли как то установить юзера на базу данных установленную локально?
А почему нет? У меня на сервере база стоит у себя, соответственно выходит что она стоит локально, относительно сервера.
Kirilll
Всем привет, можно ли как то установить юзера на базу данных установленную локально?
Можно Читай про включение аутентификации в монге Как завести юзера и накинуть ему права
Kirilll
Код приложения, соответственно, придется переписать на подключение к бд по логину паролю
Ортонормированная
sudo apt-get install -y mongodb-org-shell Чтение списков пакетов… Готово Построение дерева зависимостей… Готово Чтение информации о состоянии… Готово Уже установлен пакет mongodb-org-shell самой новой версии (7.0.5). mongo zsh: command not found: mongo
Ортонормированная
Что не так делаю? подскажите, пожалуйста
Нуриддин
mongosh попробуй