1 декабря 2016 в 17:08

Релиз СУБД InterSystems Caché 2016.2


Всем привет! Состоялся очередной выпуск новой версии Caché под номером 2016.2. Изменений не так много, но все они важные. Как всегда, вначале публикуем ссылку на полный список изменений (на английском языке).


Итак.


Поддержка Atelier — новой IDE на основе Eclipse


Это первый выпуск Caché, в котором добавлена серверная поддержка новой интегрированной среды разработки Atelier.


Atelier совмещает в себе сильные стороны популярной IDE Eclipse и СУБД Caché. Он поддерживает экспорт кода в UDL, контроль версий “из коробки”, отладку, автообновление и совместим с большинством Studio Add-Ins. Atelier распространяется отдельно от дистрибутивов Caché и Ensemble.


На нашем обучающем портале на данный момент доступно два курса по Atelier:



Рекомендуется к ознакомлению.


Поддержка OAuth 2.0 и OpenID Connect


Начиная с этого выпуска, Caché поддерживает OAuth 2.0 и OpenId Connect Core. Caché может выступать в качестве клиента, сервера ресурсов или сервера авторизации. Подробнее можно узнать в разделе Using OAuth 2.0 and OpenID Connect with Caché документации, а также в статье на нашем Developer Community.


Поддержка SQL/JSON


SQL-синтаксис был расширен для частичной поддержки стандарта SQL/JSON, что позволяет получать результаты запросов в формате JSON. Поддерживаемые функции:


  • JSON_OBJECT — строит JSON-объект для каждой полученной строки.
  • JSON_ARRAY — строит JSON-массив для каждой полученной строки.

Улучшения в SQL


В этом выпуске представлены следующие улучшения производительности SQL:


  • %Parallel — Улучшение производительности путем разбиения запросов на порции, которые могут исполняться параллельно на многопроцессорных системах. В этом выпуске %Parallel получил следующие улучшения:


    • Снижение потребления ресурсов при подготовке запроса к параллельному исполнению.
    • Динамическое разбиение запросов на порции, основанное на числе доступных физических потоков.
    • Увеличение числа типов запросов SELECT, которые могут быть параллелизованы. Например, теперь Caché может разбивать на порции запросы с конструкциями IN (?, ?, ?) или %INLIST().


В результате вышеуказанных изменений, стало возможным использование %Parallel с большинством запросов SELECT. Если запрос поддается параллелизации, и Caché доступно несколько физических потоков, то производительность исполнения запроса будет улучшена. Если запрос нельзя разбить на порции, или доступен только один физический поток, то Caché распознает эту ситуацию и не станет разбивать запрос, экономя ресурсы.


  • Улучшена производительность обхода списочных коллекций.
  • Фиксированные планы — возможность “заморозки” плана запроса во время изменения индексов или других метаданных.

Остальные изменения


Из остальных важных изменений:


  • Новый REST API для доступа к файлам исходного кода, хранящимся в Caché. Данный API был разработан для поддержки IDE Atelier, но он также может быть использован для создания сторонних IDE, аналогичных Atelier. Более подробную информацию можно найти в главе Accessing Caché Source Code Files Using REST документации.
  • Утилита DataCheck теперь работает более эффективно благодаря параллельной обработке. Интерфейс ^DATACHECK стал более удобным.
  • Текущий выпуск Caché использует более быстрые механизмы синхронизации памяти в некоторых критических сценариях использования. Тесты пакетной загрузки данных показывают прирост производительности более чем на 10% на Linux x86-64. Эти улучшения актуальны для следующих платформ:


    • Apple Mac OS X for x86–64
    • IBM AIX for Power System-64
    • Microsoft Windows for x86–32, x86–64
    • Linux for x86–32, x86–64
    • Solaris for x86–64, SPARC-64


Спасибо, до новых релизов!

Автор: @iEcho
InterSystems
рейтинг 70,51
Вендор: СУБД Caché, OLAP DeepSee, шина Ensemble
Похожие публикации

Комментарии (7)

  • +2
    Нельзя было выбрать название без "é"?
    • 0
      Хороший вопрос. Причем создатели СУБД не имеют в алфавите буквы é и других умляутов. О чем думал маркетолог в момент «прихода идеи» можно только догадываться.
  • 0
    Была отличная низкоуровневая и быстрая иерархическая СУБД (считаем SQL за язык высокого уровня) с объектной надстройкой. За счет низкоуровневости, на нишевых задачах имела громадную фору по скорости.

    В угоду рынку, решили стать как все:

    — выпустили Ателье, глючное донельзя, судя по отзывам

    — убили свой внутренний Web-сервер, который единственный мог нормально использовать объектные (и уникальные) возможности своего языка Cache Object Script

    — вместо объектной модели, решили доприделать SQL, который к иерархической СУБД как сбоку бантик и гробит всю скорость

    Я уже молчу по ценник.

    Отличный релиз.
    • 0
      Позволю себе вступиться за Caché.

      1) В Atelier есть ошибки и ещё много, что нужно доделывать (https://community.intersystems.com/post/atelier-10-release). Всё равно это шаг в правильном направлении, потому что база для Atelier — Eclipse — открытая, расширяемая, мультиплатформенная IDE, для которой уже существует множество плагинов, которые теперь можно использовать и для работы с Caché ObjectScript.

      2) Этот пункт я не очень понял. Caché поставляется с собственным веб-сервером — урезанной сборкой Apache. Как CSP Gateway мешает использовать уникальные возможности Caché ObjectScript — непонятно.

      3) SQL в Caché не «вместо», а «вместе с» объектной моделью. Идеология в том, чтобы использовать тот взгляд на данные, который удобней в данном конкретном случае. Если быстродействия SQL и объектов не хватает всегда можно использовать прямой доступ к глобалам.

      Возможность использовать Caché как низкоуровневую и быструю иерархическую СУБД никуда не делась.
      • 0
        2) Речь шла о Zen, развитие которого отсутствует. То есть я широко выразился — не совсем убили, а наполовину.

        Можно еще добавить минорный пункт
        4) Закрытие бесплатной ветки GlobalsDB

        Возможность использовать Caché как низкоуровневую и быструю иерархическую СУБД никуда не делась
        Но использовать ООСУБД как key/value или как SQL-хранилище это как забивать гвозди электронным микроскопом.

        Единственное, я упустил, что ObjectScript еще можно использовать в хранимых процедурах.
        • 0
          2) Речь шла о Zen, развитие которого отсутствует. То есть я широко выразился — не совсем убили, а наполовину.
          Zen был классный для 2007 года( когда он появился).
          С тех пор в Web UI появились вещи попрогрессивнее и грех их не использовать.
          Zen поддерживается, но не развивается, да.
          4) Закрытие бесплатной ветки GlobalsDB

          Это большая жаль, да.
          Но использовать ООСУБД как key/value или как SQL-хранилище это как забивать гвозди электронным микроскопом.

          Спорное утверждение. У вас что-то не получилось в подходе «ООСУБД вместе с key/value»? На самом деле с этой концепцией действительно очень несложно начать использовать микроскоп в качестве молотка. Т.е. неплохо бы знать, как это готовить и результаты могут быть весьма впечатляющи.

    • 0
      Была отличная низкоуровневая и быстрая иерархическая СУБД (считаем SQL за язык высокого уровня) с объектной надстройкой. За счет низкоуровневости, на нишевых задачах имела громадную фору по скорости.

      Почему же «была»? Это все осталось, только быстрее, надежнее и с новой функциональностью в каждом релизе.
      — выпустили Ателье, глючное донельзя, судя по отзывам

      Ателье зарелизился только вчера — все «глюки» до этого относились к фазе открытого бета-тестирования.
      Ну и если вы апологет прошлой IDE Студии, она остается. А Ателье это всего лишь «продвинутый» плагин к Eclipse, что дает кросплатформенность (Студия только под Windows), возможность использования сотен других плагинов Eclipse, а также есть открытое REST-API, что «технически» позволяет подключить любые другие популярные IDE для разработки на Caché ObjectScript (COS).
      — вместо объектной модели, решили доприделать SQL, который к иерархической СУБД как сбоку бантик и гробит всю скорость

      Что значит «вместо»? Все на месте. Хотите объектный доступ — пожалуйста, хотите SQL доступ к тем же данным — на здоровье. Хотите низкоуровневый доступ к глобалам для тех же данных (они же многоуровневые Key-Value структурам) — и это все есть. Но у всего есть плюсы-минусы и конкретная бизнес-задача, поэтому разработчики вольны переключаться между разными видами доступа к данным, когда это необходимо, и поэтому задача СУБД дать эту возможность мультимодельности и эта возможность есть и с каждой версией улучшается.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Администрирование