免费送5本新书《Apache ShardingSphere 权威指南》,参与方式:关注下发公众号并“AII大模型”公众号 后台回复关注截图,并本文末留言,我们随机抽取5位幸运读者送书,截止时间11月3号晚24点。
云计算时代的到来,使得云原生数据库日益重要,它通过提供可扩展性、高可用性和按需资源分配,满足了现代应用程序对弹性和灵活性的需求。随着多云和混合云策略的普及,云原生数据库在确保数据一致性、安全性和合规性方面也发挥着关键作用。由于数据库种类繁多,一方面,开发人员往往要花费大量时间学习使用 SDK(Software Development Kit,软件开发工具包)和 SQL 方言。另一方面,这也导致技术栈更加复杂,造成数据库的应用与管理存在以下行业痛点:· 低效的数据库管理:DBA(数据库管理员)需要对用到的多种数据库进行深入研究,才能实施监控与优化,这增加了生产环境中数据库的维护开销,效率低下。
· 新需求和日益频繁的迭代:要实现类似的需求,就需要为适配数据库编写大量代码,这样就会影响系统的正常功能迭代。
· 数据库间兼容性缺失:异构数据库之间缺少统一标准,无法以协调一致的方式使用这些数据库。
针对以上行业痛点,一个 Apache 顶级开源项目——Apache ShardingSphere——给出了解决之道。该项目社区活跃,目前在 GitHub 星标超过 19.8k,它提供了标准化的数据分片、分布式事务和数据库治理功能,适用于多种应用场景。如何在企业中用好 ShardingSphere?《Apache ShardingSphere 权威指南》这本书就从底层架构到上层组件,讲透了 ShardingSphere 的精髓与应用方法,可以帮助开发人员与 DBA 做好云原生数据库管理的工作。我们先来了解一下 ShardingSphere 扬名业界的三大法宝。从本质上说,ShardingSphere 是一个独立的数据库中间件平台,它基于 Database Plus,旨在构建异构数据库上层的标准和生态,并补充数据库所缺失的能力。ShardingSphere 关注的是如何充分合理地利用数据库的计算和存储能力,而非实现一个全新的数据库。所以,它取得成功的三大法宝(也是核心特性)是连接、增强、可插拔,下面详细说明。· 连接:兼容既有数据库,统一数据库入口(数据库网关),使得用户可以透明地访问数据库及其外围生态圈。
· 增强:捕获数据库入口,并提供多种功能,包括分片、读写分离和影子库、数据加密和数据脱敏、安全性、审计和授权、熔断、访问限制与分析、服务质量(Quality of Service,QoS)和可观测性等。
· 可插拔:允许功能组件以可插拔的方式进行扩展,划分为 L1 内核层、L2 功能层、L3 生态层。这种设计使得开发者可以像使用积木一样定制系统,可扩展性强,对开发人员友好。
ShardingSphere 包含两个独立核心组件,分别是 ShardingSphere-JDBC 和 ShardingSphere-Proxy。在实际生产环境中,可根据业务需要混合部署这两款组件,以获得最优效果。1. ShardingSphere-JDBC:轻量级的 Java 框架,直接嵌入 Java 应用中,无须额外部署或依赖。它对原生 JDBC 进行了增强,支持任何兼容 JDBC 的数据库,并且完全兼容各种 ORM 框架。
2. ShardingSphere-Proxy:独立的数据库代理端,对异构语言提供支持。它提供了 MySQL 和 PostgreSQL 协议的支持,能够透明化数据库操作,让 DBA 更加友好地管理数据库。
本书名称中含有“权威”二字,是因为作者团队就是对 ShardingSphere 最有发言权的人,我们来认识一下各位技术大神。潘娟,SphereEx 联合创始人兼首席技术官(CTO)。Apache 基金会会员和孵化器导师、Apache ShardingSphere 项目管理委员会(Project Management Committee,PMC)成员,专注于分布式数据库和中间件生态及开源领域,被评为中国开源先锋人物、OSCAR 尖峰开源人物、CSDN IT 领军人物、掘金引力榜年度新锐人物。张亮,SphereEx 公司创始人兼首席执行官(CEO)。Apache ShardingSphere 创始人和 PMC 主席,Apache 基金会会员,数据库领域知名实践者,拥有超过 10 年的数据库领域探索、实践经验,热爱开源,擅长分布式架构,推崇优雅代码。曾在多个大型互联网集团公司任职架构、数据库团队负责人。在 ICDE 发表论文“Apache ShardingSphere—A Holistic and Pluggable Platformfor Data Sharding”。亚幸·西·塔伊布(Yacine Si Tayeb)博士是 Apache 基金会的贡献者,也是 Apache ShardingSphere 社区的关键贡献者和社区建设者。跟随这三位大神,我们一起来学习三步吃透 ShardingSphere。ShardingSphere 的特性有助于解决规模化数据库管理的难题,本书为读者规划了一条从理论入门到安装应用的“三步走”学习路径。读者在学习前要预备一些基础知识,包括了解一个数据库产品的基本操作,会使用 SQL 语言。第一步先是说明了数据库管理系统(DBMS)在现代生产环境中面临的挑战,以及数据库开发人员角色的演变。通过深入探讨 DBMS 的未来发展方向,读者可以了解到 ShardingSphere 生态及其核心概念。书中还详细介绍了 ShardingSphere 的架构,包括其分布式数据库架构、Database Plus 理念、部署架构和插件平台,为读者提供了坚实的理论基础。在基础知识的铺垫之后,本书进入第二步:ShardingSphere 的安装与配置。本部分详细介绍了 ShardingSphere-JDBC 和ShardingSphere-Proxy 的安装步骤,以及如何配置它们以满足不同的应用场景。无论是通过二进制包、Docker,还是通过 YAML 配置,读者都可以获得清晰的指导,确保能够顺利地在现有基础设施中部署和配置ShardingSphere。第三步重点学习 ShardingSphere 的应用与测试。书中介绍了利用 ShardingSphere 进行分布式数据库解决方案的构建、数据库安全加固、全链路监控和数据库网关配置,还提供了丰富的测试场景,包括分布式数据库、读写分离、影子库等。通过这些实践指导,读者可以学会如何在各种场景中对 ShardingSphere 进行基准测试和性能测试,确保部署的解决方案能够满足性能要求和安全要求。经过这三步学习,读者不仅能够深入了解 ShardingSphere 的知识,还能应用于实际工作中,轻松化解数据库管理的难题。《Apache ShardingSphere 权威指南》全面深入地探讨了基于 Apache ShardingSphere 的分布式数据库解决方案。由 ShardingSphere 开源项目的创始人担纲的作者团队,使得本书成为该领域的技术指南。本书的一大特点是技术前沿,紧跟当前数据库技术的发展趋势,深入讲解了 Apache ShardingSphere 的各个方面,包括架构、特性,以及在分布式数据库领域的应用。作为权威指南,本书理论基础非常扎实,详细解释了分布式数据库的核心技术和概念,提供了对 ShardingSphere 工作原理的深入分析。内容全面,涵盖了 ShardingSphere 生态中几乎所有的关键技术点。另一大特点是注重技术的应用实践,提供了大量的实践案例和详细的代码示例,帮助读者更好地理解和掌握 ShardingSphere 的实际应用。为了帮助读者更好地学习 ShardingSphere,作者团队还将书中所有代码发布在 GitHub 平台上,并且对代码保持更新,确保读者能够获取到最新的技术资源。读者在书中可以找到 GitHub 代码示例的地址。想要简化数据库管理的开发人员、寻求强大分布式数据库管理解决方案的 DBA、计算机科学和软件工程等相关专业的学生和研究人员,以及感兴趣的朋友们,都可以从这本书中收获宝贵的知识与应用技能。让数据库管理不再成为一件难事,就用好 ShardingSphere,吃透这本《Apache ShardingSphere 权威指南》吧!