The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Для PostgreSQL представлен движок хранения OrioleDB, обходящийся без операции VACUUM

17.07.2023 11:07

Стартап OrioleData опубликовал новый движок хранения для СУБД PostgreSQL - OrioleDB, нацеленный на предоставление быстрого и компактного хранилища, не приводящего со временем к раздутию файлов с БД и не требующего использования периодически запускаемого процесса VACUUM для сборки мусора. Движок написан на языке Си, распространяется под лицензией PostgreSQL и реализован в форме подключаемого расширения, требующего внесения изменений в основную кодовую базу PostgreSQL. В текущем виде движок находится на стадии бета-тестирования и пока не рекомендован для рабочих внедрений.

Применяемые в OrioleDB структуры позволяют более эффективно обрабатывать операции изменения данных в БД и заменять освободившиеся блоки, не накапливая их со временем. Возможность обходиться без VACUUM реализована благодаря применению логов отката (undo logs), работающих на уровне отдельных блоков и строк, а также системы автоматического слияния страниц с данными.

Работающий на уровне строк лог отката позволяет выполнять операции UPDATE с заменой данных по месту, без освобождения текущей записи и создания новой. Лог отката на уровне блоков даёт возможность вытеснять кортежи и высвобождать место в хранилище сразу после выполнения операции DELETE, невзирая на то, что они остаются видимыми в незавершившихся транзакциях. Для сокращения фрагментации хранилища в результате большого числа операций удаления в фоновом режиме выполняется автоматическое слияние отдельных страниц с данными.

WAL-лог транзакций в OrioleDB ведётся на уровне строк, а не блоков, что упрощает использование в распределённых системах и позволяет распараллеливать раскрутку лога. Возможно создание распределённых конфигураций с несколькими активными master-серверами, для поддержания которых в синхронизированном состоянии используется алгоритм достижения консенсуса Raft.

Из архитектурных особенностей OrioleDB также можно отметить чтение страниц с данными без использования блокировок, прямое связывание страниц в оперативной памяти со страницами в постоянном хранилище, применение механизма CoW (copy-on-write) при фиксации контрольных точек для создания непротиворечивых снапшотов в любой момент времени. Для идентификаторов транзакций задействованы 64-разрядные значения, применение которых решает проблему с переполнением счётчиков.

Применение OrioleDB позволяет не только избавиться от необходимости совершения ручных операций и упростить сопровождение СУБД, но и повысить производительность. Например, более высокая производительность достигается благодаря обновлению данных по месту, что позволяет обойтись без изменения индексов, не связанных с хранением изменённого значения. Движок также поддерживает хранение данных в сжатом виде (сжатие производится при помощи алгоритма ZSTD и реализовано на уровне блоков переменного размера), что позволяет в 4-5 раз сократить размер базы на диске.

Тестирование конфигурации из одной таблицы с 5 индексами при использовании OrioleDB показало увеличение TPS (число обрабатываемых транзакций в секунду) в 5 раз, снижение нагрузки на CPU в 2.3 раза, снижение числа операций ввода/вывода на каждую транзакцию в 22 раза и отсутствие раздувания размера индексов и таблиц.



  1. Главная ссылка к новости (https://www.orioledata.com/blo...)
  2. OpenNews: Выпуск СУБД OrientDB 2.0
  3. OpenNews: Первый стабильный выпуск FerretDB, реализации MongoDB на базе СУБД PostgreSQL
  4. OpenNews: Выпуск IvorySQL 2.1, надстройки над PostgreSQL для обеспечения совместимости с Oracle
  5. OpenNews: Релиз СУБД PostgreSQL 15
  6. OpenNews: Открыты исходные тексты СУБД CitusDB
Лицензия: CC BY 3.0
Тип: Программы
Короткая ссылка: https://opennet.ru/59453-orioledb
Ключевые слова: orioledb, postgresql, vacuum
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (96) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (2), 11:52, 17/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Выглядит интересно и многообещающе, но. Всё прочитал, но так и не увидел, какие уровни изоляции транзакций поддерживаются. Есть смутное подозрение, что такие бенчмарки за счёт сваливания в read uncommitted по умолчанию, хорошо если не так.

    > OrioleDB supports just B-tree indexes. OrioleDB roadmap contains the implementation of analogs of GiST, GIN, and BRIN.

    Большой вопрос, получится ли у них с такой архитектурой реализовать эффективный GIN/GiST, выглядит как нетривиальная задача. Это все же одна из киллер фич Постгреса, в ряде случаев незаменимая.

     
     
  • 2.9, www2 (??), 12:34, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Дурилка, а undo log тогда зачем делать, если будет read uncommited?
     
     
  • 3.47, Аноним (2), 16:44, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Вопрос не в том, зачем делать (понятно зачем, и понятно, что как минимум read committed там есть), а в том, какой был уровень изоляции, когда делали бенчмарки.

    Учитывая, что в postgresql read uncommitted вообще не реализован и работает как read committed, это хороший способ незаметно считерить.

    Хорошо помню бенчмарки mongodb, которые "всех рвали" просто потому, что в дефолтной конфигурации Монга отдавала успешный ответ сразу после получения данных сервером.

     
     
  • 4.95, Alyosha (?), 23:30, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    "Хорошо помню бенчмарки mongodb, которые "всех рвали" просто потому, что в дефолтной конфигурации Монга отдавала успешный ответ сразу после получения данных сервером."

    А ссылок на обсжудения/разоблачения у вас не остались?

    ps.Мимо проходил

     
     
  • 5.99, пох. (?), 10:44, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    даже если найдется - какой в таких прямых сравнениях смысл? Вы document db использовать вместо реляционной всерьез собрались, или наоборот?

     
     
  • 6.103, Дмитрий (??), 17:39, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Есть класс программ которые можно реализовать и так и так. Почему же не выбрать более лучший по каким то критериям вариант?
     
     
  • 7.104, пох. (?), 17:55, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > Есть класс программ которые можно реализовать и так и так. Почему же
    > не выбрать более лучший по каким то критериям вариант?

    тогда не исключено что тебе недефолтные настройки и не пригодятся и в правильной реализации все и так будет работать.

    (т.е. хватит просто избегать мультидокументных транзакций и не забывать про "majority" там где действительно он нужен)

    Т.е. сравнивать надо будет не два решения в лоб, а две вообще совершенно разных программы.

     
     
  • 8.107, Дмитрий (??), 20:02, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сильно зависит от программы В некоторых случаях можно сравнить Запись в файл и... текст свёрнут, показать
     
  • 3.113, Аноним (113), 12:49, 24/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Дурилка, а где связь между undo и read uncommited? Read uncommited не отменяет необходимость как-то rollback-и обслуживать.
     
  • 2.34, ыы (?), 14:08, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    " чтение страниц с данными без использования блокировок"
     
     
  • 3.41, Аноним (41), 15:01, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    В Postgres как и в большинстве современных баз транзакции изолируют не через lock, а через MVCC
     
     
  • 4.114, Аноним (113), 12:53, 24/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Serializable ты иначе, чем через блокировки на уровне строк/страниц не сделаешь. Ну в Postgres-е SS реализован как раз через блокировки.
     
     
  • 5.121, omnomnom (?), 23:07, 15/08/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Предикатные блокировки в PG непосредственно блокировками не являются, это просто механизм обнаружения конфликтов, там ничего не блокируется.
     
  • 3.48, Аноним (2), 16:45, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Ну это как раз нормально, это же полноценный версионный движок, а не мыскль с myisam
     
  • 3.52, None (??), 17:12, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    LW Locks же
     

  • 1.4, Аноним (4), 12:06, 17/07/2023 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –7 +/
     
     
  • 2.10, www2 (??), 12:35, 17/07/2023 Скрыто модератором
  • +1 +/
     
  • 2.13, Аноним (13), 12:43, 17/07/2023 Скрыто модератором
  • +2 +/
     
     
  • 3.20, пох. (?), 12:51, 17/07/2023 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (3)

  • 1.5, пох. (?), 12:21, 17/07/2023 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –2 +/
     
     
  • 2.7, Аноним (7), 12:23, 17/07/2023 Скрыто модератором
  • +6 +/
     
     
  • 3.8, пох. (?), 12:29, 17/07/2023 Скрыто модератором
  • –9 +/
     
     
  • 4.15, Ананий (?), 12:45, 17/07/2023 Скрыто модератором
  • +2 +/
     
     
  • 5.17, пох. (?), 12:47, 17/07/2023 Скрыто модератором
  • –4 +/
     
     
  • 6.21, Ананий (?), 12:52, 17/07/2023 Скрыто модератором
  • +1 +/
     
     
  • 7.26, пох. (?), 13:25, 17/07/2023 Скрыто модератором
  • –1 +/
     
  • 4.49, Аноним (2), 16:51, 17/07/2023 Скрыто модератором
  • –2 +/
     
     
  • 5.65, пох. (?), 18:34, 17/07/2023 Скрыто модератором
  • +1 +/
     
     
  • 6.73, Ann (??), 20:36, 17/07/2023 Скрыто модератором
  • +/
     
     
  • 7.79, пох. (?), 21:45, 17/07/2023 Скрыто модератором
  • –2 +/
     
     
  • 8.82, Аноним (82), 22:37, 17/07/2023 Скрыто модератором
  • –1 +/
     
     
  • 9.83, пох. (?), 22:46, 17/07/2023 Скрыто модератором
  • –1 +/
     
  • 6.75, Аноним (2), 20:54, 17/07/2023 Скрыто модератором
  • +2 +/
     
     
  • 7.85, пох. (?), 23:03, 17/07/2023 Скрыто модератором
  • +/
     
  • 2.23, BeLord (ok), 13:10, 17/07/2023 Скрыто модератором
  • +/
     
     
  • 3.24, пох. (?), 13:23, 17/07/2023 Скрыто модератором
  • –1 +/
     

     ....ответы скрыты модератором (16)

  • 1.6, пох. (?), 12:23, 17/07/2023 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • –3 +/
     
     
  • 2.11, YourMama (?), 12:37, 17/07/2023 Скрыто модератором
  • +/
     
     
  • 3.12, пох. (?), 12:40, 17/07/2023 Скрыто модератором
  • +1 +/
     
     
  • 4.14, www2 (??), 12:44, 17/07/2023 Скрыто модератором
  • +1 +/
     
  • 4.40, Аноним (40), 14:51, 17/07/2023 Скрыто модератором
  • +1 +/
     
     
  • 5.42, пох. (?), 15:21, 17/07/2023 Скрыто модератором
  • +/
     
     
  • 6.55, Аноньимъ (ok), 17:36, 17/07/2023 Скрыто модератором
  • +/
     
     
  • 7.59, пох. (?), 17:59, 17/07/2023 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (7)

  • 1.16, лютый арчешкольник... (?), 12:47, 17/07/2023 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • +1 +/
     
     
  • 2.18, пох. (?), 12:49, 17/07/2023 Скрыто модератором
  • +9 +/
     
  • 2.22, funny.falcon (?), 13:10, 17/07/2023 Скрыто модератором
  • +1 +/
     
     
  • 3.25, пох. (?), 13:24, 17/07/2023 Скрыто модератором
  • –1 +/
     
  • 2.28, OpenEcho (?), 13:31, 17/07/2023 Скрыто модератором
  • +1 +/
     
  • 2.76, YetAnotherOnanym (ok), 21:07, 17/07/2023 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (5)

  • 1.19, Quad Romb (ok), 12:50, 17/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    "не требующего внесения изменений в основную кодовую базу PostgreSQL"
    Интересно.
    Когда я смотрел на Oriole последний раз - ему требовалось также патчить исходники PG.
    Звучит заманчиво, конечно.
     
     
  • 2.29, funny.falcon (?), 13:38, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Т.к. автор Ориоле - один из коммитеров постгресса, видимо ему удалось протолкнуть нужные патчи в ядро. Я предполагаю, не проверял.
     
     
  • 3.38, Quad Romb (ok), 14:46, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > Т.к. автор Ориоле - один из коммитеров постгресса, видимо ему удалось протолкнуть
    > нужные патчи в ядро. Я предполагаю, не проверял.

    Я вот то же самое подумал.
    И тоже не проверял.
    На ютуб-канале rupostgres есть интервью с разработчиком "Александр Коротков: Наболевшие проблемы PostgreSQL". После этого интервью стал посматривать на проект.
    Если он всё-таки осилил сделать всё это только одним подключаемым расширением - он очень большой молодец, и надеюсь, у него теперь будет достаточно масла, чтобы мазать на свой хлеб.

     
     
  • 4.51, xrensgory (ok), 17:12, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +3 +/
    На хлеб он будет мазать масло поха, пох-то теперь без работы считай остался. Учит как произносить "свободная касса". бггг
     
     
  • 5.66, пох. (?), 18:46, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > На хлеб он будет мазать масло поха,

    кто ж ему масло-то даст?! Смотри-смотри - 6ешплатное! Налетай, взять-взять-взять!

    Кончатся у него гранты - я не гордый, следующую смену за кассой пусть тоже занимает, все равно один не осилю четыре подряд. Но чур ему ночную.


     
     
  • 6.86, Аноним (2), 23:31, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Та не, там не гранты, там попытка в бизнес. Уже предлагают саппорт и database as a service (пока робко предлагают, скорее тестируют интерес). Не взлетит - ну пойдет какой-нибудь EnterpriseDB за зарплату пилить.
     
     
  • 7.89, пох. (?), 08:46, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ну тогда моему маслу точно ничего не угрожает.

    Поконкурировать с тем же DO - у которого сто лет как есть - это надо найти совсем уж наивного ло...инве...не, все же лоxa.
    А украинский флажок напрочь исключает вариант поконкурировать там куда конкурентов не пускают (и в целом правильно, там масло все равно товарищмайор слопает и на сдачу дачку себе прикупит, на Тенерифе)

    P.S. кто вдруг не видел как у DO сделана дизастер рекавери - сходите поржать. Не, от замены бэкэнда легче ему не станет, насколько я догадываюсь. Тут все политбюро надо повесить, и генерального секретаря прибить.

     
     
  • 8.93, Аноним (2), 17:21, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так он раньше в Постгрес Про работал Раз уехал в США и повесил флажок, значит, ... текст свёрнут, показать
     
     
  • 9.94, пох. (?), 17:30, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Дык может дело не в заинтересован, а в том что вариант в Украину замаячил конк... текст свёрнут, показать
     
     
  • 10.96, Аноним (2), 04:43, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    В середине 2020 года замаячил Да профессор телепат... текст свёрнут, показать
     
     
  • 11.102, пох. (?), 15:26, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    да довольно много их было, тех телепатов Не всем удалось ловко телепнуться на у... текст свёрнут, показать
     
  • 4.71, funny.falcon (?), 20:18, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    На https://news.ycombinator.com/item?id=36740921 Александр отвечает: нет, пока патч в ядро нужен. Но надеется в ближайшее время донести его в ядро, а потом и сам движок.
     
     
  • 5.72, Quad Romb (ok), 20:24, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    > На https://news.ycombinator.com/item?id=36740921 Александр отвечает: нет, пока патч
    > в ядро нужен. Но надеется в ближайшее время донести его в
    > ядро, а потом и сам движок.

    Да, спасибо за ссылку, прочитал.
    Ну, всё равно очень большое дело сделано.
    На днях попробую собрать и посмотреть как оно в деле.

     
  • 5.80, Аноним (2), 22:08, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Там патч расширяет extension API, так что это не костыль типа 1С-овских патчей, а универсальное улучшение апстрима в чистом виде, да и автор - опытный коммиттер в Постгрес. Такое в апстрим примут.
     

  • 1.27, Аноним (27), 13:25, 17/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Уже круче Оракла.
     
     
  • 2.33, Аноним (33), 14:05, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Инженегры оракела уже добавили в код постгри пару мин замедленного действия. Активируют в нужный момент, чтобы акции оракела взлетели до небес.
     
     
  • 3.92, Golangdev (?), 16:12, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Пруфы, в виде ссылок на коммиты, добавляющие это ?
     
  • 2.64, Аноним (64), 18:16, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    ? Оракл изначально данные in-place апдейтит, при создании БД у него даже есть параметр (PCTFREE), указывающий в процентах, какое кол-во пространства блока резервировать для будущих изменений, чтобы при раздувании размера строк (кортежей) апдейтами не пришлось эти строки куда-то релокейтить. Когда-то по-умолчанию это было 10% кажись, но ты можешь задать своё значение. Т.е. когда в блоке строками будет забито 90% места, блок перестает быть доступным для создания в нем новых строк.
     
  • 2.110, ptr (??), 16:41, 21/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Главное, чтобы остался выбор. Потому что VACUUM имеет не только недостатки, но и преимущества.
     

  • 1.31, Аноним (31), 14:00, 17/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Верной дорогой двигаются. Еще несколько сот раз таких же продвижений, и постгря достигнет уровня оракель ДБ.
     
     
  • 2.35, ыы (?), 14:14, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    "чтение страниц с данными без использования блокировок"
    что вы, ораклю до такого пехом переть и переть.
     
     
  • 3.37, Простоник (ok), 14:38, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    С точностью до наоборот.PostgreSQL со временем приближается к Oracle.  Non-blocking read - стандартное поведение DBMS Oracle. Блокировки на уровне строк. Этот  механизм давно скопировали в П.
     
     
  • 4.45, ыы (?), 15:33, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Но вы же понимаете разницу между:
    "неблокирующее чтение"
    и "чтение без блокировок"?
     
     
  • 5.91, Прохожий (??), 12:45, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    А в чем она заключается в данном случае?
     
  • 4.118, Аноним (113), 13:06, 24/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    В Оракле нет Serializable честного. Поэтому и блокировки не нужны. В Слоне блокировки нужны только в режиме Serializable. И то, не всегда.
     
  • 3.81, Аноним (2), 22:11, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    В Оракле как раз undo log всегда был. Только там он туповат, если много параллельных транзакций, при переполнении буфера лови роллбэк. Тут такой проблемы нет, упрется только в диск разве что.
     
     
  • 4.90, Простоник (ok), 09:58, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Я сегменты отката ещё помню, потом видел undo tablespace, а вот undo log ни разу не видел. А они точно бывают?
     
     
  • 5.101, vvm13 (?), 12:16, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Почему бы и нет? У DB2 в транзакционном логе есть undo и redo данные. А тут redo уже есть в WAL, так что undo, надо думать, просто отдельно положили.
     
     
  • 6.105, Простоник (ok), 18:44, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Это потому что DB2 реализует другую стратению  изоляции транзакций, только для этого и нужно. В Oracle undo отдельно положили, потому что пр-другому просто не нужно  было.
     
     
  • 7.106, vvm13 (?), 19:14, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    У поздних DB2 тоже сделали "мультиверсионность", причём undo tablespace для этого не вводили, а воспользовались данными из транзакционных логов. В самом деле, undo-данные нужны и они есть, так какая разница, откуда они будут взяты?
     
     
  • 8.108, Простоник (ok), 20:59, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Потому что по-другому было нельзя Пришлось обеспечивать совместимость механизмо... текст свёрнут, показать
     
  • 6.117, Аноним (113), 13:03, 24/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Это очень неудачное решение. "Время жизни" реду- и анду-данных чаще всего радикально отличается. И хранить их в одной хранилке крайне нерационально.
     
  • 4.115, Аноним (113), 13:01, 24/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Только не всегда, а никогда не было и нет.
     

  • 1.44, Аноним (44), 15:30, 17/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Если в слове Oriole сделать 2 ошибки, получится Oracle
     
     
  • 2.54, xrensgory (ok), 17:16, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +2 +/
    А если в слове Аноним сделать 6 ошибок то получится слово Oracle
     
     
  • 3.67, Аноним (67), 18:56, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Если *** то это уже не ***!
     

  • 1.58, Аноним (58), 17:49, 17/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Проще запилить новый бекенд чем читатать документацию к старому
     
  • 1.74, Tron is Whistling (?), 20:51, 17/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    Ещё немножко, и они притащат в постгрю innodb. Но зачем, если оно уже есть?
     
     
  • 2.87, Аноним (2), 23:59, 17/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    На том поле, где InnoDB хорош (стандартная реляционка с btree-индексами), это лучше, чем InnoDB. Там на гитхабе есть документация архитектуры.
     
     
  • 3.88, Tron is Whistling (?), 08:11, 18/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Пока ещё рано говорить о "лучше", по мере вылизывания сырой альфы будет напихано гораздо больше веселья.
     
  • 2.97, bOOster (ok), 06:03, 19/07/2023 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Даже близко ниче общего нет в реализации. InnoDB это старье из 70х годов базирующиеся на канонических трудах Кнута, Вирта и т.п.
     
  • 2.116, Аноним (113), 13:01, 24/07/2023 [^] [^^] [^^^] [ответить]  
  • +/
    Ино это Оракл, напомню.
     

  • 1.98, bOOster (ok), 06:05, 19/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Что-то слишком хорошо, чтобы быть правдой :)
     
  • 1.112, Пряник (?), 11:24, 24/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хм... я думал особенность PostgreSQL в отличии от MySQL как раз в отсутствии разнообразных движков, в результате чего в слоне лучше работает кластеризация.
     
  • 1.119, Аноним (113), 13:09, 24/07/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Можно подумать, что все прочие, в том числе и крайне коммерческие, вендоры СУБД не делают утилизацию освободившегося пространства или изменений по месту по недомыслию и общей тупости. У всего этого микроменеджмента есть крайне высокая цена. Которая в проде чаще всего совершенно не оправдана.
     
  • 1.120, Аноним (120), 09:03, 13/08/2023 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Интересно, я один вижу, что cpu usage не снизилось, а повысилось, судя по сравнительным графикам?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2023 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру