Дорогие подписчики!
➡️ Продолжаем пополнять набор встроенных пакетов Digital Q.DataBase.
Добавлен DBMS_FILE_TRANSFER.
Для чего он нужен
➡️ Пакет предназначен для копирования файлов между каталогами на сервере, а также между локальным и удалённым серверами. Работает с бинарными и текстовыми файлами через объекты DIRECTORY.
Основные функции
· COPY_FILE — копирование файла внутри сервера;
· GET_FILE — получение файла с удалённого сервера;
· PUT_FILE — отправка файла на удалённый сервер;
· RENAME_FILE — переименование файла;
· DELETE_FILE — удаление файла.
Пример использования
Добавлен DBMS_FILE_TRANSFER.
Для чего он нужен
Основные функции
· COPY_FILE — копирование файла внутри сервера;
· GET_FILE — получение файла с удалённого сервера;
· PUT_FILE — отправка файла на удалённый сервер;
· RENAME_FILE — переименование файла;
· DELETE_FILE — удаление файла.
Пример использования
BEGIN
DBMS_FILE_TRANSFER.COPY_FILE(
source_directory_object => 'SRC_DIR',
source_file_name => 'backup.dmp',
destination_directory_object => 'DEST_DIR',
destination_file_name => 'backup_copy.dmp'
);
END;
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Diasoft о технологиях по-настоящему
Digital Q.DataBase – в ТОП-3 лучших СУБД в обзоре "Российские СУБД на базе PostgreSQL" 🏆
Диасофт и другие российские разработчики предложили рынку собственные дистрибутивы PostgreSQL, оптимизированные под запросы крупного бизнеса.
В исследовании эксперты "Ланит" сравнили пять продуктов лидеров рынка по восьми группам параметров:
🔵 общие характеристики;
🔵 безопасность;
🔵 масштабируемость и надежность;
🔵 производительность;
🔵 удобство сопровождения;
🔵 удобство разработки;
🔵 миграция;
🔵 возможности графического интерфейса.
СУБД Digital Q.DataBase показала отличные результаты, заняв1️⃣ место по критерию "Удобство разработки", 2️⃣ место за миграционные возможности и 3️⃣ место по общим характеристикам.
Диасофт и другие российские разработчики предложили рынку собственные дистрибутивы PostgreSQL, оптимизированные под запросы крупного бизнеса.
В исследовании эксперты "Ланит" сравнили пять продуктов лидеров рынка по восьми группам параметров:
СУБД Digital Q.DataBase показала отличные результаты, заняв
Please open Telegram to view this post
VIEW IN TELEGRAM
Первая архитектура данных: как шумеры строили OLTP, DWH и реестры сотрудников за 4000 лет до нашей эры
В период Третьей династии Ура (XXI в. до н. э.) шумеры создали государственную учётную систему на глиняных табличках. По своей сути — полноценную иерархическую СУБД с первичными документами, агрегатами, реестрами мастер-данных и аутентификацией.
📁 Иерархия табличек
Система строилась на трёх уровнях:
1. Детальные транзакции — таблички, фиксирующие проведенные операции: «в дату какую-то выдано 5 мер зерна гонцу Или-шинату».
2. Периодические сводки — агрегация количественных данных за неделю или месяц с группировкой по типу операции.
3. Мастер-табличка — итоговый документ периода, суммирующий все поступления и расходы. Документ содержал начальный остаток, приход и расход за период и итоговый остаток.
Таблички одного периода собирались в корзину и снабжались глиняным ярлыком-описью — это своего рода физический аналог S3 Glacier с каталогом содержимого.
👥 Реестры чиновников, воинов и рабочих
Государство вело детальные реестры по категориям населения. Например, сохранилась административная бирка из Гирсу, где перечислены типы учётных документов в архиве. Среди учтённых категорий населения были чиновники и управленцы (землемеры, надзиратели зернохранилищ, писцы), воины, работники (пахари, строители, носильщики и т.п.).
Атрибуты строки в реестре работников включали: профессию, специализацию, участок работ, статус (активен/умер в пути), имя бригадира.
Одна из сохранившихся табличек 2027 г. до н. э. содержит поимённый перечень персонала храмового хозяйства с указанием их пайков.
Для учёта трудозатрат применялась агрегация в стиле: «14 работников × 15 дней = 210 человеко-дней» — детали и свод одновременно. Правда система счисления использовалась шестидесятиричная (кстати, именно из Шумера идет наше исчисление времени: деление часа на 60 минут, а минуты на 60 секунд).
🖊️ Подпись данных и защита от их изменения
С 3500 г. до н.э. в Шумере активно использовались цилиндрические печати — персональные идентификаторы чиновников. Они представляли собой резной цилиндр, который прокатывался по еще влажной глине только что составленного документа, после чего на нем оставался уникальный рельефный рисунок и имя владельца печати. После нанесения рельефа было невозможно что-то дописать или стереть.
Пример из документа об оплате труда (ок. 2033 г. до н. э.): в конце таблички указано «[запечатано] Ур-Шульпаэ, сыном Лугаль-кугани». Это буквально аутентификация транзакции.
Иногда использовалось коллегиальное подтверждение – документ "подписывали" сразу несколько человек.
♻️ Жизненный цикл данных
Хранение: таблички в корзинах — архивный слой с медленным доступом.
Уничтожение: документы с истекшей юридической силой физически разбивали. Аналог современного hard delete без возможности восстановления.
Вывод: Шумерская информационная система включала в себя разделение на транзакционный и аналитический слои, мастер-данные по персоналу, агрегацию в итоговых табличках и механизм подтверждения подлинности. Это первая известная нам реализация принципов, которые сегодня лежат в основе многих современных бизнес-систем.
В период Третьей династии Ура (XXI в. до н. э.) шумеры создали государственную учётную систему на глиняных табличках. По своей сути — полноценную иерархическую СУБД с первичными документами, агрегатами, реестрами мастер-данных и аутентификацией.
📁 Иерархия табличек
Система строилась на трёх уровнях:
1. Детальные транзакции — таблички, фиксирующие проведенные операции: «в дату какую-то выдано 5 мер зерна гонцу Или-шинату».
2. Периодические сводки — агрегация количественных данных за неделю или месяц с группировкой по типу операции.
3. Мастер-табличка — итоговый документ периода, суммирующий все поступления и расходы. Документ содержал начальный остаток, приход и расход за период и итоговый остаток.
Таблички одного периода собирались в корзину и снабжались глиняным ярлыком-описью — это своего рода физический аналог S3 Glacier с каталогом содержимого.
👥 Реестры чиновников, воинов и рабочих
Государство вело детальные реестры по категориям населения. Например, сохранилась административная бирка из Гирсу, где перечислены типы учётных документов в архиве. Среди учтённых категорий населения были чиновники и управленцы (землемеры, надзиратели зернохранилищ, писцы), воины, работники (пахари, строители, носильщики и т.п.).
Атрибуты строки в реестре работников включали: профессию, специализацию, участок работ, статус (активен/умер в пути), имя бригадира.
Одна из сохранившихся табличек 2027 г. до н. э. содержит поимённый перечень персонала храмового хозяйства с указанием их пайков.
Для учёта трудозатрат применялась агрегация в стиле: «14 работников × 15 дней = 210 человеко-дней» — детали и свод одновременно. Правда система счисления использовалась шестидесятиричная (кстати, именно из Шумера идет наше исчисление времени: деление часа на 60 минут, а минуты на 60 секунд).
🖊️ Подпись данных и защита от их изменения
С 3500 г. до н.э. в Шумере активно использовались цилиндрические печати — персональные идентификаторы чиновников. Они представляли собой резной цилиндр, который прокатывался по еще влажной глине только что составленного документа, после чего на нем оставался уникальный рельефный рисунок и имя владельца печати. После нанесения рельефа было невозможно что-то дописать или стереть.
Пример из документа об оплате труда (ок. 2033 г. до н. э.): в конце таблички указано «[запечатано] Ур-Шульпаэ, сыном Лугаль-кугани». Это буквально аутентификация транзакции.
Иногда использовалось коллегиальное подтверждение – документ "подписывали" сразу несколько человек.
♻️ Жизненный цикл данных
Хранение: таблички в корзинах — архивный слой с медленным доступом.
Уничтожение: документы с истекшей юридической силой физически разбивали. Аналог современного hard delete без возможности восстановления.
Вывод: Шумерская информационная система включала в себя разделение на транзакционный и аналитический слои, мастер-данные по персоналу, агрегацию в итоговых табличках и механизм подтверждения подлинности. Это первая известная нам реализация принципов, которые сегодня лежат в основе многих современных бизнес-систем.
Построено навечно
Кажется, что некоторые технологии прошлого буквально обречены на вечную жизнь.
Например, немецкая СУБД Adabas, которая была выпущена в 1971 году, пережила расцвет мейнфреймов, эпоху реляционных баз данных и не только не канула в Лету, но живет полной жизнью и имеет большое сообщество пользователей.
Вот несколько фактов об этой живучей системе:
📜 Глубокая история: Эта СУБД была выпущена для мейнфреймов IBM еще в 1971 году и уже в 1983 году занимала 11% мирового рынка.
⚙️ Уникальная архитектура: Отличается моделью данных на базе инвертированного индекса, впоследствии дополненной реляционными элементами.
⚡ Скорость и надежность: Может обслуживать десятки тысяч параллельно работающих пользователей и обрабатывать более 2 миллионов запросов в секунду, обеспечивая самую низкую стоимость транзакции из официально зарегистрированных.
🚀 Развитие и планы на будущее: Adabas был портирован на Linux, Unix и Windows, поддерживает Unicode, имеет облачную версию, активно продвигается, проводит вебинары и живет по долгосрочной стратегии развития, охватывающей интервал до 2050 года.
👶 Известные наследники: СУБД SAP MaxDB и СУБД SAP HANA являются прямыми потомками ("внук" и "правнук") СУБД Adabas и используют внутри её наработки.
Многие крупные зарубежные авиакомпании до сих пор используют в системах продажи авиабилетов СУБД Adabas.
👴 Другие СУБД-долгожители
Adabas не одинок в клубе старейшин мира СУБД.
Вот ещё ряд примеров СУБД, чей возраст перевалил за несколько десятилетий, но они все еще в строю:
· IMS (Information Management System) от IBM: Была создана в 1968 году для программы «Аполлон». До сих пор является основой многих критически важных систем в зарубежных банках и страховых компаниях.
· Oracle Database: Первая в мире коммерчески успешная реляционная СУБД. Была выпущена в 1979 году, но до сих пор занимает огромную долю рынка.
· Советская СУБД «Ника»: Прямой наследник выпущенной в конце 70-х СУБД ИНЕС, которая во второй половине 80-х работала практически на каждом третьем компьютере ЕС ЭВМ в стране. «Ника» включена в Единый реестр российского ПО и до сих пор эксплуатируется и сопровождается.
Кажется, что некоторые технологии прошлого буквально обречены на вечную жизнь.
Например, немецкая СУБД Adabas, которая была выпущена в 1971 году, пережила расцвет мейнфреймов, эпоху реляционных баз данных и не только не канула в Лету, но живет полной жизнью и имеет большое сообщество пользователей.
Вот несколько фактов об этой живучей системе:
📜 Глубокая история: Эта СУБД была выпущена для мейнфреймов IBM еще в 1971 году и уже в 1983 году занимала 11% мирового рынка.
⚙️ Уникальная архитектура: Отличается моделью данных на базе инвертированного индекса, впоследствии дополненной реляционными элементами.
⚡ Скорость и надежность: Может обслуживать десятки тысяч параллельно работающих пользователей и обрабатывать более 2 миллионов запросов в секунду, обеспечивая самую низкую стоимость транзакции из официально зарегистрированных.
🚀 Развитие и планы на будущее: Adabas был портирован на Linux, Unix и Windows, поддерживает Unicode, имеет облачную версию, активно продвигается, проводит вебинары и живет по долгосрочной стратегии развития, охватывающей интервал до 2050 года.
👶 Известные наследники: СУБД SAP MaxDB и СУБД SAP HANA являются прямыми потомками ("внук" и "правнук") СУБД Adabas и используют внутри её наработки.
Многие крупные зарубежные авиакомпании до сих пор используют в системах продажи авиабилетов СУБД Adabas.
👴 Другие СУБД-долгожители
Adabas не одинок в клубе старейшин мира СУБД.
Вот ещё ряд примеров СУБД, чей возраст перевалил за несколько десятилетий, но они все еще в строю:
· IMS (Information Management System) от IBM: Была создана в 1968 году для программы «Аполлон». До сих пор является основой многих критически важных систем в зарубежных банках и страховых компаниях.
· Oracle Database: Первая в мире коммерчески успешная реляционная СУБД. Была выпущена в 1979 году, но до сих пор занимает огромную долю рынка.
· Советская СУБД «Ника»: Прямой наследник выпущенной в конце 70-х СУБД ИНЕС, которая во второй половине 80-х работала практически на каждом третьем компьютере ЕС ЭВМ в стране. «Ника» включена в Единый реестр российского ПО и до сих пор эксплуатируется и сопровождается.
Дорогие подписчики!
➡️ Ещё один пакет для PL/SQL-совместимости Digital Q.DataBase — DBMS_NETWORK_ACL_ADMIN.
Для чего он нужен
➡️ Пакет предоставляет интерфейс для управления сетевыми списками контроля доступа (ACL) . ACL используются для ограничения доступа пользователей к внешним сетевым ресурсам через PL/SQL-пакеты: UTL_TCP, UTL_HTTP, UTL_SMTP, UTL_INADDR .
Основные функции
· APPEND_HOST_ACE — добавление записи ACL для хоста с указанием прав (connect, resolve);
· REMOVE_HOST_ACE — удаление записи ACL для хоста;
· SET_HOST_ACL — назначение ACL для хоста или домена;
· APPEND_WALLET_ACE — добавление записи ACL для wallet (хранилища сертификатов);
· REMOVE_WALLET_ACE — удаление записи ACL для wallet.
Пример использования
Для чего он нужен
Основные функции
· APPEND_HOST_ACE — добавление записи ACL для хоста с указанием прав (connect, resolve);
· REMOVE_HOST_ACE — удаление записи ACL для хоста;
· SET_HOST_ACL — назначение ACL для хоста или домена;
· APPEND_WALLET_ACE — добавление записи ACL для wallet (хранилища сертификатов);
· REMOVE_WALLET_ACE — удаление записи ACL для wallet.
Пример использования
-- Выдача прав на подключение к хосту пользователю SCOTT
BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => 'www.example.com',
ace => XS$ACE_TYPE(
privilege_list => XS$NAME_LIST('connect', 'resolve'),
principal_name => 'SCOTT',
principal_type => XS_ACL.PTYPE_DB
)
);
END;
Please open Telegram to view this post
VIEW IN TELEGRAM
Для чего он нужен
Основные процедуры
· SET_SQL_TRACE_IN_SESSION — включение/выключение SQL-трассировки в указанной сессии ;
· KSDWRT — запись сообщения в alert-лог и/или файл трассировки ;
· SET_EV — установка трассировки для определённого события ;
· READ_EV — проверка, выполняется ли трассировка указанного события ;
· KSDIND — установка уровня отступа для вывода в файл трассировки ;
· KSDDDT — вывод информации о дате и времени в файл трассировки ;
· KSDFLS — сброс буфера вывода в файл трассировки ;
· DIST_TXN_SYNC — синхронизация распределённых транзакций (вызывается XA-библиотекой) .
Пример использования
-- Включение SQL-трассировки в другой сессии
EXEC DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION(sid => 31, serial# => 97, sql_trace => TRUE);
-- Выключение трассировки
EXEC DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION(31, 97, FALSE);
-- Запись сообщения в alert-лог
-- 2 — alert-лог, 1 — trace-файл, 3 — оба
EXEC DBMS_SYSTEM.KSDWRT(2, 'Тестовое сообщение');
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие подписчики!
➡️ Продолжаем добавлять пакеты для PL/SQL-совместимости Digital Q.DataBase. Очередной — UTL_GDK (Globalization Development Kit).
Для чего он нужен
➡️ Пакет предоставляет функции для работы с локалями и преобразования имён языков, территорий и кодировок между различными стандартами: Oracle, IANA, ISO . Это полезно при разработке многоязычных приложений.
Основные функции
· charset_map — преобразование имени кодировки между стандартами Oracle и IANA ;
· language_map — преобразование названия языка между стандартами Oracle и ISO ;
· territory_map — преобразование названия территории между Oracle и ISO A-2 / A-3 .
Пример использования
Для чего он нужен
Основные функции
· charset_map — преобразование имени кодировки между стандартами Oracle и IANA ;
· language_map — преобразование названия языка между стандартами Oracle и ISO ;
· territory_map — преобразование названия территории между Oracle и ISO A-2 / A-3 .
Пример использования
-- Преобразование IANA-кодировки в Oracle
SELECT utl_gdk.charset_map('iso-8859-p1', utl_gdk.IANA_TO_ORACLE) FROM dual;
-- Результат: WE8ISO8859P1
-- Преобразование названия языка Oracle в ISO-код
SELECT utl_gdk.language_map('english', utl_gdk.ORACLE_TO_ISO) FROM dual;
-- Результат: en
-- Преобразование кода территории ISO в название Oracle
SELECT utl_gdk.territory_map('us', utl_gdk.ISO_TO_ORACLE) FROM dual;
-- Результат: America
Please open Telegram to view this post
VIEW IN TELEGRAM
1 5 3 2
Forwarded from DiasoftNews_channel
Подтверждена совместимость ОС "Альт Сервер" от "Базальт СПО" с СУБД Digital Q.DataBase компании Диасофт 🙌
Диасофт и "Базальт СПО" (мировой производитель системного программного обеспечения на базе собственной платформы разработки) подтвердили совместимость операционной системы "Альт Сервер" с системой управления базами данных (СУБД) Digital Q.DataBase.
💌Корректность работы подтверждена двусторонним сертификатом совместимости. Совместное использование "Альт Сервер" и Digital Q.DataBase создает гибкую, безопасную и масштабируемую платформу, готовую к эксплуатации в организациях с высокими требованиями к надежности и производительности.
Диасофт и "Базальт СПО" (мировой производитель системного программного обеспечения на базе собственной платформы разработки) подтвердили совместимость операционной системы "Альт Сервер" с системой управления базами данных (СУБД) Digital Q.DataBase.
💌Корректность работы подтверждена двусторонним сертификатом совместимости. Совместное использование "Альт Сервер" и Digital Q.DataBase создает гибкую, безопасную и масштабируемую платформу, готовую к эксплуатации в организациях с высокими требованиями к надежности и производительности.
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие подписчики!
Сегодня — 12 июня, День России.
Праздник, который напоминает: мы живём в большой стране с богатой историей, разными традициями и по-настоящему талантливыми людьми. И у каждого из нас — свой уголок, своё дело, своя команда.
Желаем вам не бояться масштабных задач, находить опору в своих ценностях и всегда двигаться вперёд — даже если путь кажется непростым.
С Днём России!
Сегодня — 12 июня, День России.
Праздник, который напоминает: мы живём в большой стране с богатой историей, разными традициями и по-настоящему талантливыми людьми. И у каждого из нас — свой уголок, своё дело, своя команда.
Желаем вам не бояться масштабных задач, находить опору в своих ценностях и всегда двигаться вперёд — даже если путь кажется непростым.
С Днём России!
1 4 3 3
🤖 13 июня 1961 года: патент на первого промышленного робота
Ровно 65 лет назад - 13 июня 1961 года изобретателю Джорджу Деволу (George Devol) из США был выдан патент US2988237A, на основе которого в том же году был создан Unimate — первый в истории промышленный робот.
Unimate впервые начали применять на заводе General Motors в Нью-Джерси. Он вынимал раскалённые детали из литейной машины.
Однако позже его "научили" (в маркетинговых целях) играть в гольф и разливать кофе.
Программа действий робота была записана на вращающемся магнитном барабане и могла включать в себя последовательность действий размером до 200 шагов.
Робот Unimate - дедушка всех современных промышленных роботов.
Это была важная веха в развитии робототехники, ведь без нее не было бы современных автоматизированных сборочных линий на автозаводах, полностью роботизированных складов у крупных ритейлеров, а также милых роботов-доставщиков от Яндекса.
Ровно 65 лет назад - 13 июня 1961 года изобретателю Джорджу Деволу (George Devol) из США был выдан патент US2988237A, на основе которого в том же году был создан Unimate — первый в истории промышленный робот.
Unimate впервые начали применять на заводе General Motors в Нью-Джерси. Он вынимал раскалённые детали из литейной машины.
Однако позже его "научили" (в маркетинговых целях) играть в гольф и разливать кофе.
Программа действий робота была записана на вращающемся магнитном барабане и могла включать в себя последовательность действий размером до 200 шагов.
Робот Unimate - дедушка всех современных промышленных роботов.
Это была важная веха в развитии робототехники, ведь без нее не было бы современных автоматизированных сборочных линий на автозаводах, полностью роботизированных складов у крупных ритейлеров, а также милых роботов-доставщиков от Яндекса.
Как появился на свет легендарный формат DBF
В 1978 году программист-подрядчик NASA Уэйн Рэтлифф решил автоматизировать офисный тотализатор на матчах по американскому футболу.
Он написал свою первую СУБД и назвал её Vulcan — в честь планеты Мистера Спока из «Звёздного пути».
Коммерческого успеха у этой новой СУБД не было, пока разработку не заметил Джордж Тейт, глава компании Ashton-Tate.
В 1981 году Тейт и Рэтлифф заключили маркетинговое соглашение, но у них возникла проблема с тем, что название Vulcan уже принадлежало другой фирме. Нужно было срочно придумать новое.
Тейт предложил использовать уже не новый к тому времени маркетинговый ход, подсмотренный у Oracle: СУБД Vulcan переименовали в dBASE II — пропустив первую версию, чтобы сразу создать впечатление зрелости и надёжности.
📈 Результат оказался более чем впечатляющим: новая СУБД разошлась тиражом в миллионы копий, а формат таблиц .DBF стал стандартом де-факто на годы вперёд.
В 1978 году программист-подрядчик NASA Уэйн Рэтлифф решил автоматизировать офисный тотализатор на матчах по американскому футболу.
Он написал свою первую СУБД и назвал её Vulcan — в честь планеты Мистера Спока из «Звёздного пути».
Коммерческого успеха у этой новой СУБД не было, пока разработку не заметил Джордж Тейт, глава компании Ashton-Tate.
В 1981 году Тейт и Рэтлифф заключили маркетинговое соглашение, но у них возникла проблема с тем, что название Vulcan уже принадлежало другой фирме. Нужно было срочно придумать новое.
Тейт предложил использовать уже не новый к тому времени маркетинговый ход, подсмотренный у Oracle: СУБД Vulcan переименовали в dBASE II — пропустив первую версию, чтобы сразу создать впечатление зрелости и надёжности.
📈 Результат оказался более чем впечатляющим: новая СУБД разошлась тиражом в миллионы копий, а формат таблиц .DBF стал стандартом де-факто на годы вперёд.
release_notes_18.2.26061101.txt
12.6 KB
Сообщаю Вам, что сегодня, спустя 12 недель после выхода версии 18.1, мы выложили на сайт новый релиз — версию 18.2 нашей СУБД Digital Q.DataBase.
…и многое, многое другое!
Ключевые новшества мы традиционно разберём отдельными постами.
📥 Напоминаю, что скачать релиз можно с сайта database.diasoft.ru — до 8 ядер бесплатно!
Следите за обновлениями!
Подпишись на МАХ канал!
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие подписчики!
🏃♀️ Мы продолжаем развивать экосистему Digital Q.DataBase.
Обновился дистрибутив Служб отчётов DIGITAL Q.DATABASE — нашего аналога SQL Server Reporting Services.
❗️ Что доступно в текущей версии:
· Обработка данных и выполнение запросов;
· Выражения, группировки и итоги;
· Табличный компонент (Tablix) для гибкого вывода данных;
· Master-detail (связь основного и подчинённых отчётов);
· Отчёты с изображениями;
· Форматирование чисел и дат;
· Разбивка на страницы, колонтитулы, стили;
· Экспорт готовых отчётов в HTML и PDF.
🔗 Скачать обновлённый дистрибутив Служб отчётов можно на официальном сайте https://database.diasoft.ru
Обратите внимание: это отдельный дистрибутив, устанавливаемый независимо от СУБД.
Доступен под все поддерживаемые операционные системы.
Обновился дистрибутив Служб отчётов DIGITAL Q.DATABASE — нашего аналога SQL Server Reporting Services.
· Обработка данных и выполнение запросов;
· Выражения, группировки и итоги;
· Табличный компонент (Tablix) для гибкого вывода данных;
· Master-detail (связь основного и подчинённых отчётов);
· Отчёты с изображениями;
· Форматирование чисел и дат;
· Разбивка на страницы, колонтитулы, стили;
· Экспорт готовых отчётов в HTML и PDF.
Обратите внимание: это отдельный дистрибутив, устанавливаемый независимо от СУБД.
Доступен под все поддерживаемые операционные системы.
Please open Telegram to view this post
VIEW IN TELEGRAM
1 5 3 3
Поэтому рекомендую посмотреть это видео, в котором обсуждаются:
Особенно интересно будет тем, кто рассматривает импортозамещение СУБД, планирует миграцию с зарубежных платформ или следит за развитием российской экосистемы баз данных.
Подпишись на МАХ канал!
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие подписчики!
🙂 Продолжаем разбирать новшества версии 18.2. Сегодня — о базовых изменениях, которые упрощают установку и обновление СУБД.
Что добавлено
· Обеспечена возможность независимой установки частей СУБД. Три субмодуля (по одному на каждый SQL-диалект) теперь могут обновляться независимо друг от друга;
· По умолчанию установлены стандартные номера портов и имена пользователей в диалекте PostgreSQL — для повышения совместимости с приложениями;
· Подготовлена специальная версия pg_upgrade для перехода из предыдущих версий СУБД на группу из трёх субмодулей.
✔️ Новые возможности доступны в версии Digital Q.DataBase от 15 июня.
Что добавлено
· Обеспечена возможность независимой установки частей СУБД. Три субмодуля (по одному на каждый SQL-диалект) теперь могут обновляться независимо друг от друга;
· По умолчанию установлены стандартные номера портов и имена пользователей в диалекте PostgreSQL — для повышения совместимости с приложениями;
· Подготовлена специальная версия pg_upgrade для перехода из предыдущих версий СУБД на группу из трёх субмодулей.
Please open Telegram to view this post
VIEW IN TELEGRAM
Недавно пересматривал своё выступление на TAdviser и поймал себя на мысли, насколько актуально оно звучит до сих пор.
Тогда я рассказывал о том, что казалось почти невозможным для российского рынка СУБД:
► как перейти с Oracle и Microsoft SQL Server без переписывания миллионов строк бизнес-логики;
► почему подход «давайте перепишем всё приложение» в большинстве случаев обречён на провал;
► чем Digital Q.DataBase отличается от классических PostgreSQL-форков;
► зачем мы пошли по пути совместимости с T-SQL и PL/SQL вместо того, чтобы заставлять заказчиков переписывать код.
В выступлении я подробно объясняю идею полиглот-СУБД: почему проще научить базу данных понимать существующие диалекты, чем переписывать десятилетиями накопленную бизнес-логику корпоративных систем.
Отдельно затрагиваются темы:
Это видео интересно посмотреть ещё и потому, что в нём хорошо видно, на каких принципах изначально строилась Digital Q.DataBase и почему мы выбрали именно такой путь развития.
Подпишись на МАХ канал!
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие подписчики!
Сегодня, 20 июня, — Всемирный день Wi-Fi.
Ровно 27 лет назад, в 1999 году, эта технология была официально представлена миру. Тогда мало кто мог представить, что беспроводной интернет станет таким же привычным, как электричество в розетке.
Wi-Fi давно перестал быть просто удобством — он стал частью повседневной жизни. Работа, общение, развлечения, учёба — всё это прочно связано с беспроводным интернетом, который мы сегодня воспринимаем как должное.
С праздником! Пусть ваш Wi-Fi всегда будет быстрым, а связь — стабильной.
Сегодня, 20 июня, — Всемирный день Wi-Fi.
Ровно 27 лет назад, в 1999 году, эта технология была официально представлена миру. Тогда мало кто мог представить, что беспроводной интернет станет таким же привычным, как электричество в розетке.
Wi-Fi давно перестал быть просто удобством — он стал частью повседневной жизни. Работа, общение, развлечения, учёба — всё это прочно связано с беспроводным интернетом, который мы сегодня воспринимаем как должное.
С праздником! Пусть ваш Wi-Fi всегда будет быстрым, а связь — стабильной.
Запуск первой программы из оперативной памяти компьютера
🔥 Ровно 78 лет назад, 21 июня 1948 года, в Манчестере случилось то, без чего не было бы современного нам ИТ.
ЭВМ с ласковым названием «Baby» успешно выполнила первую в мире программу, которая хранилась не на перфокартах, а в оперативной памяти этого компьютера.
Это был прорыв: 17 инструкций, написанных в двоичном коде, и компьютер понял их без подсказок с бумажных носителей. Именно тогда родилась архитектура фон Неймана — фундамент, на котором стоят все современные ПК, серверы и даже ваши смартфоны.
До этого — компьютер был большой вычислительной машиной.
После этого — он стал универсальным устройством, способным менять программы на лету.
Интересный факт:
Первую успешную программу написал Том Килберн. Она вычисляла наибольший делитель числа — и сделала это за 52 минуты (процессор был небыстрым). Но эти минуты изменили мир.
P.S. С тех пор хранение данных в памяти стало священным правилом. И даже если Вы администрируете огромную СУБД, помните: всё началось с крошечного «Baby» и 17 строк кода. 🧬
🔥 Ровно 78 лет назад, 21 июня 1948 года, в Манчестере случилось то, без чего не было бы современного нам ИТ.
ЭВМ с ласковым названием «Baby» успешно выполнила первую в мире программу, которая хранилась не на перфокартах, а в оперативной памяти этого компьютера.
Это был прорыв: 17 инструкций, написанных в двоичном коде, и компьютер понял их без подсказок с бумажных носителей. Именно тогда родилась архитектура фон Неймана — фундамент, на котором стоят все современные ПК, серверы и даже ваши смартфоны.
До этого — компьютер был большой вычислительной машиной.
После этого — он стал универсальным устройством, способным менять программы на лету.
Интересный факт:
Первую успешную программу написал Том Килберн. Она вычисляла наибольший делитель числа — и сделала это за 52 минуты (процессор был небыстрым). Но эти минуты изменили мир.
P.S. С тех пор хранение данных в памяти стало священным правилом. И даже если Вы администрируете огромную СУБД, помните: всё началось с крошечного «Baby» и 17 строк кода. 🧬
Для чего нужна команда MERGE
Пример использования
-- Синхронизация целевой таблицы с источником
MERGE INTO Employees AS Target
USING NewEmployees AS Source
ON Target.id = Source.id
WHEN MATCHED AND Target.name != Source.name THEN
UPDATE SET name = Source.name, updated = GETDATE()
WHEN NOT MATCHED BY TARGET THEN
INSERT (id, name, department)
VALUES (Source.id, Source.name, Source.department);
Как это работает
· WHEN MATCHED — если строки совпадают по условию, выполняется обновление;
· WHEN NOT MATCHED BY TARGET — если строка есть в источнике, но отсутствует в цели, выполняется вставка;
· WHEN NOT MATCHED BY SOURCE — если строка есть в цели, но отсутствует в источнике, можно удалить или обновить её.
Области применения
· Синхронизация таблиц с эталонным источником данных;
· Загрузка изменений из временных таблиц в основные;
· Обновление справочников без написания сложной логики проверок.
Please open Telegram to view this post
VIEW IN TELEGRAM
Такой подход упрощает сопровождение системы и позволяет использовать только необходимые компоненты.
https://habr.com/ru/companies/diasoft_company/articles/1049504/
Подпишись на МАХ канал!
#DigitalQDataBase #Diasoft #PostgreSQL #Oracle #MSSQL #AstraLinux #СУБД #Импортозамещение
Please open Telegram to view this post
VIEW IN TELEGRAM
Дорогие подписчики!
➡️ Продолжаем рассказывать о новшествах версии 18.2. Сегодня — о расширении qdb_trace для отслеживания работы сеансов в реальном времени.
Для чего оно нужно
✔️ qdb_trace позволяет отслеживать выполнение SQL-запросов, транзакций и DDL-операций. Полезно при отладке и поиске узких мест.
Что отслеживается
· SQL-запросы (SELECT, INSERT, UPDATE, DELETE);
· Транзакции (BEGIN, COMMIT, ROLLBACK);
· DDL-операции (CREATE, ALTER, DROP);
· Ожидания и статистика по времени;
· Сервисные операции (checkpoint, vacuum).
Как установить
В postgresql.conf в параметр shared_preload_libraries добавить qdb_trace.
Как запустить
· Текущая сессия:
· Другая сессия (по PID):
· Все сессии:
Настройка детализации
Как остановить
· Текущая сессия:
· По PID:
· Все сессии:
🔗 Подробная инструкция тут
✔️ Расширение доступно в версии Digital Q.DataBase от 15 июня.
Для чего оно нужно
Что отслеживается
· SQL-запросы (SELECT, INSERT, UPDATE, DELETE);
· Транзакции (BEGIN, COMMIT, ROLLBACK);
· DDL-операции (CREATE, ALTER, DROP);
· Ожидания и статистика по времени;
· Сервисные операции (checkpoint, vacuum).
Как установить
CREATE EXTENSION qdb_trace;
В postgresql.conf в параметр shared_preload_libraries добавить qdb_trace.
Как запустить
· Текущая сессия:
SELECT qdb_trace_start();· Другая сессия (по PID):
SELECT qdb_trace_start(<pid>);· Все сессии:
SELECT qdb_trace_start_all();Настройка детализации
· qdb_trace.explain = on|off — план выполнения;· qdb_trace.waitings = on|off — ожидания;· qdb_trace.buffers = on|off — статистика буферов.Как остановить
· Текущая сессия:
SELECT qdb_trace_stop();· По PID:
SELECT qdb_trace_stop(<pid>);· Все сессии:
SELECT qdb_trace_stop_all();
Please open Telegram to view this post
VIEW IN TELEGRAM