mysql多线程并行查询_mysql并行查询问题
业务表数据量过大分表设计4张,然后需求是将4张表全量数据导出。
测试机器4核,做法是开启4个线程同时查询,最终结果汇总。
如果一个线程查询一张表耗时 2s,那么要实现的是 4个线程跑完也是耗时 2s(利用cpu多核真正并行),但现实是耗时 2 * 4 约等于 8s多。
真的困扰多时的一个问题,还望大佬相助,跪谢!
附上mysql参数:
+————————————————————-+—————————————-+
| Variable_name | Value |
+————————————————————-+—————————————-+
| innodb_purge_threads | 0 |
| innodb_read_io_threads | 4 |
| innodb_thread_concurrency | 10 |
| innodb_thread_sleep_delay | 10000 |
| innodb_write_io_threads | 4 |
| max_delayed_threads | 20 |
| max_insert_delayed_threads | 20 |
| myisam_repair_threads | 1 |
| performance_schema_max_thread_classes | 50 |
| performance_schema_max_thread_instances | 1000 |
| pseudo_thread_id | 81 |
| thread_cache_size | 8 |
| thread_concurrency | 10 |
| thread_handling | one-thread-per-connection |
| thread_stack | 262144 |
+————————————————————-+—————————————-+
mysql 版本是 5.5.28
还没有评论,来说两句吧...