Cluster management Scheduler is cognizant of where to place containers , spreading across multiple machines to avoid SPF, resource isolation (based on cores, free cores…) declarative high-level abstract Everything at Google runs in a container. 2 Billion containers a week! 3300 containers a second,
Performance Connection pooling - Scale front-end connections while optimizing MySQL performance. Query de-duping – Reuse results of an in-flight query for any identical requests received while the in-flight query was still executing. Transaction manager – Limit number of concurrent transactions and manage deadlines to optimize overall throughput. Rowcache – Maintain a row-based cache (using memcached) to more efficiently field queries that require random access by primary key, very useful for OLTP workloads. (The MySQL buffer cache is optimized for range scans over indices and tables.). This can replace a custom caching layer implementation at the application layer.
Protection Query rewriting and sanitation – Add limits and avoid non-deterministic updates. Query blacklisting – Customize rules to prevent potentially problematic queries from hitting your database. Query killer – Terminate queries that take too long to return data. Table ACLs – Specify access control lists (ACLs) for tables based on the connected user. Monitoring Performance analysis: Tools let you monitor, diagnose, and analyze your database performance. Query streaming – Use a list of incoming queries to serve OLAP workloads. Update stream – A server streams the list of rows changing in the database, which can be used as a mechanism to propagate changes to other data stores. Topology Management Tools Master management tools (handles reparenting) Web-based management GUI Designed to work in multiple data centers / regions Sharding Virtually seamless dynamic re-sharding Vertical and Horizontal sharding support Built-in range-based, or application-defined sharding support