• [技术干货] 报名
    报名DataFactory双轮驱动的开发模式
  • [知识分享] KubeEdge:下一代云原生边缘设备管理标准DMI的设计与实现
    摘要:KubeEdge设备管理架构的设计实现,有效帮助用户处理设备数字孪生进程中遇到的场景。本文分享自华为云社区《KubeEdge:下一代云原生边缘设备管理标准DMI的设计与实现》。随着5G、AI、分布式云等技术的成熟发展,万物互联、数字孪生、算力泛在等理念不断推进,带来了很多行业业务的创新,越来越多的设备、应用运行在端侧,并产生大量的数据。如何更好地解耦业务应用开发和设备数据访问,为设备提供完整的生命周期数据管理,释放设备数据的价值?如何在保证集群可用性的同时,高效管理和传输设备数据,获得更为方便、灵活的数据访问方式?云原生边缘计算的方案选择可以帮助用户更好地应对这类问题。一、KubeEdge设备管理框架KubeEdge设备管理架构的设计实现,有效帮助用户处理设备数字孪生进程中遇到的场景。用户可以通过KubeEdge,将物理设备抽象成数字孪生,用云原生的方式对设备和数据进行管理。一、KubeEdge设备管理框架 图 1 KubeEdge设备管理架构设计KubeEdge设备管理架构设计如图1所示,具体流程如下:1. 用户调用Kubernetes API接口,创建Device CRD实例到KubeEdge2. KubeEdge云上组件CloudCore watch到Kubernetes中Device CRD实例创建消息3. 此时CloudCore会做两件事情,一方面CloudCore通过云边websocket通道下发Device Twin信息到EdgeCore,另一方面CloudCore会生成一份包含Device Profile信息的Configmap,该Configmap是以Node名称为索引,挂载到对应Mapper的Pod中的4. Mapper通过读取挂载的Configmap中的Device Profile信息,更新本地维护的Device list列表5. EdgeCore把接收到的Device Twin信息发送到指定的mqtt topic6. 该节点上的所有Mapper都会收到该Device Twin消息,并根据Device名称来匹配是否是自己维护的list中的Device7. Mapper根据Device Profile信息,通过对应的协议与设备建立连接8. Mapper通过mqtt topic上报设备状态和采集的数据Device Twin到EdgeCore9. EdgeCore通过云边websocket通道上报Device Twin数据到CloudCore10. CloudCore更新设备Device Twin数据到Kubernetes二、DMI框架设计 在此基础上,KubeEdge团队也对框架不断更新迭代。为帮助用户应对未来更大规模设备场景、更高的可用性需求、更灵活的功能支持以及更优的用户体验,KubeEdge 设计了更优化的设备管理框架——DMI。DMI整合设备管理接口,优化边缘计算场景下的设备管理能力,打造基于云原生技术的,覆盖设备管理、设备数据的设备数字孪生管理平台;同时定义了EdgeCore与Mapper之间统一的连接入口,并分别由EdgeCore和Mapper实现上行数据流和下行数据流的服务端和客户端,承载DMI具体功能。DMI框架设计中解耦了设备管理面与设备业务面数据,让Device CRD只承载设备本身的生命周期管理,而设备业务面数据则直接通过微服务的方式为数据消费者应用提供出来。在这样的架构下,设备就不再是单纯的数据源,而是一种云原生的设备微服务,设备数据消费应用的开发者就可以不再关心如何获取设备数据,而是以更云原生的方式来聚焦应用本身的业务逻辑开发。DMI框架还提供多种数据推送方式,让数据消费者可以更灵活地获取设备数据,用户体验更优。由于DMI的设备管理面与业务面数据分离的特点,业务面数据可以通过业务面通道更灵活地在云端或边端被处理,而管理面的云边通道中只会传输少量管理面信息,大大降低了云边通道拥塞的可能,提高了KubeEdge系统的可用性。另外,DMI提供了统一的设备管理相关接口,无论是设备应用开发者还是设备应用的使用者,都可以以更统一、更灵活、更标准化的方式来开展设备相关工作,不拘泥于具体形式,只要能够实现DMI接口,就能够享受KubeEdge边缘计算平台带来的云原生设备管理体验。▍2.1  DMI框架定位图 2 DMI 在 KubeEdge 架构中的定位DMI在KubeEdge架构中的定位如图2所示。DMI类似Kubernetes的CNI、CSI、CRI等接口,定义了一组EdgeCore与Mapper之间的内部API接口以及外部应用访问Mapper的统一的API接口。其中内部接口底层由gRPC结合UDS的方式来实现,外部API接口支持mqtt和REST两种接入方式。Mapper不论是何种承载、实现方式,只要实现了DMI中所定义的上行、下行数据接口,即可接入KubeEdge云原生边缘计算平台,使用云原生的方式对设备进行管理。▍2.2  DMI设备管理与数据管理DMI框架架构设计如图3所示,其中黄色线条为设备管理面数据流管理,蓝色部分为业务面数据流管理。在DMI的架构设计中,将设备的管理面数据与业务面数据进行分离。其中管理面数据主要包括设备的元数据、设备属性、配置、状态、生命周期等,其特点是相对比较稳定,创建后除状态上报外的信息更新较少,更贴近Pod类型资源所产生的数据,在保证用户可以通过云端Kubernetes API像访问Pod一样维护Device的生命周期的同时,尽量减少设备管理产生的额外数据传输开销。图 3 DMI设备管理与数据管理架构在DMI框架设计下,设备不再是单纯的数据源,而是被抽象为微服务,以云原生的方式为设备数据消费者提供数据服务。DMI框架下的设备数据访问支持多种场景,更加灵活。图3中列出了几种主要的数据访问方式,包括推数据和拉数据等,具体情况如下:1. 边缘侧应用通过REST Service访问设备数据2. 云侧应用通过REST Service访问设备数据3. Mapper通过配置REST目的地址,将数据推送到边缘侧应用4. Mapper通过配置REST目的地址,将数据推送到云侧应用5. Mapper通过配置目的地址,将数据推送到边缘侧数据库6. Mapper通过配置目的地址,将数据推送到mqtt broker7. 边缘侧应用通过mqtt broker topic订阅设备数据8. 云侧应用通过mqtt broker topic 订阅设备数据9. 边缘侧应用处理数据后将处理结果传上云▍2.3  DMI工作流程图 4 DMI设备管理工作流程示例在DMI框架下,设备管理工作的流程有一定的变化。如图4所示,在安装KubeEdge的时候,云端CloudCore会注册DeviceController组件用于监听Device和DeviceModel的CRD资源。DeviceController中存在两个模块,Downstream Controller和Upstream Controller,其中Downstream Controller用于监听云端的Device、DeviceModel事件,并通过Cloudhub下发至边缘,Upstream Controller用于接收从Cloudhub转发来的EdgeHub上报的Device状态和消息,并更新Kubernetes中的Device状态。在边缘侧,Mapper初始化的时候,需要调用DMI中的Mapper注册接口,将Mapper的相关信息注册至Device Manager,并接收接口返回的已下发至该节点的且协议匹配的设备信息。EdgeHub在接收到云端下发的设备消息时,会将其转发到DeviceManager组件,DeviceManager会根据该设备的协议选择对应的Mapper驱动程序,发送创建设备的请求,并且本地数据库也会存储该设备的信息,后续Mapper会将设备孪生消息转化为设备协议格式,跟实际的物理设备进行通信。三、DMI接口定义▍3.1 DMI 接口分类DMI接口实现了EdgeCore与Mapper之间的通信,支持REST和mqtt的通信方式,并以标准化的形式呈现,降低了Mapper开发、适配难度。在数据访问方面,DMI可以实现边缘侧和云侧的应用都可以通过REST Service的方式访问设备数据。图 5 DMI接口定义如图5所示,DMI有六类接口,Mapper管理是针对边缘侧各类设备协议驱动程序,Device管理和Device数据管理对管理面和业务面进行了数据拆分,Device升级管理和Device命令管理为具有升级和命令执行功能的设备提供相关的接口,Device事件管理可以监控Mapper及其纳管的各个设备的运行状态。▍3.2 DMI 接口定义示例图 6 DMI设备管理部分接口定义示例如图6所示,为DMI设备管理部分接口定义,v1版本以gRPC proto的方式定义,可使用make dmi命令创建对应的gRPC-go代码。 ▍3.3  DMI 设备相关 CRD 定义如图7所示,是DMI设备相关CRD定义,主要分为Device和DeviceModel。其中DeviceModel与设备型号是一一对应的关系,代表同一类设备型号的共有属性,主要包含设备产生数据属性Properties和设备支持命令属性Commands。Device为设备实例,与真实的物理设备为一对一的关系,每个DeviceModel可以对应统一型号的多个Device实例。Device类型资源主要包含设备型号对应关系信息、设备协议配置信息、设备部署节点信息、设备状态信息以及设备数据Property采集配置信息。图 7 DMI 设备相关 CRD 定义 四、发布计划  四、发布计划DMI发布计划分为三个版本,Alpha版本提供设备管理相关功能实现,以及提供一个支持DMI接口的Mapper Demo。Beta版本支持设备命令管理、设备升级管理以及设备数据管理的能力,此外还会对接第三方平台,并提供相关对接Demo。GA版本会对多平台、多协议进行对接支持,另外会把设备安全以及事件管理的功能补全。图 8 DMI发布计划目前 KubeEdge Device IoT SIG 专注于第一阶段的设备管理和 Mapper Demo 的开发工作。欢迎大家通过下方联系方式联系我们,一起参与到方案设计和特性开发的工作当中本文作者:华为云 赵然 ;DaoCloud 道客 王梓龙附:KubeEdge社区贡献和技术交流地址网站: https://kubeedge.ioGithub地址: cid:link_1地址: https://kubeedge.slack.com邮件列表: https://groups.google.com/forum/#!forum/kubeedge每周社区例会: https://zoom.us/j/4167237304Twitter: https://twitter.com/KubeEdge文档地址: https://docs.kubeedge.io/en/latest/
  • [虚拟化] 【华为云手机】【robox】robox默认的android 版本从7.1切换9.0,原来的转码程序需要升级吗?
    【功能模块】华为鲲鹏920 Robox【操作步骤&问题现象】1、将robox 搭配的安卓7自己升级到安卓9,请问下,转码程序需要升级吗?【截图信息】【日志信息】(可选,上传日志内容或者附件)
  • [技术干货] 业界首个《云原生数据库白皮书》正式发布
    8月18日,华为云TechWave云原生数据库峰会在深圳举办。华为云与中国信通院云计算与大数据研究所共同发布了业界首个《云原生数据库白皮书》,梳理云原生数据库全流程概念及方法。华为云还与沃趣科技、明源云发布基于华为云云原生数据库GaussDB的联合解决方案,助力客户激活数据价值。会上,华为云CTO张宇昕表示:“数据库经历了线下部署和云化部署阶段,进入到云原生时代,云原生数据库已成为云上数据库使用的标准范式。华为云GaussDB践行云原生思维,将围绕Serverless、Regionless、Modeless三大方向构建核心能力,实现极致弹性、全域可用和极简体验,以满足企业上云和智能升级对时效性、可用性、混合负载等方面的诉求,打造企业核心业务云化的智能数据基座。1、云原生数据库持续演进 支撑客户随时、随地、随心使用如今,企业数字化已经进入深水区,业务数据总量呈现爆发式增长,新业务、新场景对数据库的时效性、可用性、混合负载以及性价比等提出了新的挑战。中国信通院云计算与大数据研究所副所长魏凯表示:“为应对上述挑战,数据库技术正朝着降低成本提升易用性、保障数据安全可信、提升功能增强性能、满足新兴业务需求四大目标演进,云原生数据库则是数据库技术发展的主要方向之一。”云原生数据库是为云架构而设计和构建的数据库,具备更高的扩展性,支持多租户、分布式部署等能力。张宇昕指出:“云原生数据库Serverless的特性增强了弹性、降低了成本,Regionless特性提高了可用性和扩展性,而Modeless特性提升了易用性和效率,在新场景和新应用中能够支撑企业业务的高效运转。Serverless让资源极致弹性传统的烟囱式建设模式会导致响应慢、资源利用率低、系统能力缺乏弹性等问题,难以应对业务突发情况及满足业务快速上线需求。华为云云原生数据库GaussDB具备存算分离、资源池化能力,能够提供多维度的弹性服务,将资源弹性速度从分钟级缩短至秒级,随时响应业务需求。Regionless让数据库全域可用随着出海趋势的到来,中国企业正蓄势跳跃到一个全新发展阶段,跨区域访问和7*24小时线上化成常态。在该背景下,客户存在时延高、体验差、投入成本大等问题,且数据安全与业务连续性面临挑战。华为云云原生数据库GaussDB支持跨AZ、跨Region的全球部署,业务可以在任意地方进行接入和访问,同时带来跨地域的高可用。Modeless带来数据库极简体验传统的数据库只能支持单一负载(TP 或者AP)或者单一模式(KV、文档、时序、宽表等),难以做到一体化的数据处理分析,在线化、实时化地发挥数据价值。华为云云原生数据库GaussDB分别采用HTAP和多模数据库技术,一个入口处理多样负载、一个入口处理多种数据类型,实现一站式处理,业务接入效率可从数月缩短至数天。华为云数据库服务产品部总经理苏光牛表示:“云原生数据库能够让客户更高效地使用数据库,从而构建起敏捷智能的企业数字化业务。特别是进入云原生2.0时代,新应用、新场景驱动数据库实现三大转变,即从以资源为中心到以应用为中心、从以地域为中心到以流量为中心、从以负载为中心到以数据为中心。云原生数据库与生俱来的优势与特征,促使越来越多的用户更加坚定地选择云原生数据库。”为加速企业拥抱云原生数据库,华为云与中国信通院云计算与大数据研究所联合撰写《云原生数据库白皮书》,系统阐述了云原生数据库的发展趋势与现状,从云原生数据库应用场景、技术架构、关键技术以及不同场景下的生产实践,详细介绍了云原生数据库的技术模式,并结合当前应用现状及问题,指明未来云原生数据库的技术方向,力求梳理云原生数据库全流程概念及方法。2、联合生态伙伴发布创新解决方案 让云原生数据库走进千行百业目前华为云已与80多家数据库领域的ISV建立合作关系。华为云与沃趣科技联合打造的QFusion平台在能源、机场等多个行业为客户创造价值。华为云与明源云联合打造的行业ERP解决方案,以数据库为抓手,盘活数据资产,让数据成为血液流动,加速不动产工程数字化。在落地实践中,华为云云原生数据库GaussDB已在2500多家客户规模商用,覆盖金融、政企、游戏、互联网、制造、电商等行业。在游戏行业,华为云为迷你创想成本降低60%,数据库承载量提升3倍,轻松应对1亿多月活;在音视频行业,华为云凭借超高性能和极致弹性能力,提升了多多视频用户的观看体验,为2.6亿用户打开新视界;在互联网行业中,华为云高效支撑华为终端7.3亿月活用户的日常使用,万亿级数据记录,百万级QPS,数据库资源与运维成本整体下降30%。数字化转型是一项复杂的长期工程,不仅需要多方技术力量的配合,更需要大胆创新。华为云践行“一切皆服务”的理念,持续深耕数据库技术和解决方案创新,推动更多企业安心上云、轻松用云,为企业数字化转型提供无限可能。
  • [技术干货] 云原生数据库会是用户们的真命天子么?
    过去五十年里,数据库产品形态经历漫长的变迁与更迭。从大型机集成、封闭的数据库服务,到小型机时代经典的IOE数据库架构,再到互联网带来的MySQL开源数据库浪潮,直至云计算兴起开启了云数据库的时代。究其原因,数据库的发展始终与用户需求变迁紧密相关。如今,云原生数据库又脱颖而出,不仅成为AWS、华为云等一众厂商们力推的数据库发展方向,更有望书写数据库市场的新格局。从云数据库到云原生数据库,其中产生了哪些关键变化?为何数据库厂商们纷纷瞄准云原生数据库?云原生数据库会是用户们的真命天子么?面对种种疑问,华为云数据库服务产品CTO庄乾锋直言:“从用户商业应用需求的变化角度看,云原生数据库会成为用户必然的选择。”01云原生数据库为何备受关注要了解云原生数据库为何备受关注,首先需要知道云原生近年来巨大的影响力。云原生,被认为是以容器、微服务和DevOps等技术为基础而建立的一套云技术产品体系,可以充分发挥云计算弹性、分布式等优势,实现快速部署、按需伸缩和灵活交付。可以说,云原生被认为是云计算最重要的发展方向,也是企业数字化转型和上云的必经之路。如今,云原生技术已从单一容器技术发展到庞大的全栈化云原生技术体系。以CNCF社区(云原生计算基金会)为例,经过六年发展,其已经囊括了数据库、中间件等20多类的技术群。那么,从云数据库到云原生数据库,数据库到底有哪些不同?对此,庄乾锋表示道,“云原生数据库不再是简单的资源供给,而是在架构和技术上能感知应用特征。云原生数据库的一切设计围绕用户应用需求出发,目标是让应用能更智能、更高效地使用数据库。”事实上,云数据库更像是传统数据库按照云模式来提供的数据库服务,存在诸如存储空间浪费、系统性能有限、业务应用受限等缺点,并且这些缺点往往会在当前新的业务场景中得到放大。以保险行业为例,随着互联网保险的兴起,保险公司的业务迅速从线下转向线上,业务场景走向规模化、碎片化和实时化,保险公司业务随时需要经受考验,“水滴筹的一个热点事件,可能就会瞬间给保险公司巨大的业务量。因此,从商业上考虑,用户也在逼着自己走向云原生数据库。”随着企业上云成为大势所趋,各大云服务商们最早意识到云原生数据库的重要性,并且近年来纷纷推出相应的云原生数据库服务。其中,中国各大云服务商在市场中颇为抢眼,其中华为云又尤为表现突出。早在2019年,华为云就推出了云原生数据库GaussDB for MySQL,并且进行多项技术变革,使之成为市场的优秀代表。从2020年开始,华为云结合自身的经验总结与行业实践,又提出了云原生2.0理念,从理念层面、技术层面来推动包括云原生数据库在内的云原生服务在传统行业落地。据悉,针对用户在电商秒杀大促、爆款游戏、政务核心业务、实时供应链扥新业务场景带来的各种诉求,华为云云原生数据库GaussDB再次进行架构升级,以满足各行各业数字化转型的新需求。02架构升级带来什么如今,业务应用的变化一日千里。以大促为例,几年前还是互联网巨头的专属,如今则成为零售、垂直媒体、银行等客户的核心业务,这些业务不可预测性强、极端流量峰值高,相比于互联网巨头丰富的资源与人才配置,很多传统企业并无太多经验,面对时效性、可用性、混合负载、成本等一系列新挑战而“捉襟见肘”。在庄乾锋看来,很多新的业务跟大促类似,真正从需求的角度推动数据库的转变,具体而言就是以资源为中心到应用为中心、从地域为中心到流量为中心,以及从负载为中心到数据为中心,“云原生数据库一能够带来极致弹性,让用户按需使用,二则安全可靠和易可扩展,保障业务规模化的安全运行;三则是降低企业门槛,应用在架构设计、业务处理与切换等方面透明,满足企业多元化需求。”不仅如此,华为云GaussDB在几大关键技术进行了迭代升级,包括NDPQ、ALT、HTAP和多模架构等在业界中具备核心竞争力的技术,全面满足用户各种应用场景的需求。首先是NDPQ(Near-Data Parallel Query)近数据并行查询。云原生数据库的存算分离架构随着业务规模的提升,计算与存储节点通过网络通信,往往会存在网络带宽和延迟的制约。为此,华为云GaussDB NDPQ采用近数据计算下推的设计,避免在分布式系统中移动数据和大量网络流量的产生,并让数据处理在其所存储的地方进行,极大节约了网络带宽资源。“目前NDPQ是华为云数据库所独有的特性,通过近数据计算下推+并行查询,不仅可以将数据查询性能发挥到极致,更可以极大提升数据库的资源利用率。”庄乾锋补充道。其次是ALT(应用无损透明倒换)。在数据库日常进行的主备倒换、小版本升级和规格变更时,可能会造成实际业务中用户会话中断,对于业务连续性造成一定的影响,而ALT则以用户连接为颗粒度,当用户进行主备切换、小版本升级或者规格变更时,系统可以打包用户的会话上下文状态,在达到安全的事务边界后,确保会话上下文状态被完整重放至目标节点并与原会话一一关联保证业务持续性,不受各种操作的影响。第三则是HTAP。众所周知,随着数据驱动型场景的井喷,数据产生方式、规模、速度与过去大不同,数据消费的人群、规模和场景丰富场景迅速增加,数据库OLTP场景和OLAP场景开始加速融合,也推动了数据库HTAP架构的崛起。与SAP HANA这种混合负载的内存数据库不同,新一代的HTAP架构数据库具备显著的特点就是分布式+云原生。以华为云GaussDB的HTAP架构为例,将OLAP和OLTP能力深度融合、统一入口和自动分流,达到数据准实时一致,支持各种混合负载的应用场景。庄乾锋表示:“当前HTAP存在着各种技术路线,华为云则根据当前用户实际需求,打造了HTAP架构,实现统一入口和应用透明,架构在业界云厂商中具有领先性。”最后则是多模态。当前在很多业务场景中,用户除了使用关系型数据库能力之外,还会用到诸如图数据库、时序数据库等能力,如果数据需要转换、导出,不仅容易产生安全问题,多套数据库的维护和开发还将提升成本。因此,多模数据库架构统一数据访问和维护接口,可以大幅简化运维和开发人员的工作,还能确保安全性。以华为云云原生数据库GaussDB的多模架构为例,用户既可以使用MySQL、PostgreSQL等SQL接口访问数据库,还可以使用Redis、MongoDB等NoSQL接口访问,支持KV模型、时序模型和文档存储模型等,用户可以自由地在不同的云数据库之间迁移,满足业务的多样性需求和数据的自由流动。“华为云希望通过GaussDB架构的升级,第一、Serverless化,真正让用户实现以应用为中心,按需使用,TCO更低;第二、Regionless化,通过Global Database、全域分层式索引、全域一致性集群等技术,帮助数据自动流动,满足用户因为业务地域性发展的需求,业务流量在哪里,GaussDB就能部署在哪里,迅速响应客户的业务需求;第三、Modeless化,简化业务的复杂度,通过一个入口,实现应用的透明,以及数据自由流动。”庄乾锋总结道。03全栈技术创新华为云数据库后劲十足放眼全球,在开源和云的驱动下,云原生数据库正在迅速颠覆传统的数据库市场。在中国市场,数据库云化的趋势正在加速。IDC最新数据显示,2021全年中国关系型数据库市场规模达到27.7亿美元,同比增长36%;其中,公有云关系型数据库规模达15.4亿美元,同比增长49%,公有云模式占比提升至55.6%。面向未来,云原生数据库将成为市场竞争的持续焦点。Gartner 预测,到2025 年,基于云原生平台的数字化业务比例将达到95%,将带来云原生数据库市场的快速增长。面对潜力如此巨大的市场,除了华为云等云服务商之外,亦有传统老牌数据库巨头、各种初创数据库公司加入竞争之中。那么,华为云如何看待未来的市场机会,自身的竞争优势在哪里?对此,庄乾锋认为,云原生数据库将成为云上数据库使用的标准模式,华为云在从用户需求、全栈技术创新和开放生态三个角度发力,持续构筑自身的核心竞争力,引领云原生数据库市场的发展。华为云首先会持续聚焦数据库的主流生态,以用户业务需求为导向进行产品/服务的创新。“无论环境或者业务如何发展,全球用户一定会走向云原生的时代。华为云核心思路就是打造符合市场发展规律和需求的具有竞争力的云原生数据库。”另外,华为云会聚焦数据库全栈技术的创新。事实上,数据库作为三大根技术之一,与其他技术紧密联系。比如ARM服务器的兴起、处理器走向多核化、SCM新介质的兴起、AI技术的融入等,进一步要求厂商能够具备全栈技术的创新能力,打造出更加优秀的云原生数据库产品。不同于其他厂商,华为云正是业界少有的具备全栈技术能力的厂商。例如,基于内存池的HTAP是一个重要的创新方向,它需要将内存池技术和HTAP进行结合,充分发挥软硬件协同的能力,彻底解决内存池化的各种数据挑战,而华为云云原生数据库GaussDB已经在该领域走在业界的前列;又如,利用AI技术来实现数据库的自动驾驶也是业界重要的方向,华为云GaussDB融入AI技术,数据库管理智能高效,具备自动检测、自诊断、自调优和自运维等功能。第三则是开源开放,华为云携手合作伙伴实现共赢。华为云将GaussDB单机主备核心能力开源,打造openGauss开放生态,积极同时对主流开源数据库提供广泛的支持,与合作伙伴一起为客户提供创新数据库解决方案,满足用户不同场景的数据库应用需求。信通院调研数据显示,80%以上的企业认为云原生数据库是未来的发展方向。可以说,云原生数据库已经成为燎原之势,受到多个行业用户的关注和使用。面向未来,随着各行各业用户数字化转型的深入,新场景、新应用所迸发出来的新需求,将会推动云原生数据库市场持续壮大,也会驱动云原生数据库成为数据库市场的创新高地,而像华为云这种具备全栈创新能力、聚焦主流生态和用户需求导向的厂商,有望迎来更大的舞台。
  • [技术干货] 中国信通院云原生数据湖第二批评测正式启动
    《中华人民共和国国民经济和社会发展第十四个五年规划和2035年远景目标纲要》(简称“十四五”规划)中提出要加快推动数字产业化,年初发布的《“十四五”数字经济发展规划》中再次提出要大力推进产业数字化转型。数据作为生产要素在企业数字化转型的进程中扮演着重要的角色。激活数据要素价值,是促进我国发展数字经济、优化领域资源配置、驱动企业降本增效的关键一招。云原生数据湖支持异构数据灵活存储、计算资源弹性伸缩,能够帮助企业应对当前数据结构愈发复杂、数据处理分析时效性要求不断提高的业务环境,进而加速数据价值变现。云原生数据湖目前仍处于发展初期,技术路线不统一,业内产品能力良莠不齐。为进一步规范云原生数据湖技术体系,中国信通院依托中国通信标准化协会大数据技术标准推进委员会(CCSA TC601),联合腾讯云、阿里云、华为、星环、百度、海康威视、亚信、中国移动云能力中心等企业的二十余位专家共同参与编制完成了《云原生数据湖技术要求与测试方法》,旨在帮助大数据产品供应商及用户方评估云原生数据湖的技术能力和研发方向。云原生数据湖首批评测已于2022年上半年展开,并于6月份的“大数据产业峰会”上颁发了证书。本次评测涉及云原生数据湖的存储能力、计算能力、安全能力、数据管理能力、兼容能力、运维能力、湖应用能力和高可用能力,共计28个必选项和18个可选项。首批共有7款产品参与评测(详见:中国信通院公布第十四批“可信大数据”评估评测结果,34家企业完成),从测评中可以发现,云原生数据湖容器化、Serverless能力有待提升。目前,第二批云原生数据湖评测正式启动! 报名网站:http://databench.cn/index来源:中国信通院
  • [热门活动] 【获奖公示】《身份应用云上技术架构实践》看直播写观后感 ,赢酷炫华为定制T恤!
    感谢大家对本次直播的支持与参与,恭喜以下获奖的童鞋,请于8月29日前反馈您邮寄信息,以便准时收到奖品,我们将于15个工作日左右寄出。邮寄信息填写地址:cid:link_0逾期未反馈信息则视为自动放弃获奖资格,请知悉。有疑问可咨询蛋花(微信号:Huawei-danhua)<优质提问获奖公示>:评选以下3个优质问题送华为定制无线鼠标。<视频号观看top3获奖公示>:关注视频号,且观看直播时长top 3(≥20min)用户送华为定制T恤。<直播观后有感获奖公示>:评选以下3个最有价值内容送华为定制T恤。直播简介【专家简介】茆正华 派拉软件研发总监、CZTP零信任专家程泽 华为云DTSE技术布道师【直播简介】本期直播分享云原生架构下的身份管理平台,为企业、机构、开发者构建云安全数字身份入口,赋能用户全场景下的数字身份治理与链接服务。参与互动交流还有华为周边好礼等你领!【直播时间】2022年8月25日 19:00-20:30直播链接:cid:link_1活动介绍【互动方式】您可以在本帖分享直播观后感(直播收获或直播感受),结束后讲师会评选3个最有价值内容。【活动时间】8月25日 19:00—8月26日 24:00【奖励说明】评奖规则:8月25日 19:00开始,您可以在本帖分享300字以上直播观后感(直播收获或直播感受),评选3个最有价值内容送华为定制T恤。奖品:更多有奖活动:cid:link_3【注意事项】1、为保证您顺利领取活动奖品,请您在活动公示奖项后2个工作日内私信提前填写奖品收货信息,如您没有填写,视为自动放弃奖励。2、活动奖项公示时间截止2022年8月29日,如未填写视为弃奖。本次活动奖品将于奖项公示后15个工作日内统一发出,请您耐心等待。3、活动期间同类子活动每个ID(同一姓名/电话/收货地址)只能获奖一次,若重复则中奖资格顺延至下一位合格开发者,仅一次顺延。4、如活动奖品出现没有库存的情况,华为云工作人员将会替换等价值的奖品,获奖者不同意此规则视为放弃奖品。5、其他事宜请参考【华为云社区常规活动规则】。
  • [热门活动] HW云原生数据库峰会
    zhangwei0721+邀请者账号hw21098757
  • [热门活动] 【盖楼有礼,华为智能手表等你拿】行业大咖邀你看云原生数据库峰会!
    云原生数据库峰会获奖公示本次活动因前期论坛升级等原因,导致统计数据有误,8月25日15点之前给各位发的收货问卷链接作废,给大家带来不便,深感不安和抱歉。中奖名单最新公示时间为2022年8月25日晚6点50分,公示时间至8月29日0点,以此版本为准。用户无疑议后,8月30日进行收货问卷链接发放,9月2日12点停止收集问卷,过期不候,望周知。获奖活动获奖回帖ID获奖奖品盖楼打卡活动yd_270337844折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)Erik_long折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)这个地方是昵称折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)DragonCurry折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)ziyuwei折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)mayingjdzx折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)huaweiqiujie折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)上帝之眼折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)hwzhaoyuhua折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)zgx1636964790折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)xuexiaozhaoyh折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)wangyuyanhw折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)王毛毛折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)xiexinlian折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)hwwangyuy折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)天意不可违、折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)yd_54817690折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)Gezelligheid折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)shao1112折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)ty32折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)home520折叠支架/罗技鼠标/公牛电源/帆布袋(4选1)以上中奖名单中,使用微信抽奖重新随机抽取一个中奖用户加赠Hlink保温杯,恭喜Erik_long,想查看抽奖过程的用户,请联系微信:zhangyuxiao6012,以示公正邀请报名活动yd_270337844 折叠支架hw21098757罗技鼠标M275linshan6408折叠支架suifeng1324折叠支架yaoyao15折叠支架zero766 25HiLink智能保温杯ziyuwei 50HUAWEI FreeBuds 4i 无线耳机活动时间:2022/8/10-8/18活动内容:活动1   峰会"预约报名",回帖盖楼奖励奖励及规则:盖楼层数X中奖用户数中奖楼层奖品名称XX/10所有楼层尾数6的楼层的用户 1.折叠支架/罗技鼠标/公牛电源/帆布袋(随机发)X≥50X/10+1所有楼层尾数8的楼层的用户 2.在1奖品基础上,随机抽1位加赠GaussDB纪念T恤一件X≥100X/10+1所有楼层尾数2的楼层的用户 3. 在1奖品基础上,随机抽1位加赠HiLink智能保温杯1个参与方式:完成《华为云TechWave云原生数据库峰会》预约报名,将报名成功截图进行回帖盖楼,>>>峰会报名入口回复格式:华为云账号+报名成功截图(重复盖楼不超过3次) 活动2   呼朋引伴,回帖盖楼奖励奖励与规则:相互填写对方的华为云账户不算邀请哦!有效邀请人数X奖品礼品数量X≥2价值29元手机支架200X≥10价值79元罗技鼠标M275/纪念T恤(随机发)100X≥20价值139元HiLink智能保温杯20X≥50价值499元HUAWEI FreeBuds 4i 无线耳机 3X≥200价值1488元华为WATCH GT2运动款1参与方式:分享活动海报,邀请好友报名参会,好友完成报名,参与盖楼回帖回复格式:华为云账号+邀请者华为云账号+报名成功截图
  • [问题求助] 云原生
    在云原生中监控软件是?
  • [最新资讯] KubeEdge Summit 重磅回顾!全球产学研用齐聚一堂,共话边缘新未来
    为期2天的重磅分享,20+小时的线上相聚,49位嘉宾的与会演讲,首届云原生边缘计算峰会(KubeEdge Summit 2022)圆满结束。本次峰会得到中国信息通信研究院云计算与大数据研究所、华为云、北京邮电大学、中国移动、道客、ECC边缘计算联盟、天翼云、谐云、浪潮云等单位和企业的大力支持。产、学、研、用汇聚一堂,聚焦边缘,共话未来,让我们一起走进边缘计算的新“视”界!01 主论坛点亮峰会 共话边缘此刻与未来CNCF中国区总裁Keith Chan开场致辞, 开启主论坛。Keith列举了在边缘使用云原生的诸多好处,也肯定了KubeEdge项目自加入CNCF以来,在社区全球化多样性、项目安全性、大规模节点支持、各行各业的落地实践等方面取得的进展,并对KubeEdge的未来发展提出展望。中国信息通信研究院云大所副所长栗蔚对分布式云应用趋势进行了分析,指出分布式云的应用与边缘计算结合,将给用户带来更优质的体验。CNCF大使、KubeEdge项目联合创始人、华为云云原生开源负责人王泽锋在本次峰会上分享了KubeEdge社区发展的多样性、全球开发者活动、用户案例实践以及社区伙伴的进展,并发布包括全新的分布式协同AI基准测试子项目Ianvs、KubeEdge的最新安全审计报告及漏洞处理策略、大规模测试报告等多项技术更新。社区治理方面也有重磅升级,社区成立首届技术指导委员会(TSC),针对不同方向的SIG, 同时成立了社区生态运营组、用户生态运营组。主论坛上,还有来自LF Edge ,北京邮电大学,Eclipse Edge Native基金会,建信金科,天翼云,西安交通大学,道客,顺丰科技,谐云科技,浪潮云,复旦大学,云图数字,华为云等嘉宾演讲分享,内容涵盖金融、通信,工业物联网,智慧水利,智慧园区,人机物融合,智慧新人居等领域的现在与未来。02 技术前沿论坛 拓扑边缘计算纵横空间前沿技术分论坛围绕KubeEdge的各个SIG展开,技术突破涵盖SIG AI、KubeEdge SIG Device-IOT、SIG Scalability、SIG Testing、SIG Node、SIG Robotics、SIG Security、SIG Networking等深入的产品讨论和更新,这将帮助开发人员了解边缘新技术的细节。03 生态创新论坛 边缘生态里的创新视界生态创新分论坛内容涵盖汽车场景落地挑战,轻量级的WebAssembly运行管理,KubeEdge在Android上的运行,通过云原生增强边缘AI,云原生时序数据库等探讨。由上汽集团,SecondState ,中科创达、VMware、瀚博半导体、StreamNative以及华为云专家分别分享。04 应用实践论坛 覆盖各行各业实践经验应用实践论坛解答了使用边缘技术解决各行各业在实际生产和应用中需要面对的问题,由上海东方希望、忽米网、中通吉网络、青云、EMQ、南方电网、上交大与中科大、中科院、openEuler、中国移动等从业专家提供实践经验。● 如何通过KubeEdge加速边缘计算技术在重化工行业的应用与实践?● 如何通过KubeEdge助力产业数字化转型的实践经验?● 如何在通过KubeEdge解决现代物流体系下就近计算场景中遇到的挑战?● 如何通过Kubesphere+KubeEdge打造金融业云边一体化平台?● 如何结合KubeEdge打造IIOT解决方案?● 如何在电力行业中实施KubeEdge应对挑战?● 如何看待Sedna中边云协同终身学习在楼宇冷机控制领域的使用场景?● 在信息高铁中,如何基于KubeEdge的端边云一体化系统设计?● KubeEdge集成多场景容器引擎iSulad、以及openEuler操作系统的细节?● 如何通过KubeEdge打造视频云智能平台,以及其在边缘云场景下的实践运用?在应用实践论坛,开发者们可以找到答案。是相聚,是探索,是革新,是领航!KubeEdge Summit 2022,为行业伙伴、开发者们,发现更多边缘计算的可能性,未来已来,边缘就在此刻。添加小助手微信获取峰会回顾材料PPT及视频
  • [技术干货] 【云原生】Docker部署数据库的持久化
    在上一篇基于docker的安装中,我们使用enmotech的最新镜像完成了安装和启动。容器部署非常方便,卸载更是简单。但是这个特点如同一柄双刃剑,带来便利的同时,也会有一些缺点。容器一旦删除,容器内的所有数据和配置都会丢失。即使重新运行一个新的容器,得到的不过是一个崭新的初始状态的数据库。所以,对于数据库这种需要持久化的数据来说,还需要看下如何才能防止因为容器的删除或损坏导致数据的丢失。在openGauss数据库中,通过指定相关参数来实现此功能。数据库持久化启动我们本次持久化测试的环境基于上一篇在docker部署openGauss。我们先把上次启动的容器实例删掉。[root@pekphisprb70593 docker]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 573ea1edffb8 enmotech/opengauss:3.0.0 "entrypoint.sh gauss…" 3 days ago Up 3 days 5432/tcp opengauss [root@pekphisprb70593 docker]# docker stop 573ea1edffb8 573ea1edffb8 [root@pekphisprb70593 docker]# docker rm 573ea1edffb8 573ea1edffb8以下命令使用原opengauss镜像启动一个容器:docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /enmotech/opengauss:/var/lib/opengauss -p 15432:5432 enmotech/opengauss:3.0.0其余参数的解释可以参考上一篇安装。这里我们主要关注下 -p   -v两个参数。-p参数:openGauss的默认侦听启动在容器内的5432端口上,如果想要从容器外部访问数据库,则需要在docker run的时候指定-p参数。比如以上命令将允许使用15432端口在容器外访问数据库。上述命令正常启动容器数据库之后,可以通过外部的gsql进行数据库访问。-v 参数:指定Docker中openGauss的所有数据文件,容器内是/var/lib/opengauss目录 ,宿主机是/enmotech/opengauss目录。如果宿主机的/enmotech/opengauss如果不存在,docker会自动创建,但是必须是绝对路径。Docker对其拥有读写权限。在容器内部查看数据库目录。如下图,已在容器内/var/lib/opengauss创建了data目录。[root@pekphisprb70593 docker]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 89747134cd4d enmotech/opengauss:3.0.0 "entrypoint.sh gauss…" About a minute ago Up About a minute 0.0.0.0:15432->5432/tcp, :::15432->5432/tcp opengauss [root@pekphisprb70593 docker]# docker exec -it 89747134cd4d /bin/bash root@89747134cd4d:/# cd /var/lib/opengauss/data/ root@89747134cd4d:/var/lib/opengauss/data# ls asp_data gs_gazelle.conf pg_audit pg_errorinfo pg_location pg_notify pg_snapshots PG_VERSION postmaster.opts undo base gs_profile pg_clog pg_hba.conf pg_log pg_perf pg_stat_tmp pg_xlog postmaster.pid gaussdb.state gswlm_userinfo.cfg pg_csnlog pg_ident.conf pg_logical pg_replslot pg_tblspc postgresql.conf postmaster.pid.lock global mot.conf pg_ctl.lock pg_llog pg_multixact pg_serial pg_twophase postgresql.conf.lock sql_monitor 我们在宿主机上查看下数据库目录。如下图,已在宿主机上/enmotech/opengauss创建了data目录。可以看到容器中的数据已存储到操作系统中。数据持久化验证下面我们通过建表、插入数据查看是否可以完成数据的持久化存储。进入容器,登录数据库。[root@pekphisprb70593 docker]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 89747134cd4d enmotech/opengauss:3.0.0 "entrypoint.sh gauss…" About a minute ago Up About a minute 0.0.0.0:15432->5432/tcp, :::15432->5432/tcp opengauss [root@pekphisprb70593 docker]# docker exec -it 89747134cd4d /bin/bash root@89747134cd4d:/var/lib/opengauss/data# su - omm omm@89747134cd4d:~$ gsql omm=# 是个新的数据库实例,看下我之前安装时测试创建的用户wxx在不。不出所料,就是不存在的。因为之前操作的时候并没有进行持久化的启动。创建表test1,然后插入数据。create table test1(id int,name varchar(20)); INSERT INTO test1 VALUES (1, 'oligei');关闭数据库。omm@89747134cd4d:~$ gs_ctl stop -D /var/lib/opengauss/data/ [2022-07-19 02:46:25.253][423][][gs_ctl]: gs_ctl stopped ,datadir is /var/lib/opengauss/data waiting for server to shut down....[root@pekphisprb70593 docker]#启动数据库。[root@pekphisprb70593 docker]# docker start 89747134cd4d 89747134cd4d [root@pekphisprb70593 docker]# docker exec -it 89747134cd4d /bin/bash root@89747134cd4d:/# su - omm omm@89747134cd4d:~$ gsql验证一下容器重启后,原来的数据还在。只是重启的话,那数据没丢一点都不意外。我们更多关注的是容器删除这种情况。[root@pekphisprb70593 docker]# docker stop 89747134cd4d 89747134cd4d [root@pekphisprb70593 docker]# docker rm 89747134cd4d 89747134cd4d [root@pekphisprb70593 docker]# docker exec -it 89747134cd4d /bin/bash Error: No such container: 89747134cd4d可以看到原容器已删除成功。现在重新启动,看下是否持久化成功。这里还是需要使用之前指定的存储路径的。[root@pekphisprb70593 docker]# docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /enmotech/opengauss:/var/lib/opengauss -p 15432:5432 enmotech/opengauss:3.0.0 [root@pekphisprb70593 docker]# docker ps [root@pekphisprb70593 docker]# docker exec -it 74b94a7bda80 /bin/bash root@74b94a7bda80:/# su - omm omm@74b94a7bda80:~$ gsql omm=# select * from test1;结果上个图。由上图也可以看出,原来的表记录依然存在,数据库持久化成功。
  • [技术干货] 【云原生】使用Docker部署openGauss
    Docker是一个开源的应用容器引擎,让开发者可以把应用及依赖包打包到一个可移植的容器中,然后发布到流行的Linux或Windows机器或虚拟机上。openGauss是一款高性能、高安全、高可靠、高智能的企业级开源关系型数据库。openGauss 3.0.0 发布后,云和恩墨制作了docker版本。基于此, 我们可以不需要使用原始安装包和一系列安装配置,可以直接运行docker镜像的版本。本文主要介绍通过Docker安装openGauss 3.0.0,方便DevOps用户的安装、配置和环境设置。1.安装Docker首先准备一台x86_64已安装了CentOS 7.6的服务器。我用的还是上次centos安装时找小伙伴申请的华为云ECS服务器,不过卸载掉了已安装的openGauss。(可选)配置yum源。yum是centos下更新、管理软件的命令,yum源是yum命令去哪里取安装包的地图,yum命令查询yum源也就是repo文件上配置的地址去取相应的rpm包进行安装。常见的yum源:华为云、网易、阿里云等。我使用的是华为云的镜像 https://mirrors.huaweicloud.com/home ,需要先注册。然后按照图片指示和网站描述的步骤和命令进行操作,注意换一下CentOS的版本。执行wget 获取repo的时候,如果执行失败, 可以尝试把https 换成http。如果你可以直接执行 yum search zlib-devel 而没有报错的话就说明无需额外配置,可以直接下一步了。有些公司内无法连接公网的需要自己配置相应的公司内部的yum源。然后下载需要的安装包。yum install -y yum-utils等待下载完成。设置镜像的仓库 。这里我还是使用的是华为云的镜像,然后按照图片指示和网站描述的步骤和命令进行操作,注意根据OS切换页签到Fedora/CentOS/RHEL这里。 PS: 这个也可以是其他网站的源,网上有很多,这里我就不再赘述。这里第2步执行wget 获取repo的时候,如果执行失败, 可以尝试把https 换成http。执行 sudo yum install docker-ce 的时候要根据提示输入y ,等到提示Complete ! 就安装好了。启动Docker,状态为active(running)就OK。systemctl enable docker systemctl start docker systemctl status docker2. 配置Docker设置docker加速。由于国内直接访问docker hub网速很慢,拉取镜像的时间很长。通常我们使用镜像加速或者从国内的一些平台镜像仓库上拉取。创建 /etc/docker/daemon.json 新增内容 。cd /etc/docker/ vi daemon.json配置几条国内的加速地址。我这分别是Docker中国区的、网易的和中国科技大学的。{ "registry-mirrors": [ "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn"] }重启docker。systemctl daemon-reload service docker restart执行 docker info 命令查看最后是否有新加的registry-mirrors部分。拉取hello world验证下,如图所示表示成功。docker pull hello-world3 拉取openGauss镜像openGauss 3.0.0 有企业版和轻量版。轻量版定位是在软硬件资源受限场景下仍可使用openGauss,但是保留了企业版大部分的特性,轻量版通过参数默认关闭的特性:Ustore、Asp、增量检查点、双写、列存、段页式存储等,还有些不支持的特性如ORC文件访问、Kerberos安全校验、AI、全密态数据库、CM、OM。工具也进行了精简,保留了用户常用的gsql、gs_ctl、gs_guc、gs_dump、gs_restore等工具,和安装部署、升级的工具liteom。但是对于个人或者实验环境也足够了。前两部稍微繁琐一丢丢,但是配置好了一劳永逸,可以随意拉镜像了。openGauss镜像这里我们用的云和恩墨的镜像。从3.0.0版本开始(包括3.0.0版本)容器使用Lite版安装包,基础镜像的大小进一步降低到100MB以下;默认启动后的空载内存占用小于200MB;在容器内部的操作系统级别添加vi,ps等基础命令。因为3.0.0是最新版本,所以latest就是3.0.0。这里,直接用的指定版本。docker pull enmotech/opengauss:3.0.0执行docker images查看下我们的已有镜像,enmotech/opengauss:3.0.0 也在此列。4. 开启实例镜像拉取后就可以一条命令启动实例。GS_PASSWORD=Enmo@123 可以修改成自己熟悉的密码。docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 enmotech/opengauss:3.0.0GS_PASSWORD:设置openGauss数据库的超级用户omm以及测试用户gaussdb的密码。如果要从容器外部(其它主机或者其它容器)连接则必须要输入密码。GS_NODENAME:数据库节点名称,默认为gaussdb。GS_USERNAME:数据库连接用户名,默认为gaussdb。GS_PORT:数据库端口,默认为5432。除了GS_PASSWORD外都可以使用默认值。若要设定非默认值,和GS_PASSWORD一样使用 -e 设定。进入容器,测试连接[root@pekphisprb70593 dockerfiles]# docker ps --获取CONTAINER ID [root@pekphisprb70593 dockerfiles]# docker exec -it 1d54ee4a5f40 /bin/bash --把这个命令里的 1d54ee4a5f40 修改为实际的ID然后就和在普通服务器一样操作了。openGauss镜像配置了本地信任机制,因此在容器内连接数据库无需密码。root@1d54ee4a5f40:/# su - omm omm@1d54ee4a5f40:~$ gsql使用docker安装确实简单又快捷。5. Q&A.Q:docker 启动实例的时候报错“docker: Error response from daemon: Conflict. The container name "/opengauss" is already in use by container”,但是docker ps又查不到,而且也连不上 ?A:先执行docker ps -a 查看所有进程,看到处于Exited  状态。之前已经启动过opengauss这个名字的实例了,再次执行的话就会报冲突。至于查不到,原因很可能是启动后重启了docker。解决办法有两个,一是创建实例的时候修改实例名,如opengaussNew;二是删除原来的opengauss实例,然后重新启动实例。docker rm 实际的CONTAINER IDQ:如果不需要了,要怎么卸载?A:如果不需要了,就可以不需要卸载啊后处理,直接通过删除容器的方式删除数据库。−删除容器docker ps -a docker rm 实际的CONTAINER ID−删除镜像docker rmi -f 镜像ID
  • [云动向] 深耕数字化,引领云原生,服务更多开发者
    华为伙伴暨开发者大会 2022期间,华为云在线上举办“创新无限,一切皆服务”技术论坛。会上,华为云CTO张宇昕宣布云原生2.0全景图全面升级,从基础设施即服务、技术即服务、经验即服务三个维度带来多项全新云服务,并发布《云原生2.0架构白皮书》。同时,华为云开源分布式云原生内核、开源华为云GaussDB时序时空数据库内核,推出D-PLAN计划,打通AI模型变现通路,构建持续创新、开放的技术生态。华为云CTO张宇昕发表主题演讲华为云CTO张宇昕表示:“华为云围绕一切皆服务,持续践行云原生。通过应用开发生产线、数据治理生产线、AI开发生产线和数字内容生产线的融合,让应用、数据、模型经验和数字内容的呈现和交互有机结合。使得企业不断通过新技术、新生产线构建新生产方式,快速获取新的能力,创造新价值。”一切皆服务,华为云云原生2.0全景图再升级为赋能云原生企业智能升级,实现“资源高效、极致体验、万物互联、应用敏捷、业务智能、安全可信、行业使能”,华为云云原生2.0全面升级。匹配华为云“一切皆服务”业务战略,在基础设施即服务方面,华为云进一步打造一致体验的分布式云原生基础设施;通过安全云脑,把AI融入云原生安全体系,提升检测能力和运营效率,让安全更智能。在技术即服务方面,为了企业能够更好的快速构建新型生产方式,华为云整合打造了四大生产线及多种云原生技术,让企业快速获取新的技术能力,提升生产效率,从而支撑企业的持续创新和快速发展。在经验即服务方面,华为云继续增强基础aPaaS能力,将华为积累的更多基础能力开放出来。本次全新发布的《云原生2.0架构白皮书》,总结云原生2.0的十大典型架构特征,分享华为云原生架构设计方法,详细解读基于华为云云原生产品的架构设计模式,华为云首次向产业界从软件架构设计角度分享对企业云化、数字化转型的系统化思考、建议与展望,加速云原生在全行业的落地。四大生产线服务“长剑出鞘”,助力开发者高效创新华为云认为,数字化、智能化时代,企业的IT资产主要包含三方面:软件资产、数据资产、AI模型资产。同时,这些资产不只需要服务于物理世界,还需要支撑企业面向未来的虚拟数字世界构建能力。比如企业生产线、城市信息的建模、仿真、交互。基于此,华为云持续打造技术即服务,在去年发布了三大生产线服务,并在此次大会期间推出了全新的数据治理生产线DataArts,实现一站式数据入湖、数据准备、数据分析、数据资产等全流程的数据治理,同时融合智能化治理能力,帮助数据开发者大幅提升效率。如今的华为云四大生产线服务包含软件开发生产线DevCloud、数据治理生产线DataArts、AI开发生产线ModelArts以及数字内容生产线MetaStudio。软件开发生产线DevCloud把华为的全流程软件开发经验放到华为云上,提供给开发者使用;数据治理生产线DataArts帮助企业更便捷高效地管理和使用数据,释放数据价值;AI开发生产线ModelArts让AI开发更加简单高效;数字内容生产线MetaStudio让各行业可以便捷地在云上生产数字内容、开发3D应用,打造虚拟演唱会、虚拟展会、办公协作、工业数字孪生等各种元宇宙应用场景,让海量用户在其中实时无缝沟通。四大生产线可以帮助各行各业的软件开发更简单快速地完成SaaS化,在云上创造更多新价值。多个重磅新品发布,所见即所得大会期间,华为云推出多个全新云服务,数字人直播和视频制作服务也全面上线。开发者可直接调取对应的接口API,快速上线直播及视频内容制作,5秒生成风格化数字人。值得一提的是,华为云MetaStudio还将提供写实数字人服务,整个制作周期从业界2个月可缩短至7天以内,极大减少艺术家制作写实数字人的周期和成本,有望在综艺、影视等行业广泛运用。AI应用开发框架ModelBox可以实现AI应用一次开发、全场景部署。基于盘古驱动的代码大模型,华为云智能化应用构建平台,重新定义应用构建流程,彻底打通从需求-设计-开发的全链路,根据目标场景的业务需求,沉淀行业Know-how,生成既有静态内容、样式、布局,又有业务逻辑,数据与交互表达的行业应用,同时在人机协同的理念下, 引入多模态AI与NLP大模型,进行启发式的端到端零代码构建行业应用。软件开发方面,桌面IDE CodeArts,内置了华为云开发套件,可以快速连接220多个云服务和4500多个华为云API,让开发更便捷。此外,华为云还推出了测试自动化工厂,在国内首创了通过思维导图进行测试设计,加载速度相比业界有5倍提升,同时也是业界首家支持亿级用例管理的厂商,加快业务迭代上线。创新二进制软件成分分析服务,无需依赖源码,就能快速检查产品软件的开源合规风险、安全漏洞及信息泄露风险,实现了上架合规问题小时级的全自动检测、可以大幅提升移动应用App上架效率提前识别合规风险。此外,融合计算引擎方面,华为云GaussDB(for MySQL)也迎来了全新能力升级,HTAP正式商用,支持一站式数据处理,让应用使用更加透明,及时精准的数据分析,轻松助力商业决策。开源开放,实现技术生态商业闭环产业共建方面,华为云也秉承持续开放,贡献开源社区的原则。从2015年与业界厂商共同创立CNCF后,华为云先后向CNCF贡献了KubeEdge、Volcano、Karmada等多个项目,也开源了服务器操作系统EulerOS。基于UCS的成功实践,本次论坛,华为云构建了开源的分布式云原生套件Kurator, 其中包括新增的开源分布式云原生服务中心 Kappital,可以帮助业界实现云原生应用服务化,并构建全生命周期管理平台,助力企业快速搭建分布式云原生平台,实现企业业务跨云、跨边分布式化升级开发。同时开源的还有华为云GaussDB时序时空数据库内核,命名为openGemini,它面向物联网、运维监控等业务场景,具备创新的架构设计、卓越的读写性能、高效的数据分析能力和数据压缩能力,是企业数字化转型升级,海量数据处理的最佳选择。希望与开发者、企业一起,共同推动时序数据库的技术创新,共建开放生态。基于昇腾、MindSpore、ModelArts这些全栈服务能力,华为云正式推出了D-PLAN计划。目前D-PLAN依托华为云的AI Gallery,已经汇聚了5万多个AI相关的资产,已经有70多所高校通过AI Gallery进行经验分享和交流,涉及六大行业,25个细分场景。下一阶段,华为云将打通AI Gallery和华为云市场,在技术交流的基础上,提升商业闭环的效率。过去的一年,是华为云与伙伴、开发者共同加速成长的一年。越来越多的伙伴和开发者加入了华为云。华为云的伙伴数量从20000家增加到38000家;开发者数量从180万增加到302万,伙伴在华为云云市场上架的商品数量从4000个增加到7400多个。继往开来,华为云将继续和合作伙伴、开发者一起,通过经验即服务、技术即服务、基础设施即服务,实现一切皆服务,共创新价值。 
  • [技术干货] 【云原生】内存数据库如何发挥内存优势[转载]
    与以磁盘存储为主的普通数据库相比,内存数据库的数据访问速度可以高出几个数量级,能大幅提高运算性能,更适合高并发、低延时的业务场景。不过,当前大部分内存数据库仍然采用 SQL 模型,而 SQL 缺乏一些必要的数据类型和运算,不能充分利用内存的特征实现某些高性能算法。仅仅是把外存的数据和运算简单地搬进内存,固然也能获得比外存好得多的性能,但还没有充分利用内存特征,也就不能获得极致的性能。下面我们来看看,有哪些适合内存特征的算法和存储机制,可以进一步提升内存数据库计算速度。指针式复用我们知道,内存可以通过地址(指针)来访问。但 SQL 没有用内存指针表示的数据对象,在返回结果集时,通常要把数据复制一份,形成一个新的数据表。这样不仅多消耗 CPU 时间(用于复制数据)而且还会占用更多昂贵的内存空间(用于存储复制的数据),降低内存使用率。除了 SQL 型的内存数据库外,Spark 中的 RDD 也有这个问题,而且情况更严重。为了保持 RDD 的 immutable 特性,Spark 在每个计算步骤后都会复制出新的 RDD,造成内存和 CPU 的大量浪费。所以,即使耗用了巨大资源,Spark 也仍然做不到高性能。相比之下,SQL 型的内存数据库通常还会优化,在 SQL 语句中的计算会尽量使用内存地址,通常要比 Spark 的性能更好。但是,受到理论限制,实现 SQL 的逻辑时,返回的结果集就必须复制了。如果涉及多步骤的过程运算,要多次在上一步的结果集(临时表)基础上进一步计算,SQL 的劣势就会很明显了。事实上,如果没有改变数据结构,我们可以直接用原数据的地址形成结果集,不需要复制数据本身,仅仅多保存一个地址(指针),同时减少 CPU 和内存的消耗。SPL 扩展了 SQL 的数据类型,支持这种指针式复用机制。比如,对订单表按照订单日期(odate)范围过滤后,分别求出订单金额(amount1)大于 1000 和运货费(amount2)大于 1000 的订单,再计算出两者的交集、并集和差集,最后将差集按照客户号(cid)排序。SPL 代码大致是这样:A    B1    =orders.select(odate>=date(2000,1,1) && odate<=date(2022,1,1))    2    =A1.select(amount1>1000)    =A1.select(amount2>1000)3    =A2^B2    =A2&B24    =A2\B2    =B2\A25    =A4.sort(cid)    =B4.sort(cid)以上代码中有好几个步骤,有的中间结果也被用了多次,但由于使用的都是订单表记录的指针,所以内存占用增加的很少,也避免了记录复制的耗时。        外键预关联外键关联是指用一个表(事实表)的非主键字段,去关联另一个表(维表)的主键。比如订单表中的客户号和产品号分别关联客户表、产品表的主键。现实运算中这种关联可能多达七八个甚至十几个表,还可能出现多层的关联。SQL 数据库通常使用 HASH JOIN 算法来做内存连接,需要计算和比对 HASH 值,过程中还会占用内存来存储中间结果,关联表很多时计算性能就会急剧下降。其实,我们也可以利用内存指针引用机制事先做好关联。在系统初始化阶段,把事实表中的关联字段值转换为对应维表记录的指针。因为维表的关联字段是主键,所以关联记录唯一,将外键值转换成记录指针不会引起错误。在后续计算中,需要引用维表字段时,可以用指针直接引用,无需计算和比对 HASH 值,也不需要再存储中间结果,从而获得更优的性能。SQL 没有记录指针这种数据类型,也就无法实现预关联了。SPL 则从原理上支持并实现了这种预关联机制。例如,完成订单表和客户表、产品表预关联的代码大致是这样:A1    =file(“customer.btx”).import@b().keys@i(cid)2    =file(“product.btx”).import@b().keys@i(pid)3    =file(“orders.btx”).import@b().switch(cid,A1;pid,A2)4    >env(orders,A3)A1、A2 加载客户表和产品表。A3:加载订单表,将其中的客户号 cid、产品号 pid 转换为对应维表记录的指针。A4:将完成预关联的订单表存入全局变量,供后续计算使用。系统运行时,按照产品供应商过滤订单,再按客户所在城市分组汇总的代码大致是下面这样:A1    =orders.select(pid.supplier==“raqsoft.com”).groups(cid.city;sum(pid.price*quantity))订单表中的 pid 已经转换为产品表记录的指针,所以可以直接用“.”操作符引用产品表记录。 不仅书写更简单,而且运算性能也快得多。只是两、三个表关联时,预关联和 HASH JOIN 的差别还不是非常明显。这是因为关联并不是最终目的,之后还会有其它很多运算,关联本身运算消耗时间的占比相对不大。但如果关联情况比较复杂,涉及的表很多,以及有多层的时候(比如订单关联产品,产品关联供应商,供应商关联城市,城市关联国家等等),预关联的性能优势会更明显。序号定位与外存相比,内存的另一个重要特征是支持高速的随机访问,可以快速从内存表中按指定序号(也就是位置)取出数据。在做查找计算时,如果被查找的值正好是目标值在内存表中的序号,或者很容易通过被查找值计算出目标值的序号,我们就可以用序号直接取目标记录。这种方法不需要进行任何比对就能直接取出查找结果,性能不仅远远好于遍历查找,也好于使用索引的查找算法。但是,SQL 以无序集合为基础,不能按序号取成员,只能用序号去查找。如果没有索引就只能遍历查找,会非常慢。即使有索引也要计算 HASH 值或用二分法查找,速度也比不上直接定位。而且,建立索引也会占用昂贵的内存。如果数据表中没有序号还要先排序再硬造个序号时,性能就会更差。SPL 以有序集合为基础,提供序号定位功能。比如订单表中的订单号是从 1 开始的自然数。在查找订单号 i 时,直接取订单表中的第 i 条记录就行了。再比如数据表 T 从 2000 年到 2022 年每天存储一条数据,现在需要查询指定日期的记录。日期虽然不是目标值的序号,但是我们可以先算出指定日期距离起始日期的天数。这就是目标值的序号,然后再用序号取 T 表记录就可以了。对表 T 用序号定位查找 2022 年 4 月 20 日记录的代码,大致是下面这样:A1    =date(2022,12,31)-date(1999,12,31)2    =T_orginal.align@b(to(A1),dt-date(1999,12,31))3    =env(T,A5)4    =T(date(2021,4,20)-date(1999,12,31))A1:计算出 2000 年到 2022 年总天数是 8401 天。A2:用原始的 T 表记录计算出距离起始日期的天数,再和 to(A1)这个自然数集合 [1,2,3,…,8401] 对齐,空缺的日期会用 null 补齐。align 的 @b 选项表示对齐时将使用二分法来查找位置,这样完成对齐动作也会更快一点。A3:计算好的结果,放到全局变量 T 中。A4:要查找 2021 年 4 月 20 日记录,求出这个日期和起始日期距离 7781 天,直接取出 T 表中第 7781 条记录就可以了。A1 到 A3 是对齐计算,用于处理空缺的日期,可以放在系统初始化阶段。在查找计算时,用 A4 中的序号定位代码就能得到查找结果,实际查找的日期可以作为参数传入。集群维表当数据量太大,超出单机内存时,就要使用集群来加载这些数据。许多内存数据库也支持分布式计算,通常是将数据分成多段,分别加载到集群不同分机的内存中。JOIN 是分布式计算的一个麻烦任务,会涉及多个分机之间的数据传输。严重的时候,传输造成的延迟会抵消集群分摊计算量得到的好处,会出现集群变大反而性能并不能提升的现象。SQL 体系下的分布式数据库,通常是将单机 HASH JOIN 方法扩展到集群上。每个分机根据 HASH 值将本机数据分发到其他分机,确保相关联的数据在同一分机上。然后再在各个分机上做单机连接。但是,HASH 方法在运气不好的时候,可能会造成数据分配的严重不均衡,需要借助外存来缓存这些分发到的数据,否则可能因为内存溢出而导致系统崩溃。但是,内存数据库的主要特征就是将数据加载到内存中计算,出现外存缓存会严重拖慢计算性能。实际上,外键关联的事实表和维表有很大区别。事实表一般都比较大,要用各个分机内存分段加载才能装的下。正好事实表也比较适合分段,每个分段的数据都相互独立,分机之间不需要相互访问。而维表记录则会被随机访问,事实表的任何一个分段都可能关联全部维表记录。我们可以利用事实表和维表的区别,对集群的外键关联提速。如果维表比较小,则将维表全量数据复制到所有分机内存中。这样,每个分机中的事实表分段和全量维表就可以继续完成预关联,完全避免了关联过程中的网络传输。如果维表也很大,单机内存放不下,只能在各分机内存中分段加载。这时,没有一个分机上有全量的维表,外键关联计算就无法避免网络传输了。不过传输内容并不算很大,只涉及事实表的外键和维表关联记录的字段,事实表其它字段不需要传输,计算可以直接完成,过程中也不会产生缓存数据。SPL 从原理上区分维表和事实表,针对维表较小和维表较大两种情况,分别提供了维表复制机制和分段维表机制,实现了上述算法,能显著提高集群情况下外键关联的计算性能。备胎式容错集群系统必须要考虑容错,内存数据的容错和外存是不同的。外存一般使用副本的方法,即同一份数据有多个副本,某个分机失效后仍然能在其它分机找到数据。这种机制的存储利用率很低,只有 1/k(k 是副本数量)。但是,对于内存中的数据,却不能使用这种副本容错方法。这是因为硬盘足够便宜且几乎可以无限扩容,但是内存要昂贵的多而且扩容有上限。只有 1/k 的内存利用率是无法容忍的。内存容错需要不同于外存的专门手段。SPL 提供了备胎式容错机制,将数据分成 n 段后分别加载到 n 个分机的内存中。然后准备 k 个空闲的分机作为备用机。当正在运行的某个分机失效时,则立即启用某个备用机,临时加载失效分机的数据,和其它分机重新组成拥有完整数据的集群继续提供服务。失效的分机排除故障后恢复使用,可以再充当备用机。整个过程和汽车更换备胎的模式很像。备胎式容错机制的内存利用率可以高达 n/(n+k),远远高于副本式容错的 1/k。能加载进内存的数据量通常不会非常大,分机失效后临时加载的时间并不多,集群服务就可以较快地恢复。回顾与总结内存数据库的计算体系,必须充分利用内存的特征才能获得极致性能。从数据计算的角度来看,内存主要优点有:支持指针引用、支持高速随机访问、并发读取能力强。内存的缺点是:成本高昂、扩容有上限。而 SQL 计算体系中缺乏一些必要的数据类型和运算,比如:缺少记录指针类型,不支持有序运算,JOIN 定义过于笼统,不区分 JOIN 类型等,从原理上就不能充分利用内存的上述特征实现某些高速算法。基于 SQL 的内存数据库,通常只是简单的照搬外存数据结构和运算,会出现各种问题。比如:记录式复制过多消耗 CPU 和内存;查找和 JOIN 性能没有达到极致。再比如集群方面:内存利用率过低;大量网络传输导致分机数量增加但性能反而下降;多机 JOIN 出现外存缓存等等。开源数据计算引擎 SPL 扩展了数据类型和运算定义,可以充分利用内存的特征,从而实现多种高性能算法,让性能达到极致。其中,指针式复用利用内存特有的指针引用机制,节省了内存空间,而且速度更快。预关联同样利用指针引用机制,在初始化阶段完成很耗时的外键关联,后续计算中直接使用关联好的结果,计算速度显著提高。序号定位利用有序性,充分发挥内存高速随机访问的优势,不用做任何计算和比对,直接用序号读取记录,性能好于 HASH 索引等查找算法。集群维表有效避免或减少了网络传输、避免了外存缓存,备胎式容错在保证高可用性的前提下,有效提高了集群内存利用率。除此之外,SPL 还提供了排号键、序号索引、数据类型压缩等等其它方法。程序员可以根据具体的场景,有针对性的采用这些方法,就能充分发挥内存的优势,从而有效提升内存数据计算的性能。————————————————版权声明:本文为CSDN博主「石臻臻的杂货铺」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/u010634066/article/details/125633121
总条数:441 到第
上滑加载中