На кластерах клиентов, которые мы обслуживаем, есть как «одноголовые» инсталляции Redis (обычно для кэшей, которые не страшно потерять), так и более отказоустойчивые решения — Redis Sentinel или Redis Cluster. По нашему опыту, во всех трех вариантах можно безболезненно переключиться с Redis на KeyDB и получить прирост производительности. Точнее, избавиться от бутылочного горлышка Redis в одно ядро. Хотя в новых версиях Redis(r) появилась обработка I/O в отдельных тредах, иногда этого бывает недостаточно.
Рубрика «nosql»
KeyDB и Redis: в поисках серебряной пули — in-memory replicated DB (Replicated IMDB)
2023-07-21 в 8:24, admin, рубрики: devops, KeyDB, kuber, kubernetes, node.js, nosql, redis, Администрирование баз данных, базы данных, Блог компании Флант, хранилище данныхРаспределенный SQL: альтернатива шардированию баз данных
2023-02-03 в 13:00, admin, рубрики: nosql, ruvds_перевод, sql, базы данных, Блог компании RUVDS.com, распределенные системы, распределенный sql, хранение данных, шардирование
Шардирование баз данных – это процесс разделения данных на меньшие части, называемые «шарды». Эта техника обычно используется, когда возникает потребность в масштабировании записей. В течение жизненного цикла успешного приложения способность сервера его базы обрабатывать операции записи рано или поздно достигает своего предела. Деление данных на несколько шардов – с размещением каждого на собственном сервере БД – уменьшает нагрузку на отдельные узлы, по сути, повышая записывающую способность базы данных в целом. Этот процесс и является шардингом.
Распределённый SQL представляет новый способ масштабирования реляционных баз данных с помощью полностью автоматизированной и прозрачной для приложений стратегии, подобной шардингу. Распределённые БД SQL изначально спроектированы под практически линейное масштабирование. В текущей статье вы познакомитесь с основами распределённого SQL и узнаете, как начать работу с этими базами данных.Читать полностью »
Использование Redis для работы с геоданными
2022-07-30 в 12:36, admin, рубрики: data engineering, geospatial, nosql, redis, web, геоданные, геопозиция, хранение данных, хранилища данныхРабота с геопространственными данными заведомо сложная задача, хотя бы потому что широта и долгота это числа с плавающей запятой и они должны быть очень высокоточными. К тому же, казалось бы, широта и долгота могут быть представлены в виде сетки, но на самом деле нет, не могут, просто потому что Земля не плоская, а математика - это сложная наука.
Например, чтобы определить расстояние большого круга между двумя точками сферы, исходя из их широты и долготы используется формула гаверсинуса, которая выглядит так:
Какую СУБД выбрать и почему? (Статья 1)
2021-09-21 в 18:28, admin, рубрики: Microsoft SQL Server, nosql, oracle, sql, выбор, СУБДЭто первый выпуск в серии статей про СУБД, в рамках которых буду достаточно простыми словами давать информацию про то, что сейчас есть на рынке баз данных, и что выбрать для решения своих задач.
Заметил, что когда спрашиваешь кого-нибудь, особенно на собеседовании, какие типы СУБД существуют, то первое что вспоминают многие – это реляционные базы данных, и NoSQL, а вот про разновидности часто забывают или не могут сформулировать их отличие. Поэтому начнем с простого перечисления наиболее используемых.
-
Реляционные
-
Ключ-значение
-
Документные
Tarantool vs Redis: что умеют in-memory технологии
2021-04-01 в 14:04, admin, рубрики: nosql, redis, tarantool, Администрирование баз данных, Блог компании Mail.Ru Group
В этой статье я хочу сравнить Redis и Tarantool. У меня нет цели сделать громогласный вывод «Tarantool лучше!» или «Redis круче!». Я хочу понять их сходства и отличия, разобраться, для каких задач какую технологию выбрать. Потому что это очень близкие на первый взгляд вещи, и вопросы про их отличия я вижу часто.
Для этого мы посмотрим на технологии в трёх частях:
- Вначале посмотрим глазами новичка. Что такое БД в памяти? Какие задачи они решают лучше дисковых БД?
- Потом посмотрим архитектурно. Как обстоит вопрос с производительностью, надёжностью, масштабированием?
- В третьей части лезем в технические вещи поглубже. Типы данных, итераторы, индексы, транзакции, ЯП, репликация, коннекторы.
Смело переходите сразу к наиболее интересной вам части. Или даже сразу к итоговой табличке сравнения, которую я прикладываю в заключении.
Поехали!
Читать полностью »
Паспортный контроль, или Как сжать полтора гигабайта до 42 мегабайт
2021-02-05 в 9:52, admin, рубрики: nosql, php, pilosa, redis, Анализ и проектирование систем, оптимизация, паспортные данныеОднажды, в качестве тестового задания на позицию PHP разработчика была предложена задача реализации сервиса проверки номеров паспортов граждан РФ на предмет нахождения в списке недействительных. Текст задания был лаконичным: «Пользовательская база 10 миллионов, время ответа 1 миллисекунда, аптайм 99%».
Входные данные
Для начала посмотрим, в каком виде представлены записи в списке недействительных паспортов. На сайте МВД РФ можно скачать bzip2-архив размером около 460 МБ, внутри которого CSV-файл с двумя колонками PASSP_SERIES,PASSP_NUMBER
Читать полностью »
Инструменты Node.js разработчика. Какие ODM нам нужны
2020-10-18 в 17:54, admin, рубрики: arangodb, couchdb, javascript, mongodb, node.js, nodejs, nosql, ODM, orientdbODM - Object Document Mapper - используется преимущественно для доступа к документоориенриирвоанным базам данных, к которым относятся MongoDB, CouchDB, ArangoDB, OrientDB (последние две базы данных гибридные) и некоторые другие.
Прежде чем перейти к рассмотрению вопроса, озвученного в названии сообщения, приведу статистику скачивания пакетов из публичного регистра npm.
Таблица
Статистика скачивания пакетов для работы с реляционными и документоориентированными базами данных из публичного регистра npm
Пакет (npm) |
Количество скачиваний в неделю |
База данных |
pg |
Читать полностью » |
14 вещей, которые я хотел бы знать перед началом работы с MongoDB
2020-09-23 в 16:58, admin, рубрики: database, mongodb, nosql, Администрирование баз данных, Блог компании OTUS. Онлайн-образованиеПеревод статьи подготовлен в преддверии старта курса «Нереляционные базы данных».
Основные моменты:
- Крайне важно разработать схему несмотря на то, что в MongoDB она необязательна.
- Аналогично, индексы должны соответствовать вашей схеме и шаблонами доступа.
- Избегайте использования больших объектов и больших массивов.
- Будьте осторожны с настройками MongoDB, особенно если речь идет о безопасности и надежности.
- В MongoDB нет оптимизатора запросов, поэтому вы должны быть осторожны при выполнении операций запроса.
Я очень давно работаю с базами данных, но только недавно открыл для себя MongoDB. Есть несколько вещей, которые я хотел бы знать перед началом работы с ней. Когда у человека уже есть опыт в определенной сфере, у него существуют предвзятые представления о том, что такое базы данных и что они делают. В надежде облегчить задачу понимания другим людям, представляю список распространенных ошибок.
Читать полностью »
Заключительный перевод разделов Redis Best Practices с официального сайта «Redis Labs». Самое необычное и интересное сегодня под катом!

Как визуализировать граф Spring Integration с помощью Neo4j?
2020-05-16 в 2:14, admin, рубрики: EIP, graph db, java, neo4j, nosql, spring integration, визуализация графовФреймворк Spring Integration умеет отдавать текущее состояние всех EIP-компонентов и их связей в виде JSON-графа. Это кажется очень удобным для изучения и отладки, но увы, ни один из нагугливаемых инструментов (коих всего-то раз /два) не даёт достаточной гибкости для визуализации и анализа такого графа. В этой статье я покажу, как решить эту проблему путем импорта графа в графовую СУБД Neo4j, где такая гибкость стоит на первом месте.