cql什么意思(cql什么意思饭圈用语)

最近有很多读者朋友和朋友交朋友cql什么意思有疑问?有网友整理了相关内容,希望能回答你的疑惑。cql这个网站已经为你找到了问题的答案,希望对你有所帮助。

cql什么意思(cql什么意思饭圈用语)

在过去的十年里,分布式数据库的崛起不仅通过本地集群实现了负载平衡,而且提供了高可用性,而且具有数据中心的框架感知等属性。专为云设计的分布式数据库可以跨越可用区域,支持公共云、私有云和混合云部署。近年来,市场上出现了大量专门为分布式数据库部署而设计的新数据库系统,以及其他在初始设计中添加分布式架构组件的数据库系统。

DB-Engines.com排名前100的数据库

DB-Engines.com它是数据库领域的权威排名,它保留了所有数据库的流行指数,并使用算法来监控网站上提到的次数和谷歌的搜索趋势,Stack Overflow推特上的讨论或评论,工作岗位所需的技术技能和LinkedIn这些技术的数量在个人资料中提到。

cql什么意思(cql什么意思饭圈用语)

▲截至2022年5月,DB-Engines.com排名前100的数据库

虽然DB-Engines收集了数百个不同的数据库(截至2022年5月共有394个)。

▲截至2022年5月,DB-Engines.com排名前100的数据库

虽然DB-Engines收集了数百个不同的数据库(截至2022年5月共有394个)。但本文缩小了范围,只观察了前100个数据库。在很大程度上映了市场现状。

关系数据库管理系统(RDBMS),传统的SQL该系统仍然是最大的类别,占列表的47%。

此外,列表中25%是NoSQL该系统涵盖了许多不同类型的数据库,如MongoDB文档数据库,Redis键值系统、ScyllaDB以及宽列数据库Neo4j图数据库。

还有11%的数据库被列为多模型数据库,包括支持同一系统SQL和NoSQL微软等混合数据库Cosmos DB或ArangoDB,或多种支持NoSQL数据模型的数据库,如DynamoDB,它把自己列为NoSQL存储键值系统和文档。最后,还有一些数据库由各种特殊用途组成,从搜索引擎到时间序列数据库,以及其他不归类为简单的SQL与NoSQL区域数据库。

但这些数据库都是分布式数据库吗?这个词到底是什么意思?

定义分布式数据库cql什么意思(cql什么意思饭圈用语)

2016年12月14日,ISO/IEC数据库语言发布了最新版本SQL标准(ISO/IEC9075:2016)。随着时间的推移,如何构建和SQL兼容分布式RDBMS该系统一直在发展。分布式SQL,如PostgreSQL或CockroachDB NewSQL系统。相反,没有ANSI或ISO或IETF或W3C定义什么是NoSQL数据库。每个数据库都使用自己的专有查询语言,如宽列NoSQL数据库的Cassandra查询语言(CQL),用于图形数据库Gremlin/Tinkerpop查询方法。

然而,它们并没有定义如何在这些数据库中分布数据,查询语言也无法解决架构问题。所以,不管是SQL还是NoSQL,没有标准、协议或共识什么是分布式数据库。

所以,我花了一些时间写下自己的定义。坦白说,这更像是门外汉的实用观,而不是计算机科学教授的观点。

简而言之,你必须决定如何定义集群,如何跨集群分配数据。接下来,您必须确定集群中每个节点的角色。每个节点都是平等的,有些节点处于更好的领先地位,而其他节点则是跟随者。

那么,基于这些角色,你如何处理故障转移呢?最后,在此基础上,你必须找出如何尽可能均匀、容易地复制和分片数据。你可以添加自己的具体条件,而不自己的具体条件。

cql什么意思(cql什么意思饭圈用语)

简短列表:感兴趣的系统

考虑到这些,我在前100名数据库中找到了五个示例,看看它们在测量属性时是如何比较的。其中有两个SQL系统和三个NoSQL系统。

Postgres和CockroachDB代表最佳分布式SQL。CockroachDB被称为 NewSQL,专为分布式数据库设计。

MongoDB、Redis和ScyllaDB是分布式NoSQL,分别是文档数据库、键存储、宽列数据库(也称为键数据库)。在大多数情况下,适用于ScyllaDB也适用于Apache Cassandra和其他与Cassandra兼容系统。

假设你有专业经验,对SQL与NoSQL相对了解差异。基本上,如果你需要一个表,JOIN,坚持使用SQL和RDBMS。如果能反规范数据,那么NoSQL也许是个不错的选择。作为数据结构或查询语言,我们不打算讨论哪一种更好。作为分布式数据库,讨论哪个更好。

cql什么意思(cql什么意思饭圈用语)

多数据中心集群

如何比较我们的集群选项?现在,它们都可以集群,甚至多数据中心。但是在PostgreSQL、MongoDB和Redis在多数据中心设计之前,它们最初设计在单数据中心本地集群中,已成为一种架构要求。

Postgres1986年首次发布,完全早于云计算的概念。后来,它允许将这些技术和能力纳入其设计。作为NewSQL革命的一部分,CockroachDB全球分布从一开始就被考虑。MongoDB它是在公共云诞生之初发布的。在设计之初,考虑到单数据中心集群,但现在它增加了对许多不同拓扑结构的支持。通过MongoDB Atlas,可轻松部署到多个区域。

Redis,由于其低延迟设计,通常部署在单个数据中心,但具有允许多数据中心部署的企业特点。ScyllaDB,像Cassandra同样,多数据中心的部署也从一开始就被考虑在内。cql什么意思(cql什么意思饭圈用语)

集群管理

如何复制和分割取决于数据库架构的分层或同质化。

例如,在MongoDB其中,有一个主服务器,其余的是主服务器的副本。副本只读,只能写这个数据库的主副本,不能直接更新。相反,当你写主数据库时,它会更新副本。因此,节点是异质的,而不是同质的。

这有助于在阅读繁重的工作负载中分配流量,但在混合或写入工作负载中对您不利,主服务器可能成为瓶颈。

cql什么意思(cql什么意思饭圈用语)同样,如果主服务器出现故障会发生什么?在集群选择新的主服务器之前,你必须完全停止写作操作,并将写作操作转移到上面。

相反,如果ScyllaDB或Cassandra,或者没有别的active-active客户可以从任何节点读取或写入系统。没有单一的故障点,节点的同质化程度要高得多。

集群中的任何数据副本都可以任何数据副本。因此,如果您有三个节点,每个节点将根据其他两个节点的任何写入进行更新。

active-active计算本身,但一旦服务器保持同步,就会得到一个系统,可以更好地平衡混合或写入大量的工作负载,因为每个节点都可以提供读取或写入服务。

然后,我们的各种例子都在主复本或active-active如何叠加对等方面?CockroachDB和ScyllaDB,以及Cassandra从一开始就考虑active-active主动设计。在Postgres有一些可选的方法可以做到这一点,但它不是内置的。此外,MongoDB没有正式的支持active-active,但有些人已经试图做到这一点了。

对于Redis来说,active-active模型在Redis企业可以通过无冲突复制数据类型(CRDTs)实现。Postgres、MongoDB和Redis默认使用主副本数据分布模型。

cql什么意思(cql什么意思饭圈用语)

复制

分布式系统设计也会影响如何在不同的机架或数据中心之间分配数据。例如,给定一个主副本系统,只有主数据中心才能为任何写入工作负载提供服务,其他数据中心只能作为只读副本。

在支持多数据中心集群的点对点系统中,整个集群中的每个节点都可以读写。

通过ScyllaDB,你可以决定每个网站都有相同或不同的复制因素。在这里,我展示了一个数据中心的三个副本,另一个数据中心有两个副本。

操作可以有不同层次的一致性。您可能需要更新任何数据中心的节点才能在三个节点的数据中心读写本地数据。结合多数据中心的拓扑感知,可调整的一致性为工作负载提供了更多的灵活性。

cql什么意思(cql什么意思饭圈用语)

拓扑感知

本地集群从分布式数据库开始,允许多个系统共享负载。如果数据库想要在多个节点上分片,或者通过确保相同的数据可以在多个节点上实现高可用性,那么这是非常重要的。

如果所有节点都安装在同一个机架上,一旦机架出现故障,就会非常困难。因此,添加拓扑感知,以便您能够在同一数据中心感知机架。确保数据分散在数据中心的多个框架上,以减少一个或另一个框架的电源或连接丢失。

一些数据库做得很好,允许在不同的数据中心运行多个数据库副本,并使用一些跨集群更新机制。每个数据库都是独立运行的,它们的同步机制可以是单向的,一个数据中心可以更新,也可以是双向的或多向的。

这种地理分布可以通过允许更接近用户的连接来减少延迟。跨可用性区域或区域的数据库可以确保单个数据中心的灾难不会导致数据库的部分或全部丢失。

cql什么意思(cql什么意思饭圈用语)这种情况发生在我们的一位客户去年,但由于他们部署在三个不同的数据中心,数据损失为零。

跨集群更新最初是在批量级别实现的。确保您的数据中心每天至少同步一次。这并没有持续多久,人们开始确保更活跃的事务更新。

如果您在运行强一致性数据库,您将受到基于光速的实时传输延迟的限制。因此,实现最终一致性的目的是允许多数据中心更新每个操作,并考虑到可能需要时间在短期内保持所有数据中心的数据一致。

那么,拓扑感知是如何叠加的呢?

所以,CockroachDB和ScyllaDB也是内置的。

自2015年以来,拓扑感知也成为MongoDB他们在这方面有多年的经验。Postgres和Redis最初设计为单数据中心解决方案,因此处理多数据中心的延迟并不容易。现在,你可以添加拓扑感知,就像添加一样active-active该系统具有相同的功能,但它不开箱即用。

让我们回顾一下讨论的内容,分别查看这些数据库的属性。

cql什么意思(cql什么意思饭圈用语)

?? PostgreSQL

PostgreSQL它是世界上最受欢迎的开源数据库之一,以其可靠性和稳定性而闻名,处理复杂性SQL它也表现出绝对的优势。然而,Postgres其跨集群和多数据中心的集群仍在研究中。

由于SQL基于强一致性事务模式,不能很好地跨地区跨集群。由于长期延迟,每个查询将在所有相关数据中心之间暂停。

此外,Postgres依靠主副本模型。集群中的一个节点是领导者,其他节点是副本。尽管有负载平衡器或active-active但这些也超出了基本的服务范围。

最后,Postgres在大多数情况下,分片仍然是手动的,尽管它们在开发自动分片方面取得了进展,但它们在开发自动分片方面取得了进展这也超出了基本产品的范围。

?? CockroachDBcql什么意思(cql什么意思饭圈用语)

CockroachDB声称自己是“NewSQL”,一个专为分发而设计的SQL数据库。它可以水平扩展,在磁盘、机器、机架,甚至数据中心故障时都能生存下来,做到延迟最小,无需手动干预。

值得一提的是,CockroachDB使用Postgres线协议,并大量借鉴了Postgres开创的许多概念,而且并不局限于Postgres的架构。

多数据中心集群和点对点的拓扑结构从一开始就被内置。自动分片和数据复制也是如此。它还内置了数据中心感知功能,而且还可以添加机架感知功能。

对CockroachDB来说,它要求所有的事务都有很强的一致性,你可以把它看作是一个优点或缺点。既没有最终一致性的灵活性,也没有可调的一致性。这将降低吞吐量,并在任何跨数据中心部署中要求较高的基线延迟。

cql什么意思(cql什么意思饭圈用语)

?? MongoDB

MongoDB是NoSQL领域的领导者。随着它的发展,大量的分布式数据库功能被添加。现如今,MongoDB能够支持多数据中心集群。在大多数情况下,它仍然遵循主副本模式,也有办法使其成为对等的active-active。

?? Rediscql什么意思(cql什么意思饭圈用语)

接下来是Redis,一个旨在作为内存缓存或数据存储的键值存储。Redis的数据全部在内存里,如果突然宕机,数据就会全部丢失,因此必须有一种机制来保证Redis的数据不会因为故障而丢失,这种机制就是Redis的持久化机制。

虽然持久化保存数据,但如果数据集不适合放在RAM中,它就会遭受巨大的性能损失。

正因为如此,它在设计时考虑到了本地集群。如果你无法承受5毫秒的等待时间来从SSD上获取数据,您可能更无法等待145毫秒来完成从旧金山到伦敦的网络往返时间。然而,有一些企业特性允许多数据中心的Redis集群。

Redis在大多数情况下是以主副本模式运行的。这适用于大量读取的缓存服务器。但这意味着,主节点是数据需要首先写入的地方,然后将这些数据分散到副本,以帮助平衡其缓存负载。

有一个企业功能,允许对等的active-active集群。Redis可以自动分片和复制数据,但它的拓扑感知仅限于作为企业功能的机架感知。

cql什么意思(cql什么意思饭圈用语)

?? ScyllaDB

ScyllaDB是按照Apache Cassandra中的分布式数据库模型设计的。因此,它默认是多数据中心集群。它可以自动分片,并且每个操作都有可调整的一致性,如果你想要更强的一致性,它甚至还支持轻量级事务来提供写入的线性化。

就拓扑感知而言,ScyllaDB支持机架感知和数据中心意识,甚至支持标记感知和分片感知,不仅知道数据存储在哪个节点上,甚至可以知道与该数据关联的CPU。

结论

虽然对于什么是分布式数据库,还没有一个行业标准,但是我们可以看到,许多领先的SQL和NoSQL数据库,都在某种程度上支持一组核心功能或属性。其中有些功能是内置的,有些被认为是增值包或第三方选项。在本文分析的五个典型分布式数据库系统中,CockroachDB为SQL数据库提供了最全面的功能和特性,ScyllaDB为NoSQL系统提供了最全面的功能。该分析应被视为某个时间段的调查。鉴于下一个技术周期的需求,每一个数据库系统都在不断发展,这个行业并没有停滞不前。对用户来说,分布式数据库每年都在进步,变得更加灵活、性能更强、更具弹性和可扩展性。

主题测试文章,只做测试使用。发布者:艾迪号,转转请注明出处:https://www.cqaedi.cn/baike/39097.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年 1月 10日 下午3:04
下一篇 2023年 1月 10日 下午5:41

相关推荐

  • 东莞市地图全图(东莞市地图全图高清版)

    原创 韬略哥 01 新政一周,新房成交环比增幅近9成! 7月4日,东莞放松限购+降低首付的组合拳一打,立即开始了“吸金模式”! 人气与成交量齐飞,中介行晒单日报备量超200组;新房单日网签套数连续突破150套以上!上周一手住宅成交合计891套,环比大幅增加近9成! 图源合富大数据 据闻有看房团一天狂扫20套,大半夜还有广深客户全款定房! 很明显:东莞楼市彻底…

    2023年 4月 27日
    00
  • mac屏幕出现横条纹闪烁(mac屏幕出现横条纹闪烁 怎么处理)

    最近有很多读者朋友对mac屏幕出现横条纹闪烁有疑问。由部分网友整理出相关内容希望能够解答你的疑惑,关于mac屏幕出现横条纹闪烁 怎么处理,本站也已经为你找到了问题的答案,希望能帮助到你。 部分 MacBook Pro 机型上的触控栏取代了物理功能键,让用户可以在 Mac 上快速访问特定的应用程序功能和系统和缩放功能。 但有时 Mac 的 Touch Bar …

    2022年 12月 13日
    00
  • 一架直升飞机大概多少钱(一架私人飞机大概多少钱)

    一架直升机多少钱? 对许多人来说,买一架直升机是一个奢侈的梦想。然而,在当今社会,拥有自己的直升机已经不再那么遥不可及了。然而,直升机的价格也是直接影响购买力的重要因素。 首先要明确的是,直升机的价格是由很多因素决定的。例如,直升机的尺寸、结构和性能是影响价格的关键因素。如果你想买一台小型直升机,价格会相对较低,但如果你需要一台专业的大型直升机,你需要数百万…

    百科大全 2023年 4月 20日
    00
  • shopping是什么意思(shopping mall是什么意思)

    标题一:什么是Shopping? Shopping一词来源于英语,其本意是购物的意思。但随着时间和社会的发展,Shopping不再局限于购买商品这个范畴,而更多地体现了消费者从购物中获得的全方位的体验和享受。Shopping已经成为了一种文化现象,代表着现代人的生活方式和消费观。 标题二:Shopping的多种方式 Shopping的形式有很多,包括实体店、…

    百科大全 2023年 6月 11日
    00
  • double是什么意思,c语言double是什么意思

    Double是什么意思?——深入了解双精度浮点数 Double,即双精度浮点数,它是一种基本的数据类型,储存着带小数点的数字。在计算机科学领域中,double是非常重要而且常用的一种数据类型。下面,我们将深入了解double的定义、使用及其与其他数据类型的比较。 一、Double的定义及特点 1.定义:Double是一种双精度浮点数,它占用8字节(64位)的…

    百科大全 2023年 6月 17日
    00

站长QQ

7401002

在线咨询: QQ交谈

邮件:7401002@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信