gpt4 book ai didi

sql-server - SQL Server 2014 内存中 OLTP 与 Redis

转载 作者:IT王子 更新时间:2023-10-29 05:54:39 25 4
gpt4 key购买 nike

SQL Server 2014 的In-Memory OLTP (Hekaton) 与 Redis 是相同或相似的概念吗? ?

我使用 Redis 进行内存存储(在 RAM 中存储)和缓存,同时有一个单独的 SQL Server 数据库(就像 StackExchange 那样)。 Hekaton 可以做同样的事情吗?

最佳答案

它们的相似之处在于都主要在内存中,但仅此而已。

Redis 是一个内存键值数据库。如果配置它,它可以将数据持久保存到磁盘,但它将整个数据集保存在内存中,因此您需要足够的 RAM。键值架构允许各种不同的数据类型,因此您可以将值存储为简单的字符串或列表、集合、哈希等。基本上,您可以在编程语言中使用的所有数据结构都在 Redis 中原生可用。

SQL Server Hekaton(内存中 OLTP) 是一种新引擎,旨在在内存中运行关系表。这些表的所有数据都保存在 RAM 中,但也存储在磁盘中,因此它们是完全持久的。

Hekaton 可以获取 SQL Server 数据库中的单个表,并使用 MVCC(而不是页面和锁)和其他优化在不同的进程中运行它们,因此操作速度比传统的基于磁盘的引擎快数千倍。对此进行了大量研究,主要用例是获取负载较重的表并将其切换为在内存中运行以提高性能和可扩展性。

Hekaton 并不是要在内存中运行整个数据库(尽管如果您真的愿意,也可以这样做),而是作为一种新引擎,旨在处理特定情况,同时保持界面不变。最终用户的一切都与 SQL Server 的其余部分相同:您可以使用 SQL、存储过程、触发器、索引、具有 ACID 属性的原子操作,并且可以无缝地处理常规表和内存表中的数据。

由于 Hekaton 的性能潜力,如果您需要速度并希望在传统关系表中对数据建模,您可以使用它来替代 Redis。如果您需要 Redis 的其他键值和数据结构功能,最好继续使用它。


对于 SQL 2016 SP1 和更新版本,SQL Server 的所有层现在都有 access to the same features唯一的区别是支持和容量的定价。

关于sql-server - SQL Server 2014 内存中 OLTP 与 Redis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25402890/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com