Pull to refresh
3
0
Алексей @KosteevAlex

SQL Database Developer

Send message

Автоматизация обработки данных

Reading time3 min
Views1.9K

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

Завершающим этапом для загрузки, обработки данных и наполнения данных куба, можно назвать автоматизацию выполнения задач по расписанию. Для реализации этого в MS SQL Server имеется SQL Agent.

Предварительно необходимо создать учетную запись (Credential) (см. Рис. 1), из-под которой будет выполняться запуск заданий (Job).  Эта учетная запись должна быть связана с доменной учетной записью, которой будет предоставлены привилегии. Этой учетной записи можно выдавать доступы, например, в каталогах для загрузки и выгрузки файлов, доступа к серверам и т.п. Если данную учетную запись не создавать, то необходимо выдавать доступы для учетной записи SQL Agent, что может не соответствовать с вашей политикой безопасности в организации.

Читать далее
Total votes 2: ↑1 and ↓1+1
Comments0

Оптимизация данных в MS SQL

Reading time5 min
Views4.8K

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

Одним из методов для оптимизации обработки, хранения и администрирования данных в базе данных и кубах MS SQL — это процесс создании партицирования данных.

Partitioning (партицирование или по-другому секционирование) —  это разбиение таблицы на несколько частей, а эти части на одну или несколько файловых групп. Партицирование необходимо для целей ускорения доступа чтения или изменения данных и администрирования. Так как выровненный индекс по таблице будет содержаться в каждой условно своей секции, то при чтении или изменении данных будет обращение к конкретной секции и конкретному индексу в этой секции.

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

Пример кода для переноса в таблицу:

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments8

Визуализация данных

Reading time3 min
Views2.3K

Финальным результатом при построении аналитического хранилища является передача готовых данных пользователям.

Для отображения данных из OLAP кубов используется настольное приложение Business Analytics tools (BAT). Данное приложение состоит фактически из двух приложений: приложение для просмотра, редактирования отчетов пользователями и приложение для
администрирования, в котором создается подключение к кубам данных, выполняется настройка ролей для распределения прав доступов и создается базовая структура отчетов.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

Проектирование SSAS кубов

Reading time2 min
Views5.3K

Первым этапом для проектирования данных под OLAP кубы является распределение загруженных данных по таблицам по структуре Ральфа Кимбалла. Необходимо создать таблицы измерений, которые будут хранится в третьей нормальной форме. Создать, например, таблицы сущностей Договора, Клиенты, Счета, различные справочники и т.п. И так же создать таблицу фактов, т.е. та таблица, где будет происходить движение. Например, такой может быть таблица, в которой хранятся остатки по счетам клиента на определенную дату. Таблица фактов должна содержать в себе все ключевые поля, которые ссылаются на таблицы измерений. Такой классический вид имеет название: тип «Снежинка».

Таблицы измерений должный иметь primary key на ключевое поле. Таким образом таблица будет содержать unique clustered index (уникальный кластеризованный индекс), и таблица будет в нужном нам отсортированном порядке.

Таблица фактов должна иметь партицирование по отчетной дате и clustered index с составным ключом. И если это позволяет наш режим работы иметь партицирование по отчетной дате и clustered column store index (колоночный индекс). Данный тип хранения таблицы имеет ряд преимуществ - это 10-ти кратное сжатие данных и ускорение считывания данных при наборе их в куб, но обязательным условием для эффективного применения данного индекса является необходимость хранить более 1 миллиона строк на одну секцию.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

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

Reading time6 min
Views4.4K

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

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

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

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

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments11

Information

Rating
Does not participate
Location
Казань, Татарстан, Россия
Date of birth
Registered
Activity

Specialization

Database Developer
Lead
SQL
Git
Database
.NET
Oracle
Microsoft SQL Server
OOP
OLAP
SAS
SSIS