Apache ShardingSphere 企业行|走进中信云网

2023-11-23 05:18

本文主要是介绍Apache ShardingSphere 企业行|走进中信云网,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

为进一步了解各家厂商的应用场景与深层次需求,提升企业研发团队在使用 Apache ShardingSphere 的效率,Apache ShardingSphere 社区开启了【走进企业】系列活动。

2 月 28 日,Apache ShardingSphere 核心技术团队应邀来到中信云网,Apache ShardingSphere PMC Chair、SphereEx CEO 张亮与中信云网的技术同学在开源生态建设、ShardingSphere 场景解决方案等方面展开了深度交流和探讨。

作为一家由中信集团全资成立的产业互联网赋能平台服务型公司,结合自身物联网、云计算以及大数据平台,已经形成智能建造、智慧园区、智慧水务、智能制造、健康养老、智慧农业等多个深度聚焦行业场景的产品及解决方案,中信云网开始思考如何在现有数据库体系上进行技术革新,以支持多个产业的创新发展。与此同时,作为中间件领域最著名的开源项目之一,伴随着 Apache ShardingSphere 生态的扩大,Apache ShardingSphere 的能力与中信云网的技术场景逐渐产生了交集。

迁移后如何确保数据一致

业务发展到一定阶段,激增的业务压力以及数据量的爆发会给企业带来新的挑战,Scale-Out 的方式可有效解决以上问题。

Apache ShardingSphere 通过 Scaling 工具实现在线的弹性扩容,同时也提供了多种内置的数据一致性校验算法,用以比较源端数据和目标端数据是否一致,默认使用 CRC32 以便在速度与一致性上取得平衡,且校验算法支持 SPI 自定义。数据迁移时间和数据量级成正比,为保证两端数据一致,一般需要停机窗口来让日志追平,最后通过 Scaling、业务层以及数据库层完成数据校验。

Apache ShardingSphere 可以将数据迁移任务分为多个部分并行执行,合并同一记录的修改操作,在配置上之后再执行一条命令停止主库的写入,使主库只具备只读的权限,同时在只读期间暂停 SQL 执行并在停写的瞬间确保数据是全局一致的,进而再操作切库,减少对于系统可用性的影响。

JDBC 与 Proxy,面向不同核心用户

Apache ShardingSphere 支持 JDBC 接入、Proxy 接入这两种形式,云上 Mesh 接入的方式正在研发中,用户可以按具体需求来做选型,在原有集群之上来做分片、读写分离、数据迁移等相关操作。

ShardingSphere-JDBC 面向使用 Java 的研发人员,定义为一款轻量级的 Java 框架,可将其理解为一款增强的 JDBC 驱动程序,其性能更高,对于性能损耗在 2%-7% 之间,如果专注于调优,可能损耗 0.1% 都不到,更能够满足研发人员的需求。研发人员能够通过 JDBC 客户端直接访问数据库,以 jar 的形式提供服务,不需要额外的部署和依赖。

ShardingSphere-Proxy 则是面向于运维人员的数据库管控代理端,用户需要先经过 Proxy 后才能访问数据库,中间经历了网络的一跳,导致 Proxy 产生 30%-70% 的性能损耗。因此 ShardingSphere-JDBC 模式的性能要明显优于 ShardingSphere-Proxy。但 ShardingSphere 可插拔架构提供了数十个基于 SPI 的扩展点,基于扩展点,ShardingSphere 默认实现了数据分片、读写分离、数据加密、影子库压测、高可用等功能,开发者可以十分方便的对功能进行定制化扩展。

ShardingSphere-JDBC 采用去中心化架构,适用于 Java 开发的高性能轻量级 OLTP 应用。ShardingSphere-Proxy 提供静态入口和全语言支持,适用于 OLAP 应用和分片数据库的管理和运行情况。一端面向研发侧,一端面向运维侧,JDBC 为研发提升了效率,Proxy 为运维带来了质的变化,使用 DistSQL 即可像操作数据库一样操作 Apache ShardingSphere,赋予运维侧人员更多的研发能力,进而为企业提供更加全面的数据管控能力。

通过 ShardingSphere-JDBC 和 ShardingSphere-Proxy 的混合使用,以及同一个注册中心统一的分片策略,ShardingSphere 可以构建一个适用于各种场景的应用系统,形成类似数据库网关的模式,用户可以通过 Proxy 管理底层所有数据库集群,并且能够通过 SQL 观察到分布式集群的状态,从而可以让运维人员、架构师将系统架构调整为最适合业务需要的架构,进而更自由地开展业务。

ShardingSphere 联邦查询

SQL Federation 联邦查询是针对分布在多个不同数据库上的数据提供跨库查询能力的一种查询方式,用户无需将这些数据存储到同一个数据库中即可执行查询。SQL Federation 引擎包含了 SQL Parser、SQL Binder、SQL Optimizer、Data Fetcher 及 Operator Calculator 等流程,用于处理跨多个数据库实例的关联查询及子查询,底层使用 Calcite 基于关系代数进行 RBO(Rule Based Optimizer) 和 CBO(Cost Based Optimizer) 优化,通过最优执行计划查询出结果。

随着现阶段数据仓库、数据湖等概念的流行,ShardingSphere SQL Federation 的应用需要与场景具体结合起来。

对于用户而言,如果需要联邦查询的数据库是关系型数据库的话,使用 ShardingSphere 就会很方便,因为数据湖部署起来比较复杂,ShardingSphere 通过对接数据库,可以对数据湖内和数据湖外的数据进行联邦计算,实现左外链接、右外链接、复杂的聚合查询等等。此外大数据处理是需要过程和时间的,如果数据体量非常大,数据湖肯定是更优的选择。但如果数据体量相对较小,且对数据处理的实时性要求较高时,ShardingSphere 则相对更高效,操作、实现起来也比较简单。

71dbac2ae28e8a642c5a3506fddf9811.png

【联系我们】

如果您在业务中有应用 Apache ShardingSphere,想要快速了解、接入 Apache ShardingSphere 5.0 新生态,希望借此机会在团队内部举办一场关于 Apache ShardingSphere 的技术分享,欢迎在公众号后台中留下您的姓名、公司、职位、电话等信息,或扫描下方二维码添加官方小助手,备注“走进企业”,会有专人与您对接。

在沟通过后如果双方认为产品和场景均非常匹配,Apache ShardingSphere 社区的核心团队将会走进您的企业,与各条研发线的工程师们现场沟通,解答关于 Apache ShardingSphere 的任何疑问。

110ea26d910247057ccfef4d288a34d1.png

这篇关于Apache ShardingSphere 企业行|走进中信云网的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/415605

相关文章

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

企业安全之WiFi篇

很多的公司都没有安全团队,只有运维来负责整个公司的安全,从而安全问题也大打折扣。我最近一直在给各个公司做安全检测,就把自己的心得写下来,有什么不足之处还望补充。 0×01  无线安全 很多的公司都有不怎么注重公司的无线电安全,有钱的公司买设备,没钱的公司搞人力。但是人的技术在好,没有设备的辅助,人力在牛逼也没有个卵用。一个好的路由器、交换机、IDS就像你装备了 无尽、狂徒、杀人书一

研究人员在RSA大会上演示利用恶意JPEG图片入侵企业内网

安全研究人员Marcus Murray在正在旧金山举行的RSA大会上公布了一种利用恶意JPEG图片入侵企业网络内部Windows服务器的新方法。  攻击流程及漏洞分析 最近,安全专家兼渗透测试员Marcus Murray发现了一种利用恶意JPEG图片来攻击Windows服务器的新方法,利用该方法还可以在目标网络中进行特权提升。几天前,在旧金山举行的RSA大会上,该Marcus现场展示了攻击流程,

AIGC6: 走进腾讯数字盛会

图中是一个程序员,去参加一个技术盛会。AI大潮下,五颜六色,各种不确定。 背景 AI对各行各业的冲击越来越大,身处职场的我也能清晰的感受到。 我所在的行业为全球客服外包行业。 业务模式为: 为国际跨境公司提供不同地区不同语言的客服外包解决方案,除了人力,还有软件系统。 软件系统主要是提供了客服跟客人的渠道沟通和工单管理,内部管理跟甲方的合同对接,绩效评估,BI数据透视。 客服跟客人

Apache Tiles 布局管理器

陈科肇 =========== 1.简介 一个免费的开源模板框架现代Java应用程序。  基于该复合图案它是建立以简化的用户界面的开发。 对于复杂的网站,它仍然最简单,最优雅的方式来一起工作的任何MVC技术。 Tiles允许作者定义页面片段可被组装成在运行一个完整的网页。  这些片段,或Tiles,可以用于为了降低公共页面元素的重复,简单地包括或嵌入在其它瓦片,制定了一系列可重复使用

Apache HttpClient使用详解

转载地址:http://eksliang.iteye.com/blog/2191017 Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟

企业大模型落地的“最后一公里”攻略

一、大模型落地的行业现状与前景 大模型在多个行业展现出强大的应用潜力。在金融行业,沉淀了大量高质量数据,各金融平台用户数以亿计,交易数据浩如烟海。利用大模型分析处理这些数据,金融机构可以预测用户行为偏好,更高效、准确评估客户风险,实时监测交易和市场波动,及时制定策略。IDC 调研显示,超半数的金融机构计划在 2023 年投资生成式人工智能技术。 在科技领域,商汤人工智能大装置为大模型企业提

开源Apache服务器安全防护技术精要及实战

Apache 服务简介   Web服务器也称为WWW服务器或HTTP服务器(HTTPServer),它是Internet上最常见也是使用最频繁的服务器之一,Web服务器能够为用户提供网页浏览、论坛访问等等服务。   由于用户在通过Web浏览器访问信息资源的过程中,无须再关心一些技术性的细节,而且界面非常友好,因而Web在Internet上一推出就得到了爆炸性的发展。现在Web服务器已

Java中WebService接口的生成、打包成.exe、设置成Windows服务、及其调用、Apache CXF调用

一、Java中WebService接口的生成: 1、在eclipse工具中新建一个普通的JAVA项目,新建一个java类:JwsServiceHello.java package com.accord.ws;import javax.jws.WebMethod;import javax.jws.WebService;import javax.xml.ws.Endpoint;/*** Ti

【Linux】萌新看过来!一篇文章带你走进Linux世界

🚀个人主页:奋斗的小羊 🚀所属专栏:Linux 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 前言💥1、初识Linux💥1.1 什么是操作系统?💥1.2 各种操作系统对比💥1.3 现代Linux应用💥1.4 Linux常用版本 💥2、Linux 和 Windows 目录结构对比💥2.1 文件系统组织方式💥2.2