搜索​​​​

清除过滤器
文章
Jingwei Wang · 七月 21, 2022

InterSystems SQL 的使用 - 第六部分 - SQL 数据的导入、导出

InterSystems IRIS数据平台管理门户中,有一些工具用于导入和导出数据。这些工具使用动态SQL,这意味着查询是在运行时准备和执行的。可以导入或导出的行的最大尺寸是3,641,144个字符。 你也可以使用%SQL.Import.Mgr类或LOAD DATA SQL命令导入数据,并使用%SQL.Export.Mgr类导出数据。 从文本文件中导入数据(.csv 和.txt) 你可以从一个文本文件中导入数据到一个合适的InterSystems IRIS类。当你这样做时,系统会在该类的表中创建并保存新的行。该类必须已经存在并且必须被编译。 步骤如下: 从管理门户中 选择系统资源管理器,然后选择SQL。用页面顶部的切换选项选择一个命名空间;这会显示可用的命名空间的列表。 在页面顶部,点击向导下拉列表,并选择数据导入。 在向导的第一页,首先指定外部文件的位置。对于导入文件所在的位置,点击要使用的服务器的名称。 然后输入文件的完整路径和文件名,文件可以是.csv 和 .txt格式。 然后选择你想要导入到schema的名称。 选择表名。 然后点击下一步。 在向导的第二页,选择需要导入数据的列。 然后点击下一步。 在向导的第三页,描述外部文件的格式。 在 "您的列所使用的分隔符? "中,点击与导入文件中的分隔符相对应的选项。 如果文件的第一行不包含数据,请点‘第一行是否包含列标题?’复选框。 对于字符串引号,点击表示该文件用于开始和结束字符串数据的引号定界符的选项。 对于日期格式,单击表示此文件中的日期格式的选项。 对于时间格式,点击表示此文件中的时间格式的选项。 对于时间戳格式,点击表示此文件中的时间戳格式的选项。 如果你不希望向导在导入时验证数据,请点击禁用验证复选框。 如果您不希望向导在导入时重建索引,请点击 ‘推迟 %SortBegin/%SortEnd 的索引构建?’ 复选框。如果勾选了 "延迟建立索引",向导会在将导入的数据插入到表中之前调用类的%SortBegin方法。当导入完成后,向导会调用%SortEnd方法。没有进行验证(与带有%NOCHECK的INSERT相同)。这是因为当使用%SortBegin/%SortEnd时,在SQL插入过程中不能检查索引的唯一性。 可以选择点击预览数据,看看向导将如何解析这个文件中的数据。 点击 "下一步"。 审查你的条目并点击完成。该向导显示数据导入结果对话框。 点击关闭。或者点击给定的链接,查看背景任务页面。在这两种情况下,向导会启动一个后台任务来完成导入工作。 导出数据到文本文件 你可以将一个给定类的数据导出到一个文本文件。 步骤如下: 从管理门户中 选择系统资源管理器,然后选择SQL。用页面顶部的切换选项选择一个命名空间;这将显示可用的命名空间的列表。 在页面的顶部,点击向导下拉列表,选择数据导出。 在向导的第一页。 输入你要创建的文件的完整路径和文件名,以保存导出的数据。 从下拉列表中,选择你要导出数据的命名空间、模式名称和表名称。 可以选择从字符集下拉列表中选择一个字符集;默认是设备默认值。 然后点击下一步。 在向导的第二页,选择要导出的列。然后点击下一步。 在向导的第三页,描述外部文件的格式。 在 "用什么分隔符分隔你的列?"中,单击与该文件中的分隔符相对应的选项。 如果你想把列头作为文件的第一行导出,请点击 ‘是否导出列标题?’ 复选框。 对于字符串引号,点击一个选项来表示如何在这个文件中开始和结束字符串数据。 对于日期格式,点击一个选项来表示在这个文件中使用的日期格式。 对于时间格式,点击一个选项来指示在此文件中使用的时间格式。 可以选择点击预览数据,看看结果会是什么样子。 然后点击下一步。 审查你的条目并点击完成。向导会显示 "数据导出结果 "对话框。 点击关闭。或者点击给定的链接,查看背景任务页面,向导会启动一个后台任务来完成导出工作。
文章
Johnny Wang · 十二月 12, 2021

Ensemble 和 Caché 应该迁移至 InterSystems IRIS 的五个原因

您可能已经听说,我们目前正在为所有正在使用 Caché 和 Ensemble 的客户提供限时免费迁移到我们的下一代数据平台 InterSystems IRIS 的机会。 虽然我们依旧如往常一样全力支持那些正在使用 Caché 数据库和 Ensemble 集成引擎的客户,但我们还是认为 InterSystems IRIS 是未来的关键。它结合了 Caché 和 Ensemble 的所有功能,并添加了大量令人兴奋的强大功能,从机器学习到原生 Python。 这也正是我们为现有客户提供迁移到 InterSystems IRIS 并使用这些新功能的原因。 我们也通过就地迁移支持轻松迁移,这意味着无需数据库转换、分步迁移指南、教程等。 听起来挺有趣对吗? 以下是我针对当前 Caché 和 Ensemble 应迁移到 InterSystems IRIS 的五个主要原因。 1. 根据您的需求量身定制的工具: InterSystems IRIS 本身有标准工具,例如根据 InterSystems IRIS 开发人员量身定制的 Visual Studio Code 编辑器。InterSystems IRIS 允许您在容器中运行应用程序,在 Kubernetes 中工作,并在您选择的云中轻松部署,这对于初学者有非常大的帮助。 2. 面向 SQL 开发人员的机器学习: 我们在 InterSystems IRIS 中嵌入了 IntegratedML 功能,使 SQL 开发人员无需成为数据科学或机器学习工具方面的专家,只需要几个类似 SQL 的命令即可轻松开发机器学习模型。 最重要的是,这些功能使您能够将机器学习模型无缝嵌入到 InterSystems IRIS 应用程序中,从而将它们转换为支持机器学习的智能应用程序。 3. 使用嵌入式 Python 提高生产力: 由于我们实现了 Python 的内置服务器端支持,我们的下一代技术使应用程序开发人员的工作效率更高。所有强大的功能都可以使用 Python 或 ObjectScript 调用,并且您的 Python 代码可以与 ObjectScript 代码无缝交互。 此外,我们为大量开发语言提供广泛的客户端支持,包括 Python、Java、C# 和 Node.js 等等。 4. 为 InterSystems IRIS 准备您的应用程序: 我们已经记录了 Caché 和 Ensemble 以及 InterSystems IRIS 之间的差异。在某些情况下,您可能需要对现有应用程序进行一些调整以满足与 InterSystems IRIS 相关的要求。 或者,您也可以采用与 Caché、Ensemble 和 InterSystems IRIS 兼容的通用代码库。这种方法的好处是您可以立即开始,确保您只有一个代码库需要维护,并在执行迁移时消除任何额外的调整。 这是我们许多大型企业客户经常采用的方法。 5. 易于迁移: 将您现有的 Caché 和 Ensemble 应用程序迁移到 InterSystems IRIS 是快速、简单且经过验证的。 查看我们的“迁移到 InterSystems IRIS”操作指南,您可以从我们的全球响应中心(需要登录 WRC)下载该指南,以确保无缝迁移。 现在是最好的时间 迁移只是旅程的开始,因此为了确保您从强大的 InterSystems IRIS 功能中获得最大收益,我们创建了各种文档、视频和在线学习资源,以帮助您解锁所有这些强大的功能。 现在是迁移到 InterSystems IRIS 的最佳时机。 只需联系您的 InterSystems 销售工程师或销售总监,即可享受此限时优惠。 了解更多信息:InterSystems.com/migrate。 关于作者:Jeff Fried InterSystems 产品管理总监 Jeff Fried 是一位长期从事数据管理的,尤其热衷于帮助人们创建强大的数据驱动应用程序。 在加入 InterSystems 之前,Jeff 曾担任 BA Insight、Empirix 和 Teloquent 的 CTO,并负责 FAST Search and Transfer 和 Microsoft 的产品管理。 他在数据管理、文本分析、企业搜索和互操作性方面拥有丰富的经验。Jeff是该行业的常客和作家;拥有15项专利;并撰写了 50 多篇技术论文并合着了三本技术书籍。 查看原文
公告
jieliang liu · 十月 18, 2023

[视频] 如何自定义 InterSystems IRIS for Health FHIR 存储库

嘿开发者, 欣赏Bilibili InterSystems 中国上的新视频: ⏯如何在 2023 年全球峰会上定制 InterSystems IRIS for Health FHIR 存储库 InterSystems IRIS for Health 不仅提供世界一流的 FHIR 存储库,还提供灵活性和可扩展性。了解自定义 FHIR 存储库的选项,并了解如何通过几个具体用例来实现它们,例如强制标识符的唯一性和引用完整性。 🗣 演讲者: @Teunis.Stolker,InterSystems 高级销售工程师 享受这个视频并继续关注更多视频! 👍
文章
Lilian Huang · 七月 31, 2023

ChatGPT 与 InterSystems FHIR SQL 数据库构建器

FHIR® SQL Builder或 Builder 是 InterSystems IRIS 医疗版数据平台 的一个组件。它是一种复杂的投射工具,用于将 InterSystems IRIS 医疗版数据平台FHIR 存储库中的数据创建为自定义的 SQL 模式,而无需将数据移动到单独的 SQL 存储库中。 Builder 专门设计用于与 InterSystems IRIS 医疗版数据平台中的 FHIR 存储库和多模型数据库配合使用。 Builder 的目标是使数据分析师和商业智能开发人员能够使用熟悉的SQL分析工具使用 FHIR,而无需学习新的查询语法。 FHIR 数据以复杂的有向图编码,无法使用标准 SQL 语法进行查询。基于图的查询语言 FHIRPath 旨在查询 FHIR 数据,但它是非关系型的。 Builder 使数据管理员能够使用表、列和索引创建其 FHIR 存储库的自定义 SQL 来投射,使数据分析师能够查询 FHIR 数据,而无需学习 FHIRPath 或 FHIR 搜索语法的复杂性。存储库将加载 FHIR 资源,您所需要做的就是配置 FHIR SQL BUILDER。对于配置,导航到http://localhost:55037/csp/fhirsql/index.csp# /有关如何进行配置的更多详细信息,请观看此教程视频 要查看配置,请导航到http://localhost:55037/csp/fhirsql/index.csp#/spec/1 现在让我们使用irisChatGPT应用程序,使用以下命令连接到终端 docker-compose exec iris iris session iris 创建 dc.irisChatGPT 类的新实例并使用 SetApiKey 方法设置 OpenAI API 密钥 set chat = ##class(dc.irisChatGPT).%New() do chat.SetAPIKey("Enter your Open API Key here") 谢谢
文章
Weiwei Gu · 八月 4, 2023

InterSystems IRIS 中创建具有超过 999 个属性的类/表

InterSystems IRIS 目前将类限制为 999 个属性。 但是,如果您需要为每个对象存储更多数据该怎么办? 本文将回答这个问题(附加了社区 Python 网关的客串以及如何将广泛的数据集传输到 Python 中)。 答案其实很简单 - InterSystems IRIS 目前将类限制为 999 个属性,但不限制 999 个基元(primitives)。 InterSystems IRIS 中的属性可以是具有 999 个属性的对象等等 - 该限制很容易被忽略。 方法1 . 每个序列属性存储 100 个属性。首先创建一个存储一百个属性的存储类。 Class Test.Serial Extends %SerialObject { Property col0; ... Property col99; } 并在您的主类中添加您需要的尽可能多的属性: Class Test.Record Extends %Persistent{Property col00 As Test.Serial; Property col01 As Test.Serial;... Property col63 As Test.Serial;} 这会立即将您的限制提高到 99900 个属性。 这种方法通过 SQL 和对象层提供对所有属性的统一访问(我们总是通过其编号来了解属性引用)。 方法2 。 一个 $lb 属性: Class Test.Record Extends %Persistent{Property col As %List;} 这种方法更简单,但不提供显式的列名称。 使用 SQL $LIST* 函数访问列表元素。 方法3 。 使用集合(列表/数组)属性。 Class Test.Record Extends %Persistent{Property col As List Of %Integer;} 此方法也不为各个值提供显式的列名称(但您真的需要它吗?)使用属性参数将属性投影为 SQL 列/表。 集合属性的文档。 方法4 。 根本不要创建属性并通过 SQL 存储过程/ %DispatchGetProperty公开它们。 Class Test.Record Extends %Persistent{ Parameter GLVN = {..GLVN("Test.Record")}; /// SELECT Test_Record.col(ID, 123) /// FROM Test.Record////// w ##class(Test.Record).col(1, )ClassMethod col(id, num) As %Decimal [ SqlProc ]{ #define GLVN(%class) ##Expression(##class(Test.Record).GLVN(%class)) quit $lg($$$GLVN("Test.Record")(id), num + 1)} /// Refer to properties as: obj.col123 Method %DispatchGetProperty(Property As %String) [ CodeMode = expression ]{..col(..%Id(), $e(Property, 4, *))} /// Get data global/// w ##class(Test.Record).GLVN("Test.Record")ClassMethod GLVN(class As %Dictionary.CacheClassname = {$classname()}) As %String{ return:'$$$comClassDefined(class) "" set strategy = $$$comClassKeyGet(class, $$$cCLASSstoragestrategy) return $$$defMemberKeyGet(class, $$$cCLASSstorage, strategy, $$$cSDEFdatalocation)} 这里的技巧是将所有内容存储在主 $lb 中,并使用未分配的Schema存储空间来存储数据。 这是一篇关于Global存储的文章。 通过这种方法,您还可以通过ExecuteGlobal方法轻松地将数据传输到社区 Python 网关的 Python 环境中。 由于结构相似,这也是导入 CSV 文件的最快方法。 结论 999 个属性限制可以在 InterSystems IRIS 中轻松扩展。 您知道存储广泛数据集的其他方法吗?如果有,请分享!
公告
Claire Zheng · 九月 2, 2022

InterSystems 2022全球峰会亮点解读:Smart Data Fabric与InterSystems数据平台的超能力

2022年9月9日,我们将举办线上“InterSystems 2022全球峰会亮点解读”,点击此处参会。 亮点一:Smart Data Fabric(智能数据编织) 认识Data Fabric(数据编织):概念与应用场景 Data Fabric如何实现高质量数据驱动业务决策? InterSystems IRIS数据平台提供的Smart Data Fabric解决方案 亮点二:InterSystems IRIS数据平台的三大能力 释放数据价值:通过HL7 FHIR标准支撑CDSS应用和数据探索,使传统数据中心不再受制于特定消息格式,提升医院按需投放数据、释放数据价值的能力。 与Python数据交换:InterSystems IRIS数据平台具有5种与Pyhton数据交互方式,本次研讨会重点介绍DB-API和Embedded Python,并进行实操演示。 列存储:新增的一种数据存储方式,与传统的行存储相比,它将复杂的聚合类分析查询性能提升了一个数量级。 亮点三:HealthShare Health Connect 功能提升 通过HL7 V2 特性提升、数据转换编辑器增强、规则编辑器增强、集成产品扩展架构、接口关系图等,提高实施效率、降低实施成本、提升平台价值。
公告
Tete Zhang · 二月 16, 2023

InterSystems 产品支持的平台 - 版本更新 (2023 年 2 月)

InterSystems 产品支持的平台 - 版本更新 (2023 年 2 月 我们经常收到有关 InterSystems IRIS 数据平台支持的平台和框架的问题。此更新旨在分享最近的更改以及我们对即将发生的更改的当前决策。(预测未来是一项棘手的工作,不应将此视为我们对未来支持平台和框架的承诺。) 我们计划大约每 3 个月发布一次此类更新,然后在一年内重新评估。如果您觉得此更新有用,请告诉我们!我们很感激您的建议。 关于更新…… IRIS 生产操作系统和 CPU 架构 红帽企业版 Linux 近期变动 IRIS 2022.1.2 添加了对RHEL 9.0的支持。 9.0 是一个操作系统主版本,将 Linux 内核更新到 5.14,将 OpenSSL 更新到 3.0, 将 Python 更新到 3.9 IRIS 2022.2.0 移除了对 RHEL 7.x 的支持。 IRIS 的早期版本仍支持 RHEL 7.9。 即将发生的变化 RHEL 9.1 于 2022 年 11 月发布。Red Hat 仅在 RHEL 9.2 发布之前支持此次版本。 RHEL 9.2 计划于 2023 年第二季度末发布。 Red Hat 计划在未来4年内继续支持 9.2。 InterSystems 计划通过一项我们称为“操作系统次版本认证”的新流程,对 RHEL 9.2 上的 IRIS 进行额外测试。该流程旨在提供额外的安全性,即操作系统次版本更新不会对产品有大的影响。 RHEL 8.4 扩展维护将于 2023 年 5 月 31 日结束,这意味着 IRIS 也将在那时停止支持此次版本。 进一步阅读: RHEL 发布页面 Ubuntu 近期变动 IRIS 2022.1.1 增加了对Ubuntu 22.04的支持。 22.04 是一个操作系统主版本,将 Linux 内核更新到了 5.15,将 OpenSSL 更新到 3.0.2,将 Python 更新到 3.10.6 IRIS 2022.2.0 移除了对 Ubuntu 18.04 的支持。 IRIS 的早期版本仍然支持 Ubuntu 18.04。 IRIS 2022.1.1 及更高版本的容器都是基于 Ubuntu 22.04的。 即将发生的变化 Ubuntu 20.04.05 LTS 和 22.04.01 LTS 最近已经发布。 InterSystems 计划通过一项我们称之为“操作系统次版本认证”的新流程,在 20.04.05 LTS 和 22.04.01 LTS 上对 IRIS 进行额外测试。我们将在未来的通告中详细介绍这个新流程。 Ubuntu 的下一次重大更新定于 2024 年 4 月 进一步阅读: Ubuntu 发布页面 SUSE 操作系统 近期变动 IRIS 2022.3.0 增加了对SUSE Linux Enterprise Server 15 SP4的支持。 15 SP4 是一个操作系统主版本,将 Linux 内核更新到 5.14,将 OpenSSL 更新到 3.0,将 Python 更新到 3.9 即将发生的变化 根据他们的发布节奏,我们预计 SUSE 将在第二季度末或第三季度初发布 15 SP5。在那之后我们将把此版本加入到IRIS支持的平台列表中。 延伸阅读: SUSE 生命周期 Oracle Linux 近期变动 IRIS 2022.3.0 添加了对Oracle Linux 9的支持。 Oracle Linux 9 是跟随 RHEL 9 的操作系统主版本,因此它也将 Linux 内核更新到 5.14,将 OpenSSL 更新到 3.0,将 Python 更新到 3.9 即将发生的变化 Oracle Linux 9.1 于 2023 年 1 月发布。 进一步阅读: Oracle Linux 支持政策 微软Windows 近期变动 自 IRIS 2022.1 中添加了 Windows Server 2022 以来,我们未对支持的 Windows 版本列表进行任何更改 即将发生的变化 Windows Server 2012 的扩展支持将于 2023 年 10 月结束。如果您仍在该平台上运行,现在可以开始计划迁移了。 进一步阅读: Microsoft 生命周期 AIX 近期变动 自从在 IRIS 2022.1 中添加了 AIX 7.3 并移除了 7.1 以来,我们没有对支持的 AIX 版本列表进行任何更改 即将发生的变化 InterSystems 正与 IBM 密切合作以增加对 OpenSSL 3.0 的支持。这不会包含在 IRIS 2023.1.0 中,因为 IBM 需要在未来的 TL 版本中包含该功能。好消息是 IBM 正计划在 AIX 7.2 和 7.3中支持OpenSSL 3.0。 IBM 于 12 月发布了 AIX 7.3 TL1,认证正在进行中。 下一个 TL 版本预计在 4 月发布。 进一步阅读: AIX 生命周期 容器 近期变动 我们现在正在发布 IRIS 容器的多架构描述文件(manifest)。这意味着拉取标记为2022.3.0.606.0的 IRIS 容器将为您的 CPU(Intel/AMD 或 ARM)下载正确的容器。 如果您需要为特定 CPU 拉取容器,我们为特定架构的容器制定了标签。例如, 2022.3.0.606.0-linux-amd64将拉取 Intel/AMD 容器, 2022.3.0.606.0-linux-arm64v8将拉取 ARM 容器。 即将发生的变化 我们将在今年下半年逐步淘汰 arm 的镜像(image)名称,例如iris-arm64,以进一步向多架构描述文件转移。 我们还将开始使用“-preview”标记IRIS体验版(Preview)的容器,以便于和最新的正式版本(GA Release)进行区分。 IRIS 开发操作系统和 CPU 架构 MacOS 近期变动 自从我们在 IRIS 2022.1 中迁移到 MacOS 11 以来,我们没有对支持的 MacOS 版本列表进行任何更改 即将发生的变化 我们计划在 2023 年添加对 MacOS 13 的支持,最早可能会在 IRIS 2023.1版本上添加。 CentOS 我们正在考虑取消对 CentOS/CentOS Stream 的支持。以下是我们的考虑。 Red Hat 几年来一直在运行一项开发者计划,该计划使开发人员能够获得非生产环境的免费许可证。这个项目旨在鼓励正在使用CentOS的开发者通过此项目切换到 RHEL。 CentOS Stream 现在是 RHEL 的“上游”,这意味着它具有 RHEL 不包含的缺陷和功能。它还在每天更新,这可能会给平台上的开发人员和测试人员带来不稳定性。 自从我们在 IRIS 2022.1 中添加了对 CentOS 8-Stream 的支持并移除了对 CentOS 7.9 的支持后,我们没有对支持的 CentOS 版本列表进行任何更改 Caché & Ensemble 生产操作系统和 CPU 架构 近期变动 Cache 2018.1.7 增加了对 Windows 11 的支持 InterSystems 支持的平台列表文档 InterSystems 支持的平台列表信息的最终版将发布在InterSystems 支持的平台列表文档中。 IRIS 2020.1 支持的服务器平台 IRIS 2021.1 支持的服务器平台 IRIS 2022.1 支持的服务器平台 IRIS 2022.3 支持的服务器平台 Caché & Ensemble 2018.1.7 支持的服务器平台 以上就是这一次发布的全部信息。如果您想了解更多信息,请联系我们。
文章
Nicky Zhu · 一月 8, 2021

精华--InterSystems 数据平台的容量规划和性能系列文章

# 索引 下文按顺序列出了数据平台上容量计划和性能系列中的所有帖子。 也列出了我的其他帖子。 我将随着该系列中新帖子的增加进行更新。 #### 容量计划和性能系列 通常,每个帖子的内容都建立在上一个帖子的基础上,但您也可以直接浏览感兴趣的主题。 - [第 1 部分 - 入门:收集指标。](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-–-第-1-篇) - [第 2 部分 - 研究收集的指标。](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-–-第-2篇) - [第 3 部分 - 聚焦 CPU。](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-–-第-3-篇:聚焦-cpu) - [第 4 部分 - 关注内存。](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-第-4-篇-关注内存) - [第 5 部分 - 使用 SNMP 进行监控](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-第-5-篇-使用-snmp-进行监控) - [第 6 部分 - Caché 存储 IO 配置文件。](https://cn.community.intersystems.com/post/数据平台和性能-第-6-部分-caché-存储-io-配置文件) - [第 7 部分 - ECP的性能、可伸缩性和可用性 。](https://cn.community.intersystems.com/post/数据平台和性能-第-7-部分-用于确保性能、可伸缩性和可用性的企业缓存协议) - [第 8 部分 - 超融合基础架构容量和性能计划](https://community.intersystems.com/post/intersystems-data-platforms-and-performance-%E2%80%93-part-8-hyper-converged-infrastructure-capacity) - [第 9 部分 - CachéVMware 最佳实践指南](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-–-第-9-篇-intersystems-iris-vmware-最佳实践指南) - [第 10 部分 - VM 备份和 Caché 冻结/解冻脚本](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-–-虚拟机备份和-caché-冻结解冻脚本) - [第 11 部分 - 虚拟化大型数据库 - VMware cpu 容量计划](https://cn.community.intersystems.com/post/虚拟化大型数据库-vmware-cpu-容量规划) #### 其他帖子 以下是我在社区中发布的与架构相关的帖子 - [使用内置 REST API监控 InterSystems IRIS - 使用 Prometheus 格式。](https://community.intersystems.com/post/monitoring-intersystems-iris-using-built-rest-api) - [示例:使用默认的 REST API 从 InterSystems IRIS 查看监视器指标](https://community.intersystems.com/post/example-review-monitor-metrics-intersystems-iris-using-default-rest-api) - [InterSystems 数据平台及性能 – 如何更新 pButton。](https://cn.community.intersystems.com/post/intersystems-数据平台和性能-–-如何更新-pbuttons) - [将 pButtons 数据提取到 csv 文件中以便于绘制图表。](https://cn.community.intersystems.com/post/将-pbuttons-数据提取到-csv-文件以便绘制图表) - [使用 Ansible 配置 Caché 应用程序 - 第 1 部分。](https://cn.community.intersystems.com/post/使用-ansible-预置-caché-应用程序-第-1) - [Windows、Caché 和病毒扫描程序。](https://community.intersystems.com/post/windows-cach%C3%A9-and-virus-scanners) - [ECP 魔术。](https://cn.community.intersystems.com/post/ecp-魔术) - [创建社区帖子的 Markdown 工作流程。](https://community.intersystems.com/post/markdown-workflow-creating-community-posts) - [Yape - 另一个 pButtons 提取程序(自动创建图表) ](https://cn.community.intersystems.com/post/yape-另一个-pbuttons-提取程序(自动创建图表)) - [加密一个数据库需要多久?](https://cn.community.intersystems.com/post/加密一个数据库需要多久?) - [最低限度的监控和告警解决方案](https://cn.community.intersystems.com/post/最低限度的监视和警报解决方案) - [LVM PE 条带化可最大化超融合存储吞吐量 ](https://cn.community.intersystems.com/post/lvm-pe-条带化使超聚合存储吞吐量最大化) - [使用 Yape 解包 pButton - 更新说明和快速指南](https://cn.community.intersystems.com/post/使用-yape-解包-pbuttons-更新说明和快速指南) Murray Oldfield InterSystems 技术架构师 请在社区关注@murray_oldfield 或我们中文版主
文章
Claire Zheng · 一月 4, 2023

【动画视频】InterSystems IRIS数据平台支持多少种开发语言?

多种开发技术,令开发人员随心所愿!
文章
Tete Zhang · 七月 4, 2023

FAQ常见问题系列--InterSystems 产品的基础故障排除

本文讨论了在使用或维护InterSystems产品中遇到问题时,试图确定问题时可能用到的思路和工具。 一般故障排除 确定问题发生的地点和时间 问题是什么时候开始的?多久发生一次? 问题首先出现在哪里? 问题在什么条件下会被触发? 审查日志中的警告、错误和警报 以下日志可能包含有关该问题的有用信息。可以尝试在以下日志中寻找问题开始前后的警告或报错。 检查 messages.log(IRIS)或者 cconsole.log(Caché and Ensemble) 通过文件系统(<install-dir>/mgr/messages.log)访问messages.log文件,或者 通过管理门户(系统操作>系统日志>Messages Log)访问文件内容 检查production事件日志 (详细信息请参见文档) 查看应用程序错误日志 (详细信息请参见文档) 查看Web Gateway/CSP Gateway日志 查看网络服务器(IIS/Apache)日志 检查实例是否可以访问足够的存储空间 检查文件系统剩余空间(推荐设置操作系统层级的存储空间低告警) 检查数据库剩余空间 通过管理门户(系统操作>数据库>Freespace View)查看数据库文件内剩余空间百分比 检查Journal日志空间 检查CPU活动 服务器的负载是否在正常范围内? 监控CPU利用率 CPU使用率是稳定的,还是有尖峰?这些尖峰是活动的增加还是减少? CPU是否经常在I/O上等待? 在安装了sysstat的系统上,可以通过iostat监控此项。 审查开放的事务和锁 是否存在开放事务的问题? 评估锁表大小。 查看messages log中是否有锁表满 LOCK TABLE FULL 的警告 检查所有进程是否按预期运行 监控总进程。 进程数是否有显著增加? 是否有任何进程被卡住,或在循环? 进程使用的内存量是否正常? 进入管理门户 > 系统操作 > 进程 > 进程ID的详细信息,以获得关于具体进程的信息。 检查镜像监视器和镜像状态监视器 监控镜像的状态。同步日志工作是否已经完成? 进入管理门户>系统操作>镜像监视器,查看镜像状态。 记录镜像成员之间的差异。 不是所有在主机上的更改都会通过镜像机制同步到备机。系统管理员需要对主备机上无法自动同步的更改进行手动更改,以及对主备机上不同步的部分做完整的记录。 确保InterSystems IRIS的许可证是有效的 监控许可证使用情况。 进入管理门户>系统操作>软件许可使用情况查看。 监控许可证的过期时间。 联系WRC 你所掌握的关于问题的任何信息都可以帮助WRC确定导致该问题的原因。以下是你可以执行的步骤,以向WRC提供尽可能多的信息。 总结问题 这个问题可以重现吗?它是否持续发生? 最近系统上是否有任何变化,可能导致了这个问题? 记录InterSystems IRIS和其操作系统的版本信息 进入管理门户>关于页面,获取完整的版本信息。 运行监控工具 运行系统诊断报告 IRIS: do ^SystemCheck Caché/Ensemble: do ^Buttons 如果系统处于挂起状态,运行IRISHung IRISHung脚本是一个操作系统工具,用于在InterSystems IRIS实例挂起时收集系统的数据。 该脚本位于install-dir\bin目录下,在Microsoft Windows 系统上名称为IRISHung.cmd,在UNIX®/Linux 系统上名称为 IRISHung.sh。 IRISHung脚本应以管理员权限运行。 如果有性能问题,运行系统性能报告 IRIS: do ^SystemPerformance Caché/Ensemble: do ^pButtons 与WRC取得联系 访问InterSystems全球响应中心(WRC)网站 (wrc.intersystems.com),或 邮件发送问题描述至support@intersystems.com,或 拨打中国区技术支持中心热线电话 400-601-9890
文章
Michael Lei · 四月 24, 2021

置顶--InterSystems 中文开发者社区精华文章集锦

欢迎大家将相关的经验在这个讨论区分享。 板块 文章列表 征文大赛作品集锦 2022年首届InterSystems 技术征文大赛集锦 2023年第二届InterSystems 技术征文大赛集锦 官方文档 我司即将推出中文官方文档门户,欢迎大家把需要的官方文档发在评论区,我们会优先发布。谢谢! IRIS 2021 最新技术文档 First Look 1 技术概要 IRIS 2021 中文文档PDF下载 InterSystems IRIS for Health 2023 英文文档PDF下载 基础知识与概念 InterSystems-常用术语 多语言字符集系列文章--第一篇 多语言字符集和相关标准简史 基础系列--第一章 SQL中使用的符号 基础系列--Object Script 基础知识(一) 基础系列--InterSystems SQL 的使用 - 第一部分 - 架构及特性介绍 基础系列--WebGateway系列(1): Web Gateway介绍 基础系列 DeepSee 的开发 - 第一部分 - Cube 基础系列--访问IRIS数据平台的四种方式 InterSystems IRIS 的面向对象数据库特性 InterSystems IRIS - 适用于实时人工智能/机器学习的多功能通用平台 使用支持SSL的ODBC连接IRIS数据库 容器中的InterSystems IRIS Docker简介 在集成产品中压缩解压文件 无代码实现SQL业务服务和业务操作 通用TCP业务服务和业务操作 通用RESTful 业务服务和业务操作 通用SQL 业务服务和业务操作 运维与常见问题 InterSystems 最佳实践系列文章 IRIS/Healthconnect-高可用机制-mirror-的配置 系统运维、管理常见问题FAQ系列 运维好文--InterSystems 数据平台互操作功能运行维护管理基础 运维好文--集成平台实例中有哪些文件在占用磁盘? 安全、等保、审计相关系列 虚拟化大型数据库 - VMware CPU 容量规划 InterSystems 数据平台的容量规划和性能系列文章 已经解决的问题清单 使用Prometheus监控Cache集群 医院信息化建设实战教程:如何在不允许使用Git的情况下自动备份代码/自动执行代码? 关于Caché中查看关键锁的几种方式 镜像备机长时间宕机的处理 如何维护变化频繁表的位图索引 将 pButtons 数据提取到 CSV 文件以便绘制图表 Yape - 另一个pButtons 提取程序(自动创建图表) 数据迁移工具: 从Postgres 到 IRIS 数据迁移工具:从MySQL 到 IRIS 开发与创新 CDC系列:使用Dejournal Filter在InterSystems IRIS/Caché上通过Mirroring实现CDC功能实操--HealthConnect中创建HTTP服务创新--基于Docker的一体化集成AI环境中部署机器学习/深度学习模型 创新--面向 Google Cloud Platform (GCP) 的 InterSystems IRIS 示例参考架构 创新--在 Windows 主机上运行的 Hyper-V Ubuntu 虚拟机中配置 Docker 使用环境 创新-- 新一代医疗数据互操作标准FHIR系列文章 FHIR创新应用示例:使用FHIR Cloud Server和IRIS for Health对妊娠糖尿病进行连续血糖监测 科研--用IRIS IntegratedML(一体化机器学习)来预测肾病的Web应用 IRIS如何进行CRUD操作 如何调用Ensemble/IRIS内置的HL7 V2 webservice - Java,PB9,Delphi7样例 IRIS与Caché的23种设计模式 10分钟快速开发一个连接到InterSystems IRIS数据库的C#应用 在IRIS中联合运用 OCR 与 NLP 技术 物联网 (IOT) 在 InterSystems IRIS 平台上的应用 现有系统通过使用FHIR适配器提供FHIR服务 SqlDbx连接IRIS攻略 使用Visual Studio Code访问 IRIS 终端 Ensemble使用sql+global实现简单分页 通过XSL自动生成消息模型 IRIS自动安装集群--manifest(安装清单) JWT - JSON Web Token Authentication介绍 如何根据ID重建索引 使用 InterSystems IRIS 实现 Data Fabric架构 在 InterSystems IRIS 中创建具有超过999个属性的类/表 FHIR相关 FHIR CDS Hooks FHIR Profile FHIR 生态 FHIR与微服务架构 NHS FHIR实践案例和经验 在InterSystems IRIS 医疗版的FHIR服务器上测试和开发SMART on FHIR应用 InterSystems IRIS 医疗版创建FHIR服务器 使用一个命令创建 InterSystems FHIR 服务器 在本地 K8s上部署一台FHIR服务器 创建FHIR REST 客户端 使用iris-fhir-client应用程序创建患者和患者观察 【视频】FHIR标准和国际上基于FHIR的互联互通实践 现有系统通过使用InterSystems FHIR 适配器提供FHIR服务 使用 Synthea 生成 FHIR测试数据 FHIR客户端使用嵌入式Python连接FHIR服务器 如何发布FHIR文档(医疗信息表、出院小结等) 借助 VS Code中的IntelliSense自动完成功能,通过使用FHIR Schema创建和验证FHIR资源 消息转换服务-轻松实现从HL7 V2 转换为 FHIR 将 ObjectScript 持久化类暴露位 FHIR代码系统和值集 本地化 Caché实现SM3密码杂凑算法 在国产系统上安装Healthconnect2021 HEALTHSHARE2018版如何实现AES(CBC)的HEX输出,并可以实现加密和解密 行业观察与洞见 精华文章--《数据二十条》的号角声 论集成标准的选择对医院信息集成平台建设的影响 医疗行业的生态创新:如何实现数据利用和应用创新 精华文章--从软件架构发展谈业务集成技术演进与展望 精华文章--漫谈应用集成的现在与未来 翻译文章:什么是智慧医院数字孪生? 医疗行业数字化转型 —谈谈微服务架构 医院数字化转型之数智底座建设思路(在陕西省数字医学数字化转型论坛上的分享) 行业前沿系列翻译文章--EPIC 电子病历系统: FHIR, API, 互操作性和资源 行业前沿--利用数据编织应对挑战,创造数据价值 医疗行业的生态创新:如何实现数据利用和应用创新 转载:Epic的Cosmos如何用去识别化的数据支持临床研究 前沿探讨--大模型GPT 对医疗行业互操作性协议的影响? 国际卫生信息互操作性标准发展简史 其他 社区文章汇总--跟着社区学习InterSystems 技术 产品对比——Gartner DBMS 魔力象限中的主要领先数据库产品功能对比 产品对比--企业软件的“大众点评”之最新Gartner 云数据管理系统对比,国内医疗信息行业主流的Hadoop(Cloudera)vs Oracle vs Sql Server vs InterSystems Cache 产品对比--Gartner Peer Insight 华山论剑之应用集成平台--InterSystems vs MS vs IBM 学习系列 IRIS/Healthconnect-高可用机制-mirror-的配置 跟版主学caché——大型史诗级免费技术培训caché百讲 git-github入门学习系列 IRIS 快速入门系列讲座 WebGateWay 学习系列 学技术、练听力,尽在InterSystems系联在线培训广播电台 Intersystems IRIS for Health 数据平台医疗版最新在线培训课程 CDC系列 ISC 中国在B站培训视频 如何在社区学习? 初学者资源库 FHIR标准和国际基于FHIR的互联互通实践 在InterSystems IRIS 中使用Python Python 和 ObjectScript 中消息响应时间的对比测试 使用Python访问 InterSystems IRIS 数据库 将Python JDBC 连接到 IRIS数据库 - 快速笔记 将Python ODBC 连接到 IRIS 数据库 - 快速笔记2 使用 pyodbc将 Python 应用程序连接到 InterSystems IRIS 使用 IRIS Native SDK for Python 遍历 IRIS Global数据结构 使用 IRIS Native SDK for Python 调用类方法 嵌入式Python 概述 使用嵌入式Python系列 使用嵌入式Python进行 Web 抓取 使用嵌入式 Python 实现 InterSystems IRIS 互操作性 使用嵌入式Python动态创建 HL7 消息 使用嵌入式Python生成数据流 使用嵌入式Python创建存储过程 InterSystems IRIS 嵌入式 Python 模板 嵌入式Python重新加载更新后的Python模块 使用嵌入式Python 访问广利门户仪表盘并在网页上显示 Caché 表数据 使用 SQLAlchemy 将表传输到IRIS 或从 IRIS中获取表 SQLAlchemy - 将Python 和 SQL 与 IRIS 数据库一起使用的最简单方法 在Python 上使用IRIS REST API 进行 SQL 迁移 使用 IRIS 和Python gTTS实现文本转化声音的 REST 服务 基于IRIS 的 Python 实践与示例 使用 IRIS 和 Python 创建聊天机器人 InterSystems IRIS 2021.2+Python 代码样例 使用嵌入式 Python 教程 基于IRIS的Python 全球疫情大数据仪表盘样例 未来智慧医院畅想--利用Python进行人脸识别和情绪感知 调研—— InterSystems 客户服务满意度调研(长期有效) 互操作系列 消息统一管理 孤立消息管理 HTTP服务 开发系统接口 IRIS 系列 2021版最新官方系列文档 权限管理 容量和性能规划 超融合规划 Web Gateway 数据同步和容灾系列 SOAP 服务 开发 ObjectScript 系列 Object & SQL 运维 系统运维常见问题 B站视频 其他Ensemble相关
公告
Claire Zheng · 九月 15, 2021

Online Meetup:与InterSystems开发者竞赛(InterSystems IRIS Analytics)竞赛优胜者交流

亲爱的社区开发者们,大家好! 我们诚挚地邀请您参加与InterSystems开发者竞赛(InterSystems IRIS Analytics)竞赛优胜者交流 online meetup! 日期 & 时间: 美国东部时间2021年9月17日(周五)12:00;北京时间2021年9月18日(周六)0:00-1:00 在此次线上交流会上,您将了解到: 优胜者简介 优胜者提交项目的简短demo 关于项目中使用到的技术的开放探讨、问答,以及下一场开发者竞赛的安排。 届时上线嘉宾: @Dmitry.Maslennikov, Co-founder, CTO and Developer Advocate, CaretDev Corp @Henry.HamonPereira, Systems Analyst at BPlus Technology @Evgeniy.Potapov, CEO at TECCOD @John Pan, @Carmen.Logue, InterSystems Product Manager - Analytics and AI @Evgeny.Shvarov, InterSystems Developer Ecosystem Manager 您还有机会在这个特别的线上研讨会中与我们的开发者交流。 期待您的参加! ➡️ 注册参会!
文章
Nicky Zhu · 一月 10, 2021

增强InterSystems IRIS DBMS的安全性

当您首次使用InterSystems IRIS时,通常只需安装最低安全级别的系统。您输入密码的次数会比较少,这样有利于快速了解和操作开发服务和Web应用程序。而且,最低的安全性有时更便于部署开发项目或解决方案。 然而,有时需要将项目移出开发环境,迁移到一个可能很不友好的互联网环境中。在部署到生产环境之前,需要使用最大的安全设置(即,完全锁定)对其进行测试。这就是我们在本文中将要讨论的内容。 如果想更全面地了解InterSystems Caché、Ensemble和IRIS中的DBMS安全性问题,请阅读我的另一篇文章《[在生产环境中安装InterSystems Caché DBMS的相关建议](https://community.intersystems.com/post/recommendations-installing-intersystems-cach%C3%A9-dbms-production-environment)》。 InterSystems IRIS中安全系统的设计概念是针对不同的类别(用户、角色、服务、资源、特权和应用程序)应用不同的安全设置。 ![image](/sites/default/files/inline/images/picture1_2.png) 可以为用户分配角色。用户和角色可以对资源(数据库、服务和应用程序)拥有不同的读、写和使用权限。用户和角色还可以对数据库中的SQL表拥有SQL权限。 # 安全级别的差异 用户在安装InterSystems IRIS时,可以为其选择安全级别:最小、正常或锁定。这些级别在用户参与程度、可用角色和服务,以及服务和应用程序的身份验证方法的配置方面存在差异。如需了解更多信息,请阅读《InterSystems IRIS安装准备》指南中的《InterSystems安全性准备》章节。 在文档中,您可以找到下面这些表格,其中显示了每个级别的安全设置。这些安全设置可以在系统管理门户界面进行更改。 ## 初始用户安全设置 |Security Setting | Minimal | Normal | Locked Down | |--------------------------------------------|--------------|--------------|----------------------| |Password Pattern |3.32ANP |3.32ANP |8.32ANP | |Inactive Limit |0 |90 days |90 days | |Enable _SYSTEM User |Yes |Yes |No | |Roles assigned to UnknownUser |%All |None |None | ## 初始服务属性设置 |Service Property |Minimal|Normal|Locked Down| |-----------------------------------|-----------|----------|------------------| |Use Permission is Public |Yes |Yes |No | |Requires Authentication |No |Yes |Yes | |Enabled Services |Most |Some |Fewest | ## 初始服务启用设置 |Service | Minimal | Normal | Locked Down | |-----------------------------------|--------------|-------------|---------------------| |%Service_Bindings | Enabled | Enabled | Disabled | |*%Service_CSP | Enabled | Enabled | Enabled | |%Service_CacheDirect | Enabled | Disabled | Disabled | |%Service_CallIn | Enabled | Disabled | Disabled | |%Service_ComPort | Disabled | Disabled | Disabled | |%Service_Console | Enabled | Enabled | Enabled | |%Service_ECP | Disabled | Disabled | Disabled | |%Service_MSMActivate | Disabled | Disabled | Disabled | |%Service_Monitor | Disabled | Disabled | Disabled | |%Service_Shadow | Disabled | Disabled | Disabled | |%Service_Telnet | Disabled | Disabled | Disabled | |%Service_Terminal | Enabled | Enabled | Enabled | |%Service_WebLink | Disabled | Disabled | Disabled | *InterSystems IRIS环境下,%Service_CSP应用%Service_WebGateway。 不同的操作系统所使用的服务略有不同。 # 如何提高安全性 您需要为每个启用的服务选择合适的身份验证方法,包括:无认证(unauthenticated)、密码、Kerberos或授权。 您还需要禁用系统中未使用的web应用程序。对已启用的web应用程序选择正确的身份验证方法:认证、密码、Kerberos、授权、登录或cookie。 当然,管理员可以为每一个项目和解决方案选择安全设置,以满足客户的项目要求。整个过程应始终保持一种平衡,即,一方面要保证系统足够方便以支持用户完成实际工作,另一方面又要保证系统足够安全能够阻止入侵者。不过众所周知,被禁用的系统才是最安全的系统。 如果遇到需要多次手动提高系统安全级别的情况,这就是一个明确的迹象,表明需要编写一个软件模块来解决这些问题。 实际上,InterSystems Open Exchange提供了一个锁定(LockDown)程序,可以帮助您提高安全性。该程序的源代码可以在InterSystems isc-apptools-lockdown页面的存储库中找到。 LockDown程序有以下几种作用: ## 首先,更改以下预安装用户的密码: - Admin, - CSPSystem, - IAM, - SuperUser, - UnknownUser, - _Ensemble, - _SYSTEM. ## 其次,禁用除以下服务之外的所有服务: - %%service_web gateway - %service_console - %service_login - %service_terminal ## 再次,为所有web应用程序设置密码保护,包括: - /csp/ensdemo - /csp/samples - /csp/user - /isc/studio/usertemplates - /csp/docbook - /csp/documatic - /isc/studio/rules - /isc/studio/templates ## 最后,设置系统范围内的安全参数,包括: - 密码复杂度为 "8.32 ANP" - 限制90天内不活跃的用户 - 开启审计和其他所有安全相关的事件 您可以从GitHub下载LockDown.cls,在系统上安装好LockDown程序。然后在终端输入以下内容: ``` USER>zn “%SYS” %SYS>do $system.OBJ.Load("/home/irisusr/LockDown.cls","ck") ``` 或者可以使用以下命令从公共注册中心通过ZPM批处理管理器进行安装: ``` USER>zn “%SYS” %SYS> zpm “install isc-apptools-lockdown” ``` # 执行LockDown程序 强烈建议在执行LockDown程序之前先进行备份。 必须从%SYS命名空间执行LockDown程序。如果您不想更改所有预安装用户的密码,请将第一个参数保留为空。 如果希望保留使用IRIS Studio、Atelier或VSCode编辑程序和类的能力,请不要禁用%Service_Bindings服务,只需将bindings参数设置为1即可。下面是一个示例: `do ##class(App.Security.LockDown).Apply("New Password 123",.msg,1)` 此模块还包含一个功能,该功能在系统密码被盗用、需要替换所有预装帐户但无需执行锁定的情况下很有用。可以参考下面的运行: `do ##class(App.Security.LockDown).Change Password("New Password 123", "Admin,CSPSystem,IAM,SuperUser,Unknown User, _Ensemble,_SYSTEM")` 在执行锁定之后,应用程序或项目极有可能会停止工作。为了解决这个问题,需要将一些安全设置恢复到原始状态。这个操作可以通过管理门户界面(安全性部分)实现或以编程方式完成。 # 锁定后更改安全设置 锁定之后,如果您的web应用程序使用了密码以外的身份验证方法,就需要进行启用。 建议运行软件模块zpm-registry-test-deployment,它有一个在ZPM-registry项目中使用LockDown的示例。 在IRIS上以最低的安全级别安装该项目,安装结束时将开始运行其中的代码。代码可以用来: - 更改所有预安装用户的密码。 - 禁用此项目中未使用的所有服务。 - 为系统上的所有应用程序启用密码保护,但Web应用程序/注册表(允许未经授权的用户获取注册表中的软件包列表)除外。 - 创建一个拥有在注册表中发布新包特权的新用户。该用户必须对IRISAPP数据库中的项目表具有写权限。 创建一个新用户: ``` set tSC= ##class(App.Security.LockDown).CreateUser(pUsername, "%DB_"_Namespace, pPassword, "ZMP registry user",Namespace) If $$$ISERR(tSC) quit tSC write !,"Create user "_pUsername ``` 为新的未授权用户添加权限: ``` set tSC=##class(App.Security.LockDown).addSQLPrivilege(Namespace, "1,ZPM.Package", "s", "UnknownUser") set tSC=##class(App.Security.LockDown).addSQLPrivilege(Namespace, "1,ZPM.Package", "s", pUsername) set tSC=##class(App.Security.LockDown).addSQLPrivilege(Namespace, "1,ZPM.Package_dependencies", "s", pUsername) set tSC=##class(App.Security.LockDown).addSQLPrivilege(Namespace, "1,ZPM_Analytics.Event", "s", pUsername) set tSC=##class(App.Security.LockDown).addSQLPrivilege(Namespace, "9,ZPM.Package_Extent", "e", pUsername) set tSC=##class(App.Security.LockDown).addSQLPrivilege(Namespace, "9,ZPM_Analytics.Event_Extent", "e", pUsername) If $$$ISERR(tSC) quit tSC write !,"Add privileges " ``` 运行LockDown项目: ``` set tSC= ##class(App.Security.LockDown).Apply(NewPassSys) If $$$ISERR(tSC) quit tSC Change the settings for the web app so that an unknown user can log in: set prop("AutheEnabled")=96 set tSC=##class(Security.Applications).Modify("/registry",.prop) If $$$ISERR(tSC) quit tSC write !,"Modify /registry " Change the settings for the %service_terminal service, changing the authorization method to Operating System, Password: set name="%service_terminal" set prop("Enabled")=1 set prop("AutheEnabled")=48 ; Operating System,Password set tSC=##class(Security.Services).Modify(name,.prop) If $$$ISERR(tSC) quit tSC write !,"Modify service terminal" ``` # 总结 在本文中,我讨论了为何要提高系统安全性级别的原因,并且通过一个InterSystems LockDown程序运行示例,演示了如何通过编程的方式提升安全性。 在本文所介绍的方法中,我们首先关闭了系统中的所有内容(即,设置最大安全级别)。然后通过开放项目运行所需的服务和应用程序(但仅限于这些)来控制安全性。我相信还有许多其他的方法和最佳实践,欢迎大家在文章评论区留言告诉我们。
公告
Claire Zheng · 二月 19, 2021

InterSystems编程大奖赛技术奖励

大家好! 以下是 InterSystems编程大奖赛 的技术奖励,这些奖励会让您在投票中获得加分。 Groups 奖励 得分 常规 Docker 2 ZPM 2 Unit Testing 2 API and languages REST API 2 ODBC/JDBC 2 使用嵌入式Python 4 Native API in Java, Python, .NET, node.js 3 多模型 Globals (key-value) 2 SQL 2 Object 2 New model 3 Analytics IRIS BI 2 IRIS NLP 2 InterSystems Reports 3 AI/ML Integrated ML 4 Python or Julia网关 3 互操作性 使用业务流程 BPL 或业务规则 3 使用自定义互操作性适配器 2 使用产品扩展 (PEX) 4 使用工作流程引擎 2 FHIR 使用 FHIR Server REST API 3 使用 FHIR SQL 架构 2 医疗保健标准转换 3 总计 58 以下是有关所有技术奖励的详细信息和有用链接。 常规奖励 ZPM包部署- 2分 如果您为您的全栈应用程序构建并发布 ZPM(ObjectScript 包管理器)包,以便在安装了 ZPM 客户端的 IRIS 上使用命令: zpm "install your-multi-model-solution" 进行部署,则您可以获得该奖励。 ZPM 客户端. Documentation. 使用Docker容器- 2分 如果应用程序使用在 docker 容器中运行的 InterSystems IRIS,它将获得“Docker容器”奖励。 Unit Testing - 2分 对 InterSystems IRIS 代码进行单元测试的应用程序将获得该奖励。 请在 Documentation 和 Developer Community. 了解有关 ObjectScript 单元测试的更多信息。 InterSystems IRIS API 使用InterSystems IRIS REST API- 2 分 如果您在您的全栈应用程序中通过 REST API 访问 InterSystems IRIS,您将获得该奖励。 您可以自己构建 REST API,也可以使用任何内置 REST API 或通过 ZPM 安装。 Learn more on InterSystems REST API. 使用嵌入式Python - 4分 嵌入式Python需要一个特定的docker image,例如: intersystemsdc/iris-ml-community:2020.3.0.302.0-zpm 了解相关 视频. 点此模板 ,了解嵌入式Python如何工作,以及如何制作ZPM包进行部署。 使用InterSystems Native API - 3分 如果您在您的全栈应用程序中使用以下任一 InterSystems Native API 选项访问数据,则可以获得该奖励: .NET, Java, Python, Node.js. 点击 此处 了解更多。 使用InterSystems JDBC- 2分 InterSystems IRIS 提供了用于访问数据的 JDBC 驱动程序。 如果您在您的全栈应用程序中使用 SQL 和 InterSystems JDBC 引用数据,您将获得该奖励。 多模型奖励 InterSystems Global(键-值)- 2 分 InterSystems Global 是 InterSystems IRIS 中用于存储任何数据的多维稀疏数组。 每个 Global 节点都可以被视为一个键,您可以为其设置一个值。InterSystems IRIS 提供一组 API(包括 ObjectScript 命令和Native API)来管理 Global。 工具: 在管理门户中管理globals 文档: 使用多维存储 (Globals) 使用Globals 帖子: Globals are Magic Swords for managing data The art of mapping Globals to Classes 视频: Globals 快速入门 如果您在应用程序中通过 ObjectScript 或Native API使用 Global,则可以获得 2 分奖励。 InterSystems SQL - 2 分 InterSystems IRIS 提供了通过 ObjectScript、REST API、JDBC 对数据进行 SQL 访问的能力。 工具: VSCode SQL Tools DBeaver SQL in Management Portal Other SQL tools 文档: SQL Access InterSystems SQL Reference 帖子: Class Queries in ObjectScript 视频: SQL Things you should know 如果您的应用程序使用了 InterSystems SQL,则可以获取 2 分奖励。 InterSystems Objects - 2分 InterSystems IRIS 提供了通过 ObjectScript/REST API、Java/.NET/Node.js/Python 的Native API 和 Java/.NET 的 XEP 在 global 中存储和更改对象实例的方法。 文档: Object Access 如果您的应用程序中使用了对象访问,则可以获得 2 分奖励。 您的数据模型- 2 分 InterSystems IRIS 可以用作公开您自己的数据模型 API 的数据平台。您可以使用 ObjectScript、REST API 或Native API 来公开您自己的 API,以提供任何特殊数据模型,例如时序、空间、图表、RDF/三元组、列存储、文档存储。 引入任意新数据模型 API,可获得 2 分奖励。 IRIS Analytics奖励 InterSystems IRIS BI - 2分 InterSystems IRIS 业务智能是 IRIS 的一项功能,通过它可以针对 IRIS 中的持久数据创建 BI 多维数据集和数据透视,然后使用交互式仪表板将此信息传递给用户。 Learn more. 基本的 iris-analytics模板 包含 IRIS BI 多维数据集、数据透视和仪表板的示例。 InterSystems IRIS NLP (iKnow) - 2分 InterSystems NLP(又名 iKnow)是一项 InterSystems IRIS 功能,并且是一个自然语言处理库,可以识别英语、德语、荷兰语、法语、西班牙语、葡萄牙语、瑞典语、俄语、乌克兰语、捷克语和日语等自然语言文本中的实体(短语)及其语义上下文。 Learn more about iKnow on Open Exchange. 示例: Covid iKnow Text Navigator Samples Aviation and more 使用 iKnow 管理您的分析解决方案中的非结构化数据,可以获得 1 分奖励。 InterSystems Reports - 3 分 InterSystems Reports 是 InterSystems IRIS 的一项功能,通过它可以设计打印报告,按计划通过电子邮件发送报告,以及为客户提供交互式报告。 InterSystems Reports 是 Logi Analytics® 的产品 Logi Report(以前名为 JReport®)的重新打包。 Learn more in Documentation. 查看InterSystems Reports的 Github示例仓库. 另请观看InterSystems Reports 演示视频 ,并在 Learning Lab 亲自尝试。 您可以在WRC 的下载部分中下载 InterSystems Reports 设计器和服务器。 InterSystems Reports 设计器和服务器的许可证密钥将在Discord中提供。 AI/ML IntegratedML - 3 IntegratedML 是 InterSystems IRIS 的一项功能,它通过一组 ML 指令扩展了 SQL,可以使解决方案中的 AI 和机器学习计算简化和自动化。了解有关 IntegratedML. 您需要专门的 IRIS 映像才能使用 IntegratedML,请点击查看 here. 示例: 一个基本的integratedML模板 Open Exchange上的几个示例 在您的 IRIS Analytics 解决方案中使用 IntegratedML 可让您获得 1 分奖励。 2. 使用Python网关 - 2 分 Python网关 InterSystems IRIS 的一个加载项,它提供了在 InterSystems IRIS 环境中使用 Python 的方法: 执行任意 Python 代码 将数据从 InterSystems IRIS 无缝传输到 Python 中 使用 Python 互操作性适配器构建智能互操作性业务流程 从 InterSystems IRIS 保存、检查、修改和恢复 Python 上下文。 了解更多 关于Python网关. 您可以使用 Python 网关模板 其中也包括了 IntegratedML。 互操作性奖励 使用业务流程 BPL 或业务规则 - 2 分 IRIS 互操作性产品 的主要功能之一是业务流程,它可以通过 BPL(业务流程语言)进行描述。 在文档中了解有关业务流程的更多信息. 业务规则是一种无代码/低代码方法,用于管理互操作性产品的处理逻辑。 在 InterSystems IRIS 中,可以直接或通过 ObjectScript 表示形式来创建业务规则。 如果您在互操作性产品中创建并使用业务流程或业务规则,则可以获得业务流程/业务规则奖励。 业务规则示例 在文档中了解有关业务规则的更多信息 使用自定义互操作性适配器- 2分 InterSystems 互操作性产品可以包含入站或出站适配器,这些适配器被业务服务和产品操作用来与外部系统进行通信。 您可以使用现有适配器(例如文件或电子邮件),也可以开发您自己的适配器。 如果您开发自己的自定义入站或出站适配器,并在您的产品中使用它,您会获得该奖励。 适配器示例 了解有关适配器的更多信息 使用产品扩展 (PEX) - 4 分 PEX 是互操作性产品的 Java 或 .NET 扩展。 如果您在您的互操作性产品中使用 JAVA 或 .NET 的 PEX,则会获得此奖励。 PEX演示 在文档中了解更多PEX相关信息 使用工作流程引擎 - 2分 工作流程引擎是 IRIS 互操作性的一部分,可用于自动在用户之间分配任务。 如果您在您的互操作性产品中使用工作流程引擎,则会获得此奖励。 在文档中了解有关工作流程的更多信息 社区模块 WorkflowAPI 和 WorkflowUI-ngx 在 Angular 上为工作流程引擎提供了一个漂亮的 UI 层。 FHIR奖 使用 FHIR Server REST API - 3 分 如果您在 InterSystems IRIS for Health 中使用 FHIR Server 的 REST API 端点,则会获得此奖励。 您可以采用IRIS-FHIR-Template,它会在 docker 映像构建期间准备 FHIR Server。 FHIR API 4.0.1 的文档可以在 此处找到.点击InterSystems IRIS医疗版文档了解更多。 使用 FHIR SQL 架构 - 2分 如果您在应用程序的 SQL 查询中使用 FHIR SQL 架构,则可以获得此技术奖励。 例如,您可以使用此架构来构建 FHIR Analytics 解决方案。 使用 HSFHIR\_I0001\_R 表示完整资源的资源架构,使用 HSFHIR\_I0001\_S 架构通过 SQL 搜索资源。 请查看 模板. 医疗保健标准转换- 3 分 InterSystems IRIS for Health 包含医疗保健互操作性模块,这些模块有助于执行从不同的医疗保健标准到 FHIR 的数据转换,反之亦然。 在您的应用程序中执行 CDA 到 FHIR、HL7v2 到 FHIR 或任何其他转换可获得此奖励。 请参见 HL7v2 to FHIR 和 CDA to FHIR 的转换示例. 点击文档了解更多信息。 奖励列表可能会有变化。 敬请关注!
公告
Claire Zheng · 三月 25, 2021

InterSystems编程大赛:投票规则

亲爱的社区开发者们,大家好! 欢迎了解InterSystems编程大赛的最新投票规则! 详情如下: 您可以根据自己的判断选择三个项目进行投票,选出您心目中的一、二、三名。您对每个项目的提名会为该项目提供相应分数,根据您的级别和资格,分数会有所不同。以下是社区排行榜说明: 社区(Community)提名投票计分方式 如果您满足以下条件 提名 第一名 第二名 第三名 如果您在DC上发布过帖子,且在Open Exchange上传过App 9 6 3 如果您在社区发布过至少一篇帖子,或者在Open Exchange上传过至少一个App 6 4 2 如果您在社区进行过有效贡献(包括发表评论/提问等等) 3 2 1 专家(Experts)提名投票计分会有更复杂的数学计算,不同级别的专家有更多的“点数”权力: 专家(Experts)提名投票计分方式: 级别 提名 第一名 第二名 第三名 Global Maters VIP级 & InterSystems产品经理 15 10 5 Global Master 大使级(Ambassador) 12 8 4 Global Master专家级(Expert)& 社区管理员/版主 9 6 3 Global Master专业级(Specialist) 6 4 2 Global Master初级倡导员(Advocate)& InterSystems员工 3 2 1 系统会根据您的级别,对社区(Community)提名和专家(Experts)提名分别自动计票。 请看投票演示(请注意您提名项目的分数变化): 为了顺利参加投票,您需要: 登录 Open Exchange – 利用开发者社区账号即可 确保您在开发者社区进行过有效贡献——回答问题、提问、发帖、在Open Exchange上传应用程序——然后您就可以进行投票了。 点击了解如何成为社区“活跃”用户 。 我们希望新的投票规则能带来更公平的竞赛环境,您可以为您心仪的项目大胆投票! 欢迎跟帖评论,告诉我们您的建议!