Результаты поиска
Найдено результатов: 18
Шардинг MongoDB под нагрузкой?
Как ведет себя шардинг MongoDB под нагрузкой? Особенно как влияет на загрузку системы их Map/Reduce?
NoSQL — особенности применения
В каком случае оправдано использование таких баз данных как MongoDB, CouchDB, Redis и некоторых других?
Имеет ли смысл ставить их вместо классического mysql, на сайте со слабой нагрузкой?
Используются ли они в связке с mysql, или работают отдельно?
NoSQL
MongoDB
Redis
Документно-ориентированные
базы
CouchDB
275   5   18:11, 21st August, 2020
275   5   18:11, 21st August, 2020
Прочитал, что MongoDB имеет ограничение в 4Мб на документ. Я не ошибся?
Особенно не понятно, если рекомендуется де-нормализовать данные — например, хранить комментарии к комментарию…
comment:{Id:..., Text: ..., comments: []}
Это ведь упрешься в лимит и труба…
Прочитал, что MongoDB имеет ограничение в 4Мб на документ. Я не ошибся?
Особенно не понятно, если рекомендуется де-нормализовать данные — например, хранить комментарии к комментарию…
comment:{Id:..., Text: ..., comments: []}
Это ведь упрешься в лимит и труба…
Mongo и рекламная аналитика
Господа, а имеется ли у кого-то из вас опыт использования Mongo для хранения данных по рекламным показам/кликам и пр.? Я так прикинул, что для этой задачи Монго был бы вполне на своём месте.
Какие могут быть подводные камни?
PHP — как cоединяться с Mongo по требованию (отложенно)?
Модуль для работы с Mongo, входящий в комплекс поставки PHP предоставляет возможность соединяться с сервером не сразу — позволяя выбрать базу и коллекцию без установки соединения. Для этого есть вот такая конструкция:
$mongo = new \Mongo (MONGO_SERVER, array ("connect" => false));
Однако для того, чтобы выполнить любое действие с данными необходимо прежде вызвать $mongo->connect ().
В связи с чем возник вопрос — быть может уже есть готовое решение, некий слой для работы с Mongo наподобие Zend_Db или Rediska, где это уже реализовано?
Соединяться каждый раз — бессмысленно, изобретать велосипед — тоже не хочется, обратился к коллективному разуму :-)
MongoDB хостинг в России уже есть?
Собственно интересует есть ли аналоги mongohq.com и хостинги поддерживающие MongoDB расширения под разные языки?
Вызов сохраненных JavaScript функций в MongoDB из PHP
Имеем функцию сохраненную в db.system.js с именем AutoID
function (n,o) {
x = db.getCollection(n);
while( 1 ) {
var c = x.find({},{id:1}).sort({id:-1}).limit(1);
var i = c.hasNext() ? c.next().id + 1 : 1;
o.id = i;
x.insert(o);
var err = db.getLastErrorObj();
if( err && err.code ) {
if( err.code == 11000 /* dup key */ )
continue;
else
print("unexpected error inserting data: " + tojson(err));
}
break;
}
}
Из консоли все работает замечательно
db.eval("AutoID('Users',{'name':'Tenkoff'})");
А вот как вызвать это чудо в PHP так и не понял, может кто объяснить/показать?
x = db.getCollection(n);
while( 1 ) {
var c = x.find({},{id:1}).sort({id:-1}).limit(1);
var i = c.hasNext() ? c.next().id + 1 : 1;
o.id = i;
x.insert(o);
var err = db.getLastErrorObj();
if( err && err.code ) {
if( err.code == 11000 /* dup key */ )
continue;
else
print("unexpected error inserting data: " + tojson(err));
}
break;
}
}
Стоит ли использовать Mongo?
Приветствую!
В последнее время все чаще слышу упоминания про NoSQL и MongoDB в частности. Тема меня заинтересовала, но вот пока не могу найти интересующей меня информации, поэтому спрошу здесь — наверняка уже многие успели поэкспериментировать, а может и разработать серьезные высоконагруженные приложения в связке с MongoDB.
Заранее предупрежу, если где-то я ошибся в отношении MongoDB — я не специально. Просто я с ней еще даже не пытался работать, а лишь почитывал статьи на Хабре, да те примеры, что лежат на оф.сайте.
Сейчас я занимаюсь разработкой тизерной сети. Задача, на первый взгляд кажущаяся тривиальной, на деле выходит довольно хитровыделанной в плане организации структуры БД. Огромное кол-во связей, множество таблиц-посредников для связей М-М и т.д… Чем меня привлекла идея MongoDB, так это своим принципом построения связей. Вопрос №1:
действительно ли работа с МонгоБД при наличии кучи связей менее затратна в плане ресурсов? Ну, хотя бы на простейшем примере (буду писать на «псевдо SQL») — выборка из 2 таблиц, связанных отношением М-М через промежуточную таблицу:
table sites(
id int primary key auto_increment,
url varchar
)
table categories(
id int primary key auto_increment,
name varchar
)
table sites_categories(
site_id int,
category_id int
)
Задача вывести список сайтов и категорий, в которых он есть:
SELECT * FROM sites
while(SITE = mysql_result...)
{
//отображаем данные сайта
SELECT * FROM categories WHERE id IN (SELECT category_id FROM sites_categories WHERE site_id = SITE)
//в цикле отображаем категории
}
Также меня интересует, можно ли работать одновременно с MySQL и MongoDB? Вернее, насколько это будет правильно? Полностью переносить БД на Монго не хочется, лишь отдельные, особо-хитрые участки, нагрузка на которых выше, чем хочется.
Также читал, что в MongoDB можно беспроблемно хранить файлы — действительно ли это так и что же будет лучше — хранить по-старинке в специальной папке с подкаталогами по именам/ид пользователей, или использовать MongoDB? (допустим, при таком раскладе: пользователей около 1к, у каждого 40-50 небольших картинок. картинки отдаются в кол-ве примерно 100-150 в минуту.
P.S.: прошу прощения за возможные неточности в вопросах, излишнюю или недосказанную информацию о нуждах и текущем положении дел, разработка структур БД — не мое основное достоинство…
Объясните, зачем нужны документо-ориентированные БД (MongoDB)?
Сабж. Вот не пойму я. Приведите пожалуйста побольше практических решений примения. Для Business-сектора, например.
Django + MongoDB?
Собственно вопрос. Как можно заставить Django работать с MongoDB или вообще с noSQL базами данных.
Спасибо
MongoDB и OLAP
Требуется по имеющейся информации о клиентах компании выполнять OLAP обработку данных, строить отчеты, применять различные методы data mining (строить деревья решения, осуществлять кластеризацию и т.д.). Почитал про mongodb — завлекает своей простотой, возможностью map/reduce (думаю это очень облегчит построение всяческих отчетов), масштабируемостью, но так как дела с ней никогда не имел, то спрашиваю совета, стоит ли ее юзать для требуемых задач?
Как сделать OR в MongoDB?
Чтобы выбрать поля по конъюнкции двух условий пишем просто:
db.blabla.find({ field1: value1, field2: value2 })
а как сделать, чтобы запрос был с дизъюнкцией? Чтобы выбирал всё, где field1 = value1 OR field2 = value2?
Может я очень плохо читаю маны, но бьюсь уже давно, обычно находил способ обойти (иногда через $in, если поле одно), но сейчас в тупике.
upd: Пока публиковал пост, нашел, что фичу $or добавили в 1.5.3. То есть в 1.4 способа нет? Как раньше-то жили?
Как ограничить количество воркеров MongoDB?
Собственно, процесс mongod очень сильно параллелится, что обычно хорошо, но в моем случае начинает жрать всю память и от большой нагрузки иногда падает. Нужно как-то ограничить количество воркеров (или тред пул, что там у него), чтобы, скажем, больше 5 никогда не создавал и ставил остальных в очередь. Не могу найти параметр настройки.
А то получается вот так и сильно прожорливо:

Хотелось бы умерить пыл.
NoSQL СУБД для веб-сервера на VDS
Навеяно ответами к этому вопросу. Оказывается для MongoDB крайне желательно выделять отдельный сервер, т. к. память он отдавать не желает., что может быть чревато для других приложений.
В связи с этим вопрос — какую СУБД лучше поставить, чтобы её аппетиты до памяти можно было ограничивать. Желательно максимально близкую к Mongo, то есть свободная схема объектов/документов, но с разделением их на коллекции.
Спасибо.
Upd.: OS — Debian 6.0, nginx+php-fpm+passenger+mysql
система тегов на MongoDB
Можно ли из документов вида
{...,
tags: ['php','nosql',...]
}
… выбирать все уникальные значения массива tags одним запросом?
tags: ['php','nosql',...]
}