• Обзор гибких методологий проектирования DWH

      Разработка хранилища — дело долгое и серьезное.

      Многое в жизни проекта зависит от того, насколько хорошо продумана объектная модель и структура базы на старте.

      Общепринятым подходом были и остаются различные варианты сочетания схемы “звезда” с третьей нормальной формой. Как правило, по принципу: исходные данные — 3NF, витрины — звезда. Этот подход, проверенный временем и подкрепленный большим количеством исследований — первое (а иногда и единственное), что приходит в голову опытному DWH-шнику при мысли о том, как должно выглядеть аналитическое хранилище.

      С другой стороны — бизнесу в целом и требованиям заказчика в частности свойственно быстро меняться, а данным — расти как “вглубь”, так и “вширь”. И вот тут проявляется основной недостаток звезды — ограниченная гибкость.

      И если в вашей тихой и уютной жизни DWH-разработчика внезапно:

      • возникла задача “сделать быстро хоть что-то, а потом посмотрим”;
      • появился бурно развивающийся проект, с подключением новых источников и переделкой бизнес-модели минимум раз в неделю;
      • появился заказчик, который не представляет как система должна выглядеть и какие функции выполнять в конечном итоге, но готов к экспериментам и последовательному уточнению желаемого результата с последовательным же приближением к нему;
      • заглянул менеджер проектов с радостной вестью: “А теперь у нас аджайл!”.

      Или если вам просто интересно узнать как еще можно строить хранилища — вэлкам под кат!


      Читать дальше →
    • Apache Kafka и потоковая обработка данных с помощью Spark Streaming

      • Tutorial
      Привет, Хабр! Сегодня мы построим систему, которая будет при помощи Spark Streaming обрабатывать потоки сообщений Apache Kafka и записывать результат обработки в облачную базу данных AWS RDS.

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

      Как реализовать этот кейс без применения магии и волшебных заклинаний — читаем под катом! Поехали!


      (Источник картинки)
      Читать дальше →
      • +16
      • 19.7k
      • 5
    • Высокодоступный и масштабируемый Elasticsearch в Kubernetes

      • Translation

      image
      В предыдущем посте мы масштабировали набор реплик MongoDB и познакомились со StatefulSet. Сейчас мы займемся оркестрацией кластера высокой доступности Elasticsearch (с другими мастер-нодами, нодами данных и клиентскими нодами) и задействуем ES-HQ и Kibana.


      Вам понадобятся:


      1. Базовое представление об Elasticsearch, его типах нод и их ролях.
      2. Работающий кластер Kubernetes как минимум с тремя нодами (не меньше четырех ядер, 4 ГБ).
      3. Умение работать с Kibana.
      Читать дальше →
      • +12
      • 12k
      • 2
    • СМЭВ 3. Электронная подпись сообщений на Java и КриптоПро

      • Tutorial


      Система межведомственного электронного взаимодействия (СМЭВ) задумывалась как цифровая среда предоставления услуг и исполнения государственных и муниципальных функций в электронной форме.

      В настоящее время СМЭВ продолжает расширять свои возможности и вовлекать все большее количество участников взаимодействия.

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

      В этой статье мы поговорим о том, как своими силами подписать запросы и проверить электронные подписи ответов СМЭВ версии 3.0, и о паре интересных нюансов, с которыми пришлось при этом столкнуться.
      Читать дальше →
    • Оптимизация настроек ПИД регулятора по интегральному критерию качества регулирования

      • Tutorial


      Постановка задачи оценки качества регулирования


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

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

      До настоящего времени остаётся не выясненным, какой из интегральных критериев линейный или квадратичный выбрать для оптимизации настроек регуляторов.

      В данной публикации определение оптимальных настроек регулятора осуществляется на основе критерия оптимальности в виде суммы линейного и квадратичного интегральных показателей качества регулирования.
      Читать дальше →
      • +10
      • 8.7k
      • 2
    • Введение в Data Vault



        Большинство компаний сегодня накапливают различные данные, полученные в процессе работы. Часто данные приходят из различных источников — структурированные и не очень, иногда в режиме реального времени, а иногда они доступны в строго определенные периоды. Все это разнообразие нужно структурированно хранить, чтоб потом успешно анализировать, рисовать красивые отчеты и вовремя замечать аномалии. Для этих целей проектируется хранилище данных (Data Warehouse, DWH).

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

        Кому будет интересна эта статья?


        • Ищете более функциональную альтернативу схеме «звезды» и Третьей Нормальной Форме?
        • У Вас уже есть хранилище данных, но его тяжело дорабатывать?
        • Нужна хорошая поддержка историчности, а текущая архитектура для этого не подходит?
        • Возникают проблемы при сборе данных из нескольких источников?

        Если на какой-либо из этих вопросов Вы ответили утвердительно, и при этом не знакомы с Data Vault — прошу заглянуть под кат!
        Читать дальше →