-
申请开通DataArts Insight服务,并完成服务授权即可开启数据自助分析之旅,洞察数据的奥秘。前提条件DataArts Insight尚在公测阶段,请先申请产品公测,再参考本节操作开通服务。申请DataArts Insight公测。开通DataArts Insight服务套餐首次使用DataArts Insight服务请按照控制台引导开通服务,并完成委托授权。说明:服务授权需要主帐号或者用户组Admin中的子帐号进行操作。如果需要对委托权限进行调整,可在“委托授权”页面中进行修改。单击“开通服务”。阅读并勾选服务协议。图1 开通DataArts Insight服务获取云服务使用权限。授权后DataArts Insight才拥有对所选云服务的使用权限。授权后可在系统设置-授权功能下再次对云服务的使用进行授权或取消授权同意授权后,DataArts Insight将在统一身份认证服务IAM为您创建委托,授权成功后,可以进入服务委托列表查看。表1 DLI委托权限列表 权限名详细信息备注VPC AdministratorDataArts Insight数据源连接需要使用VPC、子网、路由、对等连接功能,因此需要获得使用VPC(虚拟私有云)的VPC Administrator权限。由于云服务缓存需要时间,授权需3分钟左右才能生效。IAM ReadOnlyAccessDataArts Insight对未登录过DLI的用户进行授权时,需获取IAM用户相关信息。因此需要IAM ReadOnlyAccess权限。单击“确认”完成服务授权后,即可开始用DataArts Insight服务。
-
目前,智能数据洞察(DataArts Insight)服务处于公测中,您可以申请公测,免费试用产品。前提条件由于公测期间资源有限,仅限已通过实名认证的华为账号申请公测。申请公测如果您已有华为账号并已开通华为云,请继续执行以下步骤。如果您还没有华为账号,参考注册华为账号并开通华为云。登录DataArts Insight DataArts Insight申请公测页面。填写公测申请表。在申请公测页面,填写公测申请表。勾选“同意《公测试用服务协议》”,单击“申请公测”。提交公测申请。系统提示已提交公测申请,预计5个工作日以内完成审核,请您耐心等待。审批成功。系统后台审批通过之后,会通过邮件(如果在申请表中填写了邮箱地址)或短消息的方式通知您。在“我的公测”页面单击“前往控制台”,或者重新进入DataArts Insight管理控制台即可使用DataArts Insight服务。公测期间产品规格信息DataArts Insight公测期间提供公测版本供用户体验,且公测期间免费试用。企业版规格如表1所示。表1 DataArts Insight公测期间企业版规格版本规格说明支持的用户数量适用场景企业版支持BI加速引擎支持盘古 for BI支持智能洞察50面向个人分析师或开发者,满足通常场景自助分析功能体验诉求。
-
VLDB技术论文《Taurus MM: bringing multi-master to the cloud》解读华为《Taurus MM: bringing multi-master to the cloud》论文被国际数据库顶会VLDB 2023录用,这篇论文里讲述了符合云原生数据库特点的超燃技术。介绍了如何通过各种黑科技减少云原生数据库的网络消耗,进而提升云原生数据库的性能和稳定性。下面就让我们抽丝剥茧,细细品味技术的魅力,揭开华为云数据库多主技术的面纱。说明:技术论文中的Taurus在华为云商用的产品名是GaussDB(for MySQL),是GaussDB(for MySQL)的云原生架构技术版本。一、引言现下,大型高性能数据库通常采用一写(主)多读(副本)这种标准部署方式来提高业务吞吐量。。然而,单主会导致单点故障,同时限制了写扩展性,也就是说带来了可用性和性能的双重挑战。而性能和可用性是衡量一个企业级数据库是否优秀最关键的两个方面。由此多主数据库应运而生。多主数据库有Shared-nothing和Shared-storage两种架构。谷歌Spanner、亚马逊DynamoDB、CockroachDB、OceanBase及其他一些数据库采用了Shared-nothing架构。亚马逊Aurora多主数据库、Oracle RAC和IBM DB2 pureScale采用了Shared-storage架构。对于Shared-nothing架构的多主,每个节点对一个小数据子集执行计算和存储。在高度分区的工作负载场景下,这类架构可以提供非常高的可扩展性。但在如下不均衡的工作负载场景中,其优势受限——节点数越多可能意味着节点间数据交换越多:数据无明显分区特征;工作负载随时间变化;存在热点数据场景。同时,Shared-nothing架构使用分布式提交协议,信息同步多轮交换,降低了多主系统的性能。对于传统的Shared-storage架构,计算层与存储层分离。这类架构由于其高度集成及密集网络通信的特点,需要高端和专用的网络硬件,更适用于对成本不敏感的线下数据中心部署,不适用于云原生数据库。云的最核心特点是通过多用户共享基础设施平摊成本(包括网络硬件)来实现高成本收益。云数据库性能的关键是对共享网络的优化。华为云数据库多主(Multi-Master)专注于从消息的数量和大小两方面减少网络流量,这一目标的达成并不容易,很多公司尝试过,但目前还没有看到成功案例。二、华为云数据库多主黑科技解析那究竟如何实现多主上云呢?华为云数据库多主有哪些硬核技术突破呢?通过对网络流量消耗进行分析和归类后,我们发现主要的网络消耗是由于主节点写页面、时钟同步和锁信息交互三个方面。华为云数据库在如上三个方面进行了探索和尝试,并取得了可喜成绩。下面详细讨论在每类开销上,华为云数据库是如何尽最大可能减少网络计算开销的。1. 减少直接页面写入带来的网络消耗此问题已有解决方案——2020年SIGMOD会议上我们向会议研究团体介绍了华为云原生数据库单主解决方案:“Log As Database”(日志即数据库)。简单说就是华为云数据库计算与存储分离,计算层包含一写(主)多读(副本)。计算层的作用是执行数据库的修改,主要功能有:接入连接、执行查询、管理事务以及生成WAL日志记录(日志用于描述对数据库页所做的修改)。事务更新时先生成日志记录,主节点将这些日志记录传送到存储层的Log Stores中进行存储,通过日志回放生成数据,从而无需通过网络执行整个数据页面的写入,节省了所需的网络带宽。详细见图1。图1:华为云数据库组件及分层架构华为云数据库多主重用了一主多读架构中的思想,采用Shared-storage体系结构,所有Master之间共享日志存储和页面存储,继续沿用悲观并发控制,且引入了全局锁管理器GLM(Global Lock Manager)。各Master维护自己的预写日志(WAL)。用户事务在单主上执行——没有分布式事务。日志记录写入执行事务的主机中。每个Master会定期将带有位置信息标识(哪个Master生成的)的新生成日志提交给所有其他Master。通过位置信息,各Master读取其他所有Master上生成的日志记录,并更新进自己的缓冲池页面中。详细如图2所示。图2:华为云数据库多主组件及分层架构2. 减少时钟同步带来的网络消耗多主数据库特有的第二个网络开销来源是时钟同步。在单主数据库上,事务时钟信息可以直接使用本地物理时钟。然而,在分布式系统中,不同节点上的物理时钟很难精确保持一致。而通过网络连接同步和获取时间戳,会带来无法容忍的时间延迟。因此,对于分布式数据库物理时钟这种方法不再适用。这在业界不是一个新近才提出的问题。早在20世纪70年代,莱斯利·兰伯特就为了解决此问题,提出并发明了标量时钟(常称为逻辑时钟,或兰伯特时钟)。此标量时钟由一个数字组成时间戳,仅在消息交换期间进行不同计算机间的时钟同步。兰伯特时钟的算法简单而优雅,但要通过它创建数据库的分布式快照基本不可能,而分布式快照对分布式数据库的性能又是非常重要的。同时,逻辑时钟无法保存事务间的因果关系。简单说,就是假设𝑇𝑆 (𝑎) < 𝑇𝑆 (𝑏),也就是事务a早于事务b,使用逻辑时钟,无法识别是a导致了b,还是a和b间仅是并发无因果关系。逻辑时钟之后又出现了矢量时钟,用于解决逻辑时钟的局限性。然而,虽然矢量时钟能够创建分布式快照,但是,矢量时钟有一个很大的缺点——加大了消息的大小。数据库之间的消息本来很小,矢量时间戳的加入使消息的大小增大为原来的两至三倍,从而加大了网络开销。华为云数据库团队发明了一种新型的时钟——VS时钟(VECTOR-SCALAR CLOCKS)。其关键的创新是,它既可以产生矢量时间戳,又可以产生标量时间戳,实现优势互补。VS时钟的应用,既达成了较小的网络消耗又保证了数据库全局快照的创建能力。例如,由于每个节点对同一页面的修改必须是串行的,无需关注因果(先后)关系,因此对单个页面修改的日志记录添加时间戳时,发放标量时间戳即可;当为全局快照的创建发放时间戳时,需要使用完整的矢量时间戳以便理清各主节点事务间的先后关系。由于全局快照这一类事件的数量级远小于日志记录,故而全局快照矢量时间戳所带来的空间开销可以忽略不计。3. 优化锁协议减少网络消耗多主数据库的第三个主要网络开销是锁信息交互带来的开销。对数据库的某些更改需要被视为原子更改,例如对内部数据库页的修改,或事务对记录行的修改。通常,数据库使用锁来实现原子性。通过观察我们得到一个重要结论:鉴于所有行都是存储在页面上的,因此要修改或读取对应行,就意味着必须修改或读取此行所在的页面。由此,我们提出了,对于数据库最底层的行页混合锁定,行锁信息不再作为单独的消息进行传递,而是作为页锁的一部分来传递。这种方案,会将锁信息的数量显著减少,从而进一步降低了网络负载。数据库系统的行锁类型有:(普通)共享和独占行锁、间隙锁、next-key锁和意向锁,在华为云数据库多主中讨论的“行锁”包括了所有这些类型的锁。行锁可以以不同的方式管理,我们在分析和对比了下面的三种不同方法后,选择了行锁跟随页锁的方法。GLM管理行锁:让全局锁管理器GLM同时管理页锁和行锁。这种方法每次行锁获取时都需要走GLM,因而会增加网络负载。DB2 pureScale采用了这种方法,并进行了各种优化。GLM管理行锁的方案,网络流量很高,即使在工作负载大部分是分区的场景下,也依然很高;此外,GLM还必须要能支持底层系统使用的所有行锁类型及这些锁之间的复杂交互。在页面上存储行锁:将页面的行锁信息存储在本身所在的页面上。Oracle RAC采用这种方法。华为云数据库未采用这种方法,有两个原因:1)它需要将行锁获取/释放记录写入日志,从而增加了网络负载;2)它需要更改磁盘上的页面格式,华为云数据库由单主升级到多主时必须做这种数据库格式转换,将损失华为云数据库的原有优势。行锁跟随页锁:当Master获取页面锁时,一并获取该页面上的行锁列表,包括持有的锁和挂起的锁请求。之后,Master可以在页面上授予额外的行锁,当然前提是这些行锁要与其页锁兼容。当Master向GLM释放页锁时,同时会将页面上当前行锁的信息发送给GLM。需要说明的是,锁请求挂起的信息虽不是很关键,但它对GLM和Master上的锁调度决策很有用,因此也会传递给GLM。华为云数据库最终选择了这种方法。在华为云数据库中,GLM只管理页锁,不授予或释放行锁,但页锁信息中跟随有行锁信息。GLM将页面上的锁授予Master时,会将页的版本号(如果有)发给Master,从而该Master将拥有页的最新版本,以及页上的行锁列表。接收了页锁的Master会将行锁信息添加到其本地锁管理器LLM中。当Master释放页锁(自愿或响应请求)时,它向GLM递交页面版本号和页面上的行锁列表。在不涉及数据一致性的前提下,Master上的行锁更改不需要立即与其他Master同步。除非另外的Master要请求锁定的页面与当前Master是有锁冲突的同一个页面。这种情况下页锁释放和回收流程将被启用,行锁信息被一并发送到GLM,将很好地避免行锁授予或等待时频繁联系GLM,可以显著减少行锁网络流量。以下是更详细的流程:释放页锁时(自愿或被动响应回收):–Master上:有关页面上所有行锁的信息将发送到GLM。–GLM上:接收到的行锁信息缓存在内存中。请求和授予页锁时:–Master上:为了响应本地事务的行锁请求,Master必须持有行所在页上的锁。如果Master没有拿到所需的页锁,它会首先向GLM发送页锁请求。–GLM上:当页面锁请求到达时,GLM会判断同一页面是否有其他冲突锁或者挂起的其他Master锁请求,如果有,新的Master所请求需要等待。当GLM准备好授予页锁时,它首先回收页面上的冲突锁(如果有),并捕获新接收到的行锁信息;之后将页面锁授予Master,并将响应消息、行锁信息及页面的最新版本号一并发给Master。–Master上:收到页锁授权响应消息后,将行锁信息添加到LLM(Local Lock Manager)中,并刷新页面版本号。本地事务再次尝试后可以成功获取所需的行锁。三、华为云数据库多主架构效果验证我们首先测试了华为云数据库多主架构自身的性能和可扩展性。同时,我们将华为云数据库多主与亚马逊的Aurora 多主(我们所知的唯一一个云原生Shared-storage数据库)进行了对比。最后,我们还将华为云数据库多主与Shared-nothing架构的CockroachDB进行了对比。1. 测试环境说明实验验证运行在一个最多8个主节点的集群上,并在4个具有相同硬件配置的节点上部署了存储层(数据存储和日志存储)。详细见表1。表1:测试环境规格配置项规格说明集群规模4存储节点&最多8个主节点存储节点和主节点的硬件配置相同。CPUIntel Xeon Gold 6278C 2.6GHz CPU 28核*2在每个节点上,主Master独用一个CPU,工作负载驱动程序使用第二个CPU。操作系统CentOS 7.0-Buffer Pool128GB-网络25Gbps-在所有实验中均使用了两个标准工作负载:Sysbench和Percona TPC-C。Sysbench是一个流行的基准测试,它可以生成插入、删除、更新、点查、范围查询及这些类型的各种组合。我们扩展了Sysbench,以便控制数据共享的程度。在一个由N个主节点组成的集群上,实验将表逻辑上分为N+1组。前N组中的表是私有表,即每个组被分配给一个单独的主节点,只有指定的主节点可以访问对应组中的表。最后一个组是共享的,即任何主节点都可以访问此组中的表。当实验指定共享程度为X%时,表示X%的数据库读写访问是针对共享表进行的,其余的读写访问是针对私有表进行的。完全分区的工作负载对应于X=0%,完全共享的工作负载对应于X=100%。实验设置中,对于共享工作负载场景,每个组包括100个表,每个主节点访问100个私有表以及100个共享表。对于完全分区的工作负载,每个组包含200个完全分区的表。每个表有2.35M行数据,每行约200字节, 因此对于所有的实验,每个主节点都可以访问约100GB的数据。TPC-C是评估OLTP系统性能的行业标准性基准。数据按仓库跨主节点分区,但10%的事务访问了远程的数据分区。除非另有说明,我们使用的是1000个仓库配置。2. 华为云数据库多主性能测试结果华为云数据库多主在Sysbench只写、Sysbench读写(80%读取,20%写入)和TPC-C基准测试上的性能表现如图3所示,3(a-c)。在X轴上,集群大小从1个主节点到8个主节点。在Y轴上,显示了绝对吞吐量以及相对于单个主节点的吞吐量。Sysbench测试结果的每条线对应不同程度的数据共享。TPC-C使用的是固定的10%共享查询。对于只读工作负载,由于多版本的存在,其可以完美地扩展,因此这里略去不显示从图中可以看出,对于完全分区的工作负载,随着主节点数量的增加其性能几乎线性扩展。8个主节点集群规模下,10%共享的Sysbench只写和读写场景,相较单个主节点,分别实现了3.5倍、4.5倍的加速; TPC-C工作负载下,相较单个主节点,实现了5倍的加速。正如预期的一样,可扩展性受数据共享程度的影响较大。同样8个主节点集群上,30%共享负载下的只写和50%共享负载下的读写,相较单个主节点,均实现了不到2倍的加速。由于可用的硬件有限,我们未验证16个主节点集群的结果,但从图中不难看出,8个主节点的可扩展性已接近线性。图3. 华为云数据库多主Sysbench和TPC-C性能测试结果3. 与Aurora多主的性能对比图4对比了基于相同CPU核数和内存缓冲池情况下华为云数据库多主和Aurora多主的性能。在所有测试中,我们观察到单主情况下,华为云数据库的性能超过了Aurora。由于Aurora多主除了计算层之外,未暴露其他硬件细节,因此我们只测试对比了各自相对于其单主的性能数据。鉴于Aurora不允许超过4个主节点,因此8个主节点性能测试仅在华为云数据库多主上进行。对于完全分区的工作负载,两个数据库的扩展几乎相同,故测试时省略了不同分区负载的差异对比,而是选取了具有代表性的10%共享负载做性能对比测试。在此较小的共享负载场景下,华为云数据库处理工作负载的能力要好得多。在共享写入工作负载场景下,我们发现Aurora中所有主节点上存在大量因冲突导致的被中止事务,从而带来主节点之间的性能不均衡。华为云数据库的多主由于其基于混合行页锁的并发控制,未发生任何事务中止。图4 华为云数据库多主 VS Aurora多主4. 与CockroachDB的性能对比我们还将华为云数据库多主与基于Shared-nothing架构的CockroachDB(简称CRDB)进行了比较。之所以选择CRDB,是因为它是开源的,且根据相关报告分析,其性能比Spanner和TiDB更好。实验使用两种配置规格,即分别将CRDB和华为云数据库部署在相同的6节点和12节点集群上,从而比较相同硬件条件下双方的性能。由于华为云数据库专门使用4个节点用于存储层,而CRDB为Shared-nothing架构,每个节点上既有计算层又有存储层,因此将6个和12个节点CRDB分别与2个主节点和8个主节点的华为云数据库多主进行了比较。对于CRDB和华为云数据库多主,实验时使用了尽可能大的连接数来提高吞吐量。对于华为云数据库多主来说,每个主节点上的连接数为64个;对于CRDB,每个主节点上的连接数从128到512不等。在CRDB上,我们运行了CRDB附带的类似TPC-C的基准测试。对于华为云数据库多主,我们运行了Percona TPC-C。在表2中列出了1000和5000个仓库的结果。对于每次运行,我们记录了每秒可处理的新订单事务数(tpmC)、事务平均请求时延和95%事务的请求时延。在所有测试场景下:华为云数据库多主吞吐量都明显更高,从6节点、5000个仓库的吞吐量高出60%,到12个节点、1000个仓库的吞吐量高出320%。华为云数据库双主的交易延迟也要低得多,平均请求时延和95%事务的请求时延均低得多。我们还计算了一个扩展比,即12节点相较6节点其吞吐量的增加比例,华为云数据库多主要优于CRDB。正如引言中所指出的,Shared-nothing架构的开销受分布式事务提交的影响更明显,分布式事务提交的开销随着事务中涉及的节点数量的增加而增长。对于给定的工作负载,效率受限于事务复杂性。表2 华为云数据库多主 VS CockroachDB: TPC-C结果 华为云数据库MMCRDB1000w5000w1000w5000w6节点 tpmC250000216000121000137000时延(ms)17/4816/3590/150220/62012节点 tpmC691000734000164000279000时延(ms)21/10619/80150/300590/1280比例因子2.83.41.42效率0.70.80.71.0 四、总结华为云数据库多主是专门为云环境设计的云原生多主OLTP数据库系统。它是一个存算分离的云原生数据库系统,使用全局锁管理器来协调对数据库页和行的读写访问。现实业务中的许多OLTP工作负载大多是可分区的,其中只有一小部分页面在多个主节点之间共享。例如,在TPC-C中,只有10%的访问是对远程仓库的访问。华为云数据库多主设计的一个关键目标是为了在共享程度低的工作负载上实现良好的性能和可扩展性。华为云数据库多主采用了两个关键创新技术: VS(vector-scalar)时钟和混合行页锁,旨在降低网络负载和提高性能。VS时钟通过对系统中更频繁的消息(日志记录)使用单个标量时间戳,而数量很少的消息使用矢量时间戳来降低网络负载。同时,使用VS时钟,系统保留了查看系统级事务一致性状态的能力。混合行页锁技术通过减少发送到全局锁管理器的锁请求数量来提高事务吞吐量和减少延迟。特别是,如果页面被主节点访问一段时间后,行页锁将自动委托给单一的主节点。我们的实验结果证实了华为云数据库多主系统的性能和可扩展性。在TPC-C基准测试中, 4个主节点的最大扩展效率为84%, 8个主节点的最大扩展效率为62%。在最大8个计算节点的集群上,华为云数据库多主在TPC-C上展示了优于Aurora多主和CRDB的性能。
-
中奖结果公示感谢各位小伙伴参与本次活动,本次活动获奖名单如下:请各位获奖的伙伴在9月19日之前点击此处填写收货地址,如逾期未填写视为弃奖。再次感谢各位小伙伴参与本次活动,欢迎关注华为云DTSE Tech Talk 技术直播更多活动~直播简介【直播主题】备份恢复全掌握,数仓数据更安全【直播时间】2023年9月13日 19:00-20:30【直播专家】李文鑫 华为云EI DTSE技术布道师【直播简介】大数据时代,数据的备份恢复是一项不可忽视的系统工作。相对于集群级备份恢复海量的文件操作,物理细粒度备份恢复能够从更小的粒度、以更少的数据文件操作,对数据库对象进行备份与恢复。GaussDB(DWS) Roach工具提供了丰富的物理细粒度备份恢复功能,帮助您更加精确高效地备份恢复指定数据,为您的数据安全保驾护航。直播链接:cid:link_1活动介绍【互动方式】直播前您可以在本帖留下您疑惑的问题,专家会在直播时为您解答。直播后您可以继续在本帖留言,与专家互动交流。我们会在全部活动结束后对参与互动的用户进行评选。【活动时间】即日起—2023年9月14日【奖励说明】评奖规则:活动1:直播期间在直播间提出与直播内容相关的问题,对专家评选为优质问题的开发者进行奖励。奖品:华为云定制U型按摩枕活动2:在本帖提出与直播内容相关的问题,由专家在所有互动贴中选出最优问题贴的开发者进行奖励。奖品:华为云定制POLO衫更多直播活动直播互动有礼:官网直播间发口令“华为云 DTSE”抽华为云定制棒球帽、填写问卷抽华为云定制保温杯等好礼分享问卷有礼 :邀请5位朋友以上完成问卷即可获得华为云定制钢笔礼盒。老观众专属福利:连续报名并观看DTT直播3期以上抽送华为云DTT定制T恤。【注意事项】1、所有参与活动的问题,如发现为复用他人内容,则取消获奖资格。2、为保证您顺利领取活动奖品,请您在活动公示奖项后2个工作日内私信提前填写奖品收货信息,如您没有填写,视为自动放弃奖励。3、活动奖项公示时间截止2023年9月7日,如未反馈邮寄信息视为弃奖。本次活动奖品将于奖项公示后30个工作日内统一发出,请您耐心等待。4、活动期间同类子活动每个ID(同一姓名/电话/收货地址)只能获奖一次,若重复则中奖资格顺延至下一位合格开发者,仅一次顺延。5、如活动奖品出现没有库存的情况,华为云工作人员将会替换等价值的奖品,获奖者不同意此规则视为放弃奖品。6、其他事宜请参考【华为云社区常规活动规则】。
-
2023.08数据库论坛高热【操作指导合集】推荐数据库内存调优cid:link_0数据库内存调优是优化数据库性能的重要步骤之一。通过合理配置数据库服务器的内存参数,可以提高数据库的响应速度、降低磁盘 I/O 操作,从而提升整体系统性能。GaussDB技术解读系列:高安全之密态等值cid:link_1GaussDB是国内首个通过国际CC EAL4+认证的数据库,也是国内首批通过信通院全密态数据库评测、国内首家通过信通院防篡改数据库评测的数据库产品。当注入的 Bean 存在冲突时,到底有多少种解决方案?cid:link_2当我们从 Spring 容器中“拉”取一个 Bean 回来的时候,可以按照名字去拉取,也可以按照类型去拉取,按照 BeanName 拉取的话,一般来说只要 BeanName 书写没有问题,都是没问题的。但是如果是按照类型去拉取,则可能会因为 Bean 存在多个实例从而导致失败。GaussDB技术解读系列之HTAP方向的探索与发展cid:link_3随着CPU算力、内存容量、磁盘IO效率发生变化,一些老的软件体系结构随着新硬件、新算法的发展都在发生改变。所以在2010年左右,业内开始考虑把TP和AP同时融合到同一个数据库里,通过这种方式提升数据库处理数据的能力。3种常见的数据库迁移工具对比cid:link_4要把数据从 PostgreSQL 迁移到 TiDB 中。由于时间紧任务重,来不及调研高效的方式,直接使用了 Navicat 内置的功能,把数据从 PostgreSQL 迁移到了 TiDB。项目结束后,我深入调研了几个同步迁移工具,本期就跟大家一起看看,几个迁移同步工具的实现步骤和各自的优缺点,以便在后续项目中能够选择最佳的工具,高效完成。GaussDB技术解读系列:高级压缩之OLTP表压缩cid:link_5高级压缩是面向业务全场景的数据库压缩解决方案,适用的场景主要分两类。第一类是存储类,主要为业务提供容量控制,减少业务扩容的概率和成本;第二类是传输类,主要是面向跨Region、跨AZ的业务场景如何去匹配业务的网络带宽的现实条件,为业务提供更稳定的SLA保证。这里面又有很多细分的场景,TP、AP都有。GaussDB技术解读系列之应用无损透明(ALT)cid:link_6GaussDB作为一款企业级分布式数据库,提供了“同城跨AZ双活、两地三中心、双集群强一致”等极致的高可用容灾能力。当某个数据库节点由于故障无法对外提供服务时,为了继续保证数据库服务的可用性,JDBC驱动会将业务后续的数据库连接请求发送到其它可用节点上。但故障发生后,已经与故障节点建立会话的连接无法自动切换到可用节点上,导致使用这些连接的业务单元发生报错。如果业务单元缺少连接重试或业务一致性校验,可能会引起应用中断,甚至业务数据不一致的问题,造成用户严重的业务损失。GaussDB技术解读系列之SQL Audit,面向应用开发的SQL审核工具cid:link_7SQL Audit对当前大部分SQL使用场景进行了支持,而且还在持续扩大SQL能获取的范围,力求能够全面地将客户使用的所有SQL全部审核到
-
引言 数据库内存调优是优化数据库性能的重要步骤之一。通过合理配置数据库服务器的内存参数,可以提高数据库的响应速度、降低磁盘 I/O 操作,从而提升整体系统性能。本文将介绍数据库内存调优的基本原则、常用的内存参数以及调优策略。基本原则 在进行数据库内存调优之前,我们需要了解以下几个基本原则:2.1. 内存总量 首先,确定数据库服务器可用的总内存量。这包括物理内存和交换空间(swap)的大小。合理分配内存资源可以避免过度消耗系统资源,导致其他应用程序性能下降。2.2. 内存分配比例 将内存分配给不同的数据库组件是内存调优的关键。通常,我们将大部分内存分配给数据库缓冲区(Buffer Cache),用于存储数据块的副本,以减少磁盘 I/O 操作。其他组件如排序区、连接区等也需要适量的内存。2.3. 监控和调整 内存调优是一个动态过程。我们应该监控数据库服务器的内存使用情况,并根据实际情况进行调整。使用系统工具和数据库性能监控工具可以帮助我们实时监控内存使用情况,并及时采取措施。常用内存参数 以下是常用的数据库内存参数,可以根据实际情况进行配置和调整:3.1. shared_buffers 该参数决定了数据库缓冲区的大小。较大的缓冲区可以提高读取数据块的速度,减少磁盘 I/O 操作。通常,建议将该参数设置为系统可用内存的 25% - 40%。3.2. work_mem 该参数决定了每个查询所使用的内存量。较大的 work_mem 可以提高排序和连接操作的性能,但会占用更多的内存资源。建议根据系统的并发查询数和查询复杂度来调整该参数。3.3. maintenance_work_mem 该参数决定了执行维护操作(如索引创建、VACUUM 等)所使用的内存量。较大的 maintenance_work_mem 可以加快维护操作的速度,但也会占用更多的内存资源。建议根据系统的维护需求和可用内存来调整该参数。3.4. effective_cache_size 该参数指定了系统中所有缓存的预估大小。数据库优化器使用该参数来估计查询的成本,从而选择最优的执行计划。建议将该参数设置为系统可用内存的 50% - 75%。调优策略 下面是一些常用的数据库内存调优策略:4.1. 监控内存使用情况 使用系统工具如top、free等监控内存使用情况。同时,使用数据库性能监控工具如pg_stat_activity、pg_stat_bgwriter等监控数据库内存使用情况。4.2. 调整 shared_buffers 根据系统的可用内存和数据库的读取操作频率,适当调整 shared_buffers 的大小。增大 shared_buffers 可以减少磁盘 I/O 操作,提高读取性能。4.3. 调整 work_mem 和 maintenance_work_mem 根据系统的并发查询数、查询复杂度和维护操作的需求,调整 work_mem 和 maintenance_work_mem 的大小。合理配置这两个参数可以提高查询和维护操作的性能。4.4. 监控并调整其他内存参数 除了上述参数,还应该监控和调整其他内存参数,如max_connections、effective_cache_size等,以满足系统的需求。结论 数据库内存调优是提升数据库性能的关键步骤。通过合理配置和调整内存参数,可以减少磁盘 I/O 操作,提高查询和维护操作的性能。在调优过程中,我们需要根据系统的实际情况进行监控和调整,并遵循基本原则。通过持续的优化和调整,可以实现更好的数据库性能和响应速度。
-
数据库8月常见问题汇总1. GaussDB T1.2.1-TRUNCATE TABLE没有释放磁盘空间cid:link_0 问题描述:使用TRUNCATE TABLE xxx; 和 DROP TABLE xxx; 清理USERS表空间下的表后,表空间文件大小没有任何变化,请问怎么操作能减少磁盘空间占用呢? 解决方案:使用 TRUNCATE TABLE 和 DROP TABLE 命令可以删除表中的数据或删除整个表。但是,这些操作只会删除表中的数据和表的定义,而不会立即释放表空间占用的磁盘空间。这是因为 GaussDB 数据库采用了延迟回收的机制,即删除的数据和表所占用的空间会在稍后的时间内被自动回收。 如果希望立即减少磁盘空间占用,可以执行以下操作:执行 ALTER TABLE xxx MOVE;:这将重建表并释放未使用的空间。执行此操作后,表空间文件的大小可能会减小。ALTER TABLE xxx MOVE;执行 ALTER TABLESPACE xxx COALESCE;:这将合并表空间中的碎片空间,从而减少文件的大小。ALTER TABLESPACE xxx COALESCE;这些操作将触发 GaussDB 数据库的空间回收机制,以减少表空间文件的大小。请注意,这些操作可能会导致一些性能开销,并且对于大型表可能需要较长的时间来完成。 另外,如果希望彻底减少表空间文件的大小,可以考虑使用 ALTER DATABASE 命令来缩小表空间文件。但是,在执行此操作之前,请确保你已经备份了数据库,并且了解该操作的风险和限制。以下是一个示例命令:ALTER DATABASE DATAFILE '/path/to/tablespace_file.dbf' RESIZE 10M;上述命令将表空间文件的大小调整为 10MB。需要将 /path/to/tablespace_file.dbf 替换为实际的表空间文件路径。2. The core dump path is an invalid directorycid:link_1 问题描述:The core dump path is an invalid directory。openeulder 22.03.SP1+opengauss 5.0.0, x86, 1主1备,启动的时候有这个错,哪位大佬知道怎么处理吗? 解决方案:如果GaussDB在启动时报错 "The core dump path is an invalid directory"(核心转储路径为无效目录),这意味着指定的用于存储核心转储文件的目录不存在或无法访问。 解决此问题的步骤如下:找到GaussDB的配置文件。具体位置取决于您的安装方式和操作系统。通常,配置文件位于GaussDB的安装目录下的/data/gauss/db/etc/目录中,文件名为 gaussdb.cfg。使用文本编辑器打开gaussdb.cfg文件。在文件中搜索 "core_dump_path" 配置项。该行应该类似于 core_dump_path = '/path/to/core/dump/directory'。验证指定的目录是否存在。如果目录不存在,可以使用命令行创建该目录。例如,运行以下命令创建名为 /path/to/core/dump/directory 的目录:mkdir -p /path/to/core/dump/directory检查目录的权限。确保运行GaussDB的用户对该目录具有读写权限。您可以使用 chmod 命令设置权限。例如:chmod 755 /path/to/core/dump/directory根据需要调整权限。 保存对 gaussdb.cfg 文件的更改并关闭文本编辑器。 重新启动GaussDB服务以使更改生效。 这些步骤应该能够解决启动时的核心转储路径无效的问题,使GaussDB能够正确地进行核心转储。3. 创建分区表时,分区键需要是generated always的生成列,执行报错,请问oracle可以,到gaussDB的话,该如何处理?cid:link_2 问题描述:create table gen5( c1 int, c2 int, c3 int generated always as (c1 + c2) stored ) partition by list(c3)( partition js values('3200'), partition sd values('3700') );解决方案:在Oracle数据库中,可以使用“GENERATED ALWAYS”选项创建一个生成列,它是根据其他列的值自动生成的。但是,在GaussDB数据库中,暂时不支持“GENERATED ALWAYS”选项来创建自动生成的列。因此,在迁移分区表时,您需要修改DDL语句,以符合GaussDB的语法和特性。 在GaussDB中,您可以使用触发器(Trigger)来实现类似的功能。触发器是一种数据库对象,可以在插入、更新或删除数据时触发预定义的操作。您可以创建一个触发器,在插入或更新数据时,通过计算生成列的值并将其写入分区键列。 以下是一个示例DDL语句,用于在GaussDB中创建一个带有生成列的分区表和触发器:CREATE TABLE your_table ( column1 INT, column2 VARCHAR(50), partition_key INT, generated_column INT ) PARTITION BY RANGE (partition_key); CREATE OR REPLACE FUNCTION calculate_generated_column() RETURNS TRIGGER AS $$ BEGIN NEW.generated_column := <calculate_generated_value>; -- 自定义计算生成列的值逻辑 RETURN NEW; END; $$ LANGUAGE plpgsql; CREATE TRIGGER trigger_name BEFORE INSERT OR UPDATE ON your_table FOR EACH ROW EXECUTE FUNCTION calculate_generated_column();请注意,上述代码中的需要根据您的具体需求自定义生成列的值计算逻辑。您可以根据具体情况修改表名、列名以及触发器名称。4. Huawei Cloud EulerOS 2.0 等保2.0三级版 64位 怎么安装mongodb5cid:link_3 问题描述:请问:Huawei Cloud EulerOS 2.0 等保2.0三级版 64位 怎么安装mongodb5啊?弄了半天整不明白啊。用了linux 的安装方法也不行 解决方案:教程参考:cid:link_51.使用 yum 命令安装 MongoDB 5 的安装源。在终端输入以下命令:sudo tee /etc/yum.repos.d/mongodb-org-5.0.repo <<EOF [mongodb-org-5.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/5.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-5.0.asc EOF 2.安装 MongoDB 5。在终端输入以下命令:sudo yum install -y mongodb-org 3.启动 MongoDB 服务。在终端输入以下命令:sudo systemctl start mongod 4.开机自启 MongoDB 服务。在终端输入以下命令:sudo systemctl enable mongod 这样,MongoDB 5 就可以在 EulerOS 2.0 等保2.0三级版上成功安装并启动了。你可以通过访问 MongoDB 所在服务器的 IP 地址和端口号来测试 MongoDB 是否运行正常。5. Mac 下pgadmin 连接RDS for PostgreSQL报错cid:link_4 问题描述:报错信息如下:none of the server's SASL authentication mechanisms are supported 解决方案:如果您使用的是开源的JDBC驱动程序,应确保数据库参数password_encryption_type取值设置为1,如果参数值不为1,可能会出现连接失败,典型的报错信息比如:“none of the server's SASL authentication mechanisms are supported”,参见以下操作: 1.将参数修改为1,修改方法参见修改数据库参数。 2.新建一个数据库用户用于连接,或者重置准备使用的数据库用户的密码。 如果您使用的是管理员账号,参见重置密码。 如果是普通用户,可以先通过其他客户端工具(例如Data Studio)连接数据库后,使用ALTER USER语句来修改密码。 3. 再尝试连接数据库。
-
当数据库执行 DELETE 命令误删除了数据时,跑路并不是解决问题的正确方式。 正确的做法有:数据库备份:如果你有数据库的备份,可以从备份中还原误删除的数据。备份是最可靠的数据恢复方法。你可以使用数据库的备份工具或恢复脚本来还原到误删除数据之前的状态。请注意,还原备份会将数据库恢复到备份时的状态,可能会丢失备份之后的更改。事务回滚:如果误删除操作在一个事务中,你可以尝试回滚该事务来恢复数据。使用数据库的事务管理工具或命令,将事务回滚到误删除操作之前的状态。这将撤消误删除操作及其之后的所有更改。日志文件恢复:某些数据库系统支持日志文件恢复功能。通过分析数据库的事务日志文件,可以找到误删除操作的记录,并使用日志文件进行恢复。这需要一定的数据库管理和恢复技术知识。数据恢复工具:一些数据库系统提供专门的数据恢复工具,可以用于恢复误删除的数据。这些工具通常需要专业的数据库管理员或数据恢复专家来操作。你可以咨询数据库供应商或专业的数据库服务提供商,以获取更多关于数据恢复工具的信息。无论使用哪种方法,重要的是在尝试修复或恢复数据之前,确保对数据库进行适当的备份。这样可以在修复过程中出现问题时,保证有可靠的备份可供恢复。大家有哪些数据库误操作的故事呢,欢迎分享
-
导出pg_default_acl表的alter default privileges语句,参考方式https://bbs.huaweicloud.com/forum/thread-0256128221187419057-1-1.html3种常见的数据库迁移工具对比https://bbs.huaweicloud.com/forum/thread-0299127975160572049-1-1.htmlspringboot 调用外部接口的21种方式https://bbs.huaweicloud.com/forum/thread-0251128048991837124-1-1.htmlRocketMQ介绍和使用https://bbs.huaweicloud.com/forum/thread-0275128740052393443-1-1.html当注入的 Bean 存在冲突时,到底有多少种解决方案?https://bbs.huaweicloud.com/forum/thread-0265128311103062025-1-1.htmlSpring 中 Bean 的作用域有哪些?https://bbs.huaweicloud.com/forum/thread-0265128311047473024-1-1.htmlguava的使用方法和示例代码https://bbs.huaweicloud.com/forum/thread-0272128251127618007-1-1.htmlnginx配置ssl和反向代理的配置代码https://bbs.huaweicloud.com/forum/thread-0242128246286033003-1-1.htmlJava中CompletableFuture的场景https://bbs.huaweicloud.com/forum/thread-0242128064000506127-1-1.htmlJAVA幂等性实现https://bbs.huaweicloud.com/forum/thread-0263128771115134343-1-1.htmlspring boot中使用redis计数器https://bbs.huaweicloud.com/forum/thread-0297128844392188496-1-1.htmlspring boot中@Cacheable的使用场景和示例代码https://bbs.huaweicloud.com/forum/thread-0297128827782316482-1-1.html
-
之前在项目中,收到一个紧急需求,要把数据从 PostgreSQL 迁移到 TiDB 中。由于时间紧任务重,来不及调研高效的方式,直接使用了 Navicat 内置的功能,把数据从 PostgreSQL 迁移到了 TiDB。项目结束后,我深入调研了几个同步迁移工具,本期就跟大家一起看看,几个迁移同步工具的实现步骤和各自的优缺点,以便在后续项目中能够选择最佳的工具,高效完成。一、Navicat Navicat Premium 是一套多连接数据库开发工具,让你在单一应用程序中同时连接多种类型的数据库:MySQL、MariaDB、MongoDB、SQL Server、SQLite、Oracle 和 PostgreSQL,可一次快速方便地访问所有数据库。我们先来一起看看它的迁移能力 ⬇Step 1: 增加数据源与目标库Step 2: 打开数据传输工具填写好相关信息:工具->传输工具Step 3: 选择全部表Step 4: 同步结果4步操作就实现了数据库同步迁移。二、DataX DataX 是阿里云DataWorks数据集成的开源版本,在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。DataX 实现了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、Hologres、DRDS 等各种异构数据源之间高效的数据同步功能。我们可以把Datax的同步功能当作迁移功能使用,看看效果如何 ⬇Step 1: 环境准备 LinuxJDK(1.8以上,推荐1.8)Python(2或3都可以)Apache Maven 3.x (Compile DataX)我们这里只简单介绍工具包安装:yum install -y java-1.8.0-openjdkpython2 自带了,这里不做安装。用工具包安装,不需要部署 Apache MavenStep 2: Datax部署 1、直接下载DataX工具包下载地址:https://datax-opensource.oss-cn-hangzhou.aliyuncs.com/202210/datax.tar.gz;2、上传到Linux中3、解压tar -zxvf datax.tar.gz; 4、验证环境是否正常python ./datax/bin/datax.py ./datax/job/job.json 5、验证结果Step 3: 编写Job 1、查看配置模板python ./datax/bin/datax.py -r postgresqlreader -w mysqlwriter 2、编写配置模板{ "job": { "content": [ { "reader": { "name": "postgresqlreader", "parameter": { "connection": [ { "jdbcUrl": ["jdbc:postgresql://10.3.70.132:30118/dc-master-data-management-pg_migrate_test"], "table": ["crm_lead"] } ], "password": "test", "username": "test", "column": [""] } }, "writer": { "name": "mysqlwriter", "parameter": { "connection": [ { "jdbcUrl": "jdbc:mysql://10.3.65.137:4000/test?characterEncoding=utf8&useSSL=false&useServerPrepStmts=true&prepStmtCacheSqlLimit=1000&useConfigs=maxPerformance&rewriteBatchedStatements=true&defaultfetchsize=-2147483648", "table": ["crm_lead"] } ], "username": "root", "password": "tidb", "writeMode": "insert", "column": [""] } } } ], "setting": { "speed": { "channel": "1" } } } } Step 4: 启动Datax1、启动Dataxpython ./datax/bin/datax.py ./datax/pg2tidb.json 2、完成结果三、TurboDX TurboDX for MySQL 专门针对兼容MySQL路线的数据库作为目标库的实时同步工具软件,支持Oracle(RAC)、SQLServer、MySQL、PostgreSQL、DB2、Informix等,全量+增量实时同步到MySQL/TiDB/Oceanbase/TDSQL/GlodenDB/SequoiaDB/GreatDB/HotDB等。Step 1: TurboDX 安装部署 1、准备⼀台Windows环境的机器2、下载数据迁移⼯具(TurboDX for MySQL),并成功安装3、启动打开Windows 服务控制面板(可直接使用Windows 自带的搜索功能,输入 “服务” 即可快速进入),找到TurboDXDB、TurboDX Server、TurboDXWEB 三项服务,并按顺序依次启动。Step 2: TurboDX 使用 1、访问 TurboDX本机访问:cid:link_1进入TurboDX 控制中心,默认登录用户密码为 admin/admin2、配置数据源 PostgreSQL3、配置需要迁移的库4、配置目标数据库TiDB5、配置迁移任务在右侧选项菜单中,找到任务管理,选择子菜单,复制同步,点击左上角新建按钮,配置集群信息,注意全量与增量选项都要勾选,然后保存。6、完善任务配置选中任务,并点击打开。7、迁移目标库表结构选择迁移库表,调整对应字段,点击确定。8、启动迁移任务点击运行点击确定9、解决报错解决方法:执行 SQL 并重启 postgresql。ALTER SYSTEM SET wal_level = 'logical';四、总结 Navicat -优点:方便快捷,操作简单,对于经常使用 Navicat 的小伙伴来说,更加熟悉,简单的数据迁移没有问题。-缺点:一方面是收费,另外迁移表结构的时候,有时候会报错,应该是字段类型对应关系没做好。DataX -优点:对数据同步友好-缺点:对数据迁移不够友好。Datax主要是做数据同步的,在数据迁移方面有诸多不方便的地方,比如Datax是用多个task来实现数据同步的,每个task需要手动编写 json ,并指定表名与同步的字段名。如果数据迁移的表与字段太多,task的配置就是非常耗时的一件事情,这对于数据迁移来说实在太麻烦。而且使用Datax之前,下游数据库的表结构要自己创建,工作量一下就大了。所以数据量少的时候,可以用Datax来做数据迁移,但是有大量数据的情况下,不建议使用 Datax。TurboDX -优点:部署简单;操作简单易懂;能全库全表迁移,也能自由过滤指定表迁移;迁移不需要人为干预,功能齐全;表结构迁移与数据迁移是分开的两个功能,可以单独操作。-缺点:社区版需要使用Windows,Linux版本需要联系官方索要。
-
中奖结果公示感谢各位小伙伴参与本次活动,本次活动获奖名单如下:请各位获奖的伙伴在9月2日之前点击此处填写收货地址,如逾期未填写视为弃奖。再次感谢各位小伙伴参与本次活动,欢迎关注华为云DTSE Tech Talk 技术直播更多活动~直播简介【直播主题】数仓专家手把手教您资源管控与运维实战【直播时间】2023年8月29日 16:30-18:00【直播专家】吕鹏博 华为云EI DTSE技术布道师【直播简介】GaussDB(DWS)的CPU、内存、磁盘IO等资源管控对保证数据库性能稳定至关重要,本次直播将通过实战案例,介绍如何定位和优化资源使用情况,包括:CPU 使用率分析、内存参数优化、排队问题定位等。通过本次直播,您将学会如何科学合理地分配和管理数据库的核心资源,从而确保数据库性能的稳定。这将是一场非常实用的GaussDB(DWS)资源管控优化指南,帮助您更好地管理数据库资源,提升数据库性能。直播报名:cid:link_1活动介绍【互动方式】直播前您可以在本帖留下您疑惑的问题,专家会在直播时为您解答。直播后您可以继续在本帖留言,与专家互动交流。我们会在全部活动结束后对参与互动的用户进行评选。【活动时间】即日起—2023年8月30日【奖励说明】评奖规则:活动1:直播期间在直播间提出与直播内容相关的问题,对专家评选为优质问题的开发者进行奖励。奖品:华为云定制U型按摩枕活动2:在本帖提出与直播内容相关的问题,由专家在所有互动贴中选出最优问题贴的开发者进行奖励。奖品:华为云定制POLO衫更多直播活动直播互动有礼:官网直播间发口令“华为云 DTSE”华为云定制鼠标垫、填写问卷抽华为云定制长袖卫衣等好礼分享问卷有礼 :邀请5位朋友以上完成问卷即可获得华为云定制雨伞。老观众专属福利:连续报名并观看DTT直播3期以上抽送华为云DTT定制T恤。【注意事项】1、所有参与活动的问题,如发现为复用他人内容,则取消获奖资格。2、为保证您顺利领取活动奖品,请您在活动公示奖项后2个工作日内私信提前填写奖品收货信息,如您没有填写,视为自动放弃奖励。3、活动奖项公示时间截止2023年8月31日,如未反馈邮寄信息视为弃奖。本次活动奖品将于奖项公示后30个工作日内统一发出,请您耐心等待。4、活动期间同类子活动每个ID(同一姓名/电话/收货地址)只能获奖一次,若重复则中奖资格顺延至下一位合格开发者,仅一次顺延。5、如活动奖品出现没有库存的情况,华为云工作人员将会替换等价值的奖品,获奖者不同意此规则视为放弃奖品。6、其他事宜请参考【华为云社区常规活动规则】。
-
中奖结果公示感谢各位小伙伴参与本次活动,本次活动论坛提问获得者:其他奖项获得者:本期问卷抽奖无符合中奖条件人员。
-
数据库实例被锁怎么处理?
-
分库分表是一种数据库架构设计和优化策略,旨在解决大规模应用中数据存储和访问的性能和扩展性问题。主要原因包括:数据量大:随着应用的发展,数据量可能会迅速增加,导致单一数据库难以处理大量数据,分库可以将数据分散到多个数据库中,提高整体性能。扩展性:随着用户量和数据量的增长,单一数据库可能成为瓶颈,而分库分表可以通过横向扩展,将负载分摊到多个数据库和表上,提高系统的承载能力。并发访问:单一数据库可能面临高并发读写需求,分库分表可以将数据分散到多个数据库和表中,减少并发访问瓶颈,提高并发处理能力。地域性:对于全球性的应用,分库可以根据地域将数据存储在不同的数据库中,降低访问延迟,提高用户体验。数据隔离:对于不同类型的数据,有时需要进行数据隔离,将其存储在不同的数据库或表中,从而提高数据安全性和可维护性。备份和恢复:分库分表可以使备份和恢复操作更加灵活和高效。例如,对于只读数据库,可以只备份主库,而对于频繁变更的表,可以采取更频繁的备份策略。需要指出的是,分库分表并不是适用于所有场景的通用解决方案,它涉及到架构设计、数据拆分、数据同步等复杂问题,增加了系统的复杂性和维护难度。在考虑分库分表之前,需要进行仔细的规划和测试,确保能够解决实际问题,并且带来性能和扩展性的提升。
-
中奖结果公示感谢各位小伙伴参与本次活动,本次活动论坛提问获得者:其他奖项获得者: 账号名 奖项名称 奖品名称hw081993541 优质提问 HDC开发者定制长袖圆领卫衣hw81541353 优质提问、老观众专属 HDC开发者定制长袖圆领卫衣、DTT定制T恤xj120141121 论坛提问奖 开发者定制飞盘/ 官网抽奖 华为云云宝公仔hw81541353 官网抽奖 华为云云宝公仔qingqingjiayuan6 官网抽奖 华为云云宝公仔/ 官网抽奖 开发者定制鼠标垫A2AD6A3934EA4306A2AED33E46DEAA1D 官网抽奖 开发者定制鼠标垫hid_1vkjxagz_j6y-i5 微信抽奖 开发者定制鼠标垫hid_7c_vqxwcev4ad95 微信抽奖 开发者定制鼠标垫hwid_5lawhnf9mh3u2b8 微信抽奖 开发者定制鼠标垫hw081155224 微信抽奖 开发者定制鼠标垫xmdd160408 微信抽奖 开发者定制鼠标垫hid_fqvb70bxioxny6h 问卷分享 开发者定制棒球帽Daniel_Jiao 问卷抽奖 开发者定制鼠标垫yizhangl 问卷抽奖 开发者定制鼠标垫
上滑加载中
推荐直播
-
空中宣讲会 2025年华为软件精英挑战赛
2025/03/10 周一 18:00-19:00
宸睿 华为云存储技术专家、ACM-ICPC WorldFinal经验 晖哥
2025华为软挑赛空中宣讲会重磅来袭!完整赛程首曝+命题天团硬核拆题+三轮幸运抽奖赢参赛助力礼包,与全国优秀高校开发者同台竞技,直通顶尖赛事起跑线!
回顾中 -
华为开发者空间玩转DeepSeek
2025/03/13 周四 19:00-20:30
马欣 华为开发者布道师
同学们,想知道如何利用华为开发者空间部署自己的DeepSeek模型吗?想了解如何用DeepSeek在云主机上探索好玩的应用吗?想探讨如何利用DeepSeek在自己的专有云主机上辅助编程吗?让我们来一场云和AI的盛宴。
即将直播 -
华为云Metastudio×DeepSeek与RAG检索优化分享
2025/03/14 周五 16:00-17:30
大海 华为云学堂技术讲师 Cocl 华为云学堂技术讲师
本次直播将带来DeepSeek数字人解决方案,以及如何使用Embedding与Rerank实现检索优化实践,为开发者与企业提供参考,助力场景落地。
去报名
热门标签