《《财务大数据分析》课件项目一 任务2.pptx》由会员分享,可在线阅读,更多相关《《财务大数据分析》课件项目一 任务2.pptx(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、财务大数据分析任课老师:目录项目一 大数据基础项目二数据获取项目三 数据预处理项目四 大数据+财报数据分析项目五 大数据+资金分析项目六大数据+销售分析项目七大数据+费用分析任务1 大数据基础认知任务2 数据库基础认知项目一大数据基础什么是大数据https:/ 大数据基础知识01一、数据库、数据库系统及数据库管理系统的基本概念 数据库(DataBase,简称DB):就是数据的仓库,是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可被各种用户共享。数据库系统(DataBase System,简称D
2、BS):是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。解析数据库系统和数据库是两个概念。数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。但是在日常工作中人们常常把数据库系统简称为数据库。数据库管理系统(DataBase Management System,简称DBMS):是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。数据库管理系统是用来对数据进行存储、管理等操作的软件。数据库管理系统的主要功能包括数据定义、数据操纵、数据库的运行管理、数据库的建立和维护。(一)大数据的起
3、源(一)大数据的起源二、数据库分类 数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。而在当今的互联网中,最常见的数据库模型主要是两种,即关系型数据库(SQL)和非关系型数据库(NoSQL,Not Only SQL)。(一)大数据的起源(一)大数据的起源(一)关系型数据库1.关系型数据库的基本概念 关系型数据库是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便用户理解。关系型数据库这一系列的行和列被称为表,一组表组成了数据库。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据
4、组织。二维表格模型见表1-1。表1-1 二维表格模型 关系型数据库的最大特点就是事务的一致性。传统的关系型数据库读写操作都是事务的,具有ACID,即Atomic(原子性)、Consistency(一致性)、Isolation(隔离性)和Durability(持久性)的特点,这个特性使得关系型数据库可以用于几乎所有对一致性有要求的系统中,如典型的银行系统。常见的关系型数据库有以下几种,见表1-2。表1-2 关系型数据库类型2.关系型数据库的特性 关系型数据库以其强大的功能备受业界青睐,并应用广泛。其具有以下特性:(1)关系型数据库,是指采用了关系模型来组织数据的数据库。(2)关系型数据库的最大特
5、点就是事务的一致性。(3)关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。03 关系型数据库有以下优点:(1)容易理解:二维表结构是非常贴近逻辑世界的一个概念,关系模型相对网状、层次等其他模型来说更容易理解。(2)使用方便:通用的SQL语言使得操作关系型数据库非常方便。(3)易于维护:丰富的完整性(实体完整性、参照完整性和用户定义的完整性)大大降低了数据冗余和数据不一致的概率。04关系型数据库有以下缺点:(1)数据读写必须经过sql解析,大量数据、高并发下读写性能不足。对于传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。(2)具有固定的表结构,
6、因此扩展困难。(3)多表的关联查询导致性能欠佳。3.MySQL概述 MySQL本质上是一个数据库管理系统,最初是由“MySQL AB公司”开发的一套关系型数据库管理系统(RDBMS-Relation DataBase Management System)。MySQL不仅是最流行的开源数据库,而且是业界成长最快的数据库,每天有超过7万次的下载量,其应用范围从大型企业到专有的嵌入应用系统。在MySQL服务器中,可以创建很多数据库(database)。MySQL AB是由:两个瑞典人David Axmark、Allan Larsson和一个荷兰人Michael“Monty”Widenius在瑞典创办
7、的。2008年年初,Sun Microsystems 收购了MySQL AB公司。2009年,Oracle收购了Sun公司,使MySQL并入Oracle的数据库产品线。MySQL是开放源码的小型关系型数据库管理系统,广泛应用在中小型网站中,总体拥有成本低,规模较Oracle和DB2小。其具有以下优点:(1)体积小、速度快、总体拥有成本低,开源,提供的接口支持多种语言连接操作,支持多种操作系统。(2)MySQL的核心程序采用完全的多线程编程。线程是轻量级的进程,它可以灵活地为用户提供服务,而不过多的系统资源。用多线程和C语言实现的MySQL 能很容易充分利用CPU。(3)MySQL有一个非常灵活
8、而且安全的权限和口令系统。当客户与MySQL 服务器连接时,它们之间所有的口令传送被加密,而且MySQL 支持主机认证。(4)MySQL能够提供很多不同的使用者界面,包括命令行客户端操作、网页浏览器,以及各式各样的程序语言界面,如 C+、Perl、Java、PHP,以及Python。用户可以使用事先包装好的客户端,或者干脆自己写一个合适的应用程序。MySQL可用于 Unix、Windows,以及OS/2等平台,因此它可以用在个人电脑或者服务器上。在使用过程中,MySQL的某些特性也限制了其进一步发展,其缺点如下:(1)不支持热备份。(2)MySQL不支持自定义数据类型。(3)MySQL最大的缺
9、点是其安全系统,主要是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。(4)MySQL对存储过程和触发器支持不够良好。(5)尽管 MySQL 理论上仍是开源产品,也有人抱怨它诞生之后更新缓慢,但是应该注意到有一些基于 MySQL 并完整集成的数据库(如 MariaDB)在标准的 MySQL 基础上带来了额外价值。(6)MySQL对XML支持不够良好。(二)非关系型数据库1.非关系型数据库的基本概念非关系型数据库,也叫Nosql数据库,全称是not noly sql。非关系型数据库提出另一种理念,例如,以键值对存储,且结构不固定,每一个元组可以有不一样的字段,每个元组
10、可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。使用这种方式,用户可以根据需要去添加自己需要的字段,这样,为了获取用户的不同信息,不需要像关系型数据库中要对多表进行关联查询,仅需要根据id取出相应的value就可以完成查询。NoSQL数据存储不需要固定的表结构,通常也不存在连接操作,就是表与表之间没有直接关系,创建的话也不用遵循三大范式,并且是以键值对存储。它的结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销,可以处理超大量的数据,运行在便宜的PC服务器集群上
11、,能很大程度上节省开销。常见的非关系型数据库有:MongoDB、NoSql、Redis、Memcached、HBase等。2.非关系型数据库的特性非关系型数据库主要是为了解决复杂、海量数据的存储问题,具有较高水平的横向拓展水平。其有以下特性:(1)模式自由:不需要定义表结构,数据表中的每条记录都可能有不同的属性和格式。(2)逆规范化:不遵循范式要求,去掉完整性约束,减少表之间的依赖。(3)弹性可扩展:可在系统运行的过程中动态地删除和增加节点。(4)多副本异步复制:数据快速写入一个节点,其余节点通过读取写入的日志来实现异步复制。(5)弱事务:不能完全满足事务的ACID特性,但是可以保证事务的最终
12、一致性。非关系型数据库为非结构化的存储方式,基于多维关系模型,而且具有特有的使用场景。其优点有以下几点:(1)高并发,大数据下读写能力较强。(2)基于键值对的,数据之间没有耦合性,可以想象成表中的主键和值的对应关系,而且不需要经过SQL层的解析,所以读写性能非常高。(3)基本支持分布式,易于扩展,可伸缩。(4)简单,弱结构化存储。非关系型数据库的缺点如下:(1)不提供SQL支持,学习和使用成本较高;(2)无事务处理,附加功能bi和报表等支持也不好。三、SQL概述 SQL(Structured Query Language)全称为结构化查询语言,是一种特殊目的的编程语言,是一种数据库查询和程序设
13、计语言,用于存取数据以及查询、更新和管理关系数据库系统。通俗来讲,SQL就是用来和数据库打交道,用SQL语言完成和数据库的通信,SQL也是一套标准。结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的数据库系统 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。1.SQL语言的特点(1)综合统一。SQL语言集数据定义语言(DDL)、数据操纵语言(DML)、数据控制语言(DCL)功能于一体,可以独立完成数据库生命周期
14、中的全部活动。(2)高度非过程化。非关系型数据模型的数据操纵语言“面向过程”,必须指定存取路径,而SQL只要提出“做什么”,无须了解存取路径。存取路径的选择以及SQL的操作过程由系统自动完成。(3)面向集合的操作方式。SQL采用集合操作方式,操作对象、查找结果可以是元组的集合,一次插入、删除、更新操作的对象也可以是元组的集合。(4)以同一种语法结构提供多种使用方式。SQL是独立的语言,能够独立地用于联机交互的使用方式。SQL又是嵌入式语言,能够嵌入高级语言(如C、C+、Java)程序中,供程序员设计程序时使用。(5)语言简单,易学易用。尽管SQL的功能很强,但语言十分简洁,核心功能只用了9个动
15、词。SQL的语法接近英语口语,所以用户很容易学习和使用。2.结构化查询语言包含的6个部分(1)数据查询语言(Data Query Language,DQL):也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE、ORDER BY、GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。(2)数据操作语言(Data Manipulation Language,DML):其语句包括动词INSERT、UPDATE和DELETE,它们分别用于添加、修改和删除。(3
16、)事务控制语言(TCL):其语句能确保被DML语句影响的表的所有行及时得以更新,包括COMMIT(提交)命令、SAVEPOINT(保存点)命令、ROLLBACK(回滚)命令。(4)数据控制语言(DCL):其语句通过GRANT或REVOKE实现权限控制,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。(5)数据定义语言(DDL):其语句包括动词CREATE、ALTER和DROP。在数据库中创建新表或修改、删除表(CREAT TABLE 或 DROP TABLE),为表加入索引等。(6)指针控制语言(CCL):其语句像DECLARE CURSOR、FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。【任务要求】(1)财务大数据分析师进行关系型数据库管理系统MySQL的安装及登录。(2)关系型数据库管理系统MySQL的启动。【任务实施】进分析云平台操作小结01数据库基本概念02数据系统的概念03SQL的基本知识04通过任分析云平台做任务任务一数据课后讨论请每位同学查阅资料,就下面四个内容展开讨论:1、数据库、数据库管理系统、数据库系统的关系?2、关系型数据的特征,典型代表?任务一数据