Эта статья требует дополнительных ссылок для проверки . ( январь 2013 г. ) ( Узнайте, как и когда удалить это сообщение-шаблон ) |
Mashup (компьютерная индустрия жаргоне ), в вебе - разработке , является веб - страница или веб - приложения , которые используют контент из более чем одного источника , чтобы создать единый новый сервис отображается в одном графическом интерфейсе. Например, пользователь может объединить адреса и фотографии филиалов своей библиотеки с картой Google для создания гибридного приложения. [1] Термин подразумевает простую и быструю интеграцию, часто используя открытые интерфейсы прикладного программирования ( open API) и источники данных для получения расширенных результатов, которые не обязательно явились первоначальной причиной создания исходных данных. Термин «мэшап» изначально означает создание чего-либо путем объединения элементов из двух или более источников. [2] В недавнем английском языке это может относиться к музыке, где люди плавно сочетают звук одной песни с вокальной дорожкой другой, тем самым объединяя их вместе, чтобы создать что-то новое.
Основными характеристиками мэшапа являются комбинирование, визуализация и агрегирование. Важно сделать существующие данные более полезными для личного и профессионального использования. Чтобы иметь возможность постоянного доступа к данным других сервисов, гибридные приложения обычно представляют собой клиентские приложения или размещаются в Интернете.
В прошлые годы [ когда? ] , все больше и больше веб-приложений публикуют API-интерфейсы, которые позволяют разработчикам программного обеспечения легко интегрировать данные и функции в стиле SOA , вместо того, чтобы создавать их самостоятельно. Можно считать, что гибридные приложения играют активную роль в развитии социального программного обеспечения и Web 2.0 . Инструменты составления мэшапов обычно достаточно просты для использования конечными пользователями. Обычно они не требуют навыков программирования и скорее поддерживают визуальное связывание виджетов , сервисов и компонентов графического интерфейса . Таким образом, эти инструменты вносят вклад в новое видение Интернета , в котором пользователи могут внести свой вклад. [ требуется разъяснение ]
Термин «мэшап» формально не определяется ни одним органом по стандартизации. [3]
История [ править ]
Более широкий контекст истории Интернета обеспечивает основу для разработки гибридных приложений. В рамках модели Web 1.0 организации хранят данные о потребителях на порталах и регулярно их обновляют. Они контролировали все данные о потребителях, и потребитель должен был использовать их продукты и услуги для получения информации. [ необходима цитата ]
С появлением Web 2.0 были введены Web-стандарты, которые были широко приняты традиционными конкурентами и открыли доступ к данным потребителей. В то же время появились гибридные приложения, позволяющие смешивать и сопоставлять API конкурентов для разработки новых сервисов.
В первых гибридных приложениях использовались картографические или фото-сервисы для объединения этих сервисов с данными любого типа и, следовательно, для визуализации данных. [4] [ неудачная проверка ] Вначале большинство гибридных приложений были ориентированы на потребителей, но в последнее время [ когда? ] мэшап должен быть увиден [ кем? ] как интересное понятие, полезное также для предприятий. Бизнес-гибридные приложения могут комбинировать существующие внутренние данные с внешними службами для создания новых представлений о данных.
Типы мэшапов [ править ]
Существует много типов гибридных приложений, таких как гибридные бизнес-приложения, клиентские гибридные веб-приложения и гибридные веб-приложения. [5] Наиболее распространенный тип гибридных приложений - это потребительские гибридные веб-приложения, предназначенные для широкой публики.
- Гибридные приложения для бизнеса (или предприятия ) определяют приложения, которые объединяют свои собственные ресурсы, приложение и данные с другими внешними веб-службами . [4] Они объединяют данные в единую презентацию и позволяют сотрудничать предприятиям и разработчикам. Это хорошо работает для проекта гибкой разработки , который требует сотрудничества между разработчиками и заказчиком (или доверенным лицом клиента, обычно менеджером по продукту) для определения и реализации бизнес-требований. Корпоративные гибридные веб-приложения - это безопасные, визуально насыщенные веб-приложения, которые предоставляют полезную информацию из различных внутренних и внешних источников информации.
- Потребительские гибридные приложения объединяют данные из нескольких общедоступных источников в браузере и упорядочивают их с помощью простого пользовательского интерфейса браузера. [6] (например: Wikipediavision объединяет Google Map и Wikipedia API)
- Мэшапы данных, в отличие от клиентских гибридных приложений, объединяют похожие типы носителей и информацию из нескольких источников в единое представление. Комбинация всех этих ресурсов создает новую и отличную веб-службу, которая изначально не была предоставлена ни одним из источников.
По типу API [ править ]
Мэшапы также можно классифицировать по основному типу API, который они используют, но любой из них можно комбинировать друг с другом или встраивать в другие приложения.
Типы данных [ править ]
- Проиндексированные данные (документы, блоги, изображения, видео, статьи о покупках, вакансии ...), используемые метапоисковыми системами
- Картографические и географические данные: программное обеспечение для геолокации , геовизуализация
- Ленты, подкасты: агрегаторы новостей
Функции [ править ]
- Конвертеры данных: языковые переводчики , обработка речи , сокращатели URL ...
- Связь: электронная почта , обмен мгновенными сообщениями , уведомление ...
- Визуальная визуализация данных: визуализация информации , диаграммы
- Связанные с безопасностью: электронные платежные системы , идентификация личности ...
- Редакторы
Активатор Mashup [ править ]
В технологиях активатор гибридных приложений - это инструмент для преобразования несовместимых ИТ-ресурсов в форму, позволяющую их легко комбинировать для создания гибридных приложений. Средства поддержки Mashup позволяют применять мощные методы и инструменты (такие как платформы mashup) для комбинирования данных и сервисов с новыми видами ресурсов. Примером активатора гибридного веб-приложения является инструмент для создания RSS- канала из электронной таблицы (который нелегко использовать для создания гибридного веб-сайта). Многие редакторы mashup включают средства поддержки mashup, например Presto Mashup Connectors, Convertigo Web Integrator или Caspio Bridge .
Возможности создания гибридных приложений также называются «поставщиками услуг и инструментов, [sic] которые делают возможными гибридные приложения». [ необходима цитата ]
История [ править ]
Ранние гибридные приложения создавались энтузиастами-программистами вручную. Однако по мере того, как гибридные веб-приложения стали более популярными, компании начали создавать платформы для создания гибридных веб-приложений, которые позволяют дизайнерам визуально создавать гибридные веб-приложения, соединяя вместе компоненты гибридных веб-приложений.
Редакторы гибридных веб-приложений значительно упростили создание гибридных приложений, значительно повысив продуктивность разработчиков гибридных веб-приложений и даже открыв разработку гибридных веб-приложений для конечных пользователей и экспертов, не являющихся ИТ-специалистами. Стандартные компоненты и соединители позволяют дизайнерам легко комбинировать ресурсы гибридных приложений самыми разными способами. Однако гибридные платформы мало что сделали для расширения объема ресурсов, доступных для гибридных веб-приложений, и не освободили гибридные веб-приложения от их зависимости от хорошо структурированных данных и открытых библиотек ( RSS- каналы и общедоступные API ).
Для решения этой проблемы были разработаны средства поддержки гибридных приложений, которые обеспечивают возможность преобразования других видов данных и служб в объединяемые ресурсы.
Интернет-ресурсы [ править ]
Конечно, не все ценные данные находятся внутри организаций. Фактически, наиболее ценная информация для бизнес-аналитики и поддержки принятия решений часто находится вне организации. С появлением разнообразных интернет-приложений и онлайн-порталов в сети становится доступен широкий спектр критически важных бизнес-процессов (например, заказы). К сожалению, очень немногие из этих источников данных распространяют контент в формате RSS, и очень немногие из этих сервисов предоставляют общедоступные API. Поэтому редакторы гибридных приложений решают эту проблему, предоставляя средства поддержки или соединители.
Проблемы интеграции данных [ править ]
При интеграции данных из разных источников необходимо решить ряд проблем. Проблемы можно разделить на четыре группы: несоответствие текста и данных, несоответствие идентификаторов объектов и схемы, несоответствие уровня абстракции, точность данных. [7]
Несоответствие текста и данных [ править ]
Большая часть данных описана в тексте. Человеческий язык часто неоднозначен - одна и та же компания может упоминаться в нескольких вариантах (например, IBM, International Business Machines и Big Blue). Неопределенность затрудняет создание перекрестных ссылок со структурированными данными. Кроме того, данные, выраженные на человеческом языке, трудно обрабатывать с помощью программного обеспечения. Одна из функций системы интеграции данных - преодолеть несоответствие между документами и данными. [7]
Идентификация объекта и отдельные схемы [ править ]
Структурированные данные доступны во множестве форматов. Таким образом, перевод данных в общий формат данных является первым шагом. Но даже если все данные доступны в едином формате, на практике источники различаются по тому, как они констатируют один и тот же факт. Различия существуют как на уровне отдельных объектов, так и на уровне схемы. В качестве примера несоответствия на уровне объекта рассмотрим следующее: SEC использует так называемый центральный индексный ключ (CIK) для идентификации людей (генеральных директоров, финансовых директоров), компаний и финансовых инструментов, в то время как другие источники, такие как DBpedia ( версия Википедии со структурированными данными), используйте URI для идентификации сущностей. Кроме того, каждый источник обычно использует свою собственную схему и особенности для констатации одного и того же факта. Таким образом,Должны существовать методы согласования различных представлений объектов и схем.
Уровни абстракции [ править ]
Источники данных предоставляют данные на несовместимых уровнях абстракции или классифицируют свои данные в соответствии с таксономией, относящейся к определенному сектору. Поскольку данные публикуются на разных уровнях абстракции (например, человек, компания, страна или сектор), данные, агрегированные для индивидуальной точки зрения, могут не совпадать с данными, например, из статистических управлений. Кроме того, существуют различия в географической агрегации (например, данные по регионам из одного источника и данные на уровне страны из другого). С этим связана проблема использования местных валют (доллар США и евро), которые необходимо согласовывать, чтобы данные из разрозненных источников можно было сопоставить и поддаются анализу.
Качество данных [ править ]
Качество данных является общей проблемой при автоматической интеграции данных из автономных источников. В открытой среде агрегатор данных практически не влияет на публикатора данных. Данные часто ошибочны, и объединение данных часто усугубляет проблему. Ошибочные данные, особенно при выполнении рассуждений (автоматический вывод новых данных из существующих), могут иметь разрушительное влияние на общее качество результирующего набора данных. Следовательно, проблема заключается в том, как издатели данных могут координировать свои действия для устранения проблем с данными или сайтами черных списков, которые не предоставляют надежные данные. Методы и приемы необходимы для: проверки целостности и точности; выделить, идентифицировать и подтвердить доказательства; оценить вероятность того, что данное утверждение верно; уравнять весовые различия между секторами рынка или компаниями;создать клиринговые центры для возбуждения и урегулирования споров между конкурирующими (и, возможно, конфликтующими) поставщиками данных; и взаимодействовать с беспорядочными ошибочными веб-данными потенциально сомнительного происхождения и качества. Таким образом, ошибки в обозначениях, количестве, маркировке и классификации могут серьезно затруднить использование систем, работающих с такими данными.
Мэшапы против порталов [ править ]
Мэшапы и порталы - это технологии агрегирования контента . Порталы - это более старая технология, разработанная как расширение традиционных динамических веб-приложений , в которых процесс преобразования содержимого данных в размеченные веб-страницы делится на две фазы: создание «фрагментов» разметки и объединение фрагментов в страницы. Каждый фрагмент разметки создается « портлетом », и портал объединяет их в одну веб-страницу. Портлеты могут размещаться локально на сервере портала или удаленно на отдельном сервере.
Технология портала определяет полную модель событий, охватывающую чтения и обновления. Запрос на объединенную страницу на портале преобразуется в отдельные операции чтения для всех портлетов, образующих страницу (" render
" операции на локальных портлетах JSR 168 или " getMarkup
" удаленные операции на портлетах WSRP ). Если кнопка отправки нажата на любом портлете на странице портала, она преобразуется в операцию обновления только для этого портлета ( processAction
на локальном портлете или performBlockingInteraction
на удаленном портлете WSRP). За обновлением сразу же следует чтение всех портлетов на странице.
Технология портала - это агрегирование на стороне сервера на уровне представления . Его нельзя использовать для управления более надежными формами интеграции приложений, такими как двухфазная фиксация .
Мэшапы отличаются от порталов следующим образом:
Портал | МЭШ-ап | |
---|---|---|
Классификация | Старая технология, расширение традиционной модели веб-сервера с использованием четко определенного подхода | Использует новые, нечетко определенные методы "Web 2.0". |
Философия / подход | Подходит к агрегированию, разделяя роль веб-сервера на два этапа: создание разметки и агрегация фрагментов разметки. | Использует API-интерфейсы, предоставляемые разными информационными сайтами, для агрегирования и повторного использования содержимого другим способом. |
Зависимости контента | Агрегирует фрагменты разметки, ориентированные на представление (HTML, WML, VoiceXML и т. Д.) | Может работать с чистым XML-контентом, а также с презентационно-ориентированным контентом (например, HTML) |
Зависимости от местоположения | Традиционно агрегация контента происходит на сервере. | Агрегация контента может происходить как на сервере, так и на клиенте. |
Стиль агрегации | Стиль " салат-бар ": агрегированный контент отображается "бок о бок" без дублирования. | Стиль « плавильный котел » - индивидуальный контент можно комбинировать любым способом, в результате чего получается произвольно структурированный гибридный контент. |
Модель событий | Модели событий чтения и обновления определяются через специальный API портлета. | Операции CRUD основаны на архитектурных принципах REST , но формального API не существует. |
Соответствующие стандарты | Поведение портлета регулируется стандартами JSR 168 , JSR 286 и WSRP , хотя макет страницы портала и функциональность портала не определены и зависят от поставщика. | Базовые стандарты - это XML, заменяемые на REST или веб-службы. Обычно используются RSS и Atom . Появляются более конкретные стандарты гибридных приложений, такие как EMML . |
Модель портала существует дольше и требует больших инвестиций и исследований продукта. Таким образом, портальная технология является более стандартизированной и зрелой. Со временем возрастающая зрелость и стандартизация технологии гибридных приложений, вероятно, сделают ее более популярной, чем портальная технология, поскольку она более тесно связана с Web 2.0 и, в последнее время, с сервис-ориентированными архитектурами (SOA). [8] Ожидается, что в новых версиях продуктов портала со временем будет добавлена поддержка mashup-приложений, но при этом будут поддерживаться устаревшие приложения с портлетами. В отличие от этого не ожидается, что технологии Mashup будут поддерживать стандарты порталов.
Деловые гибридные приложения [ править ]
Использование гибридных приложений в деловой среде расширяется. Бизнес-гибридные приложения полезны для интеграции бизнес-сервисов и сервисов данных, поскольку технологии бизнес-гибридных приложений дают возможность быстро разрабатывать новые интегрированные сервисы, объединять внутренние сервисы с внешней или персонализированной информацией и делать эти сервисы осязаемыми для бизнес-пользователей через удобный для пользователя Интернет. браузерные интерфейсы. [9]
Бизнес-гибридные приложения отличаются от потребительских гибридных приложений уровнем интеграции с бизнес-вычислительными средами, функциями безопасности и контроля доступа, управления и сложности используемых инструментов программирования (редакторов гибридных приложений). Еще одно различие между бизнес-гибридными приложениями и потребительскими гибридными приложениями - это растущая тенденция использования бизнес-гибридных приложений в коммерческом программном обеспечении как сервисе (SaaS).
Многие поставщики технологий гибридных бизнес-приложений добавили функции SOA .
Архитектурные аспекты гибридных приложений [ править ]
Архитектура мэшапа разделена на три уровня:
- Презентация / взаимодействие с пользователем : это пользовательский интерфейс гибридных приложений. Используемые технологии: HTML / XHTML , CSS , JavaScript , асинхронный JavaScript и Xml (Ajax) .
- Веб-службы: доступ к функциям продукта можно получить с помощью служб API. Используемые технологии: XMLHTTPRequest , XML-RPC , JSON-RPC , SOAP , REST .
- Данные: обработка данных, такая как отправка, хранение и получение. Используемые технологии: XML , JSON , KML .
Архитектурно существует два стиля гибридных приложений: веб-интерфейс и серверный. В то время как веб-гибридные приложения обычно используют веб-браузер пользователя для объединения и переформатирования данных, серверные гибридные веб -приложения анализируют и переформатируют данные на удаленном сервере и передают данные в браузер пользователя в его окончательной форме. [10]
Мэшапы кажутся разновидностью рисунка фасада . [11] То есть: шаблон проектирования программного обеспечения, который обеспечивает упрощенный интерфейс для большей части кода (в данном случае кода для агрегирования различных каналов с разными API ).
Мэшапы можно использовать с программным обеспечением, предоставляемым как услуга ( SaaS ).
После нескольких лет разработки стандартов основные предприятия начинают применять сервис-ориентированные архитектуры (SOA) для интеграции разрозненных данных, делая их доступными в виде отдельных веб-сервисов. Веб-сервисы предоставляют открытые стандартизованные протоколы для предоставления унифицированных средств доступа к информации с разнообразного набора платформ ( операционных систем , языков программирования , приложений ). Эти веб-службы можно повторно использовать для предоставления совершенно новых служб и приложений внутри и между организациями, обеспечивая гибкость бизнеса.
См. Также [ править ]
- Мэшап (культура)
- Мэшап (музыка)
- Открытый Mashup Alliance
- Открытый API
- Webhook
- Веб-портал
- Веб-скрапинг
Ссылки [ править ]
- ^ Фихтер Дарлин, Что такое мэшап? http://books.infotoday.com/books/Engard/Engard-Sample-Chapter.pdf (получено 12 августа 2013 г.)
- ^ "месиво" . merriam-webster.com .
- ^ «Корпоративные гибридные приложения: новое лицо вашей SOA» . http://soa.sys-con.com/ : МИРОВОЙ ЖУРНАЛ SOA . Проверено 3 марта 2010 .
Термин mashup не подлежит формальному определению ни одним органом по стандартизации.
- ^ a b Кларкин, Ларри; Холмс, Джош. "Enterprise Mashups" . Журнал архитектуры MSDN . Центр архитектуры MSDN.
- ^ Sunilkumar Peenikal (2009). «Мэшапы и предприятие» (PDF) . MphasiS - HP. Архивировано из оригинального (PDF) 02.06.2013 . Проверено 27 февраля 2010 .
- ^ «Корпоративные гибридные приложения: новое лицо вашей SOA» . http://soa.sys-con.com/ : МИРОВОЙ ЖУРНАЛ SOA . Проверено 3 марта 2010 .
Мэшап для потребителей - это приложение, которое объединяет данные из нескольких общедоступных источников в браузере и организует их с помощью простого пользовательского интерфейса браузера.
- ^ а б Э. Карри, А. Харт и С. О'Райен, «Проблемы, стоящие перед конвергенцией финансовых данных», Архивировано 18 июля 2012 г. в Archive.today в материалах семинара XBRL / W3C по улучшению доступа к финансовым данным. Данные в сети, 2009 г.
- ^ Digna Ларри (2007). «Gartner: будущее порталов - это гибридные приложения, SOA, агрегация» . ZDNET.
- Перейти ↑ Holt, Adams (2009). «Исполнительный ИТ-архитектор, бизнес-сценарии и шаблоны Mashup» . IBM DeveloperWorks.
- ^ Bolim, Майкл (2005). «Программирование конечных пользователей для Интернета, диссертация MIT MS, 2,91 МБ PDF» (PDF) . С. 22–23.
- ^ Шаблоны проектирования: элементы многоразового объектно-ориентированного программного обеспечения ( ISBN 0-201-63361-2 ) Эриха Гаммы, Ричарда Хелма, Ральфа Джонсона и Джона Влиссидеса
Дальнейшее чтение [ править ]
- Ахмет Сойлу, Феликс Мёдритшер, Фридолин Вильд, Патрик Де Каусмеккер, Пит Десмет. 2012 г. «Мэшапы с помощью оркестрации и личных сред на основе виджетов: ключевые проблемы, стратегии решений и приложение». Программа: Электронная библиотека и информационные системы 46 (4): 383–428.
- Эндрес-Ниггемейер, Бриджит изд. 2013. Семантические гибридные приложения. Интеллектуальное повторное использование веб-ресурсов. Springer. ISBN 978-3-642-36402-0 (Печатный)