Чтобы добавлять сообщения и комментарии, .

@Shura:
Shura

Вод думаю над структурой базы.
Пост, например может выглядеть как-то так:
```
{
tags: ["tag1", "tag2", "tag3"],
track: trackid,
title: "Название",
date: 1262333829,
author: "Иван Иванов",
text: "Тут сам текст поста в html"
}
```
в track можно и сам трек хранить в geojson, но я решил, что leaflet трек наверное будет отдельным запросом дёргать, поэтому его лучше отдельно положить.
Вот что я не решил, так это индексы, не понятно, по какому полю будет идентифицироваться пост. Вроде поле времени для этого подходит, но с другой стороны не соображу как потом сделать паджинацию для общей ленты. Пока оставлю вопрос открытым, в случае чего — добавлю какое нибудь поле с автоинкрементом, в монге с ним не всё так просто, но можно изловчиться.

А еще вопрос с фотками. Хранить отдельными файлами или в базе? Склоняюсь к базе.

@Shizokl:
Shizokl

MongoDB настолько суровая база, что метод toJson/printjson возвращает невалидный json. Так победим!

@goodic:
goodic

А тут кто-нибудь с репликацие бд в монго заморачивался? Там можно как в мускуле предварительно закинуть в реплику копию базы как в MySQL? или только инициация на пустой реплике и ждать две недели пока реплика выйдет из состояния STARTUP2/RECOVERING?

@USeTi:
USeTi

Это просто какая то пирдуха... Приспичило программу написанную на плюсах подключить к монге. Не на каком то новомодном пииитоне, а на обыкновенных плюсах. Ктож думал что там столько костылей будет в простом (казалось бы) деле подключения драйвера... НЕНАВИСТЬ,НЕНАВИСТЬ

@goodic:
goodic

а что, db.update в $set не умеет $concat? А вот если мне к уже имеющимуся (string) надо инфу добавить, как тогда?

@goodic:
goodic

а кто какими гуями пользуется для работы с mongodb? Желательно с вариантом работы из-под Windows

@nib952051:
nib952051

Жизнь это любовь и боль. По мотивам #2637323

@green:
green

Раз уж тут так много говноедов, порекомендуйте аналог SQLyog только для монги. Делать запросы и смотреть что там унутре.

@ufm:
ufm

или я плохо курил доку, или в mongo нельзя сделать $orderby без учета регистра. Это-ж пц.

@omnivore:
omnivore

robomongo.org — удобный десктопный кроссплатформенный GUI для mongodb

@gelin:
gelin

Вот почему индексы рядом с данными в Монге хранятся. Чтобы обращение к индексу с некоторой высокой вероятностью загрузило в память и страницу с данными.

@neFormal:
neFormal

Поймал странный косяк. если сделать `{'$push': {path: {'$each': my_array}}}`, то в базу в итоге запишется в качестве значения: {'$each': my_array}. Не поддерживается $each. Благо есть $pushAll

@gelin:
gelin

ssh -f my.remote.host -L 27017:localhost:27017 -NЗапишу сюда, чтобы не забыть.

@gelin:
gelin

Тихо и незаметно вышла Монга 2.4.

@Marchael:
Marchael

Опа, я и не заметил как сертификаты приехали.

m101 moikrug.ru
m102 moikrug.ru

@chemikadze:
chemikadze

MONGODB ОЧИНЬ БЫСТРЫЙ ПОЭТАМУ СХЕМА НЕ НУЖНА ВЕДЬ ОТ НИЕ ТОРМОЗА А ЕСЛИ НОДЕЖЕЕС ИСПОЛЬЗАВАТЬ ТО В БАЗЕ И В ПРОГРАММЕ АДИН ФОРМАТ БУДИТ

@gelin:
gelin

Mongo Text Search looks simple. But it's really good start.
blog.codecentric.de

BTW, it looks like using of multiple databases for different purposes in the same project becomes a standard. So, do we need full text search in Mongo while we already have Solr?

@Marchael:
Marchael

Ну почему я такой лузер :(
M101 MongoDB for Delelopers — 90%
M102 MongoDB for DBAs — 96%

@Marchael:
Marchael

Смысла проходить эти курсы я уже больше не вижу. Решение домашек тривиально(либо 3-4 строчки на питоне, либо ответ находится в самом коде и его можно копипастнуть). Но лекции я все же слушать буду, так как там достаточно много интересных вещей, как касаемо базового синтаксиса запросов, так и описания проектировки дизайна коллекций и юз кейсов.

@Marchael:
Marchael

HINT: лучше сначала делать домашки, а потом начинать читать лекции.

@Marchael:
Marchael

Блин, ну ладно бы еще они сделали алгоритм, который собирает validation key по ходу всех проверок. Или бы написали алогритм по-хитрому пытался обфусцирующий ключ. Могли бы на худой конец просто байткод дать.

@Marchael:
Marchael

Защита алгоритма проверки домашки 2.3 это просто ололо.

@Marchael:
Marchael

В общем на второй неделе у меня сложилось мнение, что курсы еще сыроваты.

Ответы в викторинах судя по всему парсятся регекспами(а там вообще говоря ответы как правило на каком-нибудь языке программирования).
Пару дней назад увидел, что вроде они таки начали их заганять в интерпретатор, но вместо обычного "answer incorrect" там порой такое выходит %(
И да, туда можно отправлять html код, который потом выводится пользователю(с точки зрения безопасности ниче страшного, но выглядит как-то несерьезно).
Еще они чего-то накосячили с проверкой домашек и как результат, тред полный страданий испытуемых невовремя сдавших домашки education.10gen.com

@gelin:
gelin

Документация:
sh.addShard( "sfo30.example.net" )
MongoDB will discover all other members of the replica set.
Реальность:
sh.addShard( "primary.shard1.mongo:27201" )
"errmsg" : "host is part of set: shard1 use replica set url format <setname>/<server1>,<server2>,...."

Ненавижу такие моменты.

@Marchael:
Marchael

Первая домашка делается отсилы минут за 5-10. И содержит двусмысленную формулировку в одном из вопросов. Но вообще все лекции за первую неделю(включая викторины после роликов) реально осилить часа за 2-3 с перерывом на обед.

@Marchael:
Marchael

Ну курсы они вроде запустили.
Но c задачами для питона у них вышел косяк.
В задаче, где надо составить словарь, ответы:
colors = {"sky": "blue", "sea": "blue", "earth": "brown"}
colors = dict(sky="blue", sea="blue", earth="brown")

Помечаются как "Incorrect"

@Marchael:
Marchael

Курсы для разработчиков уже налались? education.10gen.com лежит.

@freefd:
freefd

1. You may update the existing documents in the collection. However, the documents must not grow in size. If they do, the update will fail.
2. The database does not allow deleting documents from a capped collection.

А я уже было обрадовался. 80 миллионов документов и ни одному из я не могу добавить хотя бы одно поле :(

@azaliya:
azaliya

Помогите решить такую проблему: есть записи данных пользователей в базе mongo сорта (_id, username, fullname, password, email). Username и password — обязательные поля, это значит что в базе они будут обязательно заполнены. Но при этом fullname и email могут быть пустыми (т.е. в базе в конкретных записях их может не быть). Есть форма редактирования такого пользователя. На этой форме сразу заполнено поле username (оно берется текущее из базы), и, если они есть в базе, поля fullname и email. На этой форме пользователь может поменять значение любого(!) поля. Поле password должно остаться пустым, если пользователь не хочет редактировать текущий пароль. Как обновить (обновляю по _id) запись пользователя в базе таким образом, чтобы поменялись (добавились в базу) только заполненные поля, а нетронутые остались на месте (например, пароль остался прежним, или поля email у этого пользователя пустое). Поле username уникально в базе.

@Yurtaev:
Yurtaev

I just had a chat with a friend we runs a large scale customer data solution in Australia. They have used Mongol DB in a production server, and its been really painful. They said they have had a lot of problems with it. Ill be getting the contact number for the tech guys, ill give him a call and see whats going wrong.

Are you confident with Mongol DB?
Ну вот почему так обламывают кайф! Что дать ему почитать? А то после недавних вбросов в гугле один негатив последний ловится… Да были проблемы раньше, но сейчас всё отлично, при том что у нас не супер-пупер крутой проект.

@Yurtaev:
Yurtaev

Какая щас самая кошерная питоновская библиотека для монги? Щупал очень давно mongoengine & mongokit, лидера не увидел, как дела сейчас?

@Equidamoid:
Equidamoid

OperationFailure: database error: can't map file memory — mongo requires 64 bit build for larger datasetsЧем побороть? 64бита не светит никак.

@kb:
kb

А ведь BSON по сути от JSON отличается только тем, что дополнительно указывается размер документа/элемента и т.п. То есть это вам не XML, тут пропустить не интересующий вас кусок проще простого.

Собираюсь для собственного развития написать streaming-парсер.

@ComradeDOS:
ComradeDOS

Пришлось отказаться от mongokit по причине его неадекватности. Перешел на использование mongoengine. Вполне доволен. ORM мимикрирует под Django ORM.

@Ts:
Ts

Посоны, есть данные вида:
var1=herp
var2=derp
var3=svar1:hurr svar2:durr svar3:foo
var4=bar
Как их экспортнуть в json без всяких анальных регекспов?

@demiazz:
demiazz

Use pymongo? Don't let this auth bug get you. Remember, non-safe inserts will fail silently. cot.ag #mongodb

@Justis:
Justis

жуйк, кто-нибудь ковырял связку mongoid + extjs? интересует генерация вьюшек с учётом кастомного набора полей (dynamic fields) в модели.

@kb:
kb

О, кажется mongoengine потихоньку ожил github.com

@demiazz:
demiazz

наверное у меня руки кривые, но что то не то. делал документы из консоли RoR. MongoID показывает сохранил. Захожу в консоль Mongo — нет ничего. Перегрузил. Пошел прогулялся. Сейчас выдало штук 15... что то странное. не поставить ли мне ванильную монгу не из репов >_>

@demiazz:
demiazz

А в MongoKit есть возможность делать запросы по полям встроенных документов?