文章 Qiao Peng · 五月 15, 2022 阅读大约需 9 分钟 InterSystems互操作进阶 - 第二篇:规则引擎 (第一部分) 在软件开发和业务集成中,规则无处不在:会员折扣的计算规则、根据消息类型和内容将其路由到不同目标系统的路由规则。还有一个规则发挥重要作用的地方- 辅助决策规则,例如临床知识库和医疗质量指标规则。 规则经常需要随业务调整和知识积累进行调整,而规则的调整是业务和行业专家定的。如果规则是以代码硬编码的,这些调整需要程序员改动,一来不直观、需要业务专家与程序员大量的沟通成本,二来硬编码改动会对应用伤筋动骨,甚至带来风险,三来没法控制新规则生效的时间 – 总不能让程序员在新规则生效的那一刻去编译和部署吧。 #业务规则 #持续集成 #提示和技巧 #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 2 0 0 408
文章 bai hongtao · 十月 7, 2022 阅读大约需 4 分钟 第三方HA软件结合MIRROR使用方法探讨 在Cache 2018之前的版本中,数据库的高可用是通过第三方HA软件保障的,Cache数据库在2018以后及IRIS支持MIRROR技术,通过MIRROR可以保障数据库的高可用及数据的冗余,那么在新版本中,第三方HA软件与MIRROR是否可以同时使用以实现更高的数据库可用性?使用起来有哪些需要注意的?本文重点介绍探讨上述两个问题。 #故障转移 #数据库 #现场测试 #镜像 #高可用性 #Caché #InterSystems IRIS #其他 12 0 0 407
问题 Michael Lei · 四月 29, 2022 Cache 动态 SQL 分页 我想知道是否有更好的方法来使用动态SQL对数据集进行分页,而不是我下面使用的方法。问题是,当潜在的数据池变大时,这段代码就会变慢,以至于无法使用。在分析下面的每一行代码时,似乎速度变慢与最初的rset.%Next()迭代有关。 有没有什么不需要子查询/%VID的可用方法,比如简单的LIMIT/OFFSET? 我的代码类似于: s sql=##class(%SQL.Statement).%New() s query="SELECT *,%VID FROM (SELECT prop FROM table WHERE prop=x) WHERE %VID BETWEEN 1 AND 100" s sc=sql.%Prepare(query) s rset=sql.%Execute() while rset.%Next() {..... #对象数据模型 #SQL #Caché 0 1 1 406
文章 Jingwei Wang · 六月 6, 2022 阅读大约需 1 分钟 windows版Intersystems IRIS安装步骤 双击安装文件 #InterSystems IRIS for Health 0 0 0 407
文章 Hao Ma · 八月 10, 2022 阅读大约需 4 分钟 关于如何管理和减少Ensemble系占用空间的一些策略 我们中的许多人在几年前安装了Ensemble,估计空间是足够的,但现在却遇到了意外--硬盘已经满了!我们可以看看我们可以采取哪些措施来调查发生了什么,然后如何减少所占用的空间。 让我们来看看我们可以采取哪些措施来调查发生了什么,然后如何减少占用的空间。 是什么占用了Ensemble的空间?让我们来看看在Ensemble中占用空间的东西的清单。 Ensemble安装。 备份文件 日志文件 Ensemble数据库。 流文件。 自定义应用程序文件 让我们逐一来看看这些文件。 Ensemble安装占用的空间 这是一个相对较小的空间,取决于版本,大约为1GB。如果你想减少它,你有可能删除一些开发包或第三方连接驱动ODBC/JDBC。你可以通过改变安装选项来做到这一点,见Ensemble安装手册。 #系统管理 #Ensemble 0 0 0 405
文章 Botai Zhang · 一月 26, 2021 阅读大约需 3 分钟 利用Intersystems IRIS医疗版数据平台内置多模型整合医院信息查询业务解决方案 #JDBC #ObjectScript #SQL #数据模型 #键值 #InterSystems IRIS for Health Open Exchange app 3 2 0 365
文章 Nicky Zhu · 一月 8, 2021 阅读大约需 3 分钟 精华--InterSystems 数据平台的容量规划和性能系列文章 索引 下文按顺序列出了数据平台上容量计划和性能系列中的所有帖子。 也列出了我的其他帖子。 我将随着该系列中新帖子的增加进行更新。 #InterSystems 业务解决方案和架构 #提示和技巧 #系统管理 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 404
文章 Muhammad Waseem · 八月 11, 2022 阅读大约需 3 分钟 使用 iris-fhir-client 应用程序创建患者和患者观察 Hi 社区, 本文将演示如何使用 iris-fhir-client 客户端应用程序创建患者和患者观察资源。 建议在开始阅读本文之前可以先读一下我的 第一篇 关于这个应用程序的文章和观看 Youtube 视频。 让我们开始吧: ##嵌入式 Python #FHIR #InterSystems IRIS for Health Open Exchange app 0 0 0 403
公告 Claire Zheng · 三月 7, 2021 如何更好地成为社区贡献者/活跃用户? 亲爱的开发者, 最近我们收到很多类似“如何成为一个活跃(Active)、有贡献值的成员”的问题。 条件很简单! #开发者社区常见问题 #开发者社区官方 2 1 0 383
文章 jieliang liu · 一月 8, 2021 阅读大约需 5 分钟 ObjectScript类浏览器 - 以UML类图方式浏览ObjectScript类 你好! #对象数据模型 #ObjectScript #可视化 #工具 #Caché #Ensemble #HealthShare #InterSystems IRIS #Open Exchange Open Exchange app 0 0 1 402
文章 Michael Lei · 五月 12, 2021 阅读大约需 11 分钟 InterSystems 数据平台和性能 - 第 5 篇 使用 SNMP 进行监控 InterSystems 数据平台和性能 - 第 5 部分 使用 SNMP 进行监控 在之前的帖子中,我展示了如何使用 pButtons 收集历史性能指标。 我首选 pButtons 是因为我知道它随每个数据平台实例(Ensemble、Caché、...)一起安装。 不过,还有其他方法可以实时收集、处理和显示 Caché 性能指标,以进行简单的监视,或进行更重要的并且复杂得多的运营分析和容量计划。 最常见的数据收集方法之一是使用 SNMP(简单网络管理协议)。 SNMP 是 Caché 向各种管理工具提供管理和监控信息的标准方式。 Caché 在线文档包含了 Caché 和 SNMP 之间接口的详细信息。 虽然 SNMP 应该可以直接与 Caché 配合工作,但仍有一些配置技巧和陷阱。 我经历了很多次错误的开始,并且在 InterSystems 其他同事的帮助下,才让 Caché 与操作系统 SNMP 主代理建立对话,所以我写了这篇帖子,希望您可以避免同样的痛苦。 在本帖中,我将介绍如何为 Red Hat Linux 上的 Caché 设置和配置 SNMP,您应该能够对其他 *nix 版本使用相同步骤。 我使用 Red Hat 写这篇文章是因为在 Linux 上进行设置更棘手一些;在 Windows 上,Caché 会自动安装一个 DLL 来与标准 Windows SNMP 服务连接,所以应该更容易配置。 #InterSystems 业务解决方案和架构 #性能 #监视 #系统管理 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 2 1 359
文章 Yongfeng Hou · 十一月 23, 2023 阅读大约需 3 分钟 IRISHealth在DBServer和ECPApp之间启用SSL/TLS安全双向认证加密通信 IRISHealth以其完备且系统化的安全特性在医疗行业的数据库中独树一帜,这些特性包括安全认证、安全授权、安全审计、数据加密以及安全配置。其中数据传输无疑是其中最重要的一环。为此,IRISHealth采用了SSL/TLS技术来对传输的数据进行加密,有效保障了从IRIS数据平台的超级服务数据传输、Telnet服务数据传输、java/.net/Studio客户端的访问数据传输、MIRROR与DB的数据传输,到DBServer和ECPApp之间的数据传输的安全性。 本文是在两个IRISHealth2021实例之间进行ECP服务通信的示例,一个作为DBServer,一个作为ECPApp,两个实例之间通过使用SSL/TLS的ECP协议进行TCP的加密传输通信。 1.IRIS的DB和ECP环境: DBServer ECPApp #ECP #SSL #加密 #安全 #认证 #部署 #Caché #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 14 5 3 297
文章 YuHao Wan · 十一月 1, 2022 阅读大约需 4 分钟 Caché实现SM3密码杂凑算法 0. 算法概述 SM3密码杂凑算法是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准。该算法于2012年发布为密码行业标准(GM/T 0004-2012),2016年发布为国家密码杂凑算法标准(GB/T 32905-2016)。 SM3适用于商用密码应用中的数字签名和验证,是在[SHA-256]基础上改进实现的一种算法,其安全性和SHA-256相当。SM3和MD5的迭代过程类似,也采用Merkle-Damgard结构。消息分组长度为512位,摘要值长度为256位。 整个算法的执行过程可以概括成四个步骤:消息填充、消息扩展、迭代压缩、输出结果。 1. 消息填充 SM3的消息扩展步骤是以512位的数据分组作为输入的。因此,我们需要在一开始就把数据长度填充至512位的倍数。具体步骤如下: 1、先填充一个“1”,后面加上k个“0”。其中k是满足(n+1+k) mod 512 = 448的最小正整数。 2、追加64位的数据长度。 #加密 #Caché 1 2 0 356
文章 Michael Lei · 五月 15, 2022 阅读大约需 7 分钟 InterSystems 最佳实践之 掌握 %SYSTEM.Encryption 加密类 InterSystems IRIS对加密、解密和哈希操作有很好的支持。在%SYSTEM.Encryption(https://docs.intersystems.com/iris20212/csp/documatic/%25CSP.Documatic.c...)类中,有市场上主要算法的类方法。 IRIS算法和加密/解密类型 正如你所看到的,这些操作是基于密钥的,包括3个类: #安全 #InterSystems IRIS Open Exchange app 0 0 0 396
公告 Claire Zheng · 一月 25, 2022 恭喜Louis喜获重磅证书——HL7 FHIR R4 Proficiency Exam 亲爱的开发者们, 很高兴同大家分享一个好消息!我们中文社区版主、InterSystems高级销售工程师Louis(@Louis Lu)于近日顺利通过“HL7 FHIR R4 Proficiency Exam”并取得资格认证证书! #FHIR #互操作性 #InterSystems IRIS for Health #其他 0 1 0 376
文章 Weiwei Gu · 十二月 1, 2022 阅读大约需 3 分钟 InterSystems 几款主要产品的功能对比清单(Cache/Ensemble vs. IRIS For Health / Health Connect ) InterSystems 是一家已经深耕数据库平台领域达44年的公司,成立于1978年,现在已经在全球的80多个国家开展相关业务,每天有超过10亿患者的电子病历数据都跑在以我们的数据库平台构建的应用系统之上。 #Caché #Ensemble #HealthShare #InterSystems IRIS for Health 2 0 0 394
文章 Hao Ma · 三月 25, 2021 阅读大约需 8 分钟 将 Python ODBC 连接到 IRIS 数据库 - 第 2 条快速笔记 关键字:PyODBC,unixODBC,IRIS,IntegratedML,Jupyter Notebook,Python 3 目的 几个月前,我简单谈到了关于“将 Python JDBC 连接到 IRIS”的话题。我后来频繁提起它, 因此决定再写一篇 5 分钟的笔记,说明如何“将 Python ODBC 连接到 IRIS”。 在 Windows 客户端中通常很容易设置 ODBC 和 PyODBC,不过我每次在 Linux/Unix 风格的服务器中设置 unixODBC 和 PyODBC 客户端时,都会遇到一些麻烦。 有没有一种简单连贯的方法,可以不安装任何 IRIS,在原版 Linux 客户端中让 PyODBC/unixODBC 针对远程 IRIS 服务器运行? #Artificial Intelligence (AI) #分析 #Machine Learning (ML) #InterSystems IRIS 0 1 0 373
文章 Michael Lei · 八月 8, 2022 阅读大约需 2 分钟 FHIR 实操--借助VS Code 中的IntelliSense和自动完成功能,通过使用FHIR Schema创建和验证任何HL7 FHIR资源 医疗行业的互操作性在改善病人护理、降低医疗服务提供者的成本以及为提供者提供更准确的情况方面发挥着重要作用。然而,由于有这么多不同的系统,数据的格式也有很多不同的方式。有许多标准被创造出来以试图解决这个问题,包括HL7v2、HL7v3和CDA,但每一种都有其缺点。 FHIR,即快速医疗互操作性资源,是一种新的医疗数据格式,旨在解决这些问题。它是由国际卫生级七组织(HL7)开发的,该组织还开发了HL7v2、HL7v3和CDA。 今天我们将探讨如何在VS代码中借助IntelliSense和自动完成功能,通过使用FHIR Schema 创建和验证FHIR资源。 第 1 步 :从FHIR 官方网站 https://www.hl7.org/fhir/下载 JSON schema file 文件用来做资源校验 #FHIR #REST API #Caché #Ensemble #InterSystems IRIS for Health #VSCode 0 0 0 393
公告 Claire Zheng · 一月 20, 2021 InterSystems IRIS支持基于ARM的AWS Graviton2处理器 去年,AWS推出了基于ARM架构的AWS Graviton处理器第一代Amazon EC2 A1实例。在2019年AWS re:Invent 大会上,亚马逊宣布了第二代AWS Graviton2处理器和相关的Amazon EC2 M6g实例。相比前一代基于Intel Xeon的M5实例,Amazon EC2 M6g实例的性价比提升幅度高达40%。 #AWS #Red Hat Enterprise Linux (RHEL) #Ubuntu #云 #平台 #性能 #InterSystems IRIS #InterSystems IRIS for Health 0 1 0 373
文章 Michael Lei · 八月 9, 2022 阅读大约需 2 分钟 ObjectScript 错误处理片段 ObjectScriptt至少有三种处理错误的方法(状态代码status codes、异常 exceptions, SQLCODE等)。大多数系统代码使用状态码,但由于一些原因,异常更容易处理。在处理遗留代码时,你要花一些时间在不同的技术之间进行转换。我经常使用这些片段作为参考。希望它们对其他人也是有用的。 #Code Snippet #ObjectScript #错误处理 #Caché #InterSystems IRIS 0 0 0 391
文章 Louis Lu · 九月 22, 2021 阅读大约需 13 分钟 IRIS 2021 技术文档 First Look 5-- 技术概要:InterSystems SQL 技术概要(First Look)有助于您了解在InterSystems IRIS ®数据平台中如何使用SQL:标准的SQL功能、特有功能以及如何快速上手使用。 要体验技术概要(First Look)的所有内容 ,您可以在InterSystems IRIS的免费评估实例上执行相关操作 ,请参阅InterSystems First Looks(《InterSystems 技术概要》)。 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 391
文章 姚 鑫 · 三月 15, 2021 阅读大约需 6 分钟 第十章 SQL排序(二) 第十章 SQL排序(二) 查询排序 InterSystems SQL提供了排序规则功能,可用于更改字段的排序规则或显示。 #SQL #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 390
文章 Qianzhu Liu · 四月 25, 2021 阅读大约需 7 分钟 鱼与熊掌兼得 – 利用医院信息系统实践《医疗机构处方审核规范》 如何做到处方审核便捷性与安全性共存,一直是个“鱼与熊掌”的情形。开始正文前,先说个故事—— #HL7 #工具 #TrakCare 1 1 0 369
文章 Hao Ma · 五月 4, 2023 阅读大约需 6 分钟 IRIS, Caché监控指导 - 警告和告警 当系统发生严重危机,一般错误,以及其他需要管理员关注的其他事件发生时, 管理员必须及时的收到系统发出的警告信息。 上篇文章中介绍了控制台日志。这是个文本文件,包含几乎所有的系统级别的错误信息,并且有严重级别的标识,那么使用工具来监控控制台日志文件,并给管理员发送通知是可行的方案吗? 当然。实际上,有些用户正是这样来管理Caceh'/IRIS的。他们有自己熟悉的监控工具,实时读取控制台日志,分析内容,并完成警告通知的发送。 这篇文章我来介绍的是Cache'/IRIS内置的处理警告的机制和配置方法。 通过把严重的错误和事件写入另一个文本文件alert.log,并配置邮件,SNMP, API接口发送通知,可以基本的实现caceh'/IRIS系统的警告通知工作。 Alerts.log 控制台日志中最严重的两个级别(级别2和3), 的记录会被写入另一个文本文件,名字是Alert.log。 默认存储于\installDir\mgr\路径。 在操作门户中“系统>系统日志>控制台日志” ,你会发现 Alerts.log的内容会以红色的字体显示在最上方。比如下图中有2个严重级别的Alert。 #新手 #系统管理 #InterSystems IRIS 2 0 0 388
文章 姚 鑫 · 四月 8, 2021 阅读大约需 8 分钟 第二十章 用户、角色和权限 第二十章 用户、角色和权限 InterSystems IRIS®具有系统级安全性,以及一组与sql相关的额外安全性特性。 在数据库级保护之外,InterSystems SQL安全性提供了额外级别的安全功能。 SQL和系统级安全性之间的一些关键区别是: - SQL保护比系统级保护更细粒度。可以为表、视图和存储过程定义特权。 - SQL权限既可以授予用户,也可以授予角色。 系统级权限只分配给角色。 - 持有SQL特权会隐式授予执行SQL操作所需的任何相关系统特权。 (相反,系统级特权并不意味着表级特权。) InterSystems SQL在InterSystems IRIS数据平台上对ODBC、JDBC、Dynamic SQL和SQL Shell接口进行权限检查。 嵌入式SQL语句不执行特权检查; 假定使用嵌入式SQL的应用程序在使用嵌入式SQL语句之前会检查特权。 SQL权限和系统权限 要通过特定于SQL的机制操作表或其他SQL实体,用户必须具有适当的SQL权限。 系统级权限不足。 用户可以直接被授予SQL权限,也可以属于具有SQL权限的角色。 #SQL #Caché #InterSystems IRIS #InterSystems IRIS for Health 1 1 0 368
文章 Lilian Huang · 六月 23, 2022 阅读大约需 2 分钟 InterSystems 许可证信息和查询支持Tips InterSystems许可证是指InterSystems #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS BI (DeepSee) #InterSystems IRIS for Health 0 0 0 386
文章 姚 鑫 · 九月 25, 2022 阅读大约需 78 分钟 IRIS与Caché的23种设计模式 IRIS的23种设计模式 第一章 Caché 设计模式 简单工厂模式 定义 简单工厂模式属于创建型模式,又可称为静态工厂模式,这是由一个工厂对象决定创建出哪一种产品类的实例 使用场景 工厂类负责创建的对象比较少 客户只需知道传入工厂类的参数,而无须关心创建对象的逻辑 优点 使用户根据参数获得对一个的类实例,避免了直接实例化类型,降低了耦合性 能把客户类和具体子类的实现解耦,客户类不再需要知道有哪些子类以及应当实例化哪个子类:客户类往往有多个,如果不使用简单工厂,那么所有的客户类都要知道所有子类的细节。而且一旦子类发生改变,所有的客户类都要进行修改 缺点 可实例化的类型在编译期间已经被确定。 如果增加新类型,则需要修改工厂,这违背了开放封闭原则 子类多过不适合使用 示例 用Caché 实现一个计算器控制台程序,要求输入两个数和运算符号。 #Caché #InterSystems IRIS #InterSystems IRIS for Health 17 2 1 345
文章 Frank Ma · 三月 2, 2022 阅读大约需 12 分钟 如何以自动化方式/编程方式创建一个镜像环境 各位好, 你曾建立过一个镜像环境吗?它是否有一个私有网络、虚拟IP地址和SSL配置? 在做了几次之后,我意识到这是一个漫长的过程,而且需要很多手动操作来生成证书和配置每个IRIS实例。 对于经常要做这件事的人来说,这是一个痛苦的过程。 例如,质量保证团队可能需要为每个新的应用程序版本创建一个新的镜像环境来测试。支持团队可能需要创建一个镜像环境来重现一个复杂的问题。 我们肯定需要工具来快速创建这些镜像环境。 在这篇文章中,我们将用如下环境创建一个镜像样例: 仲裁机 主服务器 故障切换备份成员 读写报告异步成员 节点间日志转移的SSL配置 镜像环境中的私有网络 虚拟IP地址 镜像数据库 #开发运维 #镜像 #InterSystems IRIS Open Exchange app 0 0 0 385
文章 姚 鑫 · 十二月 22, 2021 阅读大约需 6 分钟 第二章 SQL聚合函数 AVG 第二章 SQL聚合函数 AVG 返回指定列值的平均值的聚合函数。 #SQL #Caché 0 0 0 385