Как стать автором
Обновить
0.9

Oracle *

Система управления базами данных

Сначала показывать
Порог рейтинга
Уровень сложности

Иерархическая база данных (продолжение)

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 2.8K

Эта статья посвящена реально работающей информационной системе (ИС), основанной на иерархической модели данных. Скажу точнее - это не просто ИС - это инструмент разработки ИС любого уровня сложности, включая ERP, CRM, PPM и т.д., обладающий полным набором средств разработки (инструментом описания структуры данных, встроенным процедурным языком и языком запросов, инструментом разработки экранных форм, инструментом написания программного кода и т.д).

Во 2-ой части статьи описывается внутреннее устройство ИС.

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 3

Новости

Иерархическая база данных

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 5.7K

Эта статья посвящена реально работающей информационной системе (ИС), основанной на иерархической модели данных. Скажу точнее - это не просто ИС - это инструмент разработки ИС любого уровня сложности, включая ERP, CRM, PPM и т.д., обладающий полным набором средств разработки (инструментом описания структуры данных, встроенным процедурным языком и языком запросов, инструментом разработки экранных форм, инструментом написания программного кода и т.д).

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

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 24

Настройка NVMe over TCP — для тех, кому надо подключить больше 1 диска единственной конфигурации из всех примеров в Сети

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 12K

Технология NVMe через различные фабрики (далее NVMeOF) оформлена в качестве стандарта летом 2016 года, она была встроена в пятую ветку ядра Linux.

Поэтому, когда было решено мигрировать объемные базы данных с легаси-решений на общедоступные платформы, возник вопрос — можно ли применить эту технологию для увеличения дискового пространства для создания зеркал локальных дисков?

Чтобы все зеркала не вышли из строя сразу, принимать такие диски надо бы небольшими группами с нескольких машин из разных стоек. Идея показалась достойной рассмотрения, поэтому создали небольшой стенд.

Меня зовут Алексей Дрожжов, я старший инженер в билайне, и в этом посте расскажу, как мы решали эту задачу.

Задача: подключить много дисков с нескольких серверов

Читать далее
Всего голосов 20: ↑20 и ↓0 +20
Комментарии 8

Oracle/ClickHouse. DWH. Партицирование как средство быстрого обновления данных

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 5.6K

В этой статье хотелось бы рассмотреть такой вопрос - как частичное обновление больших объемов данных в таблицах, которые активно используются пользователями на чтение. Задача является типовой, и с ней сталкивается каждый инженер данных. При этом не важно на какой ступеньке своей карьерной лестницы вы находитесь, Junior или Senior, такие задачи будут.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 4

Истории

Connect by — интересный случай

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 1.5K

Довольно интересный случай выполнения "Ораклового" запроса, который, надеюсь может навести на некоторые рассуждения о runtime механизмах исполнения.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 4

Быстрее быстрого в СУБД

Уровень сложности Сложный
Время на прочтение 14 мин
Количество просмотров 8K

Привет! Меня зовут Сергей, я технический эксперт в компании Bercut. Когда-то увлекался Delphi и J2ME, издал несколько книг на эти темы, и профессионально уже около 20 лет создаю высоконагруженные приложения баз данных, используя для этого PL/SQL и SQL.

В Bercut мы занимаемся разработкой и развитием IT-продуктов и решений для операторов цифровых услуг и мобильных сервисов. Наши системы работают на различном железе, разных СУБД и обслуживают 24x7x365 в режиме онлайн сотни миллионов абонентов по всему миру. И это только кажется, что абонент один раз в день куда-то позвонил и все, больше никакой нагрузки от него нет и никто с ним не работает. На самом деле каждый смартфон каждого абонента непрерывно обменивается данными с сетью, а это все работа инфраструктуры операторов сотовой связи, а значит, нашего ПО. Как же система справляется с таким огромным объемом нагрузки?

Сегодня расскажу, что нужно делать и чего избегать, чтобы построить максимально производительную систему на примере СУБД Оракл.

Читать далее
Всего голосов 35: ↑33 и ↓2 +31
Комментарии 18

Не Oracle единым: как мы обучили сотрудников PostgreSQL и сократили миграции БД на полгода

Время на прочтение 7 мин
Количество просмотров 8.6K

Привет, Хабр! На связи Т1 Цифровая Академия из Холдинга Т1. Сегодня хотим рассказать, как мы добились того, что 233 специалиста перешли с Oracle на PostgreSQL всего за 10 месяцев.

Почему часто лучше обучить, чем нанять

В начале 2022 года внешние условия резко поменяли картину мира и ИТ-отрасль. Во-первых, иностранные поставщики решений — Microsoft, IBM, Cisco, Adobe и не  только — ушли с российского рынка, и ИТ-специалисты остались один на один с отечественными разработками и альтернативными ИТ-решениями, которые приходилось изучать по ходу работы. Во-вторых, в среднем отрасли не хватает около 1 млн ИТ-специалистов, особенно уровня middle и senior. На поиск кандидатов с опытом от 6 лет может уходить до полугода. Такое положение дел заставляет бизнес искать альтернативы найму новых сотрудников с нужными знаниями.

Как представители одного из лидеров ИТ-отрасли мы понимаем, что сейчас постоянный апгрейд знаний в ИТ — основа основ. Компаниям выгодней взрастить текущие кадры, раскрыть их сильные стороны и улучшить навыки, чем потратить от 3-х месяцев на поиск идеального кандидата в условиях нехватки кадров.

Почему переход с одной СУБД на другую — это вызов

Одна российская компания обратилась к нам за помощью — ей требовалось импортозаместить Oracle на PostgreSQL за 1 год. По оценкам команд это заняло бы минимум 1,5 года из-за отсутствия специалистов по PostgreSQL, затяжной миграции и низкой мотивации специалистов. 

Такой длительный переход мог существенно затормозить бизнес-процессы: если в процессе перехода лицензия закончится, то купить новую уже не получится; при отсутствии технической поддержки со стороны Oracle нельзя будет устранить технические ошибки, из-за которых можно остаться без функционирующих БД как у всей компании, так и у заказчиков. Сбои в работе ПО, которые работают на основе БД, могли бы повлечь и более серьезные проблемы. А потеря данных была бы вовсе критической.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 7

Проектирование базы данных в SAP PowerDesigner

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 2.3K

Привет!

Проектирование базы данных - это один из важнейших этапов создания информационной системы. Оно включает в себя определение сущностей, их атрибутов и связей между ними, а также выбор наиболее подходящих типов данных и ограничений целостности.

В данной статье мы рассмотрим процесс проектирования базы данных с нуля (в качестве примера возьмем только один слой БД - витринный, он же Data Mart) с использованием ПО SAP PowerDesigner. В качестве СУБД мы будем использовать Oracle 19c, но вы можете выбрать любую другую, по вашим потребностям (как - об этом чуть ниже).

Рассмотренный в статье инструмент будет интересен системным аналитикам, архитекторам, разработчикам БД и даже бизнес-аналитикам, поскольку помимо создания физических и логических моделей в нем можно рисовать ER-диаграммы, BPMN-модели и многое другое.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 3

Оптимизация SQL-запросов в Oracle

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 15K

Всем привет. Меня зовут Михаил Потапов, я - главный системный аналитик компании "Ростелеком Информационные Технологии". В компании занимаюсь разработкой отчетности для сегмента B2B и проектированием хранилища данных, на базе которого эта отчетность функционирует. Работоспособность каждого отчета напрямую зависит от корректно выстроенных SQL-запросов к базе данных Oracle, поскольку при работе с большими объемами данных скорость выполнения запросов может существенно снижаться. Снижение скорости сильно затрудняет работу с отчетами для конечного пользователя, а в некоторых случаях и вовсе делает ее невозможной.

В этой статье мы рассмотрим основные принципы оптимизации запросов в Oracle SQL, которые помогут ускорить работу с базой данных и повысить эффективность работы. Сразу отмечу, что статья рассчитана на junior и middle-специалистов, которые пишут сложные запросы к базе данных, работают с большими объемами данных и при этом ранее с вопросом оптимизации не сталкивались. Статья не содержит подробное руководство к действию, но описывает базовые основы "культуры кода", соблюдение которых позволит снизить нагрузку на БД и даст возможность более эффективно извлекать из нее данные.

Читать далее
Всего голосов 18: ↑14 и ↓4 +10
Комментарии 23

Использование составных триггеров (compound triggers) Oracle

Время на прочтение 4 мин
Количество просмотров 1.3K

Пример использования триггеров, при взаимном обновлении таблиц. При таких задачах возникает ошибка мутирования таблиц ORA-04091: table is mutating.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 6

Логмайним Оракл

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 1.6K

Перед нашей командой была поставлена задача осуществить миграцию из Oracle в PostgreSQL большой (несколько десятков терабайт) работающей базы с нагрузкой порядка 20 миллионов dml-операций в час и генерацией 2ГБ редо-логов в минуту. Особенность задачи состояла в том, что миграция должна была происходить не один-в-один, а по частям в разные шарды. А какие данные в какие шарды и в каком порядке поедут, определялось бы в процессе самой миграции, по результатам этой миграции, в режиме, так сказать, ручного управления.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 0

Профилирование данных из СУБД Oracle с помощью DataHub и Great Expectations. Часть 2

Уровень сложности Средний
Время на прочтение 11 мин
Количество просмотров 1.5K

В первой части статьи мы подключили DataHub к базе данных Oracle, во второй части рассмотрим подключение Great Expectations к DBMS Oracle, сделаем ряд проверок качества данных, а также отправим результаты проверок в DataHub.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Переезд с Oracle на опенсорсный PostgreSQL: кейс «Магнита»

Время на прочтение 9 мин
Количество просмотров 6.7K

У нас было 2 ТБ данных на 4 информационных системы, 237 таблиц, 221 хранимая процедура, свыше 30 тысяч строк кода, ванильная версия PostgreSQL и потребность в реализации обратного потока данных в Oracle. Не то чтобы мы были экспертами в создании потоков данных между СУБД, но я знал, что рано или поздно нам придется этим заняться. 

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 16

Ближайшие события

Профилирование данных из СУБД Oracle с помощью DataHub и Great Expectations. Часть 1

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 1.3K

Всем привет! В данном цикле статей мы поделимся своими результатами исследования по составлению профиля объектов данных, которые хранятся в RDBMS Oracle с помощью DataHub и интеграции с инструментом Great Expectations. В первой части мы поговорим про проблемы, которые возникли в ходе интеграции, а также поделимся найденными решениями для их устранения.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 3

Организация хранения исторических данных в Oracle

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 3.6K

Привет! Сегодня поговорим о разных способах организации хранения исторических данных в Oracle. Если вам известно более двух способов, то вы молодец и уже почти всё знаете, в чём вам и остаётся убедиться, просмотрев разделы статьи. 

Читать далее
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 7

Оптимизация Change Data Capture в БД Oracle

Уровень сложности Средний
Время на прочтение 18 мин
Количество просмотров 1.8K

Как внедрить Change Data Capture в Oracle и при этом не отдать все ресурсы

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

А для решения проблем хранения и обработки больших объемов данных возникает потребность в их репликации из классического хранилища-источника в аналитическое хранилище для проведения аналитики без влияния на продуктивную эксплуатацию. Для обеспечения актуальности данных в аналитическом хранилище, их необходимо обновлять их при изменении операционных данных источника. Однако, простая перезагрузка данных - неэффективна, так как обычно изменяется только небольшая часть исходных данных. Поэтому в качестве решения предлагается использовать инкрементную загрузку данных с использованием паттерна "Change Data Capture", которая будет актуализировать аналитическое хранилище посредством периодического обновления данных, которые были изменены.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 2

Как мы продукт на PostgreSQL переводили

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 7.5K

Все побежали, и я побежал… Строго говоря, историю о том, как мы научили наше приложение работать с СУБД PostgreSQL и провели первую миграцию боевой системы одного из наших заказчиков, можно было рассказать ещё три года назад. Именно тогда мы это сделали впервые. Сейчас за нашими плечами уже 11 внедрений «Единого клиента» на PostgreSQL. Две миграции на эту СУБД с Oracle пройдут в этом году. 

В статье поделюсь нашими наработками. Будет полезно тем, кто только собирается пойти по такому пути. Если тема интересна, можете посмотреть и выступление моего коллеги Вадима Зайцева на CDI Tech Conf.

Итак, поехали!
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 7

Как мы разработали российскую систему предбиллинга на замену решениям HP и Oracle

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 2.2K

Тема импортозамещения в телеком-отрасли набирает обороты. В критической информационной инфраструктуре очень высока вероятность того, что регулятор может в любой момент потребовать от операторов перейти на 100% российское ПО, поэтому ситуация мотивирует развиваться и переориентироваться быстрее.

По нашим приблизительным оценкам, 70-80% российских операторов используют зарубежные системы предбиллинга. Вендоры этих систем — те же Oracle и HP — ушли с рынка и, хотя у многих операторов внутренние команды поддержки имеют доступ к исходному коду, развивать такие решения тяжело. Но при этом обновлять их необходимо: сейчас операторы меняют сетевое оборудование на российское или «дружественное», расширяют IoT-направление, а это значит, что их предбиллинг должен уметь работать с новыми типами данных и новыми сценариями. Недавно мы разработали 100% российскую систему предбиллинга Nexign Mediation, призванную импортозаместить иностранные аналоги. Это low-code платформа, которая в потоковом режиме собирает и преобразовывает данные с сетевого оборудования оператора связи и отправляет их в нужном формате в системы тарификации.

Узнать больше
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 4

Поддержка пакетов в стиле Oracle в СУБД Postgres Pro 15 Enterprise

Время на прочтение 15 мин
Количество просмотров 5.5K

В новой версии своего флагманского дистрибутива Postgres Pro 15 Enterpise, компания Postgres Pro добавила поддержку функциональности пакетов: расширен синтаксис PL/pgSQL и добавлены новые механизмы в среду выполнения хранимых процедур.

В данной статье описана поддержка функциональности пакетов в Postgres Pro 15 Enterpise:

- группировка типов переменных процедур и функций в пакет;

- поддержка секции инициализации пакетов;

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

Также в статье будут рассмотрены особенности использования пакетов в СУБД Postgres Pro Enterprise.

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 7

Oracle Real Application Clusters в среде Bare Metal Kubernetes Cluster

Уровень сложности Сложный
Время на прочтение 47 мин
Количество просмотров 1.5K

Приветствую всех!

Данная статья рассматривает необходимые и достаточные действия для запуска и настройки RAC 21.3 в кластере kubernetes 1.26. Прецедентов на апрель 2023 г. работы вне Oracle Cloud не найдено, поэтому пришлось провести тысячи экспериментов, отбросить и принять множество гипотез.

На сегодня первая в мире выкатка RAC в kubernetes и без docker.

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Комментарии 0

Вклад авторов

Работа