`
liwenshui322
  • 浏览: 511952 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
        SQL*Loader(SQLLDR)是Oracle的高速批量数据加载工具。这是一个非常有用的工具,可用于多种平面文件格式向Oralce数据库中加载数据。SQLLDR可以在极短的时间内加载数量庞大的数据。它有两种操作模式。       传统路径 ...
       Oracle并行中最有用的就是并行DDL。我们都知道,并行执行通常不适用于OLTP系统。实际上,对于数据仓库,并行查询也变得越来越没有意义。因为目前数据仓库,可能会基于一个web前端,通常也会有数以百计的用户同时进行访问。      那么,唯一的好处就是体现在DBA维护数据库方面了。因为,DBA维护数据库的时候,通常都能保证服务器有足够的资源能够使用(CPU,I/O通道等等)。比如,DBA要做一件事情:加载某个数据,重组表,再重建索引。这些操作可以并行执行,最大限度利用硬件的全部能力。以下一些DDL命令允许并行操作:      1. create index:创建索引   ...

Oracle 并行查询

  并行查询允许将一个SQL SELECT语句划分为多个较小的查询,每个部分的查询并发地运行,然后会将各个部分的结果组合起来,提供最终的答案。         我们来看一个例子:         1. 执行如下一串SQL语句,创建一个叫big_table的表,期间会让你录入 1的值(想要往big_table表里面插入多少行数据),我录入的是1000万行。   create table big_table as select rownum id, a.* from all_objects a where 1=0 / alter table big_table nolog ...
  一. 概念介绍 并行执行,就是将一个大型串行任务物理地划分为多个较小的部分,这些较小的部分可以同时进行处理。这就好比盖房子,有一些事情可以同时进行,比如:铺设管线和电路配线可以同时进行。尽量让能同时进 ...
        原博客地址: http://blog.163.com/taodengwen@126/blog/static/87199341201191383429693/       关于控制反转和依赖注入的文章和书籍很多,对其定义也解释的也仁者见仁,这里就不赘述了,这是本人(只代表个人观点)理解之后用 ...
Oracle具有打开一个相当底层的跟踪能力的工具,就是TKPROF。一旦启用跟踪,Oracle将所有的SQL和应用程序使用的顶层PL/SQL调用记录到服务器上的跟踪文件中。 启用TKPROF 在开始运行TFPROF之前需要开启一些设置,可以将其编辑称为一个脚本程序:starttfprof.sql,其中包含的内容:  alter session set timed_statistics=true;alter session set events '10046 trace name context forever,level 12';  l  1启用了标准SQL_TRACE工具l  4启用了S ...

Oracle 分区和性能

        理论上,我们进行表分区都是为了提升性能,加快查询速度。但是有的时候,不但不能加快查询速度,反而拖累的查询速度。下面举的一个例子就是这样的:         假设某一个表是按照主键散列分区,创建表如下所示:   create table t ( OWNER, OBJECT_NAME, SUBOBJECT_NAME, OBJECT_ID, DATA_OBJECT_ID, OBJECT_TYPE, CREATED, LAST_DDL_TIME, TIMESTAMP, STATUS, TEMPORARY, GENERATED, SECONDARY ) parti ...
        同事推荐《代码整洁之道》这本书很不错,这几天仔细地阅读了一翻,感受颇深。在这里聊以记录,跟大家分享一下。          第一章 整洁代码      什么是整洁的代码,以下是各种经验丰富程序员的见解。     ...
        一. 概述       和表分区一样,索引也可以进行分区。oracle中对索引进行分区有两种方式:      1. 每一个索引分区对应一个表分区,而且只索引该表分区。也就是有多少个表分区就有多少个索引分区。称之为局部分区索引。      2. 索引按照区间分区(或者散列分区),一个索引可以指向任何表分区的数据。索引分区个数与表分区个数没有关系,称之为全局分区索引。        二. 局部索引      oracle中有两类局部索引:局部前缀索引和局部非前缀索引。看例子:   CREATE TABLE partitioned_table ( a int, b i ...
        一. 概念       一个表被分成了很多个独立的分区,那么每一个分区应该存储哪些数据,这就是表分区机制要解决的问题。         二. 表分区机制概述       目前oracle中有四种分区机制:       1. 区间分区:可以指定应当存储在一起的数据区间。例如,时间戳在Jan-2005内的所有记录都存储在分区1中,时间戳在Feb-2005内的所有记录都存储在分区2中,依此类推。       2. 散列分区:这是指在一个列(或多个列)上应用一个散列函数,行会按这个散列值放在某个分区中。具有很大随机性,你不知道数据会被散列到哪个分区中去,但是一般每个分区存储 ...

Oracle 分区概述

       一. 概念       分区是将一个表或者索引物理地分解成多个更小的部分。对于访问数据库的应用来看,逻辑上看只有一个表或者索引,因为访问和普通表或索引一模一样。但物理上这个表可能被分成了数十个独立的分区,每一个分区都是独立的对象,可以独自处理。         二. 如何区分数据      分区主要有利于非常大的表和索引,将一个大表或者索引分成很多独立的小部分更容易进行处理。那么按照什么样的规则将数据进行分区?换言之,你怎么知道这条数据放A分区,那条数据放B分区。oracle中是根据分区键决定的,分区键有可能是通过某一个函数算出来的。         三. 分区的好处 ...
        oracle与日期有关的有三种类型:date,timestamp与interval。DATE和TIMESTAMP类型存储精度可变的固定日期/时间,二者区别是,后者秒可以精确到小数,另外还可以有时区之分。。INTERVAL类型可以很容易地存储一个时间量,如“8个小时”或“30天”。将两个日期相减,就会得到一个时间间隔(INTERVAL);例如,将8小时间隔加到一个TIMESTAMP上,会得到8小时以后的一个新的TIMESTAMP。         操作日期有关字段的时候,最好显示地指定日期或时间格式,比如:      Insert into t ( date_column ...
        number类型的语法很简单,就是:       number(p,s)       p,s都是可选的,假如都不填,p默认为38,s默认为-48~127。       1. 精度(precision),或总位数。默认情况下,精度为38位,取值范围是1~38之间。也可以用字符*表示38。       2. 小数位置(scale),或小数点右边的位数。小数位数的合法值为-48~127,其默认值取决于是否指定了精度。如果没有知道精度,小数位数则默认有最大的取值区间。如果指定了精度,小数位数默认为0(小数点右边一位都没有)。例如,定义为NUMBER的列会存储浮点数(有小数),而 ...
        Oracle中有4种基本的字符串类型,分别是CHAR、VARCHAR2、NCHAR和NVARCHAR2。在Oracle中,所有串都以同样的格式存储。在数据库块上,最全面都有一个1~3字节的长度字段,其后才是数据,如果数据为NULL,长度字段则表示一个但字节值0xFF。         如果一个包含"hello world"的varchar2(80), 块中结构如图所示:          如果在char(80)中存储同样的信息,块结构如图所示:        CHAR/NCHAR实际上只是伪装的VARCHAR2/NVARCHAR2,基于这一点, ...
       Data Access Layer(DAL)描述的是服务端处理客户请求的逻辑,它将逻辑处理和数据处理分离开来,处理逻辑的时候是我们编写java代码,比如前台需要更新一个字段,我们构造一个对象,将这个字段值设置进去,这样的逻辑是我们通过java代码编写来实现。进行数据处理的时候,比如保存,是我们将要保存的对象传给一个接口,接口帮我们处理,至于接口怎么处理我们就不需要管了。         一. 简单的hello world 举例       新增一条记录 // create the object through the factory final Category bp ...
Global site tag (gtag.js) - Google Analytics