#InterSystems IRIS

0 关注者 · 945 帖子

InterSystems IRIS 是一个完整的数据平台
InterSystems IRIS 为您提供了捕获、共享、理解组织最宝贵的资产(数据)并采取相应行动所需的一切。
作为一个完整的平台,InterSystems IRIS 不需要集成多种开发技术。应用程序需要更少的代码、更少的系统资源和更少的维护。

新增
文章 Nicky Zhu · 11 hr 前 7m read

您熟悉 SQL 数据库,但不熟悉 IRIS 吗? 请继续阅读...

大约一年前,我加入了 InterSystems,IRIS 就这样进入了我的视线。 我使用数据库已经有 40 多年了,其中大部分时间都是为数据库供应商工作,我以为 IRIS 与我所知道的其他数据库大致相同。 然而,我惊讶地发现,IRIS 在很多方面都与其他数据库截然不同,而且往往要好得多。 这是我在 Dev Community 上发表的第一篇文章,我将为已经熟悉 Oracle、SQL Server、Snowflake、PostgeSQL 等其他数据库的人提供 IRIS 的高级概述。 希望我的介绍能让您更清楚、更简单,并节省您的入门时间。

首先,IRIS 支持 ANSI 标准 SQL 命令和语法。它有表格、列、数据类型、存储过程、函数......所有关系型的东西。 你还可以使用 ODBC、JDBC 和 DBeaver 或任何你喜欢的数据库浏览器。 因此,是的,您在其他数据库中知道和做的大多数事情都可以在 IRIS 上正常运行。 耶!

但我提到的那些不同之处又是怎么回事呢? 好了,系好安全带:

多模型(Multi-Model)IRIS 是一个关系数据库,但同时也是一个面向对象的数据库,还是文档存储,支持向量和立方体/MDX,以及.你知道我要说什么。

0
0 4
新增
InterSystems 官方 Claire Zheng · 三月 29

InterSystems IRIS® 数据平台、InterSystems IRIS® for HealthTMHealthShare® Health Connect 2026.1版本现已全面上市 (GA)。这是一个扩展维护 (EM) 版本。

版本亮点:

  • 数据库可扩展性增强取消了历史数据库大小限制,实现了无缝增长,超过了以前的大小限制,无需进行数据转换。其他底层性能改进进一步优化了大规模操作。
  • 表分区:根据用户定义的逻辑键拆分表和相关索引数据,以便在数据库间轻松映射。这可以实现存储分层,提高查询性能和超大表的运行效率。该功能是一项实验性功能,可通过 "早期访问计划"订阅更新并转达您的反馈意见。
  • 互操作性用户体验改进:此更新具有新的 BPL 编辑器、对生产配置的额外改进以及 DTL 编辑器,其中包括人工智能辅助 DTL 解释。要了解更多信息,请访问InterSystems 学习中心。对于现有客户,这些功能仍可选择使用。在集成方面,该版本引入了 Mirth 迁移工具,以加速传统集成引擎的替换和现代化。
  • FHIR 服务器授权、批量数据和管理更新: 大幅扩展 FHIR 功能,包括细粒度 OAuth 范围执行和结果过滤,从而实现更精确的数据访问控制。增强批量 FHIR(JWT 授权、从 EHR 计划导出)和更快的服务器/软件包管理。
0
0 14
新增
InterSystems 官方 Claire Zheng · 三月 29

InterSystems IRIS®数据平台的2023.1.7维护版本 InterSystems IRIS® for **** for HealthTM和HealthShare®Health Connect的 2023.1.7 维护版本现已全面上市 (GA)。

请通过Ideas Portal使用 "发布后反馈"类别分享您的反馈意见,以便我们共同打造更好的产品。

文档

您可以在这些页面上找到详细的变更列表和升级清单:

早期使用计划 (EAP)

现在有许多 EAP 可用。请查看此页面并注册您感兴趣的项目。

如何获取软件?

InterSystems IRIS 和 InterSystems IRIS for Health 的完整安装包可从 WRC 的InterSystems IRIS 数据平台完整工具包页面获取。HealthShare Health Connect工具包可从 WRC 的HealthShare 完整工具包页面获取。容器映像可从InterSystems 容器注册中心获取。

可用性和软件包信息

此版本附带适用于所有支持平台的经典安装包,以及 Docker 容器格式的容器映像。 有关完整列表,请参阅支持的平台文档。这些维护版本的版本号是2023.

0
0 5
新增
文章 Nicky Zhu · 三月 26 3m read

已包含在 SystemPerformance 中

SystemPerformance 已内置 NFS 磁盘命令(包括 nfsiostat),但默认处于禁用状态。通过以下命令启用:

$$Enablenfs^SystemPerformance()

启用后,系统将添加以下 NFS 命令(以 Linux 为例):

  • /usr/sbin/nfsstat -cn
  • /usr/sbin/nfsiostat [间隔] [次数]

请确保这些命令已安装且可通过操作系统运行

如需重新禁用,可执行:

$$Disablenfs^SystemPerformance()

向 SystemPerformance 添加通用命令

添加任意操作系统工具时,会在 ^IRIS.SystemPerformance("cmds","user")下创建一个"用户"命令。

示例

%SYS>set ^IRIS.SystemPerformance("cmds","user",$i(^IRIS.SystemPerformance("cmds","user")))=$lb("nfsiostat","/usr/sbin/nfsiostat ","间隔"," ","次数"," > ")

操作建议

添加前建议先查看现有命令结构,选择合适的配置文件名称:

zwrite ^IRIS.
0
0 7
新增
文章 Jeff Liu · 三月 25 6m read

我以前可能提到过这一点:我认为可视化跟踪(Visual Traces),即包含每个步骤完整内容的序列图,是 IRIS 数据平台的一项神奇功能!以可视化跟踪的方式提供有关 API 内部工作原理的详细信息,对 IRIS 平台上的项目非常有用。当然,这适用于我们没有开发高负荷解决方案的情况,在这种情况下,我们根本没有时间保存/读取信息。对于所有其他情况,欢迎阅读本教程!

0
0 18
新增
文章 Kelly Huang · 三月 23 6m read

供应链是指由公司业务领域及其供应商和合作伙伴(利益相关者)执行的一系列流程和活动,从原材料采购、生产到交付给最终消费者。利用 InterSystems IRIS 的协调功能,供应链管理解决方案可以更好地管理供应链:

0
0 9
新增
文章 Claire Zheng · 三月 23 4m read

大家好。好久不见。我想再次与大家分享我最近学习的内容 通过 JDBC 使用 SQL 创建外来表。

因为我同时也在学习 IRIS BI,所以我从这个 Sample-BI docker 环境开始。

https://github.com/intersystems/Samples-BI

启动环境后,以超级用户身份登录管理门户http://localhost:52773/csp/sys/UtilHome.csp。

将命名空间切换为IRISAPP

 

我们会发现所有样本数据都存储在IRISAPP 命名空间中。让我们找一张简单的表来测试外来表功能 🤣

System Explorer > SQL

 

让我们通过在 "执行查询(Execute Query tab) "选项卡中执行以下 SQL 查询来试试表HoleFoods.Outlet

SELECT
ID, City, Country, Latitude, Longitude, Population, Type
FROM HoleFoods.Outlet

 

太棒了!😉 表中有 35 个条目。

0
0 12
新增
文章 Nicky Zhu · 三月 20 10m read

陷入困境

直到今年年初,我几乎没怎么做过编程工作——我已经厌倦了它。

在担任多年一线软件工程师和数据科学家后,我在2015年左右陷入了职业倦怠。我转而从事以“外部创新”为主的业务拓展角色,并于2019年加入InterSystems担任产品经理。我怀念编程的创造性,但并不怀念其中的枯燥乏味。无休止的样板代码编写、调试和上下文切换让我创意枯竭。就像电影《好好先生》(Yes Man)中金·凯瑞饰演的角色一样,我发现自己对新项目总是说“不”——以至于我换了职业!

然后,AI编程助手出现了。而我,成了对机器人说“好”的“好好先生”。

第一幕:狂热(“对一切都说好!”)

当我刚开始使用AI编程助手(先是Windsurf,然后是Cline,接着是Roo Code,现在是Claude Code,还尝试过opencode)时,感觉就像变魔术一样。自然语言 → 可运行的代码。我对每个建议、每个重构、几乎每个疯狂的想法都说“好”。

我第一个主要的AI辅助项目是几个月前启动的一个内部项目——为IRIS开发的一系列Python脚本和管道。我兴奋不已,让机器人尽情发挥: “添加这个功能!”——好!“重构那个模块!”——好!“让它可配置!”——好!“添加更多集成!”——好!

创意的能量回来了。代码如泉涌。我又感到自己高效了起来。

然后,我的实习生——一名软件工程专业的学生——查看了代码库。

他并不满意。

0
0 38
新增
文章 Lilian Huang · 三月 18 5m read

目录

  1. 导言
  2. 版本控制
  3. 导出类
  4. 导出 BI 分析类
  5. 导出globals

简介。

本文将介绍如何通过 InterSystems 开发人员社区快速入门 Git 开发,以及使用 IRIS InterSystems 时的版本控制实践。我们将介绍需要导出互操作性类、global和分析元素(如立方体和仪表盘)的情况。这些场景包括 IRIS 的关键版本控制实践。

要开始学习,您需要

  1. 注册并登录GitHub
  2. 成为 Git 上intersystems-community组织的成员

开始使用 IRIS InterSystems 非常简单!

0
0 78
新增
InterSystems 官方 Claire Zheng · 三月 18

摘要

       
警报编号 受影响的产品和版本 风险类别和评分 明确要求
DP-448888 产品:    
  • InterSystems IRIS® 数据平台
  • InterSystems IRIS® for Health
  • InterSystems Health Connect™版本
  • 2024.3.0
  • 2025.1.0 - 2025.1.3
  • 2025.2.0
  • 2025.3.0 | 运行:高风险 | 使用了 ≥ 2 TB 的数据库缓存 |

问题

在上述版本中,如果数据库缓存大于或等于 2,097,152 MB(2 TB),实例可能无法启动或在运行过程中挂起。请注意,未配置实例的初始数据库缓存分配是系统物理内存的 25%;因此,如果物理内存≥ 8 TB,则未配置实例可能存在风险。更多信息,请参阅为数据库和常规缓存分配内存以及数据库缓存 (globals) 配置参数

如果使用高级配置选项分配多个块大小的缓冲区,则必须以global缓冲区为单位计算限制。只要所有大小的缓冲区总和少于 268,435,456 个,就不会有风险。

此问题影响以下产品的 2024.3、2025.1.0 - 2025.1.3、2025.2.0 和 2025.3.

0
0 11
文章 Jeff Liu · 三月 17 1m read

InterSystems 常见问题

如果您尝试从顶级节点删除在子脚本级别映射的全局变量,您将收到一个<SLMSPAN>错误,并且它不会被删除。这是因为用于子脚本级别映射全局变量的kill命令不能跨映射使用。

// Suppose subscript-mapped globals exist in different databases, as shown below:
^TEST(A*~K*) -> database A
^TEST(L*~Z*) -> database B

// Trying to kill from the top level will result in a <SLMSPAN> error.
NAMESPACE>Kill ^TEST
<SLMSPAN> <- This error is output.

要只删除当前命名空间(数据库)中的全局,请使用以下命令:

NAMESPACE>Kill ^["^^."]TEST

在子脚本级别映射的全局变量必须移动到数据库并直接删除。

要切换到数据库,请使用以下命令:

zn "^^c:\intersystems\iris\mgr\user"
or
set $namespace="^^c:\intersystems\iris\mgr\user"

使用 $System.OBJ.

0
0 6
文章 Kelly Huang · 三月 17 10m read

在上一篇文章中,我们介绍了IrisOASTestGen——一个基于OpenAPI 2.0规范为InterSystems IRIS生成REST API测试代码的工具。该文章展示了如何使用OpenAPI Generator附带的默认模板来搭建测试用例。本文将聚焦于接下来的自然步骤**:自定义生成的测试代码**。通过使用Mustache模板扩展代码生成逻辑,我们可以表达更丰富的语义、实现CRUD感知测试,并创建更有意义的测试套件。本文的示例将修改IrisOASTestGen,为createPerson操作生成测试,包括遍历所有预期响应。这将展示如何使用OpenAPI规范中的自定义字段来驱动Mustache模板内的条件渲染。


OpenAPI扩展以支持CRUD操作

为了使代码生成支持CRUD操作,OpenAPI规范可以在vendorExtensions中包含自定义字段。这些自定义字段作为标志,Mustache模板可以检测到它们。

0
0 5
公告 Claire Zheng · 三月 15

InterSystems 定期更新我们的软件发布政策和实践,以适应客户的需求。

为了让客户和合作伙伴更容易预测,我们现在改变了维护版本的发布节奏,并对其他几个方面进行了调整。

本文总结了我们数据平台产品的发布周期和最近的变化,并宣布了一些新的更新。

为什么要改变?

  • 我们的客户更快地接受了我们的新版本。
  • 我们的客户更快地采用新的平台版本(操作系统和协调器)。
  • 安全问题更频繁地出现,尤其是在第三方库中。
  • 我们的客户要求更可预测的交付日期。

有什么相同之处?功能发布节奏提醒

自 2018 年以来,InterSystems 一直在使用 InterSystems IRIS 的双流功能发布节奏(请参阅原始公告)。我们提供

  • 持续交付(Continuous delivery, CD)版本——这些版本可快速访问新功能,非常适合开发和部署持续更新的应用程序,并可立即利用新功能。有时也称为 "快车"。
  • 扩展维护(Extended maintenance, EM)版本——这些版本的发布频率低于持续交付版本,但具有维护版本所具有的更高稳定性。它们是大型企业应用程序的理想选择,在这些应用程序中,在维护版本中轻松获得修复比尽早获得新功能更重要。有时也称为“慢车

EM 发行版的版本号为 YYYY.1(例如 2022.1 或 2023.1),因此很容易识别。 CD 发行版的版本号为 YYYY.2、YYYY.3 等。

0
0 14
文章 Kelly Huang · 三月 13 4m read

大家好! 👋
欢迎来到IRIS IO 工具系列的第二部分。这个扩展是我提交给InterSystems 2025 年 "将想法变为现实 "竞赛的作品,它为您提供了一个直观而强大的界面,可直接在 VS 代码中导入和导出数据

如果你觉得这个扩展有用,请考虑在竞赛中为我投票!


在上一篇文章中,我们介绍了

  • 扩展概述
  • ODBC 驱动程序配置
  • 导出功能

现在是时候深入了解导入引擎(Import Engin)了_它旨在支持

  • CSV
  • TXT(任意分隔符)
  • JSON
  • XLSX

该扩展具有智能推理层,可分析输入文件并自动建议最佳的 IRIS 表格数据格式,提供有指导的辅助数据建模。


导入模式--两种不同的工作流程

该扩展支持两种不同的方案

  • 创建新表
  • 加载到现有表格

选项 A - 导入新表

在以下情况下,这是理想的选择

  • 加载新数据集
  • 您希望从头开始,使用全新的表和模式
  • 处于原型设计或探索阶段

会发生什么?

0
0 11
文章 Nicky Zhu · 三月 12 2m read

数据库表中索引的力量

在使用数据库时,大多数开发人员都了解索引的概念以及使用索引的原因:加快数据检索速度。但是,索引的真正影响往往只有在比较有索引和没有索引的情况时才会显现出来。

你知道没有索引会发生什么吗?
试想一个有三列的表:姓名、年龄和手机号码。


现在,考虑一下这个查询:

如果年龄列没有索引,数据库引擎会

  • 检查 WHERE 条件字段是否有索引。
  • 如果没有,它将扫描整个表(全表扫描)。
  • 对于每一行,它会检查年龄值并返回匹配结果。

这意味着引擎会遍历整个数据结构,这对于大型表来说非常耗时。

索引会发生什么情况?
现在,如果年龄列有索引,流程就会发生巨大变化:

  • 引擎会直接进入索引结构。
  • 它会找到 Age = 26 的节点。
  • 索引指向主表中相应的记录 ID。
  • 结果几乎是瞬间获取的。

这就是为什么索引是如此强大的优化工具。

现实生活中的一课
最近,我们遇到了一个有趣的情况,凸显了索引的重要性。
我们的表有 5 条记录,而年龄列是有索引的。然后,我们错误地从索引结构(而不是主表)中删除了两个条目。这两个条目对应的是 ID X001 和 X005,它们的年龄都是 26 岁。


当我们运行
SELECT ID, Age, EmpId, Mobile, NameFROM Company.Employee WHERE Age = 26
我们预计会有 3 条记录(因为主表中仍有这些记录),但只出现了 2 条记录。

为什么呢?

0
0 18
文章 Nicky Zhu · 三月 10 1m read

InterSystems 常见问题

使用 TCP 适配器的业务主机保持连接和池大小的默认设置如下:

StayConnected = -1(不超时)
PoolSize = 1

如果网络问题导致与业务主机的连接丢失,生产端将无法检测到这一情况,也不会接受新的连接。 在这种情况下,事件日志中不会记录任何事件。 如果将 StayConnected 设置为默认值(-1),连接将不会超时,您需要重启业务主机后才能接受新的连接。 我们建议将 StayConnected 设置为大于或等于 0 的值,以避免出现这种情况。

例如,如果将其设置为 300(秒),TCP 业务主机在 300 秒或更长时间内没有收到任何新信息,就会自动断开连接并重新连接。

对于繁忙的系统,通常会将 StayConnected(保持连接)值设为一个较小的值,如 5 秒。

0
0 26
文章 Jeff Liu · 三月 10 4m read

本文将讨论 Microsoft Visual Studio Code IDE中包含的所有调试工具

内容包括

  • 断点
  • 观察窗口
  • 调用堆栈

让我们从了解调试要求开始!

前提条件

有两个插件(扩展)可用于调试 ObjectScript:

第一个是 InterSystems ObjectScript 扩展包的一部分 。第二个是 Serenji,它是一个独立的插件,提供编辑器、文件管理器和调试功能。这两个插件都可以从插件商店安装。要激活关键功能,Serenji 需要许可证。在本文中,我们将使用 InterSystems ObjectScript 扩展包来降低学习难度。在掌握基础知识后,您可以考虑购买 Serenji 的付费许可证。

0
1 12
InterSystems 官方 Claire Zheng · 三月 10

IPM 0.10.6 版于 2026 年 2 月 24 日发布。该版本主要是错误修复,但在软件包中添加了-export-python-deps标志,并发布了将 Python 依赖关系与 IPM 模块本身包含在一起的命令。像往常一样,你可以在GitHub 页面或社区注册中心查看。

以下是完整的更新日志:

已添加

  • #1024:为发布命令添加了 -export-python-deps 标志

修复

  • #996:确保 COS 命令在专用、隔离的上下文中执行
  • #1002:列出已配置的软件源时,只有在定义了令牌时才显示 TokenAuthMethod。
  • #1024:在 -export-python-deps 下,带有 PythonWheels 的模块已正确打包。
  • #1061:修复从 OCI/ORAS 注册表安装时的问题
  • #1065:修正了 IPM 0.10.3 中引入的回归,该回归删除了对以目录作为名称的资源(例如 /inc )的支持
  • #1072:修复了测试或验证阶段未加载作用域依赖关系的问题。

如果您有任何问题、建议或需要关注的 bug,请随时在这里或GitHub 页面上提出。(在 GitHub 上,问题和建议应放在讨论页面,而错误应放在问题页面)。

0
0 28
文章 Lilian Huang · 三月 8 2m read

在现代医疗保健领域,寻找临床上相似的患者往往感觉像大海捞针。传统的关键字搜索往往会失败,因为医学语言具有高度的细微差别;搜索 "心力衰竭 "可能会漏掉包含 "充血性心力衰竭 "的记录。

我很高兴与大家分享 iris-medmatch,这是一个基于InterSystems IRIS for Health的人工智能患者匹配引擎。通过利用矢量搜索(vector search),该工具能够理解临床意图,而不仅仅是匹配字面字符串。
## 核心创新:语义临床搜索

iris-medmatch "在原始FHIR数据和可操作的人工智能洞察力之间架起了一座桥梁。该引擎利用 "all-MiniLM-L6-v2 "模型,将临床条件转化为数学向量。

标准搜索查找的是准确的单词,而该引擎能理解**临床上下文**。例如,它可以使用数学向量相似性将 "高血压 "患者与 "高血压 "搜索匹配起来。

✨ 主要技术特点

  • 核心:InterSystems IRIS、嵌入式 Python、InterSystems FHIR 服务器、矢量搜索
  • 人工智能:Python、ONNX 运行时、HuggingFace 变换器
  • 前端Angular 18+

技术架构

该解决方案的优势在于其架构效率。通过嵌入式 Python 运行 Transformers,我们消除了 "数据重力 "问题。数据留在 IRIS 中,人工智能处理在数据所在的地方进行。

🚀应用演练

1.

0
0 104
文章 Nicky Zhu · 三月 5 2m read

Embeddedpy-bridge:嵌入式 Python 工具包

概述

嵌入式 Python改变了 InterSystems IRIS 的游戏规则,可直接在数据库中访问庞大的 Python 生态系统。但是,在 ObjectScript 和 Python 之间架起桥梁有时会让人感觉像是在两个不同的世界之间转换。

为了实现这种无缝过渡,请使用embeddedpy-bridge

该软件包是一个以开发人员为中心的实用工具包,旨在为嵌入式 Python 提供高级 ObjectScript 封装、熟悉的语法和强大的错误处理功能。它允许开发人员使用他们已经熟悉的本地 IRIS 模式与 Python 数据结构交互。

挑战

虽然 %SYS.Python 库功能强大,但开发人员经常面临一些障碍:

  1. 处理代理:使用原始代理浏览 Python 列表和字典对于 ObjectScript 来说并不 "原生"。
  2. 迭代:标准 ObjectScript While 循环无法与 Python 迭代器进行本地 "对话"。
  3. 命名空间管理:确保 Python 实用程序在整个系统中可用。

解决方案:embeddedpy-bridge

我的目标是创建一个 "桥梁",让 Python 感觉像是 ObjectScript 中的一等公民。

主要功能

  • py 前缀约定%ZPython.
0
0 94
文章 Jeff Liu · 三月 5 3m read

你好

数据迁移通常听起来像是一个简单的 "将数据从 A 转移到 B 的任务",直到你真正去做。实际上,这是一个融合了规划、验证、测试和技术精度的复杂过程。

我曾在多个项目中负责将数据迁移到在 IRIS(TrakCare)上运行的 HIS 中,在这些项目中,我认识到成功来自于纪律和自动化的结合。

以下是我想强调的几个要点。

1.从定义好的数据格式开始。

在打开第一个文件之前,确保每个人,尤其是数据提供者,都清楚地了解您所期望的确切数据格式。尽早定义模板可以避免不必要的来回奔波和返工。

虽然 Excel 或 CSV 格式很常见,但我个人认为使用制表符分隔的文本文件(.txt)上传数据是最好的。它既轻便又一致,还能避免文本字段内的逗号问题。

PatID   DOB Gender  AdmDate
10001   2000-01-02  M   2025-10-01
10002   1998-01-05  F   2025-10-05
10005   1980-08-23  M   2025-10-15

确保文件中提供的日期格式正确且在整个文件中保持不变,因为所有这些文件通常都是从 Excel 文件转换而来,而 Basic excel 用户可能会在提供错误的日期格式时犯错。错误的日期格式在转换为 horolog 时会让您恼火。

0
1 11
文章 Kelly Huang · 三月 4 1m read

在最近的竞赛中,看到更多的人在创建 VS Code 扩展程序,这令人鼓舞。不过我注意到,在三个需要使用凭据进行连接的扩展中,只有我的gj :: dataLoader 利用了历史悠久、官方支持的InterSystems Server Manager扩展来获取连接定义并安全地处理凭据。

0
0 18
文章 Nicky Zhu · 二月 13 8m read

我有一个新项目,要将 REST 响应中的信息存储到 IRIS 数据库中。我需要同步来自至少二十几个不同 REST 端点的信息,这意味着需要创建将近这么多的 ObjectScript 类来存储来自这些端点的结果。

我能否使用 ChatGPT 来创建这些类?答案是 "可以",这非常好,因为这是我第一次尝试使用生成式人工智能来做一些有用的事情。生成长颈鹿喝汤的图片有点老....。

我是这么做的:

  • 使用 "curl "查询端点,获取一些 JSON REST 调用输出示例。
  • 访问 ChatGPT(InterSystems 为员工提供全公司范围的许可证)
  • 与 ChatGPT 进行以下对话。

我在 "Message ChatGPT "提示符中输入了以下请求:

我:Generate an ObjectScript class that will hold data from the following JSON(生成一个 ObjectScript 类,用于保存以下 JSON 中的数据):

在输入 JSON 之前,我点击了 "Return",因此 ChatGPT 给我的提示如下:

ChatGPT:

0
0 67
文章 Jeff Liu · 二月 11 1m read

InterSystems IRIS的嵌入式向量搜索功能使我们能够搜索非结构化和半结构化数据。数据被转换为向量(也称为 "嵌入"),然后存储在 InterSystems IRIS 中并编制索引,用于语义搜索、检索增强生成(RAG)、文本分析、推荐引擎和其他用例。

这是一个将 IRIS 用作向量数据库和在 IRIS 上进行相似性搜索的简单演示。

先决条件:

  1. Python
  2. InterSystems IRIS for Health - 因为它将用作向量数据库

存储库: https://github.com/piyushisc/vectorsearchusingiris

操作步骤

  1. clone软件仓库。
  2. 打开 VS Code,连接到所需的 IRIS 实例和命名空间并编译类。
  3. 打开 IRIS 终端,调用 do ##class(vectors.vectorstore).InsertEmbeddings() 命令,从文件 text.txt 中读取文本,生成嵌入并将其存储在 IRIS 中。
  4. 调用 do ##class(vectors.vectorstore).VectorSearch("search_terms") 命令,输入所需的单词以执行相似性搜索。IRIS 将返回最匹配的前三个词:alt text
0
0 42
文章 Nicky Zhu · 二月 11 3m read

InterSystems IRIS 的架构将数据的逻辑组织(命名空间)与其物理存储位置(数据库)分开。理解这种分离以及命名空间和数据库之间的区别对于有效的数据管理、安全性,尤其是高性能数据共享至关重要。

在本文中,我将讨论这些基础组件,并提供利用全局映射跨不同逻辑环境共享本地数据结构(全局)的实用指南。

数据库:物理现实

数据库代表了数据存储在磁盘上的物理现实。首先,它是文件系统中名为 IRIS.dat 的文件(例如,<安装文件夹>\mgr\user\IRIS.DAT )。该文件的最大容量为 32TB。它是所有实际数据和代码的容器。数据库由 IRIS 内核管理,它在物理文件级别处理缓存、日志和事务日志。

安装 InterSystems IRIS DBMS 时,会自动安装以下数据库:

0
0 32
文章 Lilian Huang · 二月 10 6m read

有时,根据预先定义的资源 "列表(List)"限制 FHIR 搜索会更方便、更高效、更安全。

自 2025.1 版起,我们的 FHIR 服务器支持多个与列表相关的功能

我将在此重点介绍这些功能,并提供一些示例。

0
0 54
InterSystems 官方 Claire Zheng · 二月 6

 InterSystems IRIS® data platform, InterSystems IRIS® for Health, and HealthShare® Health Connect 2026.1的第三个开发者预览版已发布到 WRC 开发人员预览版网站容器镜像可在我们的容器注册表中找到,其标签为latest-preview

这些开发者预览版包括从 2026.1.0 开始不再支持 Mac Intel,以及为 2026.1.0 重新添加对 Windows Server 2019 的支持。

初始文档可在以下链接中找到:

这些文档链接目前只是占位符,随着最终版本的推出和更多细节的分享,这些链接将不断更新。以下是 2026.1 文档的一些显著新增内容:

由于这是早期的开发者预览版,一些内容仍在开发中,我们将在功能最终完成后提供完整的文档。我们感谢您在此阶段的耐心等待和反馈!

可用性和软件包信息

该版本为所有支持的平台提供了经典安装包,如需完整列表,请参阅 "支持的平台 "文档

0
0 76
文章 Jeff Liu · 二月 3 2m read

在使用InterSystems 互操作性(Iris/Health Connect/Ensemble时,配置数据通常分散在许多生产项目中:服务、流程、操作、适配器及其设置。

常见的操作或安全需求是回答以下问题:

  • 哪些接口引用了文件系统路径?
  • 目录、网络共享或绝对路径配置在哪里?
  • 我能否在所有产品中快速审核或记录这些信息?

下面的 ObjectScript 工具正是通过将选定的配置设置导出到 CSV 文件来解决这个问题的。

该脚本

  1. 循环浏览所有现有命名空间
  2. 查询所有命名空间中的所有互操作性配置项(Ens_Config.Item)
  3. 遍历每个项目的设置
  4. 提取文件系统/URL 路径(包含 :/\ 的值)
  5. 将结果写入CSV 文件,按类别分组
  6. 生成便于审计的输出,可在 Excel 中打开或与操作/安全团队共享

典型用例

当您需要时,应使用此实用程序:

  • 🔍审计整个产品的文件系统使用情况
  • 🛡审查安全风险(本地路径、网络共享、数据库连接)
  • 📄记录迁移、升级或灾难恢复规划的配置
  • 🔄比较环境(开发环境vs测试环境vs 生产环境)
  • 🧹清理遗留或未使用的路径

这对使用许多接口和适配器的多个产品的大型实例尤其有用。

0
0 43