The Vitess Documentation

The Vitess Documentation

The Vitess Documentation Contents Region-based Sharding ...................................................... 14 Preparation ......................................................... 14 Schema ........................................................... 14 Region Vindex ....................................................... 14 Start the Cluster ...................................................... 16 Aliases ............................................................ 17 Connect to your cluster .................................................. 18 Insert some data into the cluster ............................................. 18 Examine the data we just inserted ............................................ 18 Concepts ............................................................. 19 Cell ................................................................ 19 Execution Plans ......................................................... 19 Keyspace ID ........................................................... 20 Keyspace ............................................................. 20 MoveTables ............................................................ 20 Identifying Candidate Tables ............................................... 20 Query Rewriting ......................................................... 21 Replication Graph ........................................................ 25 Shard ............................................................... 25 Shard Naming ........................................................ 25 Resharding ......................................................... 26 Tablet ............................................................... 26 Tablet Types ........................................................ 26 Topology Service ......................................................... 26 Global Topology ...................................................... 27 Local Topology ....................................................... 27 VSchema ............................................................. 27 VStream .............................................................. 27 vtctl ................................................................ 27 Contribute ............................................................ 29 1 Learning Go ......................................................... 29 Learning Vitess ....................................................... 29 Build on CentOS ......................................................... 30 Install Dependencies .................................................... 30 Build Vitess ......................................................... 30 Testing your Binaries .................................................... 31 Common Build Issues ................................................... 31 Build on macOS ......................................................... 31 Install Dependencies .................................................... 31 Build Vitess ......................................................... 32 Testing your Binaries .................................................... 32 Common Build Issues ................................................... 32 Build on Ubuntu/Debian .................................................... 33 Install Dependencies .................................................... 33 Build Vitess ......................................................... 34 Testing your Binaries .................................................... 34 Common Build Issues ................................................... 34 Coding Standards ........................................................ 35 Backwards Compatibility ................................................. 35 What does a good PR look like? ............................................. 35 Assigning a Pull Request ................................................. 36 Approving a Pull Request ................................................. 37 Merging a Pull Request .................................................. 37 GitHub Workflow ......................................................... 37 Remotes ........................................................... 37 Topic Branches ....................................................... 38 Committing your work ................................................... 38 Sending Pull Requests ................................................... 38 Addressing Changes .................................................... 39 FAQ ................................................................ 39 Configuration ........................................................... 39 Does the application need to know about the sharding scheme underneath Vitess? ................. 39 I cannot start a cluster, and see these errors in the logs: Could not open required defaults file: /path/to/my.cnf . 40 Queries .............................................................. 40 Can I address a specific shard if I want to? ....................................... 40 How do I choose between master vs. replica for queries? ................................ 40 There seems to be a 10 000 row limit per query. What if I want to do a full table scan? .............. 40 Is there a list of supported/unsupported queries? .................................... 40 2 If I have a log of all queries from my app. Is there a way I can try them against Vitess to see how they’ll work? . 41 Vindexes ............................................................. 41 Does the Primary Vindex for a tablet have to be the same as its Primary Key? ................... 41 Get Started ............................................................ 41 Helm Chart (deprecated) .................................................... 41 Prerequisites ........................................................ 41 Start a single keyspace cluster ............................................... 42 Setup Port-forward ..................................................... 43 Next Steps ......................................................... 44 Local Install via Docker ..................................................... 44 Check out the vitessio/vitess repository ......................................... 44 Build the docker image ................................................... 44 Run the docker image ................................................... 44 Summary .......................................................... 45 Next Steps ......................................................... 45 Local Install ............................................................ 46 Install MySQL and etcd .................................................. 46 Disable AppArmor or SELinux .............................................. 46 Install Vitess ........................................................ 46 Start a Single Keyspace Cluster .............................................. 47 Setup Aliases ........................................................ 48 Connect to your cluster .................................................. 48 Summary .......................................................... 49 Next Steps ......................................................... 49 Vitess Operator for Kubernetes ................................................. 49 Prerequisites ........................................................ 49 Install the Operator .................................................... 50 Bring up an initial cluster ................................................. 50 Setup Port-forward ..................................................... 50 Create Schema ....................................................... 51 Next Steps ......................................................... 52 Overview ............................................................. 52 Architecture ............................................................ 52 Cloud Native ........................................................... 52 Vitess on Kubernetes .................................................... 53 History .............................................................. 53 Vitess becomes a CNCF project .............................................. 54 Scalability Philosophy ...................................................... 54 3 Small instances ....................................................... 54 Durability through replication ............................................... 54 Consistency model ..................................................... 54 Multi-cell .......................................................... 55 Supported Databases ....................................................... 56 MySQL versions 5.6 to 8.0 ................................................. 56 MariaDB versions 10.0 to 10.3 ............................................... 56 See also ........................................................... 56 What Is Vitess .......................................................... 56 Features ........................................................... 57 Comparisons to other storage options ........................................... 57 Older Version Docs ........................................................ 58 Features .............................................................. 58 Messaging ............................................................. 58 Creating a message table .................................................. 59 Enqueuing messages .................................................... 60 Receiving messages ....................................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    331 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us