-
Notifications
You must be signed in to change notification settings - Fork 714
Schema Changes
At Facebook, we change schemas online by our Online Schema Change Tool. The Online Schema Change Tool is also open source, and a recommended way to change MyRocks schemas. It does not block concurrent write requests and replication. It supports MyRocks bulk loading capabilities so that it can change schemas without causing compaction stalls. Usage is like this.
osc_cli copy --rocksdb-bulk-load --rocksdb-bulk-load-allow-sk --ddl-file-list=foo.sql --socket=/tmp/mysql.socket --database=test
See OSC instruction for how to use it.
We recommend using Online Schema Change Tool for MyRocks schema changes, not regular DDLs. MyRocks support for ALTER TABLE / CREATE INDEX is limited and suboptimal -- it does not support Online DDL (so blocking writes to the same table during ALTER), and enters non bulk loading path and trying to load the entire table in one transaction -- which may hit row lock count limit or out of memory. We have plans to improve regular DDL paths in MyRocks in MySQL 8.0, including supporting online and instant schema changes.
Documentation license here.
Installation
MyRocks
- Overview
- Transaction
- Backup
- Performance Tuning
- Monitoring
- Migration
- Internals
- Vector Database
DocStore
- Document column type
- Document Path: a new way to query JSON data
- Built-in Functions for JSON documents
MySQL/InnoDB Enhancements