Artem
Но это в документации 6 версии
Youdgin
Подскажите, с помощью чего в монго можно сделать вот такое как в SQL
Youdgin
CASE WHEN account.name IS NOT NULL THEN account.name ELSE merchant.name AS account.name
Nick
CASE WHEN account.name IS NOT NULL THEN account.name ELSE merchant.name AS account.name
стейджа $project в агрегации и $cond для вычисления значения поля https://docs.mongodb.com/manual/reference/operator/aggregation/cond/
Wi
всем привет, насколько mongoDB подойдет для онлайн игры?
Serhii
насколько захочешь)
Wi
имею ввиду, MySql не будет выглядить слишком лучше на фоне монго?
Sergiy
имею ввиду, MySql не будет выглядить слишком лучше на фоне монго?
зависит от того что вы собираетесь хранить. и что читать. навскидку - только рейтинг игроков, если такой будет - будет не очень удобно делать на монге.
Wi
думаю noSql для этого не подойдет
Sergiy
да, это очень быстро и постоянно меняющиеся данные
но, если важно быстрее сделать, запустить - то рейтинг игроков понадобится где-то в конце
Wi
ибо концепт такой там
Sergiy
нет, мне нужен рейтинг игроков с самого начала
так не бывает :) пока нечего рейтинговать - он не нужен :)
Wi
так не бывает :) пока нечего рейтинговать - он не нужен :)
есть такая штука Поход, и там каждый игрок зарабатывает свой опыт, и взависимости его очков он будет в рейтинге внутри этого похода)
Wi
по этому да, бывает
Sergiy
концепт - это понятно. но если вот надо сразу схему такую проектировать - то тогда mysql
Wi
что насчет Postgre?
Sergiy
что насчет Postgre?
хорошая бд. а что?
Wi
вы уже написали эту штуку, Поход?
еще нет, но это будет самое первое)
Sergiy
еще нет, но это будет самое первое)
первым будет - реализация Похода :)
Wi
😂😂 lf
Wi
да
Sergiy
еще нет, но это будет самое первое)
зависит от того что вам надо от БД
Wi
чтобы каждый игрок в походе мог видеть актуальные данные ежесекундно
Sergiy
mysql прост, голову меньше грузит, админится легко, читает быстро
Wi
и сам менять эти данные
Sergiy
но если надо интенсивная энтерпрайз запись, с локами, то лучше postgres на mysql придется больше потрудиться, для такого - проектирование плюс реализация
Wi
спасибо)
Sergiy
и сам менять эти данные
это непонятно. что значит сам менять :) это ж - рейтинг, по итогу каких-то действий - пользователей, а не его одного посекундно... без какого-то кеширования вряд ли получится
Sergiy
но, зависит от нагрузки, ессно. и от алгоритма расчетов опыта-рейтинга
Wi
короче это все понятно, спасибо за ответы
Wi
)
Wi
я пробовал подобное на noSql делать поулчается довольно плохо)
Sergiy
короче это все понятно, спасибо за ответы
просто у меня текущий проект - игровой. и многоуровневая система расчетов, и рейтингов несколько видов есть, а не только игроков. монгу бы конечно не брал бы для такого случая но - все от игры зависит, и от сложности-взаимозависимости этих расчетов.
Sergiy
успехов 👍
да как бы работает уже пару лет :)
Konstantin
всем привет! срочно нужна помощь.
Konstantin
вылезла такая херня, хотя бд была запаролена
Konstantin
как можно восстановить?(
Konstantin
вылезла такая херня, хотя бд была запаролена
All your data is a backed up. You must pay 0.02 BTC to 1Lnn7TEcDn4GHBSMNki62Fi3Jjs7dggoX8 48 hours for recover it. After 48 hours expiration we will leaked and exposed all your data. In case of refusal to pay, we will contact the General Data Protection Regulation, GDPR and notify them that you store user data in an open form and is not safe. Under the rules of the law, you face a heavy fine or arrest and your base dump will be dropped from our server! You can buy bitcoin here, does not take much time to buy https://localbitcoins.com or https://buy.moonpay.io/ After paying write to me in the mail with your DB IP: recmydb@mailnesia.com and you will receive a link to download your database dump. вот такой текст там написали
yopp
как можно восстановить?(
к сожалению, с большой долей вероятности — никак. все эти вымогатели на самом деле не делают резервных копий
✙ Nikita
вылезла такая херня, хотя бд была запаролена
вот это номер, я такого еще не видел
Konstantin
вот это номер, я такого еще не видел
да оно давно есть. они обычно без пароля бд ломали и кидали такой текст
Konstantin
мб они пароль сдампили
Sergiy
даже на mysql такое видел - на тестовом оставили открытым наружу порт, и пароль был слабенький.
Р
Парни, а есть какя то клосльная разница между установкой mongobd на локал, и просто монгодб на оффицальншм сайте, то есть бд которая уже на хосте
Р
😢
Nick
Парни, а есть какя то клосльная разница между установкой mongobd на локал, и просто монгодб на оффицальншм сайте, то есть бд которая уже на хосте
Если говорить про чистую монгу, то кроме поддержки нету. Ничего не мешает при разработке использовать локальную, а пром посадить на хост. Но если говорить про монгу на атласе то там есть еще всякие приколюхи по типу полнотекстового поиска и в этой части уже будет действительно "клосльная" разница)
Данила
Всем привет в бд есть сущность Order с различными атрибутами, хочу эти атрибуты изменять, есть ли в монге механизм который позволят частично обновлять поля в документе. Пример В бд хранится Order { _id: “1234”, Attribute1: “string”, Attribute2: “world”, Attribute3: [ “a”, “b”, “c” ] } Хочу заслать такой объект Order { _id: “1234”, Attribute1: “hello”, Attribute2: “string”, Attribute3: [ “1”, “2”, “3” ] } Здесь важно чтобы атрибуты которые не отправляю не затерлись в целевом объекте в бд, результат после выполнения должен быть таким Order { _id: “1234”, Attribute1: “hello”, Attribute2: “world”, Attribute3: [ “1”, “2”, “3” ] } Надеюсь подскажете, всем спасибо !
Inline ®
Всем добрый вечер у меня есть коллекция users ы ней хранятся документы пользователей как мне каждому пользователю добавить по документу ref5: 0?
Rodion
Всем привет! Ребят, хочу ULID использовать вместо ObjectId для унификации ID. Эта штука UUID-совместима. Не возникнет проблем с этим в монге?
Alexander
а монга тут причем? оо
Nick
Всем привет! Ребят, хочу ULID использовать вместо ObjectId для унификации ID. Эта штука UUID-совместима. Не возникнет проблем с этим в монге?
можно использовать что угодно, только какой смысл, по сули OID тоже самое из себя представляет
Rodion
можно использовать что угодно, только какой смысл, по сули OID тоже самое из себя представляет
ObjectId разве GUID-совместимый? Для унификации в первую очередь. Если вдруг появится необходимость сменить базу или хранить часть данных в другой БД, как-то странно будет хранить в не монге OID.
Nick
ObjectId разве GUID-совместимый? Для унификации в первую очередь. Если вдруг появится необходимость сменить базу или хранить часть данных в другой БД, как-то странно будет хранить в не монге OID.
также как и uuid в виде строки или данных планируется иметь настолько много что будет эффект от использования uuid типа гденить в PG?
nlife
Всем привет кто может помочь написать Rest-Api для приложение на react-nativ ?
Rodion
также как и uuid в виде строки или данных планируется иметь настолько много что будет эффект от использования uuid типа гденить в PG?
Нет, так много данных не планируется. Но у ulid есть ещё одно замечательное свойство - контроль генерации id, которое позволяет свои данные подставить в id, это как раз для меня актуально, т.к. одной из задач будет конвертация id из одного из нестандартизированных форматов в ulid.
Nick
Нет, так много данных не планируется. Но у ulid есть ещё одно замечательное свойство - контроль генерации id, которое позволяет свои данные подставить в id, это как раз для меня актуально, т.к. одной из задач будет конвертация id из одного из нестандартизированных форматов в ulid.
раз уже есть задача конвертации, то действительно стоит отказаться от стандартного типа oid. У монги ограничения только на размер содержимого в поле _id (до1кб) а так хоть объекты вложенные задавайте Посмотрел я этот ulid и у меня вопрос чем он лучше простого использования просто uuid?
Rodion
раз уже есть задача конвертации, то действительно стоит отказаться от стандартного типа oid. У монги ограничения только на размер содержимого в поле _id (до1кб) а так хоть объекты вложенные задавайте Посмотрел я этот ulid и у меня вопрос чем он лучше простого использования просто uuid?
Ну ulid - это "uuid на стероидах", он всегда начинается с таймштампа (как и oid), поэтому он сортируемый и ещё специалисты пишут, что он индексируется оптимальнее по этой же причине. На русском удалось найти только эту статью об uuid v7 (это будет аналогом ulid'a): https://habr.com/ru/post/572700/
Nick
Ну ulid - это "uuid на стероидах", он всегда начинается с таймштампа (как и oid), поэтому он сортируемый и ещё специалисты пишут, что он индексируется оптимальнее по этой же причине. На русском удалось найти только эту статью об uuid v7 (это будет аналогом ulid'a): https://habr.com/ru/post/572700/
ну главное не забывать во всей системе синкать время и закладываться что события с разницей в пару десятков мс могли происходить в другом порядке на разных системах (особенно если у нас чтото крутится на винде и где таймер грубо округляет)
Oleksii
Всем привет, реально сделать в монге автоинкремент(1, 2, 3..) параллельно с дефолтным _id?
Nick
Всем привет, реально сделать в монге автоинкремент(1, 2, 3..) параллельно с дефолтным _id?
реально, но нужно ли? расскажите в чем бизнес задача поулчить именно инкременты
Oleksii
а зачем?
так поставлена задача
Oleksii
а зачем?
я видел разные способы решения моей проблемы, по типу дописи счетчика, но может есть другой метод?
Sergiy
Всем привет, реально сделать в монге автоинкремент(1, 2, 3..) параллельно с дефолтным _id?
https://stackoverflow.com/questions/8384029/auto-increment-in-mongodb-to-store-sequence-of-unique-user-id
Nick
так поставлена задача
мы же в современном мире, задача не берется в работу без оценки ее адекватности и реализуемости исполнителем. Если кто-то в бизнес требах явно указал что нужны автоинкременты, но не указал причину, то это попытка указать решение, а не поставить задачу. Сосбтвенно начните с выяснения зачем реально нужен автоинкремент и почему не достаточно просто набор символов указывать в качестве id? И напомните что перебором можно будет угнать всю информацию по юзерам в такой системе
Sergiy
а, еще лучше нагуглил https://data-flair.training/blogs/mongodb-auto-increment-sequence/
Sergiy
обычно это не нужно
обычно - нужно
Nick
обычно - нужно
приведите пример
Sergiy