MySQL简介与应用

发表时间: 2023-07-27 12:46

导读

在大数据中,我们需要处理的数据来自不同的渠道,其中有一个很重要的渠道就是关系型数据库中存储的数据。在企业中,会把业务数据存储在关系型数据库中,一般以 MySQL 居多。另外,我们在后续的学习中需要学习 Hive、SparkSQL、Flink SQL 等内容,而这些内容共同的基础就是 SQL 语法。所以,我们需要借助 MySQL 学习 SQL 语法的使用,熟练的掌握基础的增删改查的操作与多表的查询操作,为后续的课程学习打好扎实的基础。
另外,在大数据的数据处理流程中,有时候我们需要将处理之后的数据导出给其他的业务场景使用,而导出业务数据最常用的,也是导出到 MySQL 数据库中,因此这部分的课程需要重点去学习!

数据库(DataBase,DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。

数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中的数据。

数据库发展史

  1. 层次数据库阶段(1960s)
    层次数据库是数据库管理系统的早期形式。这种数据库系统采用了层次结构来组织数据,数据被分层存储,每个层级包含一组相关的数据。这种数据库模型的缺点是数据之间的关系比较复杂,查询和更新数据比较困难。
  2. 网状数据库阶段(1960s-1970s)
    网状数据库模型是对层次模型的改进。它采用了一种更加灵活的数据结构,可以将一个数据节点连接到多个其他节点。这种数据库模型的缺点是数据结构比较复杂,维护难度大。
  3. 关系数据库阶段(1970s-至今)
    关系数据库是目前应用最广泛的一种数据库类型。这种数据库模型采用了关系模型来组织和管理数据,数据以表格的形式呈现,表格之间通过关系进行连接。关系数据库可以更好地处理数据之间的关系,同时也更容易进行查询和更新操作。
  4. 对象数据库阶段(1980s-至今)
    对象数据库是一种将面向对象技术应用于数据库管理系统的方法。它将对象思想引入到数据库中,将数据和操作封装在一起,提高了数据的抽象程度和复用性。
  5. NoSQL 数据库阶段(2000s-至今)
    NoSQL 数据库是一种非关系型数据库,它不采用关系模型来存储数据,而是采用其他数据模型,如文档、键值对、图等。NoSQL 数据库具有高可扩展性、高性能、高可用性等优点,适用于大规模数据存储和处理场景。

SQL 和 NoSQL 型数据库的区别

  1. 数据存储结构不同:
    SQL 数据库采用表格结构,数据以行和列的形式存储。
    NoSQL 数据库采用键值对、文档、图形等不同的数据结构,数据之间的关系不是固定的,更加灵活。
  2. 数据查询方式不同:
    SQL 数据库使用结构化查询语言(SQL)进行查询,具有较高的查询灵活性和复杂性。
    NoSQL 数据库则使用自己的查询语言(如 MongoDB 的查询语言),查询方式相对简单,但不支持复杂查询。
  3. 数据规模不同:
    SQL 数据库适用于小型到大型数据存储和管理,但对于大规模数据和高并发访问,性能和扩展性有限。
    NoSQL 数据库适用于大规模数据和高并发访问,具有高可扩展性和高性能的特点。
  4. 应用场景不同:
    SQL 数据库适用于需要处理事务的应用场景,如金融、电商等。
    NoSQL 数据库适用于需要快速处理大量数据的应用场景,如社交网络、大数据分析等。

SQL 和 NoSQL 型数据库的分类

  1. 关系型数据库(sql)
  2. Oracle: 是 Oracle 公司的数据库产品
  3. Mysql: 最早属于瑞典的 MysqlAB 公司的,后被 Sun 公司收购,Sun 在 2009 年 4 月 20 号被 Oracle 收购。
  4. SQLServer: 微软旗下的数据库产品
  5. Access: 微软旗下的数据库产品
  6. DB2: IBM 公司旗下的数据库产品
  7. 非关系型数据库(nosql)
  8. HBase 是一个分布式的、面向列的开源数据库
  9. MongoDB 是一个基于分布式文件存储的数据库
  10. Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API
  11. Neo4j 采用图形数据模型存储数据,数据以节点和关系的形式组织存储。这种存储方式非常适合处理复杂的数据关系

MySQL 数据库

mysql

MySQL 是一种开源的、关系型的数据库管理系统,它是最流行的关系型数据库之一。MySQL 由 Oracle 公司开发,支持多种操作系统和编程语言,包括 Linux、Windows、Java、Python 等。MySQL 的主要特点包括:

  1. 支持标准 SQL 语言:MySQL 支持标准 SQL 语言,用户可以使用 SQL 语言进行数据的增删改查等操作。
  2. 灵活的数据存储:MySQL 支持多种数据类型,可以存储各种类型的数据,包括文本、数字、图片等。
  3. 高可靠性和安全性:MySQL 提供了完善的安全机制,支持数据的备份和恢复,可以保证数据的可靠性和安全性。
  4. 高性能:MySQL 采用了多种优化技术,如索引、缓存等,可以提高数据库的性能和响应速度。
  5. 易于集成和部署:MySQL 支持多种编程语言和操作系统,可以轻松地集成到各种应用程序中,并且易于部署和管理。
    MySQL 广泛应用于各种领域,包括 Web 应用程序、电子商务、金融、医疗等。由于 MySQL 具有开源、免费、易于使用等优点,因此它也成为了许多开发者和企业的首选数据库。

DB-Engines Ranking 根据数据库管理系统的受欢迎程度对它们进行排名。该排行榜是按搜索、谷歌趋势、 Stack Overflow 网站、LinkedIn、Twitter 等社交网络中的关注度, 综合比较进行的排名。该排名涵盖全球 388 个数据库系统,排名每月更新一次,我们可以发现 Mysql 的使用占比还是非常高的。

MySQL 在大数据领域的作用

  1. 数据的存储和管理:MySQL 可以作为大数据系统中的一个数据存储和管理的工具。在大数据系统中,MySQL 通常用于存储与业务相关的结构化数据,如用户信息、订单信息、产品信息等。同时,MySQL 还可以与其他大数据工具进行集成,如 Hadoop、Spark 等,实现数据的存储和管理。
  2. 数据的清洗和处理:在大数据系统中,原始数据往往需要进行清洗和处理,以便进行后续的分析。MySQL 可以作为数据清洗和处理的工具,通过 SQL 语言进行数据的筛选、聚合、分组等操作,为后续的数据分析提供准备。
  3. 数据分析和挖掘:MySQL 可以作为数据分析和挖掘的工具,通过 SQL 语言和各种分析函数进行数据挖掘和分析。同时,MySQL 还可以与其他数据分析工具进行集成,如 Tableau、PowerBI 等,实现更加复杂的数据分析和可视化。
  4. 数据可视化和报表:MySQL 可以作为数据可视化和报表的工具,通过各种 BI 工具进行数据的可视化和报表制作。通过 MySQL 的数据存储和管理能力,可以为 BI 工具提供高质量的数据源,实现更加精准和有价值的数据分析和报表制作。

综上所述,MySQL 在大数据领域具有重要作用,它可以作为数据存储和管理、数据清洗和处理、数据分析和挖掘、数据可视化和报表等方面的工具,为大数据系统提供有力的支持。