войти зарегистрироваться

Блог компании Mail.Ru GroupИспользование опыта тестирования реляционной СУБД для технологии NoSQL

Tarantool — это открытое, высокопроизводительное хранилище данных. Такие характеристики системы, как простота и производительность, во многом определяют область её применимости. На шкале решений для хранения данных Tarantool находится где-то посередине между традиционными реляционными системами, такими как MySQL, и решениями для кэширования данных, такими как memcached. В основе системы лежит персистентное хранилище данных, полностью отображённое в оперативную память, и высокопроизводительные индексы для доступа к данным на основе хэшей и бинарных деревьев.

В мои первые месяцы работы над Tarantool я попытался создать инструментарий тестирования, похожий на тот, что был в моём предыдущем проекте с открытым исходным кодом — MySQL.

NoSQLРеляционные базы данных обречены?

Примечание переводчика: хоть статья довольно старая (опубликована 2 года назад) и носит громкое название, в ней все же дается хорошее представление о различиях реляционных БД и NoSQL БД, их преимуществах и недостатках, а также приводится краткий обзор нереляционных хранилищ.

image
В последнее время появилось много нереляционных баз данных. Это говорит о том, что если вам нужна практически неограниченная масштабируемость по требованию, вам нужна нереляционная БД.

Если это правда, значит ли это, что могучие реляционные БД стали уязвимы? Значит ли это, что дни реляционных БД проходят и скоро совсем пройдут? В этой статье мы рассмотрим популярное течение нереляционных баз данных применительно к различным ситуациям и посмотрим, повлияет ли это на будущее реляционных БД.

NoSQLRedis 2.0

3 сентября 2010 незаметно вышел Redis 2.0. Появилось много интересных возможностей. Некоторые из них расширяют границы продвинутого key-value хранилища до организации очередей и не только. Перевод списка новых возможностей с сайта Redis:

Релиз Redis 2.0 является главным этапом в разработке Redis. Отдельно от бесконечного списка новых возможностей, есть несколько главных, которые заслуживают отдельного упоминания.

Стоит упомянуть, что Redis 2.0 только достиг своего первого стабильного релиза, Redis 2.2 близок к замораживанию новых возможностей, поэтому будьте готовы к новым восхитительным штукам уже скоро!

MULTI/EXEC

Семейство MULTI/EXEC команд было добавлено, чтобы заполнить необходимость выполнять несколько команд, как один атомарный блок (от переводчика: в общем-то это аналог транзакций в обычных базах данных). Потому что все команды внутри блока MULTI/EXEC сериализуются и выполняются последовательно, то невозможно, чтобы другой клиентский запрос был выполнен в середине выполнения этого блока. Все команды выполняются одна за другой, когда вызывается EXEC. Это гарантирует, что либо выполняются все команды, либо ни одна, независимо от состояния соединения с клиентом.

Веб-разработкаНовая версия Rediska 0.4.0 — PHP клиент для Redis

RediskaGood news every one! Мы хорошенько потрудились чтобы сделать этот несовершенный мир чуточку лучше :). Для тех кто не знаком с предметом разговора, сначала стоит прочитать мои предыдущие посты о замечательной key-value базе Redis и о нашем удобном PHP клиенте Rediska (далее Редиска), а также погулять по его домашней страничке.
Уже пол года мы успешно обкатываем Redis на наших проектах (на самом популярном в среднем 130 000 уникальный посетителей в день и 1 500 000 просмотров) и не можем нарадоваться. По ходу разработки проектов, да и честно говоря, чтобы не ударить в грязь лицом перед вами, дорогие мои, мы старались довести Редиску до ума.

Веб-разработкаОбновились Redis 1.2.1 и PHP клиент Rediska 0.3.0

RediskaRedis — это очень быстрая key-value база данных. Может использоваться как memcached, но отличие от последней в том, что Redis сохраняет свои данные на диск, то есть может быть использован для хранения данных (что мы успешно и делаем). Основные отличии от других собратьев — более сложные структуры данных (списки, коллекции) и атомарные операции с ними. Читайте более подробный обзор Redis на Хабре.

Веб-разработкаRediska — удобный PHP клиент для key-value базы Redis

RediskaRedis — это очень быстрая key-value база данных. Может использоваться как memcached, но отличие от последней в том, что Redis сохраняет свои данные на диск, то есть может быть использован для хранения данных (что мы успешно и делаем). Основные отличии от других собратьев это возможность хранить более сложные структуры данных — списки и «сеты» и атомарные операции с ними.
Так как на хабре уже есть обзор Redis, не вижу смысла продолжать. Перейду к самой «Редиске».

NoSQLRiak — веб-ориентированная система хранения данных



Немного статей на хабре посвящены новому движению в IT индустрии — NoSQL. Я решил изменить это и написал статью-перевод-обзор об одном из докладов с конференции NoSQL прошедшей 5 октября в Нью-Йорке. В этой статье будет говорится о системе Riak, с которой мне довелось иметь счастье работать последнее время.

Что такое Riak? Многие модные слова популярные сейчас, можно отнести к Riak. Riak — это документно-ориентированная база данных. Riak — это децентрализованное key-value хранилище данных, с поддержкой стандартных операций — get, put и delete. Riak — это распределенное, масштабируемое, отказоустойчивое решение для хранения информации. А так же Riak — это система с открытым исходным кодом и поддержкой обращений с помощью HTTP, JSON и REST. Ну и конечно RIAK — это NoSQL.

Персональные блоги Создание системы авторизации в высоконагруженном проекте с использованием MemcacheDB

Здравствуйте!

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

Где хранить аутентификационную базу пользователей?
Как быстро авторизовать пользователя по его строковому логину?
Как собирать распределенные по нескольким шард-таблицам и нескольким базам данных пользовательские данные?
Как заставить все это работать и как в этом нам может помочь MemcacheDB?

Высокая производительностьМарш против RDBMS или проекты распределенных хранилищ (key-value stores)

candybar2Вот вы часто создаете проекты? И, наверное, везде применяете базу данных, в частности, MySQL (а кто-то и PostgreSQL). Но вот что интересно, по опыту да и просто после чтения описания различных архитектур видно, что далеко не везде в проекте нужны ключевые особенности баз данных, во многих случаях базу используют просто как некоторое хранилище обычных данных. Например, в системах кеширования базы обычно не применяются, более того, кеширование как раз используют для того, чтобы избежать лишних запросов. А что используют для кеширования наиболее часто? Memcached. А что это такое? Это распределенная система хранения данных на основе хеш-таблицы. В общих чертах, это просто хранилище пар ключ-значение, над которыми можно производить только основные операции — запись, чтение, удаление и проверку на присутствие. Да-да, нет никаких фильтров, выборок, сортировки, самый максимум — система тегов для выборки одним запросом всех связанных записей. И во многих случаях такого функционала вполне достаточно.