问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

英语in-memory data structure store怎么翻译?

发布网友 发布时间:2022-04-09 16:37

我来回答

7个回答

懂视网 时间:2022-04-09 20:58

step2,为数据库创建一个包含内存优化数据的FileGroup,向该FileGroup中添加“File”,实际上是目录(Directory),用于存储内存优化数据文件,主要是CheckPoint文件,用于还原持久化的内存优化表。

技术分享
-- Add File Group from memory-optimized data
alter database [Test_MemboryDB]
add filegroup fg_MemoryOptimizedData
contains MEMORY_OPTIMIZED_DATA;

alter database [Test_MemboryDB]
add file 
(
name=Test_MemboryDBDirectory,
filename=‘D:Program FilesMicrosoft SQL ServerTest_MemboryDBDirectory‘
)
to FILEGROUP fg_MemoryOptimizedData;
技术分享

文件组属性:CONTAINS MEMORY_OPTIMIZED_DATA 子句,指定File Group用于存储内存优化表数据,每个数据库只能指定一个存储内存优化数据的File Group,可以在该File Group下创建多个Directory,分布在不同的物理Disk上,加快内存优化表数据还原的速度。

二,创建内存优化表

内存优化表用于存储用户数据,可以持久化存储,数据存储在内存中,同时,在Disk上维护数据的一个副本,通过选项 DURABILITY= SCHEMA_AND_DATA 指定持久化存储内存优化表;也可以只存储在内存中,通过选项DURABILITY= SCHEMA_ONLY指定。在内存优化表上,可以创建nonclustered index 或nonclustered hash index,每个内存优化表中至少创建一个Index。

技术分享
--create memory optimized table
create table [dbo].[products]
(
 [ProductID] [bigint] not null,
 [Name] [varchar](64) not null,
 [Price] decimal(10,2) not null,
 [Unit] varchar(16) not null,
 [Description] [varchar](max) null,
 constraint [PK__Products_ProductID] primary key nonclustered hash ([ProductID])with (bucket_count=2000000)
 ,index idx_Products_Price nonclustered([Price] desc)
 ,index idx_Products_Unit nonclustered hash(Unit) with(bucket_count=40000)
)
with(memory_optimized=on,durability= schema_and_data)
go
技术分享

1,内存优化:MEMORY_OPTIMIZED

[MEMORY_OPTIMIZED = {ON | OFF}]

默认值是OFF,指定创建的表是硬盘表;设置选项MEMORY_OPTIMIZED为ON,指定创建的表是内存优化表;

2,持久性:Durability 

DURABILITY = {SCHEMA_ONLY | SCHEMA_AND_DATA}

默认值是SCHEMA_AND_DATA,指定创建的内存优化表是持久化的,这意味着,数据更新会持久化存储到Disk上,在SQL Server重启之后,内存优化表的数据能跟根据存储在Disk上的副本还原。选项 SCHEMA_ONLY 指定创建的内存优化表是非持久化的,这意味着Table Schema是持久化存储到Disk上,但是,任何数据更新都不会持久化到Disk上,在SQL Server重启之后,内存优化表的数据会丢失。

3,哈希索引和范围索引

内存优化表支持Hash Index,属性 BUCKET_COUNT 指定为Hash Index创建的bucket的数量,一般hash bucket的数量是数据行的1-2倍,如果无法估计bucket的数量,请创建范围索引(NonClustered Index),索引结构是Bw-Tree。

Hash 索引由一个数组和多个数据行链组成,每一个数组元素叫做一个Hash Bucket,通过内置的Hash函数,将Hash索引的Key映射到Hash Bucket上,例如,如果Hash Index的Key是(Col1,Col2),根据HashFunction(Col1,Col2)返回的Hash Value,将数据行映射到指定的Hash Bucket上;如果多个Key映射到同一个Hash Bucket上,那么这些Key组成一个链。例如:数据表结构是(Name,City),在Name字段上创建Hash Index,Hash值相同的数据行链接成一个单向链。

技术分享

三,创建Natively Compiled SP

本地编译SP在创建时编译成机器代码,整个SP以原子方式执行,这意味着,以SP为单位,整个SP中的所有操作是一个原子操作,要么执行成功,要么执行失败。

技术分享
create procedure dbo.usp_GetProduct
 @ProductID bigint not null
with native_compilation, schemabinding, execute as owner
as
begin atomic with (transaction isolation level = snapshot, language = N‘US_English‘) 
select [ProductID]
 ,[Name]
 ,[Price]
 ,[Unit]
 ,[Description]
from [dbo].[Products]
where ProductID=@ProductID
end
go 
技术分享

1,在本地编译SP中,能够为参数,变量指定Nullability属性,默认值是NULL

NOT NULL 属性:不能为参数或变量指定NULL值,

  • 在本便编译SP中,为参数指定NOT NULL属性,不能为参数指定NULL值;
  • 在本便编译SP中,为变量定义NOT NULL属性,必须在Declare时初始化变量;
  • 2,本地编译SP必须包含两个选项:SCHEMABINDING 和 ATOMIC Block

  • SCHEMABINDING:绑定引用的内存优化表
  • ATOMIC Block:在原子块中的所有语句,以单个事务运行;在事务成功时,所有语句都提交成功;在事务失败时,所有语句都回滚。Atomic Bloc保证原子地执行SP,如果SP在其他事务的上下文中被调用,那么该SP开始一个新的事务。
  • Atomic blocks guarantee atomic execution of the stored procedure. If the procedure is invoked outside the context of an active transaction, it will start a new transaction, which commits at the end of the atomic block.
  • 使用Atomic Block必须设置两个选项:

  • TRANSACTION ISOLATION LEVEL:指定Atomic Block开启事务的隔离级别,通常指定Snapshot隔离级别;
  • LANGUAGE:指定SP上下文的语言;
  • 3,解释型SP和本地编译SP的区别

    解释性SP能够访问硬盘表(Disk-Based Table)和内存优化表(Memory-Optimized Table),其真正的区别是解释性(Interpreted)SP在第一次执行时编译,而本地编译(Natively Compiled)SP是在创建时编译,并且直接编译成机器代码,绑定的是内存地址。

    4,延迟持久化

    在本地编译SP中,设置Atoic Block的选项:DELAYED_DURABILITY = ON ,使SP对内存优化表的更新操作,以异步写事务日志方式,延迟持久化到Disk,这意味着,如果内存优化表维护了一个Disk-Based 的副本,数据在内存中修改之后,不会立即更新到Disk-Based 的副本中,这有丢失数据的可能性,但是能够减少Disk IO,提高数据更新的性能。

    四,使用内存优化的表变量和临时表

    传统的表变量和临时表,都使用tempdb存储临时数据,而tempdb不是内存数据库,使用Disk存储临时表和表变量的数据,会产生Disk IO和竞争,SQL Server提供了内存优化的表变量,将临时数据存储在内存中,详细信息,请参考我的博客:《In-Memory:在内存中创建临时表和表变量》。

    五,在内存数据库中使用JSON

    自从使用JSON之后,我的第一感概是:数据库岂能没有JSON,不管是数据库将值传递前端,还是前端将数据传递到数据库,使用JSON方便很多,相比XML,JSON的使用简单很多,详细信息,请参考我的博客:《使用TSQL查询和更新 JSON 数据》

    六,内存数据库的事务处理

    交叉事务是指在一个事务中,解释性TSQL语句同时访问内存优化表(Memory-Optimized Table,简称MOT)和硬盘表(Disk-Based Table,简称DBT)。在交叉事务中,访问MOT的操作和访问DBT的操作都拥有自己独立的事务序号,就像在一个大的交叉事务下,存在两个单独的子事务,分别用于访问MOT和DBT;

    In-Memory:内存数据库

    标签:gif   整合   ima   binding   最好   mit   执行   bin   copy   

    热心网友 时间:2022-04-09 18:06

    in-memory data structure store
    内存数据结构存储器.
    store
    百货商店;商店;店铺;贮存物;备用物;贮存;

    热心网友 时间:2022-04-09 19:24

    英语:
    in-memory data structure store.
    翻译:
    内存中的数据结构存储。

    热心网友 时间:2022-04-09 20:59

    计算机专用词,翻译成“以内存信息架构储存”

    热心网友 时间:2022-04-09 22:50

    in-memory data structure store

    内存数据结构存储器

    热心网友 时间:2022-04-10 00:58

    in-memory data structure store
    内存数据结构存储

    热心网友 时间:2022-04-10 03:23

    意思是记忆数据库结构储存
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    司法矫正期间 手机业务社区司法矫正标准包 不小心退定了会有什么后果... x面容可以修吗 急!!!我在望京想办张北京农商银行卡,不知道银行在哪,有知道的吗?怎么走... 什么是干式油底壳润滑系统? 建设银行的龙卡全球至尊信用卡额度一般是多少呀? 万和燃气热水器传感器用多久 红警3升级补丁 红警3下的补丁覆盖到安装目录了,除了换了张图.怎么还是老样子_百度知 ... 问一下,红警3,原版,从1.00到1.12所有的平衡性修改~ 谢谢 i9300开机显示此LockScreen未授权是什么情况 每天用姜煮水洗脚去寒气吗? 姜水泡脚多长时间可以祛除体内寒湿气 通过一学期的排球项目学习,那些方面有所提高? 大连外国语学院排球队 对排球课的建议 排球课网络课程建议? 上好一节中学排球课应做好哪些方面的准备工作 排球双手正面垫球单元教学计划 手机的SD卡,MMC卡和TF卡有什么区别?具体的 华强北的全新机可靠吗 华强北组装苹果手机靠谱吗 深圳华强北手机靠谱吗 有在华强北商城买过手机的给说说,华强北商城靠谱吗? 手机SD卡都是通用的吗? MMC卡和SD卡和TF卡不是一样的吗?它们有什么不同?为什么不能通用? TF卡和SD卡有什么区别?为什么有些可以在手机和MP4里通用,有些又不可以? SD卡和TF卡的区别?可否通用? 手机上的TF卡和SD卡是一种卡吗?有什么区别?通用的吧? TF卡和SD卡通用吗??? MINI SD卡能和TF卡通用吗? 医学生实习鉴定表时间不全会拿不到毕业证吗 请教EXCEL 如何拆分成独立工作簿? pandas同时读取一个excel中几个sheets,并且将其中对应的列求平均值... PSP蜘蛛侠2怎么设置中文。 显示器恢复出厂设置黑屏 "in-memory" 家庭如何长期保存杭椒 辣椒可以放多久 辣椒能保鲜多长时间 普通的辣椒在常温下会保存几天 辣椒冷库可以保存辣椒多久? 普通的辣椒在常温下会保存几天小? 辣椒放冰箱可以储存多久 辣椒能放多久 刚买的鲜杭椒能放几天,怎么保存 腌制的辣椒能放多久? 梦到灰色的大蜘蛛了? 梦见蜘蛛在我手上咬了两个洞,大灰色的蜘蛛是怎么回事呢? 卧室里有大蜘蛛赶不走怎么办? 梦见被大蜘蛛咬