zoukankan      html  css  js  c++  java
  • 0_数据库概述

    0_数据库概述

    所有的研究都应该遵守一个铁律,即为什么使用XXXX是什么怎么用XX。所以我们对数据库的概述也应该遵循该铁则。

    • 为什么使用数据库
    • 数据库是什么
    • 怎么使用数据库

    1.为什么要使用数据库

    我们可以从日常使用总结出以下为什么要使用数据库:

    • 动态网站中的数据都是存储在数据库中的
    • 数据库可以用来持久存储客户端通过表单收集的用户信息
    • 数据库软件本身可以对数据进行高效的管理

    其实简而言之,最主要的功能,就是我们使用数据库对数据进行存储和管理

    2.什么是数据库

    明白了数据库的作用后,我们开始了解什么是数据库。按照上面的功能描述可知,数据库就是对数据进行存储和管理的仓库。不同于实体硬件仓库,数据库本质是一个软件,通过API来操作它以及其内部数据。

    Node.js通过数据库提供的API操作数据库
    Node.js通过数据库提供的API操作数据库

    市场上的数据库数目众多,按照其分类仅为关系型(Sql)数据库()和非关系(NoSql).型数据库.

    关系型数据库的数据结构是稳定的。关系型数据库类似于父子树形图,即子节点只有一个父节点(一一对应)。Sql通常以数据库表的形式存储,例如存储用户信息,SQL中增加外部关系的话,需要在原表中增加一个外键,来关联外部数据表。,且需要定义好地段和表结构之后,才能够添加数据,例如定义表的主键、索引、外键等。表结构可以在定义之后更新,但是如果有比较大的结构变更,就会变的比较复杂。对结构进行增删改查操作都只能从上往下遍历,I/O读取极其耗时。

    关系树状图
    关系树状图

    非关系型数据库的数据结构为图,很随意,对结构进行增删改查操作十分方便。数据可以在任何时候任何地方添加。不需要预先定义。NoSql采用key-value的形式存储,类似于朋友关系,可以有多个朋友,也可以没有朋友,也可以随时断绝关系,添加关系。

    其实所谓的**关系即表结构之间的字段关系**。

    对于关系型数据库来说,要么这个字段全体都有,要么全体都没有。譬如一个人肯定有姓名,年龄和性别,即关联有姓名,年龄和性别。

    但对于非关系数据库来说,一条数据是否具有这个字段无关紧要,如同一个人有朋友也行,没有朋友也是可以活的。不会局限于固定的结构,可以减少一些时间和空间的开销。仅仅需要根据key来取出对应的value值即可。

    在网页应用中(app和web),对这种一致性(固定关系)的要求不是那么的紧迫,允许有一定的结构差异,所以一般都是使用非关系类型数据。

    3.怎么使用数据库

    综上所述,网页开发选用nosql数据库,那么这里我们论述mongoDB数据库的使用。

    由于数据库的使用涉及到数据库的安装和配置,篇章较长,另开页面。

  • 相关阅读:
    向量求导几则公式备忘
    电脑硬件接触不良
    caffe编译新问题
    faster-rcnn 目标检测 数据集制作
    py-faster-rcnn 的makefile.config 注意事项
    ubuntu14.04 python + opencv 傻瓜式安装解决方案
    轻量级神经网络平台tiny-dnn实践
    OpenMP 并行编程
    React在Render中使用bind可能导致的问题
    为了cider,尝试emacs的坑
  • 原文地址:https://www.cnblogs.com/singledogpro/p/14961600.html
Copyright © 2011-2022 走看看