文章
· 一月 29 阅读大约需 2 分钟
"隐藏的 HTTP 错误"(IIS 背后)

您发送了一个 HTTP 请求,但得到了一个 HTTP 错误,而且是一个您意想不到的 HTML 错误页面......这是怎么回事?

具体举例来说,也许您尝试读取 FHIR 资源(例如 /Patient/123),但得到的是 404 错误页面,尽管使用其他患者 ID 时,您得到的是资源有效载荷,因此 "页面 "肯定存在......为什么会得到 404 错误页面?

0 0
0 11
文章
· 一月 29 阅读大约需 2 分钟
临时文件与单例:自我清理

我曾多次遇到一种模式,即我需要使用临时文件/文件夹,并在稍后的某个时候将其清理掉。

在这种情况下,自然是遵循"Robust Error Handling and Cleanup in ObjectScript "中的模式,使用 try/catch/pseudo-finally 或注册对象来管理析构函数中的清理工作。%Stream.File*也有一个 "RemoveOnClose "属性,您可以对其进行设置,但要小心使用,因为您可能会不小心删除一个重要文件,而且这个标志会在调用%Save()时被重置,因此您需要在重置后将其设回 1。

不过,有一个棘手的情况——假设你需要临时文件在外部堆栈级别中继续存在。例如:

0 0
0 6

大家好,现在我想继续我们之前讨论过的话题

使用 Postman 测试 InterSystems FHIR 存储库的 OAuth2.0 - 第一部分


问题1:我的client_id和client_secret是从哪里来的?

简短回答:身份验证服务器(Authentication Server)。

如果没有身份验证服务器,可按以下方法设置一个

1 0
0 10

如果要从 x509 证书/密钥生成JWT,对%SYS.X509Credentials的任何操作(包括读取)都需要 %Admin_Secure 资源上的 U。之所以需要 %Admin_Secure,是因为 %SYS.X509Credentials 是持久的,这样做是为了防止所有用户访问私钥。

如果 %Admin_Secure 资源在运行时不可用,可以使用以下变通方法。

0 0
0 15
文章
· 一月 27 阅读大约需 9 分钟
InterSystems IRIS 数据平台架构

InterSystems IRIS 数据平台是所有 InterSystems 应用程序以及医疗保健、金融服务、供应链和其他生态系统中数以千计的客户和合作伙伴应用程序的基础。它是一个融合平台,提供交易分析数据管理、集成互操作性和数据集成,以及集成分析和人工智能。它支持 InterSystems Smart Data Fabric 方法,用于管理多样化的分布式数据。

0 0
0 20
文章
· 一月 26 阅读大约需 6 分钟
分表(Sub-Table)安全

InterSystems IRIS 提供广泛的可配置安全选项,但许多开发人员主要使用角色和资源来保护整个表或例程。今天,我们将深入探讨。我们也可以分别确保单个列和行的安全,但这两种机制的操作方式截然不同。让我们从列开始。

列安全

为便于测试和演示,我们将保持表结构简洁明了。我们在 USER 名称空间中有一个名为 "Person "的表,其中包含 ID 列、出生日期列 (DOB)、名和姓。

0 0
0 14
文章
· 一月 25 阅读大约需 4 分钟
使用 JDBC 将 Java 连接到 InterSystems IRIS

在上一篇文章中,我们谈到了 ODBC 和 C# 连接,现在让我们看看 JDBC 和 Java。InterSystems JDBC 驱动程序是集成 Java 应用程序的高性能推荐方式。

以下是使用 JDBC 驱动程序将 Java 应用程序连接到 IRIS 实例的分步指南。

第 1 步:获取并包含 InterSystems IRIS JDBC 驱动程序

JDBC 驱动程序与 ODBC 驱动程序不同,后者通常安装在整个系统中,而 JDBC 驱动程序通常以JAR 文件的形式发布,必须包含在 Java 项目的类路径中。

如果 InterSystems IRIS 安装在本地计算机或您可以访问的其他计算机上,您可以在 install-dir/dev/java/lib/ 或类似位置找到该文件,其中 install-dir 是实例的安装目录。反之,您也可以从驱动程序软件包页面下载 jar 文件。

或者按照 @Dmitry Maslennikov 在评论中的建议 ,使用 Maven 的maven 中央仓库

<dependency>
    <groupId>com.intersystems</groupId>
    <artifactId>intersystems-jdbc</artifactId>
    <version>3.10.5</version>
</dependency>

或 Gradle:

implementation("com.intersystems:intersystems-jdbc:3.10.5")

在项目中包含 jar 文件:

  • Maven/Gradle:如果使用构建工具,最简单的方法是将 InterSystems JDBC 驱动程序作为依赖项添加到 pom.xmlbuild.gradle 文件中。这会自动下载并管理 JAR。
  • 手册:对于简单的项目,必须将 JAR 文件放在项目目录(如 /lib)中,并在编译和运行时将其明确添加到 classpath 中。

0 0
0 15
文章
· 一月 24 阅读大约需 4 分钟
通过 ODBC 将 C# 连接到 InterSystems IRIS

对于构建外部应用程序的开发人员,尤其是使用C# 等熟悉技术的开发人员来说,ODBC(开放数据库连接)是连接任何关系数据库(包括 InterSystems IRIS)的重要标准化桥梁。虽然 InterSystems 提供了自己的本地 ADO.NET 提供商,但 ODBC 驱动程序通常是与通用数据库工具和框架集成的最直接途径。

以下是使用 ODBC 驱动程序将 C# 应用程序连接到 IRIS 实例的分步指南,重点是无 DSN 连接字符串。

第 1 步:安装 InterSystems IRIS ODBC 驱动程序

在 Windows 机器上安装 InterSystems IRIS 时,默认会安装 InterSystems ODBC 驱动程序。

  • 如果 IRIS 位于同一台计算机上:驱动程序已经存在。
  • 如果 IRIS 位于远程服务器上:如果您是客户机,则必须从 WRC 网站下载并安装适用于客户机操作系统(Windows、Linux 或 macOS)和位元(32 位或 64 位)的独立 ODBC 客户机驱动程序包,或者安装客户机组件并复制 ODBC 驱动程序。

安装完成后,可在 Windows 的ODBC 数据源管理员(ODBC Data Source Administrator)工具中验证其是否存在(查找 InterSystems IRIS ODBC35 驱动程序)。

0 0
0 20

大家好,社区成员们:

对于刚接触InterSystems IRIS的开发者而言,这有个好消息!我们现已在Instruqt平台上推出了实操互动教程!这些教程非常适合希望快速上手、在真实环境中演练,并建立对基于IRIS的开发信心的开发者。(译者注:国内需要🪜)

以下是可用教程列表:

0 0
0 19

概述

25.24.1 版对 DNS 功能、平台可靠性、升级工作流和开发人员体验进行了重大增强。该版本还包括关键修复和平台限制的增加,以更好地支持现代工作负载。


新功能和增强功能

类别

功能/改进

详细信息

0 0
0 72

概述

本版本对存储的可扩展性和性能进行了重大改进,对所有产品的操作系统进行了重大升级,并推出了新的 FHIR 服务器默认版本。这些更新共同增强了系统的可靠性、灵活性和安全性,同时确保了平台的长期可支持性。


新功能和增强功能

类别

功能/改进

详细信息

0 0
0 40

概述

25.20.2 版扩展了全球可用性,提高了高级安全灵活性,并扩大了网络连接集成。该版本引入了对更多地区的支持、新的应用程序感知安全规则,以及针对关键 InterSystems 服务的更多连接选项。


新功能和增强功能

类别

功能/改进

详细信息

0 0
0 40
文章
· 十二月 28, 2025 阅读大约需 5 分钟
减小IRIS社区版Docker镜像的占用空间

InterSystems Ideas 门户网站上得票最多的想法-——获得 74 票——要求提供一个轻量级版本的 IRIS。虽然该平台已发展成为一个强大的数据引擎,但许多项目只需要其 SQL 数据库功能。本文演示了如何构建一个非官方的、紧凑的 IRIS 社区版镜像,该镜像只关注核心数据库功能,将镜像大小缩小了 80% 以上。

⚠️ 免责声明

本项目生成的是 InterSystems IRIS Community Edition 的非官方实验镜像

  • 不受InterSystems支持或认可
  • 使用风险自负。这些修改删除了核心平台功能,可能会破坏与工具、API 和预期行为的兼容性。
  • 提供任何担保或保证,包括对生产使用的适用性。
  • 仅供高级用户用于教育和实验目的

为什么选择轻量级 IRIS?

虽然 IRIS 目前包含丰富的互操作性、分析、机器学习、系统管理等功能,但许多项目只需要其核心 SQL 功能。官方社区版 Docker 镜像约为

  • 磁盘使用量3.5-3.8 GB
  • 压缩后大小:~1.1 GB

IRIS Light 可将其减少到

  • 磁盘使用量~575-583 MB
  • 压缩后大小:~144-148 MB

因此适用于

  • 微服务或容器化 SQL 使用
  • 具有更快启动和拉动速度的 CI 管道
  • 无需完整功能的横向扩展

0 0
0 34
文章
· 十二月 27, 2025 阅读大约需 1 分钟
关于导出映射Global

InterSystems 常见问题

使用 %Library.Global 类的 Export() 方法导出时,如果导出格式(第四个参数:OutputFormat)设置为 7,即 "块格式(Block format)/Caché 块格式 (%GOF)",则无法导出映射的Global项(只能导出命名空间默认Global数据库中的Global项)。要导出 "块格式/Caché 块格式 (%GOF) "的映射Global项,请在 %Library.Global.Export() 的第一个参数中指定要映射Global项的数据库目录。

执行示例如下。

0 0
0 69
文章
· 十二月 25, 2025 阅读大约需 4 分钟
如何按时间间隔或计划运行进程?

当我开始使用 InterSystems IRIS,尤其是在互操作性方面时,我最初遇到的一个常见问题是:如何在间隔时间或计划内运行某项功能?在本专题中,我想分享两个简单的类来解决这个问题。我很惊讶在 EnsLib 的某个地方没有找到类似的类。也许是我搜索得不好?总之,这个主题并不意味着是复杂的工作,只是为初学者提供了几个片段。

0 0
0 60
文章
· 十二月 23, 2025 阅读大约需 5 分钟
在 InterSystems IRIS 中创建和集成 JWT

什么是 JWT?

JWT (JSON Web Token,JSON 网络令牌)是一种开放标准(RFC 7519),它提供了一种轻量级、紧凑、自足的方法,用于在双方之间安全地传输信息。它常用于网络应用程序中的身份验证、授权和信息交换。

JWT 通常由三部分组成:

1.JOSE(JSON Object Signing and Encryption,JSON 对象签名和加密)标头
2.有效载荷
3.签名

这些部分以 Base64Url 格式编码,并用点(.)分隔。

JWT 的结构

标题

0 0
0 79
InterSystems 官方
· 十二月 2, 2025
客户端 SDK 可从外部存储库获取

大家好!

我很高兴地宣布,自今年年初以来,我们已将 InterSystems IRIS、InterSystems IRIS for Health 和 Health Connect 的许多客户端 SDK 发布到相应的外部存储库(Maven、NuGet、npm 和 PyPI)中。这将为您带来许多好处,例如:

  • 您可以在客户端 SDK 发布后立即访问其最新版本,而不受 InterSystems IRIS 发布周期的影响。
  • 您可以将 SDK 作为依赖项与生态系统中的本地软件包管理器工具集成,并以行业标准的方式管理依赖项
  • 终端用户可直接访问 SDK,例如,当他们希望通过 DBeaver 等 SQL 工具直接访问数据库层时。
  • 您可以发布依赖于 InterSystems 客户端 SDK 的项目,而无需将其直接包含在您的项目中。

以下是我们目前已发布的客户端 SDK 的列表,以及最新版本的相应版本号和查找位置:

Java

0 0
0 46

我们非常高兴地宣布, IntegratedML Custom Models(集成式机器学习自定义模型)抢先体验计划即将开启,这是 IRIS 2026.1 版本中即将推出的一项强大新功能!

这是什么?

IntegratedML Custom Model扩展了现有的IntegratedML/AutoML(集成式机器学习/自动化机器学习)功能,支持您直接在 SQL 查询中部署自己的自定义 Python 机器学习模型。IntegratedML AutoML功能提供自动化机器学习服务,而Custom Model(自定义模型)则赋予您完全的控制权——自定义预处理、任意与 scikit-learn 兼容的模型,以及 Prophet 或 LightGBM 等第三方库——所有操作均在数据库内执行,无需数据移动。

0 0
0 59
文章
· 十一月 26, 2025 阅读大约需 4 分钟
控制好 IRISTEMP:阻止它侵占你的存储空间

您检查了服务器,发现IRISTEMP 增长过快。不必惊慌。让我们在存储空间耗尽之前调查一下这个问题

步骤 1:确认 IRISTEMP 增长问题

在假设 IRISTEMP 是问题所在之前,让我们先检查一下它的实际大小。

检查可用空间

IRIS 终端运行以下命令:

%SYS>do ^%FREECNT

出现提示时,输入

0 0
0 65

InterSystems IRIS® 数据平台、InterSystems IRIS® data platform, InterSystems IRIS® for HealthTMHealthShare® Health Connect 2025.3 版本现已全面发布 (GA)。

0 0
0 42
文章
· 十一月 23, 2025 阅读大约需 10 分钟
使用 InterSystems IRIS 互操作性进行数据流处理

现代数据架构利用实时数据捕获、转换、移动和加载解决方案来构建数据湖、分析仓库和大数据存储库。它能够分析来自不同来源的数据,而不会影响使用这些数据的操作。要实现这一目标,必须建立连续、可扩展、弹性和稳健的数据流。最常用的方法是 CDC(变更数据捕获)技术。CDC 监控小型数据集的生产,自动捕获这些数据,并将其传送到一个或多个接收方,包括分析数据存储库。这样做的主要好处是消除了分析中的 D+1 延迟,因为数据一产生就会在源端被检测到,随后被复制到目的地。

本文将展示 CDC 场景中最常见的两种数据源,既可以是源数据源,也可以是目的地数据源。对于数据源(origin),我们将探讨 SQL 数据库和 CSV 文件中的 CDC。对于数据目的地,我们将使用列式数据库(典型的高性能分析数据库场景)和 Kafka 主题(将数据流传输到云和/或多个实时数据消费者的标准方法)。

概述

本文将为以下互操作场景提供一个示例:

0 0
0 77
文章
· 十一月 20, 2025 阅读大约需 4 分钟
了解 SQL 窗口函数

InterSystems IRIS中的窗口函数(Window Functions)可让您直接在SQL中执行强大的分析操作,例如累计总和、排名和移动平均值等。
这些函数针对与当前行相关的一组行(即“窗口”)进行操作,且不会像 GROUP BY那样合并结果。
这意味着您可以编写更简洁、更快速且更易于维护的查询——无需循环、无需连接、无需临时表。
在本文中,我们将通过处理一些常见的数据分析任务来了解窗口函数的作用机制。


InterSystems IRIS中的SQL窗口函数入门

SQL窗口函数(SQL window functions)是数据分析的强大工具。
它们允许你在保留各行列可见性的同时,跨行计算聚合值和排名。
无论你是在构建仪表盘、报表还是进行复杂分析,窗口函数都能简化你的逻辑并提升性能。

注:我并非窗口函数领域的专家,但我愿意分享助我理解窗口函数的心得体会和相关资源。非常欢迎大家提出建议或进行指正!


🚀 为什么窗口函数这么重要

你是否曾为了计算累计总和、排名或行间差值,而编写过多条SQL查询语句,甚至使用过程化循环?

0 0
0 43