Всемирно известная компания 10gen, разрабатывающая опенсорсную базу данных MongoDB, представляет уникальный курс по MongoDB для разработчиков. Вы научитесь всему необходимому для создания вашего приложения на основе MongoDB. Курс позволит вам овладеть навыками установки, работы с JSON, созданием схем, запросов, сохранения данных, индексации и работы с языковыми драйверами. В процессе курса вы будете строить платформу для блога, основанного на MongoDB.
Читать полностью »
Рубрика «mongodb» - 22
Графовая база данных Neo4j в PHP
2012-09-24 в 10:03, admin, рубрики: mongodb, neo4j, nosql, php, метки: mongodb, neo4j, nosql, PHPВ последнее время я все чаще слышу о NoSQL и о графовых базах данных в частности. Но воспользовавшись хабропоиском с удивлением обнаружил, что статей на эту тему не так и много, а по запросу «Neo4j», так вообще 4 результата, где косвенно упоминается это название в тексте статей.
Что такое Neo4j?
Neo4j — это высокопроизводительная, NoSQL база данных основанная на принципе графов. В ней нет такого понятия как таблицы со строго заданными полями, она оперирует гибкой структурой в виде нод и связей между ними.
Как я докатился до этого?
Уже более года я не использовал в своих проектах SQL, с того времени, как попробовал документо-ориентированную СУБД "MongoDB". После MySQL моей радости не было предела, как все просто и удобно можно делать в MongoDB. За год я переписал тройку CMS, использующих основные фишки Mongo c её документами, и с десяток сайтов работающих на их основе. Всё было хорошо, и я уже начал забывать, что такое писать запросы в полсотни строк на каждое действие с БД и все бы ничего пока на мою голову не свалился проект с кучей отношений, которые ну никак не укладывались в документы. Возвращаться к SQL очень не хотелось, и пару дней я потратил чисто на поиск NoSQL решения, позволяющего делать гибкие связи — на графовые СУБД. И по ряду причин мой выбор остановился на Neo4j, одна из главных причин — это то, что мой движок был написан на PHP, а для неё был написан хороший драйвер "Neo4jPHP", который охватывает почти 100% REST-интерфейса, предоставляющегося сервером Noe4j.Читать полностью »
.NET Субботник в Днепропетровске — лучшие докладчики из Днепра и Киева
2012-09-19 в 14:01, admin, рубрики: .net, ciklum saturday, javascript, mongodb, Блог компании Ciklum, субботник, метки: .net, ciklum saturday, dnepropetrovsk, javascript, mongodb, субботник Долгожданный .NET Субботник в Днепропетровске пройдет 29 сентября. В очередной раз компания Сиклум собирает всех поклонников и мастеров популярной технологии на горячую дискуссию.
Докладчики из Днепропетровска и Киева предложат темы, которые заинтересуют специалистов самого разного уровня и не дадут скучать опытным разработчикам. После каждого доклада, как всегда, дискуссия и обсуждение темы.
Список докладов:
1. Windows 8: Build Application with JavaScript — Евгений Жарков
2. RailwayJS: node on rails – Дмитрий Овчаренко
3. Release management with NuGet/Chocolatey/JIRA – Ярослав Сергеев
4. Entity Framework 5 new features – Александр Короткий
5. MongoDb in .NET – Ярослав Ели. Читать полностью »
Релиз MongoDB 2.2.0
2012-08-30 в 18:33, admin, рубрики: mongodb, mongodb 2.2, nosql, метки: mongodb 2.2, nosql Вчера состоялся долгожданный релиз NoSQL базы данных MongoDB 2.2.0.
Среди самых важных нововведений стоит отметить:
Aggregation Framework
Инструмент, оптимизирующего обработку больших массивов данных без map-reduce (больше информации на хабре)
TTL-коллекций
TTL-коллекции позволяют удалять из коллекции данные, у которых вышло время жизни, установленое с помощью специального индекса(удобно, например, для хранения логов, сессий и подобной информации). При использовании таких коллекций создается дополнительный фоновый процесс для реализации соответсвующей проверки
Читать полностью »
Приведение к типам в Yii::app()->request
2012-08-17 в 7:49, admin, рубрики: mongodb, mysql, php, yii, метки: mongodb, mysql, PHP, yiiВсем привет!
Хочу поделиться с вами небольшим решением проблемы, с которой столкнулся при переносе части данных проекта в mongodb.
Изначально у нас использовалась только Mysql и все параметры приходящие от клиента вполне себе позволяли получать данные из базы без каких-либо проблем.
<?php
$id = Yii::app()->request->getParam('id', 0);
$data = Data::getForId($id);
?>
А суть в том, что для mysql нет разницы [select * from data where id = 1] или [select * from data where '1'].
Но mongodb типы данных различает, по этому нельзя найти запись используя условие id == '1' если id в mongodb является числом.
MongoDb в действии — интернет магазин
2012-08-05 в 23:32, admin, рубрики: mongodb, разработка, метки: c++, mongodbСкоро будет год с момента моего знакомства с MongoDb. Я был далеко не первым, кто начал с ней работать, но, тем не менее, эта технология все еще воспринимается как экспериментальная.
В целом скажу так: работать с MongoDB удобнее чем с MS SQL. Регулряно встречаются сценарии, которые требуют больше усилий по сравнению с SQL, однако, в результате ты больше знаешь о том, как устроена твоя база данных и лучше контролируешь что будет тормозить, а что — нет.
На хабре полно приложений в стиле «Hello World», так что инициализацию среды опустим и перейдем сразу к более продвинутым вопросам, а именно:
- Почему удобнее хранить весь объект целиком, а не по таблицам?
- Как бороться с реляциями?
MongoDB и C#. Новые возможности и неочевидные проблемы
2012-07-28 в 4:32, admin, рубрики: .net, mongodb, nosql, метки: .net, c++, mongodb, nosqlВведение
В начале июля вышла очередная версия(1.5) официального драйвера MongoDB для C#. Среди нововведений стоит отметить поддержку типизированных запросов. Теперь появилась возможность использовать лямбда-функции в связке с Expression.
В этой статье я покажу примеры нового синтаксиса, который мне очень нравится(а мне вообще Expression в C# очень нравится), а также продемонстрирую примеры запросов, где, увы, Expression нам ничем не поможет и придется вернуться к привычным строкам. Также я порассуждаю, почему оно так, и будет ли когда-нибудь всё прекрасно в С# при работе с MongoDB.
Читать полностью »
Установка и использование MongoDb
2012-07-24 в 7:51, admin, рубрики: mongodb, nosql, Веб-разработка, метки: mongodbЭтот пост может быть полезен тем, кто решил попробовать Mongodb в своем проекте (использует его впервые).
Mongodb может быть хорошим решением (по сравнению с СУБД), если вам нужно хранить объекты со сложной структурой или не однотипные объекты. Также, возможности mapReduce полезны для генерации разнообразной статистики, использование mapReduce может быть гораздо удобнее использования агрегирующих функций и написания процедур в SQL.
Читать полностью »
MongoDB: производительность запросов на диапазонах
2012-07-03 в 16:32, admin, рубрики: mongodb, nosqlЕсли вы путешествовали по территории индексов MongoDB, вы возможно слышали принцип: Если ваши запросы содержат сортировку, то добавте сортированное поле в конец индекса который используется в этих запросах.
Во многих случаях когда запросы содержат условия равнества как например {“name”: “Charlie”}, принцип который выше очень полезен. Но что о нем можно сказать со следующим примером:
Запрос:
db.drivers.find({"country": {"$in": ["A", "G"]}).sort({"carsOwned": 1})
Индекс:
{"country": 1, "carsOwned": 1}
Эта связка является не еффективной, хотя принцип соблюдается. Потому что тут есть ловушка в которую вас может привести этот принцип.
Ниже мы рассмотрим причины возниконвения этой ловушки и к концу статьи вы будете иметь новое правило которое будет вам помогать при индексировании.
Читать полностью »
Одна из самых разрекламированных фич MongoDB — это гибкость. Я сам не раз подчеркивал это в бесчисленных разговорах о MongoDB. Однако, гибкость — это палка о двух концах: большая гибкость подразумевает более широкий выбор решений для моделирования данных. Тем не менее, мне нравится гибкость, которую предоставляет MongoDB, просто нужно иметь ввиду некоторые рекомендации, прежде чем начать разрабатывать модель данных.
В этой статье мы рассмотрим, как смоделировать структуру, содержащую списки рассылок и данные о людях, которые входят в эти списки.
Читать полностью »