CMongo是兼容开源MongoDB协议的PaaS服务托管平台,全面支撑公司内部和腾讯云上海量MongoDB业务。本次分享将会给大家带来CMongo的整体架构介绍,同时也会介绍我们对内核和管控做的一系列优化,比如物理拷贝、企业级加密/审计、秒级监控、弹性扩缩容等。
提纲:
1、CMongo架构介绍&演进
2、CMongo挑战及优化
3、CMongo在腾讯云和公司内部的佳实践
4、CMongo后续发展规划
2016年加入腾讯,现任腾讯TEG工程师,CMongo团队负责人,目前主要负责CMongo平台外围管控系统和内核的研发工作;同时也是MongoDB中文社区深圳分区主席,专注于分布式和数据库领域,对MongoDB、RocksDB源码有深入研究。
NoSQL数据是云数据库增长快板块之一,阿里云NoSQL数据库也成功支撑阿里集团历届双十一。此次重点介绍里云NoSQL数据库新的技术发展趋势,Tair,Lindorm,创新的专属产品形态MyBase等业界原创关键技术,以及在NoSQL数据库阿里集团和在线视频、在线交易、金融等行业等中大企业中的佳实践 以及未来规划展望。
阿里云智能产品专家,当前为阿里云数据库RDS&NoSQL产品线负责人。10+数据库/大数据研发管理经验,专注于数据库/大数据服务平台建设、规划和实践应用,著有畅销书《大数据架构详解:从数据获取到深度学习》。
时空数据蕴含着丰富的信息,能够应用于各种城市应用。但时空数据更新频率高、数据体量大、结构复杂,难以被高效存储、管理和分析。单台机器显然无法应对海量数据的场景,而分布式查询处理框架例如Spark、Hadoop等,由于缺乏有效的时空索引和时空分析算法,因此难以高效地处理时空数据。京东城市时空数据引擎JUST采用先进的数据建模方法、数据存储技术、分布式索引技术和分析技术,预置了多种有效的时空挖掘算法,能够帮助人们便捷高效地管理海量时空数据。基于JUST连续两次获得了ACM SIGSPATIAL十年影响力大奖,发表了国际论文20余篇,申请了专利30余项。JUST已为多个智能城市项目提供支持,在新冠防疫中也发挥了重要作用;在京东内部,JUST在双十一亿万级订单和海量物流轨迹场景下得到了验证。
京东城市JUST团队负责人,京东智能城市研究院研究员,京东智能城市事业部数据科学家,负责时空数据平台架构设计、时空索引与分布式相结合研究、数据产品的研发以及数据管理体系制定工作。加入京东之前,在微软亚洲研究院城市计算组工作。分别于2013年和2016年获得了武汉大学的学士学位和硕士学位。研究兴趣包括:城市计算、时空数据管理、分布式计算。在国内外高水平期刊和国际会议上发表论文20余篇,包括:KDD、Artificial Intelligence、ICDE、AAAI、TKDE、WWW、UbiComp、ACM SIGSPATIAL GIS、IEEE Transaction on Big Data、软件学报等。申请专利6项。现为中国计算机学会(CCF)会员、IEEE会员。先后担任软件学报、WWW、KDD、AAAI、SIGIR、CIKM、TKDE、SSTD、DASFAA、SIGSPATIAL等会议或期刊的论文审稿人。
UPRedis是银联基于Redis+TwemProxy的分布式缓存产品,目前在公司内广泛应用,线上部署超过1000实例,支撑了公司内无卡、二维码、全渠道及云闪付等关键应用。
随着公司内技术架构逐步从单中心升级为多中心,为保持应用层无状态,需要对异地中心的缓存、关系型数据库等实时同步。因此需要UPRedis支持异地多活。
本次分享主要介绍异地多活带来的技术挑战以及UPRedis的解决方案,具体包括:
1、Redis并不支持主主同步,UPRedis如何防止数据循环同步;
2、UPRedis如何通过AOFBINLOG日志解决异地网络频繁中断的断点续传和全量同步问题;
3、UPRedis如何结合redis编码,实现内存高效的Lww-Element-Set算法,解决并发写冲突,实现异地多活下数据终一致性。
分享提纲:
1、介绍异地多活的背景以及对UPRedis带来的技术挑战;
2、介绍UPRedis的异地多活整体设计以及相关组件功能;
3、重点介绍为实现异地多活,UPRedis对内核的改造,包括防止循环同步机制、AOFBINLOG机制以及基于LWW-Element-Set的终一致性方案;
4. 简要介绍多活的使用策略和案例。
分享要点:
1、首先从为什么不使用Redis原生复制引出异地多活的挑战,包括:
1) 网络中断,可能频繁触发全量同步(加剧网络拥塞),引发雪崩;
2) 异地多写冲突,直接同步可能写丢失,导致中心数据不一致。
2、其次介绍AOFBINLOG特性以及该特性如何异地解决网络中断问题;
3、后,重点介绍基于Lww-Element-Set的终一致性方案。介绍UPRedis如何深度结合redis编码结构,仅以8Byte内存编码CRDT元信息,以及采用Inline和Active结合分布式GC方法,解决LWW-Element-Set的内存累积问题。
数据库研发工程师,毕业于北京大学,工作后持续参与银联分布式计算与存储产品的研发设计,负责UPRedis扩缩容、冷热分离、异地同步等关键特性研发,现为分布式缓存产品UPRedis研发负责人,同时支持和参与其他分布式产品研发设计,也是银联企业级操作系统维护者之一。热爱开源,热衷社区回馈,致力于打造高性能、安全可靠的缓存产品。
新浪微博数据库平台支撑亿级日活的新浪微博的所有业务的数据库需求,目前有万台服务器规模,万亿级的NoSQL缓存访问,PB级关系数据存储。随着微博业务的日益增长,如何在个位数的DBA规模下更好的支持服务器和实例规模的增长,实现万级别实例的精细化管理,提高资源利用率降低公司成本。微博典型的业务场景就是应对各种热点事件,如何针对热点事件做合理的资源选型,借助公有云的扩展性和灵活性实现数据库资源更好的弹性,通过更低成本来应对热点峰值,技术上都面临着很大挑战。
分享提纲:
a. 新浪微博数据库服务现状;
b. 万级实例的智能调度,实现数据库自动化和精细化管理;
c. 未来数据库容器化探索;
分享要点:
首先,介绍微博数据库平台现状和业务场景,微博数据库面临的痛点和问题;
其次,数据库资源调度平台架构实现,兼容MySQL Redis等多种数据库资源调度,数据库高可用方案和调度平台的整合,数据库资源的智能化调度,提高整体利用率,数据库资源的精细化调度和服务化治理,如何实现数据库资源的弹性更好的支持业务;
后,数据库资源调度的容器化探索。
09年毕业于西安交通大学,之前从事过数据分析、大数据报表开发、VBA开发、python后端开发,15年开始在每日优鲜、达令家等一些创业公司担任DBA工作,目前就职于新浪微博基础架构平台,主要负责NoSQL和DB类资源调度、云化和自动化运维体系建设和落地。