Ingres (database)

Продукт
Разработчики: Ingres
Дата последнего релиза: 12 октября 2010 года
Технологии: СУБД

Содержание

О продукте

Ingres (произносится «ingress») — коммерчески поддерживаемая реляционная СУБД с открытыми исходными текстами. Ingres была создана как научно-исследовательский проект в Калифорнийском университете в Беркли в начале 1970-х годов. Закончился этот проект в начале 1980-х. Исходный код, как и для других проектов того же происхождения, был доступен за минимальную плату под лицензией BSD.

Postgres (Post Ingres) (позже развился в PostgreSQL), несмотря на своё название, не основан на Ingres.

История

В 1973 году в IBM приступили к разработке новой СУБД System R и научно-исследовательская группа, занимавшаяся данным проектом, выпустила комплект документации с описанием создаваемой системы. Двое учёных в Беркли — Майкл Стоунбрейкер (Stonebraker) и Юджин Вонг (Wong) — заинтересовались результатами своих коллег из IBM и приняли решение начать свой собственный проект по созданию реляционной СУБД.

Этот проект использовался для исследования географической базы данных группой экономики в Беркли и был назван «Ingres» (INteractive Graphics REtrieval System — диалоговая графическая система поиска). В дальнейшем проектом заинтересовались в трёх военных ведомствах: в Военно-воздушных и Сухопутных силах и Военно-морском флоте.

Получив стороннее финансирование, Ingres был разработан в течение середины 1970-х годов группой студентов и учёных. Ingres проходил через эволюцию, сопровождающуюся доработками, как и System R, с ранним прототипом в 1974 году. Затем Ingres был распространён среди небольшого количества пользователей и участников проекта. Прототип многократно переписывался, чтобы включить накопленный опыт, замечания пользователей и новые идеи. Подобно System R, Ingres работал в системах «низкого уровня» — в операционной системе Unix на машинах DEC.

Версии

Ingres Database 10 (последняя версия)

Ключевые улучшения:

  • Добавлен комплекс инструментов и библиотек Ingres Migration Tool Set для упрощения миграции на Ingres c других СУБД, поддерживается оптимизация и адаптация схем хранения данных от СУБД MySQL, Oracle, MS SQL и Sybase;

  • Реализована поддержка мультиверсионного метода организации конкурирующего доступа к данным (MVCC, multi-version concurrency control), позволяющего избавиться от блокировок при выполнении операций чтения (всегда отдаётся текущий "снапшот" состояния, вносимые изменения будут отражены уже в другом "снапшоте"). Переход к MVCC позволил значительно увеличить производительность многопользовательских систем и конфигураций с большим числом параллельных запросов;

  • Поддержка шифрования данных на уровне столбцов, позволяет обеспечить хранение в зашифрованном виде информации в отдельных столбцах, содержащих приватные или секретные данные, такие как номера кредитных карт или PIN-коды. При этом данные сохраняются в зашифрованном виде не только в харнилище, но и в логах транзакций, журналах и контрольных точках. В качестве алгоритма допустимо использование 128-, 192- и 256-битного шифрования Advanced Encryption Standard (AES).

  • Поддержка сегментирования (partitioning) таблиц, логического разбиения больших таблиц на части, размещаемые на разных дисках/файловых системах;

  • С целью повышения совместимости с другими СУБД добавлены новые типы данных, например, ранее не реализованный тип BOOLEAN;

  • Улучшение механизмов по загрузке больших наборов данных в БД. Например, процесс загрузки данных через стандартный драйвер JDBC 4.0 ускорен на 50%; директива COPY теперь поддерживает запись и чтение файлов в форматах CSV и SSV; скорость выполнения операции "COPY FROM" из текстового файла увеличена почти в два раза;

  • Добавлена поддержка режима пакетного выполнения запросов, при котором вначале выполняется определенный набор запросов и только затем сервер возвращает общий ответ об успешности операции клиенту. В пакетном режиме допускается только использование выражений, не возвращающих данных, например, INSERT и DELETE (использование SELECT недопустимо);

  • Добавлена поддержка скалярных подзапросов, при которых производится выборка только одного столбца или выражения и возвращается только одна строка. Например: "SELECT a, (SELECT MAX(salary) FROM emp), b, ..." или "SELECT ... FROM table1, (SELECT a FROM table2 WHERE col = '123')...";

  • Размер имен столбцов, таблиц, индексов, представлений, переменных и т.п. увеличен с 32 до 256 символов;

  • Добавлена поддержка переименования таблиц и столбцов при помощи конструкций "ALTER TABLE table_name RENAME TO new_table_name", "ALTER TABLE table_name RENAME [COLUMN] old_column_name TO new_column_name" и "RENAME TABLE table_name TO new_table_name";

  • Добавление новых математических функций GREATEST, GREATER, LEAST, LESSER; для совместимости с MySQL, MS SQL, Informix и DB2 добавлена функция LAST_IDENTITY (возвращает последний сгенерированный идентификатор); для совместимости с Oracle добавлены функции NVL и NVL2 (позволяют возвращать указанный аргумент, если другой аргумент NULL); функции для генерации и проверки типовых проверочных кодов - GENERATE_DIGIT и VALIDATE_DIGIT;

  • Добавлена поддержка 64-разрядных ОС Windows;

  • Для Unix-платформ улучшена производительность прямого ввода/вывода и реализована возможность предварительного выделения места под создаваемые файлы для файловых систем с поддержкой функции fallocate.



СМ. ТАКЖЕ (1)


Подрядчики-лидеры по количеству проектов

За всю историю
2022 год
2023 год
2024 год
Текущий год

  SAP CIS (САП СНГ) (38)
  Softline (Софтлайн) (35)
  РДТЕХ (33)
  BeringPro (БерингПойнт) ранее BearingPoint Russia (28)
  ФОРС - Центр разработки (25)
  Другие (755)

  Ред Софт (Red Soft) (1)
  InnoSTage (Инностейдж) (1)
  Netrika (Нетрика) (1)
  Сбербанк-Технологии (СберТех) (1)
  Nexign (Нэксайн) ранее Петер-Сервис (1)
  Другие (20)

  Arenadata (Аренадата Софтвер) (3)
  Тантор Лабс (Tantor Labs) (3)
  ФОРС - Центр разработки (2)
  Философия.ИТ (1)
  GlowByte, ГлоуБайт (ранее Glowbyte Consulting, ГлоуБайт Консалтинг) (1)
  Другие (16)

  Arenadata (Аренадата Софтвер) (7)
  TData (ТДата) (5)
  GlowByte, ГлоуБайт (ранее Glowbyte Consulting, ГлоуБайт Консалтинг) (2)
  Диасофт (Diasoft) (2)
  Сбербанк-Технологии (СберТех) (2)
  Другие (19)

  Arenadata (Аренадата Софтвер) (3)
  Газинформсервис (ГИС) (1)
  Navicon (Навикон) (1)
  VK Tech (ВК Технологии) (1)
  Другие (1)

Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров

За всю историю
2022 год
2023 год
2024 год
Текущий год

  Oracle (44, 179)
  SAP SE (6, 178)
  Microsoft (23, 142)
  PostgreSQL Global Development Group (14, 135)
  Постгрес профессиональный (ППГ, Postgres Professional) (6, 43)
  Другие (268, 276)

  PostgreSQL Global Development Group (4, 9)
  Постгрес профессиональный (ППГ, Postgres Professional) (2, 6)
  VK Tech (ВК Технологии) (2, 3)
  Arenadata (Аренадата Софтвер) (3, 2)
  Oracle (2, 2)
  Другие (9, 9)

  PostgreSQL Global Development Group (3, 12)
  Постгрес профессиональный (ППГ, Postgres Professional) (1, 6)
  Apache Software Foundation (ASF) (3, 4)
  Arenadata (Аренадата Софтвер) (3, 3)
  Тантор Лабс (Tantor Labs) (2, 3)
  Другие (8, 10)

  PostgreSQL Global Development Group (4, 13)
  Arenadata (Аренадата Софтвер) (3, 9)
  VMware (2, 9)
  Постгрес профессиональный (ППГ, Postgres Professional) (2, 6)
  TData (ТДата) (2, 4)
  Другие (7, 12)

  Arenadata (Аренадата Софтвер) (3, 5)
  PostgreSQL Global Development Group (2, 2)
  Газинформсервис (ГИС) (1, 1)
  Другие (0, 0)

Распределение базовых систем по количеству проектов, включая партнерские решения (проекты, партнерские проекты)

За всю историю
2022 год
2023 год
2024 год
Текущий год

  Oracle Database - 143 (106, 37)
  PostgreSQL СУБД - 135 (83, 52)
  Microsoft SQL Server - 135 (104, 31)
  SAP NetWeaver Business Warehouse (SAP BW/4HANA) - 103 (103, 0)
  SAP HANA (High Performance Analytic Appliance) - 76 (72, 4)
  Другие 76

  PostgreSQL СУБД - 9 (2, 7)
  Oracle Database - 3 (2, 1)
  Tarantool Платформа in‑memory вычислений - 3 (2, 1)
  VMware Tanzu Greenplum - 2 (0, 2)
  SAP NetWeaver Business Warehouse (SAP BW/4HANA) - 1 (1, 0)
  Другие -5

  PostgreSQL СУБД - 12 (3, 9)
  ClickHouse - система управления базами данных (СУБД) - 2 (2, 0)
  Apache Kafka - 2 (2, 0)
  Apache Hadoop - 2 (1, 1)
  VMware Tanzu Greenplum - 1 (0, 1)
  Другие -7

  PostgreSQL СУБД - 13 (6, 7)
  VMware Tanzu Greenplum - 8 (0, 8)
  RT.Warehouse СУБД - 3 (3, 0)
  Diasoft Digital Q.Database - 3 (3, 0)
  RT.WideStore СУБД - 3 (3, 0)
  Другие -11

  VMware Tanzu Greenplum - 5 (0, 5)
  PostgreSQL СУБД - 2 (1, 1)
  Apache Hadoop - 1 (0, 1)
  Другие -7