Topos - Российская аналитическая платформа
Микросервисная платформа с собственным, полностью визуальным языком программирования
Участвовать в Бета-тесте
В основе Topos лежит соединение несколькоих концепций
Ассоциативная сеть данных In-Memory
Модель данных Topos представляет из себя замкнутую сеть данных In-Memory (фигура Тор из топологии). Все данные связаны друг с другом.
No Code
Да, никакого кода или компромиссов Low Code для пользователя. Управление данными, семантическим слоем, связыванием данных и т.п. происходит без написания кода.
No SQL
2 раза No SQL: нереляционная, собственная модель хранения данных, а также отсутствие SQL синтаксиса (Например, при ETL пользователь не делает Joins, Concatenate и тп действий), Topos связывает данные сам.
Микросервисная архитектура
Topos состоит из компонентов. Каждый компонент выполняет определенную функцию. Такой подход позволяет собрать Topos под любую безнес-задачу.
Self Service
Самообслуживание так, как оно должно быть в 21 веке.
Администраторы настраивают систему и серверы.
Разработчики предоставляют данные.
Пользователи используют данные и модели так, как им требуется самим.
Расширяемость
Topos имеет расширяемое API. Изначально ядро разрабатывается в концепции API First, что позволяет любому разработчику создать свои компоненты к платформе (коннекторы, визуализации, драйвера, элементы интерфейса, решения целиком)
Текущая реализация компонентов Topos
Backend
BACKEND: Topos Server, содержит:
- Вычислительно ядро
- Ассоциативную сеть данных In-Memory
- Pandas API
- Topos API
Frontend
FRONTEND 1C: Клиентская часть в 1С, для тех пользователей, у кого основная работа ведется в любой конфигурации 1С. Позволяет выбирать данные из 1С, работать с метаданными 1С, других источников, плосих файлов (XLS, XML, JSON, CSV), рисовать схемы обработки данных на уровне бизнес логики, выводить данные в приемник. На стороне клиента 1С нет вычислений, за них отвечает Backend
FRONEND WEB: Web-версия пользовательского клиента, подходит для любых систем-источников данных, СУБД. Является функционально копией клиентской части на 1С, реализованной средствами web-разработки.
Подробнее про 1С клиент
Подробнее про Web-клиент
Пример приложения обработки данных
В данном примере на основе Topos Client для 1С продемонстрированы экраны загрузки, обработки и выгрузки данных в Qlik. Все схемы реализованы на визуальном языке Topos
Макросхема загрузки данных
Мета модель, в данном примере есть загрузка данных из источников (Extract), стрелка само на себя указывает на то, что данные также обновляются инкрементально. Объект Сопоставленные данные - содержит в себе отдельную схему, как именно входящие данные из источников будут связаны и сопоставлены (Transform). Финальный третий объект на схеме - выгрузка (Load) обработанных данных для использования в системе Qlik, Power BI, Visiology, FineBI и любой иной системе.
Управление метаданными
Здесь, в объекте Extract пользователь выбрает метаданные, которые далее будут использоваться для формирования ассоциативной сети данных In-Memory. В текущем примере данные выбираются из регистров и таблиц 1С.
Полная схема объекта Extract
Выраженная на языке Topos - то есть на языке отношений одних объектов с другими, полная схема этапа загрузки данных из источников. Здесь загружаются данные о чеках, а также мастер-справочник из Excel, содержаший данные о номенклатурах, кодах товаров и т.п. Для точности, на изображении представлена внутреняя схема объекта со стрелкой само на себя (с первого слайда).
Схема обработки данных (Transform)
Второй объект первой схемы - сопоставление, здесь мы определяем, что произойдет с данными из двух источников. А именно указываем стрелкой, что нам нужно данные соединить. И соединяем. Здесть нет соединений слева, справа, снизу, вверх, разных направлений, 1:M, M:N и т.п. Есть только фактическая возможность соединить данные и получить множество, из которого, вы сможете забрать тот массив данных, который нужен. Соединив данные из источников, далее следует выбрать из обнаруженных возможных вариантов связей только те, которые нужны (см. рисунок ниже).
Соединение таблиц
Здесь происходит выбор какие таблицы через какие поля будем соединять. Topos автоматически обнаруживает возможные связи, которые присутствуют в данных (сканирует значения, названия полей не играют роли), и если на уровне значений возможно установить связь - то она будет обнаружена. Все, что требутся дальше, оставить только те связи, которые нам логически нужны.
Выгрузка данных во внешнюю систему (Load)
Финальная схема, а именно третий объект самого первого слайда, где пользователь указал, какие ранее созданные объекты использовать, и в каком отношении друг с другом. Операция Выгрузка чеков - есть последнее действие, а именно запись обработанных ранее полей во внешнюю систему приемник. Если сделать двойной клик на объект Выгрузка чеков, то пользователю на отдельном экране будет предложено сопоставить, какие поля из ассоциативной сети данных (обработанные данные), записать в какие поля системы-приемника.
Выбор полей для выгрузки (Load)
На данном экране пользователь выбирает, какие поля из имеющейся модели данных будут выгружаться из Topos в систему-приемник, с какими наименованиями.
Кто уже использует Topos:
Roadmap по разработке на ближайшее время
Каждый день наша команда разрабатывает Topos и добавляет новые компоненты, модули, функционал. Ниже представлен план разработки до 31.12.2022
  • 1
    Формы ввода данных - конец Октября 2022
    Формы ввода позволят реализовать функционал, связанный с планированием, бюджетированием и любыми иными задачами, где требуется контролируемый ввод данных в систему от пользователя.
  • 2
    Оптимизация интерфейса - Октябрь 2022
    Сокращение рутинных действий, когда сейчас требуется 7-8 кликов в системе, но будет 3-4 клика для достижения того же результата. Кроме того, будет добавлено множество контроллеров "защиты" от дурака, если пользователь забыл нажать какую-либо кнопку, нарисовать объект на схеме и т.д.
  • 3
    Базовые элементы моделирования - Декабрь 2022
    Формы ввода в связке с базовыми функциями моделирования позволят пользователю моделировать события Что если? Например, на основе истории продаж и предыдущих рекламных кампаний, моделировать будущие рекламные кампании и осуществлять мониторинг их эффективности. В последстии, этот модуль будет доработан до Основного модуля ситуационного моделирования Topos Modeling.
  • 4
    Разработка модуля Topos Visualizator - Декабрь 2022
    Разработка первой версии визуализации данных Topos. На сегодня, Topos умеет связать данные из любых источников, средставми отрисовки схем загрузки данных на языке бизнеса, умеет развернуть данные в ассоциативной сети In-Memory, умеет выдать данные в приемник, то есть записать в любую СУБД, в файлы Паркет, в плоские файлы. Но не может визуализировать данные.
    На текущий момент готов архитектура визуализатора. Изначально, он разрабатывается исходя из концепций: Кроссфильтрация по-умолчанию, Фильтрация по клику, Работа с множествами данных (Qlik Expression, DAX подобное написание формул)
Как все эти подходы связаны и какие возможности существуют?
  • 1
    Создание приложений
    Создавать различные приложения с самой разнообразной структурой метаданных и бизнес логики.
  • 2
    Подключение к приложением внешних компонент
    Подключать к таким приложениям сторонние библиотеки, базы данных прочие источники и приёмники данных как описание API в простом JSON или XML, которые по факту являются одной из обязательных составляющих современной документации к любому ПП имеющему открытый API.
  • 3
    Метаданные и семантика
    За счёт минимальных требований к метаданным методы и решения, применённые для одной задачи, могут быть трансформированы и использованы в совершенно другой. Подход позволяет шаблонизировать решения. По сути, каждое созданное в такой структуре решение уже будет являться готовым шаблоном. При этом можно использовать шаблон не целиком, а только в той части, которая необходима, чего не позволяет каждый из составляющих подходов по отдельности.
  • 4
    Накопление методологии
    Это позволяет вести накопление методологических наработок в корпоративных центрах компетенций.
  • 5
    Шаблонизация
    А за счёт микросервисной архитектуры и сетевого представления данных перенос шаблонов не требует создания и разработки отдельного хранилища, и разработки, и интеграции средств контроля исполнения шаблонов. А именно обычно является основной технической проблемой при организации таких центров компетенций, которая снижает организационную эффективность центров компетенций
А теперь детально, как это все работает? ВНИМАНИЕ!!! Много текста:
Серверная часть
  • Web-server
    Промышленного веб сервера, на котором осуществляется обработка запросов от рабочих станций
  • Socket-server
    Socket сервер для обработки REST запросов в обе стороны.
  • Администрирование
    На socket сервере разворачивается серверная модель для администрирования кластера серверов.
  • Серверная модель
    Внутри серверной модели уже разворачиваются рабочие пространства метамоделей.
Отзывы наших клиентов
Попробуйте использовать Topos
Принимайте участие в разработке вместе с нами
© 2019-2022 ООО "ТОПОС ЯДРО"
ПРОДУКТ
  • Домашняя страница
  • Тур
  • Отзывы
  • Цены
TOPOS
  • Компания
  • Поддержка
  • Блог
  • Инвестирование
Разработка
  • База знаний
  • Видео туториалы
  • Интеграции
  • Разработчикам