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

Oracle *

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

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

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

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

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

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

Итак, поехали!

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

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

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

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

Узнать больше

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

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

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

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

Истории

Проблема построения оптимального плана выполнения запроса при использовании коллекций. Применение Extensible Optimizer

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

Привет! Я работаю в компании Bercut, мы более 20 лет занимается разработкой и поддержкой ПО для операторов сотовой и фиксированной связи. Прошел путь от инженера в отделе сопровождения до менеджера продукта. В последние годы работаю ведущим специалистом в отделе администрирования (Senior DBA) и решаю проблемы производительности высоконагруженных биллинговых базах данных, обслуживающих от сотен тысяч до десятков миллионов абонентов. Сегодня я хочу рассказать про проблему построения оптимального плана выполнения запроса при использовании коллекций в качестве входных переменных запроса и вариантах ее решения.

Читать далее

Как мы сокращаем время простоя при установке обновлений схемы базы данных. Советы разработчикам

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

Привет! Я работаю в компании Bercut, которая более 20 лет занимается разработкой и поддержкой ПО для операторов сотовой и фиксированной связи. Сегодня я хочу рассказать о наших подходах к сокращению времени простоя продуктивного комплекса при установке обновлений схемы данных на СУБД Oracle. Целевая аудитория — начинающие и продолжающие разработчики, которым интересно узнать о различных вариантах распараллеливания и ускорения работы DDL, DML и прочих штуках, облегчающих процесс отладки и установки.

Читать далее

Репликация между SQL- и NoSQL-базами данных: туда и обратно

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


Часто при построении высоконагруженных проектов задействуют несколько хранилищ. При этом нередко одновременно используют как SQL-, так и NoSQL-базы данных. Такая реализация оправдана, но для её корректной работы надо правильно настроить репликацию данных в одну из сторон. 

Меня зовут Александр Горякин, я разработчик высоконагруженных систем хранения данных в пресейле Tarantool. Не так давно наша команда столкнулась с необходимостью репликации между SQL- и NoSQL-базами данных и успешно решила эту задачу. Я расскажу, что нам нужно было от репликации, какие механизмы и инструменты мы рассматривали, с какими проблемами столкнулись и что получили в итоге.

Статья написана по моему выступлению на HighLoad++ 2022. Вы можете посмотреть его здесь.
Читать дальше →

Параллельный запуск тестов utPLSQL (Oracle)

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

Как заставить время работать на команду.

Параллельные utPLSQL‑тесты, вариант ускорения конвейера CI/CD.

Читать далее

Delayed durability поможет вашему ORM увеличить производительность на 50% и более, если Вы только будете использовать …

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

 ORM (Object‑Relational Mapping) используется во многих языках программирования, в том числе и в 1С. Однако реализация высоконагруженных решений, приводит к мысли что разработчики ORM не учитывали ее влияния на производительность СУБД. Такая ситуация и в 1С и ORM на Java, и наверняка в других ORM.  В предыдущих частях показана глубина проблемы

Концепция ORM как двигатель прогресса — выдержит ли ее ваша СУБД? / Хабр (habr.com)

Концепция ORM как двигатель прогресса – выявит слабое место Вашей СУБД / Хабр (habr.com)

В этой части предложено решение со стороны СУБД (MS SQL , Oracle, Postgres)

Читать далее

Миграция с СУБД Oracle на PostgreSQL: опыт крупного ритейлера

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

Summary: Сотрудники Лиги Цифровой Экономики Юлия Крашеница, DBA PostgreSQL, Андрей Ходус, ведущий эксперт, и Елена Жикривецкая, старший эксперт PostgreSQL, рассказали об особенностях миграции с системы управления базами данных Oracle на PostgreSQL и возникших сложностях, а еще поделились своим опытом их решения.

Читать далее

Взаимодействие DWH Oracle и MS SQL

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

В ряде статей планирую рассказать о подготовке данных, основных этапах разработки и дальнейшего использования данных в Microsoft Analysis Services (SSAS), о процессе построения аналитического хранилища данных на Microsoft SQL Server (MS SQL), о взаимодействии с базами данным Oracle и другими источниками нашего банка Совкомбанк, а также рассказать о возможностях MS SQL которые мы используем.  

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

Чаще всего аналитики сталкиваются с проблемами оперативного изменения агрегированных данных и выявлении факторов влияющими на эти данные. Довольно часто аналитики получают и анализирую данных в плоском сгруппированном виде, не всегда есть возможность без подключения технических специалистов разложить составляющие на самый низкий уровень гранулярности, определить неточности в данных. И физически человек не способен воспринимать многомиллионные строки данных, например в excel. Для этого на помощь приходит SSAS. В него можно загрузить большой объем данных и при необходимости развернуть до основных составляющих данных.

Дополнительно поставлю вопросы как цели: как мы упрощаем жизнь для бизнес – аналитиков, как вовремя и качественно сдаем отчетность в ЦБ, как с легкостью обрабатываем терабайты данных для предоставления их пользователям?

Читать далее

Концепция ORM как двигатель прогресса — выдержит ли ее ваша СУБД?

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

ORM (Object-Relational Mapping) используется во многих языках программирования, в том числе и в 1С. Однако реализация высоконагруженных решений, приводит к мысли что разработчики ORM не учитывали ее влияния на производительность СУБД. Такая ситуация и в 1С и ORM на Java, и наверняка в других ORM . Причины приоткрывает данная статья.

Читать далее

«Сами мы не местные», или Как мы провели миграцию с Oracle на PostgreSQL

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

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

Читать далее

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

2 – 18 декабря
Yandex DataLens Festival 2024
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

«Надо переехать с Oracle на PostgreSQL. Ты только не волнуйся!»

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

С этого сообщения в мессенджере началось мое масштабное расследование вопроса, который давно не дает спать многим айтишникам — можно ли вот так взять и переехать с Oracle на «свободную» СУБД PostgreSQL?

Этот вопрос сначала бередил умы только тех, кто был в курсе стоимости закупок лицензий. В крупных компаниях бюджет на это мог составлять несколько десятков миллионов долларов. А потом каждый год поддержка вендора «съедала» ещё 22% от стоимости лицензий. Теперь та финансовая боль сменилась другой, и у компаний поменялся запрос: а можно ли заменить? И главное, можно ли организовать это в разумные сроки и по адекватной стоимости? 

Скажу сразу, что в этом посте не будет технических аспектов миграции с СУБД Oracle на PostgreSQL. Как это делать и как обходить сложности — разберем в следующий раз. Тут же больше поговорим о целесообразности и возможности миграции. С этим мы разбирались в ходе одного проекта, а заодно развенчали строй существующих иллюзий. 

Красная таблетка

Вакцинирование продом

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

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

В статье покажу ряд простых и очевидных подходов разработчиков Oracle, помогающих уменьшить цену ошибки на проде. Проверено на себе :-)

Читать далее

Сравнить таблицу и с её репликой

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

Занимаясь goldengate-репликацией столкнулся с необходимостью выполнить сравнение таблицы, в исходной бд и её таблицы-реплики, в бд-приёмнике.
Для случая когда таблица и таблица-реплика  обе имеют, одинаково устроенные ключи (как оно и д.б., по идее), есть замечательный пакет dbms_comparison.

Однако, что делать, если ключей нет никаких, нет и unique-индекса, с not-null. А такое — бывает.

Тут нужно велосипедить какое то решение.

Или договариваться с заказчиками репликации чтобы — добавляли ключи, на таблицы и им релевантные таблицы-реплики.

Добавление ключей — не всегда желательно, с т.з. заказчика, например потому что прикладной код может нехорошо отреагировать, на появление в таблице/таблице-реплике нового столбца.

Это можно обойти, сделав новый, ключевой столбец не видимым, gg-такие ключевые столбцы: поддерживает, это интересный способ, но о нём — в другой раз.

В этой статье — про велосипед.

Читать далее

Serverless хостинг в Oracle Cloud для рубиста

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

Serverless хостинг в Oracle Cloud для рубиста

Почему бы и не поддаться современным веяниям, и не реализовать REST api на лямбдах?

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

Попробовать декомпозировать веб приложение в терминах облачных сервисов.

Oracle free tier,  хм, насколько это бесплатно в реальности?

Читать далее

Препятствуют ли cloud-сервисы доминированию Oracle в сфере баз данных?

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

В 2016 году компания Shutterfly сделала смелый шаг, перенеся метаданные из более чем 10 миллиардов наборов фотографий из частного центра обработки данных в общедоступное облако. Shutterfly рассматривала несколько потенциальных поставщиков облачного сервиса, и в конечном итоге, остановила выбор на AWS. Многие годы Shutterfly использовала инструменты Oracle для хранения и управления фотобиблиотеками более чем 20 миллионов активных клиентов. Но с течением времени, компания расширялась и развивалась, и стала переключать свои системы на cloud-сервисы Amazon. Представители компании заявили, что им необходимо было перевести свою БД на «систему более простую в использовании». Изучив разные варианты на рынке, в Shutterfly выявили, что системы Oracle «перестали соответствовать требованиям компании, чтобы иметь необходимый уровень гибкости».

Миграция данных — это процесс переноса данных из одной системы хранения в другую. Shutterfly — не единичный случай, когда крупная компания во время роста поставщиков облачных сервисов мигрируют за пределы Oracle. В итоге таких тенденций в корпоративной технологической отрасли баз данных предприятия отдают предпочтение более новым поставщикам: MongoDB, Databricks и Snowflake, и другим.
Читать дальше →

Баг с псионическими сигнатурами в Java

Время на прочтение6 мин
Количество просмотров5.4K
В классическом научно-фантастическом сериале BBC Доктор Кто часто используется следующий сюжетный приём: Доктору удаётся избежать неприятностей, показав удостоверение личности, которое на самом деле совершенно пустое. Разумеется, удостоверение сделано из специальной «психобумаги», заставляющей смотрящего на неё человека видеть то, что удобно для Доктора: пропуск, ордер или что-то ещё.


Оказывается, некоторые новые релизы Java тоже были подвержены подобному трюку в реализации широко используемых сигнатур ECDSA. Если запустить одну из уязвимых версий, то нападающий легко сможет подделать некоторые типы сертификатов SSL и handshake (что позволяет вмешиваться в обмен данными и модифицировать их), подписанные JWT, декларации SAML или id-токены OIDC и даже сообщения аутентификации WebAuthn. И для всего этого достаточно цифрового аналога чистого листа бумаги.
Читать дальше →

30 тыс. строк кода или как мы переходили с Oracle на PostgreSQL с помощью утилиты Ora2Pg 23.0

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

Привет, меня зовут Андрей, я работаю ведущим разработчиком в компании СИГМА и отвечаю за решения по автоматизации расчетов технических условий. Сегодня хочу поделиться своим опытом переноса в среду PostgreSQL данных из СУБД Oracle и процедур, разработанных на PL/SQL.

Перед моей командой была поставлена срочная и нетривиальная задача перенести разрозненный функционал, ранее разработанный на базе СУБД Oracle, в единую систему управления распределительными электрическим сетями (по-простому СИГМА СУС), которая работает на основе PostgreSQL и сочетает в себе подсистемы DMS, SCADA, GIS, NIS, OMS и другие.

Читать далее

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

Работа