xLexus
Складские задачи.
xLexus
Остаток товаров на складе.
Evgeny
Я немного опоздал, но подвёз свое мнение. Для этих задач монга не подходит. Используй SQL совместимые, например постгрес)
Andrew
Аминь
V
ребят подскажите стоит 2 ноды + один арбитр при выключении primary ноды secondary стала primary через пару минут (и то только после включении той что была выключена)
pplcf
звучит так, будто арбитр по каким-то причинам был не функционален
pplcf
может банально хост не тот зарезолвился, если подключал его через монгошелл
pplcf
через rs.status видно, что он есть, но хартбит не проходит
pplcf
у меня так было один раз
Konstantin
Подходит, подходит
По каким критериям лучше всего определять schema, какой максимальной вложенности документов желательно достигать?
Avral
Всем привет! Такой вопрос, мне нужно что бы к базу подключался юзер без логина и пароля, но мог ее только читать, и нужен юзер с паролем и логином, что бы он мог писать в базу, можно ли такое реализовать? или нужно для только чтения тоже юзера создавать?
Andrew
Ну скорее всего юзер для чтения нужен будет. Ибо аутентификация либо включена, либо выключена
Hopf
Привет. Кто-нибудь из go, используя mgo подключался к atlas?
yopp
ето nievozmozhno
Игорь
Такой вопрос. У меня в документе есть поле- массив. Значения чисел в этом массиве записаны как double. Как мне изменить их тип на int 32 для всех чисел в этом массиве средствами самой монго?
yopp
Увы, никак
Sergey
Всем доброго дня! Подскажите плиз, python, pymongo. Есть две коллекции, в одну сохраняются товары текущего парсинга (перед парсингом коллекция дропается), во вторую – тоже самое, но там товары накапливаются и появляется дополнительное поле-массив с датами, когда товар был доступен. Индексы в обеих коллекциях по _id и uuid. Для обновления данных во второй коллекции пытаюсь использовать конструкцию: db[collection].update(item, {"$addToSet": {'avl_date': date}}, upsert=True) item вот такого вида: item ={'uuid': '89579073-237f-50bb-a51c-8ba4c93b1edb', 'sku': '311565011', 'outOfStock': True, 'category': 'Toys & Entertainment/Technology & Electricals /Radios', 'brand': 'View Quest', 'price': {'currentPrice': '£65', 'unitPrice': '£65 each'}, 'avl_date': ['2018-07-22', '2018-07-23'], 'name': 'Blue Retro Mini Digital Radio', '_id': ObjectId('5b546efeb859c869112da997')} пробовал с полем _id и без, с полем avl_date и без. Выдает ошибку дубликата ключа по uuid. Работает вот так: db[collection].update({‘uuid’: item[‘uuid’]}, {"$addToSet": {'avl_date': date}}, upsert=True) но тут вопрос, если продукта с таким uuid нет, то он должен вставить документ (как я пробовал это сделать в первом случает), а где его указать в этой конструкции?
Roman
подмогите люди добрые 2018-07-20T08:21:24.872+0300 I STORAGE [initandlisten] 2018-07-20T08:21:24.872+0300 I STORAGE [initandlisten] WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine 2018-07-20T08:21:24.872+0300 I STORAGE [initandlisten] See http://dochub.mongodb.org/core/prodnotes-filesystem 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] WARNING: Access control is not enabled for the database. 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] Read and write access to data and configuration is unrestricted. 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] ** WARNING: You are running in OpenVZ which can cause issues on versions of RHEL older than RHEL6. 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] что он от меня хочет?
Roman
я не могу через консоль добраться к рабочим базам
Roman
на запрос DB отдает только test
Roman
а пишет в админ
AstraSerg
а строку соединения покажите (только пароль скройте)
Roman
MongoDB shell version v3.6.5 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 3.6.5 Server has startup warnings: 2018-07-20T08:21:24.872+0300 I STORAGE [initandlisten] 2018-07-20T08:21:24.872+0300 I STORAGE [initandlisten] WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine 2018-07-20T08:21:24.872+0300 I STORAGE [initandlisten] See http://dochub.mongodb.org/core/prodnotes-filesystem 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] WARNING: Access control is not enabled for the database. 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] Read and write access to data and configuration is unrestricted. 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten] ** WARNING: You are running in OpenVZ which can cause issues on versions of RHEL older than RHEL6. 2018-07-20T08:21:28.006+0300 I CONTROL [initandlisten]
Roman
mongodb://127.0.0.1:27017/admin так подключаюсь
Roman
это тестовый сервер) нет паролей
AstraSerg
mongodb://127.0.0.1:27017 добавте /<название вашей DB>
Roman
когда делаю коннект через пхп там mongodb://127.0.0.1:27017/admin а когда через консоль то на запрос $ db отдает только test
Roman
Iván Vera
Hi guys. Anyone speaks english here?
Roman
на сервере заканчивалось место и монга падала! но потом я почистил левак и она завелась! может чего он отключил когда небыло места и нужно включить?
AstraSerg
когда делаю коннект через пхп там mongodb://127.0.0.1:27017/admin а когда через консоль то на запрос $ db отдает только test
После / должно идти название рабочей БД. Если авторизация проходит через БД admin, то нужно к параметрам добавить &authSource=admin
Iván Vera
Roman
так а как это сделать в консоле?
Iván Vera
I wanted to know which MongoDB should I download
Roman
с сайта все работает
Iván Vera
Because there are different versions of it. Like Atlas/Community Server, etc
Iván Vera
I will use MongoDB for a course
AstraSerg
yopp
Because there are different versions of it. Like Atlas/Community Server, etc
Go with atlas if you fine with using cloud/remote access. If you need offline/local go with Community.
Iván Vera
Perfect
yopp
We have English group: @mongo_db
Bandikoot
так а как это сделать в консоле?
для работы с консолькой почитай про директиву use, например. а также стоит понимать, что бд, с которой работаешь и бд, в которой авторизуешься, могут быть и разными
Roman
Ну да я разобралсч спасибо. Просто в доке было написано что команда дб вернет доступные базы
Roman
И кода он возвращал одну то меня это стопарило
Roman
А он походу возвращал тукущую
Bandikoot
show dbs попробуй
Bandikoot
в общем, https://docs.mongodb.com/manual/reference/mongo-shell/
Roman
Да да там я и нашел ответ при очноедном просмотре
Roman
Спасибо
Sergey
Всем доброго дня! Подскажите плиз, python, pymongo. Есть две коллекции, в одну сохраняются товары текущего парсинга (перед парсингом коллекция дропается), во вторую – тоже самое, но там товары накапливаются и появляется дополнительное поле-массив с датами, когда товар был доступен. Индексы в обеих коллекциях по _id и uuid. Для обновления данных во второй коллекции пытаюсь использовать конструкцию: db[collection].update(item, {"$addToSet": {'avl_date': date}}, upsert=True) item вот такого вида: item ={'uuid': '89579073-237f-50bb-a51c-8ba4c93b1edb', 'sku': '311565011', 'outOfStock': True, 'category': 'Toys & Entertainment/Technology & Electricals /Radios', 'brand': 'View Quest', 'price': {'currentPrice': '£65', 'unitPrice': '£65 each'}, 'avl_date': ['2018-07-22', '2018-07-23'], 'name': 'Blue Retro Mini Digital Radio', '_id': ObjectId('5b546efeb859c869112da997')} пробовал с полем _id и без, с полем avl_date и без. Выдает ошибку дубликата ключа по uuid. Работает вот так: db[collection].update({‘uuid’: item[‘uuid’]}, {"$addToSet": {'avl_date': date}}, upsert=True) но тут вопрос, если продукта с таким uuid нет, то он должен вставить документ (как я пробовал это сделать в первом случает), а где его указать в этой конструкции?
Еще раз поинтересуюсь, вечером как то более оживленно здесь
Constantin
Всем привет! А кто-то уже успел «в бою» испытать транзакции?
Dmitry
в новом релизе добавили
Dmitry
https://www.mongodb.com/press/mongodb-announces-multi-document-acid-transactions-in-release-40
Dmitry
например, очень важная штука для банка
Dmitry
когда нужно одновременно уменьшить баланс у одного аккаунта и увеличить у дрогого, при переводе денег
Dmitry
если одна из операций упадет, вторая тоже должна откатиться, для этого придумали транзакционность, когда несколько запросов пушатся в одной транзакции
Dmitry
но вообще я хз, особо их не юзал :))
Constantin
Всем доброго дня! Подскажите плиз, python, pymongo. Есть две коллекции, в одну сохраняются товары текущего парсинга (перед парсингом коллекция дропается), во вторую – тоже самое, но там товары накапливаются и появляется дополнительное поле-массив с датами, когда товар был доступен. Индексы в обеих коллекциях по _id и uuid. Для обновления данных во второй коллекции пытаюсь использовать конструкцию: db[collection].update(item, {"$addToSet": {'avl_date': date}}, upsert=True) item вот такого вида: item ={'uuid': '89579073-237f-50bb-a51c-8ba4c93b1edb', 'sku': '311565011', 'outOfStock': True, 'category': 'Toys & Entertainment/Technology & Electricals /Radios', 'brand': 'View Quest', 'price': {'currentPrice': '£65', 'unitPrice': '£65 each'}, 'avl_date': ['2018-07-22', '2018-07-23'], 'name': 'Blue Retro Mini Digital Radio', '_id': ObjectId('5b546efeb859c869112da997')} пробовал с полем _id и без, с полем avl_date и без. Выдает ошибку дубликата ключа по uuid. Работает вот так: db[collection].update({‘uuid’: item[‘uuid’]}, {"$addToSet": {'avl_date': date}}, upsert=True) но тут вопрос, если продукта с таким uuid нет, то он должен вставить документ (как я пробовал это сделать в первом случает), а где его указать в этой конструкции?
В секции, где $addToSet добавить нужно $setOnInsert https://docs.mongodb.com/manual/reference/operator/update/setOnInsert/index.html — вот тут есть пример
Max
Привет !
Max
подскажите пожалйста - как можно с существующей MongoDB ну или моделек с монгуза получить красивую DBSchema ? (Это как ЕRD для реляционок, только более общее понятие). Я понимаю что в монге и связей между колекциями как таковых нету, но всё же
Max
пришёл на новый проек, модельки вижу, но трудно собрать раму что к чему
Max
юзаем по идее MongoDB Atlas
Анатолий
мне кажется монгодб это не та бд в которой имеет место быть схема бд... документ он же может быть любой... список коллекций можете получить командами. а вот какие у документов есть поля - это лучше спрашивать у тех кто делал проект до вас, либо смотреть по коду что туда пишется.
Nick
подскажите пожалйста - как можно с существующей MongoDB ну или моделек с монгуза получить красивую DBSchema ? (Это как ЕRD для реляционок, только более общее понятие). Я понимаю что в монге и связей между колекциями как таковых нету, но всё же
В отношении монги такого нельзя получить. Попробуйте найти для вашего орм может что будет, но маловероятно. В общем случае носкл на то и носкл чтобы не иметь схем
Nick
Да и на самом деле диаграммы рисуются людьми при разрабоике не хуже тулов, если в вашем текущем проекте все еще нет описания бд и схем, а сама структура бд уже устоялась и особо не меняется, то совместите приятное с полезным - опишите все и сами разберетесь и спека по базе будет
AstraSerg
пришёл на новый проек, модельки вижу, но трудно собрать раму что к чему
Добрый день. Удобный инструмент для этого Comapss. Покажет какие поля присутствуют в коллекция, во всех ли документах и т.п. Видос: https://youtu.be/XfLeO_LE6ic?t=86 Скачать: https://www.mongodb.com/download-center?jmp=hero#compass