本次介绍数据管理的知识,分为三个部分:
- 数据源
- 数据管理
- 数据仓库
1. 数据源
典型的数据分析系统, 要分析的数据种类其实是比较丰富的。 依据来源可
大体分为以下几个部分:
- 业务系统
业务系统产生的数据是不可忽视的,比如电商网站,大量的订单数据看似杂乱章,实则蕴含潜在的商业价值,可以从中分析进而进行商业推广,产品推荐等。
另一角度来看,业务系统数据获取成本低、方式容易, 属于公司内部范畴。 业务系统的数据一般保存在关系型数据库当中。 获取形式有:
接口调用:直接获取业务系统数据库的数据,但是要注意不能影响业务系统数据库的性能,比如大量获取数据增大数据库读数据压力。
数据库 dump:非高峰时段,或者在数据库从库上 dump 出全部数据。 一般企业中会定时进行数据库的备份、 导出工作,那么就可以共享使用这些数据。
比如 MySQL 数据库,使用 mysqldump 工具就可以进行数据库的导出mysqldump -uroot -pPassword [database name] [dump file]mysqldump 命令将数据库中的数据备份成一个文本文件。表的结构和表中的数据将存储在生成的文本文件中。- 爬虫数据
- 在进行网站数据分析的时候,除了内部数据之外,还有一部分数据是我们不能够忽视的。那就是所谓的外部数据。 当然这是相对公司网站来说的。拥有了外部数据可以更好的帮助我们进行数据分析。
爬虫( Web crawler),是指一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。 它们被广泛用于互联网搜索引擎或其他类似网站,可以自动采集所有其能够访问到的页面内容,以获取或更新这些网站的内容和检索方式。
电子商务行业最初的爬虫需求来源于比价。这是某些电商网站的核心业务。大家如果买商品的时候,是一个价格敏感型用户的话,很可能会使用比价功能。毫无悬念, 会使用爬虫技术来爬取所有相关电商的价格。当然,这并不意味着大家喜欢被爬取。于是需要通过技术手段来做反爬虫。
2. 数据管理
数据文件管理
随着技术和业务的发展壮大, 企业中产生的数据种类越来越多, 数据量也越来越大。 如何对数据进行有效的组织、存储、管理、检索、维护,将会显得越来越重要。 在企业内部很多时候还涉及数据的跨部门存储与调用。 因此,进行数据的管理就显得特别重要, 也越来越受到企业的重视。
文件管理的真谛在于方便保存和迅速提取,所有的数据文件将通过某种属性(比如业务、时间) 分类被很好地组织起来,放在最能方便找到的地方。 解决这个问题目前最理想的方法就是分类管理。
从每一个文件夹的建立,我们都要按照数据文件的属性,分为大大小小、多
个层级的文件夹,建立合理的文件保存架构。此外所有的文件、文件夹,都要规
范化地命名,并放入最合适的文件夹中。
企业中一般会是用文件管理服务器进行文件管理会有一下好处
1. 定时集中对文件进行备份;
2. 可以统一制定文件安全访问权限策略;
3. 可以统一进行文件服务器防病毒管理。
常见文件服务有以下几种:
FTP 文件服务
FTP 是一个文件传输的协议, 采用 Client/Server 架构。用户可以通过各种不同的 FTP 客户端程序,借助 FTP 协议,来连接 FTP 服务器,以上传或者下载文件。 它使用两个连接与客户端通信:
命令连接:用于传输文件管理类命令, 在客户端连接后会始终在线;
数据连接:用于传输文件数据,此连接会按序创建。
Linux 中常用的 FTP 客户端软件有 lftp, ftp, lftpget, wget, curl 等。
Windows 中可以使用浏览器,资源管理器或 Filezilla 等软件。NFS 文件服务
NFS 是 Network File System 的缩写,即网络文件系统。 它允许网络中的计算机之间通过 TCP/IP 网络共享资源。 NFS 的基本原则是“ 容许不同的客户端及服务端通过一组 RPC 分享相同的文件系统” ,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。
NFS 在文件传送或信息传送过程中依赖于 RPC 协议。 RPC,远程过程调(Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。 NFS本身是没有提供信息传输的协议和功能的,但 NFS 却能让我们通过网络进行资料的分享, 原因就在与 RPC,可以说 NFS 本身就是使用 RPC 的一个程序。可以这么理解 RPC 和 NFS 的关系: NFS 是一个文件系统,而 RPC 是负责信息的传输。Samba 文件服务
SMB( Server Mess