1.Oracle 数据库是甲骨文公司开发的一种关系型数据库管理系统,也就是RDBMS(relational database management system).

2.Oracle 从头到尾都是一个RDBMS,是针对OLTP系统进行设计的,这一点从它底层的块结构就可以看出.Oracle在大并发量和海量数据关系型检索方面具有十分优越的性能,但是它并不擅长OLAP,因为它不支持列压缩.

3.Oracle的优势在于大并发量下的高吞吐能力,因此很适合大型企业级使用.

4.Oracle是一个RDBMS系统,也是一款应用软件,Oracle除了将数据存储于文件中,还通过一个被称为实例的后台机制对外提供服务.

5.Oracle必须适用于某个操作系统,并充分利用操作系统提供的资源

6.Oracle需要将数据存储在数据文件中,为了能够支持大量并发用户访问数据库,并且提高数据库的访问性能,Oracle需要引入共享内存,从而实现资源共享.

架构:

针对sql引擎,每个sql最终将会被解析为一系列的执行步骤,这就是我们常说得执行计划.如果同一个sql执行多次,每次都要重新生成执行计划,那么效率就比较地下,Oracle引入了共享池实现这方面的共享.如果一个数据块每次读取都要访问文件,那么效率就不高了,于是Oracle引入了DB cache 来缓存这些数据.同一个数据块可能被多个用户修改,如果每次修改都直接存盘,效率也会降低,于是Oracle设计了DBWR进程,专门负责将数据块写入文件.

作为应用程序的Oracle,必须依赖于其运行的系统环境,Oracle数据库的处理能力和性能也依赖于主机硬件,存储,网络和操作系统等因素,作为应用程序的Oracle会和操作系统中的其它进程竞争有限的系统资源,因此,数据库服务器上做一些比较大的操作时,一定要谨慎,这些操作可能会使Oracle数据库出现问题.

Oracle的核心RDBMS管理系统包含在$ORACLE_HOME/bin/oracle映像,$ORACLE_HOME/lib/libclntsh.so等中,而sqlplus,exp等则是一些Oracle数据库的工具.tnslsnr是Oracle的网络连接部件,用于连接客户端到RDMS,这些程序都被安装在ORACLE HOME目录下.

数据库是独立的,从物理结构上看,它是由一系列文件组成的,包含参数文件,控制文件,数据文件,日志文件,口令文件等.一套完整的数据库,只要其所有的文件都是完整的,那么即使数据库的RDBMS管理系统遭到破坏,只要重新安装和数据库版本一致的RDBMS管理系统,该数据库就可以重新启用(本质就是可以在某个实例中打开这个数据库,供客户使用).

关系型数据库是十分适合OLTP应用的,因为它存储的是一系列关系,各种关系以表的形式被存储起来.铁路售票系统是典型的OLTP应用.

从Oracle数据库的内部结构可以看出,Oracle在行存储数据方面下足了功夫,甚至连行锁都是设置在行头中的.这种设计,不适合一些经常以列为访问对象的OLAP系统,列压缩技术才是实现这类应用的最佳解决方案.

Oracle简单分析的更多相关文章

  1. python爬虫实践(二)——爬取张艺谋导演的电影《影》的豆瓣影评并进行简单分析

    学了爬虫之后,都只是爬取一些简单的小页面,觉得没意思,所以我现在准备爬取一下豆瓣上张艺谋导演的“影”的短评,存入数据库,并进行简单的分析和数据可视化,因为用到的只是比较多,所以写一篇博客当做笔记. 第 ...

  2. sql语法值ORACLE简单介绍

    版权声明:本文为[博主](https://zhangkn.github.io)原创文章,未经博主同意不得转载.https://creativecommons.org/licenses/by-nc-sa ...

  3. 简单分析JavaScript中的面向对象

    初学JavaScript的时候有人会认为JavaScript不是一门面向对象的语言,因为JS是没有类的概念的,但是这并不代表JavaScript没有对象的存在,而且JavaScript也提供了其它的方 ...

  4. Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(上)

    <Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(上)> <Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(下)> 目的:指导项 ...

  5. Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(下)

    <Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(上)> <Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(下)> 目的:指导项 ...

  6. CSipSimple 简单分析

    简介 CSipSimple是一款可以在android手机上使用的支持sip的网络电话软件,可以在上面设置使用callda网络电话.连接使用方式最好是使用wifi,或者3g这样上网速度快,打起电话来效果 ...

  7. C#中异常:“The type initializer to throw an exception(类型初始值设定项引发异常)”的简单分析与解决方法

    对于C#中异常:“The type initializer to throw an exception(类型初始值设定项引发异常)”的简单分析,目前本人分析两种情况,如下: 情况一: 借鉴麒麟.NET ...

  8. 透过byte数组简单分析Java序列化、Kryo、ProtoBuf序列化

    序列化在高性能网络编程.分布式系统开发中是举足轻重的之前有用过Java序列化.ProtocolBuffer等,在这篇文章这里中简单分析序列化后的byte数组观察各种序列化的差异与性能,这里主要分析Ja ...

  9. 简单分析Java的HashMap.entrySet()的实现

    关于Java的HashMap.entrySet(),文档是这样描述的:这个方法返回一个Set,这个Set是HashMap的视图,对Map的操作会在Set上反映出来,反过来也是.原文是 Returns ...

随机推荐

  1. springboot使用jwt进行权限验证

    springboot使用jwt进行权限验证 依赖准备 首先导入对应的依赖 <dependencies> <dependency> <groupId>org.apac ...

  2. MySQL5.7升级到8.0过程详解

    前言: 不知不觉,MySQL8.0已经发布好多个GA小版本了.目前互联网上也有很多关于MySQL8.0的内容了,MySQL8.0版本基本已到稳定期,相信很多小伙伴已经在接触8.0了.本篇文章主要介绍从 ...

  3. MySQL DDL详情揭露

    前言: MySQL中DDL语句,即数据定义语言,用于创建.删除.修改.库或表结构,对数据库或表的结构操作.常见的有create,alter,drop等.这类语句通常会耗费很大代价,特别是对于大表做表结 ...

  4. 一种巧妙的使用 CSS 制作波浪效果的思路

    在之前,我介绍过几种使用纯 CSS 实现波浪效果的方式,关于它们有两篇相关的文章: 纯 CSS 实现波浪效果! 巧用 CSS 实现酷炫的充电动画 本文将会再介绍另外一种使用 CSS 实现的波浪效果,思 ...

  5. Convert character array to string in MATLAB

    Matlab提取特征值是经常要读取多个图片文件,把文件名保存在数组中后再读取会出错.从stackoverflow中找到如下解决方法: I've a M by N matrix, each cell c ...

  6. Java初始化数据域的途径

    Java调用构造器的具体处理步骤: 1.所有数据域被初始化为默认值(0,false或null); 2.按照在类声明中出现的次序,依次执行所有域的初始化语句和初始化块: 3.如果构造器第一行调用了第二个 ...

  7. CocoaPods 构建自己的 Pod 库

    构建一个自己的库供其它人使用是不是一件很酷(苦)的事情,通过CocoaPods 可以快捷的构建自己库,并向全世界分享你的成果 一.创建 Podspec 有两种方式: 使用命令 pod lib crea ...

  8. CSS3文本样式

    目录 文本阴影 text-shadow 文本轮廓 text-outline 文本换行 word-break normal break-all keep-all word-wrap 新文本属性 text ...

  9. 【海通国际】Joe Lowry(Mr. Lithium)谈全球电池原材料供应危机

    [海通国际]Joe Lowry(Mr. Lithium)谈全球电池原材料供应危机 环球锂业公司(Global Lithium)总裁Joe Lowry日前接受了欧洲锰业Euro Manganese的邀请 ...

  10. tkinter是内置的模块,不同的版本的导入形式不同,现总结如下

    #coding=utf-8 import os, sys try: from tkinter import * except ImportError: #Python 2.x PythonVersio ...