GUI на Grafana для mgstat — утилиты мониторинга системы на InterSystems Caché, Ensemble или HealthShare

Добрый день! Данная статья является продолжением статьи «Дружим Prometheus с Caché«. Мы рассмотрим вариант визуализации результатов работы утилиты ^mgstat. Эта утилита предоставляет статистику производительности Caché, а именно, число вызовов глобалов и рутин, локальное и по ECP, длину очереди демона записи, число блоков, записанных на диск и считанных с диска, объем ECP-трафика и прочее. Запускаться ^mgstat может как отдельно (интерактивно или джобом), так и при работе другой утилиты оценки производительности ^pButtons.

Изложение материала хотелось бы разбить на две части: в первой графически показать непосредственно статистику, собираемую ^mgstat, а во второй — рассмотреть, как именно эта статистика собирается. Если коротко, то используются $zu-функции. Однако к большинству собираемых параметров есть и объектный интерфейс через классы пакета SYS.Stats. И далеко не все параметры, которые можно собрать, показываются в ^mgstat. В дальнейшем мы попробуем все их отобразить на Grafana-дашбоардах. В этот же раз покажем только то, что нам предоставляет сам ^mgstat. Кроме того, попробуем на вкус Docker-контейнеры.

image
Читать далее

Как я разбирал docx с помощью XSLT

Задача обработки документов в формате docx, а также таблиц xlsx и презентаций pptx является весьма нетривиальной. В этой статье расскажу как научиться парсить, создавать и обрабатывать такие документы используя только XSLT и ZIP архиватор.

Читать далее

InterSystems iKnow. Загружаем данные из Вконтакте

Эта статья продолжает цикл рассказов (раз, два) об основных способах/сценариях использования iKnow — инструмента Natural Language Processing’а из стека технологий InterSystems.

Предыдущие посты на эту тему были в основном посвящены работе с данными уже после того, как те были помещены в домен (место, в котором и проходит весь анализ текста). Эта же статья будет о том, как правильно и удобно загрузить информацию в iKnow. В качестве примера рассмотрим загрузку информации о пользователях Вконтакте: их личных данных, постах и т.д.

Статья подразумевает некий базовый бэкграунд в области технологий InterSystems (в частности Caché ObjectScript).

Читать далее

Семафоры, или как разруливать доступ к ресурсам в DBMS Caché

Часто при многопользовательском или параллельном доступе к данным возникает ситуация, когда необходимо заблокировать/дать доступ к переменной или участку памяти одновременно нескольким процессам. Решается данная задача с помощью мьютексов, семафоров, мониторов и т.д. В данном посте рассмотрим как же реализован один из методов предоставления совместного доступа к данным — семафор — в СУБД Intersystems Caché.
image image
Что же такое семафор в Cache и с чем его едят?

Intersystems Caché: Globals API для .NET – прямой доступ к глобалам из C#

Недавно возникла необходимость сравнить скорость записи/чтения данных из СУБД Intersystems Caché, используя разные виды доступа – прямой к глобалам, объектный и реляционный. С объектным и реляционным доступом все понятно, а вот с прямым (он же direct access) пришлось разбираться. Для тех, кому, как и мне, с первого взгляда документация не дала полного понимания процесса, и предназначена эта статья. Для примера буду делать консольное приложение в лучших традициях процедурного программирования. Читать далее

Инструмент администрирования GlobalsDB и тонкости работы с этой базой данных

Здравствуйте, дорогие хабрачитатели.

Сегодня я хотел бы поделится с вами опытом в работе с NoSQL базой данных GlobalsDB, а так же представить вашему вниманию недавно разработанный инструмент администрирования для неё — GlobalsDB Admin. Далее вы найдёте, в основном, разные технические подробности, и если данная тема вам интересна, добро пожаловать.

Инструмент администрирования GlobalsDB

Читать далее

Релиз интеграционной платформы InterSystems Ensemble 2014

В марте вышел релиз интеграционной платформы InterSystems Ensemble 2014. Основные изменения:

  • поддержка REST веб-сервисов;
  • фреймворк для работы с предупрежениями;
  • улучшения в поставке продукций;
  • сквозные (pass-through) службы и операции;
  • улучшения в работе с виртуальными документами.

Подробности под катом. Читать далее

Ненормальное программирование в InterSystems Caché

Возможно не все, кто знаком с InterSystems Caché, знают о расширениях Студии по работе с исходным кодом. На самом деле в ней можно создать свой тип исходного кода, компилировать его в интерпретируемый (INT) и объектный код, и даже в некоторых случаях обеспечить и code completion. Т.е. теоретически можно реализовать поддержку в Студии любого языка программирования, который будет исполняться СУБД не хуже Caché ObjectScript. В этой статье я опишу простой пример, как реализовать возможность писать программы на некотором подобии JavaScript в Caché Студии. Если интересно, добро пожаловать под кат. Читать далее

Итоги номинации InterSystems на Golden Byte 2014

golden byte26 апреля в Киевском городском Доме учителя состоялся финал Международного чемпионата компьютерных талантов «Золотой байт 2014», организатором которого является Компьютерная академия «Шаг». На конкурсе было 9 номинаций, и одна из них – NoSQL Expert – была посвящена использованию продуктов компании Intersystems: Caché и GlobalsDB.

Темой конкурса в этом году была «Changing the world», т.е. работы, представленные на суд жюри, должны были так или иначе улучшить, облегчить, обезопасить, упростить взаимодействие с окружающим миром. Итак, посмотрим, как же победители предложили изменить мир…
Читать далее

Настройка LDAP-аутентификации в InterSystems Caché на базе Microsoft Active Directory

С одной стороны настройка LDAP-аутентификации в Caché не очень сложная — в документации этот процесс описан шестью пунктами. С другой стороны если LDAP-сервер на базе Microsoft Active Directory, то есть несколько не очевидных моментов, которые надо настроить на стороне LDAP-сервера. Так же для тех, кто не часто занимается подобными настройками, есть шанс запутаться в настройках безопасности Caché. В этой статье пошагово опишем процесс настройки LDAP-аутентификации, а также методы диагностики проблем в случае, если что-то не получается.
Читать далее