首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >存储过程如何与NDB集群一起工作?

问存储过程如何与NDB集群一起工作?
EN

Database Administration用户
提问于 2017-04-10 08:46:19
回答 1查看 348关注 0票数 -1

我们正在考虑使用Mysql集群进行切分。但是,我无法找到它是如何与存储过程工作的。

是否有一种方法可以根据切分键(作为过程参数传递或以某种方式单独传递)将过程调用分派到特定的碎片上?

例如,我们有一个表,在3个节点之间分块。所有具有键A的行都存储在node 1上。我想确定,当我运行procedure(A)时,它适用于node1。

*不幸的是,我们不能使用函数代替过程,因为在我们的示例中,它们返回多行

EN

回答 1

Database Administration用户

发布于 2017-04-11 03:46:49

您只需要为表(S)定义切分/分区(默认情况下,PK使用基于哈希的分区):

代码语言:javascript
复制
CREATE TABLE foo (
...
)
PARTITION BY KEY(col1)

数据存储在数据节点中。mysqld (SQL )节点中的NDBCLUSTER存储引擎将使用分区/切分列(默认情况下为PK)上生成的散列来确定哪个节点组将/确实容纳该特定行。因此,在为SP中访问的表(S)指定自定义分区(S)之后,使用您指定的引用的A值的列/键,MySQL NDB集群将知道,在分区/切分列的值为A的给定表中的所有行都将位于三个节点组之一上。

你可以看到一篇关于这个主题的博客文章这里。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/170584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档