Oracle数据库模型(OLAP/OLTP)
数据库模型
选择数据库模型:
- 联机事务处理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)的更多相关文章
- Oracle分析函数-OLAP函数总结
ORACLE OLAP 函数 最近这个东东用得特别多,总结了一下 . 语法: FUNCTION_NAME(,,...) OVER() OLAP函数语法四个部分: 1.function本身 用于 ...
- CORE EF生成ORACLE数据库模型报错问题记录
需求:最近在新开发一套在LINUX运行的API接口,需要用到net core api框架以及oracle数据库,首先需要解决的就是连接数据库问题,由于是DBFirst 加上之前很多老表不规范,导致了c ...
- Parallel Database for OLTP and OLAP
Parallel Database for OLTP and OLAP Just asurvey article on materials on parallel database products ...
- 细说 OLAP 与 OLTP
OLAP (Online analytical processing)[联机分析处理] 起源 数据库概念最初源于1962年Kenneth Iverson发表的名为"A Programming ...
- OLAP vs OLTP: what makes the difference
OLAP vs OLTP: what makes the difference OLPT and OLAP are complementingtechnologies. You can't live ...
- Oracle设计规范!
Oracle设计规范! 一哥们整理的Oracle的设计规范,相当的不错,贴这以备后续之需! 目录 1.数据库模型设计方法规范 1.1.数据建模原则性规范 1.2.实体型之间关系认定规范 1.3.范式化 ...
- Oracle并行执行特性应用初探
1. 序 在历史数据转出测试过程中,通过不断的优化,包括SQL调整和数据库调整,从AWR中看到,基本上难以进行更多的性能提升,于是准备试试并行执行的特性,从这个任务的特点来分析,也比较适合采 ...
- Oracle 11g数据库的创建
由于是自己自学Oracle,如果有问题,请大家指出,谢谢! Oracle提供了DBCA来创建数据库,对于初学者来说使用DBCA创建数据库简化了很多工作和设置,直接在交互界面即可实现所有的功能. 然而对 ...
- HAWQ取代传统数仓实践(十九)——OLAP
一.OLAP简介 1. 概念 OLAP是英文是On-Line Analytical Processing的缩写,意为联机分析处理.此概念最早由关系数据库之父E.F.Codd于1993年提出.OLAP允 ...
随机推荐
- 函数参数中“x++”造成的运算无效测试
可能以前书上都有说过,当时没在意 只有在实际项目中才会遇到因这个问题导致的Bug 2017/2/26日补充:实际上比较通用的做法是 ++tmp1,这样也可以做到自增 ; ); Console.Writ ...
- Java自带命令详解
1. 背景 给一个系统定位问题的时候,知识.经验是关键基础,数据(运行日志.异常堆栈.GC日志.线程快照[threaddump / javacore文件].堆转储快照[heapdump / hprof ...
- Atitit.eclipse git使用
Atitit.eclipse git使用 1. Git vs svn1 1.1. 直接记录快照,而非差异比较1 1.2. Git的patch则不依附于branch,commit和commit之间的关系 ...
- ActiveMQ从源代码构建
众多开源项目.我们一般都是直接拿过来用之而后快. 只是我们也应该知道这些项目是怎样从源代码构建而来的. 既然代码是写出来的,就不能避免有BUG存在,话说没有完美的软件,也没有无漏洞的程序. 事实上从源 ...
- 利用C#的指针编写都一个简单链表
using System; namespace UnsafeTest { unsafe struct link { public int x; public link* next; } class P ...
- jsp中跳出循环
<c:otherwise> <c:set var="flag" value="true" /><!-- 设置flag --> ...
- phpmyadmin通过日志文件拿webshell
该方法非原创.只是给大家分享一下姿势.如果知道得就当复习了,不知道得就捣鼓捣鼓. 前提:条件是root用户. 思路:就是利用mysql的一个日志文件.这个日志文件每执行一个sql语句就会将其执行的保存 ...
- (译)Getting Started——1.3.3 Working with Foundation(使用Foundation框架)
在你使用Objective-C语言开发应用时,你会发现在开发中,你会用到很多框架.尤其是Foundation框架,该框架为应用提供了最基础的服务.Foundation框架包括了代表着基本数据类型的va ...
- Ubuntu 12.04 server 如何安装 OpenERP 7(转)
不经意的一次看到OpenERP这个开源ERP,就被其丰富的功能,简洁的画面,熟悉的语言所吸引.迫不及待的多方查询资料,自己架设一个测试环境来进行了解.以下为测试安装时候的步骤说明,以备查询,并供有需要 ...
- nodejs 聊天室简单实现
前言 博客园的样式真心不会用啊,看着大大们的博客各种好看,心里无奈啊,只能慢慢摸索了. 最近的项目nodejs+wcf+app,app直接从wcf服务获取数据,nodejs作为单独的服务器为app提供 ...