- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 视频嵌入链接 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
马蜂窝从MongoDB到TiDB的异构升迁
结合马蜂窝现状和技术转型,从 MongoDB 迈向集群分布式 NewSQL - TiDB,方便后续数据汇总同步,分析等多维度查询。
展开查看详情
1 .MongoDB TiDB
2 .MongoDB TiDB Ø MongoDB N Ø TiDB N ü + + ü ( ) + + ü json ü ü ü ü Sharded Cluster ü üWt CPU 3.2+ zlib
3 .Part I -
4 .Ø + 24.5 MongoDB Ø Ø MySQL+ ü ü Ø select+insert update delete
5 .Ø -- Ø ES 15 Ø
6 . Porxy Nginx Nginx Nginx …… ↓ index index index index index
7 .Ø Java/Go Ø Ø searcher • • 2 • index + Ø MongoDB Oplog--Kafka-- MFW-seracher
8 .Part 2 - MongoDB
9 .Ø Ø Ø SQL Ø Ø
10 .Part 3 -
11 . TiDB Ø Ø MongoDB 23000 Ø + Ø Ø Ø
12 .• • DML/DDL • • • • • • DDL • • • region • TiDB drainer • MongoDB MongoShake
13 .Part 4 -
14 .Ø id Ø Ø Ø Ø
15 .
16 . MongoDB TiDB TiDB MongoDB /Redis / MongoDB TiDB Oplog kafka TiDB MongoDB MongoDB kafka Drainer
17 . Mongo -- TiDB -TiDB kafka TiDB MongoDB TiDB
18 .a. max(gid) b. 1 max(gid) DML 1 TiDB DML 2. Redis < > • 6 . web [ ] • log
19 .3. upadtedTime Oplog 4. 5. Count + 6. (1) TiDB MongoDB/TiDB (2) TiDB / TiDB (3) TiDB TiDB (4) TiDB MongoDB (5) TiDB TiDB (6) TiDB
20 .• Oplog Kafka--TiDB https://github.com/yxlHuster/mongo-kafka • TiDB Mongodb
21 .Ø Ø TiDB dump+drainer Kakfa MongoDB Ø gid+updatedTime
22 .MFW- - / / Admin / Service1 …… ServiceN MongoDB TiDB
23 . -- TiDB MFW- - / / Admin / Service1 …… ServiceN MongoDB TiDB
24 .Ø circuitBreaker.requestVolumeThreshold // 20 circuitBreaker.errorThresholdPercentage // 50% circuitBreaker.sleepWindowInMilliseconds // 5000 5s Ø rpc fallback / Ø Ø MongoDB TiDB TiDB MongoDB
25 .Kafka
26 .Part 5 – TiDB
27 .TiDB CPU PD 5 64 SSD 32c 3.0.7 CentOS Nvme 7.7.1908 TiDB 5 64 SSD 32c 3.0.7 CentOS Nvme 7.7.1908 TiKV 9 256G SSD 64c 3.0.7 CentOS Nvme 7.7.1908 TiDB 3.0.5 3.0.6 3.0.7
28 .Ø 3 [ ] Ø TiKV
29 .TiDB Client Client Client Client Client Client Proxy Proxy Proxy HA-A Spark Redis Cluster Proxy Big/Hot Key Redis Redis Redis Redis Redis TiDB TiDB TiDB Redis Cluster PD Pump TiDB TiKV TiKV TiKV TiKV Kfaka