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

垂直外贸网站成都网络公司优惠政策

垂直外贸网站,成都网络公司优惠政策,阜南网站建设,最新新闻事件今天国内视频目录 一、TOAST简介 二、TOAST的存储方式 1、存储方式概述 2、实验#xff1a;创建TOAST表 三、TOAST的4种压缩策略 1、策略说明 2、TOAST表额外的三个字段 四、TOAST表的计算方式 1、说明 2、实验#xff1a;计算表大小 五、TOAST表的特点 1、优点 2、缺点 3、…目录 一、TOAST简介 二、TOAST的存储方式 1、存储方式概述 2、实验创建TOAST表 三、TOAST的4种压缩策略 1、策略说明 2、TOAST表额外的三个字段 四、TOAST表的计算方式 1、说明 2、实验计算表大小 五、TOAST表的特点 1、优点 2、缺点 3、访问成本的计算 六、PG TOAST技术与Oracle大对象存储方式的对比 一、TOAST简介 1、TOAST技术The OverSized Attribute Storage Technique超尺寸字段在PG的存储方式。 2、TOAST技术产生背景元组不允许跨页面存储。 3、TOAST技术特点它会将大字段值压缩或者分散为多个物理行来存储。 4、对于用户来说这一技术实现是透明的无需关注。 二、TOAST的存储方式 1、存储方式概述 PG的部分类型数据支持toast因为有些字段类型是不会产生大字段数据比如date、time、boolean等。支持TOAST的数据类型应当是可变长度的variable-length。 假如PG的表中任何一个字段存在TOAST这个表都会有这一个相关联的TOAST表TOAST表的OID被存储在pg_class.reltoastrelid里 超尺寸字段超出的数值将会被分割成chunks并且最多toast_max_chunk_size 个byte(缺省是2KB) 当某列存储的数据长度超过toast_tuple_threshold值(通常是2KB)就会触发TOAST存储。 TOAST将会压缩或者移动字段值直到超出部分比toast_tuple_targer值小(这个值通常也是2KB)。 2、实验创建TOAST表 1创建模拟表包含允许TOAST的字段 --创建表时使用text数据类型可实现列值长度超过2KB就自动产生toast表来存储 CREATE TABLE toast_t(id int,vname varchar(48),remark text);2更改列的压缩方式为main //语法 ALTER TABLE ${tab_name} ALTER COLUMN ${col_name} SET STORAGE {PLAIN | EXTENDED | MAIN(缺省) | EXTERNAL };//示例 ALTER TABLE toast_t ALTER COLUMN remark SET STORAGE main;3查看Toast表的名字 //查看toast表的oid SELECT relname,relfilenode,reltoastrelid FROM pg_class WHERE relnametoast_t;//根据toast表oid查看其名字 SELECT relname FROM pg_class WHERE oid $reltoastrelid;三、TOAST的4种压缩策略 1、策略说明 2、TOAST表额外的三个字段 //查看TOAST表结构TOAST表属于pg_toast模式 \d pg_toast.pg_toast_16385 四、TOAST表的计算方式 1、说明         在PG中计算一个表的大小时要注意统计TOAST的大小因为对超长字段存储时在基础表上可能只存了20%另外的数据都存到了TOAST里面去了计算大小时要结合起来看。         索引也是一样对于表里有extended或者external类型的会创建TOAST表两者的关联是通过pg_class里的OID去关联的。 2、实验计算表大小 1第一次插入remark列的值小于2k的数据         此时remark列值长度小于2KB所以不会触发TOAST存储TOAST表的大小为0。 //往上面创建的实验表toast_t中插入数据 ALTER TABLE toast_t ALTER COLUMN remark SET STORAGE extended; INSERT INTO toast_t SELECT generate_series(1,4),repeat(kenyon here||^_^,2),repeat(^_^ Kenyon is not God,Remark here!!,1000);//查看表中列值大小 SELECT pg_column_size(id),pg_column_size(vname),pg_column_size(remark) from toast_t limit 10; //查看基础表大小 SELECT pg_size_pretty(pg_relation_size(toast_t));//查看TOAST表大小 SELECT pg_size_pretty(pg_relation_size(16396)); 2第二次插入remark列的值刚好比2k大一点的数据         由结果观察可知此时TOAST表的大小不再为0而toast_t表的大小没有变化。         这说明当remark列值超过2kb左右时触发了TOAST存储方式且在列尺寸超过2k的时候就会把数据存放到toast表中不影响基础表的大小。 //继续插入数据并查看数据 INSERT INTO toast_t SELECT generate_series(3,4),repeat(kenyon here||^_^,2),repeat(^_^ Kenyon is not God,Remark here!!,5500); SELECT pg_column_size(id),pg_column_size(vname),pg_column_size(remark) FROM toast_t limit 10; SELECT pg_size_pretty(pg_relation_size(toast_t)); SELECT pg_size_pretty(pg_relation_size(16396)); 3第三次插入插入更大的数据         可以看到后插入的数据随着字段内容的增多toast 段一直在变大而基础表的大小并没有变化。 //继续插入更多的数据并查看toast表大小 INSERT INTO toast_t SELECT generate_series(1,2),repeat(kenyon here||^_^,2),repeat(^_^ Kenyon is not God,Remark here!!,10000); SELECT pg_column_size(id),pg_column_size(vname),pg_column_size(remark) FROM toast_t limit 10; SELECT pg_size_pretty(pg_relation_size(toast_t)); SELECT pg_size_pretty(pg_relation_size(16396)); 五、TOAST表的特点 1、优点 1可以存储超长超大字段避免之前不能直接存储的限制 2物理上与普通表是分离的检索查询时不检索到超长字段时会极大地加快速度 管理小tip        鉴于TOAST表的特性可能会出现超长列只有部分存储数据在原始表中而有部分存储在TOAST表中。         为了底层存储区分开方便管理可以设置将超长列的全部数据都存储在Toast表中: ALTER TABLE ${tab_name} ALTER COLUMN ${col_name} SET STORAGE  external; 3update情景该表的Toast数据没有被更新时只需要更新普通表不用去更新TOAST表 2、缺点 1对大字段的索引创建是一个问题有可能会失败通常不建议在大字段上创建而是选择全文检索。 2大字段的更新会有点慢其它类型的数据库也会存在相同问题。 3在全表扫描情况下有TOAST表的存在会大大增加访问成本。 3、访问成本的计算 使用explain不会统计toast访问部分的代价。需要单独使用explain统计访问toast表的代价。 Toast表的成本统计案例如下 1创建表toast_t1插入数据remark值小于2kb不触发TOAST存储机制 CREATE TABLE toast_t1 (id int, vname varchar(48), remark text); INSERT INTO toast_t1 SELECT generate_series(1,2),repeat(kenyon here||^_^,2),repeat(^_^ Kenyon is not God,Remark here!!,2000); \d toast_t1 SELECT relname,oid,reltoastrelid FROM pg_class WHERE relname toast_t1; SELECT pg_size_pretty(pg_relation_size(toast_t1)); 查原始表的存储大小 SELECT pg_size_pretty(pg_relation_size(16440)); 查TOAST表的存储大小 2、创建表 toast_t2插入数据remark值大于2kb触发TOAST存储机制 CREATE TABLE toast_t2 (id int, vname varchar(48), remark text); ALTER TABLE toast_t2 ALTER COLUMN remark SET STORAGE external; INSERT INTO toast_t2 SELECT generate_series(1,2),repeat(kenyon here||^_^,2),repeat(^_^ Kenyon is not God,Remark here!!,2000); \d toast_t2 SELECT relname,oid,reltoastrelid FROM pg_class WHERE relname toast_t2; SELECT pg_size_pretty(pg_relation_size(toast_t2)); 查原始表的存储大小 SELECT pg_size_pretty(pg_relation_size(16445)); 查TOAST表的存储大小 3查询toast_t1所有列扫描的代价 toast_t1没有触发TOAST表存储因此14就是t2全表扫描的全部代价450行 EXPLAIN ANALYZE select * from toast_t1; 4查询toast_t2所有列扫描的代价加上访问TOAST部分的成本 toast_t2触发了TOAST表存储因此需要将基表与TOAST表的全表扫描代价相加即143953 EXPLAIN ANALYZE select * from toast_t2; 综上可知t2的全表扫描代价远高于t1表200041350。     因此不触发TOAST表、将长数据与其他数据存储在基表中是全表扫描时更好的存储方式。  六、PG TOAST技术与Oracle大对象存储方式的对比 Oracle11g版本中推出了针对LOBBlob、Clob字段处理的新技术SecureFiles。PG的TOAST技术与它有相似之处。 SecureFiles技术也是指定另外的 segment 来存储LOB字段而不是在原表中存储且可以设置 enable_storage_in_row 来指定表中存储。 经测试在Oracle数据库中将其中一个100GB的LOB字段转换为SecureFiles并采用压缩技术之后最终只消耗30GB空间大大压缩了存储空间。 而SecureFiles技术还涉及到以下内容 1新的网络协议        SecureFiles提供一种新的Client/ServerC/S方式的内部读写机制有效提高了大量数据传输的效率。 2简化物理属性设计和管理       SecureFiles提供了大量自动化的物理属性机制免去了大量物理属性设计和管理工作。例如CHUNK属性为可变长最大能支持到64MOracle能自动进行碎片整理等。 3自动管理redo和undo       SecureFiles还可以自动进行redo和undo的管理避免大量不必要的redo和 undo信息的产生。 由上可知该技术在性能、可管理性、易用性等方面具有如下具体特点和优势 1提供数据去重、压缩和透明加密功能 2SecureFiles不仅可以有效降低LOB字段存储空间消耗提高访问效率而且提高了LOB字段的数据安全性。 小结oracle在大对象存储压缩上比pg做的稍好一些。
http://www.dnsts.com.cn/news/3402.html

相关文章:

  • 精湛的中山网站建设全球著名科技网站
  • 手机静态网站开发制作各大网站注册记录
  • 部门做网站优点陕西做教学成果网站的公司
  • 做网站有弹窗叫什么开源站群cms
  • 投标网站怎么做WaP网站模块
  • windows2008 iis 网站配置外贸网站如何seo
  • 刚注册在域名可以自己做网站吗房地产网络营销论文
  • 做二手车网站需要什么手续费二手优品哪个网站做
  • 做网站服务器e3建一个公司网站多少钱
  • 辽宁鹤城建设集团网站江门seo
  • 耐思尼克的建站宝盒零食网站源码
  • 婚庆摄影企业网站商业网站建设案例
  • 网站商城功能模块江苏苏州昨天出大事
  • 网站建设怎么推广搜索引擎排名优化公司
  • 网站开发有哪些美塔基500元做网站可信吗
  • 网站推广网站制作网站建设公司建立网站要钱吗?
  • 苏州建筑行业网站建设杭州百家号优化
  • logofree制作网站信阳市住房和城乡建设厅网站
  • 外贸网站运营是做什么的厦门网站快照优化公司
  • 万网发布网站api模式网站开发介绍
  • 长沙人才网官网seo公司排名
  • 做餐饮连锁在哪个网站看昆山建设监察网站
  • 网站建站优化网络营销的推广方法
  • 有自媒体谁还做网站怎样自己动手做微官网站
  • 网站建设项目清单价格大安网站建设
  • 网站建设sem账户搭建小程序开发公司十大排名
  • 网站域名在哪里自己创建网站怎么得流量钱
  • wix网站做图片能折叠吗网站实现中英文
  • 企业网站建设需注意点重庆建设银行网站首页
  • 阿里云服务器上传网站网站改版专题页