当前位置: 首页 > news >正文

平稳有序推进网站建设企业网站模板源码

平稳有序推进网站建设,企业网站模板源码,西安网站seo 优帮云,交易 网站备案数据存储模型 ​专栏内容#xff1a; postgresql内核源码分析手写数据库toadb并发编程toadb开源库 个人主页#xff1a;我的主页 座右铭#xff1a;天行健#xff0c;君子以自强不息#xff1b;地势坤#xff0c;君子以厚德载物. 概述 在数据库的发展过程中#xff0c;关… 数据存储模型 ​专栏内容 postgresql内核源码分析手写数据库toadb并发编程toadb开源库 个人主页我的主页 座右铭天行健君子以自强不息地势坤君子以厚德载物. 概述 在数据库的发展过程中关系型数据库是一个里程碑式的阶段现在关系型数据仍然占据着重要地位。 在关系型数据中每张表都是一个关系每行数据就是关系的一条记录在存储时每行数据存储在连续的位置行与行也是连续存放 这样方便一次能拿到一整条记录。 处理业务类型 随着互联网的兴起存储容量的提升和计算能力的飞越我们的生活中不断增加了越来越多的被智能设备产生了无尽的信息。 这样的信息规模已经超越了某一单体的能力限制它们被不断分类对于数据库处理模型常常分为 在线事务处理模型(OLTP), 主要以事务一致性关系型数据为主在线分析处理模型(OLAP), 主要以分析统计为主更多的是从大量数据中提取某几个维度的数据 但是这样的划分还远远不能满足信息爆炸带来的需求它不是非黑即白的界线明晰的分类还有大量同时存在OLTP和OLAP的特点的数据和业务此时就需要一种混合性数据库存储模型。 数据存储模型原理 是什么 通过SQL插入的数据在数据库中实际也是要存到磁盘上的此时还要考虑我们写入的效率读取的效率如何产生的IO次数更少那以什么格式组织这些数据才能达到这样的目标呢 我们使用的文件系统都是以块为单位进行读写物理存储设备常用的块大小有2k, 4k等那么数据库为了提升性能也选择以块为单位来组织数据每次按块进行读写数据文件。 每个数据块内又分为块头信息域数据域的起始偏移数据域在数据域中按逻辑表的行进行连续存储。 当然行数据又分为定长或变长两种不同的组织方式定长就是每种数据类型固定了长度这样一行数据的长度也是确定的变长类型就是像字符文本等长度是可变的那么存储时需要记录长度。 它们最大的区别在于更新时定长是可以直接覆盖更新的而变长就需要追加更新。 为什么存储模型这么重要 因为我们的存储到数据库中的数据都是持久化到磁盘中当我们查询时再从磁盘中读出 虽然我们数据库和操作系统层面都已经做了缓存当数据量大时还是会产生大量的磁盘IO而且数据库大多数情况下都是随机访问缓存并不保证全部命中。 相较与内存速度来讲磁盘速度是极底的但是内存往往是有限的所以存储模型至关重要通过将随机写转换为顺序写少的IO就可以精确找到数据减少遍历这些都可以做到减少IO次数提升性能。 数据存储模型类型 NSM模型 故名思义就是按行数据排列的数组形式 数据的物理结构和他们的逻辑结构是一样的也就是我们常说的行存储模型这也是大多数关系型数据库采用的存储模型。 物理存储结构 磁盘是由一个一个数据块组成的因此连续的数据也分在了连续的数据块。 每个数据块中又分块头信息记录块中数据的起始偏移每行数据分为 行的数据偏移item从块头后面连续存储 以及真正的行数据它从块的末尾开始向头部方向连续存储这是为了方便空闲空间的管理。 表数据与物理存储结构对应 如下图所示 应用场景 它的优势在于对关联数据的查询非常快比如根据身份证号就可以一次读出姓名住址等一系列信息。 在此基础上对于复杂的嵌套join就非常有优势因为它的各列数据都在一起。 不适合场景 对于只查找部分列属性数据的业务就会增加IO的成本它需要全行数据的读出。对于按3NF设计还是一张大宽表都避免不了缓存效率的降低。 DSM模型 分解的存储模型也就是将一行中的各字段存储到不同的数据单元中当需要某列数据时只从磁盘加载部分数据如果需要整行数据那就加载全量数据然后进行行组装。 可以是每一列都分别存储也可以根据业务需要不规则的划分比如有三列经常会相时查询那这三列可以一起存储剩余的列分别存储。 物理存储结构 常见的格式有 PAXRCFile(record columnar file)Apache ORCParquet (An Open Columnar Storage for Hadoop) 它们中更多偏向分析型列式存储可以处理大量的时序流式数据也有一些偏向于行列的混合型每种格式都有成熟的产品应用。 应用场景 它们的场景更多偏向分析型如hdoop系列的使用ORC, Parquet。 混合型数据存储模型 为了综合以上NSM和DSM各自的优势互补长短目前一些数据库已经采用了一些混合的存储模型。 常见混合模型实践 数据冗余型 在存储数据时干脆两种格式同时进行存储一种按行进行存储一种按列分别存储这样避免了转换带的复杂度用空间来换取性能在优化引擎中可以选择更适合的路径 数据转换型 因为行存必须带来IO的放大也以实际存储采用列式存储在使用时进行组装成逻辑行数据这种模型的难点在于如何准确的找到逻辑行中的各字段大多都采用PAX中提到的分组的方式。 难点 在大数据处理中已经不局限于关系型数据更多的是非关系型如文本json数据如何将它们转换成列数据可以快速查找这将是混合型存储模型面临的一项挑战。 最近兴起的向量数据量向量与大模型维度是对应的底层数据库存储就需要将各类型数据进行分别存储。 结尾 非常感谢大家的支持在浏览的同时别忘了留下您宝贵的评论如果觉得值得鼓励请点赞收藏我会更加努力 作者邮箱studysenllang.onaliyun.com 如有错误或者疏漏欢迎指出互相学习。 注未经同意不得转载
http://www.zqtcl.cn/news/329613/

相关文章:

  • 网站地图模版企业做网站etp和源程序
  • 电子商务企业网站的推广方式外贸长尾关键词挖掘网站
  • 靓号网建站网站商城html模板
  • 广东顺德网站建设wordpress 我爱搜罗网
  • 基金网站建设需求书昆明网站制作工具
  • 京东网上购物商城官方网站国外网站页头设计图片
  • 芯片设计公司排名安卓优化大师app
  • 如何进行网站域名解析网站开发的工作方法
  • 专门做衣服的网站有哪些南宁企业官网seo
  • 网站 建设 内容中铁建设集团有限公司招聘官网
  • 个人电脑做服务器网站cn域名注册流程
  • 网站开发的思维导图哪些网站是react做的
  • 住房和城乡建设部网站注册进度常德建设局网站
  • 网站导购话术怎么做免费的产品图片网站
  • 网站设计外文文献建建设网站公司
  • 打开网站说建设中是什么问题网站开发收税
  • 海口建设厅网站grimhelm wordpress
  • 如何快速提升网站pr淮北房产网
  • 微网站和微信广州营销型网站建设团队
  • 企业网站制作托管微信建站网站
  • h5网站如何做排名济南网站建设选聚搜网络
  • 网站建设 手机wordpress 仿煎蛋主题
  • 织梦可以仿所有网站吗电子商务网站建设臧良运课后答案
  • 怎样创建个人购物网站wordpress没有外观
  • 衡水手机网站建设公司计算机大专学历有用吗
  • 有哪些网站做的很好桐乡市建设局官方网站
  • 做公众号和网站一样吗免费正能量网站下载ww
  • 使用帝国做软件下载网站源码顺义区做网站的公司
  • 网站用什么颜色成都网站建设公司服务
  • 重庆手机网站方案设计凡科建站网站怎么保存发给别人