#InterSystems IRIS for Health

0 关注者 · 894 帖子

InterSystems IRIS for Health™ 是全球第一个也是唯一一个专门为医疗应用程序的快速开发而设计的数据平台,用于管理全世界最重要的数据。它包括强大的开箱即用的功能:事务处理和分析、可扩展的医疗保健数据模型、基于 FHIR 的解决方案开发、对医疗保健互操作性标准的支持等等。所有这些将使开发者能够快速实现价值并构建具有突破性的应用程序。了解更多信息

文章 Meng Cao · 五月 10, 2023 1m read

今天从官网下载了IRISHealth-2023.1.0.229.0-lnxrh9x64版本的数据库安装包,在RHEL9.0上进行安装配置测试,遇到一个问题,趁热记录下来。

测试环境及软件版本:

操作系统——Red Hat Enterprise Linux release 9.0 (Plow)

数据库——IRISHealth-2023.1.0.229.0-lnxrh9x64

 

测试创建镜像时,配置好虚拟IP,点击保存。

保存后发现数据库没有变成主成员状态,一直是等待的状态,如下图所示:

这时查看控制台日志发现有大量报错,如下图所示:

从控制台日志看出,此时矛头指向了virtualIP.sh,经过查找发现这个脚本位置在安装目录下的bin目录中。

这里只是创建了MIRROR的配置,然后出现了问题,大概可以猜到可能是添加VIP的方法有什么问题,开启脚本的DEBUG,测试运行添加VIP的方法。

果然,发现了一处报错,如下图所示:

打开脚本文件,查看第588行代码。

研究发现RHEL9.0中,ID=`id | grep uid= | awk -F"=" '{print $2}' | awk -F"(" '{print $1}'`,$ID返回是空,不是数字,所以报错了,修改脚本,注释掉其中六行代码,并关闭DEBUG,如下:

保存脚本后,再次执行添加IP方法测试,IP可以正常添加。PS:不要忘记把测试添加的IP移除掉。

0
1 409
文章 Nicky Zhu · 五月 9, 2023 5m read

在上一篇文章中,我们看到了如何捕获位于我们服务器上一个文件夹中的DICOM类型的文件,以及如何将它们发送到PACS软件(在我们的案例中是ORTHANC开源解决方案)进行存储和咨询。那么,在这篇文章中,我们要处理的是相反的动作。

在我们的例子中,我们将配置我们的IRIS for Health Prodcution,以接收从我们的PACS通过TCP/IP发送的图像。要做到这一点,我们必须包括一个标准EnsLib.DICOM.Service.TCP类的业务服务,它将允许我们配置接收端。让我们来看看这个配置:

如您所见,我们已经声明了将监听的端口,通过该端口将接收从 PACS 发送的图像。我们还配置了本地 AET (Application Entity Title,应用实体名称)(IRIS) 和将向我们发送 DICOM (ORTHANC) 的 PACS,请记住这些字段是强制性的,并且将用于检查发送和接收 DICOM 消息的有效性。不要忘记必须从 DICOM 设置菜单配置和关联两个 AET:

正如你所看到的,我们已经配置了从IRIS到ORTHANC(前一篇文章的案例)和从ORTHANC到IRIS(本文中的案例)的信息发送。确认你已经为这两个关联上下文配置了你在两个系统中发送和接收的DICOM图像类型的演示上下文。

1
0 330
文章 Michael Lei · 五月 5, 2023 5m read

虽然在一项研究中,与医生的回答相比,一些专业人士确实更喜欢ChatGPT的回答,但凯洛格Kellog研究人员表示,现在判断人工智能是否真的能与医生的专业知识和对待病人的态度相媲美还为时过早。

 

根据本周发表在《美国医学会杂志》(JAMA Internal Medicine)上的一项研究,人工智能聊天机器人助手可以为患者的健康问题提供可以与医生回复相提并论的同等质量而且富有同情心的答复。

一组有执照的医护人员比较了医生和聊天机器人2022年10月在社交媒体论坛Reddit的r/AskDocs上公开提出的病人问题的回答,到了12月下旬他们被ChatGPT的答复征服了。

研究作者称:"聊天机器人的回答比医生的回答更受欢迎,而且在质量和同情心方面的评价都明显更高。“

加州大学圣地亚哥分校高通研究所的约翰-艾尔斯(John Ayers)撰写的《比较医生和人工智能聊天机器人对发布在公共社交媒体论坛上的患者问题的回应》的研究新闻很快被大量报道,其中充满了决定性的动词,如 "超越"、"击败 "或 "战胜",医生们上了头条,而ChatGPT成为了胜利者。

但其他生成型人工智能学者并不确定ChatGPT的同理心是否能取代医生的同理心。

医生是如何对待回答社交媒体上的问题的?

ChatGPT已经显示出对一系列医疗行业使用场景的潜在价值。

0
0 146
文章 Weiwei Gu · 五月 4, 2023 11m read

我们客户的一个共同需求是配置 HealthShare HealthConnect 和 IRIS的高可用性模式。

市场上的其他集成引擎通常被宣传为具有“高可用性”配置,但事实并非如此。通常,这些解决方案与外部数据库一起使用,因此,如果这些数据库未配置为高可用性,当发生数据库崩溃或与它的连接丢失时,整个集成工具将变得不可用。

对于 InterSystems 解决方案,这个问题不存在,因为数据库是工具本身的一部分和核心。 InterSystems 如何解决高可用性问题?深奥的配置会把我们拖入异化和疯狂的漩涡?不!在 InterSystems,我们倾听并处理了您的投诉(正如我们一直努力做的那样 ;)),并且我们已将镜像功能提供给所有用户和开发人员。

镜像

镜像如何工作?这个概念本身非常简单。如您所知,IRIS 和 HealthShare 都使用一个日志系统,该系统记录每个实例的数据库上的所有更新操作。这个日志系统是后来帮助我们在崩溃后恢复实例而不会丢失数据的系统。好吧,这些日志文件在镜像中配置的实例之间发送,允许并保持镜像中配置的实例永久更新。

架构

让我们简要解释一下在 Mirror 中配置的系统架构是什么样的:

  • 在故障转移模式下配置的两个实例:
    • 主动节点——接收所有常规的读/写操作。
    • 被动节点:在读取模式下,它同步接收主动节点产生的任何变化。
0
0 496
文章 Lilian Huang · 四月 28, 2023 8m read

     

嗨社区,
在本文中,我将演示 InterSystems Embedded Python 的用法,我们将涵盖以下主题:

  • 1-嵌入式Python概述
  • 2-嵌入式Python的使用
    • 2.1- 从 ObjectScript 使用 Python 库
    • 2.2- 从 Python 调用 InterSystems API
    • 2.3- 一起使用 ObjectScript 和 Python
  • 3-使用python内置函数
  • 4-Python 模块/库
  • 5 个嵌入式 Python 用例


  • 6-总结

我们从概述开始
 

1-嵌入式Python概述

嵌入式 Python 是 InterSystems IRIS 数据平台的一项功能,它允许 Python 开发人员完全直接地访问 InterSystems IRIS 中的数据和功能。

0
0 344
InterSystems 官方 Claire Zheng · 四月 27, 2023

InterSystems 已修复了一个缺陷,该缺陷可能会导致使用 IBM POWER8 或更高版本的 POWER 处理器的 AIX 系统上的数据库和Journal日志文件损坏。只有在使用数据库或Journal日志加密时才会触发此缺陷。

当满足以下条件时,会触发此缺陷:

如果环境满足所有这些条件,则用于数据库或Journal日志加密的密钥计划可能会被损坏。

该缺陷存在于以下产品和基于这些产品的任何 InterSystems 产品中:

  • InterSystems IRIS ® 除 2022.1.3 和 2023.1 之外的所有版本
  • InterSystems IRIS for Health ——除 2022.1.3 和 2023.1 之外的所有版本
  • HealthShare ® Health Connect 除 2022.1.3 和 2023.1 之外的所有版本
  • HealthShare ®解决方案——所有版本

请注意,此缺陷不会直接影响 HealthShare 解决方案,因为它们不使用数据元素加密功能。但是,如果 HealthShare 环境有一个使用上述数据元素加密功能的客户化定制,则它们必须遵循此警报中提供的补救措施。

0
0 218
InterSystems 官方 Claire Zheng · 四月 10, 2023

InterSystems已修复一个缺陷,该缺陷在罕见情况下会导致ECP客户端不稳定。

该缺陷存在于以下产品和基于这些产品的任何InterSystems产品中。

受影响的版本是2022.1.x、2022.2和2022.3:

InterSystems IRIS®

InterSystems IRIS for Health™

HealthShare® Health Connect

受影响的版本是2022.2(只针对部署ECP的客户):

InterSystems HealthShare®

这个问题只发生在ECP客户端系统中。当这个问题被触发时,进程可能遇到<SYSTEM>或<DATABASE>错误。出错后,ECP客户端会出现不稳定;在某些情况下,实例可能会挂起。对数据没有影响,ECP数据库服务器不受影响。

要清除不稳定性,必须重新启动ECP客户端实例。

如果您的 IRIS、IRIS for Health 或 Health Connect 实例受到影响,补救措施是升级到版本 2023.1 或 2022.1.3,这两个版本都将很快发布。

如果您有受影响的 HealthShare 实例,一组单独的警报文档和补救建议将很快发布

0
0 257
公告 Claire Zheng · 四月 10, 2023

2023年4月14日-16日,2023 CHITEC将在安徽省合肥市合肥滨湖国际会展中心(安徽省合肥市锦绣大道3899号)盛大召开。点击查看CHITEC 2023完整日程。InterSystems将亮相CHITEC,通过展位展示、主题研讨会、分论坛演讲等方式,全方位多角度展示InterSystems加速评测,助力公立医院高效建设互联互通平台和数据中心的能力。

0
0 475
文章 姚 鑫 · 四月 8, 2023 3m read

第二十二章 配置镜像 - 镜像配置指导原则

为了提供强大、经济的HA解决方案,镜像设计为可适应各种系统配置和体系结构。但是,建议遵循以下一般配置准则:

  • IRIS实例和平台兼容性-在确定要添加到镜像的系统之前,请务必查看IRIS实例兼容性和成员字符顺序注意事项中描述的要求。
  • 故障转移成员相等-假定镜像中的两个故障转移成员相等。无法将首选项配置为主角色,并且根据情况需要将主角色和备份角色互换。因此,最佳做法是使故障转移系统主机彼此尽可能相似,特别是使用相似的计算资源进行配置;即,两个系统上的CPU和内存配置以及磁盘配置应具有可比性。
  • 主实例配置和安全设置-主故障转移成员上的用户、角色、命名空间和映射(包括全局映射和包映射)等元素的配置不会被其他镜像成员上的镜像复制。因此,必须在备份故障切换成员或灾难恢复异步成员上手动复制所有设置,并根据需要进行更新,才能使备份故障切换成员或灾难恢复异步成员有效地从主成员接管。
  • 未镜像数据-仅在主故障转移成员上的镜像数据库中的数据在备份故障转移成员和异步成员上复制和同步。因此,使备份或灾难恢复异步有效地接管主服务器所需的任何文件(例如,包括与SQL网关和Web服务器配置相关的文件)都必须手动复制到这些成员,并根据需要进行更新。

注:镜像数据库的文件流(默认情况下位于数据库目录的Stream子目录中)不会被镜像。

0
0 121
InterSystems 官方 Claire Zheng · 四月 6, 2023

InterSystems 已修复一个导致SQL查询返回不正确结果的缺陷。

该缺陷存在于以下产品和基于这些产品的任何InterSystems产品中。

受影响的版本是 2021.2、2022.1.x、2022.2 和 2022.3:

  • InterSystems IRIS®
  • InterSystems IRIS for Health™(医疗版)
  • HealthShare®Health Connect

受影响的版本是 2022.2:

  • InterSystems HealthShare®

  当启用 SQL 运行时计划选择 (RTPC) 被启用(默认),并且查询包含一个“truth value”“WHERE ?=? 时,该缺陷会被触发,当被触发时,一些判断可能不会被正确评估;这导致了不正确的查询结果。

注意:通过查看SQL语句,无法完全评估一个查询的脆弱性。这是因为InterSystems SQL查询优化可以在查询的内部表示中增加“truth value”。

如果你的环境使用 InterSystems SQL,那么你可以通过禁用RTPC 功能来补救这个问题

注意:关于 InterSystems HealthShare® 缓解措施的其他信息将很快发布。

0
0 212
文章 Kelly Huang · 三月 28, 2023 1m read

嗨大家好!

最近我需要使用 IRIS For Health 设置本地 FHIR 服务器,我认为我找到了有史以来最简单的方法!

只需在终端中运行以下两行:

 docker run --rm --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystemsdc/irishealth-community

docker exec -it my-iris iris session iris -U "USER" '##class(%ZPM.PackageManager).Shell("install fhir-server")'

您将在 http://localhost:9092/fhir/r4 本地运行 FHIR 服务器。

就是这么简单!

FHIR 服务器将使用最新版本的 InterSystems IRIS for Health Community Edition,并将通过 FHIRSERVER 命名空间中的 IPM 包从该应用程序部署 FHIR 服务器

这是针对 Mac OS的,所以请在评论中添加它在 Windows 中的工作方式。

这是一篇非常短的文章,因为使用 InterSystems IRIS for Health 和IPM Package Manager 设置本地 FHIR 服务器真的很容易。

0
0 290
文章 姚 鑫 · 三月 23, 2023 24m read

简介

什么是Query

Query是一种查询方法,用于查找满足条件的数据,将结果以数据集的形式展现出来。

Query类别

  • SQL Query,使用类 %SQLQuerySQL SELECT 语句。
  • 自定义Query,使用类 %Query 和自定义逻辑生成查询数据。

说明:在讲通用Query解决方案之前,我们先了解一下Query的基础和基础使用,有助于理解实现原理。如果读者了解Query基本使用,可跳过此章节,直接阅读“现状”。

Query基本使用

SQL Query基本使用

Query QueryPersonByName(name As %String = "") As %SQLQuery(COMPILEMODE = "IMMEDIATE", CONTAINID = 1, ROWSPEC = "id:%Integer:ID,MT_Name:%String:name,age:%String,no:%String", SELECTMODE = "RUNTIME") [ SqlName = QueryPersonByName, SqlProc ]
{
	SELECT top 10 ID, MT_Age, MT_Name, MT_No
	FROM M_T.
0
0 330
文章 姚 鑫 · 三月 20, 2023 4m read

第三章 高可用性的故障转移策略

随着组织越来越依赖基于网络的应用程序,使数据库尽可能可用和可靠变得至关重要。本指南解释了 IRIS 数据平台如何提供高度可用和可靠的数据存储,并描述了从中断和故障中快速恢复并同时保持数据完整性的策略。

IRIS® 数据平台提供多种高可用性 (HA) 解决方案,并可轻松与操作系统供应商提供的所有常见 HA 配置集成。

维持系统高可用性的主要机制称为故障转移。在这种方法下,一个失败的主系统被一个备份系统取代;也就是说,处理故障转移到备份系统。许多 HA 配置还提供灾难恢复机制,即在故障转移机制无法保持系统可用时恢复系统可用性。

IRIS 实例故障转移有五种通用方法以实现 HA(包括不实施 HA 策略)。本章概述了这些方法,而本指南的其余部分提供了实施这些方法的过程。

重要的是要记住,在除镜像之外的所有这些方法中,单个存储故障都可能是灾难性的。因此,磁盘冗余、数据完整性指南“日志记录”一章中描述的数据库日志记录以及数据完整性指南“备份和还原”一章中描述的良好备份过程必须始终是您的一部分方法,因为它们对于减轻磁盘故障的后果至关重要。

如果需要详细信息来帮助制定适合环境的故障转移和灾难恢复策略。

无故障转移策略

IRIS 数据库的完整性始终受到数据完整性指南中描述的功能的保护,免受生产系统故障的影响。

0
0 243
文章 Kate Lau · 三月 17, 2023 1m read


添加凭据以登录 FHIR REST 接口 - 在这例子仅考虑基本身份验证

 

 

添加服务注册表 - 在这例子仅考虑基本身份验证

- 设置 HTTP 服务

- 输入 FHIR 服务器的路径

- 输入 FHIR 服务的 URL

- 使用配置的凭证

 


添加 "HS.FHIRServer.Interop.HTTPOperation"

选择服务名称

 

测试 FHIR 客户端

 

跟踪测试结果

1
0 177
文章 姚 鑫 · 三月 19, 2023 4m read

第二章 高可用性解决方案 - 虚拟化平台高可用

虚拟化平台高可用

虚拟化平台通常提供 HA 功能,通常会监控来宾操作系统及其运行的硬件的状态。在任何一个失败时,虚拟化平台都会根据需要在备用硬件上自动重启失败的虚拟机。当 IRIS 实例重新启动时,它会自动执行正常的启动恢复,保持结构和逻辑的完整性,就好像 IRIS 在物理服务器上重新启动一样。

虚拟环境中的故障转移

虚拟化 HA 具有内置于虚拟化平台基础架构中的优势,因此只需很少的配置工作,在某些情况下根本不需要。此外,虚拟化平台允许有计划地将虚拟机重新定位到备用硬件以进行维护,从而实现物理服务器的升级,例如,无需任何停机时间。

IRIS 镜像

具有自动故障转移功能的 IRIS 镜像采用不同的 HA 方法,依靠完全独立系统之间的逻辑数据复制来避免共享存储的单点故障风险,并确保生产可以立即故障转移到几乎所有的备用 IRIS 实例故障场景——系统、存储和网络。

IRIS 镜像中,一个称为主要故障转移成员的 IRIS 实例提供对生产数据库的访问。单独主机上的另一个实例,称为备份故障转移成员,与主实例同步通信,检索其日志记录,确认收到它们,并将它们应用于同一数据库的自己的副本。通过这种方式,主备都始终知道备份是否有来自主的最新日志文件,因此可以将其数据库与主上的数据库精确同步。

0
0 267
文章 姚 鑫 · 三月 18, 2023 3m read

第一章 高可用性解决方案 - HA 解决方案中的问题

高可用性(HA)指的是使系统或应用程序在长时间内保持正常运行并可供用户使用的目标,从而最大限度地减少计划内和计划外停机时间。 IRIS提供自己的HA解决方案,并轻松与操作系统提供商提供的常见HA解决方案集成。

维护高系统可用性的主要机制称为故障转移。在这种方法下,故障的主系统由备用系统代替;也就是说,生产故障转移到备份系统。许多HA配置还提供了灾难恢复(DR)机制,即当HA机制无法保持系统可用时,恢复系统可用性。

本页简要讨论可与基于 IRIS 的应用程序一起使用的一般 HA 策略,然后涵盖 IRIS HA 解决方案中的问题,提供 HA 解决方案功能比较,并讨论使用分布式缓存和故障转移策略

IRIS HA 解决方案中的问题

在为IRIS 系统评估潜在的 HA 解决方案时,请牢记以下两个重要问题:

  • 共享存储

HA 架构的一个重要原则是避免单点故障。大多数 HA 解决方案依赖于共享存储组件;这代表了这样的风险;如果存储出现故障,就不可能保持系统可用。存储级冗余可以在一定程度上减轻这种风险,但也可以延续某些类型的数据损坏。

另一方面,IRIS 镜像在完全独立的主存储和备份存储之间使用逻辑数据复制,完全消除了单点故障问题并避免了大多数类型的损坏。

  • IRIS 升级

许多 HA 解决方案允许在不中断整体可用性的情况下对给定组件系统进行计划内停机。

0
0 207
文章 Claire Zheng · 三月 14, 2023 10m read

本文根据InterSystems中国技术总监乔鹏( @Qiao Peng )的演讲“互联互通套件赋能数据利用与应用创新”整理而成。

IRIS医疗版互联互通套件的缘起与发展演进
 

来源HL7:正在到来的挑战 



http://hl7.org/fhir/change.html


 

这是来自HL7官网上的一张图,描述了我们在医疗卫生行业面临的一些挑战,以及信息化建设在应对挑战中发挥的作用。当今,医疗卫生、生物学、信息技术有很强的融合趋势,加之社会变革带来的经济方面的需求,同时构成颠覆传统医疗卫生行业的因素。

这张图显示了从“被动医疗”转向“主动医疗”过程中信息的爆炸式增长,信息共享交换推动了我们对信息的利用,在这一进程中,医疗卫生信息化起着核心作用——而让信息更具价值,赋予信息标准化和互操作能力的过程,这也是InterSystems一直努力的方向,我们在国内支持大量医院实现了互联互通建设。在建设过程中,我们注意到项目的定量部分的建设成本占比是比较高的,很多的工作都花在了合规性和相关管理工具的开发上——应用标准的实施是有成本的,而对于标准的理解在各个项目上水平不尽相同,这就进一步影响了互联互通项目的建设成果。

0
0 356
文章 王喆 👀 · 三月 12, 2023 8m read

 

SSH框架是Java一个的比较有代表性的框架,是多年前比较流行的一个。有struts+spring+hibernatespringMVC+spring+hibernate两种,当然我大学时候使用的是第二种。倘使我能把IRIS作为一个库,联结到Hibernate那么理论上是不是也代表IRIS也可以使用SSH框架开发呢?

 

工具及环境

JDK 1.8

       Maven

       Hibernate 5.X.X

       IRISHealth-2022.1.3

       intellij idea

       Windows 10 64

1、创建数据库

       用代码的方式创建几个表

 



Class BKIP.SOA.MonitorScreen.CacheTable.logError Extends %Persistent

{

/// 服务概况缓存表

Property SucNum As %String(MAXLEN = "");

 

Property failNum As %String(MAXLEN = "");

 

Property fdateTime As %String(MAXLEN = "");

 

}

如图所示:

 

 

 

2、创建一个Spring的项目

       File—New—Project.

0
0 162
文章 Jingwei Wang · 三月 7, 2023 2m read

自定义更多的Production组件的设置

本示例会在Production的组件BO(业务操作)中增加自定义的配置信息,例如添加目标系统信息,当然此类信息也可以放在已有的配置”注释“中。

 

为production组件新增设置信息

  1. 为组件创建”目标服务器“设置信息。 现在想要为一个组件SoapDemo.BO.Operation.MyWebServiceSoap新增一个名为”目标服务器“的设置信息。
  2. 在SoapDemo.BO.Operation.MyWebServiceSoap类中增加以下代码,然后编译此类。其中Info为,您想将此设置放在哪一种设置中,Info代表”信息设置“,Basic代表”基本设置“,详细信息请参考设置类型
    Property 目标服务器 As %String(MAXLEN = 2000, XMLPROJECTION = "ATTRIBUTE");
    Parameter SETTINGS = "目标服务器:Info";
  3. 进入Production页面,刷新改页面,如下图所示,此时已经成功为组件增加 ”目标服务器“ 设置。 

 

获取组件设置信息

  1. 使用代码从终端获取组件设置信息 使用如下代码其中”SoapDemo.BO.Operation.MyWebServiceSoap“为组件名称,”目标服务器“为设置名称。
    write ##class(Ens.
0
0 197
文章 Nicky Zhu · 八月 10, 2022 3m read

在互操作功能运行过程中,IRIS可以识别异常情况的发生,自动生成告警事件并通过预制的互操作组件将告警转发给干系人;另外,IRIS也内建了告警工作台,可供运维团队基于工作流实现对告警的管理。

告警设置与转发

Production告警设置

Production级别可以设置对连接异常的告警设置,及告警组件设置

组件告警设置

  • 控制何时触发警报。
    • 队列计数警报。
      • 队列中的信息数量
    • 队列等待警报。
      • 消息在队列中停留的秒数
    • 不活动超时。
      • 业务组件不活动的秒数
      • v2012.1之前,不会触发告警

警报宽限期

    • 与外部连接有关的错误可以有宽限期设置
      • 设置重新建立连接的时间,超时且连接不成功才会发出告警
    • 业务服务
      • 警报宽限期
    • 业务操作
      • 再次发出警报宽限期

转发告警

    • EnsLib.EMail.
3
0 202
公告 Michael Lei · 二月 28, 2023

我们很高兴地宣布我们的抢先体验计划的最新成员 - Health Data De-ID工具。

该工具将根据 *HIPAA 安全港* 对结构化临床数据进行去标识化处理,并允许在需要时进行重新标识。它使用 InterSystems 的 *SDA* 规范格式,该格式用于我们从一种格式到另一种格式的所有标准转换,例如 *HL7* 到 *CDA*、*HL7* 到 *FHIR* 等。虽然该工具使用 XSLT 转换来提高性能原因,它提供了辅助方法,您不需要成为 XSLT 专家的情况下更轻松地调整开箱即用的去标识化规则。

image

Health Data De-ID 适用于任何 InterSystems 产品,从 InterSystems IRIS for Health 到 Health Connect 再到 Unified Care Record。

您可以在此处加入抢先体验计划 - [如何注册抢先体验计划 (EAP)]?我们需要您的反馈,因此请在您完成整个过程或遇到任何问题时与我们联系。

0
0 165
文章 Lilian Huang · 二月 28, 2023 3m read

嗨,InterSystems 开发人员!

最近我更新了FHIR 开发模板,它发布了一个 IPM 包fhir-server ,使 InterSystems FHIR 服务器的设置成为一个微不足道的手动或自动或编程的程序,只需一条命令。

请参阅下文,了解如何从中受益。

TLDR

USER>zpm "install fhir-server"

以下所有详细信息。

0
0 165
文章 Qiao Peng · 二月 22, 2023 12m read

面向对象编程的优势

在应用程序开发时,我们使用的大多数开发语言都是面向对象编程 object-oriented programming (OOP)语言,例如大家熟悉的Java、.NET。而TIOBE的2023年2月的最新开发语言流行排行榜上,前5大语言都是面向对象编程语言,连排名第六的Visual Basic都有了越来越多的OO特性:

为什么使用面向对象编程这么流行?因为它有诸多优势:

  • 封装:将数据和操作数据的代码封装在一个单元中,在确定范围的数据上进行编程。方便代码的开发、管理与分享。
  • 抽象:将业务数据概括为不同的对象类型,从而进行业务分组开发、简化程序。
  • 继承:一个类可以从另一个类继承它属性和行为,从而实现更大范围的代码复用。
  • 多态:多个对象可以创建自一个类,且可以有不同的行为。一段灵活的代码能实现多种形态的业务,它进一步降低了代码开发量和调用难度。

而这4个优势正是面向对象编程的核心特征。

 

关系型数据库的对象/关系错配

虽然面向对象编程是绝对的主流,但数据通常被保存到关系型数据库中。关系型数据库的行和列二维关系与复杂的对象并不匹配:

  • 面向对象的核心特性:封装、抽象、继承、多态,关系数据库都无法直接支持。
  • 对象可以表达复杂的多维度、多类型的数据集,关系性数据库只能表达二维(行和列)、简单类型的数据集。
0
0 705
文章 Lele Yang · 二月 21, 2023 4m read

** 2018 年 2 月 12 日修订

虽然本文是关于 InterSystems IRIS 的,但它也适用于 Caché、Ensemble 和 HealthShare 发行版。

介绍

内存以页为单位进行管理。 Linux 系统上的默认页面大小为 4KB。 Red Hat Enterprise Linux 6、SUSE Linux Enterprise Server 11 和 Oracle Linux 6 引入了一种根据系统配置提供 2MB 或 1GB 大小的增加页面大小的方法,称为 HugePages。

起初 HugePages 需要在启动时分配,如果管理或计算不当可能会导致资源浪费。因此,各种 Linux 发行版引入了默认启用 2.6.38 内核的Transparent HugePages。这是一种自动创建、管理和使用 HugePages 的方法。以前的内核版本也可能具有此功能,但可能未标记为 [always] 而是设置为 [madvise]。

Transparent Huge Pages (THP) 是一种 Linux 内存管理系统,它通过使用更大的内存页面来减少在具有大量内存的机器上进行Translation Lookaside Buffer (TLB) 查找的开销。然而,在当前的 Linux 版本中,THP 只能映射单个进程的堆栈空间。

0
0 240
文章 Claire Zheng · 二月 21, 2023 1m read

速度、规模和安全性是我们真正热衷的领域,这也正是优秀的E级方程式赛车手所追求的。在InterSystems 2022年全球峰会上,InterSystems 数据平台产品管理总监Jeffery Fried 及其团队分享了InterSystems IRIS数据平台的新功能与产品规划。基于InterSystems IRIS数据平台,我们为用户构建优秀的“赛车”,内置的一系列非凡功能和高效周全的“维修技师”,确保“赛车手”能够在竞争激烈的赛道中心无旁骛地飞速向前!

0
0 265