 Go in TiDBGo in TiDB Yao Wei | PingCAP About me ● Yao Wei (姚维) ● TiDB Kernel Expert, General Manager of South Region, China ● 360 Infra team / Alibaba-UC / PingCAP ● Atlas/MySQL-Sniffer ● Infrastructure software HBase Cassandra MongoDB ... Google Spanner Google F1 TiDB RDBMS NoSQL NewSQL Architecture TiKV TiKV TiKV TiKV Raft Raft Raft TiDB TiDB TiDB ... ... Placement Driver (PD) Control flow: Balance queries ● Very complex OLAP queries ● External Consistency ● SQL is much more complex than KV Why TiDB choose Golang? ● Easy-learning ● Productivity ● Concurrency ● Easy to trace bugs and profile0 码力 | 22 页 | 1.01 MB | 1 年前3 Go in TiDBGo in TiDB Yao Wei | PingCAP About me ● Yao Wei (姚维) ● TiDB Kernel Expert, General Manager of South Region, China ● 360 Infra team / Alibaba-UC / PingCAP ● Atlas/MySQL-Sniffer ● Infrastructure software HBase Cassandra MongoDB ... Google Spanner Google F1 TiDB RDBMS NoSQL NewSQL Architecture TiKV TiKV TiKV TiKV Raft Raft Raft TiDB TiDB TiDB ... ... Placement Driver (PD) Control flow: Balance queries ● Very complex OLAP queries ● External Consistency ● SQL is much more complex than KV Why TiDB choose Golang? ● Easy-learning ● Productivity ● Concurrency ● Easy to trace bugs and profile0 码力 | 22 页 | 1.01 MB | 1 年前3
 1_丁来强_开源AIOps数据中台搭建与Python的作用Telemetry - SkyWalking • Apache孵化阶段 • 国内⽤用的⽐比较多 • 性能影响较⼩小(<10%) • Cloud Native容器器化⽀支持好 • ⽀支持存储到ES/TiDB、 MySQL等 InfluxData stack (TICK) • Telegraf + InfluxDB + Chronograf + Kapacitor • InfluxDB:⾼高性能的时序数据库。 hon作⽤用 • 数据治理理:Python ETL、PySpark、Flink/Blink-Python • 机器器学习:Airflow(编排)+ 如下机器器学习框架 • ⾃自动化:Ansible、Puppet等 • AI增强 - 降噪去重与模式识别 • 对海海量量⽇日志进⾏行行模式聚类(例例如从65万条⽇日志,聚类出50条⽇日志模式) 阿⾥里里云⽇日志服务 Sumologic0 码力 | 48 页 | 17.54 MB | 1 年前3 1_丁来强_开源AIOps数据中台搭建与Python的作用Telemetry - SkyWalking • Apache孵化阶段 • 国内⽤用的⽐比较多 • 性能影响较⼩小(<10%) • Cloud Native容器器化⽀支持好 • ⽀支持存储到ES/TiDB、 MySQL等 InfluxData stack (TICK) • Telegraf + InfluxDB + Chronograf + Kapacitor • InfluxDB:⾼高性能的时序数据库。 hon作⽤用 • 数据治理理:Python ETL、PySpark、Flink/Blink-Python • 机器器学习:Airflow(编排)+ 如下机器器学习框架 • ⾃自动化:Ansible、Puppet等 • AI增强 - 降噪去重与模式识别 • 对海海量量⽇日志进⾏行行模式聚类(例例如从65万条⽇日志,聚类出50条⽇日志模式) 阿⾥里里云⽇日志服务 Sumologic0 码力 | 48 页 | 17.54 MB | 1 年前3
 高可用与一致性:构建强一致性分布式数据库 TiDB-沈泰宁构建强⼀一致性分布式数据库 TiDB 沈泰宁 R & D Engineer @ PingCAP ⾃自我介绍 ⾃自我介绍 • 沈泰宁 • R&D Engineer @ PingCAP • Maintainer • rust-prometheus • grpc-rs • … ⽬目录 • What is TiDB? • How to test? What is TiDB? Single com/pingcap/tidb TiDB Overview MySQL wired protocol SQL NoSQL tidb-server tikv-server •No single point of failure •Automatic failover High Availability at Scale •Snapshot isolation @ TiDB •Linearizability bugs •Redis •etcd •Cassandra … Jepsen Jepsen: How does it work? N1 N2 N3 N4 N5 Control TiDB Cluster Requests & Nemesis •Network •Clock •Process Nemesis Network: Partition One N1 N20 码力 | 45 页 | 4.63 MB | 1 年前3 高可用与一致性:构建强一致性分布式数据库 TiDB-沈泰宁构建强⼀一致性分布式数据库 TiDB 沈泰宁 R & D Engineer @ PingCAP ⾃自我介绍 ⾃自我介绍 • 沈泰宁 • R&D Engineer @ PingCAP • Maintainer • rust-prometheus • grpc-rs • … ⽬目录 • What is TiDB? • How to test? What is TiDB? Single com/pingcap/tidb TiDB Overview MySQL wired protocol SQL NoSQL tidb-server tikv-server •No single point of failure •Automatic failover High Availability at Scale •Snapshot isolation @ TiDB •Linearizability bugs •Redis •etcd •Cassandra … Jepsen Jepsen: How does it work? N1 N2 N3 N4 N5 Control TiDB Cluster Requests & Nemesis •Network •Clock •Process Nemesis Network: Partition One N1 N20 码力 | 45 页 | 4.63 MB | 1 年前3
 03 小罗 python与devops 构建Devops常用软件技术栈 •代码管理(SCM):GitHub、GitLab、SubVersion •构建工具:Ant、maven •自动部署:ansible、saltstack、puppet •持续集成(CI):Jenkins •配置管理:Ansible、Chef、Puppet、SaltStack •容器:Docker、kvm •编排:Kubernetes、openstack、Apache 5、消息通知机制 6、发布故障如何快速回滚 CMDB为基础架构由下至上 Ansible发布 为什么使用python 1、入门快速简单 2、丰富的系统管理模块,可以快速管理linux 操作系统 3、丰富的模块、类似gitlab、jenkins、ansible 等自动化软件可以快速开发 4、自动化批量管理软件,ansible、saltstack由python开发、可以自定义开发 相关组件 5 5、web框架简单上述,笔者使用flask一个文件就可以完成后端简单开发。 对于ansible api重新封装 from pprint import pprint from Ansible2_myAPI.playbook_runner import PlaybookRunner runner = PlaybookRunner( playbook_path=“deploy.yml", hosts="1920 码力 | 22 页 | 1.64 MB | 1 年前3 03 小罗 python与devops 构建Devops常用软件技术栈 •代码管理(SCM):GitHub、GitLab、SubVersion •构建工具:Ant、maven •自动部署:ansible、saltstack、puppet •持续集成(CI):Jenkins •配置管理:Ansible、Chef、Puppet、SaltStack •容器:Docker、kvm •编排:Kubernetes、openstack、Apache 5、消息通知机制 6、发布故障如何快速回滚 CMDB为基础架构由下至上 Ansible发布 为什么使用python 1、入门快速简单 2、丰富的系统管理模块,可以快速管理linux 操作系统 3、丰富的模块、类似gitlab、jenkins、ansible 等自动化软件可以快速开发 4、自动化批量管理软件,ansible、saltstack由python开发、可以自定义开发 相关组件 5 5、web框架简单上述,笔者使用flask一个文件就可以完成后端简单开发。 对于ansible api重新封装 from pprint import pprint from Ansible2_myAPI.playbook_runner import PlaybookRunner runner = PlaybookRunner( playbook_path=“deploy.yml", hosts="1920 码力 | 22 页 | 1.64 MB | 1 年前3
 Go 构建大型开源分布式数据库技术内幕Go 搭建大型开源分布式数据库技术内幕 shenli@PingCAP 关于我 ● 申砾 (Shen Li) ● TiDB 技术负责人 ● 网易有道 / 360搜索 / PingCAP ● Infrastructure software engineer 为什么需要一个新的数据库? 从单机数据库到 NewSQL ● 关系型数据库 ● NoSQL ● 中间件 ● NewSQL Redis HBase Cassandra MongoDB ... Google Spanner Google F1 TiDB RDBMS NoSQL NewSQL NewSQL 是什么 ● 水平扩展 ● 事务 ● 高可用 & 自动故障恢复 ● SQL TiDB ● Scalability as the first class feature ● SQL is necessary it right and make it fast. ● 测试很重要 ● 简单易用 ● 和社区结合 架构 TiKV TiKV TiKV TiKV Raft Raft Raft TiDB TiDB TiDB ... ... ... ... ... Placement Driver (PD) Control flow: Balance / Failover Metadata / Timestamp0 码力 | 44 页 | 649.68 KB | 1 年前3 Go 构建大型开源分布式数据库技术内幕Go 搭建大型开源分布式数据库技术内幕 shenli@PingCAP 关于我 ● 申砾 (Shen Li) ● TiDB 技术负责人 ● 网易有道 / 360搜索 / PingCAP ● Infrastructure software engineer 为什么需要一个新的数据库? 从单机数据库到 NewSQL ● 关系型数据库 ● NoSQL ● 中间件 ● NewSQL Redis HBase Cassandra MongoDB ... Google Spanner Google F1 TiDB RDBMS NoSQL NewSQL NewSQL 是什么 ● 水平扩展 ● 事务 ● 高可用 & 自动故障恢复 ● SQL TiDB ● Scalability as the first class feature ● SQL is necessary it right and make it fast. ● 测试很重要 ● 简单易用 ● 和社区结合 架构 TiKV TiKV TiKV TiKV Raft Raft Raft TiDB TiDB TiDB ... ... ... ... ... Placement Driver (PD) Control flow: Balance / Failover Metadata / Timestamp0 码力 | 44 页 | 649.68 KB | 1 年前3
 5 How to integrate Graph mode into RDBMS smoothly => nil TiDB 架构 01. 副标题 TiDB TiDB Worker Spark Driver TiKV Cluster (Storage) Metadata TiKV TiKV TiKV MySQL Clients Syncer Data location Job TiSpark DistSQL API TiKV TiDB TSO/Data TSO/Data location Worker Worker Spark Cluster TiDB Cluster TiDB ... ... ... DistSQL API PD PD PD Cluster TiKV TiKV TiDB PD 天下大势,合久必分,分久必合 《三国演义》 图 + 关系型多模实现 01. 副标题 g_prefix Vertex_ID Tag_ID OrderBy Limit Traverse Projection GraphTagReader Filter (age>10) https://github.com/tigraph/tidb DEMO 第三部分 DEMO 01. 副标题 -- 创建 people 点 CREATE TAG people (id BIGINT, name VARCHAR(32)); -- 写入0 码力 | 26 页 | 1.14 MB | 1 年前3 5 How to integrate Graph mode into RDBMS smoothly => nil TiDB 架构 01. 副标题 TiDB TiDB Worker Spark Driver TiKV Cluster (Storage) Metadata TiKV TiKV TiKV MySQL Clients Syncer Data location Job TiSpark DistSQL API TiKV TiDB TSO/Data TSO/Data location Worker Worker Spark Cluster TiDB Cluster TiDB ... ... ... DistSQL API PD PD PD Cluster TiKV TiKV TiDB PD 天下大势,合久必分,分久必合 《三国演义》 图 + 关系型多模实现 01. 副标题 g_prefix Vertex_ID Tag_ID OrderBy Limit Traverse Projection GraphTagReader Filter (age>10) https://github.com/tigraph/tidb DEMO 第三部分 DEMO 01. 副标题 -- 创建 people 点 CREATE TAG people (id BIGINT, name VARCHAR(32)); -- 写入0 码力 | 26 页 | 1.14 MB | 1 年前3
 领域驱动设计&中台/金融支付系统的改造之路���������,��� �. ���� • Jenkins ���� • Nexus • Tomcat • Docker • Nginx ����� •JUnit •Jmeter ���� •Ansible ���� • Prometh eus • ELK ����� • Gradle • Grunt ���� • ��� | Docker ���� • Redmine | Trello �� • ECS ����IP������ ��+������ • �������admin� app�db�log������ • ���API + Python ��� ���� • Ansible ��������� ��� �����Elastic Cloud Platform 300+ Jenkins Jobs 10+ �� �������DevOps Automation0 码力 | 28 页 | 560.52 KB | 1 年前3 领域驱动设计&中台/金融支付系统的改造之路���������,��� �. ���� • Jenkins ���� • Nexus • Tomcat • Docker • Nginx ����� •JUnit •Jmeter ���� •Ansible ���� • Prometh eus • ELK ����� • Gradle • Grunt ���� • ��� | Docker ���� • Redmine | Trello �� • ECS ����IP������ ��+������ • �������admin� app�db�log������ • ���API + Python ��� ���� • Ansible ��������� ��� �����Elastic Cloud Platform 300+ Jenkins Jobs 10+ �� �������DevOps Automation0 码力 | 28 页 | 560.52 KB | 1 年前3
 Python in Azure Functions 基于Python的Azure Functions实践 赵健ranking of the top programming languages Python in Azure 创建&管理 Azure 云端资源 Azure SDK for Python Ansible Azure Module 支持 Python 的 Dev Tools Azure DevOps Azure NoteBook 运行 Python 代码 VM App Service Functions 的集成 Azure Functions 适用场景 – 机器学习 Recap - Python in Azure 创建&管理 Azure 云端资源 Azure SDK for Python Ansible Azure Module 支持 Python 的 Dev Tools Azure DevOps Azure NoteBook 运行 Python 代码 VM App Service Functions0 码力 | 28 页 | 12.57 MB | 1 年前3 Python in Azure Functions 基于Python的Azure Functions实践 赵健ranking of the top programming languages Python in Azure 创建&管理 Azure 云端资源 Azure SDK for Python Ansible Azure Module 支持 Python 的 Dev Tools Azure DevOps Azure NoteBook 运行 Python 代码 VM App Service Functions 的集成 Azure Functions 适用场景 – 机器学习 Recap - Python in Azure 创建&管理 Azure 云端资源 Azure SDK for Python Ansible Azure Module 支持 Python 的 Dev Tools Azure DevOps Azure NoteBook 运行 Python 代码 VM App Service Functions0 码力 | 28 页 | 12.57 MB | 1 年前3
 Secure access to EC2 (for developers)and cons – very simple method, only ssh configuration required – seamless support of tools like Ansible – easy to start with – bastion host is a host, we need to pay for it – server as any other need configuration is way more complex – System Manager agent needs to be installed – configuration of Ansible is possible, however annoying(aka use Saltstack) ssm - costssolution three - EC2 Instance Connect0 码力 | 10 页 | 3.11 MB | 6 月前3 Secure access to EC2 (for developers)and cons – very simple method, only ssh configuration required – seamless support of tools like Ansible – easy to start with – bastion host is a host, we need to pay for it – server as any other need configuration is way more complex – System Manager agent needs to be installed – configuration of Ansible is possible, however annoying(aka use Saltstack) ssm - costssolution three - EC2 Instance Connect0 码力 | 10 页 | 3.11 MB | 6 月前3
 Real world Rust
- Why and how we use Rust in TiKVhacker / Infrastructure Engineer ● MSRA / Netease / Wandoujia / PingCAP ● CTO of PingCAP ● Codis / TiDB / TiKV ● Go / Python / Rust ... What’s Rust ● Yet another system programming language ○ Maintain 数据库 ● 支持 ACID 跨行事务支持 ● 支持 MVCC 无锁的快照读 ● 构建于 Raft 之上,不依赖分布式文件系统 ○ 更少的第三方依赖 ○ 更高的性能(低延迟) ● 配合 TiDB 使用,需要有健全的逻辑实现 SQL 层的下推算子 TiKV 的前置需求 ● 极高的性能要求,尽可能低延迟,而且延迟需要稳定 ● 设计分布式系统的逻辑,极其复杂 ○ Raft ○ Multi-Raft0 码力 | 29 页 | 506.53 KB | 1 年前3 Real world Rust
- Why and how we use Rust in TiKVhacker / Infrastructure Engineer ● MSRA / Netease / Wandoujia / PingCAP ● CTO of PingCAP ● Codis / TiDB / TiKV ● Go / Python / Rust ... What’s Rust ● Yet another system programming language ○ Maintain 数据库 ● 支持 ACID 跨行事务支持 ● 支持 MVCC 无锁的快照读 ● 构建于 Raft 之上,不依赖分布式文件系统 ○ 更少的第三方依赖 ○ 更高的性能(低延迟) ● 配合 TiDB 使用,需要有健全的逻辑实现 SQL 层的下推算子 TiKV 的前置需求 ● 极高的性能要求,尽可能低延迟,而且延迟需要稳定 ● 设计分布式系统的逻辑,极其复杂 ○ Raft ○ Multi-Raft0 码力 | 29 页 | 506.53 KB | 1 年前3
共 77 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8














 
 