- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从 mySQL 中读到了这个:
"Unlike other sharded databases, users do not lose the ability to perform JOIN operations, sacrifice ACID-guarantees or referential integrity (Foreign Keys) when performing queries and transactions across shards."
根据我的理解。当您在 SQL 与 NoSQL 之间进行选择时。
您将选择 NoSQL 来实现轻松的水平扩展(分片和分区),例如您有大量数据无法保存在单个数据库中,但要牺牲事务级别 ACID 和数据库级别连接。
您将选择 SQL 来进行 ACID 保证和数据库连接。但是,牺牲了简单的水平扩展可用性。 (您可以在 mySQL 之上再添加一层来处理分区和共享,但如果您这样做,您仍然会失去 ACID 和连接)
但是,上面的语句声明 mySQL 是一个“完美”的数据库,它可以在保持 SQL 数据库优点的同时处理可扩展性。我是否错过了这里的任何内容或者这只是广告?
另外,我没有找到任何有关 mySQL 分片架构的信息?
最佳答案
正如已经回答的那样,摘录是关于 MySQL Cluster (NDB) 的。MySQL Cluster 将数据存储在一组 NDB 数据节点中,这些节点可以从连接到的任何 MySQL 服务器访问NDB集群。
NDB使用事务来更新数据并遵循ACID围绕 D. So 进行一些特殊优化的原则我们提供网络持久性,这意味着交易是在提交之前在内存中的所有事件副本上提交发送到应用程序。它也将始终如一地耐用大约 1 秒内在所有实时副本上的持久介质上。
数据节点被分组为节点组(或多或少碎片的同义词)。一个节点组中的所有节点包含该节点组中的所有数据。只要每个节点有一个节点组处于事件状态,集群处于事件状态。
事务可以跨越所有节点组(分片)。有可能的执行跨所有节点组(分片)的连接操作。连接操作由MySQL服务器执行,但是许多连接被下推到 NDB 数据节点,以便它们自动并行化。
有多种基本访问方法:1)主键访问2) 唯一键访问(== 2 个主键访问)3)分区修剪扫描访问(条件中提供Partition Key)(这可以是有序索引扫描或完整扫描)。这只会扫描表的一个分区。4)有序索引扫描此扫描将使用有序索引并行扫描所有分区5)全表扫描此扫描将扫描表中的所有分区并检查每一行
所有这些访问类型都可以具有下推的条件,这些条件在访问数据时在数据节点中进行评估。
因此,通过 MySQL Cluster,您可以在分片系统中获得 SQL 和 ACID。
它是否适合您的需求取决于您的用例。
关于分布式系统中的MySQL分片和分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44612332/
我是ElasticSearch的新手,并且一直在使用它的功能。 我在单个计算机上运行单个节点(master = true,data = true)。我创建一个索引,其中包含3个分片和每个分片1个副本。
我们在14个节点的集群中具有嵌入式Elasticsearch的Java应用程序。所有数据都驻留在中央数据库中,并在elasticsearch中对其进行索引以进行查询。完整的索引编制可以随时进行。 系统
我是 MongoDB 的新手,我想了解这两种技术如何协同工作: 当为你的数据库使用复制时,你有一个主节点和一堆辅助节点。为了保证一致性,建议大家始终从主节点读取,对吧? 因此,当您将复制与分片结合使用
有人告诉我,在一台更强大的机器上使用 100 个分片实现 mongodb 分片以实现更高的并发写入数据库是否有意义,每个 monogod.exe 进程都有一个全局锁?假设这是可能的,这种方法会给我更高
我有一个带有 4x 分片的生产 mongodb 部署 (3.6),它运行良好。我想向集群中添加 4 倍以上的分片。一次添加多个分片是否可以,或者这会引起戏剧性事件吗?我发现添加分片是一项昂贵的操作,在
假设在您的 Web 应用程序中,您需要调用多个 Redis 来呈现页面,例如获取一堆用户哈希。为了加快速度,您可以将 redis 命令包装在 MULTI/EXEC 部分,从而使用流水线,从而避免进行多
我正在查看ES文档,并看到以下内容 Each shard is in itself a fully-functional and independent "index" that can be hos
我有一个 Multi-Tenancy 系统,并且我正在尝试设计ElasticSearch以支持 Multi-Tenancy 。我已经在网上搜索过,但是我发现的所有帖子在实践中均未指定具体操作方法。 基
我已经在 kuberenetes 中使用散列分片设置了分片 MongoDB 集群。我首先创建了配置服务器 Replicaset,然后创建了 2 个分片副本集。最后创建了mongos来连接分片集群。 我
我在调试父子关系查询时遇到问题。我想知道调试问题的方法,而不是简单地发布我的映射、数据、查询并询问问题所在(但我最终保留这样做的权利!)。 为此,首先要检查我的 child 和关联的 parent 是
我正在启动一个 Django 项目,需要对多个可能包含太多行的表进行分片。我浏览了这里和其他地方的线程,并遵循了 Django 多数据库文档,但我仍然不确定它们是如何缝合在一起的。我的模型具有会被分片
我正在尝试使用 docker 创建 mongo 分片.我有: 配置服务器: docker run -it --rm --net=xnet -p 27016:27016 \ --hostname
我正在尝试在一台机器上配置分片,但在尝试添加分片时我不断收到错误消息。我使用以下网站作为引用:http://www.javahotchocolate.com/notes/mongodb-shardin
我刚接触 mongodb。由于我必须存储 +-5000 万份文档,我不得不设置一个带有两个副本集的 mongodb 分片集群 文档看起来像这样: { "_id" : "predefined_u
目前我们运行一个包含 2 个服务器 + 1 个仲裁器的 MongoDB 复制集。 我们在副本集的数据库中存储了大约 150 GB 的数据。 现在我们正在考虑何时开始分片。因为我们想知道是否存在不能再开
我需要并行处理某些项目,所以我使用 TPL Dataflow。 .要注意的是,共享相同键(类似于字典)的项目应按 FIFO 顺序处理,而不是彼此平行(它们可以与具有不同值的其他项目平行)。 正在完成的
问题涉及redis的分片配置。我已经用 Java 实现了一个小型测试应用程序,它以 user:userID 的形式在 Jedis 上创建了 100.000 个用户哈希。每个散列都有元素:姓名、电话、部
您好,我将使用多个 Redis 实例和实例之间的一些分片。 我的问题是,如果加载网页需要访问多个分片,性能是否会受到[明显的影响]。 我的基本概述是在多个 Redis 分片之间实现负载平衡*下面的脚注
Predis 声称拥有客户端分片(支持键的一致性散列)。 http://github.com/nrk/predis 我可以使用连接到一组配置文件(节点)来进行分片,但它不是一致的哈希。当我将另一个节点
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我是一名优秀的程序员,十分优秀!