Система управления базами данных Oracle Database считается одним из самых продвинутых профессиональных инструментов такого типа из имеющихся сейчас на рынке. По сравнению с большинством своих конкурентов она обладает заметно более богатым функционалом, что не мешает ей ещё и быть одной из самых быстрых СУБД, что особенно важно при работе с крупными и очень крупными БД.
Однако это общие слова, и можно поинтересоваться: а какие конкретные задачи можно решать с помощью этой СУБД? Какие именно преимущества она имеет перед альтернативным программным обеспечением?
Что умеет Oracle Database
Системы управления базами данных можно разделить на две категории: простые и сложные. Простые легко может развернуть и использовать кто угодно – они не требуют особых знаний, а для управления ими не нужен администратор на стороне пользователя. Примером могут служить Microsoft Excel, а также широко распространённая в 90-е DBASE. За подобную доступность приходится платить тем, что для реализации хранения и использования критических для бизнеса и других организаций данных им не хватает ни функционала, ни надёжности, ни пропускной способности.
Для этого существуют профессиональные сложные СУБД, к которым и относится Oracle. В рамках небольшой статьи невозможно охватить все задачи, которые она может решать, поэтому ограничимся несколькими примерами.
- Сбор статистики в реальном времени. То, как быстро будет выполнен запрос, зависит от плана его выполнения, а качество плана, составленного оптимизатором, в свою очередь, в большой степени зависит от статистики. Чем она актуальнее, тем лучше, и поэтому её необходимо регулярно обновлять. Однако здесь возникает дилемма – сбор статистики замедляет работу БД, а если собирать её в период обслуживания (например, по ночам), то она будет сильно устаревать за промежуток между двумя сборами. Для решения этой проблемы был введён сбор статистики в реальном времени – а чтобы не замедлять работу, собирается только базовая, которая больше всего влияет на качество составления планов;
- Карантин ресурсоёмких запросов. Отдельные особо сложные запросы могут чрезмерно нагружать СУБД, что сказывается на работе других пользователей. Oracle позволяет в таком случае помещать их в карантин, чтобы прервать их и высвободить ресурсы для других задач;
- Блокчейн-таблицы. Не отличаются от обычных таблиц, но открыты только на добавление и удаление строк – изменять уже помещённые данные в них нельзя. Как и в стандартном блокчейне, строки объединяются в цепочки – для гарантии неизменности данных, потому что для изменения одной строки нужно перестраивать цепочку полностью. Это простой и удобный способ организации блокчейна для приложений, которые не доверяют друг другу;
- Автоматизация машинного обучения. Функционал продвинутой аналитики входит в состав этой СУБД по умолчанию и предоставляет богатые возможности для создания и применения моделей машинного обучения. Однако, чтобы заниматься этим самостоятельно, требуется высокая квалификация и опыт в этой области. Опция AutoML позволяет существенно упростить создание таких моделей за счёт автоматизации части задач и выдачи рекомендаций пользователю.
Многофункциональность Oracle
Как видно, СУБД Oracle позволяет выполнять многие задачи, в том числе и те которые, на первый взгляд, не входят в компетенцию подобных инструментов, а её создатели продолжают включать в неё новые модули, принимающие во внимание последние и самые перспективные разработки в области ИТ. Следует ожидать, что в обозримом будущем она сохранит свои лидирующие позиции.