Pull to refresh

Когда одного Postgres'a мало: сравнение производительности PostgreSQL и распределенных СУБД

Level of difficultyHard
Reading time12 min
Views11K

Общеизвестно, что PostgreSQL - крайне эффективная СУБД с богатой функциональностью. При этом не секрет, что PostgreSQL масштабируется только вертикально и её производительность ограничена возможностями одного сервера.

Написано много хороших постов, в которых сравнивают архитектуру монолитных и распределенных СУБД. К сожалению, обычно авторы ограничиваются теоретическим сравнением и не приводят конкретные цифры. Данный пост же наоборот основан на эмпирическом исследовании с использованием бенчмарка TPC-C, который является промышленным стандартом для оценки производительности транзакционных СУБД (On-Line Transaction Processing, OLTP).

Мы расскажем, когда именно одного Postgres'a становится мало, и какие возможны компромиссы между производительностью и надежностью. Для тех, кто не готов к компромиссам, мы покажем, что могут предложить такие распределенные СУБД, как CockroachDB и YDB.

Читать далее
Total votes 29: ↑28 and ↓1+27
Comments50

Postgresso #3 (64)

Reading time11 min
Views3.5K

PGConf.Russia 2024

Стартует уже совсем скоро: 8 апреля, а завершится 9-го. Можно просмотреть расписание и список докладов.

Первый доклад после открытия - директора нашего отдела образования Павла Лузанова - PostgreSQL 17:

В этом году даты проведения конференции совпадают с завершением релизного цикла 17 версии. 8 апреля в 15:00 MSK прием изменений завершится. А мы сможем обсудить, что ожидать в осеннем релизе. Здесь и инкрементальное резервное копирование, изменения в логической репликации, триггер на подключение и наверняка появится что-то любопытное в начале апреля.

Следующий доклад в конференц-зале - Про-ShardmanАлексей Борщев и П. Конотопов. То, что он идёт вторым после обзорного, показывает, какое значение придают этой новой СУБД в компании. Интерес к ней действительно огромный. Они расскажут о Шардмане с точки зрения SQL разработчиков и архитекторов БД:

что такое Шардман;

чем отличается от обычного Постгреса;

типы таблиц и их использование;

как адаптировать схему БД для работы на шардах.

Конечно, будет рассказано и о других новинках компании: доклад Pooler, load balancer, proxy. Что их объединяет? Артём Галонскийpgpro_rp (приоритизация ресурсов, доложит Александр Попов) и других.

Читать далее
Total votes 16: ↑17 and ↓-1+18
Comments0

Релиз СУБД Caché 2013.1

Reading time8 min
Views4.5K
Вышла новая версия Caché 2013.1 Что нового?

Развитие функционала
  • дальнейшее развитие EXtreme Event Persistence;
  • поддержка WebSocket;
  • расширенная поддержка JSON;
  • новый редактор панелей в BI DeepSee.

Повышение скорости разработки
  • multiсompile классов;
  • новая команда COS return;
  • args по ссылке;
  • %Find для Caché SQL.

Улучшение производительности
  • производительность обработки XML +50%;
  • улучшение производительности de-journaling;
  • повышение производительности ROLLBACK до 20%;
  • увеличение лимита глобального буфера до 16 ТБ;
  • увеличение лимита разделяемой памяти до 1 ТБ;
  • построение индексов класса с минимальным временем простоя — %Library.IndexBuilder;
  • эскалация блокировок;
  • увеличение производительности конкурентных обновлений — до 30%.

Полная версия документа на английском языке.
Обо всем по порядку и о других изменениях версии под катом.
Читать дальше →
Total votes 7: ↑5 and ↓2+3
Comments9

Исполнение команд операционной системы на сервере Caché

Reading time3 min
Views2K
По мотивам статьи в Developer Connection написал свою реализациию класса для вызова команд операционной системы сервера, где установлена Caché или Ensemble.
Класс может пригодиться, когда нужно из Caché что-то сделать на хостовой ОС: распорядиться файлами бэкапов, настроить работу с системой контроля версий и другие полезные действия.
Класс позволяет выполнить команду на любой хостовой ОС и получить ответ в глобал или локальную переменную.
Подробности под катом
Total votes 6: ↑2 and ↓4-2
Comments5

Версионное хранение данных в Persistent-классах Caché

Reading time9 min
Views3K
В стандартных хранимых классах Caché при модификации записи прежние значения свойств исчезают безвозвратно. Но бывают случаи, когда это нежелательно, когда «все ходы должны быть записаны». В первую очередь, конечно, такое требование возникает при разработке приложений для материально ответственных лиц, для которых критична возможность, например, отменить ошибочное действие и восстановить состояние документа на заданное время, или, что ещё важнее, провести расследование инцидента с попыткой злоумышленника «замести следы» в базе.
В этой статье демонстрируется, как реализовать хранение и восстановление версий для объектов Caché.
Читать дальше →
Total votes 3: ↑3 and ↓0+3
Comments12

Конкурсы InterSystems: быстрее, выше, сильнее!

Reading time2 min
Views1.9K
image
Этой осенью мы предлагаем студентам а также всем неравнодушным к технологиям InterSystems разработчикам поучаствовать сразу в нескольких программистских забегах:
CIS Student Innovator Awards 2013 — наш традиционный конкурс для программистов вузов InterSystems Campus.
“Золотой байт” 2014 — международный конкурс компьютерных талантов.
“IT-Планета” 2014 — международная олимпиада в сфере информационных технологий.
О том, что, где, когда и какие призы — добро пожаловать под кат.
Читать дальше →
Total votes 8: ↑6 and ↓2+4
Comments3

Harbour — новое лицо xBase family

Reading time6 min
Views20K
Для справки: xBase — семейство систем программирования, СУБД, берущих начало с dBase (1980 г.). Их объединяет общий язык программирования ( естественно, с вариациями, присущими конкретной реализации ) и встроенные в этот язык средства доступа к реляционным базам данных формата DBF. Собственно, dBase начинался как СУБД с языком, предназначеннным для обслуживания баз данных. Это процедурный язык программирования, он относится к группе интерпретируемых языков и обладает многими, если не всеми, их родовыми чертами, такими, например, как динамическая типизация.

Clipper, непосредственный предшественник Harbour, был создан в 1985 г. с целью повышения производительности dBase III. Для этого исходный код программы преобразовывался на стадии компиляции в байт-код, который встраивался в исполнямый файл вместе с виртуальной машиной, предназначенной для исполнения этого байт-кода. Таким образом, Clipper давал на выходе автономный exe файл, не требующий для своего запуска и выполнения внешнего интерпретатора, как в случае dBase или FoxBase ( другой популярный xBase продукт ).
Читать дальше →
Total votes 7: ↑6 and ↓1+5
Comments4

Принципы работы СУБД. MVCC

Reading time5 min
Views79K
Многие из нас сталкивались в своей работе с СУБД. На текущий момент базы данных в том или ином виде окружают нас повсюду, начиная с мобильных телефонов и заканчивая социальными сетями, в число которых входит и любимый нами хабр. Реляционные СУБД являются наиболее распространенными представителями семейства СУБД, и большинство из них являются транзакционными.
В институте нас заставляли заучивать определение ACID и стоящие за ним свойства, но почему-то стороной обходились подробности реализации этой парадигмы. В данной статье я постараюсь частично заполнить этот пробел, рассказав о MVCC, которая используется в таких СУБД как Oracle, Postgres, MySQL, etc. и является весьма простой и наглядной.
читать далее
Total votes 26: ↑23 and ↓3+20
Comments22

Рисуем карту одним select'ом или о пользе многотабличных индексов

Reading time11 min
Views7.1K
image
Данная статья написана в продолжение серии, повествующей о прототипировании простого и производительного динамического web map сервера. Ранее рассказывалось о том, как в нем устроены пространственные индексы, а так же о том, как можно просто так вот взять и нарисовать пространственный слой. Сейчас мы сделаем это чуть изящнее.
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments0

CUBRID

Reading time4 min
Views3.5K
imageПоследнее время, в области баз данных, внимание сконцентрировано на интенсивно развивающихся NoSQL решениях. Складывается обманчивое впечатление, что в секторе реляционных СУБД затишье: основные продукты давно известны, все ниши заняты. Казалось бы, новому игроку сюда так просто не попасть. Только если речь идёт не о проекте с пятнадцатилетней историей, не о развитой объектно-реляционной СУБД с открытым кодом, оптимизированной для использования в веб-приложениях, не о системе, которая имеет поддержку хранимых процедур, партиционирование, опции высокой доступности, репликацию и распределённые транзакции. Имя этой «тёмной лошадки» — CUBRID. И, судя по заявлениям создателей, она претендует на лавры MySQL.
Так где же его прятали всё это время?
Total votes 60: ↑58 and ↓2+56
Comments21

InterSystems Caché и технологии NoSQL

Reading time9 min
Views12K
Современные высоконагруженные приложения изменили требования к СУБД — сегодня необходимы эффективные технологии создания cпециализированных решений с гарантированным временем реакции при обработке больших массивов данных. Вместе с тем, несмотря на появление таких относительно новых технологий как NoSQL, потенциал давно существующих подходов реализован еще не полностью.

Интернет проекты с высокой нагрузкой и приложения класса XTP (extreme transaction processing) изменили требования к технологиям СУБД. Приоритетными требованиями стали простота разработки, возможность cпециализации технологии хранимых данных для конкретного проекта, поддержка постоянного времени реакции системы при увеличении нагрузки, обеспечение низкой стоимости масштабирования и стоимости обработки больших объемов данных.

В качестве ответа на новые потребности возникло движение NoSQL — новый класс баз данных, который обещает разработчикам высокую скорость внесения изменений в приложения, низкие затраты на масштабирование и обработку/хранение больших объемов данных, высокую скорость работы на относительно недорогом железе — ценности, которые всегда были важны и для технологий компании InterSystems. Практически всегда NoSQL базы реализуют отличную от привычной парадигму работы приложений с базами данных — переход от концепции интегрирующей СУБД для нескольких приложений к концепции СУБД для одного приложения или одного проекта и больше — отдельной специфичной задачи в рамках проекта.
Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments26

Основные возможности CUBRID 8.4.0

Reading time9 min
Views1.2K
Приветствую всех!

Этот блог будет очень занимательным! Сегодня я расскажу об очень интересных особенностях последней версии CUBRID 8.4.0, о том, чего обычно не найдешь в мануале. Приведу очень важные рекоммендации по оптимизации запросов и индексов, приведу результаты тестов, а также примеры использования в реальных Веб сервисах.

Ранее я уже поверхностно рассказывал об изменениях в новой версии, о вдвое ускоренном движке базы данных, о расширенной поддержке MySQL синтаксиса, и т.д. А сегодня расскажу о них и других вещах более подробно, акцентируя на том, как мы смогли увеличить производительность CUBRID в два раза.

Основные направления, повлиявшие на производительность CUBRID, являются:
  • Уменьшение размера тома базы данных
  • Улучшенные параллельные вычисления в Windows версии
  • Оптимизации индексов
  • Оптимизации обработки условий в LIMIT
  • Оптимизации обработки условий в GROUP BY

Весь смак под катом
Total votes 2: ↑2 and ↓0+2
Comments4

Знакомство с CUBRID — СУБД оптимизированная для Веб приложений

Reading time7 min
Views8.5K
Приветствую всех, дорогие Хабравчане!

Лично мы не представляли нашу разработку пользователям Хабры, но скорее всего Вы уже читали о СУБД CUBRID в хабратопике Льва Хомича. Некоторые моменты в статье не совсем корректны, что хочу исправить в этом топике. Поэтому предлагаю познакомиться поближе и узнать более подробно, почему мы представляем CUBRID как самую оптимизированную СУБД для Веб приложений. Также буду рассказывать о тех нюансах, о которых Вы не найдете нигде (пока), даже на официальном сайте проекта http://www.cubrid.org. Таким образом и Вы узнаете многое и, надеюсь, расскажете, посоветуете или предложите нам свои идеи и мнения в комментариях. Поэтому уверен, Вы будете довольны нашему знакомству.

Во-первых, когда началась разработка CUBRID?

В разных источниках приводятся разные даты: 15 лет назад, либо 2006 год. Поистине СУБД продавалась и пользовалась очень большим спросом еще задолго до того, как появился MySQL, и даже сам CUBRID. Она была одной из первых с объектно-ориентированной архитектурой, которая широко используется и в наши дни в игровой и мультимедийной индустриях. СУБД стала настолько популярной, что Oracle предложил купить исходный код и лицензию на ее дальнейшее развитие и продажу за 1 миллиард американских долларов. Но разработчики отклонили предложение и вместо этого нашли спонсоров с активом в 2 миллиарда долларов. Это было еще в начале 90-х годов. Поэтому в хабратопике Льва Хомича и некоторых других источниках говорится о пятнадцатилетнем и более стаже.
Читать дальше →
Total votes 24: ↑19 and ↓5+14
Comments19

Результаты сравнительного тестирования производительности CUBRID и MySQL до и после применения твердотельных накопителей (SSD)

Reading time9 min
Views6K
Добрый день, всем!

Наконец-то заработал Хабр, и теперь могу выложить перевод статьи, опубликованной на английском языке на оффициальном сайте проекта CUBRID, которую Вы просили в коментариях к предыдущему хабратопику.

1. О тесте


В ходе следующего анализа производительности системы баз данных CUBRID и MySQL тестируются для определения их производительности в двух различных ситуациях:
  1. когда системы работают на сервере, оснащенном жестким диском;
  2. когда системы работают на сервере, оснащенном твердотельным накопителем.

1.1. Краткое описание

Принято считать, что хранение данных является основной задачей любой системы баз данных. Жесткий диск является популярным носителем, используемый предприятиями для хранения больших объемов данных. Однако известно, что производительность (ввода-вывода) жесткого диска уменьшается при рабочих нагрузках, ограниченных скоростью ввода-вывода (I/O Bound). Поэтому часто бывает необходимо найти более эффективный носитель для хранения данных. В этой статье мы представляем результаты применения и тестирования нового твердотельного накопителя (SSD), используемого в качестве основного носителя для хранения данных, который демонстрирует повышенную производительность баз данных.
Читать дальше →
Total votes 4: ↑3 and ↓1+2
Comments19

Наш Новый Логотип

Reading time3 min
Views3.9K
Добрый день, Хабравчане!

На прошлой неделе мы официально аннонсировали новый логотип нашего проекта CUBRID. Сегодня же я очень рад поделиться с Вами этим произведением. Хочу рассказать, что поспособствовало такому изменению, а также в чем смысл новых форм и цветов.

Полагаю, некоторые из Вас уже заметили изменения на нашем официальном сайте http://www.cubrid.org. Если еще нет, то это самое время посмотреть, как смотрится наш новый логотип на фоне сайта сообщества.

Предпосылки


Читайте за катом
Total votes 45: ↑11 and ↓34-23
Comments23

Применение метамодели при проектировании баз данных с несколькими абстрактными слоями

Reading time6 min
Views13K
Классический подход предусматривает разработку структур баз данных, где все сущности информационной модели находятся на одном абстрактном уровне, являются однородными. Однако, сложные и слабо-структурированные предметные области приводят реляционную декомпозицию к комбинаторному взрыву, непропорциональному росту количества таблиц и связей. А динамические предметные области, в которых ежедневные изменения являются нормой жизненного цикла, требуют постоянного реинженеринга структуры реляционной базы данных.
Читать дальше →
Total votes 37: ↑34 and ↓3+31
Comments58

Новый CUBRID 8.4.0: теперь вдвое быстрее

Reading time4 min
Views1.2K
Дождались! Новая версия СУБД CUBRID 8.4.0 является самой мощной из ранее выпущенных версий, а теперь еще с вдвое ускоренным движком базы данных!

Этот выпуск сочетает повышенную производительностью со множеством новых возможностей, часто запрашиваемых пользователями. Результаты тестов, основыванные на том же сценарии [ссылка на PDF файл отчета на английском], который мы обычно используем для проведения контроля качества новых выпусков, показывают повышенную производительность движка почти в три раза для определенных функций.
Результаты производительности за катом
Total votes 6: ↑5 and ↓1+4
Comments5

Применение метамодели при проектировании баз данных с несколькими абстрактными слоями (часть 2)

Reading time5 min
Views6.8K
В последнее время реляционные СУБД немного потеснены системами с альтернативными моделями данных. Отчасти это вызвано задачами повышения производительности за счет упрощения структур хранения. С другой стороны, идут поиски путей расширения выразительных средств, в том числе за счет перехода к более богатым информационным моделям. Ведь многие поняли, что повышения уровня абстракции предметной области на один порядок дает расширение сферы применения продукта в десятки раз и возможность занять многие смежные ниши, порой увеличивая количество клиентов в сотни и тысячи раз.

Первая часть: http://habrahabr.ru/blogs/sql/119317/
Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments4

Приглашаем на Tarantool Meetup 10 августа

Reading time2 min
Views2.9K


Всем привет! 10 августа 2017 мы приглашаем архитекторов и разработчиков в московский офис Mail.Ru Group, где состоится Tarantool Meetup, посвященный архитектуре и реализации корпоративных микросервисов с использованием Tarantool. Мы поделимся с вами своими подходами к проектированию решений и покажем на примере двух простых сервисов как можно за два часа решить две типовые задачи. И традиционно будет много интересных технических дискуссий на самые разные темы! А если вы возьмете с собой ноутбук с установленным Docker, то сможете сами пощупать все своими руками. Программу читайте под катом.
Читать дальше →
Total votes 25: ↑24 and ↓1+23
Comments5

Второе Соревнования по Программированию

Reading time3 min
Views2.1K
Уважаемые, коллеги!

Приглашаем всех желающих принять участие во втором соревновании по программированию CUBRID it!, которое на этот раз мы организовываем с 1-го по 21-е июня включительно на сайте http://www.cubrid.org/cubrid_it.

Задача соревнования состоит в нахождении самого оптимального решения для SQL задачи, используя либо язык программирования Java, либо PHP. В качестве СУБД требуется использовать CUBRID версии 8.3.1. Все! Больше никаких условий!

Готовое решение можно будет отправлять уже с 1-го числа июня на той же странице. В 12 часов ночи по Гринвичу будут доступны как сама задача, так и форма для отправки решений.
Информация о больших призах ждут Вас под катом!
Total votes 7: ↑4 and ↓3+1
Comments11
1
23 ...