关系模型

关系模型

北城余情 提交于 2020-01-01 07:32:02
关系模型概念 关系模型认为所有数据都可以表示为数学上的关系,即集合中两个元素之间的连接。 这一概念在关系型数据库中体现为数据表。数据表中的每一行保存一条记录称做tuple(元组),每一列表示数据记录的一个属性称做domain(域)。 每个数据都与一个记录和一个属性关联,即两者的关系。而数据表则是记录和属性的关系集。 Key Super Key(超码): 是一个或多个属性的集合,可以唯一确定一条记录。 Candidate Key(候选码): 删除candidate key中任意一个属性都会使其失去唯一确定记录的特性。 Primary Key(主码): 从candidate key中选择一个作为对记录的唯一标识。 Foreign Key(外码): 关系模式R的属性A参照关系模式S的主键, 称A为R中的外键. Primary Key中的属性称为主属性, 不在Primary Key中的属性称为非主属性. Primary Key一般起约束作用,不能重复不能为空, 防止重复(unique)或无法查询(not null)的情况发生,称为实体完整性约束(Entity integrity)。 Forign Key用来用数据表S来保证数据表R的完整性,R中Foreign Key属性A参照关系S,则R.A中的值必须在S的主键中出现过, 称为参照完整性约束(Referential integrity)。

基于RBAC的权限设计模型

南笙酒味 提交于 2019-12-30 03:44:51
基于RBAC的权限设计模型: 1 RBAC 介绍   RBAC 模型作为目前最为广泛接受的权限模型。   NIST (The National Institute of Standards and Technology,美国国家标准与技术研究院)标准RBAC模型由4个部件模型组成,这4个部件模型分别是基本模型RBAC0(Core RBAC)、角色分级模型RBAC1(Hierarchal RBAC)、角色限制模型RBAC2(Constraint RBAC)和统一模型RBAC3(Combines RBAC)[1]。RBAC0模型如图1所示。                                       图表 1 RBAC 0 模型 l RBAC0 定义了能构成一个RBAC控制系统的最小的元素集合   在RBAC之中,包含用户users(USERS)、角色roles(ROLES)、目标objects(OBS)、操作operations(OPS)、许可权permissions(PRMS)五个基本数据元素,权限被赋予角色,而不是用户,当一个角色被指定给一个用户时,此用户就拥有了该角色所包含的权限。会话sessions是用户与激活的角色集合之间的映射。RBAC0与传统访问控制的差别在于增加一层间接性带来了灵活性,RBAC1、RBAC2、RBAC3都是先后在RBAC0上的扩展。 l

机器不学习:浅析深度学习在实体识别和关系抽取中的应用

我怕爱的太早我们不能终老 提交于 2019-12-27 11:26:56
机器不学习 jqbxx.com -机器学习好网站 命名实体识别(Named Entity Recognition,NER)就是从一段自然语言文本中找出相关实体,并标注出其位置以及类型,如下图。命名实体识别是NLP领域中的一些复杂任务的基础问题,诸如自动问答,关系抽取,信息检索等 ,其效果直接影响后续处理的效果,因此是NLP研究的一个基础问题。 NER一直是NLP领域中的研究热点,现在越来越多的被应用于专业的领域,如医疗、生物等。这类行业往往具有大量的专业名词,名词与名词之间相互之间存在着不同种类的关系。NER的研究从一开始的基于词典和规则的方法,基于统计机器学习的方法,到近年来基于深度学习的方法,NER研究的进展趋势如下图所示。 基于统计机器学习的方法主要包括:隐马尔可夫模型(HiddenMarkovModel HMM)、最大熵(MaxmiumEntropy,ME)、支持向量机(Support VectorMachine,SVM)、条件随机场( Conditional Random Fields,CRF)等。 隐马尔可夫模型(HMM)主要利用Viterbi算法求解命名实体类别序列,在训练和识别时的效率较高且速度较快。隐马尔可夫模型适用于一些对实时性有要求以及像信息检索这样需要处理大量文本的应用,如短文本命名实体识别。 最大熵模型(ME)结构紧凑,具有较好的通用性

数据仓库建模

▼魔方 西西 提交于 2019-12-27 09:16:52
前言 数据仓库建模包含了几种数据建模技术,除了之前在数据库系列中介绍过的 ER建模 和 关系建模 ,还包括专门针对数据仓库的维度建模技术。 本文将详细介绍数据仓库维度建模技术,并重点讨论三种基于ER建模/关系建模/维度建模的数据仓库总体建模体系:规范化数据仓库,维度建模数据仓库,以及独立数据集市。 回到顶部 维度建模的基本概念 维度建模(dimensional modeling)是专门用于分析型数据库、数据仓库、数据集市建模的方法。 它本身属于一种关系建模方法,但和之前在操作型数据库中介绍的关系建模方法相比增加了两个概念: 1. 维度表(dimension) 表示对分析主题所属类型的描述。比如"昨天早上张三在京东花费200元购买了一个皮包"。那么以购买为主题进行分析,可从这段信息中提取三个维度:时间维度(昨天早上),地点维度(京东), 商品维度(皮包)。通常来说维度表信息比较固定,且数据量小。 2. 事实表(fact table) 表示对分析主题的度量。比如上面那个例子中,200元就是事实信息。事实表包含了与各维度表相关联的外码,并通过JOIN方式与维度表关联。事实表的度量通常是数值类型,且记录数会不断增加,表规模迅速增长。 注:在数据仓库中不需要严格遵守规范化设计原则(具体原因请看 上篇 )。本文示例中的主码,外码均只表示一种对应关系,此处特别说明 。 回到顶部

笔记 UML基础

放肆的年华 提交于 2019-12-26 14:07:25
UMl:unified modeling language。为面向对象软件设计提供统一的、标准的、可视化的建模语言。适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程。 UML的定义包括UML语义和UML表示法。 UML模型图的由事物、关系、图构成。事物是UML模型图中最基本的构成元素,是具有代表性的成分的抽象;关系把事物紧密联系在一起;图是事物和关系的可视化表示。 UML事物包括构建事物、分组事物、行为事物、注释事物。   构建事物:UML模型的静态部分,描述概念或物理元素。   行为事物:UML模型的动态部分,描述跨越空间和时间的行为。     交互:实现某功能的一组构件事物之间的消息的集合,涉及消息、动作序列、链接     状态机:描述事物或交互在生命周期内响应事件所经历的状态序列。   分组事物:UML模型图的组织部分,描述事物的组织结构。     包:把元素组织成组的机制。   注释事物:UML模型的解释部分,用来对模型中的元素进行说明、解释。     注解:对元素进行约束或解释的简单符号。   UML关系:   依赖关系:两个事物之间的语义关系,其中一个事物(独立事物)发生变化,会影响到另一个事物(依赖事物)的语义。   关联关系:是一种结构关系,它指明一个事物的对象与另一个事物的对象间的联系。   泛化关系:是一种特殊/一般的关系。可以看做是继承关系  

python Django 外键和表关系

我的未来我决定 提交于 2019-12-24 05:38:01
python Django 外键和表关系 一、外键 1. 两个模型之间的引用 2. 引用另一个app的模型 3. 外键引用自身 4. 外键删除操作 (1) CASCADE :级联操作 (2)2. PROTECT :受保护 (3)SET_NULL :设置为空 (4)外键数据删除,空 (5)SET_DEFAULT :设置默认值 (6) SET() :外键删除,set函数 (7) DO_NOTHING :不采取任何行为 二、表关系 1. 一对多 2. 一对一: 3. 多对多 一、外键 在 MySQL 中,表有两种引擎,一种是 InnoDB ,另外一种是 myisam 。如果使用的是 InnoDB 引擎,是支持外键约束的。外键的存在使得 ORM 框架在处理表关系的时候异常的强大。因此这里我们首先来介绍下外键在 Django 中的使用。 1. 两个模型之间的引用 类定义为 class ForeignKey(to,on_delete,**options) 。第一个参数是引用的是哪个模型,第二个参数是在使用外键引用的模型数据被删除了,这个字段该如何处理,比如有 CASCADE 、 SET_NULL 等。 这里以一个实际案例来说明。 比如有一个 User 和一个 Article 两个模型。一个 User 可以发表多篇文章,一个 Article 只能有一个 Author ,并且通过外键进行引用。

文档对象模型

旧城冷巷雨未停 提交于 2019-12-24 01:12:17
文档对象模型定义 文档对象模型英文名为 Document Object Model , 简称 DOM ,它是一种比较重要的软件设计模式,不是编程技巧。可以这么说,平生不认 DOM ,便称英雄也枉然,大家应当多多了解它的能力。 文档对象模型是面向对象编程技术的集中体现,若没有完整的面向对象编程思想,是不可能理解和开发文档对象模型,若开发者能开发出文档对象模型,那就说明他 / 她比较完整的理解和掌握了面向对象编程思想。 W3C 国际组织对文档对象模型是这样定义的(摘自 http://www.w3.org/DOM/ ) The Document Object Model is a platform- and language-neutral interface that will allow programs and scripts to dynamically access and update the content, structure and style of documents. The document can be further processed and the results of that processing can be incorporated back into the presented page. This is an overview of DOM

django——模型层之多表操作

柔情痞子 提交于 2019-12-23 10:56:23
django的多表操作 1.使用场景 在实际生产过程多,我们面对的数据纷繁复杂,此时就需要良好的数据结构设计,多表之间的约束关系为我们提供了数据管理以及查询的便利。在MYsql中我们利用外键(foreign key)来实现这样的约束关系,在django中我们通过调用相应的API来实现这样的功能。 2.创建模型 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄。作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息。作者详情模型和作者模型之间是一对一的关系 (one-to-one) 出版商模型:出版商有名称,所在城市以及email。 书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系 (many-to-many) ; 一本书只应该由一个出版商出版,所以出版商和书籍是一对多关联关系 (one-to-many) 。 模型建立的代码(module)如下: 1 from django.db import models 2 # Create your models here. 3 4 class Author(models.Model): 5 nid = models.AutoField(primary_key=True) 6 name=models.CharField( max

sequelize 学习之路

人走茶凉 提交于 2019-12-23 02:08:27
如果你觉得 Sequelize 的文档有点多、杂,不方便看,可以看看这篇。 在使用 NodeJS 来关系型操作数据库时,为了方便,通常都会选择一个合适的 ORM (Object Relationship Model)框架。毕竟直接操作 SQL 比较繁琐,通过 ORM 框架,我们可以使用面向对象的方式来操作表。 NodeJS 社区有很多的 ORM 框架,我比较喜欢 Sequelize ,它功能丰富,可以非常方便的进行连表查询。 这篇文章我们就来看看, Sequelize 是如何在 SQL 之上进行抽象、封装,从而提高开发效率的。 安装 这篇文章主要使用 MySQL 、 Sequelize 、 co 来进行介绍。安装非常简单: $ npm install --save co $ npm install --save sequelize $ npm install --save mysql 代码模板如下: var Sequelize = require('sequelize'); var co = require('co'); co(function* () { // code here }).catch(function(e) { console.log(e); }); 基本上, Sequelize 的操作都会返回一个 Promise ,在 co 的框架里面可以直接进行 yield

基于深度学习的命名实体识别与关系抽取

送分小仙女□ 提交于 2019-12-21 05:18:17
基于深度学习的命名实体识别与关系抽取 【备注:此博文初次编辑为2019年12月19日,最新编辑为2019年12月19日】 摘要:构建知识图谱包含四个主要的步骤:数据获取、知识抽取、知识融合和知识加工。其中最主要的步骤是知识抽取。知识抽取包括三个要素:命名实体识别(NER)、实体关系抽取(RE) 和 属性抽取。其中属性抽取可以使用python爬虫爬取百度百科、维基百科等网站,操作较为简单,因此命名实体识别(NER)和实体关系抽取(RE)是知识抽取中非常重要的部分,同时其作为自然语言处理(NLP)中最遇到的问题一直以来是科研的研究方向之一。   本文将以深度学习的角度,对命名实体识别和关系抽取进行分析,在阅读本文之前,读者需要了解深度神经网络的基本原理、知识图谱的基本内容以及关于循环神经网络的模型。可参考本人编写的博文:(1)基于深度学习的知识图谱综述;(2)[深度神经网络];(3)(https://blog.csdn.net/qq_36426650/article/details/84398458)。   本文的主要结构如下,首先引入知识抽取的相关概念;其次对词向量(word2vec)做分析;然后详细讲解循环神经网络(RNN)、长短期记忆神经网络(LSTM)、门控神经单元模型(GRU);了解基于文本的卷积神经网络模型(Text-CNN);讲解隐马尔可夫模型(HMM