yopp
такие выкрутасы не нужны обычно
Maxim
db.getCollection('users').aggregate({ $match: { "stats.skills.id": { $in: [1, 2, 5 ... ] } } }) Можно ли как-то отсортировать в порядке убывания вхождений?
Maxim
именно элементов из массива
yopp
Добавить projection c $size: “$stats.skill.id” и дальше отсортировать по нему
yopp
А. Вхождений
yopp
Тогда сначала projection c https://docs.mongodb.com/manual/reference/operator/aggregation/setIntersection/#exp._S_setIntersection
yopp
Можно в один прожекшен сразу, если не надо сохранять список пересечению
Maxim
спасибо
yopp
рекомендую убедится что на stats.skills.id есть индекс
SvPupok
всем день добрый
Server
{ getUser(_id: "5a1eda7f88a08417b1beabb1") { _id name tweet { text _id } } }
Server
правда в схеме еще нужно связь настроить, вот курс по теме MongoDB + GraphQL https://www.youtube.com/playlist?list=PLzQWIQOqeUSM51q7ZIqvDQ-Myp58IVPEN
yopp
GraphQL не совсем по теме чята
Anton
под graphql чет не видел нормальных адаптеров, все руками делать надо
Anton
ну да
Server
через них связь с монгой
Server
ну да
mongoose основную нарузку на себя берет
Anton
так я про что говорю. нет нормальных, чтобы построилась сама схема и все мутации, пагинация, прочее по одним например моделькам монгуса
Server
так я про что говорю. нет нормальных, чтобы построилась сама схема и все мутации, пагинация, прочее по одним например моделькам монгуса
нормальность относительна) я после курса, что рекоменовал выше, выдохнул, что REST API для меня прошлое. Для моего проекта хаватает всего вполне хватает.
Андрей
Народ , а.есть ли русскоязычная документация по монге?
Андрей
Задолбался коллеге переводить
yopp
http://www.w3big.com/ru/mongodb/mongodb-create-database.html
вот что этим людям мешало в mongo/docs законтрибьютить :(
Server
вот что этим людям мешало в mongo/docs законтрибьютить :(
что-то ловят там видимо в своих интересах
yopp
Ломтики Существует еще один кластер MongoDB в пределах, нарезка технологии, большое количество данных, чтобы удовлетворить растущий спрос на MongoDB.
yopp
так это гуглтранслейт
yopp
Ломтики нарезка технологии
Андрей
Спс
SvPupok
Народ , а.есть ли русскоязычная документация по монге?
У меня в Гугл книгах есть, но надо попробовать выгрузить в отдельный файл
Server
строки картинок base64 в монге хранить можно?
Server
А смысл?
можно в png хранить? firebase когдв проходил, там только base64
yopp
В bson есть тип Binary же
Николаич
А, ну про firebase я хз. Да хранить можно, вопрос - надо ли? Почему путь к картинке не хранить?
Server
может что не понимаю, я из мобильной разработки и мне нужно фото с устройства не монгу залить)
yopp
Если вы сделаете кеширование через nginx потом, то да. Постоянно таскать картинки из базы так себе идея
Николаич
Не, ну дело хозяйское. А еще один стор это папочка с файлами. По мне норм решение.
Server
Так у вас бэкенда нет, куда файл закинуть?
есть) но я хочу в колекциях все держать
Николаич
по кэшу решение посмотрю, спасибо
Для этого файлы в папке должны лежать
Server
Для этого файлы в папке должны лежать
не любитель я файловых менеджеров)
Николаич
не любитель я файловых менеджеров)
Ну так не пользуйтесь )) при чем тут это?
Server
Ну так не пользуйтесь )) при чем тут это?
=) Мне просто на мобиле делать base64, а это тип String, далее по GraphQL в Mongo. При такой схеме с производительностью на Монге Ок?
Николаич
Ну вы же не миллионом картинок там ворочаете. А к тому моменту, когда монга не будет вывозить, вы набравшись опыта будете хранить их в файлах )))
yopp
Base64 это на 2/3 больше ноликов и единичек
Server
Base64 это на 2/3 больше ноликов и единичек
понял, тогда Binary интересное решение
Server
Base64 это на 2/3 больше ноликов и единичек
я так понял, что в абсолютном все файлы бинарные, а в относительном нет. У меня есть jpg { "url": "file:///Users/x/Library/Developer/CoreSimulator/Devices/BF0FFACC-B049-403D-A27C-048B9BC54636/data/Containers/Data/Application/505DDF55-7C87-40BA-A08D-6E033BDC0724/Documents/images/13CD3880-1D58-4A83-A714-42029C276A7A.jpg" } мне его нужно конвертить или это уже бинарник?
yopp
Это просто путь к файлу
Server
Это просто путь к файлу
это понято) тот jpg, по адресу, нужно конвертить перед отправкой в монгу?
yopp
Если твой драйвер умеет укладывать его как binary то нет
yopp
Можешь для удобства сохранять ещё content type
Bruno
@dd_bb ^
Artem
Подскажите пожалуйста, почему не запускается: root@dedicated:~# mongo MongoDB shell version v3.4.10 connecting to: mongodb://127.0.0.1:27017 2017-12-01T13:59:56.078+0200 W NETWORK [thread1] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: Connection refused 2017-12-01T13:59:56.078+0200 E QUERY [thread1] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed : connect@src/mongo/shell/mongo.js:237:13 @(connect):1:6 exception: connect failed
Artem
root@dedicated:~# mongod 2017-12-01T14:02:39.051+0200 I CONTROL [initandlisten] MongoDB starting : pid=2363 port=27017 dbpath=/data/db 64-bit host=dedicated 2017-12-01T14:02:39.051+0200 I CONTROL [initandlisten] db version v3.4.10 2017-12-01T14:02:39.051+0200 I CONTROL [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9 2017-12-01T14:02:39.051+0200 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1t 3 May 2016 2017-12-01T14:02:39.051+0200 I CONTROL [initandlisten] allocator: tcmalloc 2017-12-01T14:02:39.051+0200 I CONTROL [initandlisten] modules: none 2017-12-01T14:02:39.051+0200 I CONTROL [initandlisten] build environment: 2017-12-01T14:02:39.052+0200 I CONTROL [initandlisten] distmod: debian81 2017-12-01T14:02:39.052+0200 I CONTROL [initandlisten] distarch: x86_64 2017-12-01T14:02:39.052+0200 I CONTROL [initandlisten] target_arch: x86_64 2017-12-01T14:02:39.052+0200 I CONTROL [initandlisten] options: {} 2017-12-01T14:02:39.052+0200 I STORAGE [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating 2017-12-01T14:02:39.052+0200 I NETWORK [initandlisten] shutdown: going to close listening sockets... 2017-12-01T14:02:39.052+0200 I NETWORK [initandlisten] shutdown: going to flush diaglog... 2017-12-01T14:02:39.052+0200 I CONTROL [initandlisten] now exiting 2017-12-01T14:02:39.052+0200 I CONTROL [initandlisten] shutting down with code:100
Timur
directory /data/db not found
Artem
создать вручную?
Nickolay
Или указать другую лиректорию
Artem
создал, теперь висит на этом: root@dedicated:~# mongod 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] MongoDB starting : pid=2642 port=27017 dbpath=/data/db 64-bit host=dedicated 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] db version v3.4.10 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1t 3 May 2016 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] allocator: tcmalloc 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] modules: none 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] build environment: 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] distmod: debian81 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] distarch: x86_64 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] target_arch: x86_64 2017-12-01T14:06:21.875+0200 I CONTROL [initandlisten] options: {} 2017-12-01T14:06:21.890+0200 I STORAGE [initandlisten] 2017-12-01T14:06:21.890+0200 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine 2017-12-01T14:06:21.890+0200 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem 2017-12-01T14:06:21.890+0200 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=469M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0), 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database. 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted. 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended. 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'. 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] ** We suggest setting it to 'never' 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 7783 processes, 65536 files. Number of processes should be at least 32768 : 0.5 times number of files. 2017-12-01T14:06:21.907+0200 I CONTROL [initandlisten] 2017-12-01T14:06:21.911+0200 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data' 2017-12-01T14:06:21.916+0200 I INDEX [initandlisten] build index on: admin.system.version properties: { v: 2, key: { version: 1 }, name: "incompatible_with_version_32", ns: "admin.system.version" } 2017-12-01T14:06:21.916+0200 I INDEX [initandlisten] building index using bulk method; build may temporarily use up to 500 megabytes of RAM 2017-12-01T14:06:21.916+0200 I INDEX [initandlisten] build index done. scanned 0 total records. 0 secs 2017-12-01T14:06:21.916+0200 I COMMAND [initandlisten] setting featureCompatibilityVersion to 3.4 2017-12-01T14:06:21.917+0200 I NETWORK [thread1] waiting for connections on port 27017
SvPupok
попробуй открыть второй терминал и подключиться к порту 27017
SvPupok
коллеги, подскажите плз, имею базу в шардированном кластере, с шардированными коллекциями. я так понял, что в кластере профилирование запросов не работает? и надо его включать на каждом репликасете?
Alexandr
Коллеги, приветствую! Подскажите, как закрыть внешний доступ к монго, поднятой в докер контейнере? Ubuntu 16.04
Alexandr
ufw deny 27017 не сработал 🙁
Slava
ufw deny 27017 не сработал 🙁
а к ней должен кто-то подключаться не с localhost?
Alexandr
нет, но сейчас такая возможность есть
Alexandr
не получается эту вохможность закрыть
Slava
можно запустить контейнер без -p опции, тогда никто не подлючится к монге, это простой путь
Alexandr
даже с локалхоста?)
Alexandr
Сейчас контейнер запускается через docker compose вот таким способом
Alexandr
Slava
даже с локалхоста, можно так же попробвать такой вариант docker run -p 127.0.0.1:27017:27017
Slava
попробуйте убрать директиву ports. Тогда все приложения которые хотят доступа к монге должны запускаться внутри сети network