Мощная система управления контентом для индустрии онлайн маркетинга

Основные технологии

HTML5
CSS3
Node.js
Backbone
Marionette
Ruby
MySQL

Резюме

СивинТэк Групп занимается разработкой программного обеспечения с 2012 года. Наши высококвалифицированные специалисты создают инновационные продукты для клиентов со всего земного шара, в самых различных областях бизнеса.Мы обеспечим сопровождение проекта, начиная с проектирования, построения архитектуры, создания дизайна и стиля, и заканчивая разработкой программного продукта, тестированием, обслуживанием и поддержкой.

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

Задача

Растущее внимание к свободному обращению информации в США создаёт новые возможности для работы в этой области. Одной из некоммерческих групп удалось разработать и развить идею, с которой они смогли заручиться поддержкой ряда государственных структур, для того, чтобы спланировать, профинансировать и провести разработку продукта, направленного на интеграцию данных, полученных и публикуемых специализированными учреждениями. Задача этого продукта — создание и поддержка единых баз данных, полезных как для частных заинтересованных лиц так и компаний, которые могут опираться на эти данные при оценке рынков, планировании и принятии решений.

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

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

- Быть верифицированным. Процессы контроля качества и непрерывной интеграции, присутствие nightly-тестов и широкое применения unit-тестирования, должно обеспечить заданный стандарт качества и бесперебойности работы. Ошибка, найденная в процессе ручного тестирования должна быть редким и исключительным событием.

- Быть контролируемым. Работа системы должна быть прозрачной: все основные показатели скорости и стабильности должны быть легко доступны, сбои должны быть видны сразу, и их диагностика и исправление не должны занимать много времени.

- Быть наращиваемым. Новые источники данных обнаруживаются и встраиваются в систему постоянно, добавляются новые базы данных и виды отчётов, и при первоначальном конструировании системы обязательно должен быть предусмотрен и отработан её предсказуемый рост.

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

Быть гибким. Civic Journals должен выполнять крайне разнообразный список типов задач: загрузка, анализ и обработка данных в произвольном формате. В настоящее время существуют десятки различных источников, многие из которых требуют особенного подхода для того, чтобы получить подготовленные для них данные.

решение

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

Основные модули системы:

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

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

- Предварительный просмотр. MapReduce решения подходят по цене, обеспечивая при этом высокую пропускную способность, это наносит вред, латентность - вновь доступные наборы данных иногда готовы после значительной задержки. Для того, чтобы выравнивать это ограничение обычно называют λ. Это означает, что как только новые данные приходит в систему, технологический процесс обработки разделяется на две ветви:. одна ветвь бежит нормальный поток MapReduce, а другой создает предварительный просмотр результата. Этот предварительный просмотр не гарантирует абсолютную точность, вводя некоторые погрешности. поля или как-то неполное представление, но дает быстрый взгляд подхалима в конечный результат, будучи в конечном счете заменен на 100%.

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

результат

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

Свяжитесь с нами

Контакты

Ищете команду сильных и опытных инженеров для вашего проекта? Мы можем помочь!

Email:sales@sivintech.com
EMEA:+375 (44) 537 7000
+375 (17) 221 2046
Address:Pobediteley ave 7A Office 13, Minsk, Belarus
Отправьте нам сообщение
Sending...
Your message has been sent to us.
We will reach you back at a first chance.