Развёртывание приложений в InterSystems Caché

Введение Итак, вы разработали своё приложение на технологиях InterSystems. Теперь его надо развернуть у клиента и часто не один раз. В процессе разработки у вас появилась инструкция по установке – потому что недостаточно просто импортировать классы, нужно ещё и доработать систему напильником провести тонкую настройку среды под ваши нужды. Для решения этих задач существует утилита […]

Удалённое выполнение кода в InterSystems Caché (RCE)

Введение В том случае, если вы управляете более чем одним сервером Caché может возникнуть задача выполнения произвольного кода из одного сервера Caché на другом. Кроме того, может потребоваться выполнение произвольного кода на удалённом сервере Caché, например, для нужд сисадмина.. Для решения этих задач была разработана утилита RCE. Какие вообще есть варианты решения подобных задач, и […]

Блоки. Внутреннее устройство файла базы данных Caché. Часть 3

Как и в двух предыдущих частях (часть 1, часть 2), я продолжаю знакомить вас с внутренним устройством баз данных Caché. На этот раз я расскажу о том, что еще можно узнать, и в чем может помочь мой проект Caché Blocks Explorer.

Блоки. Внутреннее устройство файла базы данных Caché. Часть 2

Эта публикация – продолжение моей статьи, в которой я рассказал, как устроена база данных Caché изнутри. В ней я описал типы блоков, как они связаны, какое отношение имеют к глобалам. В той статье была теория. Я создал проект, позволяющий визуализировать дерево блоков – и в этой статье вы всё это увидите. Добро пожаловать под кат.

Глобалы — мечи-кладенцы для хранения данных. Разреженные массивы. Часть 3

В прошлых частях (1, 2) мы говорили о глобалах как о деревьях, в этой мы рассмотрим глобалы как разреженные массивы. Разреженный массив – это разновидность массива, в котором большинство значений принимает одинаковое значение. На практике часто встречаются настолько огромные разреженные массивы, что нет никакого смысла занимать память одинаковыми элементами. Поэтому есть смысл разреженные массивы реализовывать […]

Блоки. Внутреннее устройство файла базы данных Caché

Блоки. Внутреннее устройство файла базы данных Caché Не так давно на хабре в блоге InterSystems были выложены статьи о том, что собой представляет глобал в Caché, с чем его готовят и как подают (часть 1 и часть 2). Это всё, конечно, интересно, удобство работы с любыми моделями данных, какие только пожелает разработчик. Но что обеспечивает […]

В поисках аналога функций первого порядка в СУБД Caché

Пост написан в дополнение к статье Декларативная разработка на Caché. Как делать такое в Caché с помощью COS? Под катом несколько упражнений на заданную тему.

Глобалы — мечи-кладенцы для хранения данных. Деревья. Часть 2

Начало – см. часть 1. 3. Варианты структур при использовании глобалов Такая структура как упорядоченное дерево имеет разные частные случаи. Рассмотрим те, которые имеют практическую ценность при работе с глобалами. 3.1 Частный случай 1. Один узел без ветвей

Глобалы — мечи-кладенцы для хранения данных. Деревья. Часть 1

Настоящие мечи-кладенцы баз данных – глобалы – давно известны, но до сих пор немногие умеют эффективно ими пользоваться или вовсе не владеют этим супероружием. Если использовать глобалы в решении тех задач, в которых они действительно хороши, то можно добиться выдающихся результатов. Либо в производительности, либо в упрощении решения задачи (1, 2). Глобалы – это специальный […]

Релиз InterSystems Ensemble 2015.1 и 2015.2

В июле состоялся релиз интеграционной платформы InterSystems Ensemble 2015.2. В этой статье обзор основных улучшений 2015.2 и 2015.1. Главное: поддержка push-уведомлений для iOS и Google-устройств, оптимизация архитектуры баз данных для Ensemble продукций, оптимизация «сквозных» (pass-through inproc) операций.