数据库模型

选择数据库模型:

  • 联机事务处理OLTP(on-line transaction processing)
    • OLTP是传统的关系数据库的主要应用,基本的、日常的事务处理。例如银行交易。
    • OLTP系统强调数据库内存效率,强调内存各种指标的命中率,强调绑定变量、并发操作。
  • 联机分析处理OLAP(on-line analytical processing)
    • OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
    • OLAP系统则强调数据分析,强调SQL执行市场,强调磁盘I/O,强调分区等。

OLTP

OLAP

用户

操作人员,低层管理人员

决策人员,高级管理人员

功能

日常操作处理

分析决策

DB 设计

面向应用

面向主题

数据

最新的,细节的,二维的,分立的

历史的,聚集的,多维的,集成的

存取规模

读/写数条(甚至数百条)记录

读上百万(甚至上亿)条记录

操作频度

非常频繁(以秒计)

比较稀松(以小时甚至以周计)

工作单位

严格的事务

复杂的查询

用户数

数百个-数千万个

数个-数百个

DB 大小

100MB-GB

100GB-TB

  • 数据库名、实例名、ORACLE_SID的区别

实例名instance_name、ORACLE_SID与数据库及操作系统之间的关系

(ORACLE_SID)

OS<----------------> ORACLE 数据库 <--------(Instance_name(实例名))

数据库名(db_name)

实例名(instance_name)

ORACLE_SID(环境变量)

数据库名是用于区分数据的内部标识,示以二进制方式存储在数据库控制文件中的参数.

数据库实例名用于和操作系统之间的联系,用于对外部连接时使用.

在操作系统中要取的和数据库之间的交互,必须使用数据库实例名.

在实际中,数据库实例名的描述有时使用实例名instance_name参数,有时使用ORACLE_SID参数.

在数据安装或创建后不得修改.

在数据库安装或创建数据库后,实例名可以被修改.

instance_name参数是ORACLE数据库的参数,此参数可以在参数文件中查到;

ORACLE_SID参数是操作系统环境变量.

该参数被写入数据库参数文件pfile中

该实例名被写入数据库参数文件pfile中.

db_name="orcl" #(不允许修改)

db_domain=dbcenter.toys.com

instance_name=orcl

service_names=orcl.dbcenter.toys.com

control_file=(...............

db_name="orcl" #(不允许修改)

db_domain=dbcenter.toys.com

instance_name=orcl #(可以修改,可以与db_name相同也可不同)

service_names=orcl.dbcenter.toys.com

control_file=(...............

.........

操作系统环境变量ORACLE_SID用于和操作系统交互.操作系统想要得到实例名,就必须使用ORACLE_SID.

在数据库安装之后,ORACLE_SID用于定义数据库参数文件的名称.

$ORACLE_BASE/admin/DB_NAME/pfile/init$ORACLE_SID.ora

定义方法:export ORACLE_SID=orcl

可以用[oracle@Datacent]$ . oraenv

来切换不同的ORACLE_SID来通过操作系统来启动不同的实例(instance)

  • 你想用数据库做什么?

– OLAP---- 在线分析

• I/O,并行,动态采样,优化器......

– OLTP---- 在线交易

• 并发,内存,变量绑定,优化器......

  • OLAP 相关的参数
    • parallel_min_servers

并行行为控制

  • db_file_multiblock_read_count

控制数据库怎么从磁盘上读取数据块,一次从磁盘上读取多少个数据块?一次读的数据块越多,IO次数就越少.

  • optimizer_dynamic_sampling

动态采样

  • sga_target(OLAP可以设置小一点)
  • pga_aggregate_target
  • optimizer_mode
  • OLTP 相关的参数
    • cursor_sharing

绑定变量,将差不多的sql语句,使用变量值替换不一样的值

  • sga_target

内存(OLTP要设置大一点,尽量将数据放在内存中)

  • Sessions

会话数

  • pga_aggregate_target

每一个会话所占用的内存

  • shared_pool_size

共享池,可存放sql语句的空间

Oracle数据库模型(OLAP/OLTP)的更多相关文章

  1. Oracle分析函数-OLAP函数总结

    ORACLE OLAP 函数 最近这个东东用得特别多,总结了一下 .  语法: FUNCTION_NAME(,,...)    OVER() OLAP函数语法四个部分: 1.function本身 用于 ...

  2. CORE EF生成ORACLE数据库模型报错问题记录

    需求:最近在新开发一套在LINUX运行的API接口,需要用到net core api框架以及oracle数据库,首先需要解决的就是连接数据库问题,由于是DBFirst 加上之前很多老表不规范,导致了c ...

  3. Parallel Database for OLTP and OLAP

    Parallel Database for OLTP and OLAP Just asurvey article on materials on parallel database products ...

  4. 细说 OLAP 与 OLTP

    OLAP (Online analytical processing)[联机分析处理] 起源 数据库概念最初源于1962年Kenneth Iverson发表的名为"A Programming ...

  5. OLAP vs OLTP: what makes the difference

    OLAP vs OLTP: what makes the difference OLPT and OLAP are complementingtechnologies. You can't live ...

  6. Oracle设计规范!

    Oracle设计规范! 一哥们整理的Oracle的设计规范,相当的不错,贴这以备后续之需! 目录 1.数据库模型设计方法规范 1.1.数据建模原则性规范 1.2.实体型之间关系认定规范 1.3.范式化 ...

  7. Oracle并行执行特性应用初探

    1.      序 在历史数据转出测试过程中,通过不断的优化,包括SQL调整和数据库调整,从AWR中看到,基本上难以进行更多的性能提升,于是准备试试并行执行的特性,从这个任务的特点来分析,也比较适合采 ...

  8. Oracle 11g数据库的创建

    由于是自己自学Oracle,如果有问题,请大家指出,谢谢! Oracle提供了DBCA来创建数据库,对于初学者来说使用DBCA创建数据库简化了很多工作和设置,直接在交互界面即可实现所有的功能. 然而对 ...

  9. HAWQ取代传统数仓实践(十九)——OLAP

    一.OLAP简介 1. 概念 OLAP是英文是On-Line Analytical Processing的缩写,意为联机分析处理.此概念最早由关系数据库之父E.F.Codd于1993年提出.OLAP允 ...

随机推荐

  1. 点滴积累【JS】---JS小功能(列表页面隔行变色)

    效果: 代码: <head runat="server"> <title></title> <script type="text ...

  2. Atitit.常用分区api的attilax总结

    Atitit.常用分区api的attilax总结 1. Api 来源与oracle与mysql1 1.1. 分区定义partition by range (uid)  使用VALUES LESS TH ...

  3. C#实现的自定义IIS认证模块 转载

    IIS7以后application pool都支持两种模式:经典模式和集成模式. 所谓经典模式就是与IIS6的application pool运行模式相同,对于asp.net的页面请求处理由单独的as ...

  4. ping: icmp open socket: Operation not permitted 的解决办法

    ping: icmp open socket: Operation not permitted 的解决办法:为ping加上suid即可.报错时ping的属性: [root@localhost ~]# ...

  5. linux下Samba服务配置

    SMB是基于客户机/服务器型的协议,因而一台Samba服务器既可以充当文件共享服务器,也可以充当一个Samba的客户端,例如,一台在Linux 下已经架设好的Samba服务器,windows客户端就可 ...

  6. 新标准C++程序设计读书笔记_运算符重载

    形式 返回值类型 operator 运算符(形参表) { …… } 运算符重载 (1)运算符重载的实质是函数重载(2)可以重载为普通函数,也可以重载为成员函数 class Complex { publ ...

  7. numpy.meshgrid()理解

    本文的目的是记录meshgrid()的理解过程: step1. 通过一个示例引入创建网格点矩阵; step2. 基于步骤1,说明meshgrid()的作用; step3. 详细解读meshgrid() ...

  8. JS——简单的正则表达式验证

    <!-- 用户注册:结构层:html;表现层:css;行为层:javascript; html利用ul,li来构造: 注意事项:1.每个Input都要有相应的id,这是在js中去调用的. 2.& ...

  9. Angular js ie 7,8 兼容性

    Angularjs  官网有云: 1)在html 里面 ,有ng-app 的标签里需要定义个id ,id='ng-app'; 2)ie 7及以下版本需要json2.js或json3.js,主要用来解析 ...

  10. java需要掌握内容、核心不断更新中

    1.你需要精通面向对象分析与设计(OOA/OOD).涉及模式(GOF,J2EEDP)以及综合模式.你应该十分了解UML,尤其是class,object,interaction以及statediagra ...