Читать дальше →
Компания InterSystems временно не ведёт блог на Хабре
Сначала показывать
+18
Рефлексия в Caché
8 мин
6.4KТуториал
Тема рефлексии нечасто поднималась на форумах или блогах Caché. Быть может потому, что понятие рефлексии как таковое в Caché явно не обозначено. Тем не менее рефлексия в Caché присутствует и может стать очень полезным инструментом в разработке.
+18
IT-системы в медицине
9 мин
12KПривет, GT! Современные технологии, повсеместное проникновение и распространение глобальной сети, электроники и прочего хайтека существенно изменило качество нашей с вами жизни, и, несомненно, повлияло на одну из самых важных и интересных областей деятельности человека (пусть, зачастую, мы этого и не замечаем) — на медицину.
Маленькие стоматологические клиники, «семейные» центры и прочие аналитические мини-лаборатории типа «100500 анализов за 1 забор крови» — таких сейчас в крупных городах пруд пруди. Интересовало ли вас когда-нибудь, что происходит дальше с той пробиркой с кровью, которую у вас «выкачали»? Куда она отправляется? Что с ней делают? Я побывал в одном из таких центров, и сегодня хочу поделиться впечатлениями о том месте, где привычные для нас с вами, гиков, вычислительные технологии, компьютерные сети и сложные девайсы творят магию крови.
Маленькие стоматологические клиники, «семейные» центры и прочие аналитические мини-лаборатории типа «100500 анализов за 1 забор крови» — таких сейчас в крупных городах пруд пруди. Интересовало ли вас когда-нибудь, что происходит дальше с той пробиркой с кровью, которую у вас «выкачали»? Куда она отправляется? Что с ней делают? Я побывал в одном из таких центров, и сегодня хочу поделиться впечатлениями о том месте, где привычные для нас с вами, гиков, вычислительные технологии, компьютерные сети и сложные девайсы творят магию крови.
+18
Релиз СУБД InterSystems Caché 2015.2
4 мин
3KКорпорация InterSystems на Global Summit 2015 приняла социалистическое обязательство объявила о политике частых релизов — выпуск новых версий как минимум 4 раза в год. В исполнение этого обета, 8 июля вышел релиз СУБД InterSystems Caché 2015.2 через 3 месяца после релиза Caché 2015.1. Видео о релизе.
В Caché 2015.2 улучшена производительность и масштабируемость, появилась поддержка русского и украинского в iKnow, реализована поддержка CORS в REST.
В Caché 2015.2 улучшена производительность и масштабируемость, появилась поддержка русского и украинского в iKnow, реализована поддержка CORS в REST.
+9
Пишем систему логирования в InterSystems Caché
13 мин
3.1KВведение
В предыдущей статье мы рассмотрели основные варианты использования макросов, теперь перейдём к написанию более обширного примера, использующего макросы. Писать будем систему логирования.
+1
ECP и API управления процессами
12 мин
6KТехнология распределения нагрузки между несколькими серверами сравнительно небольшой мощности является стандартной возможностью СУБД Caché уже достаточно давно. В её основе лежит протокол распределённого кэша ECP (Enterprise Cache Protocol); здесь имеется в виду именно «cache» («кэш»), а не «Caché» («кашЭ»). ECP открывает богатые возможности для горизонтального масштабирования прикладной системы, обеспечивая высокую производительность при не менее высокой устойчивости к отказам, оставляя при этом бюджет проекта в достаточно скромных рамках. К достоинствам сети ECP справедливо будет отнести и возможность сокрытия особенностей её архитектуры в недрах конфигурации СУБД, так что прикладные программы, изначально разработанные для традиционной (вертикальной) архитектуры, как правило, легко переносятся в горизонтальную ECP-среду. Эта лёгкость настолько завораживает, что хочется, чтобы так было всегда. Например, все привыкли к возможности управлять не только текущим, но и «чужими» процессами Caché: системная переменная $Job и связанные с ней функции и классы в умелых руках позволяют «творить чудеса». Стоп, но теперь процессы могут оказаться на разных серверах Caché… Ниже — о том, как удалось добиться почти такой же прозрачности в управлении процессами в среде ECP, как и без неё.
+6
Макросы в InterSystems Caché
7 мин
3.6KТуториал
Введение
Хочу рассказать про использование макросов в InterSystems Caché. Макрос — это символьное имя, заменяемое при компиляции исходного кода на последовательность программных инструкций. Макрос может «разворачиваться» в различные последовательности инструкций при каждом вызове, в зависимости от сработавших разветвлений внутри макроса и переданных ему аргументов. Это может быть как статический код, так и результат выполнения COS. Рассмотрим, как их можно использовать в вашем приложении.
+6
Анализ журнала аудита Caché c помощью Caché (DeepSee)
4 мин
3.6KТуториал
В поставку СУБД Caché, кроме самого сервера базы данных, входит технология для «real-time» бизнес-аналитики DeepSee. Её использование – это наиболее быстрый способ добавить OLAP функциональность к вашему приложению на Caché.
Другим элементом установки является подсистема аудита с web-интерфейсом, возможностью расширения собственными типами событий и API для использования в прикладном коде.
Под катом – небольшой пример совместного использования этих подсистем, позволяющий ответить на вопросы — кто, что, когда делал в информационной системе?
Другим элементом установки является подсистема аудита с web-интерфейсом, возможностью расширения собственными типами событий и API для использования в прикладном коде.
Под катом – небольшой пример совместного использования этих подсистем, позволяющий ответить на вопросы — кто, что, когда делал в информационной системе?
+8
Масштабируемость Caché 2015 при использовании Ivy Bridge-EX
4 мин
7.8KНедавно мы рассказывали о последнем релизе СУБД InterSystems Caché 2015.1, в котором существенно улучшена производительность, реализована поддержка второй версии языка преобразования XML-документов XSL Transformations (XSLT) Version 2.0 и использование семафоров для синхронизации процессов в Caché и организации их взаимодействия между собой. Кроме того, в новом релизе Caché расширены возможности использования сценариев высокой доступности и поддерживается применение внешнего web-сервера NGINX для сервера приложений Caché. В этой статье мы поговорим о первом из перечисленных усовершенствований нашей СУБД, а именно о том, насколько после выхода нового релиза улучшается производительность Caché при работе на многопроцессорных серверах, оборудованных процессорами Intel Xeon E7 v2 (кодовое название Ivy Bridge-EX).
+24
Реализация интервально-ассоциативного массива в СУБД Caché
19 мин
2.9KПост написан на основе статьи на хабре: «Интервально-ассоциативный массив».
Поскольку изначальная реализация основана на слайсах (срезах) питона, нелишней для прочтения будет статья: Всё, что вы хотели знать о слайсах. И, конечно, немного теории: Дерево Интервалов (Отрезков).
Итак, как же слайсы будут выглядеть в Caché?
Поскольку изначальная реализация основана на слайсах (срезах) питона, нелишней для прочтения будет статья: Всё, что вы хотели знать о слайсах. И, конечно, немного теории: Дерево Интервалов (Отрезков).
Итак, как же слайсы будут выглядеть в Caché?
+8
Новое в Caché 2015.1: SQL-индекс по элементам свойства-массива
5 мин
3.2KВ Caché 2015.1 появилась возможность включить для свойств коллекций проекцию в отдельную колонку. Таким образом для SQL доступа к данным коллекции можно использовать не только дочернюю таблицу, но и просто как дополнительную колонку, в которой лежат все значения коллекции. Подробнее об этом здесь.
О том, как и где это может быть полезно на практике, рассказывает эта статья.
О том, как и где это может быть полезно на практике, рассказывает эта статья.
+8
Декларативная разработка на Caché
3 мин
3.5K В Caché есть несколько различных способов пройтись по коллекции и выполнить какие-нибудь действия с ее элементами. Самым простым является while-цикл. Такой способ позволяет решить поставленную задачу в императивном стиле. Разработчику приходиться явно заботиться об итераторе, о переходе к следующему элементу и о проверке выхода за пределы коллекции.
Но разве это то, о чем должен заботиться разработчик?! Разработчик должен решать поставленную перед ним задачу, за максимально короткое время с максимально хорошим качеством кода. Было бы очень здорово просто взять коллекцию и применить к ней функцию, которая выполняет необходимые действия на каждом элементе этой коллекции. Не проверять границ, не создавать итератор, не вызывать вручную функцию на каждом элементе. Такой способ решения задач называется декларативным программированием.
Давайте подумаем, как же решить поставленную задачу декларативно, используя средства и возможности Caché.
Но разве это то, о чем должен заботиться разработчик?! Разработчик должен решать поставленную перед ним задачу, за максимально короткое время с максимально хорошим качеством кода. Было бы очень здорово просто взять коллекцию и применить к ней функцию, которая выполняет необходимые действия на каждом элементе этой коллекции. Не проверять границ, не создавать итератор, не вызывать вручную функцию на каждом элементе. Такой способ решения задач называется декларативным программированием.
Declarative programming is when you write your code in such a way that it describes what you want to do, and not how you want to do it.(c) 1800-information
Давайте подумаем, как же решить поставленную задачу декларативно, используя средства и возможности Caché.
+8
Релиз СУБД InterSystems Caché 2015.1
2 мин
4.7KОсновные улучшения
Повышение производительности Caché на системах с большим количеством ядер, поддержка XSLT2, поддержка семафоров, поддержка новых сценариев высокой доступности.
Подробности новой версии обо всем по-порядку в статье.
+7
UI для Ensemble Workflow на Angular
21 мин
6.9KТе, кто знаком с платформой для интеграции и разработки приложений InterSystems Ensemble, знают, что такое подсистема Ensemble Workflow и как она бывает полезна для автоматизации взаимодействия людей. Для тех же, кто не знаком с Ensemble (и/или Workflow), я кратко опишу её возможности (остальные могут пропустить эту часть и узнать, как они могут использовать пользовательский интерфейс Workflow на Angular.js).
+11
InterSystems iKnow. Загружаем данные из Вконтакте
14 мин
7.7KТуториал
Эта статья продолжает цикл рассказов (раз, два) об основных способах/сценариях использования iKnow — инструмента Natural Language Processing'а из стека технологий InterSystems.
Предыдущие посты на эту тему были в основном посвящены работе с данными уже после того, как те были помещены в домен (место, в котором и проходит весь анализ текста). Эта же статья будет о том, как правильно и удобно загрузить информацию в iKnow. В качестве примера рассмотрим загрузку информации о пользователях Вконтакте: их личных данных, постах и т.д.
Статья подразумевает некий базовый бэкграунд в области технологий InterSystems (в частности, Caché ObjectScript).
Предыдущие посты на эту тему были в основном посвящены работе с данными уже после того, как те были помещены в домен (место, в котором и проходит весь анализ текста). Эта же статья будет о том, как правильно и удобно загрузить информацию в iKnow. В качестве примера рассмотрим загрузку информации о пользователях Вконтакте: их личных данных, постах и т.д.
Статья подразумевает некий базовый бэкграунд в области технологий InterSystems (в частности, Caché ObjectScript).
+6
Профилируем код с помощью Caché Monitor
4 мин
2.6KНе все знают, что в InterSystems Caché есть встроенный инструмент для профилирования кода, который называется Caché Monitor.
Основное его назначение (очевидно) – сбор статистики по исполняющимся в Caché программам. Он может предоставлять как общую статистику по всем программам, так и детализированную Line-by-Line статистику по каждой отдельной программе.
+3
InterSystems iKnow. Часть вторая. Создание простого домена
11 мин
3.7KТуториал
Это продолжение моего рассказа про Natural Language Processing технологию Intersystems iKnow, начало здесь. Во второй части вы найдете описание практической работы с iKnow. Мы создадим домен, настроим его, загрузим текст. Затем, посмотрим и проанализируем результаты. Подробнее об этом под катом…
+4
InterSystems iKnow. Часть первая. iKnow и пляжный отдых
8 мин
5.1KМне давно хотелось написать свою статью о технологии iKnow. Прошло уже три года с момента её появления, но публикаций о применениях этой технологии в русскоязычных решениях до сих пор не было. Объяснение этому довольно простое – не было полноценной поддержки русского языка. Но с каждым новым релизом, начиная с Cache 2013.1, ситуация менялась в лучшую сторону. И вот, наконец, мы решили реализовать первый проект на iKnow. О том, как это было, что получилось, а что нет, читайте далее в моей статье.
+5
Семафоры, или как разруливать доступ к ресурсам в DBMS Caché
14 мин
8.9KТуториал
Часто при многопользовательском или параллельном доступе к данным возникает ситуация, когда необходимо заблокировать/дать доступ к переменной или участку памяти одновременно нескольким процессам. Решается данная задача с помощью мьютексов, семафоров, мониторов и т. д. В данном посте рассмотрим как же реализован один из методов предоставления совместного доступа к данным — семафор — в СУБД Intersystems Caché.
+13