Job Tingting Jiang · 六月 21, 2022 InterSystems热门职位(1):Market Development Representative InterSystems正在招聘Market Development Representative欢迎您的自荐、推荐。 #工作机会 0 0 0 147
Job Tingting Jiang · 六月 21, 2022 InterSystems热招职位(2):Technical Specialist(Implementation) InterSystems正在招聘Technical Specialist(Implementation),欢迎您的自荐、推荐。 #工作机会 0 0 0 118
Job Tingting Jiang · 六月 21, 2022 InterSystems热招职位(3):Technical Specialist(Product Support) InterSystems正在招聘Technical Specialist(Product Support),欢迎您的自荐、推荐。 #工作机会 0 0 0 87
Job Tingting Jiang · 六月 21, 2022 InterSystems热招职位(4):Support Facilitator 我们正在招聘Support Facilitator,欢迎您的自荐、推荐。 #工作机会 0 0 0 151
文章 姚 鑫 · 六月 20, 2022 阅读大约需 4 分钟 第五章 操作位和位串 第五章 操作位和位串 有时可能希望在基于数据平台的应用程序中存储一系列相关的布尔值。可以创建许多布尔变量,也可以将它们存储在数组或列表中。或者可以使用称为“位串”的概念,它可以定义为位序列,首先呈现最低有效位。位串允许您以非常有效的方式存储此类数据,无论是在存储空间还是处理速度方面。 位串可以以两种方式之一存储,作为压缩字符串或整数。如果在没有上下文的情况下听到术语“位串”,则表示位序列存储为压缩字符串。本文向介绍了这两种类型的位串,然后介绍了一些可用于操作它们的技术。 将位序列存储为位串 存储位序列的最常见方式是在位串中,这是一种特殊的压缩字符串。除了节省存储空间外,还可以使用 ObjectScript 系统函数有效地操作位串。 这样的系统函数是 $factor,它将整数转换为位串。我们可以通过执行以下语句将整数 11744 转换为位串: set bitstring = $factor(11744) 要查看位串内容的表示,可以使用 zwrite 命令: #SQL #Caché 0 0 0 89
文章 Jingwei Wang · 六月 20, 2022 阅读大约需 8 分钟 IRIS/HealthConnect 高可用机制 Mirror 的配置 安装Arbiter 为了将自动故障转移扩展到尽可能广泛的故障情况,InterSystems建议你为每个镜像配置一个仲裁机。 要充当仲裁者,系统必须有一个正在运行的ISCAgent进程。由于ISCAgent是与InterSystems IRIS一起安装的,任何承载一个或多个InterSystems IRIS实例的系统都符合这一要求,可以被配置为仲裁者而无需进一步准备;但是,承载一个或多个故障转移或DR异步镜像成员的系统不应该被配置为该镜像的仲裁者。 没有托管InterSystems IRIS实例的系统可以通过安装Arbiter方式的作为仲裁者。请从InterSystems公司下载适合你的仲裁者系统平台的ISCAgent安装包,然后,安装ISCAgent。 注意:Arbiter的版本要和InterSystems IRIS安装版本保持一致。 #镜像 #高可用性 #Caché #HealthShare #InterSystems IRIS for Health 0 0 1 557
文章 姚 鑫 · 六月 19, 2022 阅读大约需 3 分钟 第四章 锁定和并发控制(四) 第四章 锁定和并发控制(四) 避免死锁 增量锁定具有潜在危险,因为它可能导致称为死锁的情况。当两个进程各自对已被另一个进程锁定的变量断言增量锁定时,就会出现这种情况。因为尝试的锁是增量的,所以现有的锁不会被释放。结果,每个进程在等待另一个进程释放现有锁的同时挂起。 举个例子: 进程 A 发出此命令:lock + ^MyGlobal(15) 进程 B 发出此命令:lock + ^MyOtherGlobal(15) 进程 A 发出此命令:lock + ^MyOtherGlobal(15) 此 LOCK 命令不返回;进程被阻塞,直到进程 B 释放这个锁。 #SQL #Caché 0 0 0 138
文章 姚 鑫 · 六月 17, 2022 阅读大约需 7 分钟 第三章 锁定和并发控制(三) 第三章 锁定和并发控制(三) 升级锁 使用升级锁来管理大量锁。当锁定数组的节点时,它们是相关的,特别是当将多个节点锁定在同一下标级别时。 当给定进程在同一数组中的给定下标级别创建了超过特定数量(默认为 1000)的升级锁时, 将删除所有单独的锁名称并用新锁替换它们。新锁位于父级,这意味着数组的整个分支被隐式锁定。示例(如下所示)演示了这一点。 应用程序应在合适的情况下尽快释放特定子节点的锁(与非升级锁完全相同)。当释放锁时, 会减少相应的锁计数。当的应用程序移除足够多的锁时,会移除父节点上的锁。第二小节显示了一个示例。 锁升级示例 假设有 1000 个^MyGlobal("sales","EU",salesdate) 形式的锁,其中 salesdate 表示日期。锁表可能如下所示: #SQL #Caché 0 0 0 90
文章 姚 鑫 · 六月 16, 2022 阅读大约需 4 分钟 第二章 锁定和并发控制(二) 第二章 锁定和并发控制(二) 关于零超时的说明 如上所述,如果您将 timeout 指定为 0, 会添加锁。但是,如果使用零超时锁定父节点,并且已经在子节点上锁定,则忽略零超时并使用内部 1 秒超时。 删除锁 要删除默认类型的锁,请使用 LOCK 命令,如下所示: LOCK -lockname 如果执行此命令的进程拥有具有给定名称的锁(默认类型),则此命令将删除该锁。或者,如果进程拥有多个锁(默认类型),此命令将删除其中一个。 或者删除另一种类型的锁: LOCK -lockname#locktype 其中 locktype 是一串锁类型代码。 LOCK 命令的其他基本变体 为了完整起见,本节讨论 LOCK 命令的其他基本变体:使用它来创建简单的锁并使用它来删除所有锁。这些变化在实践中并不常见。 #SQL #Caché 0 0 0 59
文章 姚 鑫 · 六月 15, 2022 阅读大约需 5 分钟 第一章 锁定和并发控制制(一) 第一章 锁定和并发控制(一) 任何多进程系统的一个重要特征是并发控制,即防止不同进程同时更改特定数据元素的能力,从而导致损坏。 提供了一个锁管理系统。本文提供了一个概述。 此外,%Persistent 类提供了一种控制对象并发访问的方法,即 %OpenId() 的并发参数和该类的其他方法。这些方法最终使用本文讨论的 ObjectScript LOCK 命令。所有持久对象都继承这些方法。同样,系统会自动对 INSERT、UPDATE 和 DELETE 操作执行锁定(除非指定 %NOLOCK 关键字)。 %Persistent 类还提供方法 %GetLock()、%ReleaseLock()、%LockId()、%UnlockId()、%LockExtent() 和 %UnlockExtent()。 #SQL #Caché 0 0 0 88
公告 Claire Zheng · 六月 15, 2022 一起来录制InterSystems全球峰会的问候视频吧! Hi 开发者们,你或许已经知道了,今年InterSystems全球峰会线下会议再次开启!我们非常期待能在现场见到诸位! 然而,并不是所有的开发者社区成员都有机会参加(我也是!)所以我们决定制作一个很酷的视频收集来自社区成员们问候🎥 无论身在何方,让我们一同以虚拟方式来参加这次伟大的盛会吧!🌏 ⬆️要求:您录制一句2-3秒的短视频,视频内容是向我们的社区成员说 “Hi From your country (来自XX的问候,英语视频最佳)”,然后将视频上传至 这里 ,这样,我们可以把来自各地的许多视频剪辑在一起,在2022年全球峰会上展示。您也可以通过开发者社区联系我,将视频直接分享给我。 截止日期:美东时间6月18日(周五) 期待见到你! #Global Masters #全球峰会 0 0 0 80
问题 Michael Lei · 六月 14, 2022 如何转化 json 到 SDA 并写到文件里? 问: 我有一个专有的JSON,需要转换为SDA并保存到一个SDA文件。 如何将json转化为SDA并写入文件? 谢谢 #互操作性 #InterSystems IRIS for Health 0 1 0 143
文章 姚 鑫 · 六月 14, 2022 阅读大约需 5 分钟 第九章 其他参考资料(二) 第九章 其他参考资料(二) 特殊变量 (SQL) 系统提供的变量。 $HOROLOG $JOB $NAMESPACE $TLEVEL $USERNAME $ZHOROLOG $ZJOB $ZPI $ZTIMESTAMP $ZTIMEZONE $ZVERSION SQL直接支持许多对象脚本特殊变量。这些变量包含系统提供的值。只要可以在SQL中指定文字值,就可以使用它们。 SQL特殊变量名不区分大小写。大多数可以使用缩写来指定。 #SQL #Caché 0 0 0 81
问题 Liang Jianhui · 六月 13, 2022 HealthShare Patient Index 在找 HealthShare Patient Index 的相关视频和资料,求分享,谢谢 #HealthShare 0 7 0 128
文章 Lilian Huang · 六月 14, 2022 阅读大约需 3 分钟 [首次使用InterSystems IRIS] 互操作性: Message消息 这篇文章是上一篇文章的延续https://cn.community.intersystems.com/post/首次使用intersystems-iris-互操作性-一个production是什么? #API #HL7 #InterSystems 业务解决方案和架构 #Caché #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #学习门户 0 0 0 191
文章 姚 鑫 · 六月 13, 2022 阅读大约需 5 分钟 第八章 其他参考资料(一) 第八章 其他参考资料(一) 默认用户名和密码(SQL) IRIS® 数据平台提供了用于登录数据库和开始使用的默认用户名和密码。默认用户名为“_SYSTEM”(大写),密码为“sys”。 SQLCODE错误代码(SQL) 执行大多数 SQL操作都会发出SQLCODE值。发出的SQLCODE值为0、100和负整数值。 #SQL #Caché 0 0 0 161
文章 Frank Ma · 六月 13, 2022 阅读大约需 2 分钟 Python和ObjectsScript中消息响应时间的对比测试 这是一个在InterSystems IRIS中用python和objectscript建立的对比测试。 测试目的是比较在python和objectscript中从BP到BO来回发送一千条请求/消息的速度。 更多信息,请访问 https://github.com/LucasEnard/benchmark-python-objectscript。 重要提示 : 这里用的是python, graph objectscipt和objectscript从一个BP到一个BO来回发送1000条消息的时间,单位是秒。 字符串信息是由十个字符串变量组成。 对象信息由十个对象变量组成,每个对象都是它自己的int、float、str和List(str)。 #ObjectScript #Python #InterSystems IRIS 1 0 0 93
文章 Frank Ma · 六月 13, 2022 阅读大约需 6 分钟 使用IRIS IntegratedML(一体化机器学习)预测孕产妇风险的Web应用 孕产妇风险可以通过一些医学界众所周知的参数来测量。这样,为了帮助医学界和计算机系统,特别是人工智能,科学家Yasir Hussein Shakir发布了一个非常有用的数据集,用于训练检测/预测孕产妇风险的机器学习(ML)算法。这份出版物可以在最大和最知名的ML数据库Kaggle上找到,网址是 https://www.kaggle.com/code/yasserhessein/classification-maternal-health.... #Artificial Intelligence (AI) #IntegratedML #InterSystems IRIS Open Exchange app 0 0 0 273
文章 Frank Ma · 六月 13, 2022 阅读大约需 10 分钟 利用IRIS IntegratedML(一体化机器学习)来预测肾病的Web应用 肾脏疾病可以从一些医学界熟知的参数中发现。这样,为了帮助医学界和计算机系统,特别是人工智能,科学家Akshay Singh发表了一个非常有用的数据集,用于训练肾脏疾病检测/预测方面的机器学习(ML)算法。这份出版物可以在最大和最知名的ML数据库Kaggle上找到,网址是https://www.kaggle.com/datasets/akshayksingh/kidney-disease-dataset。 关于数据集 该肾脏疾病数据集有以下元数据信息(来源:https://www.kaggle.com/datasets/akshayksingh/kidney-disease-dataset): #Artificial Intelligence (AI) #IntegratedML #InterSystems IRIS Open Exchange app 1 0 0 189
文章 姚 鑫 · 五月 12, 2021 阅读大约需 4 分钟 第五章 管理全局变量(一) 第五章 管理全局变量(一) 管理门户提供管理全局变量的工具,系统类提供执行某些相同任务的方法。本章介绍如何使用这些工具。 一般建议 与ObjectScript命令SET、MERGE、KILL和其他命令一样,这里描述的工具提供了直接访问操作全局变量的权限。如果通过全局访问删除或修改,则会绕过所有对象和SQL完整性检查,并且没有撤消选项。因此,在执行这些任务时要非常小心,这一点很重要。(查看和导出不会影响数据库,并且是安全活动。) 使用本章中介绍的工具时,请确保以下事项: IRIS使用哪些全局变量。并不是所有这些都被视为“系统”全局变量-也就是说,即使没有选中“系统”复选框,它们中的一些也是可见的。其中一些全局变量存储代码,包括的代码。 确保知道应用程序使用哪些全局变量。 即使应用程序从不执行任何直接全局访问,应用程序也会使用全局变量。请记住,如果创建持久类,则它们的数据和任何索引都存储在全局变量中,全局变量的名称基于类名(默认情况下)。 #SQL #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 1 0 110
公告 Claire Zheng · 六月 13, 2022 2022 SUTA培训报名启动啦! SUTA培训是InterSystems专为SUTA有效期客户提供的原厂产品技术服务,具体包括产品的基础管理、编程管理、高级管理和开发培训等。即日起2022 SUTA培训报名启动,本年度为针对InterSystems数据平台产品的线上培训,一共6期12个课程,其中每期两个课程,时间安排在周五下午半天(6月24日—8月5号),6期培训总时长共计三天。点击此处报名,或者扫描下图中的二维码报名,在您的报名信息经过审核后,我们会与您进一步沟通线上培训细节。快来报名吧! #活动 #学习门户 0 0 0 97
文章 姚 鑫 · 六月 12, 2022 阅读大约需 5 分钟 第七章 日期和时间构造 第七章 日期和时间构造 验证和转换 ODBC 日期、时间或时间戳。 大纲 {d 'yyyy-mm-dd'} {d nnnnnn} {t 'hh:mm:ss[.fff]'} {t nnnnn.nnn} {ts 'yyyy-mm-dd [hh:mm:ss.fff]'} {ts 'mm/dd/yyyy [hh:mm:ss.fff]'} {ts nnnnnn} 描述 这些构造采用 ODBC 日期、时间或时间戳格式的整数或字符串,并将其转换为相应的 IRIS 日期、时间或时间戳格式。他们执行数据输入以及值和范围检查。 #SQL #Caché 0 0 0 153
文章 姚 鑫 · 六月 11, 2022 阅读大约需 4 分钟 第六章 数据类型(五) 第六章 数据类型(五) 数据类型的整数代码 在查询元数据和其他上下文中,为列定义的数据类型可以作为整数代码返回。 CType(客户端数据类型)整数代码列在 %SQL.StatementColumn clientType 属性中。 ODBC 和 JDBC 使用 xDBC 数据类型代码 (SQLType)。 ODBC 数据类型代码由 %SQL.Statement.%Metadata.columns.GetAt() 方法返回,如上例所示。 SQL Shell 元数据还返回 ODBC 数据类型代码。 JDBC 代码与 ODBC 代码相同,除了时间和日期数据类型的表示。下面列出了这些 ODBC 和 JDBC 值: #SQL #Caché 0 0 0 76
文章 Michael Lei · 六月 11, 2022 阅读大约需 2 分钟 InterSystems 最佳实践系列文章--系统性能组件SystemPerformance (原 pButtons) API和UI示例 在检查我们的^pButtons(在IRIS中改名为^SystemPerformance)性能监控工具的文档时,一位客户告诉我。"我理解所有内容,但我希望它能更简单......更容易定义配置文件,管理它们等等"。 在这次会议之后,我认为尝试为其提供一些更简单的人机界面是一个不错的试验。 这方面的第一步是在现有的pButtons例程上包裹一个基于类的API。 我还能够添加一些更多的 "功能",比如显示当前正在运行的配置文件,它们剩余的运行时间,以前运行的进程等等。 下一步是在这个API的基础上添加一个REST API类。 有了这个工件(pButtons REST API),人们就可以在上面建立一个比较时髦的用户界面。 举个🌰: - #Angular #API #REST API #性能 #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health Open Exchange app 0 0 0 130
文章 姚 鑫 · 六月 10, 2022 阅读大约需 8 分钟 第五章 数据类型(四) 第五章 数据类型(四) Strings %Library.String 数据类型支持的最大字符串长度为 3,641,144 个字符。通常,极长的字符串应分配为 %Stream.GlobalCharacter 数据类型之一。 因为 IRIS 支持 xDBC 协议 50 和更高版本,所以没有强制执行 ODBC 或 JDBC 字符串长度限制。如果 IRIS 实例和 ODBC 驱动程序支持不同的协议,则使用两个协议中较低的一个。实际使用的协议记录在 ODBC 日志中。 请注意,默认情况下 IRIS 建立系统范围的 ODBC VARCHAR 最大长度为 4096;此 ODBC 最大长度是可配置的。 #SQL #Caché 0 0 0 141
文章 姚 鑫 · 六月 9, 2022 阅读大约需 6 分钟 第四章 数据类型(三) 第四章 数据类型(三) 日期、时间、PosixTime 和时间戳数据类型 可以定义日期、时间和时间戳数据类型,并通过标准 SQL 日期和时间函数相互转换日期和时间戳。例如,可以使用 CURRENT_DATE 或 CURRENT_TIMESTAMP 作为使用该数据类型定义的字段的输入,或者使用 DATEADD、DATEDIFF、DATENAME 或 DATEPART 来操作使用该数据类型存储的日期值。 数据类型类 %Library.Date、%Library.Time、%Library.PosixTime、%Library.TimeStamp 和 %MV.Date 对于 SqlCategory 的处理方式如下: #SQL #Caché 0 0 0 142
文章 Lucy Ma · 六月 9, 2022 阅读大约需 3 分钟 InterSystems 最佳实践系列之 - 在DeepSee中设计有效的层级 当使用DeepSee工具来设计层级的时候,一个子级必须有且仅有一个父级。当出现一个子级对应两个父级的情况时,数据结果就有可能会不可靠。另一种情况是当两个相似的级别存在,它们的主键必须要做相应的变更以确保唯一性。我们接下来将通过两个案例来解释这两种情况是如何发生的以及如何避免。 案例1 在多个州里都会有一个城市叫做Boston。在我的样本数据里,我已经记录的与Boston对应的州有MA和Boston.NY。我的维度定义如下: 城市和州在这里都是简单的字符串格式。当构建到我的Cube中时,我会需要两个州级别成员:“MA”和“NY”,以及两个城市级别成员:“Boston”和“Boston”。为什么我需要两个Boston的城市级别成员而不是一个呢?因为一个级别成员不能有两个父级。所以我们需要创建两个分别的子级成员来对应各自的父级。遗憾的是,我们现在处于“糟糕的层级”场景,因为我们只有一个键值来对应两个不同的级别成员。 #InterSystems IRIS BI (DeepSee) 0 0 0 212
文章 Michael Lei · 六月 9, 2022 阅读大约需 2 分钟 InterSystems 最佳实践系列之自定义业务服务 Business Services 业务服务Business Service/BS是能够支持我们从外部数据来源获取数据强大的组件,在在大多数情况下,内置的现成组件就已经可以完成这项工作,但有时候我们还是需要写编码来自定义业务服务。在这样做的时候,有一些最佳实践供大家参考。 #业务服务 #Ensemble 1 0 0 159
文章 Jingwei Wang · 九月 28, 2021 阅读大约需 5 分钟 IRIS 2021 技术文档 First Look 16 Java 网关(Gateway)和InterSystems 产品 本文档介绍了如何在 InterSystems IRIS®数据平台中使用 Java 网关(Gateway)与 Java 组件进行互操作。在本文中,您将首先创建一个示例 JAR 文件。然后,您将在 InterSystems IRIS 管理门户(Management Portal)中创建并启动 Java 网关(Gateway)。您将以编程方式导入创建的示例 JAR 文件。最后,您将在 ObjectScript 中创建并操作一些代理类(proxy class)和对象(object)。 为了让您体验 Java 网关(Gateway ),而又不陷入细节困境,我们保持了简单的探索。这些活动被设计成只使用默认设置和功能,这样您就可以熟悉功能的基本原理,而不必处理那些离题或过于复杂的细节。当您把 Java 网关(Gateway)引入您的生产系统时,您可能需要做一些不同的事情。请确保不要把这种对 Java 网关(Gateway )的探索与真实的情况相混淆!本文档末尾提供的参考资料将使您对在生产中使用 Java 网关(Gateway)的情况有一个很好的了解。 #Ensemble #InterSystems IRIS 0 2 0 185