数据仓库中集成了企业几乎所有的可以获取到的数据以用于数据分析和决策支持。这些进入到数据仓库中的数据无外乎三种类型:结构化数据、半结构化数据和非结构化数据,它们经过转化后以某种形式统一地储存在数据仓库中,即通常说的ETL(Extract, Transform, Load,抽取、转换、装载)的过程。下面主要说一下这三种数据类型的区别,它们分别包括哪些源数据以及这些数据在网站数据分析中的作用。
结构化数据
这类数据的格式非常规范,典型的代表就是关系数据库中的数据,这些数据可以用二维表来存储,有固定的字段数,每个字段有固定的数据类型(数字、字符、日期等),并且每个字段的字节长度也相对固定。这类数据也是最易管理维护的,同时对于查询、展示和分析而言也是最为方便的一类数据格式。
结构化的数据在网站中一般指的是网站内部的数据库数据以及一些外部开放的数据库接口中获取的数据。这些数据可以直接通过ETL导入到数据仓库中进行集成化管理,而在网站分析和数据分析中直接可以根据需要通过SQL语句查询导出。
结构化的数据在网站数据分析中占据着举足轻重的地位,这些存储在数据库中的数据一般都是网站的运营数据及用户操作的结果数据(Outcome),比如网站的注册用户数、博客的文章数、评论数……而对于电子商务类网站而言,那些订单和销售数据也直接的存储与数据库中,而基于这些数据计算得到的总利润、每个订单平均利润、每个用户创造利润等KPI数据可以直接分析网站的目标是否实现。
半结构化数据
半结构化数据的格式较为规范,一般都是纯文本数据,可以通过某种方式解析得到每项的数据。最常见的就是日志数据、XML、JSON等格式的数据,它们每条记录可能会有预定义的规范,但是可能每条记录包含的信息不尽相同,也可能会有不同的字段数,包含不同的字段名或字段类型,或者包含着嵌套的格式。这类数据一般都是以纯文本的形式输出,管理维护也较为方便,但在需要使用这些数据时,如获取、查询或分析数据时,可能需要先对这些数据格式进行相应的解析。
半结构化的数据通常是指网站的日志数据,或者因为某些需求以XML或JSON格式输出的数据。最常见的就是网站的Apache日志,它根据预定义的字段顺序打出相应的值:
72.14.192.1 – – [09/May/2010:03:35:02 +0800] “GET / HTTP/1.1″ 200 13726 “-” “Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US),gzip(gfe) (via translate.google.com)”
而JSON格式则会以键值对(Key/Value)的形式输出数据:
{time: 1234567890, action: “comment”, respond: true, user: {userid: 1, username: “abc”}}
对于像Apache日志那样的数据,我们可以根据需要切分出那些有用的数据将它们导入到数据仓库,而xml和JSON格式的数据我们可以调用各类字符串解析的方法通过它们的标签或者名称来获取相应的值,对于嵌套结构可以使用逐层遍历的方法依次获取,同样选取那些对于分析有用的数据存在数据仓库。在这个过程中,ETL中的转换部分会显得较为复杂,因为这里需要进行格式解析,而这一步的优劣直接影响ETL的稳定性和健壮性。还有一个令人头疼的问题就是数据的格式和存放问题,也许有必要创建一些自定义字段类型;或者选择NOSQL数据库,关于NOSQL数据库的讨论一度热火朝天,从Google的Big table、Amazon的Dynamo到Facebook的Cassandra,NOSQL数据库提供了可扩展性的海量数据存储,对于WEB数据管理提供了新的解决方案。
半结构化数据对于网站数据分析同样非常重要,网站的点击流日志及一些用户行为数据一般都是以半结构化数据的形式输出的,当我们需要统计网站分析中的各类指标或者进行用户行为分析时,这类数据就必不可少。
非结构化数据
非结构化数据指的是那些非纯文本类数据,没有标准格式,无法直接地解析出相应的值。常见的非结构化数据有富文本文档、网页、多媒体(图像、声音、视频等)。这类数据不易收集管理,也无法直接查询和分析,所以对这类数据需要使用一些不同的处理方式。
富文本、图片、声音、视频等这些信息,除非需要进行高级的文本挖掘或者多媒体数据挖掘,否者对于一些日常涉及的数据统计和分析而言,非结构化数据本身是没有分析的价值的。所以一般不会将非结构化数据直接以二进制的形式存入数据仓库,数据仓库之父——Inmon的建议是在数据仓库中只需要储存非结构化数据的元数据(Meta Data),或者称为解释型数据。所以我们一般将非结构化的数据存放在文件系统(File System)中,而在数据仓库里面记录这些数据的信息,以便快速地索引和寻找需要的数据。如Word文档的标题、摘要、作者、创建时间、最近一次修改时间等,而图片则可能还包括像素、分辨率等。就像你右击文件属性的详细信息标签下看到的那些数据项,这些非结构化数据的元数据能够通过标准的形式记录,并且能帮助快速地搜索查询到对应的非结构化数据,同样可以被用于统计和分析,其实就是给每个非结构化数据贴上了标签,并将标签信息记录到了数据仓库中。
可能对于大多数网站而言,这类非结构化数据除非被用于高级的数据挖掘,在大部分时间中它们对数据的统计分析作用并不大,但对于某些网站,比如图片、视频类网站,这些数据就至关重要。对于图片、视频网站而言,每个图片和视频就是网站的产品,而记录图片视频的元数据就是这些产品的详细信息数据,产品分析、产品细分等都依赖于这些数据;同样,对于一些公司的内部归档的文档、资料而言,如果有数据仓库统一地记录这些文件的信息,就能够在必要时快速地搜索找到需要的文件,对于信息的统一集成化管理非常有效。
随着互联网的不断发展,各类信息不断膨胀,还有各式各样的数据类型会不断涌现,而数据仓库扮演着数据集成者的角色,对于各类数据的处理和管理也将不断地改进优化。
本文转载自:http://webdataanalysis.net/web-data-warehouse/data-warehouse-source-data/
相关推荐
按照数据格式的不同,我们可以将数据仓库的源数据类型分为三类:结构化数据、半结构化数据和非结构化数据。 结构化数据是数据仓库中最常见的一种数据类型。它具有高度规范的格式,通常存储在关系型数据库中,例如...
3. **数据整合**:数据仓库通常涉及来自多个数据源的数据整合,而数据集市更多的是基于已经整合的数据进行加工。 4. **更新频率**:数据仓库中的数据更新频率较低,强调的是历史数据的保存和利用;数据集市中的数据...
例如,数据仓库可以作为数据平台的数据源,数据湖可以作为数据中台的数据存储库等。因此,企业需要对这些关系和交互进行深入的了解和分析,以便更好地实施数据治理和业务优化。 数据仓库、数据湖、数据平台和数据中...
这可能涉及数据类型转换、数据聚合、异常值处理等。 3. **数据加载**:将转换后的数据加载到数据仓库中。数据仓库可以采用星型、雪花型或其他复杂的数据库模式,以优化查询性能。 4. **数据分层**:数据仓库通常...
数据仓库是一种特定类型的数据管理系统,专门设计用于支持业务智能(BI)活动,如数据分析和决策制定。它将来自不同源的大量数据整合到一个中央存储库中,以便于查询和分析。数据仓库的核心概念是“面向主题”的,...
这个数据仓库不仅包含从各个操作性源系统中抽取的数据,而且这些数据会被整合到一个一致性的架构中。Inmon方法强调数据仓库应当是集成的、面向主题的、稳定的、时间变化的,以适应企业中各种复杂的分析需求。 Inmon...
而数据仓库中的数据是在对原有分散的数据库数据作抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企事业单位一致的全局信息。 (3)相对稳定的...
数据仓库(Data Warehouse,简称DW或DWH)是一种特殊类型的信息存储库,旨在支持企业的决策制定过程。与传统的事务处理系统不同,数据仓库专注于收集、管理和分析来自多个源的数据,以便为管理层提供深入的业务洞察...
1. **数据加载层**:负责将源系统的数据抽取到数据仓库中。这通常涉及到ETL(Extract, Transform, Load)过程。 2. **数据存储层**:主要负责数据的存储和管理。Teradata采用高度优化的数据格式和存储方法,以支持...
2. **集成性**:数据仓库从不同的源系统(如订单系统、财务系统等)中收集和整合数据,确保数据的一致性和完整性。 3. **相对稳定性**:一旦数据进入数据仓库,通常不再进行修改或删除操作,这有助于保持数据的历史...
数据仓库的层次结构通常分为三层:源数据层、中间层和数据仓库层。 1. **源数据层**:直接从原始数据源获取的数据,未经任何处理。 2. **中间层**:对源数据进行初步处理和转换,以消除数据冗余和不一致性。 3. **...
### Oracle数据仓库解决方案知识点 #### 一、数据仓库发展的商业驱动力 - **企业生存环境的变化**:随着互联网技术的快速发展,全球企业面临着前所未有的挑战和机遇。互联网不仅改变了企业的商业模式,还提高了...
新一代的数据仓库解决方案开始支持更加复杂的数据类型和分析需求,比如非结构化数据的存储和分析,以及实时数据仓库等。 总结来说,数据仓库是帮助现代企业提升决策质量和运营效率的重要工具。通过掌握数据仓库的...
三、数据仓库的类型 1. 单层数据仓库:所有数据直接加载到单一的中央仓库,结构简单但可能处理能力有限。 2. 多层数据仓库:包含中间层(如数据Mart)和中心层,提高性能和可扩展性。 3. 分布式数据仓库:数据...
首先,数据从各种源系统中提取出来,然后经过清洗、转换,最后加载到数据仓库中。在这个过程中,Oracle数据库系统可以作为强大的后端存储和处理引擎,提供高效的数据管理和处理能力。 Oracle数据库在数据仓库中的...
- **决策类型**: 考虑决策者通常会面临哪些类型的决策,这些决策将直接影响到数据仓库的设计方向。 - **所需信息**: 分析决策过程中需要什么样的信息支持,这有助于确定需要从哪些数据源获取数据。 - **数据范围**: ...