@MongoDBRussian

Страница 303 из 342
Dmitrii
12.09.2018
06:08:47
на крайняк строку посто используй

Nick
12.09.2018
07:21:14
важна сама дата
Если у вас есть нпобходимость выбирать искючительно по равна ли она текущей дате, то проще переводить в текст и его хранить. Если нужно будет выбирать например все др за неделю, то хранить время в utc с указанием нулевых часов минут секунд

Nick
12.09.2018
07:24:03
В монге времена не имеют таймзоны, поэтому да в utc

Google
M
12.09.2018
07:51:41
ребята а покакой причине после падения primary , secondary не становится primary ? может ктото сталкивался ?

Artem
12.09.2018
07:53:43
конфигурация репликасета какая?

Alex
12.09.2018
07:54:02
Нет кворума?

Artem
12.09.2018
07:54:24
если secondary остается в одиночестве, тогда ой)

Vijay
12.09.2018
09:33:26
Big Data Security: Top 5 Key Solutions https://tinyurl.com/y9erg67s

invzbl3
12.09.2018
09:37:28
Ребята, объясните, пожалуйста по Java driver-у. У меня есть метод в который я добавляю каждый новый документ* в бд, используя insertOne() + обычную коллекцию. То есть на выходе у меня в бд появляется несколько документов. https://ghostbin.com/paste/wdjm4 Впервые решил попробовать capped collection и возникла проблема, что стал добавляться только 1 документ и всё. Не пойму в чем разница в синтаксисе, если с обычной я нормально могу добавить каждый из документов, а тут только 1.

AstraSerg
12.09.2018
09:38:23
invzbl3
12.09.2018
09:41:44
а размер коллекции какой указывали?
указывал в байтах 536870912 в моем случае

также указал кол-во фиксированное, которое хочу

AstraSerg
12.09.2018
09:42:54
db.collection.isCapped() подтверждает что cappable?

invzbl3
12.09.2018
09:44:50
db.collection.isCapped() подтверждает что cappable?
прописал database.createCollection("capped_collection", new CreateCollectionOptions().capped(true).sizeInBytes(536870912).maxDocuments(5000).autoIndex(true));

Google
invzbl3
12.09.2018
09:44:57
указал, что метод capped(true)

AstraSerg
12.09.2018
09:45:35
указал, что метод capped(true)
да, но хечется подверждение от БД, что что она эти команды приняла

invzbl3
12.09.2018
10:13:54
извините но не понятно, по вашему коду у вас итак должен добавиться только один документ
по коду: если я закомментирую создание урезанной коллекции, то создается обычная и в неё добавляются документы по очереди, вызывающиеся методом. То есть каждый документ добавляется методом insertOne().

Nick
12.09.2018
10:14:40
т.е. метод feedAdd вызывается несолько раз с разными параметрами?

invzbl3
12.09.2018
10:14:46
По тому же принципу пробую с урезанной, но добавится только первый и программа зависает на строчках database.createCollection("capped_rss_feed", new CreateCollectionOptions().capped(true).sizeInBytes(536870912).maxDocuments(5000).autoIndex(true));

Nick
12.09.2018
10:15:08
так сделайте не создание

invzbl3
12.09.2018
10:15:11
Nick
12.09.2018
10:15:26
точнее сделайте проверку наличия коллекции

invzbl3
12.09.2018
10:15:31
разные значения полей*

Nick
12.09.2018
10:15:32
оно же вам не пересоздаст

invzbl3
12.09.2018
10:19:48
разные значения полей*
хорошо, попробую, спасибо

database.createCollection("capped_rss_feed", new CreateCollectionOptions().capped(true).sizeInBytes(536870912).maxDocuments(5000).autoIndex(true)); то есть я Вас правильно понимаю, мне нужно обернуть создание в if, который будет проверку делать на существующую коллекцию?

Nick
12.09.2018
10:22:04
да

и хорошо бы делать это в момент старта приложения

а не в методе где должна производитсья вставка

дополнительно вижу у вас mongoClient.close() сразу после использования - так делать плохо если запросы чаще чем раз в минуту

Google
Nick
12.09.2018
10:25:06
еще рекомендация, у вас идет поиск по всем полям и в полях я вижу поле img, в котором наверняка будет картинка, а монгда будет пытать сравнивать ее, это тоже не исть гуд. если связки title-url-price недостаточно, то лучше немного изменить данные, но не искать по большому изображению

это касается find, при вставке это поле должно статься

ссылка та же что и была выше

Artyom
12.09.2018
10:50:32
ребят, подскажите, пожалуйста. В монге можно искать полигоны которые находятся внутри какой-то области, например, на 80% и выше?

Nick
12.09.2018
10:56:23
А можно пример, а то непонятна задачп

Anton
12.09.2018
11:51:49
Привет всем, кто-нибудь сталкивался с такой проблеиой и как ее можно решить deployd CLI version 2.0.2 starting deployd Failed to start MongoDB (Make sure 'mongod' are in your $PATH or use dpd --mongod option. Ref: http://docs.deployd.com/docs/basics/cli.html) прописывал через dpd --mongod и через PATH

invzbl3
12.09.2018
13:43:07
дополнительно вижу у вас mongoClient.close() сразу после использования - так делать плохо если запросы чаще чем раз в минуту
Спасибо за рекомендацию. Тогда мне просто убрать mongoClient.close() в if else, верно? То есть его закрывать не нужно в таком случае вообще?

Nick
12.09.2018
13:44:04
да, close() нужно делать перед закрытием приложения

а не после каждого чиха

invzbl3
12.09.2018
13:58:51
да, close() нужно делать перед закрытием приложения
спасибо вам огромное за проверку)

у меня получилось наконец

проверил на добавления документа с указанием размера, теперь все прекрасно заменяется

и документы заполняются

AstraSerg
12.09.2018
13:59:36
вот и отлично

Nick
12.09.2018
13:59:42
киньте как сейчас это выглядит

invzbl3
12.09.2018
14:02:14
пока так

я протестировал на 1 документе

все прекрасно

у меня добавляется 1 документ, потом его заменяет другой, т.к. размер указан не больше 327 байт

Google
invzbl3
12.09.2018
14:04:35
теперь можно указывать любой фиксированный размер и любое кол-во документов по такому же принципу

AstraSerg
12.09.2018
14:04:58
> 327 байт Если вы про параметр size, то это бессмысленно, минимум 4 килобайта: If the size field is less than or equal to 4096, then the collection will have a cap of 4096 bytes. Otherwise, MongoDB will raise the provided size to make it an integer multiple of 256. https://docs.mongodb.com/manual/core/capped-collections/

invzbl3
12.09.2018
14:05:39
столько раз, сколько вставилось новых документов вместо этого

The size argument is always required, even when you specify max number of documents. MongoDB will remove older documents if a collection reaches the maximum size limit before it reaches the maximum document count.

AstraSerg
12.09.2018
14:06:35
AstraSerg
12.09.2018
14:09:13
Цитата не опровергает предположение, что если количесвто превысит порог, то документы будут ротироваться

Nick
12.09.2018
14:11:23
верно, но у меня проверка на 327 байтов прошла и документ заменился
вы очень странно тестируете, не тестирйте на одном докумете, у вас же их не будет всегда один. тестируйте как миниум на сотне, а лучше на тысяче

https://ghostbin.com/paste/d9xyv
глянул, комментарии практически те же: уберите проверку и создание коллекции куданибудь где происходит инициализация клиента монги. помимо этого уберите совсем mongoClient.close(), вот прям уберите. Когда наткнетесь на какуюто проблему уже будет знать куда его вкорячивать, сейчас это потенциальная бомба, учитывая ваш подход к тестированию

а в поле img находится base64 картинка или название ее?

invzbl3
12.09.2018
17:55:18
а в поле img находится base64 картинка или название ее?
в поле img у меня записывается обычная ссылка на картинку типа String

Nick
12.09.2018
18:00:06
Тогда думаю не критично

Иван
13.09.2018
08:13:53
Хеллоу) такой вопросик) если у меня монга забинджена на локалхост (127.0.0.1) на неё в любом случае не смогут попасть из-вне?? или лучше еще и пассворд поставить??? потому что на самом серваке есть логин\пасс просто была трабла, что монга дропалась непонятно почему, тут говорили что её могут дропать, если она смотрит в мир без пароля)

Иван
13.09.2018
08:40:32
Тоесть в аутентификации есть смысл только когда она забинжена на "мир"(0.0.0.0) ?)

Google
AstraSerg
13.09.2018
08:41:54
С дргой стороны, включить авторизацию никогда не плохо. На случай, если вы захотите выставить таки её в интернет. Потому что потом в работающем проекте включить авторизацию без давнтайма не получится.

а кроме этого авторизация полезна для разделения прав между скриптами

Иван
13.09.2018
08:43:55
ага) понял , спасибо большое) доп вопросик) из-за чего еще может дропаться база?, кробе злобных скриптов-хакеров))

Иван
13.09.2018
08:45:27
злобных криворуких разработчиков
? ага, это по моей части)

aspirin
13.09.2018
08:45:30
настройте логирование и ждите)

AstraSerg
13.09.2018
08:45:44
ага) понял , спасибо большое) доп вопросик) из-за чего еще может дропаться база?, кробе злобных скриптов-хакеров))
не могу сказать. Я бы поставил скорее на ошибки по неопытности, но не исключено, что и хакеры конечно. Были ли это злобные хакеры, можете узнать в логах

Страница 303 из 342