分区

数据库开发管理规范-PARTITION TABLE(分区)

孤者浪人 提交于 2020-04-27 22:14:37
随着时间的推移及公司业务不断发展,各系统业务数据越来越庞大,数据库中的数据量不断膨胀,导致业务系统的查询效率低下,运行缓慢,且庞大的数据量也不易管理维护。基于这种情况,一个有效的解决方案是使用分区表和分区索引。但由于以往分区表的应用较少,对于大部分IT人员来说,它们还是比较陌生的。为了指导开发人员合理的创建和使用分区表及分区索引,特建立此规范。 1.2 适用范围 # 本规范适用于开发人员、数据库管理人员。 1.3 术语和缩略语 # 此处请填入文档中的专业术语及解释。 序号 术语/缩略语 全称和说明 1 分区表 (PARTITION TABLE) 分区表将数据分成被称为分区甚至子分区的更小的、可以单独管理的块,而这些块共享相同的逻辑属性 2 全局索引 建立在整个表上而非单独分区上的索引 3 本地索引 建立在分区或者子分区上的索引 1.4、简介 # 分区表允许将数据分成被称为分区甚至子分区的更小、更好管理的块。索引也可以这么分区。每个分区可以被单独管理,可以不依赖于其他分区而单独发挥作用,因此对提高系统的可用性和性能有重要的意义。 2、设计要求规范 # 2.1 分区依据 # 2.1.1 分区的目的是为了性能优化或数据管理(数据归档、大批量数据删除等);在解决这其中一个需求的前提下,且表大于2GB,才考虑做分区。 2.1.2 建议1:分区是优化全表扫描的手段

oracle一卡通消费数据分区表建立及自动建立分区存储过程

拜拜、爱过 提交于 2020-04-27 21:19:29
由于一卡通消费数据过多,不利于按时间统计计算,故采取建立分区表的方式来优化查询效率,建立过程如下 创建一卡通消费数据分区表,按时间进行分区,建立时可暂时只创建一个最早时间分区,后续分区通过存储过程自动创建。这里把一卡通消费表直接复制过来,由于操作时间在自动建立分区时不好处理,故修改为varchar类型。 create table M_REC_CONSUME ( ECODE VARCHAR2(20) default 00000000 not null, ID NUMBER not null, NOTECASE NUMBER, CUSTOMERID NUMBER not null, OUTID VARCHAR2(18) not null, CARDSN NUMBER not null, OPCOUNT NUMBER, OPDT VARCHAR2(100) not null, ODDFARE NUMBER not null, OPFARE NUMBER not null, MNGFARE NUMBER not null, ACCCODE NUMBER not null, DSCRP VARCHAR2(20) not null, TERMID NUMBER not null, RECNO NUMBER not null, UPLOADDATE DATE not null,

Oracle ORA-14400 分区关键字未映射

Deadly 提交于 2020-03-02 03:13:27
工作中,数据库是用的oracle,ora-14400这个报错,之前也出现过,处理好了,但没有写笔记,今天又遇到了,又要去百度。于是决定总结一下,并分享出来。 遇到这个问题,首先通过查询,查看分区情况。 select * from user_tab_partitions t where t.table_name = 'Table_Name'; Table_Name是需要查询的表名。 查出来之后,你会发现,你当前所对应的表分区,没有当前时间所在的分区,接下来我们可以通过给表增加分区来解决 alter table Table_Name add PARTITION CT_2016_08 values less than(to_date('2016-08-01 00:00:00','yyyy-MM-dd HH24:mi:ss')) tablespace busdb; 修改之后,问题就解决了。 中间走了个弯路。 看了一个错误的帖子,说是执行下面的语句 alter table Table_Name add PARTITION CT_2016_08 values less than('2016-08-01 00:00:00') tablespace busdb; 但执行的时候会报错。 于是我再从select查出来的结果分析了一下,修改成正确的方式(to_date方式),就没问题了。 一个简单的报错

Windows 2003 系统盘扩容,增加C盘空间

时间秒杀一切 提交于 2020-01-07 15:25:58
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 最近想搞一下Android的开,可无奈于之前系统盘只有30G,装完vs和slqserver后就所剩无几了。于是便有了扩充C盘空间的想法!之前使用PM,PQ等软件,都不能搞好,还报废了一块硬盘 ! 故发此文章惊醒各位使用Windows 2003 屌丝们!不过事情总有解决的办法,当然,新一款软件当然是“ 分区助手 ”啦! 下面来讲解下使用的教程吧(哈哈,完全拷贝)! 首先,教程上没有的是,屌丝们必须要把系统的 分页文件放回C盘,不能再放在系统盘以外的其他盘,最后别用了,系统默认的就行! 取消分页文件方法如下 弄好这些后,我们就来看以下教程吧! 转载于: http://tech.huweishen.com/gongju/1243.html 分区助手绿色中文版安装及使用方法介绍 分区助手是一款可以实现无损数据地调整分区大小,移动分区位置,复制分区,复制磁盘,合并分区,切割分区等操作的分区工具软件,并且多系统兼容不仅支持Windows XP/2000/2003/WinPE,还支持最新的Windows 7/Vista和Windows 2008,实用性很强不管是普通用户还是高级服务器用户,分区工具都为各位提供了完美的分区管理服务。下文就为大家介绍一下分区工具绿色中文版的使用方法。 软件简介: 分区助手 是一个简单易用

我的C盘空间满了,该怎么清理?

筅森魡賤 提交于 2020-01-07 12:32:46
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 本文适合: 由于种种原因不想重装系统的 硬盘分区,C盘只占一部分,即:C盘可扩容的 本文不适合: 能接收通过重装系统的方式解决问题 C盘占了整个硬盘(比如SSD硬盘空间120G,全部分配给了C盘),不能扩容,但可以清理垃圾和移走大文件 下面开始: 1. 我的C盘可以清理垃圾吗? 我们的Windows系统更新会残留旧更新文件,电脑使用过程中也会产生临时文件、缓存文件等。提供两种清理方法: 杀毒软件中的电脑清理。这个可以比较无脑一些,根据需要查找并删除垃圾文件。长久不清理win10的话能省出不少空间。 系统自带的“磁盘清理”, 选择C盘盘符, 会列出可以优化清理的选项,根据自己的实际情况勾选即可。 2. 我的C盘里到底有什么大文件可以移走或删掉? 很多时候,我们的C盘空间满了不是因为堆积了垃圾文件,而是因为我们确实存放了很多自己下载或创建的文件。这里提供一个简单好用的可视工具:spaceSniffer。官网链接:https://spacesniffer.en.softonic.com/。虽然只有不到1M大小,却很好用。选好盘符,它会为你找出你的盘里有哪些文件,叫什么名字,占了多少空间,都会给你从大到小列举出来,点击每个文件夹还能看详细的文件空间分布。 3. 我不想重装系统,C盘容量能扩大吗? 如果你的硬盘分区了

linux 格式化大于2T的硬盘

孤人 提交于 2019-12-29 22:17:28
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 2T以下的硬盘,分区类型多为MBR,但MBR的最大容量大约是2.15T,超过3T的硬盘必须用GPT格式。 1 选择要格式化的硬盘 [root@quanzidian /]# parted /dev/sdb GNU Parted 2.1 Using /dev/sdb Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) 2 选择GPT类型 (parted) mklabel gpt Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue? Yes/No? 3 然后输入yes (parted) mklabel gpt Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue? Yes/No? yes (parted) 4 将硬盘分成一个分区

oracle patition 分区和索引

巧了我就是萌 提交于 2019-12-18 19:16:46
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> oracle patition 分区 参考博文 http://docs.oracle.com/cd/B10501_01/server.920/a96524/c12parti.htm#460945 简单的分区方法是 Hash Partitioning Hash partitioning enables easy partitioning of data that does not lend itself to range or list partitioning. It does this with a simple syntax and is easy to implement. It is a better choice than range partitioning when: You do not know beforehand how much data maps into a given range The sizes of range partitions would differ quite substantially or would be difficult to balance manually Range partitioning would cause the data to be

ROM刷机原理及ROM制作技术初探

北战南征 提交于 2019-12-12 16:01:27
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 最近在学习刷机相关的知识,在网上看了一些教程之后,对刷机的认识还是只停留在那么机械式的几步,总觉得这样不求甚解真是不好!所以小编找来了下面这篇文章,自己学习了下,确实不错(好吧,小编是新手,希望大牛带小编装x带小编飞……),分享给大家。 这一段时间刷了一堆ROM,安卓系列、CM、Hero、OldMos,手机的照相机也刷得再也启不来了(不知道什么原因,杯具)。有话说:"久病成良医",想我们折腾了这么久的刷机,也得总结总结不是,小弟不才,远没成"良医",但还是想把自己的一些认识和心得写出来,以期抛砖引玉... 一、刷机原理 记得第一次刷机,那个心理紧张啊。其实紧张什么呢?就是因为不明白原理啊,只看到一堆的教程来依葫芦画瓢,生怕错了一步将手机变砖。说起来,刷机就是两种方法: 一是recovery方法,就是我们平时将update.zip放入到SD卡,然后alt-s的方法,这种方法是调用了recovery的方法将各种img或文件进行复制等操作。 二是fastboot方法,这个方法其实是比较酷的方法,说白点,fastboot就是将已有的各分区映象文件(img文件,意义上类似我们对光盘做的映象文件)直接覆盖写到指定分区中,有点暴力,也有点类似我们平时操作系统的Ghost还原。 这两种方法哪种更好,这就不好比高低了,总的来说:

Oracle 分区表的新增、修改、删除、合并。普通表转分区表方法

≡放荡痞女 提交于 2019-12-03 03:55:12
一. 分区表理论知识 Oracle提供了分区技术以支持VLDB(Very Large DataBase)。分区表通过对分区列的判断,把分区列不同的记录,放到不同的分区中。分区完全对应用透明。 Oracle的分区表可以包括多个分区,每个分区都是一个独立的段(SEGMENT),可以存放到不同的表空间中。查询时可以通过查询表来访问各个分区中的数据,也可以通过在查询时直接指定分区的方法来进行查询。 When to Partition a Table什么时候需要分区表,官网的2个建议如下: Tables greater than 2GB should always be considered for partitioning. Tables containing historical data, in which new data is added into the newest partition. A typical example is a historical table where only the current month's data is updatable and the other 11 months are read only. 在oracle 10g中最多支持:1024k-1个分区: Tables can be partitioned into up to

MySQL表分区技术详细介绍

落花浮王杯 提交于 2019-12-02 16:22:55
1、概述 数据库单表到达一定量后,性能会有衰减,像mysql\sql server等犹为明显,所以需要把这些数据进行分区处理。同时有时候可能出现数据剥离什么的,分区表就更有用处了! MySQL 5.1 中新增的分区(Partition)功能就开始增加,优势也越来越明显了: 与单个磁盘或文件系统分区相比,可以存储更多的数据 很容易就能删除不用或者过时的数据 一些查询可以得到极大的优化 涉及到 SUM()/COUNT() 等聚合函数时,可以并行进行 IO吞吐量更大 分区允许可以设置为任意大小的规则,跨文件系统分配单个表的多个部分。实际上,表的不同部分在不同的位置被存储为单独的表。 2、分区技术支持 在5.6之前,使用这个参数查看当将配置是否支持分区: mysql> SHOW VARIABLES LIKE '%partition%'; +-----------------------+-------+ |Variable_name | Value | +-----------------------+-------+ | have_partition_engine | YES | +-----------------------+-------+ 如果是yes表示你当前的配置支持分区。 在5.6及以采用后,则采用如下方式进行查看: mysql> SHOW PLUGINS; +------