mysql单个查询多核_MySQL / MariaDB在多个核上运行单个查询

我有一个相当强大的数据库服务器,有大约24个内核和48 GB的RAM.我们正在运行MariaDB 10.0作为我们的数据库引擎.我的所有表都在InnoDB引擎上运行.我有一些查询在大表上使用相当广泛的连接,因此自然很慢.我正在努力做的一件事是尝试利用多核的力量.以下是我的观察:

>如果我并行运行2个查询,那么我可以看到正在使用2个核心

>如果我运行1个查询,我看到只有1个核心被用于100%

现在,这是正常行为吗?我的意思是,MariaDB / MySQL中没有办法为单个查询使用多个核心?如果使用多个CPU核心可以更快地运行单个繁重的查询,那将会很棒.

我尝试搜索多个论坛,并使用不同的参数,如Innodb_thread_cocurrency,但到目前为止还没能在多个核心上运行单个查询.

有没有其他引擎可以帮助我做到这一点(我目前正在阅读XtraDB)?

更新:

好吧,实际上我正试图分析社交媒体数据.想象一下拥有2-3百万条推文的数据库.当然,我们正在讨论与USer数据,主题标签,图像,链接等相关联的表.所以总的来说是一个相当大的数据库.在某些情况下,有些查询需要在多个表上进行某些连接,并且自然很慢.因此,想象一下,例如一个带有5-6个不同查询的仪表板查询.当单个用户登录时,这会将负载放在单个核心上,并且整个核心的使用时间为n秒.如果我有12个内核,假设有12个用户同时尝试访问系统,那么我就会遇到严重的瓶颈.我完全理解,分片,群集,分布式数据库,分区等选项可以帮助我.但是现在我正在尝试了解在我查看水平扩展(其中我引入更多服务器)之前如何最好地垂直扩展系统.使用多个内核本来是一个很好的选择,但我想现在我明白了,MySQL本身并不是这样设计的.我想我将开始研究各种[可能的架构,以便在多个实例上扩展数据库.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值