文章 Hao Ma · 六月 4, 2021 阅读大约需 3 分钟 JSON in IRIS (1) - Dynamic Object 之所以称为Dynamic,是说这个对象在代码编译的时候可以不定义对象的属性和结构,在runtime时才根据装入的数据来产生对象定义。IRIS里用Dynamic Object来处理JSON数据。简单说: 先定义一个Dynamic Object, 把JSON数据装进去,然后用对象的方式处理JSON文档。 让我们看看是它是怎么工作的。 创建一个Dynamic Object很简单, 标准而且啰嗦的写法是: set dynObject1 = ##class(%DynamicObject).%New() 大家通常用简单的写法,像这样用一个{}来定义Dynamic Object: #JSON #新手 #InterSystems IRIS 0 0 0 301
文章 王喆 👀 · 九月 24, 2022 阅读大约需 2 分钟 使用Global进行数据可视化---商业智能(BI) 在医院但凡接触“数据”和“指标”的人,对以下场景应该是深有感触。同样的指标、同样的时间,有可能是同一个部门出的,最后“数据不一致”。除了“匪夷所思”,更有“深恶痛绝”。那么,如何解决这个问题?我的答案是商业智能(BI)。随着技术和市场的发展,有很多公司开始研发直接面向业务用户的敏捷BI工具,FineBI就是这样的一款BI工具。这个也是我接触的第一款国产BI。 #InterSystems 业务解决方案和架构 #新手 #InterSystems IRIS BI (DeepSee) #InterSystems 想法门户 18 0 0 344
文章 Hao Ma · 三月 19, 2024 阅读大约需 2 分钟 IRIS/Caché SQL优化经验分享 IRIS/Caché查询慢,主要原因有以下几个: 应用是一个事务型的数据库, 数据模型的设计不适合某些复杂的分析查询 这是慢的原因,不是慢的离谱的原因。数据模型是产品设计的范畴, 这里不讨论, 本文只讨论优化。 历史原因,有些表的索引不够优化 虽然还是设计问题,但可以在实施中或者维护中给出优化方案。 产品运行中的问题造成的查询效率下降 IRIS/Caché数据平台的一个特点是允许跳过SQL约束,对底层数据的直接修改。坏的代码或者应用可能破坏表数据和表索引的约束,造成SQL性能的下降。维护人员应该知道怎么避免,和处理这样的问题。 维护工作缺乏造成 比如Tune Table(调整表), 这是必须做的工作,但可惜很有些项目没有执行过。 #SQL #新手 #InterSystems IRIS 0 0 1 270
文章 Michael Lei · 九月 26, 2024 阅读大约需 4 分钟 使用 GitLab 持续交付 InterSystems 解决方案 – 第 3 部分:GitLab 安装和配置 在这一系列文章中,我想向大家介绍并探讨使用 InterSystems 技术和 GitLab 进行软件开发可以采用的几种方式。 我将介绍以下主题: Git 101 Git 流程(开发流程) GitLab 安装 GitLab 工作流 持续交付 GitLab 安装和配置 GitLab CI/CD 在第一篇文章中,我们介绍了 Git 基础知识、深度理解 Git 概念对现代软件开发至关重要的原因,以及如何使用 Git 开发软件。 在第二篇文章中,我们介绍了 GitLab 工作流 – 一个完整的软件生命周期流程,并介绍了持续交付。 在这篇文章中,我们将探讨: GitLab 安装和配置 将环境连接到 GitLab #Git #持续集成 #新手 #系统管理 #部署 #Caché 0 0 0 109
文章 Michael Lei · 六月 23, 2021 阅读大约需 15 分钟 最低限度的监控和警报解决方案 InterSystems 数据平台包括了用于系统监视和警报的实用程序及工具,但对于不熟悉构建于 InterSystems 数据平台(又名 Caché)的解决方案的系统管理员来说,他们需要知道从何处下手以及需要配置什么。 本指南以在线文档和开发者社区帖子为参考,介绍了实现最低限度的监视和警报解决方案的途径,以及如何启用和配置以下组件: #InterSystems 业务解决方案和架构 #新手 #系统管理 #Caché 0 0 0 271
文章 Claire Zheng · 十月 18, 2022 阅读大约需 4 分钟 技能帖:更好地利用开发者社区的发帖功能! 各位开发者社区的同学们,大家好! 您想更好地获得帮助、讨论有趣的功能、发布公告或分享您的知识吗?在这篇文章中,我们将告诉你如何做到这一切。 我们将通过以下几部分来分享“如何做”: 一般发帖步骤 问题 文章或公告 讨论 一般发帖步骤 首先,你需要点击开发者社区网站顶部菜单中的“发布新帖”按钮: 之后,您将看到编辑器中显示创建一个问题、一则公告、一篇文章或一个讨论。不同类型的帖子有自己的一组必填字段和可选字段。 #提示和技巧 #教程 #新手 #开发者社区官方 0 0 0 164
文章 Hao Ma · 三月 19, 2024 阅读大约需 3 分钟 IRIS/Caché SQL优化经验分享 - SQL优化器使用的统计数据 上个帖子写了TuneTable的执行, 提到了SQL优化器使用的那些统计数据, 这里逐一的介绍一下这些统计项。了解它们看懂和分析SQL执行计划的基础。 如果您不需要做单个查询的优化工作,可以调过这部分内容。 表的统计项 Extent Size: 表的大小,也就是记录数。在执行多表关联(JOIN)的查询时,SQL优化器会根据Extent Size值,从数据量最小的表来开始执行查询。 您还需要了解:表创建的时候Extent Size会获得一个初始值,而之后的插入修改数据并不自动修改这个值。而只有执行TuneTable才会修改这个。 这也就是为什么没有执行过TuneTable的数据库SQL性能好不了的原因。下图中的Patient表,可以看出有1,000,000记录 #SQL #新手 #InterSystems IRIS 0 0 0 212
文章 Michael Lei · 九月 27, 2024 阅读大约需 8 分钟 使用 GitLab 持续交付 InterSystems 解决方案 – 第 4 部分:CD 配置 在这一系列文章中,我想向大家介绍并探讨使用 InterSystems 技术和 GitLab 进行软件开发可以采用的几种方式。 我将介绍以下主题: Git 101 Git 流程(开发流程) GitLab 安装 GitLab 工作流 持续交付 GitLab 安装和配置 GitLab CI/CD 在第一篇文章中,我们介绍了 Git 基础知识、深度理解 Git 概念对现代软件开发至关重要的原因,以及如何使用 Git 开发软件。 #Git #变更管理 #持续集成 #新手 #系统管理 #部署 #Caché 0 0 0 124
文章 Nicky Zhu · 一月 8, 2021 阅读大约需 3 分钟 DeepSee:数据库、命名空间和映射 - 第1部分,共 5 部分 我打算基于实例中的数据实现业务智能。 怎样才是设置数据库和环境来使用 DeepSee 的最佳方法呢? #映射 #分析 #教程 #数据库 #新手 #部署 #InterSystems IRIS BI (DeepSee) 0 0 0 341
文章 Claire Zheng · 十月 19, 2021 阅读大约需 4 分钟 如何在InterSystems开发者社区学习?第二部分:标签(Tags) Hi 亲爱的开发者们, 在这篇帖子中,我们将向您展示如何善用开发者社区的各类标签(Tags),让我们充分利用这个开发者社区的选项吧! #开发者社区常见问题 #提示和技巧 #新手 #开发者社区官方 0 0 0 168
文章 Hao Ma · 三月 19, 2024 阅读大约需 3 分钟 IRIS/Caché SQL优化经验分享 - 检查索引的完整性 Caché/IRIS的特点是运行Global的修改,而这个修改和SQL是无关的,因此非常容易出现数据库表数据完整性的问题,也就是表中的数据是不是符合定义的表约束。 这样的情况非常常见。有些是人为的对Global的错误修改, 有些是应用系统的事务性管理写的不对,造成事务回滚的时候破坏了索引的完整性。无论什么原因,只要使用Global操作,破坏SQL的完整性非常难以避免。结果就是SQL查询给出错误结果。 最简单的解决方法就是执行“索引检查(Validate Indices)" 我们来做个实验 - 先修改一个global: 如下图, 将Patient表的一个记录的SEX字段,从'M'改到‘F'. 运行索引检查, 结果会提示您问题在什么地方。 #SQL #新手 #InterSystems IRIS 1 0 0 150
文章 Hao Ma · 十月 28, 2024 阅读大约需 1 分钟 安装IRIS docker container - 索引 我在3年前写过同样内容的文章。随着IRIS版本的更新,安装的细节有了些变化,而且,尤其是2024年以后的版本不再使用PWS(Private Web Server), 安装最新版本的IRIS通常同时要安装一个外部的Web服务器,Apache或者nginx。 另外, 大家对自动部署的需要越来越多,因此我也会在下面的内容里面包括自动部署,配置iris, 安装软件等等内容。希望给各位一个基本完整的介绍。 内容列表如下: 基础篇 IRIS images的下载和docker run apache-webgateway container到iris的连接 nginx-webgateway container到iris的连接 iris-main和在container外保存iris数据 配置iris的新方法:CPF merge ... 随时更新 #新手 #部署 #InterSystems IRIS 1 0 0 163