- TiDB 中新 Hash Join 的设计与性能优化引言Hash Join 是数据库系统中最重要的连接操作之一,在 TiDB 分布式数据库系统中扮演着关键角色。随着数据量的增长和查询复杂度的提升,传统的 Hash Join 实现面临着性能瓶颈。本文将深入探讨 TiDB 中新 Hash Join 的设计理念、核心优化技术及其在不同场景下的实现细节。技术背景传统 Hash Join 的局限性内存... TiDB 中新 Hash Join 的设计与性能优化引言Hash Join 是数据库系统中最重要的连接操作之一,在 TiDB 分布式数据库系统中扮演着关键角色。随着数据量的增长和查询复杂度的提升,传统的 Hash Join 实现面临着性能瓶颈。本文将深入探讨 TiDB 中新 Hash Join 的设计理念、核心优化技术及其在不同场景下的实现细节。技术背景传统 Hash Join 的局限性内存...
- 在实际业务场景中,我们可能会碰到需要短时间批量执行的定时任务,此时如果我们不做任何处理,只是像前面那样去执行,可能出现上一批的任务还没执行完,定时的时间就到了,那么势必会对业务产生影响,所以就需要我们对批量任务进行分片处理,本节就让我们看看Xxl-job如何做分片处理。 一、环境准备 1.mock数据首先在数据库里建一个测试的表,并mock一些数据进去,模拟业务中的“大表”。因为本身就是在模... 在实际业务场景中,我们可能会碰到需要短时间批量执行的定时任务,此时如果我们不做任何处理,只是像前面那样去执行,可能出现上一批的任务还没执行完,定时的时间就到了,那么势必会对业务产生影响,所以就需要我们对批量任务进行分片处理,本节就让我们看看Xxl-job如何做分片处理。 一、环境准备 1.mock数据首先在数据库里建一个测试的表,并mock一些数据进去,模拟业务中的“大表”。因为本身就是在模...
- 在上节中,我们成功地配置了执行器并且执行了我们设定的定时任务。在本节中,将带大家感受下XXL-JOB的一个特别的运行模式-GLUE模式以及感受下集群模式下的不同路由策略。 一、什么是GLUE模式?我们先来回顾下我们现在的定时任务是怎么应用的,我们先在调度中心里配置个任务,接着在项目里对需要定时执行的方法加上XXL-JOB的注解,也就是说我们如果现在需要对某个方法改成定时任务是需要重新发版部署... 在上节中,我们成功地配置了执行器并且执行了我们设定的定时任务。在本节中,将带大家感受下XXL-JOB的一个特别的运行模式-GLUE模式以及感受下集群模式下的不同路由策略。 一、什么是GLUE模式?我们先来回顾下我们现在的定时任务是怎么应用的,我们先在调度中心里配置个任务,接着在项目里对需要定时执行的方法加上XXL-JOB的注解,也就是说我们如果现在需要对某个方法改成定时任务是需要重新发版部署...
- 在上节中,我们部署了调度中心,并且认识了调度中心,那么让它与我们的项目相结合呢?就需要用到“执行器”,通过调度中心配置的“执行器”,再在我们的项目里使用,就可以实现定时任务的控制了。 一、新建项目要使用执行器,一方面要在调度中心里配置,另一方面就需要在项目中使用了,所以我们先新建一个SpringBoot的项目,如下:输入项目的基本信息后引入依赖,这里只是个简单demo,所以导入个Spring... 在上节中,我们部署了调度中心,并且认识了调度中心,那么让它与我们的项目相结合呢?就需要用到“执行器”,通过调度中心配置的“执行器”,再在我们的项目里使用,就可以实现定时任务的控制了。 一、新建项目要使用执行器,一方面要在调度中心里配置,另一方面就需要在项目中使用了,所以我们先新建一个SpringBoot的项目,如下:输入项目的基本信息后引入依赖,这里只是个简单demo,所以导入个Spring...
- 一、获取源码使用的第一步自然就是获取源码,这里我分别贴出Github的地址:https://github.com/xuxueli/xxl-job/ 和Gitee的地址:https://gitee.com/xuxueli0323/xxl-job ,我使用Github去下载,如图: 二、初始化数据库下载源码下来之后,要不用着急启动项目,在源码目录下的 \doc\db可以看到tables_xxl... 一、获取源码使用的第一步自然就是获取源码,这里我分别贴出Github的地址:https://github.com/xuxueli/xxl-job/ 和Gitee的地址:https://gitee.com/xuxueli0323/xxl-job ,我使用Github去下载,如图: 二、初始化数据库下载源码下来之后,要不用着急启动项目,在源码目录下的 \doc\db可以看到tables_xxl...
- 一、什么是XXL-JOB?先来看看官方文档的定义:XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。先来理解一下任务调度:就是在一个约定的特定时刻去执行任务的过程。举一个常见的场景:银行需要在每个用户的信用卡还款日前3天发送短信通知。而任务调度平台则可以让我们对这些任务进行统一的管理,比如开启或关闭... 一、什么是XXL-JOB?先来看看官方文档的定义:XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。先来理解一下任务调度:就是在一个约定的特定时刻去执行任务的过程。举一个常见的场景:银行需要在每个用户的信用卡还款日前3天发送短信通知。而任务调度平台则可以让我们对这些任务进行统一的管理,比如开启或关闭...
- 随着移动终端及其相关业务(如移动支付、终端云等)的普及,用户隐私保护的重要性愈发突出。应用开发者在产品设计阶段就需要考虑用户隐私的保护,提高应用的安全性。HarmonyOS应用开发需要遵从隐私保护规则,在应用上架应用市场时,应用市场会根据规则进行校验,如不满足条件则无法上架。应用采集个人数据时,应清晰、明确地告知用户,并确保告知用户的个人信息将被如何使用。对个人数据处理必须要征得用户的同意或遵守适 随着移动终端及其相关业务(如移动支付、终端云等)的普及,用户隐私保护的重要性愈发突出。应用开发者在产品设计阶段就需要考虑用户隐私的保护,提高应用的安全性。HarmonyOS应用开发需要遵从隐私保护规则,在应用上架应用市场时,应用市场会根据规则进行校验,如不满足条件则无法上架。应用采集个人数据时,应清晰、明确地告知用户,并确保告知用户的个人信息将被如何使用。对个人数据处理必须要征得用户的同意或遵守适
- 在现代软件开发中,微服务架构因其灵活性和可扩展性而受到广泛关注。此外,分布式系统的可靠性和一致性也是关键问题,而缓存技术则通过提高数据访问速度和减少数据库负载来优化性能。本文将详细介绍微服务架构的拆分策略、分布式系统的一致性协议以及Redis在缓存架构中的应用。 微服务架构拆分策略微服务架构通过将单体应用拆分成多个小的服务来提高系统的灵活性和可维护性。以下是几种常见的微服务拆分策略:业务功... 在现代软件开发中,微服务架构因其灵活性和可扩展性而受到广泛关注。此外,分布式系统的可靠性和一致性也是关键问题,而缓存技术则通过提高数据访问速度和减少数据库负载来优化性能。本文将详细介绍微服务架构的拆分策略、分布式系统的一致性协议以及Redis在缓存架构中的应用。 微服务架构拆分策略微服务架构通过将单体应用拆分成多个小的服务来提高系统的灵活性和可维护性。以下是几种常见的微服务拆分策略:业务功...
- 区块链和加密技术是现代计算机科学的一个重要方面。区块链、智能合约、加密算法和分布式账本是这两个方面的核心技术。区块链区块链是一种分布式数据库,通过加密和共享来确保数据的安全和完整性。区块链可以用于各种应用,例如:应用描述交易一种用于进行交易的区块链应用供应链管理一种用于管理供应链的区块链应用电子病历一种用于管理电子病历的区块链应用以下是区块链的基本例子:# 交易import hashlibc... 区块链和加密技术是现代计算机科学的一个重要方面。区块链、智能合约、加密算法和分布式账本是这两个方面的核心技术。区块链区块链是一种分布式数据库,通过加密和共享来确保数据的安全和完整性。区块链可以用于各种应用,例如:应用描述交易一种用于进行交易的区块链应用供应链管理一种用于管理供应链的区块链应用电子病历一种用于管理电子病历的区块链应用以下是区块链的基本例子:# 交易import hashlibc...
- 在现代软件开发中,非关系型数据库(NoSQL) 已成为处理大规模、非结构化数据的重要工具。与传统的关系型数据库不同,非关系型数据库通过灵活的数据模型和分布式架构,能够更好地应对大数据量、高并发和动态变化的需求。本文将重点探讨 文档存储模型 的非关系型数据库,以及它们如何高效地管理和查询 非结构化数据。 1. 非关系型数据库概述 定义非关系型数据库是一种不依赖于传统表结构(如 SQL 中的行... 在现代软件开发中,非关系型数据库(NoSQL) 已成为处理大规模、非结构化数据的重要工具。与传统的关系型数据库不同,非关系型数据库通过灵活的数据模型和分布式架构,能够更好地应对大数据量、高并发和动态变化的需求。本文将重点探讨 文档存储模型 的非关系型数据库,以及它们如何高效地管理和查询 非结构化数据。 1. 非关系型数据库概述 定义非关系型数据库是一种不依赖于传统表结构(如 SQL 中的行...
- 比特流(Bitstream) 什么是比特流?比特流,或称比特流编码,是一种数据表示形式,它将数据编码为一系列连续的比特(0和1)。这种编码方式广泛应用于数据存储、网络传输和音频视频压缩等领域。比特流编码的主要目标是提高数据压缩率,同时保持或增强数据的可恢复性和兼容性。 比特流的应用音频和视频压缩:通过比特流编码,可以显著减少文件大小,从而提高存储效率和传输速度。常见的压缩格式如MP3、J... 比特流(Bitstream) 什么是比特流?比特流,或称比特流编码,是一种数据表示形式,它将数据编码为一系列连续的比特(0和1)。这种编码方式广泛应用于数据存储、网络传输和音频视频压缩等领域。比特流编码的主要目标是提高数据压缩率,同时保持或增强数据的可恢复性和兼容性。 比特流的应用音频和视频压缩:通过比特流编码,可以显著减少文件大小,从而提高存储效率和传输速度。常见的压缩格式如MP3、J...
- 文件系统的进化之路:openEuler如何优化内核文件管理? 文件系统的进化之路:openEuler如何优化内核文件管理?
- 鸿蒙应用开发与推广:如何搭建商业生态 鸿蒙应用开发与推广:如何搭建商业生态
- 把鸿蒙做“碎片”,再拼出宇宙 —— 聊聊鸿蒙系统的插件化开发到底香不香? 把鸿蒙做“碎片”,再拼出宇宙 —— 聊聊鸿蒙系统的插件化开发到底香不香?
- Redis Sentinel 和 Cluster 是 Redis 高可用与分布式架构的核心组件。Sentinel 提供主从故障检测与自动切换,通过主观/客观下线判断及 Raft 算法选举领导者完成故障转移,但存在数据一致性和复杂度问题。Cluster 支持数据分片和水平扩展,基于哈希槽分配数据,具备自动故障转移和节点发现机制,适合大规模高并发场景。复制机制包括全量同步和部分同步,通过复制积压缓冲区 Redis Sentinel 和 Cluster 是 Redis 高可用与分布式架构的核心组件。Sentinel 提供主从故障检测与自动切换,通过主观/客观下线判断及 Raft 算法选举领导者完成故障转移,但存在数据一致性和复杂度问题。Cluster 支持数据分片和水平扩展,基于哈希槽分配数据,具备自动故障转移和节点发现机制,适合大规模高并发场景。复制机制包括全量同步和部分同步,通过复制积压缓冲区
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签