TIBCO ActiveSpaces

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 03:05, 5 ноября 2020.
TIBCO ActiveSpaces
Tibco logo.png
Разработчики: TIBCO
Выпущена: 2009
Постоянный выпуск: 4.5.0 / август 2020
Лицензия: Пользовательское соглашение
Веб-сайт https://www.tibco.com/products/tibco-activespaces

TIBCO ActiveSpaces - это распределенная система управления данными в одноранговых узлах сети, разработанная компанией TIBCO Software. Данные представлены в виде разделяемой виртуальной памяти и копируются на все устройства и приложения. ActiveSpaces хранит, извлекает и запрашивает данные в виде таблиц, и производит изменения в этих данных в режиме реального времени. Эта система может использоваться в качестве альтернативы хранилища базы данных (со свойствами ACID и критериями фильтрации запросов, выраженными в виде SQL-совместимых строк), а также для распределенной обработки больших объемов данных.[Источник 1]

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

Система TIBCO ActiveSpaces не требует какой-либо специальной сертификации аппаратных платформ. Она работает даже на недорогом «традиционном» оборудовании. Более того, она имеет встроенную функцию сохранения на диск «без разделения ресурсов». Иными словами, каждый узел записывает собственное подмножество данных в файл, который может находиться на локальном диске (жесткие диски, в особенности SSD, обеспечивают исключительно высокую скорость записи), а также создает копию этого файла на других машинах. Таким образом, имеющиеся системы или «узлы» (обычные компьютеры с локальными жесткими дисками) представлены в виде единого накопителя с возможностью «горячей замены» в RAID-массиве: при отказе одного узла вы не потеряете данные, и вам не придется выполнять работу дважды. Это означает, в частности, что пользователю не нужно иметь физические RAID-массивы (или SAN, или серверы БД) для хранения данных.

TIBCO ActiveSpaces через ODBC и JDBC поддерживает следующие базы данных:

  • Oracle 10g, 10g/RAC, 11g, 11g/RAC, 11g R2, 11g R2/RAC
  • Microsoft SQL Server 2005, 2008
  • Sybase Adapter Server Enterprise 15, 15.5
  • Sybase Adapter Server Anywhere 10.1
  • DB2 UDB v9.1, v9.5, v9.7
  • DB2 UDB v8.x, v9.1 for z/OS (via remote connection only)
  • DB2 UDB V5R4, V6R1, V7R1 for iSeries (via remote connection only)
  • MySQL 5.0, 5.1, 5.5
  • Teradata Database 12.0, 13.0, 13.1 .

Возможности

  • Распределенная система записи

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

  • ACID-совместимая сеть данных

Моментальное согласование с полным соответствием ACID с контролем транзакций и параллелизма в нескольких таблицах с блокировкой на уровне рядов. Полная синхронная репликация на нескольких узлах обеспечивает отказоустойчивость. Распределенная стойкость обеспечивает долговечность.

  • Полностью планируемое облако

Гибкие возможности развертывания: локальные физические или виртуальные машины в публичном или частном облаке с полной поддержкой RedHat Openshift, Amazon Elastic Kubernetes Service, Azure Kubernetes Service или Google Kubernetes engines.

  • Глобальная доступность

Сетевая репликация "из коробки" обеспечивает глобальный доступ к данным и полную защиту данных в катастрофических ситуациях. Можно выгрузить тяжелые запросы из высокоскоростных обновлений и безопасно использовать полный набор производственных данных для контроля качества или тестирования производительности.

Преимущества

ActiveSpaces обеспечивает связное хранение и извлечение данных в памяти. Программа поддерживает несколько вариантов передачи данных по сети, включая TCP и TIBCO SmartPGM. ActiveSpaces также предоставляет API, который можно использовать для разработки пользовательских приложений, использующих функции ActiveSpaces. API доступен для языков программирования Java, C и .NET.[Источник 2]

ActiveSpaces облегчает и ускоряет хранение и извлечение данных распределенным способом, так что вы можете сосредоточиться на написании бизнес-логики. Вам не нужно беспокоиться о том, где хранить новые данные, где хранятся текущие данные или устарели ли они.

Кроме того, ActiveSpaces предоставляет следующие преимущества:

  • TIBCO ActiveSpaces использует распределенную одноранговую архитектуру peer-to-peer. Это обеспечивает линейную масштабируемость и гибкость без ущерба для атомарности, целостности, изоляции и долговечности.
  • Система TIBCO ActiveSpaces имеет уникальное преимущество: она написана на C++, а не на Java. Это означает в равной степени эффективную поддержку платформ C, Java и .Net, а также возможность встраивания TIBCO ActiveSpaces в другие решения. TIBCO ActiveSpaces не хранит в «куче» JVM никакие данные — ни значения, ни ключи, ни индексы.
  • TIBCO ActiveSpaces имеет встроенную функцию сохранения на диск «без разделения ресурсов», включая репликацию типа active-active. Это единственная модель распределенного хранения данных, в которой запрос возвращает все релевантные записи. Это означает, что запросы возвращают даже те релевантные записи, которые сохраняются на диск в момент запроса, а не только те, которые кэшированы в памяти.
  • TIBCO ActiveSpaces обеспечивает полную поддержку индексирования. Пользователи могут создавать любое количество индексов по любым полям. Они могут формировать составные индексы, выбирать тип индекса (Hash и Tree) Можно даже добавлять или удалять индексы в процессе работы, когда система запущена и обслуживает запросы.

Благодаря TIBCO ActiveSpaces подключение и отключение (или отказ) узлов не влияет на эффективность обслуживания текущих запросов, что делает данную платформу идеальным решением для сред с высокими требованиями к работе в режиме реального времени и устойчивости к сбоям.

Недостатки

  • Запросы с участием GROUP BY не работают с выражениями.

При использовании GROUP BY действуют следующие ограничения: Выражения SQL CASE не могут быть использованы в списках выбора, когда используется объединение. SQL CASE Expressions не могут содержать функции объединения. Вложенные функции и вложенные выражения в списках селекции не могут используется при объединении.

  • Значения параметров SQL INSERT должны точно соответствовать типам

определенным для столбца в таблице.

  • Cетки данных не могут удалится из сетевых наборов, они добавляются обратно.

Особенности

Рисунок 1 - Страница администратора в ActiveSpaces

ActiveSpaces содержит в себе некоторые важные функции базы данных и системы обмена сообщениями в едином интегрированном интерфейсе.

ActiveSpaces предоставляет следующие функции базы данных:

  • Имеет язык определения данных
  • Имеет SQL-подобные фильтры предложений where.
  • Отказоустойчивость.
  • Реализует форму горизонтального разбиения.
  • Имеет функции контроля параллельного доступа.
  • Обладает свойствами ACID и поддерживает транзакции.
  • Поддерживает операции создания, чтения, обновления, удаления (CRUD).
  • Возможность подключения с удаленных клиентов.

ActiveSpaces предоставляет следующие функции системы обмена сообщениями:

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

Источники

  1. TIBCO Software// Wikipedia[2019—2019]. Дата обновления:30.01.2019. URL: https://en.wikipedia.org/wiki/TIBCO_Software (дата обращения: 13.02.2019)
  2. TIBCO ActiveSpaces Overview// TIBCO[2019—2019]. Дата обновления:05.2016. URL: https://docs.tibco.com/pub/activespaces/2.2.1/doc/html/GUID-6352FF70-E073-4D91-B7B5-31A2E253AC71.html (дата обращения: 13.02.2019)