Новые функции, включенные в Oracle Database 19c, сделали СУБД еще полезнее для поддержки бизнеса в цифровую эпоху. Oracle Database 19c предлагает впечатляющий набор инноваций и является стабильной версией, рассчитанной на длительное использование.
Функция Automatic Indexing создает индексы автоматически с использованием алгоритмов машинного обучения, причем, как показали тесты, она часто справляется с этой задачей лучше, чем человек. «Впервые база данных может сама определить оптимальный набор индексов, — пояснил Доминик Джайлс, главный менеджер Oracle по продуктам Oracle Database. — При их создании учитываются структура данных, сами данные и запросы». Это означает, что «базу данных можно создать и начать использовать вовсе без каких-либо индексов или с очень небольшим набором индексов. База данных проанализирует ресурсоемкие запросы, чтобы понять, какие индексы потенциально нужны, проверит полезность отобранных кандидатов, а затем сама построит индексы, причем все это займет меньше времени, чем создание индексов вручную».
Эта функция будет прекрасно работать и с базой данных, для которой индексы уже построены. В этом случае автоматическое индексирование может помочь в тонкой настройке набора индексов в БД. После создания индексов база данных постоянно проверяет их использование и удаляет ненужные. Это важно, потому что с течением времени индексы накапливаются — крупные коммерческие приложения, работающие с Oracle Database, могут создавать за годы использования тысячи таких индексов. «Часто они создаются для отчетов или пакетных заданий, в которых уже больше нет нужды», — отметил Доминик Джайлс. Это не так безобидно, поскольку индексы увеличивают потребность базы данных в вычислительных ресурсах и ресурсах хранения.
Active Data Guard DML Redirect помогает эффективнее использовать резервную базу данных — зеркальную копию рабочей базы данных, предназначенную для аварийного восстановления. «Эта часть инфраструктуры дорого обходится нашим корпоративным клиентам, — сказал Доминик Джайлс. — Она занимает место и увеличивает энергопотребление».
Чтобы помочь клиентам эффективнее ее использовать, в Oracle Database 11g корпорация Oracle предложила опцию Oracle Active Data Guard, с помощью которой можно открывать резервную базу данных на чтение, создавать на ней отчеты и выполнять бэкапы.
В Oracle Database 19c реализована важная дополнительная возможность Active Data Guard DML Redirect, которая позволяет изменять данные в резервной базе данных. Как объяснил Доминик Джайлз, одна из причин такого нововведения в том, что «многие приложениям при создании отчетов требуется не только читать данные, но и делать некоторые записи в базе данных. С помощью Active Data Guard DML Redirect операции записи немедленно и прозрачно перенаправляются в первичную базу данных и после занесения в нее реплицируются в резервную БД. С точки зрения пользователя это выглядит так, как будто он обновляет данные в резервной базе данных».
Active Data Guard DML Redirect работает одинаково хорошо при размещении резервной базы данных как в локальной среде, так и в облаке, а также когда и основная, и резервная базы данных выполняются в облачной среде. «Это позволяет клиентам более гибко и креативно использовать данный дополнительный ресурс», — отметил Доминик Джайлс.
Клиенты Oracle постоянно сталкиваются с проблемой хранения растущих объемов данных, причем для соответствия требованиям регуляторов, данные подчас должны храниться годами и находиться всегда под рукой. Гибридные секционированные таблицы в Oracle Database 19c помогут справиться с этой задачей.
Гибридные секционированные таблицы (Hybrid Partitioned Tables) позволяют совмещать в рамках одной таблицы как секции, которые находятся внутри стандартного табличного пространства, так и секции, которые размещаются на внешних дешевых системах хранения вне базы данных.
«Это означает, что все возможности аналитики СУБД Oracle можно использовать даже тогда, когда данные размещены на внешней недорогой системе хранения», — пояснил Доминик Джайлс. Эти системы хранения данных могут располагаться как в локальном ЦОД клиента, так и в облаке. «Привлекательность такой модели в том, что некоторые секции таблицы, размещенной в БД вашего ЦОД могут лежать в облаке», — говорит он.
Данные вне базы данных Oracle доступны только для чтения и не нуждаются в регулярном бэкапе, но к ним можно обращаться из Oracle Database. «Это очень привлекательное решение для управления жизненным циклом данных, и клиенты, с которыми я общался, весьма заинтересованы в этой технологии», — рассказал Доминик Джайлс.
Поддержка JSON появилась еще в Oracle Database 12c, где было реализовано нативное хранилище документов JSON и SQL-доступ. Она получила дальнейшее развитие в версии 18c с внедрением высокопроизводительной аналитики для документов JSON . «Это очень эффективное средство для аналитики документов JSON — оно работает столь же быстро, как если бы данные JSON хранились в строках и столбцах таблицы базы данных», — добавил Доминик Джайлз.
В Oracle Database 19c корпорация Oracle улучшила поддержку JSON. Для традиционных разработчиков все стало еще проще.
«Мы улучшили и упростили синтаксис наших функций JSON и реализовали возможность частичного обновления JSON. Это позволяет изменить один атрибут большого документа JSON, не обновляя его целиком», — сообщил Доминик Джайлс.
Кроме того, в Oracle Database 19c появилась поддержка интерфейсов прикладного программирования Simple Oracle Document Access (SODA) для Java, Python, C и Node.js.
«Вы можете работать с широким спектром легких API-интерфейсов NoSQL, которые получают строки из документов JSON в базе данных», — сказал Доминик Джайлс.
Общая производительность витрины данных или хранилища данных может резко упасть при частом выполнении запросов с очень высокими требованиями к ресурсам ЦПУ и вводу-выводу. СУБД Oracle Database 19c «может автоматически помещать эти запросы в карантин (Query Quarantine) и блокировать их выполнение, если уровень потребления ресурсов превосходит заданные для них пороговые значения». Как отметил Доминик Джайлс, это позволяет обеспечить стабильную работу базы данных для всех пользователей.
Новые механизмы и возможности важны, но также важна стабильность приложений и локальных инсталляций баз данных — и Oracle Database 19c ее обеспечивает.
«Стабильность является основной целью Oracle Database 19c — это релиз с долгосрочной поддержкой, — сказал Доминик Джайлс. — Циклы обновления локальных СУБД у наших клиентов достаточно длительные, и многие клиенты ждали релиз Oracle Database 19c, чтобы перейти на него с Oracle Database 11g или Oracle Database 12c».