Обновить
7.85

Oracle *

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

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

Мобильные отчеты на Oracle BI EE 12c — на раз, два, три. Методология из курса Oracle BI EE 12c CAD

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров2.8K
У многих компаний — пользователей продукта Oracle BI 12c есть общая проблема: их разработчики по разным причинам не хотят связываться с мобильной разработкой отчетов.
На наших курсах по BI этот вопрос в новой версии был освещен достаточно полно, поэтому мы выкладываем фактически готовый рецепт, как за несколько часов можно перевести набор существующих отчетов в мобильное приложение.
Об этом — несколько слов и много картинок.
Мы не повторяем общего момента, связанного с необходимостью установки мобильного клиента из App Store или Google Play, так как считаем это естественным шагом. У каждого из этих приложений есть своя история и группа поддержки, на страницах магазинов есть отзывы и рейтинг. И в App Store, и в Google Play есть и клиенты к другим продуктам Oracle.



Читать дальше →

Почему не SQL?

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


Без преувеличения можно сказать, что SQL — один из самых распространенных в мире языков. Информационные системы могут быть написаны на Java, Python, JavaScript, C#, PHP и десятке других языков, но SQL база в том или ином виде будет в абсолютном большинстве таких систем. Среди бизнес-приложений процент систем, использующих SQL, вообще стремится к 100%.

При этом большинство существующих материалов о SQL на хабре и других ресурсах сводятся к простым вопросам, вроде: «какие типы соединений бывают», «чем левое соединение отличается от правого», «что такое триггеры» и так далее. Более того, в этих материалах практически ничего не говорится о проблемах SQL (и его реализациях), которых на самом деле очень и очень немало. Поэтому мы решили восполнить оба этих пробела: с одной стороны рассказать, как многие вещи в SQL работают изнутри, а с другой стороны — почему они работают не так как нужно / хотелось бы.

При этом речь в статье пойдет не о «вкусах и цветах фломастеров». Все затрагиваемые проблемы носят фундаментальный характер: присутствуют при разработке практически любой информационной системы и не ограничиваются «красотой кода», а в той или иной степени приводят либо к критическому падению производительности, либо к существенному росту порога вхождения, либо к значительным трудозатратам со стороны разработчика.
Читать дальше →

Как было устроено хранилище DWH в TELE2

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

Здравствуйте, дорогие друзья.


Сегодня хочу поделиться историей из жизни, как было устроено хранилище DWH в Tele2 до внедрения КХД (EDW).


Поступил я в ИТ подразделение Tele2 в 2012 в отдел по системам отчетности. На тот момент в компании уже было создано хранилище DWH, на котором уже крутилось много процессов по предоставлению отчетности и не только.


Немного по поводу технического стека, который там использовался на тот момент. Для хранилища использовалась Оракловая база объемом 60-100 Тб сервер T4-4 c оперативой под 1 Тб. Туда загружались данные из различных источников. Но основными из них были 4 оракловые биллинговые базы, которые были по сути платформой тарификации. И был отдел, который занимался поддержкой этих баз и предоставлением сервисов. Разделение этих баз было по макрорегионам. Причина: слишком большие объемы. Т.е если абонент звонит, скажем, из Московской сим-карты то и расчет стоимости звонка производится в соответствующем биллинге.

Читать дальше →

Жизнь и успех Ларри Эллисона, основателя Oracle

Время на прочтение6 мин
Количество просмотров26K
Привет, Хабр! Предлагаю перевод статьи «The life and rise of billionaire Oracle founder and international playboy Larry Ellison, who dropped out of college twice and has a $68 billion fortune».

image

Ларри Эллисон, 74-летний соучредитель Oracle, является одним из самых интересных людей в области технологий.

Гонки на яхтах, покупка целых Гавайских островов или оскорбление конкурентов, всегда есть большая вероятность что мы удивимся тому, что Ларри, чей капитал составляет 68,4 миллиарда долларов, сделает в следующий раз.

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

Внимание, под катом содержится 50 изображений.
Читать дальше →

The Power of Oracle SQL

Время на прочтение2 мин
Количество просмотров8.7K
Прочитав сегодняшний топик «SQL. Занимательные задачки», я вспомнил, что давно хотел порекомендовать отличную книгу для продвинутого уровня Oracle SQL от нашего отличного специалиста по Oracle, Алекса Репринцева — «The Power of Oracle SQL». Мало того, что она сама по себе чрезвычайно полезная для тех, кто хочет знать Oracle SQL на высоком уровне, так она еще и бесплатная! Кроме того, есть версии и на русском, и на английском.

В общем, ссылки на саму книгу.

И на обсуждение самой книги с автором.
Читать дальше →

SQL. Занимательные задачки

Время на прочтение13 мин
Количество просмотров347K
Здравствуй, Хабр!

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

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



SQL (ˈɛsˈkjuˈɛl; англ. structured query language — «язык структурированных запросов») — декларативный язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных. Подробнее…

Почитать об SQL можно из разных источников.
Данная статья не преследует цели обучить вас SQL с нуля.
Читать дальше →

По следам Highload++ Siberia 2019 — 8 задач по Oracle

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

24-25 июня в Новосибирске прошла конференция Highload++ Siberia 2019. Наши ребята тоже там были докладом «Контейнерные базы Oracle (CDB/PDB) и их практическое использование для разработки ПО», мы выложим текстовую версию немного позже. Было круто, спасибо olegbunin за организацию, а также всем, кто пришёл.


В этом посте мы хотели бы поделиться с вами задачами, которые были на нашем стенде, чтобы вы могли проверить свои знания в Oracle. Под катом — 8 задач, варианты ответов и объяснение.
Читать дальше →

Как заставить Oracle BI 12c сделать столько сессионных переменных, сколько надо программисту?

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров2.3K
На сервере Oracle BI 12c имеется интересная функциональность по автоматическому созданию набора сессионных переменных без задания их имен на уровне сессии пользователя и без явного описания их количества на уровне репозитария при авторизации сессии BI заданного пользователя.
Читать дальше →

Oracle APEX. Отчеты

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

В этой статье описываются три типа отчетов апекса: Classic Report, Interactive Report (IR) и Interactive Grid (IG). Classic Report — самый простой из них, но в сочетании с другими компонентами позволяет делать достаточно неожиданные вещи. IR и IG обладают намного более широкими возможностями из коробки, но это в значительной степени вещи в себе. С одной стороны, их широкие возможности делают ненужным какой-то дополнительный тюнинг, с другой, эти же возможности довольно жестко ограничивают возможность сделать что-то дополнительно. Многое из того, что применимо к Classic Report, применимо и к ним тоже.


КДПВ

Читать дальше →

В будущее с интеграцией сервисов Jenkins & Oracle APEX

Время на прочтение5 мин
Количество просмотров4.5K
В процессе управления большими объемами данных и их визуализацией мы все чаще сталкиваемся с необходимостью внедрения единого инструмента доступа к управлению функционалом в хранилище. Причем этот инструмент должен быть одинаково удобен и понятен всем сотрудникам подразделения по управлению данными: администраторам, аналитикам, разработчикам и тестировщикам.



Меня зовут Виталий, я отвечаю в Ростелекоме за направление автоматизации тестирования и внедрение DevOps процессов. В данной статье я расскажу об интересном решении данной проблемы в крупном хранилище данных компании Ростелеком.

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

Применение Oracle Database для Технического анализа рынков

Время на прочтение18 мин
Количество просмотров6.7K
Эта статья про Oracle Database, PL/SQL, SQL, MATCH_RECOGNIZE, MODEL clause, aggregate и pipelined functions.

В качестве функциональной области использован Технический анализ (ТА) рынков. Сначала небольшая поверхностная вводная о торговле на рынках, потом — расчёты.

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

image

Разработано много SQL-операторов, процедур и графиков. Часть — ниже, полностью код — на GitHub по ссылке внизу статьи.
Читать дальше →

Performance tuning and troubleshooting баз данных в наши дни

Время на прочтение5 мин
Количество просмотров5.3K
К сожалению, сейчас роль специалистов по Performance tuning и troubleshooting баз данных урезается только до последнего — troubleshooting'a: практически всегда к специалистам обращаются, только когда проблемы уже достигли критической точки, и их нужно решить «еще вчера». Да и то хорошо, если обратятся, а не отсрочат проблему покупкой еще более дорогого и мощного «железа» без детального аудита производительности и нагрузочных тестов. Ведь достаточно часто бывают разочарования: закупили оборудования на сумму в 2-5 раз дороже, а по производительности выиграли лишь 30-40%, весь прирост от которого через несколько месяцев съедается либо увеличением числа пользователей, либо экспоненциальным ростом данных, вкупе с усложением логики.

И сейчас, во времена когда активно растет количество архитекторов, тестеров и DevOps инженеров, а разработчики Java Core оптимизируют даже работу со строками, медленно, но верно наступает пора и оптимизаторов баз данных. СУБД с каждым релизом становятся настолько умнее и сложнее, что изучение как документированных, так и недокументированных нюансов и оптимизаций требует огромного количества времени. Ежемесячно выходит огромное количество статей и проводятся крупные конференции посвященные Oracle. Простите за банальную аналогию, но в этой ситуации, когда администраторы баз данных становятся подобными пилотам самолетов с бесчисленным количеством тумблеров, кнопочек, лампочек и экранов, уже неприлично нагружать их еще и тонкостями оптимизации производительности.
Читать дальше →

Приглашаем на BD&DWH Raiffeisen MeetUp UPD Трансляция

Время на прочтение1 мин
Количество просмотров2.1K
Приглашаем на открытый митап BD&DWH, который пройдет 21 мая 2019 года на площадке Райффайзенбанка в Нагатино!

Ребята расскажут про опыт разработки хранилища данных на MS SQL Server и паттерны проектирования моделей данных в хранилище. А еще к нам прихал Joel R. Kallman из Oracle и будет говорить про APEX.


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

Как квантовые вычисления могут повлиять на разработку ПО

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

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


Читать дальше →

Последний IRM — апгрейдим Siebel до IP17+

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


Ну всё, шутки в сторону — поговорим о вечном. В этом посте вы не найдете брызг радости или намека на легкость бытия. Потому что он для тех, кто боролся и искал, проходя каждый новый круг апгрейда Siebel. Начиная с 2013 года, Oracle проводит кампанию по принципиальной модернизации CRM-системы. На текущий момент мы уже пережили семь (c IP13 до IP19) инновационных пакетов изменений (Innovation Packs). До 2013 года релизы выпускались раз в 2–3 года, последние 5–6 лет обновления Siebel публиковались намного чаще, выдерживая четкий график: минорные релизы (patchset) выходили ежемесячно, принципиально новые версии (major) — ежегодно и зачастую это означало для клиента необходимость глобальной переработки или даже «перевнедрения» своей системы. Для упрощения апгрейдов Siebel вендор разработал IRM (Incremental Repository Merge) — функционал облегчающий процесс установки новых версий c пакетами инноваций. О нем и пойдет речь.
Читать дальше →

SQL в CSV с помощью DBMS_SQL

Время на прочтение5 мин
Количество просмотров11K
Часто при решении задач системной интеграции требуется представить некоторый объем данных в том или ином формате. При этом потребителем данных может быть кто угодно, а вот источником почти всегда является корпоративная база данных. К примеру, производитель может требовать у поставщика периодические отчеты о движении своих товаров в формате XLSX или XML, etc.

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

Если принять, что по факту в корне процесса выборки данных лежит SQL-запрос, то в идеале цепочку преобразований хотелось бы видеть такой:

$d' = f(SQL(d))$


где
$d$ — исходные данные,
$SQL(d)$ — SQL-запрос на выборку данных,
$f$ — функция, которая преобразует выборку в требуемый формат,
$d'$ — данные в требуемом формате.

Для Oracle PL/SQL существует ряд встроенных и сторонних пакетов, которые реализуют подобную функциональность. Это DBMS_XMLGEN, DBMS_XMLQUERY, AS_XLSX, PL/JSON и другие.

Однако, когда встал вопрос о преобразовании данных в формат CSV, готовых решений почему-то не нашлось. Пришлось делать самому, далее будет показано, как.
Читать дальше →

Oracle Application Express. Приложения и страницы

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

Продолжение туториала.


В этой части описаны процессы создания приложения Oracle APEX и создания страниц в приложении.


Предыдущая часть: Туториал по Oracle Application Express. Обзор IDE

Читать дальше →

Как подружить Progress OpenEdge и СУБД Oracle

Время на прочтение9 мин
Количество просмотров5.9K
С 1999 года для обслуживания бэк-офиса в нашем банке используется интегрированная банковская система БИСКВИТ на платформе Progress OpenEdge, которая достаточно широко используется во всем мире, в том числе и в финансовом секторе. Производительность данной СУБД позволяет читать до миллиона и более записей в секунду в одной базе базе данных (БД). У нас Progress OpenEdge обслуживает около 1,5 млн депозитов физических лиц и порядка 22,2 млн договоров по активным продуктам (автокредиты и ипотека), а также отвечает за все расчеты с регулятором (ЦБ) и SWIFT.



Используя Progress OpenEdge, мы столкнулись с тем, что нам необходимо подружить ее с СУБД Oracle. Изначально эта связка была «бутылочным горлышком» нашей инфраструктуры — до тех пор, пока мы не установили и не настроили Pro2 CDC — продукт Progress, который позволяет отправлять данные из СУБД Progress в СУБД Oracle напрямую, в онлайн-режиме. В этом посте мы подробно, со всеми подводными камнями расскажем, как эффективно подружить OpenEdge и Oracle.
Читать дальше →

Туториал по Oracle Application Express. Обзор IDE

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

Недавно я с удивлением обнаружил, что, оказывается, толковых туториалов по Oracle Application Express (он же APEX, он же апекс, но не путать с языком apex, который используется в Salesforce) в природе не существует.


Это не самая распространенная технология, конечно, но, тем не менее, довольно востребованная. Есть десятки блогов об апексе (англоязычные, в основном), пара тысяч вопросов на Stackoveflow, специальный раздел по апексу на официальных форумах оракла, сам апекс существует уже 15 лет и все время развивается. Я был уверен, что и хороших туториалов полно. Но нет!


Мне тут же пришла в голову гениальная мысль восполнить этот пробел.


Оглавление


Почему существующие туториалы — плохие
Вводная информация
Обзор IDE
    App builder
        Страница приложения
        Application properties
        Shared Components
        Page Designer
    SQL Workshop
        Object Browser
        SQL Commands

Читать дальше →

Полное руководство по switch в Java

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

Старый добрый switch был в Java с первого дня. Мы все используем его и привыкли к нему — особенно к его причудам (кого-нибудь еще раздражает break?). Но начиная с Java 12, ситуация начала меняться: switch вместо оператора стал выражением:


boolean result = switch (ternaryBool) {
    case TRUE -> true;
    case FALSE -> false;
    case FILE_NOT_FOUND -> throw new UncheckedIOException(
            "This is ridiculous!",
            new FileNotFoundException());
    default -> throw new IllegalArgumentException("Seriously?!");
};

Результат работы switch-выражения теперь можно сохранять в переменную; ушла необходимость использовать break в каждой ветке case благодаря лямбда-синтаксису и многое другое.


Когда дело доходит до switch после Java 14, необходимо выбрать стиль его использования:


  • оператор или выражение (с Java 14)
  • двоеточия или стрелки (с Java 14)
  • метки или шаблоны (3-й превью в Java 19)
    В этом руководстве я расскажу обо всем, что необходимо знать о switch-выражениях, и как их лучше всего использовать в современной Java.
Читать дальше →

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