网易互娱的数据库选型和 TiDB 应用实践

2019-10-22
阅读 10 分钟
1.9k
计费组是为网易互娱产品提供统一登录和支付高效解决方案的公共支持部门,对内是互娱的各个游戏工作室,对外是国内外数百个渠道。由于业务场景的特殊性,我们为各个游戏产品部署了不同的应用服务,其中大产品环境独立,小产品集中部署。

TiDB 最佳实践系列(三)乐观锁事务

2019-10-20
阅读 6 分钟
2.5k
TiDB 最佳实践系列是面向广大 TiDB 用户的系列教程,旨在深入浅出介绍 TiDB 的架构与原理,帮助用户在生产环境中最大限度发挥 TiDB 的优势。我们将分享一系列典型场景下的最佳实践路径,便于大家快速上手,迅速定位并解决问题。

Hands-on! 如何给 TiDB 添加新系统表

2019-10-18
阅读 4 分钟
1.6k
对于一个成熟的数据库来说,通过 SQL 来查询系统本身的状态再正常不过,对于 MySQL 来说 INFOMATION_SCHEMA 和 PERFORMANCE_SCHEMA 里面有大量的信息,基本上通过查询些信息,DBA 就能对整个系统的运行状态一目了然。最棒的是,查询的接口正是 SQL,不需要依赖其他的第三方工具,运用表达力强大的 SQL 甚至可以对这些信...

TiDB Hackathon 参考选题扩充,组队参赛走起!

2019-10-16
阅读 3 分钟
2.3k
TiDB Hackathon 2019 已经开放报名 1 个多月啦,之前抓耳挠腮想不到选题、组不到队友的伙伴们都渐渐成队,并开始做赛前准备了。为了刺激围观同学的“灵感小火花”,我们今天又扩充了一波选题,如果大家还不知道做什么项目的话,择日不如撞日,今天就锚定一个果断报名参赛吧!另外,参赛选手在赛前准备阶段对选题有任何疑问...

PD 调度策略最佳实践

2019-10-12
阅读 10 分钟
1.4k
众所周知,PD 是整个 TiDB 集群的核心,负责全局元信息的存储以及 TiKV 集群负载均衡调度,本文将详细介绍 PD 调度系统的原理,并通过几个典型场景的分析和处理方式,分享调度策略的最佳实践和调优方法,帮助大家在使用过程中快速定位问题。本文内容基于 3.0 版本,更早的版本(2.x)缺少部分功能的支持,但是基本原理类...

AutoTiKV:基于机器学习的数据库调优

2019-10-10
阅读 9 分钟
4.8k
TiKV 底层使用了 RocksDB 作为存储引擎,然而 RocksDB 配置选项很多,很多情况下只能通过反复测试或者依靠经验来调优,甚至连 RocksDB 的开发者都自嘲,他们没办法弄清楚每个参数调整对性能的影响。如果有一个自动 tuning 的方案就可以大大减少调优的人力成本,同时也可能在调优的过程中,发现一些人工想不到的信息。我...

TiDB Binlog 源码阅读系列文章(五)Pump Storage 介绍(上)

2019-10-09
阅读 5 分钟
1.6k
在 上篇文章 中,我们主要介绍了 Pump Server 的上线过程、gRPC API 实现、以及下线过程和相关辅助机制,其中反复提到了 Pump Storage 这个实体。本文就将介绍 Pump Storage 的实现,其主要代码在 pump/storage 文件夹中。

十分钟成为 Contributor 系列 | TiDB 向量化表达式活动第二弹

2019-10-08
阅读 3 分钟
1.5k
在 上篇文章 中,我们介绍了 TiDB 如何实现表达式的向量化优化,以及社区同学如何参与这项工程。两周过去了,我们收到了很多来自社区小伙伴们的建议和反馈,今天在这里和大家分享一下活动进展和这些建议及反馈。

TiKV Rust Client 迁移记 - Futures 0.1 至 0.3

2019-09-27
阅读 4 分钟
1.5k
作者介绍:Nick Cameron,PingCAP 研发工程师,Rust core team 成员,专注于分布式系统、数据库领域和 Rust 语言的进展。

十一假期别“宅”啦,一起备战黑客马拉松吧!

2019-09-26
阅读 4 分钟
2k
TiDB Hackathon 2019 将在 10 月 26 - 27 日举办,比赛主题为「Improve」,参赛选手可以为 TiDB 性能、易用性、稳定性、功能等各方面做出提升,当然也可以围绕 TiDB 生态做一些周边工具提升效率。不仅有大咖导师现场带教,奖金也非常丰厚哦~

TiKV 在京东云对象存储元数据管理的实践

2019-09-24
阅读 5 分钟
3.4k
京东云对象存储是在 2016 年作为公有云对外公开的,主要特点是可靠、安全、海量、低成本,应用于包括一些常用的业务场景,比如京东内部的京东商城视频/图片云存储,面向京东云公有云外部的开发者的服务,和面向政府、企业的私有云服务,甚至混合云服务。

十分钟成为 Contributor 系列 | 助力 TiDB 表达式计算性能提升 10 倍

2019-09-17
阅读 5 分钟
2.6k
最近我们扩展了 TiDB 表达式计算框架,增加了向量化计算接口,初期的性能测试显示,多数表达式计算性能可大幅提升,部分甚至可提升 1~2 个数量级。为了让所有的表达式都能受益,我们需要为所有内建函数实现向量化计算。

从使用者到开发者,知乎参与 TiDB 社区背后的故事

2019-09-16
阅读 2 分钟
2k
作者介绍:孙晓光,知乎技术平台团队负责人,负责建设知乎在线和离线的基础设施平台,为业务开发提供统一的基础设施。曾多年从事私有云相关产品开发工作,关注云原生技术,TiKV 项目 Committer。

如何高效利用 Grafana 监控分析 TiDB 指标

2019-09-10
阅读 6 分钟
2.9k
使用 TiDB Ansible 部署 TiDB 集群,会同时部署一套 Grafana + Prometheus 的监控平台,这套监控用来收集和展示 TiDB 集群各个组件和机器的 metric 信息,这些 metric 信息非常丰富,可以帮助使用者分析 TiDB 集群的状态以及 Trouble shooting。随着使用经验的增多,我们积累了一些监控使用上的技巧,在这里分享给大家。

一体化数据同步平台 DM 1.0 GA 发布

2019-09-09
阅读 1 分钟
1.9k
DM(TiDB Data Migration)是由 PingCAP 开发的一体化数据同步平台,支持从 MySQL 或 MariaDB 到 TiDB 的全量数据迁移和增量数据同步。无论是从 MySQL 向 TiDB 进行平滑数据迁移还是用 TiDB 作为多个 MySQL 实例的数据汇总库,都可以通过 DM 来实现。DM 在 TiDB DevCon 2019 上正式开源,经过半年多时间在大量用户、开发...

TiDB 高并发写入常见热点问题及规避方法

2019-09-06
阅读 6 分钟
3.1k
本文通过阐述一个高并发批量写入数据到 TiDB 的典型场景中,TiDB 中常见的问题,给出一个业务的最佳实践,避免业务在开发的时候陷入 TiDB 使用的 “反模式”。

TiKV 源码解析系列文章(十三)MVCC 数据读取

2019-09-04
阅读 15 分钟
1.5k
在 《TiKV 源码解析系列文章(十二)分布式事务》 中,我们介绍了如何在满足事务特性的要求下进行数据写入。本文将介绍数据读取的流程。由于顺序扫(Forward Scan)比较具有代表性,因此本文只介绍顺序扫的流程,而不会介绍点查或逆序扫。点查是顺序扫的简化,相信读者理解了顺序扫的流程后能自己想出点查的实现,而逆序...

TiDB + TiFlash : 朝着真 HTAP 平台演进

2019-09-02
阅读 7 分钟
2.2k
在互联网浪潮出现之前,企业的数据量普遍不大,特别是核心的业务数据,通常一个单机的数据库就可以保存。那时候的存储并不需要复杂的架构,所有的线上请求(OLTP, Online Transactional Processing) 和后台分析 (OLAP, Online Analytical Processing) 都跑在同一个数据库实例上。后来渐渐的业务越来越复杂,数据量越来越...

TiDB 在 58 集团的应用与实践

2019-08-29
阅读 5 分钟
2k
58 集团业务种类繁多,目前包括的业务有 58 同城、赶集网、安居客、58 金融公司、中华英才网、驾校一点通等,数据库种类包括 MySQL、Redis、MongoDB、ES、TiDB。我们自己构建了“58 云 DB 平台”,整合了所有数据库的一体化运维。

TiDB Binlog 源码阅读系列文章(四)Pump server 介绍

2019-08-23
阅读 5 分钟
1.3k
在 上篇文章 中,我们介绍了 TiDB 如何通过 Pump client 将 binlog 发往 Pump,本文将继续介绍 Pump server 的实现,对应的源码主要集中在 TiDB Binlog 仓库的 pump/server.go 文件中。

TiDB 用户问答论坛上线:Ask TUG for Help!

2019-08-22
阅读 2 分钟
2.2k
自 TiDB User Group(TUG)成立以来,小伙伴们都兴致勃勃的想要“攒点新活动”,不得不说,大家的行动力惊人,上周启动的线下活动 “TUG 企业行” 是第一波行动,今天又有第二波惊喜:TiDB 用户问答论坛 asktug.com 上线! 欢迎大家来“灌水”讨论,一起探索 TiDB 的正确使用姿势

TiDB 新特性漫谈:悲观事务

2019-08-21
阅读 6 分钟
3.2k
大家知道,发展到今天,TiDB 不仅仅在互联网行业广泛使用,更在一些传统金融行业开花结果,而悲观事务是在多数金融场景不可或缺的一个特性。另外事务作为一个关系型数据库的核心功能,任何在事务模型上的改进都会影响无数的应用,而且在一个分布式系统上如何漂亮的实现悲观事务模型,是一个很有挑战的工作,所以今天我们...

TiDB 在华泰证券的探索与实践

2019-08-20
阅读 8 分钟
1.8k
作者介绍华泰证券数字科技分布式数据库项目组,主要负责华泰证券分布式数据库系统建设工作,项目组成员均拥有多年数据库从业经历,对数据库运作原理具有较深的研究,并积累了大量实战经验。

这门分布式 KV 存储系统课程教会了我什么? | 我与 Talent Plan

2019-08-20
阅读 2 分钟
1.9k
作者介绍:张艺文,华中科技大学武汉国家光电实验室直博二年级,主要研究方向为基于新型存储设备的 KV 存储。PingCAP Talent Plan 第二期优秀学员。

TiDB 新特性漫谈:从 Follower Read 说起

2019-08-15
阅读 4 分钟
1.7k
很久没有写文章了,正好今天有一些闲暇的时间,写写最近的一些 Update。关注 TiDB 的同学,最近可能注意到 TiKV 这边合并了一个不大不小的 PR #5051 ,支持了一个特性叫做 Follower Read,看到这个功能被合并进主干我确实有点百感交集,还发了条朋友圈庆祝,因为我实在很喜欢这个特性,可能有同学不太理解,今天就写一写...

TiDB 混沌工程实践:如何打造健壮的分布式系统?

2019-08-14
阅读 7 分钟
1.9k
本文转载自 InfoQ 网站 作者:唐刘 策划:赵钰莹 原文链接:[链接] 作为一个分布式数据库,TiDB 面临的严重挑战在于如何让用户相信存储在 TiDB 里面的数据是安全的,不会出现丢失,损坏等情况。因此,在 TiDB 研发初期,PingCAP 就引入了混沌工程,来保证 TiDB 在各种极端情况下面的稳定性。本文整理自 ArchSummit 全球...

TiKV 源码解析系列文章(十二)分布式事务

2019-08-13
阅读 8 分钟
2k
在之前的文章里,我们已经介绍了 TiKV 的 Service 层、Storage 层。相信大家已经大致清楚,TiKV 的事务相关的代码都位于 Storage 层中。本文将更加深入地讲解 TiKV 的事务算法的原理和实现细节。

分布式数据库在 ARM 平台探索之路(一) TiDB 集群在 arm 平台编译安装与部署

2019-08-09
阅读 17 分钟
2.5k
我行在 2018 年开始了基于 ARM 服务器平台的尝试,当前 TDSQL 的冷备数据全部保存在基于 ARM 服务器搭建的 CEPH 存储集群上,运行稳定。在今年贸易战的大背景下,我们数据库团队也尝试将各个数据库产品放到 ARM 平台上去编译并运行起来,为我行在基础架构层面的进一步国产化打下基础。

三十分钟成为 Contributor | 提升 TiDB Parser 对 MySQL 8.0 语法的兼容性

2019-08-09
阅读 10 分钟
2k
TiDB 的一大特性就是和 MySQL 高度兼容,目标是让用户能够无需修改代码即可从 MySQL 迁移至 TiDB。要达成这个目标,需要完成两个提升兼容性的任务,分别是「语法兼容」和「功能行为兼容」。

TiDB Binlog 源码阅读系列文章(三)Pump client 介绍

2019-08-07
阅读 5 分钟
1.7k
在 上篇文章 中,我们介绍了 Pump 的作用是存储 TiDB 产生的 binlog。本篇将介绍 Pump client,希望大家了解 TiDB 把 binlog 写到 Pump,以及输出数据的过程。