How JD Scaled MySQL: Evolution, Automation, and Ops Insights
This article chronicles JD.com's transition from commercial to open‑source databases, detailing MySQL's rapid growth, the development of the JMySQL automation platform, and future directions for database design, security, monitoring, and performance optimization in large‑scale e‑commerce environments.
1. JD Database Development Evolution
Before 2012 JD's databases were mainly SQL Server and Oracle, with MySQL used only for peripheral systems. Starting in early 2012 MySQL surged, reaching half of core transaction systems by the 2013 618 event and becoming the dominant database by 2014, supporting over 95% of JD's business with high safety, efficiency, and stability.
2. JD MySQL Development Direction
Since 2012 JD has focused on MySQL while also operating other open‑source databases such as MongoDB, MariaDB, and PerconaDB alongside commercial ones like Oracle and SQL Server to meet diverse business needs.
3. Database Operations Automation
Rapid business growth required scaling MySQL from dozens to thousands of instances, making manual management infeasible. JD built the JMySQL Intelligent Management Platform, covering deployment, switching, monitoring, basic information management, performance analysis, automatic handling, security auditing, automated releases, and backup.
3.1 Basic Information Management
Accurate management of server, cluster, personnel, account, permission, configuration, and DNS information is essential for monitoring, alerting, backup, deployment, and switching. This data enables automated fault diagnosis and response.
3.2 Automatic Deployment and Scaling
Automation handles both horizontal and vertical scaling, including adding new instances, data migration, and switchovers without affecting production. The platform supports both fully automatic and semi‑automatic switchovers depending on middleware integration.
3.3 Automatic Switching
In multi‑data‑center deployments, JD developed JDSWITCH on top of MHA to enable rapid cross‑region failover. The system can automatically re‑establish replication, verify data integrity, and complete whole‑data‑center switches within minutes, minimizing downtime.
3.4 Database Monitoring
JD uses a customized Zabbix system to monitor sessions, logs, fragmentation, tablespaces, and user activity at second‑level granularity. Integrated with asset, backup, and switch platforms, it provides intelligent alerts and automated self‑healing for common faults.
3.5 Performance Intelligent Analysis
By analyzing monitoring data trends, JD predicts future load, identifies latent risks, and calculates required capacity expansions. The system classifies pressure types (I/O, CPU, network) and suggests scaling or throttling actions, while also providing slow‑query subscription and analysis.
3.6 Security Auditing
Security auditing covers policy enforcement, health checks, behavior tracking, and reporting. JD also maintains rigorous backup strategies—regular full and incremental backups, as well as change‑driven backups—stored locally, off‑site, and in cloud with encryption.
4. JD MySQL Development Outlook
Over the past four years JD's MySQL infrastructure has achieved massive scale and stability. Looking ahead, the focus will be on cloud‑based automation, intelligence, platformization, and visualization to further enhance efficiency and reliability.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
21CTO
21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
