TiDB

剖析Spark数据分区之Spark streaming&TiSpark

青春壹個敷衍的年華 提交于 2020-12-12 15:52:24
本文是《剖析Spark数据分区》系列文章的第三篇,本篇我们将分析Spark streaming,TiSpark中的数据分区。 系列一: 剖析Spark数据分区之Hadoop分片 系列二: 剖析Spark数据分区之Spark RDD分区 1. Kafka +Spark Streaming 图 1 Spark Streaming从Kafka接收数据,转换为Spark Streaming中的数据结构DStream即离散数据流。 数据接收方式有两种: 1)使用Receiver接收的旧方法; 2)使用Direct拉取的新方法 (Spark 1.3引入) ; 1)Receiver方式 当前spark已经 不支持 该模式。 图 2 receiver模式的 并行度 由spark.streaming.blockInterval决定,默认是200ms。 receiver模式接收block.batch数据后会封装到RDD中,这里的block对应RDD中的partition。 batchInterval一定的情况 下: 减少 spark.streaming.Interval参数值,会 增大 DStream中的partition个数。 建议spark.streaming.Interval 最低不能低于50ms 。 2)Direct方式 图 3 Spark会创建跟Kafka partition一样多的RDD

CNCF宣布etcd毕业

你说的曾经没有我的故事 提交于 2020-12-12 07:28:32
在过去的12个月中,广泛使用的数据存储解决方案已经有200位不同的贡献者 旧金山,加利福尼亚州--2020年11月24日-- CNCF®(云原生计算基金会,Cloud Native Computing Foundation®),旨在为云原生软件构建可持续的生态系统,今天宣布etcd毕业。从孵化到毕业阶段,etcd已经被越来越多的人采用、拥有开放的治理过程、特性成熟度,以及对社区、可持续性和包容性的强烈承诺。 etcd 是分布式的、可靠的键值存储,它提供了可靠的方式来存储需要由分布式系统或机器集群访问的数据。任何复杂的应用程序,从简单的web应用程序到Kubernetes,都可以从etcd读取数据并将数据写入其中。该项目于2013年在CoreOS创建,并于2018年12月作为孵化项目加入CNCF。 https://etcd.io/ “etcd项目是Kubernetes内部的关键组件,其他许多项目都依赖etcd来实现可靠的分布式数据存储。”CNCF CTO Chris Aniszczyk说:“我们对etcd在规模上持续达到的里程碑和在最近的保安审计上的成熟处理方式留下深刻印象,我们期待其作为毕业项目培育社区。” etcd被 许多公司 用于生产,包括阿里巴巴、亚马逊、百度、思科、EMC、谷歌、华为、IBM、红帽、Uber、Verizon等,以及Kubernetes、CoreDNS、M3

CNCF宣布TiKV毕业

爷,独闯天下 提交于 2020-12-12 07:15:26
云原生键值数据库项目在全球拥有近1000家生产用户 旧金山,加利福尼亚州-2020年9月2日- CNCF®(Cloud Native Computing Foundation®,云原生计算基金会)为云原生软件构建可持续的生态系统,今天宣布TiKV是第12个毕业的项目。从孵化阶段到毕业阶段,TiKV被越来越多的人采用,拥有一个开放的治理过程,特性成熟,以及对社区、可持续性和包容性的坚定承诺。 TiKV是一个以Rust编写的开源分布式事务键值数据库。它提供具有ACID保证的事务性键值API。项目为需要数据持久性、水平可伸缩性、分布式事务、高可用性和强一致性的应用程序提供了统一的分布式存储层,使其成为下一代云原生基础设施的理想数据库。 “TiKV是我们第一个基于Rust的项目,它是一个真正灵活和可扩展的云原生键值存储。”CNCF CTO/COO Chris Aniszczyk说:“自项目加入CNCF以来,我们对项目的成长及培育全球开源社区的愿望印象深刻。” 自2018年8月加入CNCF以来,在生产中采用TiKV的公司增加了一倍,达到了1000家,横跨多个行业,核心仓库的贡献者从78位增加到226位。维护团队目前有7人,所代表的企业分布健康,包括PingCAP、知乎、京东云、一点资讯等。 PingCAP 首席工程师、TiKV 项目负责人唐刘表示:“开源已经成为全球基础软件发展的重要方向

一次集齐年度云原生技术干货,PingCAP 带你走进 2020 Cloud Native Day

烈酒焚心 提交于 2020-12-10 14:12:58
随着云原生技术的迅猛发展,IT 基础设施正在发生巨大变革,许多企业都将其架构迁移至云原生平台,通过云原生技术,使得企业在公有云、私有云和混合云等云环境中,构建和运行应用变得更加容易,更能充分利用云环境的优势。 作为早期的云原生技术布道者与实践者,PingCAP 联手 CNCF、VMware 、网易数帆与阿里云,共同举办 2020 Cloud Native Day(2020 云原生生态大会)。为期两天的线上主题分享,您将有机会听到云原生领军企业和组织分享的云原生战略与实践,剖析云原生技术带来的挑战和机遇,推进云原生技术与企业 IT 的融合,更有来自头部用户的技术实践和创新分享。 PingCAP 重磅议题抢先剧透 Is Shared-nothing dead?云原生数据库设计新思路 黄东旭 | PingCAP 联合创始人兼 CTO 云计算从 AWS 初创时的牛刀小试到如今巨大的行业和生态,显现出不可逆转的趋势。未来一切都会在云上,云上生态也需要新的基础软件。本次演讲将系统化分析云改变了什么?云基础设施和软件融合有哪些新方向? TiDB Cloud 可观测性 郑佳金 | PingCAP DBaaS 工程师 TiDB Cloud 依托于公有云提供开箱即用的云数据库托管服务,通过水平扩展拥有近乎无限的存储容量和计算能力,支持多云多租户。本议题主要分享如何在云上监控多个 TiDB 与

基于 Chaos Mesh® 和 Argo 打造分布式测试平台

℡╲_俬逩灬. 提交于 2020-12-03 08:09:53
不久前我们开源了基于 Kubernetes 的混沌测试工具 Chaos Mesh® ,Chaos Mesh 提供了模拟系统异常状况的能力,但这只是混沌工程中的一环,完整混沌工程核心原则包含了系统稳定状态的定义、提出假设、运行实验以及验证和改进。 本篇文章主要介绍我们是如何在 Chaos Mesh 和 Argo 的基础上打造自己的自动化测试平台 TiPocket (https://github.com/pingcap/tipocket) ,实现完全自动化的混沌测试,构成混沌测试完整闭环。 为什么需要 TiPocket? 为了确保用户的数据安全,我们需要确保给用户提供的每一个 TiDB 版本都已经经过了严格的测试,所以我们为 TiDB 设计了各种异常场景,并实现了数十个测试 Case,所以在我们的 Kubernetes 集群中,可能同时运行着十几个甚至几十个混沌实验,即使我们拥有了 Chaos Mesh 来帮助我们管理错误注入,但这还远不够,我们还需要去管理 TiDB 集群,需要去收集指标,需要去分析结果,同时进行如此多的混沌实验,另一方面,我们还需要对 TiDB 生态中的其他工具进行混沌测试,这是无法想象的,因此,我们开发了 TiPocket 来解放自己。 TiPocket 是一个基于 Kubernetes 和 Chaos Mesh 的完全自动化测试框架 ,目前我们主要使用它用来测试

【技术猩球】牛人分享:大数据架构师在关注什么?

别说谁变了你拦得住时间么 提交于 2020-11-21 01:49:25
在一个大数据团队中,大数据架构师主要关注的 核心问题就是技术架构选型问题 。架构选型问题一般会受到哪些因素的影响呢?在我们的实践中,一般大数据领域架构选型最受以下几个因素影响: 数据量级 这一点在大数据领域尤其是一个重要的因素。不过从根本上讲,数据量级本身也是一种业务场景的衡量。数据量级的不同往往也就昭示着业务场景的不同。 业务需求 经验丰富的大数据架构师能够从纷繁的业务需求中提炼出核心技术点,根据抽象的技术点选择合适的技术架构。主要的业务需求可能包括:应用实时性要求、查询的维度和灵活程度、多租户、安全审计需求等等。 维护成本 这一点上大数据架构师一方面要能够清楚的了解各种大数据技术栈的优劣势,在满足业务需求的要求下,能够充分的优化架构,合理的架构能够降低维护的成本,提升开发的效率。 另一方面, 大数据架构师要能清楚的了解自己团队成员,能了解其他同学的技术专长和品位,能够保证自己做的技术架构可以得到认可和理解,也能得到最好的维护和发展。 接下来我们会围绕这几个方面去看看,做一个最适合自己团队业务的架构选型会如何受到这些因素的影响? 技术架构选型 业务需求是五花八门的,往往影响我们做技术选型的不是种种需求的细节,而是经过提炼后的一些具体的场景。就好比,业务需求提出我们要做一个日志分析系统,或者要做一个用户行为分析系统,这些具体需求背后我们要关注哪些具体的点?这是一个很有趣的问题

做一切为了好玩的极客,TiDB Committer 王贺的心路历程

社会主义新天地 提交于 2020-11-20 16:49:53
王贺看起来是一个不走寻常路的大三学生,从小就喜欢计算机,对于很多大学才开始接触编程的同学来说,高三就可以自己做一个 Linux 发行版无疑是同龄人中的佼佼者了。 今天就来了解一下 TiDB Committer,DDL SIG 的 xhebox 的贡献之路。 当时怎么想到要自己做一个 Linux 发行版呢? 开始接触 Linux 的时候我觉得 glibc 太大了,下载下来有几十 MB 所以想换掉它。当时正好接触到了除了 glibc 以外的 libc,我就萌生了自己做发行版这个想法,甚至还想把 GNU 所有的东西都换掉,虽然最后失败了,但发行版还是做了下来。 我从小就喜欢折腾这些东西,小学的时候用 Discuz 搭建过网站,高中时折腾苹果系统,这些都是因为兴趣所以自学的,也给我高三做 Linux 发行版打下了基础。我也是那个时候开始了解到 Go,我的 Linux 发行版的包管理器就是用 Go 写的,最近也开始在学习 Rust。 你做的 linux 发行版现在可以下载到吗? 以前是可以在 GitHub 上下载,现在不行了,我没有维护二进制包管理器,如果别人想用的话恐怕需要见到我本人,我可以用硬盘复制一份:)主要原因是维护二进制包非常耗时间,以前有 600 个包,现在被我削减到只有 300 个。我平时上课做实验也没有这么多时间, 几百个包都是手动编译,如果开源再维护,那可能没办法做其他事了

TiDB 的现在和未来

∥☆過路亽.° 提交于 2020-11-19 14:04:28
本文根据黄东旭在 PingCAP D 轮融资线上发布会的演讲实录进行整理。 TiDB 的现在和未来 大家好,我是黄东旭,是 PingCAP 的联合创始人和 CTO,这是 PingCAP 成立以来的第一次发布会,我想跟大家简单聊聊 TiDB 在产品和技术上的更新。考虑到线上的很多观众不一定是有很强的技术背景,我将尽我所能将技术的部分说得让大家都能够理解。 在讲正题之前有一个小故事,我们做基础软件的产品经理去跟客户聊需求的时候,客户经常都会说:对于数据库,我的要求特别简单、特别基础、非常朴素,我不要求很多功能,安全稳定是必须的,最好能高可用,性能一定要好,如果数据量大了,能实现弹性伸缩就更好了;另外,最好别让我学太多新东西,用起来跟过去使用的产品差不多,这就是一款完美的数据库产品。 就像大家在家里用自来水一样,我们对自来水的需求就是拧开水龙头水就能出来,但是背后自来水厂是怎么处理的大家不用知道,我们只需要根据实际情况使用冷水或者热水就好。但是从技术的角度来说,刚才类似冷热水这个非常朴素的基础需求,类比一下放到数据库的世界这就是一个图灵奖级别的基础需求,稍微解释一下图灵奖是计算机行业学术界最顶级的,相当于计算机界的诺贝尔奖。 这里有两位行业泰斗级的人物,左边 Leslie Lamport 在 2013 年研究相关问题拿了图灵奖,右边这位跟我们挺有缘的,发型跟(我们的 CEO)刘奇同学挺像

PingCAP 完成 D 轮 2.7 亿美元融资,创造全球数据库历史新的里程碑

做~自己de王妃 提交于 2020-11-19 11:00:11
企业级开源分布式数据库厂商 PingCAP 日前宣布完成 2.7 亿美元的 D 轮融资,创造全球数据库历史新的里程碑。 本轮融资由纪源资本(GGV Capital)、Access Technology Ventures、晨曦投资 (Anatole Investment)、时代资本(Jeneration Capital)、五源资本(5Y Capital 原晨兴资本)共同领投,贝塔斯曼亚洲投资基金(BAI)、Coatue、天际资本(FutureX Capital)、昆仑资本(Kunlun)、挚信资本(Trustbridge Partners)及老股东经纬中国(Matrix Partners China)、云启资本(Yunqi Partners)跟投,瑞银担任本轮融资的独家财务顾问。 本轮融资将用于分布式数据库关键核心技术的研发,聚焦解决方案和专业服务支持体系的不断完善,持续加大开源社区生态体系建设,进一步推进云数据库服务在全球市场的覆盖,持续领跑全球新一代分布式数据库赛道。 PingCAP 成立于 2015 年,是一家企业级开源分布式数据库厂商,提供包括开源分布式数据库产品、解决方案与咨询、技术支持与培训认证服务,致力于为全球行业用户提供稳定高效、安全可靠、开放兼容的新型数据基础设施,解放企业生产力,加速企业数字化转型升级。 由 PingCAP 创立的分布式关系型数据库 TiDB

九问 Gopher China 2020 讲师之毛康力:从 Go 1.0 使用至今的鲜肉老司机

南笙酒味 提交于 2020-11-13 11:45:55
本期嘉宾:毛康力 PingCAP 研发工程师。目前从事数据库内核开发相关的工作,是 TiDB 项目的核心开发者之一。从 Go 1.0 版本发布时开始接触这门语言,并且在之后的工作中一直使用 Go 作为主力开发语言。早期写过关于 Go 的底层实现的开源电子书《深入解析 Go》,对 Go 的 Runtime 层有比较多的研究。业余喜欢折腾各种编程语言,尤其是 lisp,设计过自己的 lisp 方言并翻译成 Go。其它的关注点,主要还是在分布式系统以及基础架构相关的领域。 目前 Go 语言更新到 1.15 版本,已经是一门11岁的语言了,你觉得 Go 语言依然保持活力的核心竞争力是什么?有什么不足是需要在后续的版本迭代中改进的? 01 Go 语言本身设计得简洁易上手,基础库和核心项目让生态搭建起来了,我认为这是它能保持活力和竞争力的关键因素。 对当前的版本迭代已经挺满意了,感受得到 Go 官方团队的持续努力。 最初是如何接触到 Go 的呢?在使用 Go 之前都写过哪些语言,请谈谈对他们差异的感受。 02 Go 语言 1.0 版本发布的时候,无意中看了一下,然后就爱上这门语言了。 在 Go 之前,算正儿八经写过代码的,就只有 C 吧,C++ 学过但没学会。C 很能够锻炼基础素质,这是一些高级语言里面不容易学到的东西。接触过的其它语言就太多了,从汇编到 C,到 lua,lisp,F#