yopp
А как во всяких постгресах решены проблемы с поддержкой различных языков?
Gor
вообщем надо найти еще 10ток уникальных случаев с fts на монге чтоб реальные случаи разобрать и максимально приблизится к real usage case
Gor
базу бы реальную с шардингами
Gor
на 100 лямов
yopp
Не в лямах дело, а в разнообразии кейсов
Gor
yopp
RapidCodeLab
в постгрессе достаточно быстро работает на rum индексах
Gor
еще одно странное решение - это stop слова которые захардкодены
yopp
Gor
А там как?
через префикс ключа и на уровне токенгенератора. при этом есть проблема что новые stop слова не могут релизнуть так как это поломает совместимость на апгрейде реплик
Gor
щя гляну словарь - файл по сути
Gor
стоп слов
Gor
или ты о чем другом?
RapidCodeLab
https://github.com/ONLYOFFICE/dictionaries/blob/master/ru_RU/ru_RU.aff пример на русском
Gor
RapidCodeLab
https://raw.githubusercontent.com/ONLYOFFICE/dictionaries/master/ru_RU/ru_RU.dic
Gor
а в файле
а
без
более
больше
будет
будто
бы
...
RapidCodeLab
ispell в посгресе
Gor
используется только в токенгенераторе при генерации индекса, при анализа query иии!!!! это вообще юмор - при сравнении текста и query для НЕ фраз!
Gor
тоесть сравнивают не слово что искалось, а найденный текст токенизируется и проверяется или токен слова что искался есть ли в токенах текста что нашли
Gor
это только для однослово терминов
Gor
в индекс по хорошему сохранять позицию слова при индексации. тогда не надо его искать по всему тексту для точного сравнения. вот это полюбому надо делать
Gor
это капитально ускорило бы поиск на точное сравнение
Gor
Gor
но походу без позиции, но надо перепроверить. я не уверен на счет позиции кстати.
Gor
я офф сейчас. надо по домашним делам отойти. потом как малой ляжет, закатаю rpm и архив сделаю. соберу на коленке сайт и можно будет скачать потестить или фидбек оставить - собирать user cases вообщем
RapidCodeLab
я точно не скажу как это работает, т.к. как пользователь это юзал, но чем ближе искомые слова к началу текста, тем выше резульат был
Gor
еще в прод выкачу а то там жесть на 40с для поиска 8 записей по keywords
Anonymous
Есть ли в монге возможность добавлять в "конец поля", типа append для массива?
Ilya
https://docs.mongodb.com/manual/reference/operator/update/push/ простой пуш вроде и так в конец вставляет
Anonymous
всем привет!
господа, кто-нибудь с https://github.com/mongodb/amboy имел дело?
мне нужно реализовать remote queue, чтобы несколько процессов на разных машинах могли туда писать задачи параллельно и читать оттуда так, чтобы одна задача гарантированно попадала одному обработчику. причем если задачу не удалось выполнить, нужно иметь возможность вернуть её в очередь (или выкинуть, если она зафейлилась более N раз).
и желательно чтобы монгу шардировать можно было при такой схеме.
подскажите, amboy - это то, что мне нужно? очень мало примеров его использования, к сожалению :(
Gor
@dd_bb https://github.com/mongodbcodes/mongo/releases/tag/r3.6.11
Denys
подскажите обратно действие unwind
Denys
нашел, group, спасибо
yopp
yopp
а
Gor
за последние 8 часов как в прод выкатил, норм бегает.
Gleb
Привет. Подскажите, есть массив айдишников (answerId). Нужно пройтись по коллекции и каждый документ удалить по этому свойству.
Gleb
answersIds.forEach(id => deleteOne({ answerId: id }) не лучшее решение, я так понимаю
Ivan
deleteMany({ answerId: { $in: answersIds } })
Gleb
new
возможно ли в одном приложении использовать данные с двух бд разного типа, одновременно? mongo и mysql?
yopp
Sardor
Ребят, при чем выходит TypeError: connect only accepts a callback ? Пишу колбэк и так, как всегда, но ругается. Код: https://gist.github.com/Khuzha/d455fb99845498cea0f1b0103c4fc9ac
CherryTea
CherryTea
3 аргумента принимающий
Sardor
А че это у вас за конект такой
а как еще можно?:) всегда так писал, вот пример в опен сурсе рабочий: https://github.com/Khuzha/refbot/blob/master/index.js
Sardor
в этом и вся соль, что всегда работал точно такой код, а тут бац, и магия
CherryTea
Хз, я не гуру но у меня конект 2 аргумента принимает и второй это колбек
CherryTea
Вот как тут http://mongodb.github.io/node-mongodb-native/3.0/tutorials/connect/
Sardor
CherryTea
Чет было такое
Sardor
Sardor
пробую с двумя аргументами — тоже самое(
CherryTea
А это точно в этом месте падает?
CherryTea
Дебагер киньте перейдите в коннект, посмотрите что там ваш конект ждет
Sardor
Gor
@dd_bb накидал на коленках сайт - https://mongodb.codes. щя буду сидеть собирать баглист из jira
Anonymous
Привет. Подскажите, в монгусе при запросе find({}) и последующей отправкой (то есть закадровым вызовом toJSON) можно как-то включить флаг virtuals : true ? Или только руками мапнуть результат поиска с toJSON({virtuals: true}) ?
> Это можно сделать с помощью schema.set("toJSON", {virtuals: true})
А теперь мне нужно обьяснение: в монгусе можно передать таким образом параметр virtuals: true и getters: true, и то , и то позволяют моему виртуальному полю сериализоваться, но ещё в обоих случаях прицепляется монгусовский id, который типа строковая форма ObjectID документа, как его убрать?
> строковый id отключается в параметрах схемы new Schema({ schema here }, {id: false})
Хочу чтоб монгус при вставке или обновлении документа сортировал поле-массив обьектов по значению одного из полей, как можно это сделать?
Evgeny
@dd_bb
Игорь
WARNING: You are running on a NUMA machine.
Кто нибудь запускал в контейнере монго? как этот варнинг исправить там?
Serhii
Ребята, есть к примеру массив айдишников [1, 2, 3], как создать 3 новых сущности в бд одним запросом,
`
{
_id: 1,
some: sd
}
{
_id: 2
some: as
}
{
_id: 3
}
Ivan
insertMany([{ _id: 1 }, { _id: 2, some: 'as' }, { _id: 3 }])
Serhii
Ivan количество id может быть n
yopp
Ivan
Serhii
@dd_bb создавать отдельными запросами это единственное возможное решение? Может можно какую-то хитрую квери написать
yopp
не нужно писать ничего хитрого
yopp
yopp
он создаёт больше пробелем, и ничего не оптимизирует
yopp
разница только в сетевом трафике
Ivan
ordered: true и он будет делать запрос друг за другом
yopp
yopp
ordered: true это для bulkwrite