<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Выпуск БД Redis 2.8]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=32185&amp;type=atom" />
	<updated>2013-11-26T18:16:33Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=32185</id>
		<entry>
			<title type="html"><![CDATA[Выпуск БД Redis 2.8]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=378391#p378391" />
			<content type="html"><![CDATA[<p>После года разработки <a href="https://groups.google.com/forum/#!msg/redis-db/37xgI268Nh8/GEz0260U5QoJ">увидел свет</a> релиз новой стабильной ветки <a href="http://redis.io/">БД Redis 2.8</a>, относящейся к классу NoSQL-систем и развиваемой при содействии компании VMware (следом за первым выпуском 2.8.0 оперативно сформирован корректирующий выпуск 2.8.1). Redis предоставляет похожие на Memcached функции для хранения данных в формате ключ/значение, расширенные поддержкой структурированных форматов данных, таких как списки, хэши и множества, а также возможностью выполнения на стороне сервера скриптов-обработчиков на языке Lua. В отличие от Memcached, Redis обеспечивает постоянное хранение данных на диске и гарантирует сохранность БД в случае аварийного завершения работы. Исходные тексты проекта распространяются в рамках лицензии BSD. Клиентские библиотеки доступны для большинства популярных языков, включая Perl, Python, PHP, Java, Ruby и Tcl.</p><p>Имеется поддержка транзакций, позволяющих выполнить за один шаг группу команд, гарантируя непротиворечивость и последовательность (команды от других запросов не могут вклиниться) выполнения заданного набора команд, а в случае проблем позволяя откатить изменения. Все данные в полном объёме кэшируются в оперативной памяти. Хранение всех данных в оперативной памяти позволяет добиться значительной производительности: при тестировании Redis на сервере с CPU Xeon X3320 2.5 ГГц <a href="http://redis.io/topics/benchmarks">удалось обеспечить</a> 100 тысяч операций записи и чтения в секунду.</p><p>Для управления данными поддерживаются такие команды, как инкремент/декремент, стандартные операции над списками и множествами (объединение, пересечение), переименование ключей, множественные выборки и функции сортировки. Поддерживается два режима хранения: периодическая синхронизация данных на диск и ведение на диске лога изменений. Во втором случае гарантируется полная сохранность всех изменений. Возможна организация master-slave репликации данных на несколько серверов, осуществляемая в неблокирующем режиме. Доступен также режим обмена сообщениями &quot;публикация/подписка&quot;, при котором создаётся канал, сообщения из которого распространяются клиентам по подписке.</p><p>Ключевые <a href="https://raw.github.com/antirez/redis/2.8/00-RELEASENOTES">улучшения</a>, добавленные в Redis 2.8:</p><ul><li><p>Режим частичной ресинхронизации сo slave-серверами (<a href="http://antirez.com/news/47">PSYNC</a>), позволяющий избежать передачи полного набора данных от master-сервера к slave-системе после кратковременного прерывания связи;</p></li><li><p>Новые команды: <a href="http://redis.io/commands/scan">SCAN, HSCAN, SSCAN и ZSCAN</a> для перебора элементов в коллекциях, хэшах, множествах и отсортированных множествах. Формат команд: &quot;SCAN cursor [MATCH pattern] [COUNT count]&quot;, через параметр MATCH возможна выборка по маске (например, &quot;scan 52 MATCH key:1*&quot;);</p></li><li><p><a href="http://antirez.com/news/54">Переписана</a> система конфигурации Redis. Добавлена команда &quot;CONFIG REWRITE&quot;, позволяющая сохранить в конфигурационном файле изменения, внесённые на лету в процессе использования команды &quot;CONFIG SET&quot;;</p></li><li><p>Поддержка IPv6;</p></li><li><p>Улучшена поддержка скриптинга на стороне сервера. Добавлена команда EVALSHA, аналогичная EVAL за исключением того, что производится выполнение прокэшированных на сервере скриптов по связанному с ними хэшу SHA1 (для помещения скрипта в кэш следует использовать команду SCRIPT LOAD);</p></li><li><p>Улучшен алгоритм расчёта времени истечения жизни ключей;</p></li><li><p>В режиме обмена сообщениями &quot;публикация/подписка&quot; <a href="http://redis.io/topics/notifications">обеспечена</a> поддержка уведомления о поступлении событий об изменениях в пространстве ключей. Например, можно подписаться на события о выполнении команд с определённым ключом, истечении жизни ключей или выполнении над ключами операции LPUSH;</p></li><li><p>Улучшение средств по обеспечению непротиворечивости хранимых данных за счёт возможности приостановить операции записи в случае, если не удалось выявить достаточного числа slave-серверов, укладывающихся в установленные лимиты отзывчивости;</p></li><li><p>Полностью переписан код <a href="http://redis.io/topics/sentinel">Redis Sentinel</a>, системы для управления, мониторинга и обеспечена отказоустойчивости БД Redis.</p></li></ul><p>Источник: <a href="http://www.opennet.ru/opennews/art.shtml?num=38522">http://www.opennet.ru/opennews/art.shtml?num=38522</a></p>]]></content>
			<author>
				<name><![CDATA[Rizado]]></name>
				<uri>https://linuxforum.ru/profile.php?id=23158</uri>
			</author>
			<updated>2013-11-26T18:16:33Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=378391#p378391</id>
		</entry>
</feed>
