精华内容
下载资源
问答
  • 该计算模型将关系代数中每一操作抽象为一个 Operator,将整个 SQL 构建成一个 Operator 树,查询树自顶向下调用next()接口,数据则自底向上被拉取处理。 火山模型的这种处理方式也称为拉取执行模型(Pull Based...

    一、迭代模型/火山模型(Iterator Model)
    又称 Volcano Model 或者 Pipeline Model。
    在这里插入图片描述

    Iterator Model
    该计算模型将关系代数中每一种操作抽象为一个 Operator,将整个 SQL 构建成一个 Operator 树,查询树自顶向下的调用next()接口,数据则自底向上的被拉取处理。
    火山模型的这种处理方式也称为拉取执行模型(Pull Based)。
    大多数关系型数据库都是使用迭代模型的,如 SQLite、MongoDB、Impala、DB2、SQLServer、Greenplum、PostgreSQL、Oracle、MySQL 等。
    火山模型的优点在于:简单,每个 Operator 可以单独实现逻辑。
    火山模型的缺点:查询树调用next()接口次数太多,并且一次只取一条数据,CPU 执行效率低;而 Joins, Subqueries, Order By 等操作经常会阻塞。

    二、物化模型(Materialization Model)
    在这里插入图片描述

    Materialization Model
    物化模型的处理方式是:每个 operator 一次处理所有的输入,处理完之后将所有结果一次性输出。
    物化模型更适合OLTP负载,这些查询每次只访问小规模的数据,只需要少量的函数调用。

    三、向量化/批处理模型(Vectorized / Batch Model)

    Batch Model
    向量化模型 和 火山模型 类似,每个 operator 需要实现一个 next() 函数,但是每次调用 next() 函数会返回一批的元组(tuples),而不是一个元组,所以向量化模型也可称为批处理模型。
    向量化模型是火山模型和物化模型的折衷。
    向量化模型比较适合 OLAP 查询,因为其大大减少了每个 operator 的调用次数,也就简单减少了虚函数的调用。
    Presto、snowflake、SQLServer、Amazon Redshift等数据库支持这种处理模式。
    Spark 2.x 的 SQL 引擎开始也支持向量化执行模型。
    在 Hive 中使用 向量化执行的方式:
    1、必须以 ORC 格式来存储数据,
    2、将 hive.vectorized.execution.enabled 参数设置为 true

    以上为三种常见的数据库查询引擎执行模型,「分布式技术专题」是国产数据库hubble团队精心整编,专题会持续更新,欢迎大家保持关注。

    展开全文
  • 目前,在数据库领域中最常用的数据模型又要有三种,分别是层次模型(hierarchical model)、网状模型(network model)、关系模型(relational model)。层次模型和网状模型为非关系模型(也称为格式化模型)。非...

    常见的数据模型

    目前,在数据库领域中最常用的数据模型又要有三种,分别是层次模型(hierarchical model)、网状模型(network model)、关系模型(relational model)。层次模型和网状模型为非关系模型(也称为格式化模型)。非关系模型的数据库系统在20世纪70年代非常流行,到了20世纪80年代,关系模型的数据库系统以其独特的优点逐渐占据了主导地位,成为数据库系统的主流。目前流行的数据库管理系统大多是基于关系模型的。

    1.8  基本层次联系

    在非关系模型中实体集用记录表示,实体的属性对应于记录的数据项(或称字段)实体之间的联系转换成记录之间的两两联系。非关系模型的数据结构的基本单位是基本层次联系。所谓基本层次联系时指两个记录以及他们之间的一对多(包括一对一)的联系,其结构和表示方法如图1.8所示。这里,Ri位于联系Lij的始结点,称为双亲结点。

    转载于:https://www.cnblogs.com/JimmyShen/archive/2011/10/09/2204898.html

    展开全文
  • Iterator Model该计算模型将关系代数中每一操作抽象为一个 Operator,将整个 SQL 构建成一个 Operator 树,查询树自顶向下调用next()接口,数据则自底向上被拉取处理。火山模型的这种处理方式也称为拉取执行...

    一、迭代模型/火山模型(Iterator Model)

    又称 Volcano Model 或者 Pipeline Model。

    e08dd77acfed

    Iterator Model

    该计算模型将关系代数中每一种操作抽象为一个 Operator,将整个 SQL 构建成一个 Operator 树,查询树自顶向下的调用next()接口,数据则自底向上的被拉取处理。

    火山模型的这种处理方式也称为拉取执行模型(Pull Based)。

    大多数关系型数据库都是使用迭代模型的,如 SQLite、MongoDB、Impala、DB2、SQLServer、Greenplum、PostgreSQL、Oracle、MySQL 等。

    火山模型的优点在于:简单,每个 Operator 可以单独实现逻辑。

    火山模型的缺点:查询树调用next()接口次数太多,并且一次只取一条数据,CPU 执行效率低;而 Joins, Subqueries, Order By 等操作经常会阻塞。

    二、物化模型(Materialization Model)

    e08dd77acfed

    Materialization Model

    物化模型的处理方式是:每个 operator 一次处理所有的输入,处理完之后将所有结果一次性输出。

    物化模型更适合OLTP负载,这些查询每次只访问小规模的数据,只需要少量的函数调用。

    三、向量化/批处理模型(Vectorized / Batch Model)

    Batch Model

    向量化模型 和 火山模型 类似,每个 operator 需要实现一个 next() 函数,但是每次调用 next() 函数会返回一批的元组(tuples),而不是一个元组,所以向量化模型也可称为批处理模型。

    向量化模型是火山模型和物化模型的折衷。

    向量化模型比较适合 OLAP 查询,因为其大大减少了每个 operator 的调用次数,也就简单减少了虚函数的调用。

    Presto、snowflake、SQLServer、Amazon Redshift等数据库支持这种处理模式。

    Spark 2.x 的 SQL 引擎开始也支持向量化执行模型。

    在 Hive 中使用 向量化执行的方式:1、必须以 ORC 格式来存储数据,2、将 hive.vectorized.execution.enabled 参数设置为 true

    以上为三种常见的数据库查询引擎执行模型,「分布式技术专题」是国产数据库hubble团队精心整编,专题会持续更新,欢迎大家保持关注。

    展开全文
  • 数据模型是指数据库的组织形式,它决定了数据库中数据之间...按组织方式的不同,常见的有四: 1、传统数据模型(层次模型、网状模型、关系模型) 2、面向对象模型 3、时态GIS模型 4、数据模型 二、传统数据模...

    数据模型是指数据库的组织形式,它决定了数据库中数据之间联系的表达方式,即把在计算机中表示客观事物及其联系的数据及结构称为数据模型。本文详细讲述传统三大数据模型和空间数据模型。

     

    一、数据模型概述


    数据模型是指数据库的组织形式,它决定了数据库中数据之间联系的表达方式,即把在计算机中表示客观事物及其联系的数据及结构称为数据模型

    组织方式的不同,常见的有四种:

    1、传统数据模型(层次模型、网状模型、关系模型)

    2、面向对象模型

    3、时态GIS模型

    4、三维数据模型

     

    二、传统数据模型


    1. 层次模型

    层次模型是一种结构模型,它把数据按自然的层次关系组织起来,以反映数据间的隶属关系。

    2. 网状模型

    网状模型是将数据组织成有向图的结构,图中的节点代表数据记录,连线描述不同节点数据间的联系。

    3. 关系模型

    关系模型的基本数据机构是二维表,是一种非格式化的模型。实体跟实体之间的联系用关系来表示,满足一定规范化条件的集合就构成了一个关系模型

     

    三、面向对象数据模型


    面向对象数据模型是一种新兴的数据模型,它采用面向对象的方法来设计数据库。

    面向对象的数据库存储对象是以对象为单位,每个对象包含对象的属性和方法,具有类和继承等特点。

    1. 面向对象的基本思想

    面向对象是模拟人类认识客观世界的方式,将现实世界的一切事物或现象(或称为实体)模型化为对象或对象的集合来表达。实体的静态特征(可以用数据来表达的特征用对象的属性来表示;实体的动态特征(事物的行为)用对象的方法来表示。

    2. 面向对象的几个基本概念

    (1)对象

    对象是现实世界中实际存在的实体.是构成系统的基本单位。-个对象由-组属性和对这组属性进行操作的方法构成。属性用来描述对象的静态特征,方法用来描述对象的动态特征。每个对象都有一个标识号(ID)来唯一标识。

    (2)类

    类是具有相同属性和方法的一组对象的集合,它为属于该类的全部对象提供了统- -的抽象描述,其内部包括属性和方法两个主要部分。类给出了属于该类的全部对象的抽象定义,而对象则是符合这种定义的一个实例。例如,每条河流均具有名称、长度、流域面积等属性,以及查询、计算长度、求流域面积等操作方法,因此可以抽象为河流类。

    (3)继承

    类对象可继承另类对象的特性和能力。子类继承父类的共性,继承不仅可以把父类的特征传递给中间类,还可以向下传递给中间类的子类。例如,建筑物类具有业主、地址.建筑时间等属性,以及显示、删除等(操作)方法,而酒店也属于建筑物,也具有以上属性和方法。因此,建筑物类是酒店类的父类酒店类是建筑物类的子类,若在建筑物类中定义了以上属性和方法,则酒店类会自动继承这些属性和方法,不需要重新定义。

    3. 面向对象数据模型的概念

    面向对象的数据模型即用面向对象的方法建立的数据模型,包括数据模式、建立在模式上的操作和建立在模式上的约束。

    (1)数据模式(数据结构):对象与类结构。

    (2)模式上的操作(数据操作):用对象与类中的方法来构建模式上的操作,这种操作语义范围比传统数据模型更具优势。例如,构建一个矩形类,其操作包括查询、增加、删除、修改,还可以包括放大、缩小、平移、拼接等。因此,面向对象的数据模型比传统的数据模型功能更强。

    (3)模式上的约束(数据约束):与关系模型等传统的数据模型相同,模式上的约束包括实体完整性、参照完整性和用户定义完整性。

    在面向对象的数据模型中,可以采用面向对象中的对象、方法和继承等概念来表示以上三个组成部分。例如,汽车类具有车窗、车门、方向盘、座椅等属性和行驶、刹车、停止、启动等方法,是小汽车类、公共汽车类、大卡车类的父类,其属性和方法均可以被小汽车类、公共汽车类、大卡车类所继承。

     

    四、时态GIS模型


    为了能够表示时空过程,近年来,作为GIS研究和应用的一个领域,时态GIS已经得到GIS界的广泛关注,人们再研究能支持时态GIS产品的时空数据模型。目前有时空数据的四种组织方法。

     参考:【空间数据库】时空数据库,时态数据模型详解

     

    五、三维空间数据模型


    地理空间在本质上是三维的。随着应用的深入和时间的需要,二维GIS逐渐暴露出缺点。现在GIS的研究人员和开发者们不得不重新思考地理空间的三维本质特征及在三维空间概念数据模型下的一系列处理方法。

    从三维GIS的角度出发考虑,地理空间应有如下不同于二维空间的三维特征:

    集合坐标上增加了第三维信息,即垂向坐标信息;

    向坐标信息的增加导致空间拓扑关系的复杂化,其中突出的一点是无论零维、一维、二维还是三维对象,在垂向上都具有复杂的空间拓扑关系;如果说二维拓扑关系是在平面上呈圆状发散伸展的话,那么三维拓扑关系则是在三维空间中呈球状向无穷维方向伸展;

    三维地理空间中的三维对象还具有丰富的内部信息(如属性分布、结构形式等)

    展开全文
  • 数据模型数据库原理)

    千次阅读 2019-06-11 09:31:36
    三、常见的三种数据模型 一、信息的三种世界 1、信息处理的过程: 将客观世界进行抽象为信息,再对信息进行整理规范后再以数据的形式存放到数据库中 2、信息的三种世界: 现实世界: 客观存在的世界,真实存在 信息...
  • 常见的关系型数据库

    2018-11-11 19:39:04
    关系模型由关系数据结构、关系操作集合、关系完整性约束部分组成。 关系数据结构:指的数据以什么方式来存储,是一二维表形式存储 本质:二维表 关系操作集合:如何来关联和管理对应存储数据,SQL指令 关系...
  • 根据数据结构的不同,常见的数据模型有层次模型、网状模型和关系模型。 【分析】 1、数据模型的概念 数据模型是一组概念的组合,这些概念包括数据结构、数据操作和完整性约束条件。这称之为数据模型的三要素。 a...
  • 数据模型(Data Model)是数据特征的抽象,它从抽象层次上描述了系统的静态特征、动态行为和约束条件, ...常见的数据模型有层次模型、网状模型和关系模型三种。 关系其实就是一个二维表的意思,行列对应,..
  • 数据表间关联是数据库操作常见的一种应用。sp框架提供了多种表间关联的功能支持,令开发者可以轻松应对各种数据表关联情况。 在sp框架的定义中,数据表表间关联主要存在以下三种情况: 1、一对一的关联。一对一...
  • 1.数据库模型

    2016-08-22 11:09:00
    常见的有以下三种: 1、层次模型 概述:使用结构模型作为自己的存储结构。是一种树形结构,又节点和连线组成,节点表示实体,连线表示实体间的关系。 优点:数据结构类似金字塔,不同层次之间的关联性直接且简单...
  • 文章目录Mysql 8数据库学习的目的数据库的三种模型层次模型网状模型关系模型Mysql 8 常见问题安装window时遇到的一些问题安装Linux时遇到的一些问题连接数据库在系统终端中工具中 Mysql 8 数据库学习的目的 1.数据可...
  • 数据库

    2020-07-02 19:15:26
    一、数据库简介 数据库:就是数据的仓库,它是长期存储在计算机内,有组织的、可共享的数据的集合。...而在当今的互联网中,最常见的数据库模型主要是两,即关系型数据库(SQL)和非关系型数据库(NoSQL,Not O...
  • 数据库的概念与规则

    热门讨论 2020-12-05 21:21:52
    数据库的概念 数据库就是数据存放的地方,是需要长期存放在计算机呃内的有组织并且可...较为常见的三种: 1.层次模型(HieracrchicalModel) 2.网状模型(Network Model) 3.关系模型(Relation mode) 关系数...
  • 数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。在当今的互联网中,最常见的数据库模型主要是两种,即关系型数据库和非关系型数据库。 列举如下...
  • 而在当今的互联网中,最常见的数据库模型主要是两,即关系型数据库和非关系型数据库数据库分类〓关系型数据库介绍〓1、关系型数据库的由来虽然网状数据库和层次数据库已经很好的解决了数据的集中和共享问题,...
  • 基于CAP理论我们可以知道,对于数据一致性问题有AP和CP两方案,但是在电商领域等互联网场景下,基于CP强一致性方案在数据库性能和系统处理能力上会存在一定瓶颈。所以在互联网场景中更多采用柔性事务,所谓...
  • 首先看数据库的定义 高效存储和处理数据的介质(介质包括...关系模型:一所谓建立在关系上的模型,关系模型包含个方面:① 数据结构:数据存储问题,二维表(行和列)。 ② 操作指令集合:所有SQL语句。 ③
  • 数据库概念 数据库就是数据存放的地方,是需要长期...常见的数据库模型 数据库可以使用多种类型的系统模型模型是指数据库管理系统中数据的存储结构),其中较为常见的三种: 层次模型 网状模型 关系模型...
  • SaaS数据模型设计

    千次阅读 2014-03-18 16:25:33
     SaaS数据模型设计有三种基本方案。... SaaS系统常见数据模型独立数据库  将每个客户数据单独存放在一个独立数据库是实现数据隔离一种最为简便解决方案。  在应用这种数据模型的SaaS系统中,大部分系统
  • 目录 关系数据库 ACID特性 关系数据库的三范式 ...所谓关系模型是一对一、一对多或者多对多等关系,常见的关系型数据库有 Oracle、SQL Server、DB2、MySQL 等。 而文档型数据库是一非关系型数据.
  • 超全的数据库分类介绍

    万次阅读 2018-01-17 11:15:00
    而在当今的互联网中,最常见的数据库模型主要是两,即关系型数据库和非关系型数据库。    数据库分类   〓关系型数据库介绍〓   1、关系型数据库的由来 虽然网状数据库和层次数据库已经很好...
  • 1.5三种常见的数据模型 目前数据库领域中较常用的数据模型是层次模型网状模型关系模型和面向对象模型 层次模型和网状模型统称为非关系模型非关系模型的数据库系统在20世纪70年代至80年代占据了主导地位尽管被后来...
  • 数据库简介

    2019-05-06 17:59:15
    简单的说,数据库(database)就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来...而在当今的互联网中,最常见的数据库模型主要是两,即关系型数据库和...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 252
精华内容 100
关键字:

常见的三种数据库数据模型