数据库模型

选择数据库模型:

  • 联机事务处理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. Java编程介绍

    原文地址:http://happyshome.cn/blog/java/introduction.html 本文介绍的编程基础知识很Java适合刚開始学习的人. 要学习编程,你须要了解编程语言的语法和 ...

  2. mysql only_full_group_by问题

    我的mysql出现了only_full_group_by问题,网上一堆处理方案! 主要两种 一种修改配置表my.ini 另一种通过指令,屏蔽当前链接的only_full_group_by报错!我想永久 ...

  3. hbase replication原理分析

    本文只是从总体流程来分析replication过程,很多细节没有提及,下一篇文章准备多分析分析细节.   replicationSource启动过程 org.apache.hadoop.hbase.r ...

  4. CCNA2.0笔记_NAT

    NAT:园区网内的PC是私有地址,整个园区网共享一个公有IP,如果园区网内的PC不做NAT,那么在发数据包给外网的时候会出现传输问题 NAT的原理:改变IP包头,使目的地址.源地址或两个地址在包头中被 ...

  5. vue 插件

    开发插件 插件通常会为vue添加全局功能,插件的范围没有限制--一般有下面几种: 1,添加全局方法或者属性,例:vue-coustom-element 2,添加全局资源:指令.过滤器,.过渡等,如vu ...

  6. The Definitive Guide To Django 2 学习笔记(七) 第四章 模板 (三)使用模板系统

    接下来,我们开始学习如何使用模板系统,但我们并不和前面说的View相结合,我们的这里的目的是展示模板系统是如何独立于Django框架运行的.下面是在pyhon代码中使用Django模板系统的基础例子: ...

  7. ASP.NET MVC 4新建库项目中找不到 System.Web.Security 的引用

    .NET 4中,WebSecurity的引用已经不再System.Web中,而是转移到了System.Web.ApplicationServices Dll中,添加该Dll即可.

  8. calico性能测试

    硬件环境: 三台虚拟机: 192.168.99.129 master(kube-apiserver.kube-controller-manager.kube-proxy.kube-scheduler. ...

  9. yum安装的JDK的没有配置环境变量但是在/usr/bin下面都做了软链接

    [root@st152 /usr/bin]# ll |grep javalrwxrwxrwx    1 root root         22 Nov 28 22:14 java -> /et ...

  10. !KMP算法完整教程

      KMP算法完整教程 全称:                               Knuth_Morris_Pratt Algorithm(KMP算法) 类型:                ...