作为十年庆典的一部分,我们很高兴表彰一些长期以来为 InterSystems 开发人员社区做出重大贡献的成员。
在过去的十年中,这些人分享知识、支持同行,并帮助加强了我们社区的协作精神。

为了表彰他们的贡献,我们特别推出了一套10 周年纪念版奖项和Global Master徽章:
作为十年庆典的一部分,我们很高兴表彰一些长期以来为 InterSystems 开发人员社区做出重大贡献的成员。
在过去的十年中,这些人分享知识、支持同行,并帮助加强了我们社区的协作精神。

为了表彰他们的贡献,我们特别推出了一套10 周年纪念版奖项和Global Master徽章:
亲爱的开发者们,值此十周年庆典之际,我们诚邀请您参与一场讨论,回顾您在 InterSystems 开发者社区的体验与经历。
过去十年间,成千上万的成员通过知识共享、协作,以及有意义的联系,共同塑造了这个空间,您的声音是这段历史不可或缺的一部分。
.jpg)
我们鼓励您加入对话,分享您的故事。请在评论中告诉我们:
大家好!
2025 年 12 月 7 日, InterSystems 开发者社区正式庆祝成立十周年!🥳🎉 现在,让我们向这十年的学习、合作、解决问题和 InterSystems 技术的发展致以崇高的敬意。
无论您是从一开始就在这里,还是最近才加入,感谢您的贡献、问题、想法和支持。这个里程碑属于大家的💖,是大家的共同努力,让这个社区成长为今天的样子,由衷地感谢大家!
作为庆祝活动的一部分,我们邀请大家参与周年纪念特别视频的录制,感谢大家抽出时间分享他们的问候、回忆和赞美之词。
在当今的医疗数据领域,FHIR 已成为结构化临床数据交换的标准。然而,虽然 FHIR 擅长互操作性,但其 JSON 格式却给分析带来了挑战——包括FHIR QuestionnaireResponse数据。
本项目演示了如何将 FHIR QuestionnaireResponse 数据从嵌套 JSON 转换为关系 SQL 表和向量嵌入。通过集成 InterSystemsIRIS FHIR SQL 生成器和向量搜索,我们揭开了患者回答背后的语义。
首先使用 美国国家医学图书馆(NLM)表格生成器。该工具有助于设计符合 FHIR 标准的结构化临床表格。在本项目中,收集了 100 份合成患者回复,并将其保存为 FHIR QuestionnaireResponse JSON 文件,准备导入 FHIR 服务器。

将 FHIR QuestionnaireResponse 资源加载到服务器后,使用InterSystems IRIS FHIR SQL 生成器自动创建关系 SQL 表。这将使嵌套的 JSON 结构扁平化,从而能够使用标准 SQL 轻松分析问卷数据——所有配置只需点击几下即可完成。
我们在开发者社区的目标是培养由开发者创建并为开发者服务的高质量、值得信赖的原创技术内容。虽然 ChatGPT 等人工智能工具在写作过程中会有所帮助,但我们希望所有发布的内容都能反映真实的专业知识和个人理解。如果您有任何疑问或希望与人工智能讨论编码问题,请考虑使用我们的Developer Community AI Chat。
我们认识到人工智能工具可以帮助编辑和提高清晰度。您可以在以下场景中应用人工智能:
例如 自己撰写一篇 关于如何使用 %JSON.Adaptor 类的文章 ,并使用 ChatGPT 改善句子的流畅性和清晰度。
为保护我们平台的完整性,不允许使用以下由人工智能生成的内容:
例如提示 ChatGPT "撰写一篇强调 FHIR 标准优点的长文",然后将其作为自己的作品发布。
为了保持高质量的内容并维护社区的信任度,您应努力使生成式人工智能的使用透明化。
InterSystems 在《ISG/Ventana 买家指南》(ISG/Ventana Buyers Guide)中综合排名第二——领先于微软、亚马逊云服务(AWS)、谷歌和IBM。
什么是 XML?
XML (可扩展标记语言)是一种灵活的、基于文本的、独立于平台的格式,用于以结构合理 、人机可读的方式存储和传输数据 。XML 允许用户定义自定义标签来描述数据的含义和组织结构。例如:<book><title>The Hitchhiker's Guide</title></book>.
XML 文档具有自描述性,其结构是一棵分层的元素树。每个文档都有一个封装所有其他内容的根元素。元素可以包含文本、子元素和属性(提供补充信息的名-值对)。这些文档通常用 .xml 文件存储
这种结构的完整性可以通过以下方式实现:
这部分内容介绍如下:
在这些实施过程中,两种格式都会首先转换为 InterSystems IRIS SDA(标准化数据架构)格式。这被认为是一种标准、高效、不易出错的方法,因为它有效地利用了平台的 预置类。数据采用 SDA 格式后,可无缝转换为任何目标标准,如 HL7 v2、 FHIR 或 CCDA。
✓ 十一月有 14 位新成员加入
✓ 截至目前共发布了 2,441 篇帖子
✓ 截至目前共有 2,305 位成员加入
当我们在 IRIS 中创建 FHIR 资源库时,我们有一个端点来访问信息、创建新资源等。但 FHIR 中有些资源可能不会出现在我们的资源库中,例如二进制资源(该资源返回文档,如 PDF)。
我创建了一个例子,当请求二进制资源时,FHIR 端点会返回一个响应,就像它存在于资源库中一样。
首先,我们需要一个命名空间和一个 FHIR 端点。然后,我们需要配置一个将连接到 FHIR 端点的互操作生产环境。该生产环境必须包含以下项目:
生产环境如下所示:

创建此生产环境后,我们需要将其与FHIR端点连接。
大家好!
我很高兴地宣布,自今年年初以来,我们已将 InterSystems IRIS、InterSystems IRIS for Health 和 Health Connect 的许多客户端 SDK 发布到相应的外部存储库(Maven、NuGet、npm 和 PyPI)中。这将为您带来许多好处,例如:
以下是我们目前已发布的客户端 SDK 的列表,以及最新版本的相应版本号和查找位置:
Java
| JDBC | 3.10.5 | https://mvnrepository.com/artifact/com.intersystems/intersystems-jdbc |
| Document API | 1.0.3 | https://mvnrepository.com/artifact/com. |
我们非常高兴地宣布, IntegratedML Custom Models(集成式机器学习自定义模型)抢先体验计划即将开启,这是 IRIS 2026.1 版本中即将推出的一项强大新功能!
IntegratedML Custom Model扩展了现有的IntegratedML/AutoML(集成式机器学习/自动化机器学习)功能,支持您直接在 SQL 查询中部署自己的自定义 Python 机器学习模型。IntegratedML AutoML功能提供自动化机器学习服务,而Custom Model(自定义模型)则赋予您完全的控制权——自定义预处理、任意与 scikit-learn 兼容的模型,以及 Prophet 或 LightGBM 等第三方库——所有操作均在数据库内执行,无需数据移动。
2025年12月1日,中国 北京——为全球超过10亿份健康档案提供支持的创新数据技术提供商InterSystems近日宣布推出InterSystems HealthShare AI 助手(AI Assistant),这是一款全新的生成式人工智能功能,旨在帮助临床医生、个案管理人员和管理人员更快、更直观地访问和理解患者信息。
HealthShare AI 助手以 InterSystems HealthShare统一健康档案(UCR)这一值得信赖的基础为依托,引入了会话界面,使用户能够使用自然语言提示安全地查询、汇总和浏览复杂的纵向健康记录。 AI 助手可以从数千个不同的临床数据源中查询记录,并利用生成式 AI 来显示相关洞察,使用行业标准展示方式呈现信息,使用户能够更快、更直观地访问全面的患者数据和关键见解。
HealthShare AI 助手的一些关键功能包括:
您检查了服务器,发现IRISTEMP 增长过快。不必惊慌。让我们在存储空间耗尽之前调查一下这个问题。
在假设 IRISTEMP 是问题所在之前,让我们先检查一下它的实际大小。
在IRIS 终端运行以下命令:
%SYS>do ^%FREECNT出现提示时,输入
Database directory to show free space for (*=All)? /<your_iris_directory>/mgr/iristemp/如果输出结果显示可用空间非常小,则IRISTEMP 正在像拥挤的壁橱一样占满您的存储空间。但是,如果可用空间没有问题,但 IRISTEMP 数据库文件 (IRIS.DAT) 仍然很大(这可能就是你来这里的原因),这意味着临时数据已经被清理。在这种情况下,你的任务就是密切关注,按照下面的步骤在下一次行动中抓住它,并恢复宝贵的空间。
%SYS>do ^%GSIZEDirectory name: /<your_iris_dir>/mgr/iristemp/
All Globals?回顾上一季度,报告中着重强调了几项对本季度报告仍具现实意义的重要进展。
对于初次接触这些资讯的人而言,本次更新将基于当前信息,详细介绍近期所做的改进以及预期的变更;不过,未来预测仍存在不确定性,因此内容不应被解读为确定性的产品路线图。
2024 年,InterSystems 为所有基于英特尔和 AMD 的服务器引入了最低支持的 CPU 架构,使我们能够利用新的 CPU 指令创建速度更快的 IRIS 版本。IRIS 2025.3将更新该列表,要求采用 x86-64-v3 微架构级别,这需要 AVX、AVX2、BMI 和 BMI2 指令。
您是否想知道您的 CPU 是否仍受支持?
InterSystems IRIS® 数据平台、InterSystems IRIS® data platform, InterSystems IRIS® for HealthTM和HealthShare® Health Connect 2025.3 版本现已全面发布 (GA)。这是一个持续交付 (CD) 版本。
版本亮点:
请通过开发者社区分享您的反馈意见,以便我们共同打造更好的产品。
文档
有关所有重点功能的详细信息,请访问以下链接:
现代数据架构利用实时数据捕获、转换、移动和加载解决方案来构建数据湖、分析仓库和大数据存储库。它能够分析来自不同来源的数据,而不会影响使用这些数据的操作。要实现这一目标,必须建立连续、可扩展、弹性和稳健的数据流。最常用的方法是 CDC(变更数据捕获)技术。CDC 监控小型数据集的生产,自动捕获这些数据,并将其传送到一个或多个接收方,包括分析数据存储库。这样做的主要好处是消除了分析中的 D+1 延迟,因为数据一产生就会在源端被检测到,随后被复制到目的地。
本文将展示 CDC 场景中最常见的两种数据源,既可以是源数据源,也可以是目的地数据源。对于数据源(origin),我们将探讨 SQL 数据库和 CSV 文件中的 CDC。对于数据目的地,我们将使用列式数据库(典型的高性能分析数据库场景)和 Kafka 主题(将数据流传输到云和/或多个实时数据消费者的标准方法)。
本文将为以下互操作场景提供一个示例:

InterSystems IRIS中的窗口函数(Window Functions)可让您直接在SQL中执行强大的分析操作,例如累计总和、排名和移动平均值等。
这些函数针对与当前行相关的一组行(即“窗口”)进行操作,且不会像 GROUP BY那样合并结果。
这意味着您可以编写更简洁、更快速且更易于维护的查询——无需循环、无需连接、无需临时表。
在本文中,我们将通过处理一些常见的数据分析任务来了解窗口函数的作用机制。
SQL窗口函数(SQL window functions)是数据分析的强大工具。 它们允许你在保留各行列可见性的同时,跨行计算聚合值和排名。 无论你是在构建仪表盘、报表还是进行复杂分析,窗口函数都能简化你的逻辑并提升性能。
注:我并非窗口函数领域的专家,但我愿意分享助我理解窗口函数的心得体会和相关资源。非常欢迎大家提出建议或进行指正!
你是否曾为了计算累计总和、排名或行间差值,而编写过多条SQL查询语句,甚至使用过程化循环?
窗口函数能让你仅通过一条SQL查询语句就实现所有这些操作。
它们将强大的分析功能直接融入SQL——无需额外连接操作、无需临时表,也无需过程化循环。
窗口函数会针对一组与当前行存在某种关联的行进行计算——这组行被称为窗口(window)。
本文第一部分提供了所有背景信息。其中还包括DATATYPE_SAMPLE数据库的链接,您可以使用该链接来跟进示例。
在该部分中,我们探讨了一种易于检测的错误类型(""Access Failure【访问失败】") ,因为当尝试通过数据库驱动程序读取数据时,它会立即触发一条明确的错误消息。
本节讨论的错误更为隐蔽,也更难发现。我将它们称为"静默损坏(Silent Corruption)"和"未检测到的数据变异(Undetected Mutation)"。
让我们从"静默损坏(Silent Corruption)"开始:
在DATATYPE_SAMPLE数据库的 "雇员(Employee) "表中,有一条被故意篡改的记录可以证明这种行为--它就是ID = 110 的记录。 乍一看,甚至再看一眼,都看不出任何问题。无论是数据库驱动程序还是查询工具,都没有显示读取该记录有问题。

只有仔细观察才会发现,红色标记单元格中的值与传输(和定义)的元数据不符。
"名称(Name)"列被定义为VARCHAR(50),但实际值为60 个字符!

在某些情况下,这种行为不会造成任何问题——例如,当驱动程序宽松地处理这种不一致时。
但是,当下游系统依赖于所提供的元数据时,问题就会出现。如果根据这些元数据定义进行进一步处理,当实际内容与约定的接口不一致时,就可能出现错误。
概述
该版本引入了FHIR Server 2025.10.0,该版本遵循最新标准并实现了性能提升。它还增强了Health Connect Cloud(HCC)升级流程,提高了其可靠性,并通过在 VPN 配置中支持前缀列表为Network Connect增加了新的灵活性。
新功能和增强功能
|
类别 |
功能/改进 |
详细信息 |
|
FHIR Server |
发布 FHIR 服务器 2025.10.0 |
推出 InterSystems FHIR Server 的最新版本,具有更高的可扩展性、更强的 FHIR R5 一致性以及对批量数据交换的优化。 |
| Health Connect Cloud |
升级流程改进 |
简化和强化了 HCC 部署的升级工作流程,缩短了维护窗口持续时间,提高了回滚安全性和自动化准确性。 |
| Network Connect |
静态 VPN 导入支持前缀列表 |
静态 VPN 导入任务现在支持 AWS 前缀列表,简化了路由管理,使客户环境中的网络配置更加动态和一致。 |
推荐操作
此版本无建议操作。
支持
如需帮助或了解有关这些更新的更多信息,请通过 iService 或 InterSystems 云服务门户(InterSystems Cloud Service Portal)提交支持请求。
InterSystems IRIS Adaptive Analytics(自适应分析)2025.4.1 版本现已通过InterSystems 软件分发页面发布。 该版本集成 AtScale 2025.4.1,并兼容现有自适应分析用户自定义聚合函数(User-Defined Aggregate Function,UDAF)文件(2024.1 版本)。
AtSCale 2025 版本包含的新功能包括:
如需了解 AtScale 2025.4.1 的更多详细信息,请参阅版本发布说明。
如需了解 Adaptive Analytics 的更多信息,请参阅 InterSystems 官方文档 和 Learning Service 中的内容。
在使用标准 SQL 或 InterSystems IRIS 中的对象层时,元数据的一致性通常通过内置验证和类型执行来保持。但是,绕过这些层直接访问global的传统系统会带来微妙而严重的不一致性。
了解驱动程序在这些边缘情况下的行为,对于诊断遗留数据问题和确保应用可靠性至关重要。DATATYPE_SAMPLE数据库旨在帮助分析列值不符合元数据中定义的数据类型或约束的错误情形。我们的目标是评估 InterSystems IRIS 及其驱动程序(JDBC、ODBC、.NET)和不同工具在发生此类不一致时的表现。 在本篇文章中,我将重点介绍JDBC 驱动程序。
一些传统应用程序会直接写入globals。如果使用关系模型(通过 CREATE TABLE 创建或使用全局映射手动定义)来公开这些数据,那么映射定义 的底层值就会与每列的声明元数据一致。
当这一假设被打破时,可能会出现不同类型的问题:
大家好、
我们很高兴邀请大家参加即将举行的 InterSystems 2025开发者创意大赛:让梦想落地 线上启动会!
在这次线上启动会中,我们的演讲者将探讨InterSystems 创意门户网站上的Community Opportunity(社区共建机遇),这些创意正是本次编程竞赛的主题。他们将展示如何使用 InterSystems IRIS 数据平台开发、构建和部署应用程序。
日期和时间:美国东部时间 11 月 17 日星期一上午 10:30 | 欧洲中部时间下午 4:30 |北京时间2025年11月17日星期一晚上23:30
.png)
导言
InterSystems IRIS 数据平台一直以其性能、互操作性和跨编程语言的灵活性而著称。多年来,开发人员可以将 IRIS 与 Python、Java、JavaScript 和 .NET 结合使用,但 Go(或Golang)开发人员却只能望洋兴叹。

这种等待终于结束了。
新的go-irisnative驱动程序为 InterSystems IRIS 带来了GoLang 支持,实现了标准的 database/sql API。这意味着 Go 开发人员现在可以使用熟悉的数据库工具、连接池和查询接口来构建由 IRIS 支持的应用程序。
GoLang 是一种专为简单性、并发性和性能而设计的语言,是云原生和基于微服务架构的理想选择。它为 Kubernetes、Docker 和 Terraform 等一些世界上最具可扩展性的系统提供了支持。
将 IRIS 引入 Go 生态系统可实现以下目标
database/sql 界面进行自动化数据库访问。这种集成使 IRIS 成为现代云就绪 Go 应用程序的完美选择。
如果你觉得 IRIS 对 Go 的原生支持令人兴奋,那就等着看 GORM 加入后会发生什么吧。
就在最近,随着go-irisnative 的发布,我们迎来了 InterSystems IRIS 的本地 GoLang 支持。这仅仅是个开始。现在,我们又推出了gorm-iris ——一个 GORM 驱动程序,旨在为您的 IRIS + Go 堆栈带来对象关系映射 (ORM) 的强大功能。

GORM 是 Go 生态系统中最流行的 ORM 库之一。它使使用 Go 结构而不是编写原始 SQL 与数据库交互变得简单。通过自动迁移、关联和查询构建等功能,GORM 极大地简化了后端开发。
因此,在实现 Go 与 IRIS 的本地对话后,下一步自然是让 GORM 与 IRIS 无缝协作。这正是 gorm-iris 所要做的。
对于使用 InterSystems IRIS 的 Go 开发人员来说,我们已经达到了两个重要的里程碑:
database/sql 接口。现在是时候看看一切如何协同工作了。
为了演示 Go 开发人员可以如何轻松地采用 InterSystems IRIS,我使用了一个现有的生产级开源项目——RealWorld 示例应用程序——它展示了使用Go Fiber、GORM 和SQLite 实现的 Medium.com 式全栈克隆。

只需稍作配置调整,我就将 SQLite 换成了gorm-iris,其他一切保持不变。结果如何?
一个由 InterSystems IRIS 支持的功能齐全的 Go + Fiber 应用程序——不需要重写代码,不需要 ORM 体操,只需要一个不同的数据库后端。
您可以在这里找到完整的工作演示:github.com/caretdev/golang-fiber-iris-realworld-example-app
.png)
.png)
在OMOP 之旅的这一部分,我们在尝试挑战Scylla 之前先反思一下,InterSystems OMOP 转换是建立在批量 FHIR 导出作为源有效载荷的基础上的,我们是多么幸运。 这开启了 InterSystems OMOP 转换与多个 FHIR® 供应商的放手互操作性,这次是与谷歌云医疗 API 的 互操作性。
GCP FHIR® 数据库支持通过命令行界面(CLI)或应用程序编程接口(API)进行FHIR数据的批量导入/导出,其前提条件很简单,且相关文档极为详尽,因此我们就不让模型再针对这方面进行赘述训练了,如有兴趣,我们会附上相关链接。 本段标题中更有价值的是bulk FHIR export (批量FHIR导出)标准本身的实现。
谷歌实施 FHIR® 导出的重要区别在于:通过 Pub/Sub 发送资源变更通知,以及指定增量导出的能力。
是的!我想我会死在这把剑上的。 这不仅是我的说唱手柄,而且其机制绝对可以支持一个很好的技术论证,可以说...
"当一个新的组织被创建到 FHIR 时,我们会对其进行转换,并将其添加到 InterSystems OMOP CDM 中,与 Care_site/location
Hi开发者们!
鉴于去年首届大赛取得了巨大成功,我们决定再次举办这一赛事:
🏆InterSystems 2025开发者创意大赛:让梦想落地
您可以提交一个应用程序,实现InterSystems 创意门户中的创意,该创意应于本公告发布之前创建,其状态应为 Community Opportunity(社区共建机遇)或Future Consideration(待研功能提案),您需要进行实际编程 😉
时间:美国东部时间,2025 年 11 月 17 日至 12 月 7 日活动将延长至2025年12月14日! (项目提交时间延长至12月7日)
奖金:12,000 美元
直到开始新工作,我才了解到ObjectScript。实际上,Objectscript并不是一种年轻的编程语言。与 C++、Java 和 Python 相比,它的社区并不活跃,但我们很想让这里更有活力,不是吗?
我注意到,有些同事在理解大型项目中的类关系时感到棘手。目前还没有易于使用的现代化类图工具适用于ObjectScript。
相关工作
我尝试过相关的工作:
——InterSystems 类视图:
1. https://github.com/intersystems-community/ClassExplorer
这个工具很棒,类图显示清晰美观。但存在Docker构建问题:“#0 0.512 exec ./irissession.sh: no such file or directory”。我猜这是为Studio设计的支持功能,而非VSCode。它似乎需要手动导入项目,且需要一定配置才能使用。
2. https://github.com/gjsjohnmurray/vscode-objectscript-class-view
这是另一个给我带来灵感的伟大作品。类结构清晰,不仅支持项目中的类,也支持库中的类。但看起来像是VSCode大纲的增强版。
——其他语言的 VSCode 类图表视图插件
1. https://github.