SAP IQ (также известная как SAP Sybase IQ и Sybase IQ) — колонко-ориентированная реляционная база данных, используемая в качестве программного обеспечения в бизнес-аналитике, а также как хранилище данных и витрина данных. Разработана в Sybase Inc., сейчас принадлежащей SAP. Основная функция Sybase IQ — анализ больших данных в условиях низкой стоимости, а также создание высокодоступной программной среды. SAP IQ часто позиционируют как пионера среди коммерческих СУБД с поколоночным хранением данных.

В основе работы SAP IQ лежит высокопроизводительная технология поколоночного хранилища данных, повышающая скорость сжатия данных и выполнения запросов ad-hoc без дополнительных настроек, при этом гарантирующая высокую масштабируемость и применение в облачных сервисах. Также SAP IQ предусматривает возможность разрабатывать интеллектуальные приложения на её основе. SAP IQ используется в аналитических базах данных, интеллектуальных клиентских API, веб-технологиях.

История править

История продукта берёт начало в 1993 г., с компании Expressway Technologies из Бостона, разработавшей колонко-ориентированную базу данных (КБД) нового поколения для обработки сложных аналитических запросов, в конечном итоге получившей название Sybase IQ. Впоследствии компания Sybase приобрела Expressway и повторно представила данную КБД в 1995 году как IQ Accelerator, вскоре переименованную в Sybase IQ и получившую номер 11.0[1]. Предлагая свои IQ продукты как часть целой коллекции связанных технологий, основывающих хранилища данных (включая Sybase Adaptive Server Enterprise, Replication Server, PowerDesigner и SQL Anywhere), Sybase стала одной из первых компаний, признающих необходимость создания специализированных продуктов на рынке хранилищ данных[2]. Начиная с версии 12.0 Sybase заменил слабосвязанный интерфейс запросов с Adaptive Server Enterprise на жестко связанный SQL Anywhere. Версия Sybase IQ 16 установила новый мировой рекорд в скорости загрузки «больших данных»[3].

 
Хронология версий Sybase IQ

Хранение данных править

Компания SAP предложила новый подход в хранении данных, более оптимизированный и упрощенный — SAP In-Memory Data Fabric. [4] Такая архитектура хранения данных в памяти имеет ряд преимуществ для применения в деятельности компании:

  • Простота: устранение промежуточных баз данных, предварительных вычислений и других структур
  • Ускорение: доступ к актуальным данным реального времени в любой момент вне зависимости от используемых технологий или типа устройства; управление и интеграция больших объёмов данных
  • Предсказание: способность предсказывать тенденции и потребности покупателей, для того чтобы оставаться впереди своих конкурентов

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

SAP IQ играет важную роль в In-Memory Data Fabric, обеспечивающей расширение размера хранилища данных до петабайт.

 
Архитектура In-Memory Data Fabric

Рыночные и пользовательские решения править

Выделяют три основных преимущества SAP IQ:

  • Наивысшая производительность отчётности бизнес-аналитики
  • Возможность работать с большими данными и передовая аналитика
  • Высокая масштабируемость вместе с её механизмами хранения и сжатия данных

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

Устройство править

Со стороны клиентского использования SAP IQ выглядит, как и любая другая СУБД, осуществляющая применение SQL-запросов через интерфейсы ODBC/JDBC. Однако внутреннее устройство Sybase IQ основывается на колонко-ориентированной СУБД, хранящей таблицы данных в виде колонок, а не в виде строк, как большинство других традиционных баз данных.

 
Устройство SAP IQ 16
Колонко-ориентированная архитектура править

Колонко-ориентированное устройство имеет ряд преимуществ[5]. Если ведётся поиск элементов, соответствующих определенному значению в столбце данных, то необходим доступ к хранящимся только в нём объектам, хотя традиционные базы данных будут просматривать всю таблицу сверху вниз. Ещё одно преимущество — технология индексирования данных, позволяющая индексировать всю информацию, так, чтобы механизм хранилища имел решения, приемлемые для всех пользовательских запросов, одновременно являясь формой хранения и способом поиска данных. Увеличение размера страницы данных способствует более эффективному сжатию и, как следствие, дополнительному повышению производительности. [6]

 
Поколоночное хранение данных
Индексирование править

До версии SAP IQ 16 каждая страница данных была построена в виде массива ячеек фиксированного размера, так, что все значения имели один и тот же тип данных. Хотя такой подход хранения данных эффективен для структурированных и имеющих фиксированную длину данных, но не удобен для более неструктурированных и имеющих переменную длину, повсеместно распространённых сегодня, данных. Для того, чтобы преодолеть эти проблемы в условиях минимального неиспользуемого пространства, каждая страница SAP IQ 16 состоит из клеток различного размера, плотно расположенных вместе; колонки такого хранилища поддерживают переменное количество клеток на странице и различные форматы данных. При записи на диск SAP IQ применяет сжимающий алгоритм Lempel-Ziv-Welch ( LZW) [7] к каждой странице, что значительно сокращает объём записываемых данных. [8] Для вторичных индексов используются битовые карты (bitmaps).

 
Индексирование в SAP IQ
Архитектура SAP IQ править

SAP IQ использует кластерную сеточную архитектуру, состоящую из серверов SAP IQ — Multiplex. Эти кластеры необходимы для увеличения производительности при большом количестве одновременных запросов или запросов повышенной сложности. Все вычислительные узлы взаимодействуют с одной общей памятью, при этом запросы могут выполняться в любом из них. В конфигурации Sybase Multiplex находится один узел — администратор — управляет каталогом базы данных и координирует транзакции, записываемые в хранилище. Другие узлы могут записывать или и читать, и записывать как координирующий узел. Такая архитектура имеет множество применений. Баланс рабочей нагрузки достигается динамически за счет параллельных запросов об активности сервера. Узлы могут автоматически переключаться между собой — если один узел завершил участие в запросе, то другие продолжат работу, первоначально назначенную отказавшемуся узлу, для того, чтобы выполнить запрос. Физические узлы в Sybase Multiplex могут группироваться между собой в "логические серверы", позволяя работать изолированно от остальных узлов (например, в целях безопасности или сбалансированного распределения ресурсов). Цель такой сеточной архитектуры — обеспечение максимальной устойчивости даже в выполнении глобальных транзакций.

 
Архитектура конфигурации Multiplex
 
Архитектура конфигурации Multiplex
Framework и клиентские API править

SAP IQ реализует API-запросы, основанные на чистых стандартах ANSI SQL (с некоторыми ограничениями), включая OLAP и полнотекстовый поиск. Хранимые процедуры поддерживаются как ANSI SQL, так и Transact-SQL, могут выполняться запланированно или на непосредственной основе. Возможно использование ряда драйверов базы данных таких языков программирования как Java, C/C++m, PHP, PERL, Python, Ruby, ADO.Net.

Обработка неструктурированных запросов править

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

Безопасность править

В SAP IQ предусмотрено несколько механизмов, включенных в базовый продукт и лицензируемых по отдельности, для того чтобы максимально обеспечить безопасность данных пользователя. В версии SAP IQ 16 используется политика управления доступом на основе ролей. Кроме того, доступны дополнительные опции безопасности, такие как шифрование FIPS, аутентификация Kerberos, аутентификация LDAP и поколоночное шифрование базы данных.

 
Безопасность в Sybase IQ
Управление жизненным циклом (ILM) править

В рамках ILM SAP IQ позволяет пользователям создавать несколько табличных пользовательских пространств (логические единицы хранения/контейнеры для объектов базы данных) для организации данных. Это может быть использовано для разделения структурированных или неструктурированных данных, группировки данных вместе в зависимости от их давности и значения, или разделения данных в таблице. Табличные пространства могут быть помечены только для чтения, чтобы позволить разовые проверки согласованности и резервного копирования. Другое применение ILM предоставляет возможность разделить таблицы, и распределить эти части по хранилищу данных и в резервных блоках, позволяя управлять процессом хранения и образуя многоуровневое хранение данных, переходящее от более быстрого и дорогого хранения к более медленному и дешевому, исходя из давности и значения хранимой информации.

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

Доступность и восстановление данных править

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

Виртуальное резервное копирование SAP IQ позволяет пользователям быстро создавать резервные копии данных вместе с технологией репликации данных. После того, как виртуальные резервные копии будут завершены, они могут быть проверены с помощью теста и восстановиться; данные предприятия могут быть скопированы для разработки и тестирования. SAP утверждает, что восстановление после сбоев проще при использовании подхода массово-параллельной архитектуры. Инструмент моделирования SAP Sybase PowerDesigner позволяет пользователям построить ILM-модель, которая может быть развернута с помощью SAP IQ с последующим определением типов хранения, табличных пространств и фаз жизненного цикла.

SAP Control Center править

Центр управления SAP (SAP Control Center) представляет собой веб-основанный графический инструмент для администрирования и мониторинга. Центр управления SAP может быть использован для мониторинга серверов, ресурсов (узлов, Multiplex) из любого места. Веб-приложение имеет многоуровневую архитектуру плагинов.

Поддерживаемые платформы править

SAP IQ поддерживает подключение внешних алгоритмов, написанных на C++ и Java. SQL-запросы могут использовать эти алгоритмы для выполнения анализа внутри базы данных, обеспечивающего более высокую производительность и масштабируемость. Кроме того, Sybase IQ предоставляет драйверы для доступа через языки программирования, такие как PHP, Perl, Python и Ruby On Rails.

SAP IQ поддерживает большинство основных операционных систем, в том числе:

Клиенты править

Sybase утверждает, что Sybase IQ в настоящее время установлена более чем на 2000 пользовательских сайтах. Известные клиенты — comScore Inc[9], CoreLogic, Investment Technology Group (ITG) [10] и U.S. Internal Revenue Service (IRS)[11].

Внешние ссылки править

Ссылки на источники править

Примечания править

  1. Cole, Barb (November 7, 1994), Sybase makes a data warehousing play via acquisition, Network World
  2. Moore, Trevor (2010), Sybase IQ Survival Guide, p. 16, ISBN 978-1-4466-5758-4
  3. Sybase CIS | SAP® Sybase® IQ устанавливает новый мировой рекорд в скорости загрузки «больших данных». Дата обращения: 6 декабря 2014. Архивировано 30 октября 2014 года.
  4. Data Warehousing Solutions | Technology | SAP. Дата обращения: 6 декабря 2014. Архивировано из оригинала 27 ноября 2014 года.
  5. MacNicol, Roger; French, Blaine (August 2004), Sybase IQ Multiplex – Designed For Analytics, Proceedings of the 31st VLDB Conference, Trondheim, Norway (http://www.vldb.org/conf/2004/IND8P3.PDF Архивная копия от 10 февраля 2013 на Wayback Machine)
  6. Sybase CIS | Интеллектуальный коэффициент Sybase. Дата обращения: 6 декабря 2014. Архивировано 9 декабря 2014 года.
  7. blasthemy.com. Дата обращения: 6 декабря 2014. Архивировано 29 мая 2014 года.
  8. Архивированная копия. Дата обращения: 28 мая 2014. Архивировано 29 мая 2014 года.
  9. Henschen, Doug (November 24, 2010), ComScore’s Big Data Deployment In Detail, Information Week
  10. Clark, Don (November 18, 2007), Start-Ups Mine Database Field — Nimble Software Helps Make Sense Of Information Tide, Wall Street Journal Архивированная копия. Дата обращения: 13 марта 2012. Архивировано 16 августа 2011 года.
  11. Lai, Eric (March 22, 2008), Been audited lately? Blame the IRS's massive, superfast data warehouse, ComputerWorld http://www.computerworld.com/s/article/9070858/Been_audited_lately_Blame_the_IRS_s_massive_superfast_data_warehouse?taxonomyId=9&pageNumber=2 Архивная копия от 22 октября 2013 на Wayback Machine