做数据时代的加油站,ShardingSphere 为易车数据库架构演进提供新动力

Apache ShardingSphere 前段时间应邀来到易车北京总部,PMC Chair 张亮与易车的技术同学在数据加解密、扩容、迁移、上云等话题展开了深度交流与探讨。

作为中国领先的汽车互联网企业,易车深耕汽车行业二十余载,为中国汽车用户提供专业、丰富的互联网资讯和导购服务,并为汽车厂商和汽车经销商提供卓有成效的互联网营销解决方案。在公司”1234″的战略推动下,易车技术团队考察并选择了ShardingSphere,为优化数据服务提供更多选择。在讨论最后,张亮也表示,ShardingSphere 核心团队将与易车 DBA 团队保持紧密沟通,双方将建立起长期的技术合作关系,共同为繁荣 ShardingSphere 社区生态而努力。

在数据加解密方案中,可以通过 Proxy 来统一实现吗?

这个是可以的,无论是通过 Proxy 或是 JDBC 都能实现,只用 Proxy 也是没问题的。如果需要将数据迁移至 Proxy 端,Apache ShardingSphere 提供了弹性迁移模块,用户完全不需要担心迁移、上线的处理问题。其次,随着业务的增长和变化,也许企业后期会需要对已经分片处理过的数据库进行二次分片。Apache ShardingSphere 结合 Scaling 可以实现数据分片的弹性伸缩,保证系统可以随着业务变化而不断调整,从而满足业务快速增长的需求。

另一方面,ShardingSphere 的加密与一般数据库的内容加密不同,是基于行列级别进行加密。如常见身份证、密码等等要素,只需要通过 ShardingSphere 将这些要素进行加密即可。此外,ShardingSphere 通过对这部分能力进行标准化并集成在中间件生态上,自动化用户对新、旧业务的数据脱敏以及加解密的过程,整个过程实现了用户层面的无感知。同时支持多种内置的数据加解密/脱敏算法,用户也可根据自身情况来自定义扩展相应的数据算法。

在数据扩容或迁移时,如何在不停服的情况下实现数据扩容?对于新增数据如何处理?

在数据迁移构成中,分为存量数据迁移以及增量数据迁移,数据体量越大耗时越长。同时增量数据往往是动态变化的,为了最终确认两端数据一致,一定是需要一段停写时间,让日志能够追上来并完成校验。Apache ShardingSphere 可以将数据迁移任务分为多个部分并行执行,合并同一记录的修改操作,在配置上之后再执行一条命令停止主库的写入,使主库只具备只读的权限,同时在只读期间暂停 SQL 执行并在停写的瞬间确保数据是全局一致的,进而再操作切库,减少对于系统可用性的影响。

当下大部分企业为了保证高可靠以及高吞吐量,往往会对数据库进行主从配置。如何确保主从库之间的数据一致性,尤其是在数据迁移过程中,需要能够在几乎不影响业务的情况下实现数据校验。Apache ShardingSphere 提供了多种内置的比对策略和数据一致性校验算法,用以比较源端数据和目标端数据是否一致,默认使用 CRC32 以便在速度与一致性上取得平衡,且校验算法支持 SPI 自定义。

ShardingSphere 上云后,与应用和云之间的兼容性问题

不论是在云上还是本地,主要是应用连接 ShardingSphere,如果该应用有部署负载均衡,直接更改访问 URL 即可。

另外一种方式,可以根据 Database Mesh 设计理念,在每一个应用端部署一台 Sidecar,利用 Sidecar 来收集和探测 ShardingSphere 本身,从根本状态层面保证高可用。Database Mesh 为用户提供了完全隔离不同环境的能力。

关于 Database Mesh,面向运维工程师时,用户只需变更数据面板到分布式数据库的网络配置,以标准界面配置数据库访问规则、资源配额、数据变更、可观测性等;面向研发工程师,Database Mesh 对其完全屏蔽了数据库所在的具体网络地址,研发工程师只需面向本地数据库进行开发,无需感知分布式数据库的存在。

通过 Database Mesh 提供的云原生服务,未来用户可通过接收控制面板发送的指令,来执行限流、熔断、基于标签的路由等操作。未来,所有云上数据库流量的管理和控制都可以交由 Database Mesh 体系来进行管理,既可以管理普通的数据库,也可以搭配 ShardingSphere-Proxy 管控端。

欢迎点击链接,了解更多内容:

Apache ShardingSphere 官网:https://shardingsphere.apache.org/

Apache ShardingSphere GitHub 地址:https://github.com/apache/shardingsphere

SphereEx 官网:https://www.sphere-ex.com

欢迎添加社区经理微信(ss_assistant_1)加入交流群,与众多 ShardingSphere 爱好者一同交流。

做数据时代的加油站,ShardingSphere 为易车数据库架构演进提供新动力

Original: https://www.cnblogs.com/sphereex/p/16333955.html
Author: SphereEx
Title: 做数据时代的加油站,ShardingSphere 为易车数据库架构演进提供新动力

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/622793/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 存储过程procedure、触发器trigger

    一、存储过程procedure MySQL 5.0 版本开始支持存储过程。 存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对…

    数据库 2023年6月9日
    0108
  • MySQL扩展

    1、行转列 源数据: 目标数据: 数据准备 — 建表插入数据 drop table if …

    数据库 2023年5月24日
    0119
  • MySQL 日志管理

    日志文件记录 MySQL 数据库运行期间发生的变化,当数据库遭到意外的损害时,可以通过日志文件查询出错原因,并进件数据恢复 MySQL 日志文件可以分成以下几类: 二进制日志:记录…

    数据库 2023年5月24日
    095
  • win10彻底永久关闭自动更新的方法【已验证有效】

    [知识整理/来源网络] 原文链接:win10彻底永久关闭自动更新的方法【已验证有效】_电脑知识-电脑配置网 (dnpz.net) win10的自动更新可谓是非常顽固,很多用户在网上…

    数据库 2023年6月9日
    0148
  • JavaWeb连接MySQL数据库

    JavaWeb连接MySQL数据库 JavaWeb连接MySQL数据库的方式有很多,首先我们讲解JDBC的配置方法 一、JDBC的配置方法 1、什么是JDBC 什么是JDBC嘞?J…

    数据库 2023年5月24日
    0100
  • zabbix自定义监控(mysql主从状态和延迟)

    zabbix自定义监控 需要先配置mysql主从,从库上需要安装zabbix_agentdzabbix_server配置zabbix_agentd配置mysql主从配置 监控mys…

    数据库 2023年6月14日
    0140
  • [Linux]如何将一个目录添加至环境变量

    全局环境变量有两个目录,其中 /etc/profile 仅初始化登陆 shell 的环境变量 /etc/bash.bashrc 仅初始化交互 shell 为了在各种终端中使用,这里…

    数据库 2023年6月16日
    0115
  • Jmeter环境变量配置你不得不知道的事情

    在安装Jmeter的过程中大家肯定需要配置环境,但是为什么要配置JDK的环境变量呢?大家有没有好奇过,有没有仔细去像一下呢,其实在安装Jmeter前,大家应该都知道Jmeter是我…

    数据库 2023年6月6日
    0131
  • [Mysql]null与真值

    SQL的逻辑运算使用的是三值逻辑,逻辑表达式的计算结果有三种可能, true, false, unknown 比较运算的表达式含 NULL时会产生 unknown结果,例如 SEL…

    数据库 2023年6月16日
    0130
  • Redis-IO模型

    即便是单线程,Redis还是那么快? 一说到Redis的IO模型,就会说到Redis是”单线程”处理的。这里的单线程,主要是指 网络IO和键值读写,也就是处…

    数据库 2023年6月11日
    0134
  • Springboot打包部署项目

    这里打包的是jar项目,也就是没有webapp目录,通过maven打包插件打包发布到服务器 废话不多少直接开撸废话不多少直接开撸废话不多少直接开撸废话不多少直接开撸废话不多少直接开…

    数据库 2023年6月6日
    0119
  • 中文技术文档写作规范

    使用 markdown 格式书写文档 只使用一二三级标题,三级标题下面的并列性内容使用列表展示 二级标题前使用行分隔符表示分隔 段落之间使用一个空行隔开 一句话或者以逗号分隔的句子…

    数据库 2023年6月6日
    0124
  • 关于pycharm打开时很卡,一直加载中的解决办法~

    相信很多刚开始使用pycharm不太熟练的小伙伴,每天一开机打开pycharm总是卡半天,不知道的还以为是电脑卡了或者啥问题的。 莫慌,其实并不是… 今天我们就来解决一…

    数据库 2023年6月14日
    0138
  • 计算机网络基础

    计算机网络基础 计算机网络的定义和功能 计算机网络是利用通信设备和线路,将分布在地理位置不同的、功能独立的多个计算机系统连接起来,以功能完善的网络软件(网络通信协议及网络操作系统等…

    数据库 2023年6月16日
    0124
  • [Mysql]root密码忘了怎样重新设置密码

    环境 Ubuntu 20.04 LTSMysql 8.0+ 停止mysql服务 service mysql stop 修改 my.cnf 文件 vim /etc/mysql/my….

    数据库 2023年6月16日
    0118
  • springboot~Screw生成数据库文档

    数据库说明文档,在我们开发项目时是非常必要的,有时项目交付时,客户也是需要让我们提供的,而如果人工编写,比如耗时,通过screw组件来生成文档,非常方便。 源代码和使用:https…

    数据库 2023年6月6日
    0139
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球