GV,全称Google Ventures,Alphabet旗下风险投资资金,2009年正式成立,是首批聘用工程师的VC机构,原先主要为了配合Google战略协同,但其后角色越来越独立。...在外界都以为招工程师是走技术VC路线的时候,很可能忽略了Google更核心的目的。 ? 用AI做投资决策 他们要打造一个机器模型,一个用于VC投资的机器学习模型。 现在,这个模型有了更多曝光。...在2013年,当时的GV老大Bill Maris告诉纽约时报,Google拥有全球最大的数据集,还有有史以来最强的云计算设施,几乎不可能再做出愚蠢的投资决策了。...第二,不同维度、不同侧重的数据都会给算法模型带来影响,进而改变最后的决策结果,这又是否完全公正公平? 但这些问题现在都已不再是问题了。...但究竟AI是否适合VC投资的应用?或者是可以完全取代人类进行决策? 目前还远没有标准答案。 ? GV成绩 值得一提的是,当前GV管理资产24亿美元,目标是每年投资约5亿美元。
Cloud Spanner是Google Megastore系统的继承者,Spanner表现出远超前辈的能力。...接触Cloud Spanner 第一次接触到Google Cloud Spanner是因为客户对于新技术的追求与尝试,将我们基本完成的APIs从原先的Google Cloud Sql迁移到Cloud Spanner...但是这些数据库很难做到事务的特性,并且不能支持关系型数据库所支持的功能,例如连表等。并且因为NoSQL的查询语句和关系型数据库的语句区别很大,会导致应用中大量的查询语句和表结构需要重写。...其他特性 Cloud Spanner还有很多其他的特性,包括单区域和多区域配置、多语言支持等。...Spanner所有特性:https://cloud.google.com/spanner#section-8 Cloud Spanner数据类型:https://cloud.google.com/spanner
Spanner是个可扩展,多版本,全球分布式还支持同步复制的数据库。他是Google的第一个可以全球扩展并且支持外部一致的事务。Spanner能做到这些,离不开一个用GPS和原子钟实现的时间API。...在设计之初,Spanner就决心有以下的特性: · 支持类似关系数据库的schema · Query语句 · 支持广义上的事务 为何会这样决定呢?...而必须对Query语句的支持,来自于广受欢迎的Dremel,笔者不久前写了篇文章来介绍他。...Query语句看起来是多了一些扩展的SQL语句。 Spanner的数据模型也不是纯正的关系模型,每一行都必须有一列或多列组件。看起来还是Key-value。主键组成Key,其他的列是Value。...Google Spanner并发控制 Spanner使用TrueTime来控制并发,实现外部一致性。支持以下几种事务。
在 information_schema 中支持显示建表时间 提速包含 MaxOneRow 算子的查询 控制 Join 产生的中间结果集大小,进一步减少 Join 的内存使用 增加 tidb_config...session 变量,输出当前 TiDB 配置 修复 Union 和 Index Join 算子中遇到的 panic 问题 修复 Sort Merge Join 算子在部分场景下结果错误的问题 修复...Show Index 语句显示正在添加过程中的索引的问题 修复 Drop Stats 语句失败的问题 优化 SQL 引擎查询性能,Sysbench 的 Select/OLTP 测试结果提升 10% 使用新的执行引擎提升优化器中的子查询计算速度...相比 1.0 版本,在 TPC-H 以及 TPC-DS 等测试中有显著提升 PD 增加 drop region 调试接口 支持设置 PD leader 优先级 支持配置特定 label 的节点不调度 raft...作为世界级开源的分布式关系型数据库,TiDB 灵感来自于 Google Spanner/F1,具备『分布式强一致性事务、在线弹性水平扩展、故障自恢复的高可用、跨数据中心多活』等核心特性。
关于 Spanner 的介绍可以参考前文:分析 Google Cloud Spanner 的架构 Spanner 之前是一个键值数据库,与现在谈论的 Spanner 是完全不同的东西。...在设计之初,Spanner 就支持事务、外部一致性和透明的故障转移。到后面,Spanner 开始支持带类型的数据库表结构和其它的一些关系型数据库功能,以及支持了 SQL 功能。...开始了 SQL 的实验 F1 是 Spanner 开始 SQL 实验的第一步。F1 是 Google 开发的基于 Spanner 的分布式数据库。...在首次发布时,Spanner 支持用 SQL 查询数据库,而不支持 INSERT,UPDATE和 DELETE 对数据库的修改。...ZetaSQL 是 Cloud Spanner 使用的 SQL 解析器和编译器(现已开源)。不仅如此,Cloud Spanner 还提供了 SQL 语句的分析工具。 ?
Google Spanner F1 - 第一个真正意义上 NewSQL 数据库 全球级分布式关系型数据库,数十万机器组成一个超大的数据库集群。...2017年2月,Google 在其GCP公有云平台正式提供 Cloud Spanner 服务,并于5月GA。...TiDB 优势 TiDB:Google Spanner 和 F1 的开源实现 新一代分布式关系型 NewSQL 数据库 TiDB 基于 2013 年 Google Spanner / F1 论文,在 Google...TiDB 架构概览 TiDB 已成为数据库领域国际顶级开源项目(1/3) TiDB 是全球最成熟稳定的 Google Spanner / F1 的开源实现,是基础软件领域的重大创新,具有极高的工程难度...包括对多类型JOIN 的支持 (Hash/Index lookup, Sort merge),基于成本的CBO优化器框架,过滤和谓词计算下推到分布式存储引擎等一系列特性。
目前看NewSQL代表未来(Google Spanner、F1、FoundationDB),HBase在国内有六个Committer,在目前主流的开源数据库里面几乎是最强的阵容。...选择这个领域也是非常艰难的决定,实在太Hardcore了,当初Google Spanner也做了5年。不过我们是真爱,我们就是技术狂,就是要解决问题,就是要挑大家最头痛的问题去解决。...好在目前阿里的OceanBase给我们服了颗定心丸,大家也不会质疑分布式关系型数据库是否可行。 TiDB名字由来 为什么叫TiDB?...当SQL Layer 拿到这个语句之后会把它拆成对应的分布式KV操作,所以这里会有一个Transactional KV Storage。...谷歌的Spanner,细节非常多,引用的论文有40多篇,很吓人,有些引用的论文也非常经典,很值得一读。Spanner已经不再使用NTP了,需要用一个有信心的靠谱的方式来同步时间。
我们密切关注两个系统,分别是Amazon Aurora和Google Spanner。 1....例如,Google Spanner文档中突出显示了“不支持外键约束或触发器”的事实 。...三、分布式事务:Google Spanner或Percolator? 关于我们应该如何设计分布式事务,我们查看了Google Spanner和Percolator。...我们决定采用Google Spanner方法,因为它可以支持: 更好的水平可扩展性 高度可用且性能更佳的多区域部署。 我们坚信,大多数现代云应用都需要上述两种功能。...四、Raft是否适用于地理分布式工作负载?
Google 经典的“三驾马车” The Google File System (2003) MapReduce: Simplified Data Processing on Large Clusters...Google 的 Spanner 和 F1 。...Spanner: Google’s Globally-Distributed Database (2012) F1: A Distributed SQL Database That Scales (2013...KV并且支持分布式事务; F1 则专注计算层,是一个分布式 SQL 引擎。...个人感觉这 21 世纪以来到现在,Google 几乎成了是工业界分布式系统的“风向标”……著名的两个开源 NewSQL,TiDB 和 CockroachDB 都是 inspire by Spanner
* 支持对物理算子内存使用进行统计,通过配置文件以及系统变量指定超过阈值后的处理行为 * 支持限制单条 SQL 语句使用内存的大小,减少程序 OOM 风险 * 支持在 CRUD 操作中使用隐式的行 ID...DDL 任务的原始语句 * 支持 `Admin Recover Index` 命令,用于灾难恢复情况下修复索引数据支持通过 Alter 语句修改 Table Options PD 增加 Region...Merge 支持,合并数据删除后产生的空 Region experimental 增加 Raft Learner 支持 experimental 调度器优化 * 调度器适应不同的 Region size...100 万 Region TiKV 功能 * 保护关键配置,防止错误修改 * 支持 `Region Merge` [experimental] * 添加 `Raw DeleteRange` API...作为世界级开源的分布式关系型数据库,TiDB 灵感来自于 Google Spanner/F1,具备『分布式强一致性事务、在线弹性水平扩展、故障自恢复的高可用、跨数据中心多活』等核心特性。
我个人理解就当前而言,技术难度最高,最拿得出手的还是Google的spanner,Spanner 是Google的全球级的分布式数据库 (Globally-Distributed Database) 。...下面简单介绍下Google的Spanner,到现在为止应该都只有论文,没有公布实现: Google的Spanner是个可扩展,多版本,全球分布式还支持同步复制的数据库。...他是Google的第一个可以全球扩展并且支持外部一致的事务。Spanner能 做到这些,离不开一个用GPS和原子钟实现的时间API。这个API能将数据中心之间的时间同步精确到10ms以内。...一、CockroachDB CockroachDB的思路源自Google的全球性分布式数据库Spanner。...其理念是将数据分布在多数据中心的多台服务器上,实现一个可扩展,多版本,全球分布式并支持同步复制的数据库。2012年Google公布了Spanner的论文,但是这个项目本身是不开放的。
事务 Spanner中支持三种事务,分别为快照读,只读事务,读写事务,我们来看看Spanner如何利用 TrueTime API 来实现事务的特性。...我并不觉得这是BigTable的缺点,相反,这在有时可以很好的提升效率(我们并不知道在Spanner中行是否存在一个paxos group中,如果是的话效率就差不多了),BigTable也提到了仅支持单行事务的初衷...,用户是否认可它的可用性,如果可用性够高,用户有时是可以忽略掉这个中断的,况且就算出现分区也不一定对用户有影响,而Spanner的可用性是超过5个9的。...参考: 论文《Spanner: Google’s Globally-Distributed Database》 博文《Spanner技术分析》 博文《深入理解Spanner事务》 博文《构建可靠分布式系统的挑战...》 博文《谈谈Spanner和F1》 博文《spanner与bigtable》 博文《Bigtable设计的”得”与”失”》 博文《GOOGLE分布式数据库技术演进研究–从Bigtable、Dremel
1 Google Cloud 与 TiDB:一篇论文引发的不解之缘 作为国内首个开源的分布式 NewSQL 数据库,TiDB 理论基础来自于 2013 年 Google Spanner/F1 论文,特性上和...“我们能做出 TiDB 这样一个开源的实现,让更多的开发者可以更低门槛地去使用、去研究这样的技术,来解决他们的问题,某种程度上来说受到了 Google Spanner 很多方面的启发。”...谈及 TiDB 借鉴 Spanner 的核心技术点时,刘寅进一步解释到,Google 在软件和硬件方面都有非常厉害的创新,比如说像 Spanner 用的 TrueTime 技术,依赖于原子钟和卫星来实现单调递增的全局时间戳...在被问及是否提供方便迁移的便利工具时,刘寅表示,一方面 MySQL 兼容的数据导入、数据迁移工具都可以无缝的应用于 TiDB。...3 讨论云上 TiDB 在行业和场景中的应用 综上所述,既然 TiDB 拥有很好地特性和特点,那么在行业和场景中的应用又是否足够硬核呢?
Spanner is Google's scalable, multi-version, globally distributed, and synchronously-replicated database...针对第二个lesson,Spanner提供了分布式事务支持。 针对第三个lesson,Spanner提供了跨数据中心的同步备份。 针对第四个lesson,Spanner提供了基于SQL的查询语言。...有个Client库https://www.codota.com/code/java/packages/com.google.cloud.spanner ---- 架构 部署的Spanner集群被称为...数据模型 Spanner基于schematized 半关系表,支持类SQL的查询语言和广义事务。 之所以叫半关系表,是因为表面上看起来像是行列,实际上却是仅有key。...Reference: Spanner: Google’s Globally-Distributed Database Problem: 锁的性能+分布式广域时延+查询语言 +强一致性 Related
本文来源于 https://thedataguy.in/internals-of-google-cloud-spanner/。这篇是目前看过解析 Spanner 的内部机制最好的文章。...其中Google Adwords (谷歌广告部门)使用了 90 多个 MySQL Shards(分片)集群方案存储数据,是谷歌内部使用 MySQL 数据库的最大的部门之一。...一个厉害的数据库需要一个高性能的文件系统支持。Colossus 项目由 BigTable 团队发起的,并且 Colossus 也为 BigTable 提供了支持。...全球强一致性 Spanner 的重点就是强一致性。Spanner 支持所有节点之间的强一致性(全局)。如果您在美国地区写入某条数据,那在亚洲地区或任何其他地区都能读取到相同的数据。...读取操作过期或者是有时间限制的读取操作 Spanner 支持 MVCC (多版本并发控制)。因此,Spanner 会将旧数据保留一段时间。
支持通用的SQL(结构化查询语言)语句。 丰富的完整性大大减少了数据冗余和数据不一致的问题。 可以用SQL句子多个表之间做非常繁杂的查询; 关系型数据库提供对事务的支持。...缺点:不支持全球化部署,这为跨地域大规模集群应用 TiDB 设置了障碍。 3.2 Google 的 Spanner Spanner是谷歌公司研发的、可扩展的、多版本、全球分布式、同步复制数据库。...它支持外部一致性的分布式事务。 Spanner 架构,来自 Google 论文 F1 主要作为 SQL 引擎 Spanner 主要负责事务一致性、复制机制、可扩展存储等。...Spanner 架构中的核心处理模块是 Spanserver, Spanner 的架构,来自 Google 论文 Spanserver 的核心工作有三部分: 基于 Paxos 协议的数据复制。...原理如如下: 来自 Google 论文 3.3 CockroachDB 蟑螂数据库 CockroachDB (蟑螂数据库)是一个可伸缩的、支持地理位置处理、支持事务处理的数据存储系统。
支持通用的SQL(结构化查询语言)语句。 丰富的完整性大大减少了数据冗余和数据不一致的问题。 可以用SQL句子多个表之间做非常繁杂的查询; 关系型数据库提供对事务的支持。...缺点:不支持全球化部署,这为跨地域大规模集群应用 TiDB 设置了障碍。 3.2 Google 的 Spanner Spanner是谷歌公司研发的、可扩展的、多版本、全球分布式、同步复制数据库。...它支持外部一致性的分布式事务。 ? Spanner 架构,来自 Google 论文 F1 主要作为 SQL 引擎 Spanner 主要负责事务一致性、复制机制、可扩展存储等。...Spanner 架构中的核心处理模块是 Spanserver, ? Spanner 的架构,来自 Google 论文 Spanserver 的核心工作有三部分: 基于 Paxos 协议的数据复制。...来自 Google 论文 3.3 CockroachDB 蟑螂数据库 CockroachDB (蟑螂数据库)是一个可伸缩的、支持地理位置处理、支持事务处理的数据存储系统。 为什么叫做蟑螂?
Rule Ten Years Later, and Other Computer Storage Rules of Thumb (1997): 此文与十年前的原始论文解释了一个量化公式,用来计算数据页是否应该缓存在内存中...Patience is a Virtue: Revisiting Merge and Sort on Modern Processors (2014): 实际使用中各种排序算法及其利弊很好的综述。...R-tree是B-Tree的扩展,支持多维数据(如地理数据)的查找。...论文对嵌套数据结构的支持谈得很多,对查询执行的细节涉及较少。有好几个开源项目声称自己在构建Dremel的开源版。...Spanner (2012): Spanner是“可扩展、多版本、全球分布和同步复制的数据库”。其中关键是TrueTime API,那个在多个节点之间无需通信而为事件定序。
TiDB 支持限制单条 SQL 语句使用内存的大小,减少程序 OOM 风险 支持下推流式聚合算子到 TiKV 支持配置文件的合法性检测 支持 HTTP API 获取 TiDB 参数信息 Parser 兼容更多...TiKV 修复 PD leader 切换, gRPC call 没被 cancel 的问题 对重要配置进行保护,第一次设置之后不允许变更 增加获取 metrics 的 gRPC API 启动时候,检查是否使用...** 作为世界级开源的分布式关系型数据库,TiDB 灵感来自于 Google Spanner/F1,具备『分布式强一致性事务、在线弹性水平扩展、故障自恢复的高可用、跨数据中心多活』等核心特性。
前言 之前看过 《大规模分布式存储系统:原理解析与架构实战》 ,这个系统设计还是挺有意思的,里面提及了Google的一整套系统都有论文,而且现在已经进化到下一代支持分布式跨行事务的关系型数据库系统了。...Bigtable Percolator Relative Read/s 15513 14590 0.94 Write/s 31003 7232 0.23 Spanner4 Spanner: Google...Spanner4 的特点是基于 时间戳API (后面有提到)的多版本数据库,SQL-based,支持分布式事务,支持跨行事务,支持原子更新元表,副本管理可以随着数据量增长动态分配,也可以由应用程序控制。...每个 tablet 的数据分组里都存了一行的主键,支持“继承”功能(其实是关联,相当于告诉 Spanner4 多个表的关系,以便 Spanner4 把他们尽量放一起,减小跨 tablet 的可能性)。...集成protobuf的解包功能 Google亲儿子呀。不过按照文中的说法这个接入只是支持解包后用作SQL条件用的,存储还是按序列化之后的二进制。
领取专属 10元无门槛券
手把手带您无忧上云