众所周知,InterSystems IRIS的产品设计理念源于互操作性(Interoperable)、稳定性(Reliable)、直观(Intuitive)、可扩展性(Scalable),在云时代,InterSystems IRIS的云上操作与本地一样便捷,令用户体验有了明显提升,除此之外,为了更高效地对InterSystems IRIS进行配置,我们还提供了哪些新特性?为了便捷地进行数据迁移,InterSystems IRIS最新版本提供了哪些解决方案?点击 [**查看视频**](https://cn.community.intersystems.com/post/%E3%80%90%E6%9E%81%E5%AE%A2%E8%81%8A%E5%90%A7%E3%80%91%E5%A6%82%E4%BD%95%E4%B8%BA%E7%94%A8%E6%88%B7%E6%8F%90%E4%BE%9B%E6%9B%B4%E5%A5%BD%E7%9A%84%E5%BC%80%E5%8F%91%E4%BD%93%E9%AA%8C%EF%BC%88%E4%B8%8B-%EF%BC%89),或浏览文字版。 ****马浩 @Hao.Ma ********(老马 ):**** 我想介绍一下杨乐乐(Ida),她是我们资深的WRC(全球响应中心)人员,几乎所有我们现有客户提出的技术问题都会汇集到WRC中,那么Ida,关于如何为客户提供更好的开发体验,有什么好的内容跟我们分享吗?   **杨乐乐 @Ida.Yang ****(Ida):** 大家好,我是杨乐乐,很高兴和大家分享这一主题。我先给大家介绍一下InterSystems IRIS的产品发布与部署。InterSystems IRIS 的产品发布主要有两条线,**主版本和持续交付(CD,Continuous Delivery)版本**,其中主版本一年发布一次,主版本的发布包括安装包和容器映像两种形式,比如2021.1.0;持续交付版本一个季度发布一次,仅仅会以容器映像的形式发布,比如2020.2.0、2020.3.0、2020.4.0。 在Docker容器中部署InterSystems IRIS®是灵活的、高度可复用的,并且非常适合公共云平台。容器将代码和数据干净地分开,并支持持续集成CI/持续交付CD和DevOps,可以更快地将产品的改进推向市场,我们的季度发布版本正是为了助力客户加速这一过程。   为了更高效地对InterSystems IRIS进行配置,我们还提供配置合并功能,这个功能可以让您在一次操作中对InterSystems IRIS实例的配置做任意多的修改。实现方式也十分直接明了,您只需在一个声明性的配置合并文件中声明配置信息,无论是在实例初始部署时还是以后的修改配置,都可将声明中的配置信息应用于实例。配置合并可以很容易地用于从同一个容器映像或工具包中自动部署具有不同配置的多个实例,以及同时重新配置多个运行中的实例,实现集群或其他多实例部署场景下的的自动重新配置。   除了针对实例的配置合并,InterSystems  IRIS还提供配备非常直观的云管理器,InterSystems Cloud Manager(ICM),通过ICM我们可以直接配置公共或私有云的基础设施并在其上部署服务,它为InterSystems产品的容器化部署带来了自动化和基础设施即代码(IaC)的所有优势。通过将API编入可共享和版本化的声明性配置文件,ICM让你安全、可预测地持续创建、修改和改进生产基础设施及服务。   ICM现在支持的基础设施即服务(IaaS)公共云平台包括谷歌云、亚马逊AWS、Microsoft Azure和腾讯云,当然您也可以在您的私有VMware云中轻松配置和部署InterSystems IRIS。除此之外ICM也支持您在现有的基础设施上进行部署。   InterSystems IRIS提供的另外一个对容器化的支持是InterSystems Kubernetes Operator(IKO),众所周知,Kubernetes是一个开源的协调引擎,用于自动部署、扩展和管理容器化工作。IKO通过对Kubernetes的扩展,支持在任何Kubernetes平台上为InterSystems IRIS®部署集群、分布式缓存集群以及独立实例,包括部署时可以选择是否配置我们的高可用性镜像。同时,IKO还增加了特定的集群管理功能,比如它实现了向集群添加节点的自动化等等。   ****吕正之 @Louis.Lu ********(Louis):**** 云确实是一种趋势,很高兴听到InterSystems对于云支持特性的相关总结,对于云上的操作可以和在本地操作一样方便,突出了一个自动化和便捷性的特点,这对客户体验是一个明显的提升。   **杨乐乐 @Ida.Yang****(Ida):** 确实是这样。   除了以上对云平台、容器化支持的内容,我还想跟大家分享两个新特性。   第一个是InterSystems IRIS现在也可部署于基于ARM架构的平台,包括完整的安装版和容器版。通过对ARM架构的支持,客户对于平台的选择可以更加灵活,能够将他们的应用程序部署到具有成本效益的硬件平台上,包括物理平台和云平台。   另外一个是与客户日常运维相关的一个更新,同时这个更新也是对于从Caché、Ensemble就存在的一个旧有问题的答复。相对于传统关系型数据库以表格行和列的方式储存,IRIS的前身Caché采取的是紧密型的存储方式,这样的好处是,同样的数据,Caché所使用的存储空间会减少30%-40%。**但是另一个方面**Caché为了保证数据的高速写入以及数据的一致性等问题,采用了多段写入的方式,这样一来就会产生很多记录数据库操作的日志,也就是Journal日志,特别是在业务高峰期,或者我们在大批量处理历史数据的时候,Journal日志所在的磁盘空间会长得非常快。同时另外一方面随着越来越多文档数据、流数据的保存,这一部分格式的数据在所有数据中的比例也越来越大。为了解决上面的问题,节约空间占用,InterSystems IRIS即将推出的下一个版本中,会加入对Journal日志以及流数据压缩算法的优化,使用优化后的压缩算法磁盘所占空间将会缩减30%,其中XML和其他文档类型的压缩率甚至能够高达80%。   ****吕正之 @Louis.Lu ********(Louis):**** 真不错,日志所占磁盘空间的快速增长确实是很多客户关心的问题,很高兴现在我们在新的版本中做出了这么大的改进。这让我想到了另一个问题,也是很多客户关心的,就是数据迁移,不管是从其他的数据库或者是CSV文件中如何快速方便的将数据迁移到InterSystems IRIS,有什么好的方式推荐吗?   **杨乐乐 @Ida.Yang****(Ida):** 是的,数据迁移也是客户日常会碰到的挑战。现在好消息是,**在最新版本中我们加入了Data Loader的功能**,它可以方便快捷地从CSV文件或通过JDBC加载源数据到InterSystems IRIS SQL表中。它可以使用类似于SQL语句中的INSERT语句那样,以COLUMNS和VALUES子句的方式来完善该命令,以适用更多的应用场景,这很类似于前面IntegratedML中可以使用USING子句。   ****吕正之 @Louis.Lu ********(Louis):**** 嗯,真高兴我们可以在InterSystems IRIS的下一个版本中看到这么多好的功能,所有的这些功能都是为了更好提升客户的开发、使用感受。   大家都知道我们的IRIS是由互操作性(**I**nteroperable)、稳定性(**R**eliable)、直观(**I**ntuitive)、可扩展性(**S**calable)四个单词首字母的缩写构成,**这代表了IRIS的四个主要特点和核心设计理念**,但同时在我们内部还有另一个缩写,也代表了我们的设计初衷,这就是**I**t **R**eally **I**s **S**imple,也就是“它真的很简单”的意思。我们尽可能将构建一个富数据应用所需的所有工具汇集到一个平台中,不需要开发者寻找适合数据存储、数据处理、业务流程编辑、数据分析等不同部分的不同技术框架,省去了不同的知识堆栈、异构系统集成、多开发调试环境切换的烦恼,产品根据市场技术发展、客户需求等不断做出调整与更新,但变化不离其宗—— 它真的很简单(**I**t **R**eally **I**s **S**imple)。   好了,这次我们的分享就到这里,再次感谢各位的观看。