Size: a a a

Node.js — русскоговорящее сообщество

2021 January 21

N

Nikita in Node.js — русскоговорящее сообщество
alone kot
Всем привет!

Есть ли для связи node + mongoDB полноценная ORM? А не ODM как монгус?
а чем монгус не орм?
источник

M

Mozart in Node.js — русскоговорящее сообщество
представь что идет запрос первый и второй, и каким то образом мы сохранили количество в перемонной а дальше пустили асинхронно и там была количество 3000, и придет второй запрос когда первый не успел и он увидит что там тоже 3000 и тоже сделает отписку но первый не успевает, в конечном итоге оба берут и делают set 2999
источник

M

MaKarastY in Node.js — русскоговорящее сообщество
Всем привет ребята, столкнулся с ошибкой:
function s(){for (let t=1;t<i1l+1;t++) {
                           ^
ReferenceError: Cannot access 'i1l' before initialization
помогите починить...
источник

M

Mozart in Node.js — русскоговорящее сообщество
ситуация редкая но если есть хорошое решение буду рад знать решение
источник

N

Nikita in Node.js — русскоговорящее сообщество
Mozart
представь что идет запрос первый и второй, и каким то образом мы сохранили количество в перемонной а дальше пустили асинхронно и там была количество 3000, и придет второй запрос когда первый не успел и он увидит что там тоже 3000 и тоже сделает отписку но первый не успевает, в конечном итоге оба берут и делают set 2999
транзакции обычно решают такое, но эксперты по sql и хайлоуду здесь наверно лучше подскажут
источник

ak

alone kot in Node.js — русскоговорящее сообщество
Nikita
а чем монгус не орм?
ODM по определению..
источник

M

Mozart in Node.js — русскоговорящее сообщество
Nikita
транзакции обычно решают такое, но эксперты по sql и хайлоуду здесь наверно лучше подскажут
кстати транзакции уже работают по очереди верно ?
источник

ak

alone kot in Node.js — русскоговорящее сообщество
Nikita
а чем монгус не орм?
по сути обертка над запросами
источник

M

Mozart in Node.js — русскоговорящее сообщество
не будет того что две транзакции паралельно верно ?
источник

ЕВ

Евгений Войтенко... in Node.js — русскоговорящее сообщество
Mozart
я сделала систему подписок, one To many (User - Follow) так вот есть запрос который должен искать юзера с наибольшым количество подписок, так вот как сделать правильно составить запрос, я думаю создвть свойство внутри Entiy но боюсь что из за болшьго количество запросов, запросы пойдут в хаусном порядке и в результате будут не верные данные
я не знаю как в orm но в постгресе я бы сделал так:
1) вынес подписки в отдельную таблицу и сохранял бы их там.
2) у подписки внешний ключ USER_ID
3) при запросе считал бы все подписки по USER_ID
источник

N

Nikita in Node.js — русскоговорящее сообщество
alone kot
ODM по определению..
не так вопрос задал, что нужно от орм для монги?
источник

M

Mozart in Node.js — русскоговорящее сообщество
Евгений Войтенко
я не знаю как в orm но в постгресе я бы сделал так:
1) вынес подписки в отдельную таблицу и сохранял бы их там.
2) у подписки внешний ключ USER_ID
3) при запросе считал бы все подписки по USER_ID
не ну это уже сделано, тут вопрос другой как сортировать юзеров по количеству их подписчиков
источник

N

Nikita in Node.js — русскоговорящее сообщество
Евгений Войтенко
я не знаю как в orm но в постгресе я бы сделал так:
1) вынес подписки в отдельную таблицу и сохранял бы их там.
2) у подписки внешний ключ USER_ID
3) при запросе считал бы все подписки по USER_ID
если нужно вывести в табличке юзеров и возле каждого количество его подписок и его подписчиков, а таких юзеров тысячи, разве это будет эффективно?
источник

N

Nikita in Node.js — русскоговорящее сообщество
разве что читать все подписки и на уровне приложения раскидывать их по юзерам
источник

ЕВ

Евгений Войтенко... in Node.js — русскоговорящее сообщество
Mozart
не ну это уже сделано, тут вопрос другой как сортировать юзеров по количеству их подписчиков
в постреге group by count
источник

M

Mozart in Node.js — русскоговорящее сообщество
Евгений Войтенко
в постреге group by count
оо круто можно узнать по подрообнее, я щас про гуглю  просто сомнение есть какие то, вдруг что то не поняли (ну скорее всего я )
источник

ЕВ

Евгений Войтенко... in Node.js — русскоговорящее сообщество
Mozart
оо круто можно узнать по подрообнее, я щас про гуглю  просто сомнение есть какие то, вдруг что то не поняли (ну скорее всего я )
если я не ошибаюсь select count(id) from subscriptions where user_id = 1 group by count desc
источник

ПА

Павлов Александр... in Node.js — русскоговорящее сообщество
Mozart
представь что идет запрос первый и второй, и каким то образом мы сохранили количество в перемонной а дальше пустили асинхронно и там была количество 3000, и придет второй запрос когда первый не успел и он увидит что там тоже 3000 и тоже сделает отписку но первый не успевает, в конечном итоге оба берут и делают set 2999
тут нужно версионирование применять при обнволениях или атомарные операции со стороны монги, контекста кейса нужнго больше
источник

M

Mozart in Node.js — русскоговорящее сообщество
Павлов Александр
тут нужно версионирование применять при обнволениях или атомарные операции со стороны монги, контекста кейса нужнго больше
тут postgres sql
источник

N

Nikita in Node.js — русскоговорящее сообщество
кстати, вот в хорошей архитектуре, на каком уровне долнжы быть реализованы sql транзакции?
источник