zoukankan      html  css  js  c++  java
  • 数据库知识入门

      最近总在胡思乱想,不知何去何从,TM20来岁的大好青年突然就莫名有了中年危机感了。也是没谁了,由于行业决定,硬盘里面的东西乱七八糟挺多的...没错,各种学习笔记,突然发现以前的自己是这么的爱学习,看看还挺有用的,于是就重走长征路,温故而知新,做个迁移吧。

    目前我们常用的数据库主要就是两类:

    关系型数据库和非关系型数据库

    关系型数据库:

    1. 把复杂的数据结构归结为简单的二元关系(二维表格形式)
    2. 结构化查询语言sql语句对数据进行存取
    3. 典型产品:MySQL和oracle

    非关系型数据库:

    1. 就是为了解决web2.0时代高并发,灵活性问题。
    2. Google的BigTable
    3. Amazon的Dynamo成功的商用NoSQL
    4. Facebook的Cassandra
    5. Apache的HBase
    6. Redis,mongodb也想当受到追捧(我们公司用的就是mongo,具体细节不展开)

      按照设计种类大致可分为:

      1)键值(Key-Value)存储数据库
        Key/value模型对于IT系统来说的优势在于简单、易部署、高并发。
        典型产品:Memcached,Redis,MemcacheDB,Berkeley DB
      2)列存储(Column-oriented)数据库
        典型产品:Cassandra,HBase
      3)面向文档(Document-Oriented)的数据库
        典型产品:MongoDB,CouchDB
      4)面向图形(Graph)的数据库
        典型产品:Neo4J,InfoGird

    各个种类数据库的适用场景

    Orical:传统大企业,大公司,政府,金融,证券等,跑在IBM的小型机的(不过大家也都在去IOE)
    MySQL:大中小型企业,互联网公司,游戏公司,电商平台等
    MariaDB:MySQL的替代品
    SQL Server:微软的,Windows平台
    Access:入门级桌面小型数据库

    非关系型数据库:
    Mencached(Key-Value)数据库
    断电数据丢失,解决:Memcachedb新浪开发的

    redis(key-value)
    redis的数据都是缓存在内存中。区别是redis会周期性的把更新的数据写入磁盘
    或把修改操作写入追加到记录文件。

    Mongodb介于关系和非关系之间的数据库

    我们的主角是MySQL

    MySQL的优势:

    1. 大中小互联网企业都在用,如:BAT
    2. MySQL性能卓越,服务稳定,很少出现异常宕机
    3. MySQL开发源代码且无版权制约,自主性及使用成本低
    4. MySQL历史悠久,社区及用户非常活跃,遇到问题,可以寻求帮助
    5. MySQL软件体积小,安装使用简单,易于维护,安装及维护成本低
    6. MySQL品牌口碑效应好,LAMP,LNMP流行架构。
    7. MySQL支持多种操作系统,提供多种API接口,支持多种开发语言,特别对流行的PHP语言有很好的支持,时下比较热门的python,MySQL也提供了api,MySQL-python

    如何选择合适的MySQL版本:

    1. 稳定版:选择社区版的稳定版GA版
    2. 选择MySQL数据库GA版本发布后6个月以上的GA版本
    3. 要选择前后几个月没有大的BUG修复的版本
    4. 最好向后较长时间没有更新发布的版本
    5. 要考虑开发人员开发程序使用的版本是否兼容你选的版本
    6. 作为内部开发测试数据库环境,跑大概3-6个月的时间
    7. 有限企业非核心业务采用新版本的数据库GA版本
    8. 向DBA高手请教,看看大家都有用哪个GA版本产品
    9. 经过上述工序后,若没有重要bug或性能瓶颈就可以上业务了。
  • 相关阅读:
    王彪20162321 2016-2017-2 《程序设计与数据结构》第2周学习总结
    王彪20162321 2016-2017-2 《程序设计与数据结构》第1周学习总结
    预备作业03
    预备作业02
    20162321王彪_预备作业
    20162311 2016-2017-2 《程序设计与数据结构》第九周学习总结
    20162311 2016-2017-2 《程序设计与数据结构》第八周学习总结
    20162311 实验二 Java面向对象程序设计 实验报告
    20162311 2016-2017-2 《程序设计与数据结构》第七周学习总结
    20162311 2016-2017-2 《程序设计与数据结构》第六周学习总结
  • 原文地址:https://www.cnblogs.com/chbo/p/7056257.html
Copyright © 2011-2022 走看看