数据仓库的源数据类型

2023-05-16

dw-source-data  数据仓库中集成了企业几乎所有的可以获取到的数据以用于数据分析和决策支持,当然也包括了我在网站分析的数据来源一文中所提到的所有数据。这些进入到数据仓库中的数据无外乎三种类型:结构化数据半结构化数据非结构化数据,它们经过转化后以某种形式统一地储存在数据仓库中,即通常说的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文档的标题、摘要、作者、创建时间、最近一次修改时间等,而图片则可能还包括像素、分辨率等。就像你右击文件属性的详细信息标签下看到的那些数据项,这些非结构化数据的元数据能够通过标准的形式记录,并且能帮助快速地搜索查询到对应的非结构化数据,同样可以被用于统计和分析,其实就是给每个非结构化数据贴上了标签,并将标签信息记录到了数据仓库中。

  可能对于大多数网站而言,这类非结构化数据除非被用于高级的数据挖掘,在大部分时间中它们对数据的统计分析作用并不大,但对于某些网站,比如图片、视频类网站,这些数据就至关重要。对于图片、视频网站而言,每个图片和视频就是网站的产品,而记录图片视频的元数据就是这些产品的详细信息数据,产品分析、产品细分等都依赖于这些数据;同样,对于一些公司的内部归档的文档、资料而言,如果有数据仓库统一地记录这些文件的信息,就能够在必要时快速地搜索找到需要的文件,对于信息的统一集成化管理非常有效。

  随着互联网的不断发展,各类信息不断膨胀,还有各式各样的数据类型会不断涌现,而数据仓库扮演着数据集成者的角色,对于各类数据的处理和管理也将不断地改进优化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据仓库的源数据类型 的相关文章

  • 群晖nas免费内网穿透,实现外网异地远程访问

    文章目录 1 安装cpolar群晖套件2 打开cpolar群晖套件3 登录cpolar Web UI管理界面4 创建新隧道映射5 获取公网地址6 配置固定二级子域名6 1 保留一个二级子域名6 2 配置二级子域名 7 使用固定二级子域名远程
  • 永久免费的内网端口映射工具推荐【无公网IP】

    搭建了个游戏服务器 xff0c 想要让在不同网段下的朋友也可以连接想要在家远程桌面公司电脑想要在外远程访问本地电脑的web服务器想要在外远程访问NAS 一切的一切 xff0c 都需要公网IP的支持 但是目前IPV4资源的稀缺 xff0c 很
  • 免费内网穿透教程【无公网IP】

    文章目录 前言1 安装cpolar内网穿透工具1 1 Windows系统1 2 Linux系统1 3 macOS系统 2 创建隧道映射内网端口3 获取公网地址4 配置固定二级子域名4 1 保留一个二级子域名4 2 配置二级子域名 5 公网测
  • 内网穿透SSH远程连接家里的树莓派

    随着科技的进步和信息技术的发展 xff0c 我们身边出现了各种新奇的科技产品 xff0c 其中既有轻便易用的消费类电子产品 xff0c 也有更轻更小的硬件设备 而树莓派作为计算机学习设备 xff0c 经过多年发展 xff0c 已经获得了不俗
  • 推荐10款简单好用的免费内网穿透工具

    前言 远程办公越来越普遍 xff0c 但是如何应对在外远程桌面控制公司电脑 远程公司内网办公系统 调阅公司文件资料 远程公司内网服务器是个问题 而解决方案其实很简单 xff0c 做内网穿透就可以突破局域网的限制 xff0c 轻松实现公网访问
  • Java支付宝沙箱环境支付,官方Demo远程调试【内网穿透】

    文章目录 1 下载当面付demo2 修改配置文件3 打包成web服务4 局域网测试5 内网穿透6 测试公网访问7 配置二级子域名8 测试使用固定二级子域名访问 在沙箱环境调试支付SDK的时候 xff0c 往往沙箱环境部署在本地 xff0c
  • opencv内存不足问题(OpenCV Error: Insufficient memory)

    最近在用opencv自带的函数haartraining训练分类器 xff0c 之前用的图片是20 20 xff0c 能训练出分类器 xff0c 后来换成了80 86 xff0c 就报错了 xff0c 报的错误是内存不足 xff0c 于是 x
  • ffmpeg 4.2.2 实现mp4转avi(修改官方remuxing例子)

    最近想把ffmpeg官方例子过一遍 xff0c 达到初步了解ffmpeg的目的 xff0c 本文只是给自己一个记录 xff0c 也是在网上没有找到一样的文章 xff0c 发出来供大家指点 直接使用官方demo xff0c 把mp4转换成av
  • 12.bss段的初始化

    12 bss段的初始化 在C代码 xff1a 有初始化全局的数据段 xff0c 局部的栈 xff0c malloc部分的堆 xff0c 未初始化的全局的bss段 从上面的编译的信息知道 xff1a Bss段的起始地址 xff1a 00010
  • pandas学习之df.rename()

    pandas学习之df rename df rename 用于更改行列的标签 xff0c 即行列的索引 可以传入一个字典或者一个函数 在数据预处理中 xff0c 比较常用 官方文档 xff1a DataFrame rename self m
  • java8操作两个集合List

    public static void main String args List lt String gt list1 61 new ArrayList lt String gt list1 add 34 1 34 list1 add 34
  • Atcoder AGC005 题解

    A STring 用类似括号匹配的方法搞一下即可 span class token macro property span class token directive keyword include span span class toke
  • CentOS-7安装桌面环境

    CentOS 7安装桌面环境 CentOS 7安装桌面环境 CentOS 7安装Server with GUI 设置为开机从桌面环境启动 yum y group install 39 Server with GUI 39 systemctl
  • [软件注册]Sublime 3 激活/注册码(key)

    偶然发现了一种sublime激活方式 使用的sublime3 1 1版本 亲试有效 Step1 配置 host文件 推荐使用 switchhost软件 可以快速变更host span class hljs number 127 0 span
  • 测试git能否连接github

    welcome to my blog 使用以下命令进行测试 ssh T git 64 github com 出现报错 ssh dispatch run fatal Connection to 13 250 177 223 port 22 S
  • vtk中实现3D模型(读取文件)

    xff08 xff09 VTK 坐标系统及空间变换 窗口 视图分割 mb5fed73533dfa9的技术博客 51CTO博客 VTK学习 xff08 三 xff09 VTK读取序列图像 灰信网 xff08 软件开发博客聚合 xff09 读取
  • centos中安装Python2.7

    转载于 xff1a 秋水逸冰 CentOS 6 8安装Python2 7 13 查看当前系统中的 Python 版本 python version 返回 Python 2 6 6 为正常 检查 CentOS 版本 cat etc redha
  • 安装tar.gz文件(无configure文件)

    如何安装tar gz文件 xff08 以webstorm为例 xff09 1 获取root权限并输入密码 xff1a su root 2 进入有该文件的目录下 xff08 以我的为例 xff0c 具体看你的文件在哪里 xff09 cd 下载
  • 游戏服务端框架之业务线程模型

    请求消息绑定线程策略的选择 在上一篇文章中 我们看到 消息是直接在网络框架的io线程中处理的 这样做有一个非常严重的缺陷 如果业务处理比较耗时 那么io线程接受消息的速度就会下降 严重影响io的吞吐量 典型的 我们应该另起线程池 专门用于异

随机推荐

  • 在WSL中使用GPU:WSL2 + Ubuntu 18.04 + CUDA + Gnome图形界面环境配置

    目录 引言1 确认Windows 10版本2 在Windows上安装WSL23 在Windows上安装CUDA on WSL驱动4 在WSL2中安装CUDA Toolkit3 测试CUDA是否能在WSL2中运作4 安装Gnome图形界面其他
  • Centos 开启路由转发实现全网互通

    只需在RouterSrv网关服务器上开启路由转发功能即可 root 64 RouterSrv vi etc sysctl conf net ipv4 ip forward 61 1 添加此行即可 root 64 localhost sysc
  • 虚拟机中配置外网环境

    文章目录 在虚拟机中配置外网环境 在虚拟机中配置外网环境 主机为 win10 xff0c 虚拟机中为 ubuntu 系统 xff0c 采用clash 1 xff0c 设置 Allow Lan xff0c 允许局域网访问 2 xff0c 虚拟
  • mysql 操作数据库(备份与恢复)

    一 直接把创建数据库的语句放到sql 文件中 xff1a php 写法 xff1a lt php mysql port 61 get mysql port cmd 61 US MYSQL BIN 34 mysql exe port 61 3
  • Go调用Python by go-python3

    确保python版本为3 7 conda create go python span class token assign left variable python span span class token operator 61 spa
  • linux下搭建maven私服

    maven私服我相信很多公司都有 xff0c 私服的好处有以下几点 xff1a 1 节省下载资源开销 jar包 xff08 不一定是jar xff0c 也可以是其他资源 xff09 都存在私服 xff0c 可以不必每次下载都去远程仓库去下载
  • git 安装包 最新 下载 快速 国内 镜像 地址

    下载git时 xff0c 先进官网看 https git scm com download win 然后发现几kb的网速 xff0c 这是要让我下一年么 xff0c 找了找网上有没有其他的镜像 xff0c 发现阿里有一个镜像 xff0c 下
  • docker笔记(四、docker部署beego打包后的二进制文件)

    在beego工程里 xff0c 使用go build可以将该工程打包成一个二进制文件 xff0c 那么这个二进制文件在docker里面该怎么部署呢 xff1f 先写一个简单的图片上传的demo xff0c 名字叫docker test 在工
  • LINUX服务器最简洁的HTTPS免费证书配置方法

    注意 xff1a 该方法已在多台服务器配置了免费的https证书 xff0c 无论是更新还是第一次配置都运行成功 xff1b 由于是免费版 xff0c 每个证书都只有三个月的有效期 xff0c 也无法保证安全和稳定性 xff0c 所以只建议
  • 【性能测试】获取性能系统指标之示例Python代码

    usr bin env python coding utf 8 import sys import datetime import time import psutil from ctypes import 34 34 34 性能测试示例P
  • select I/O 多路复用实现服务器聊天室功能

    基本概念 IO多路复用是指内核一旦发现进程指定的一个或者多个IO条件准备读取 xff0c 它就通知该进程 IO多路复用适用如下场合 xff1a xff08 1 xff09 当客户处理多个描述字时 xff08 一般是交互式输入和网络套接口 x
  • iOS-使用Masnory实现UITableViewCell自适应高度

    在iOS开发当中 xff0c 如果涉及到UITableViewCell的一些复杂UI的绘制时难免会碰到这么一个难题 xff1a UITableViewCell的高度如何设置 xff01 的确 xff0c 我们就拿一个简单的例子来说 xff1
  • ubuntu中共享文件夹看不到

    博主的ubuntu安装VMwaretools后共享文件夹设置完发现在 mnt hgfs总看不到 经过多次摸索后终于可以了 首先要使用root用户登陆ubuntu 然后再安装VMwaretools 在设置共享文件夹 然后解决挂在的问题 1 设
  • keystore was tampered with,or password was incorrect解决办法

    利用keytool导入证书 xff0c 命令如下 keytool import alias HZZSQKJdianshang file HZZSQKJdianshang cer keystore trust jks storepass st
  • Convert Picture or Video to ascii

    一个利用ascii拼成的谷歌街景地图 xff01 http tllabs io asciistreetview 看上去效果真不错 xff01 除此之外 xff0c linux下面也有类似的ascii艺术 xff0c 比如 aview asc
  • texlive2015-6安装

    http www cnblogs com snake553 p 4831588 html CentOS6 5 下安装 texlive2015 并设置 ctex 中文套装 0 卸载旧版本的 texlive 0 1 卸载 texlive2007
  • ubuntu20.04 安装显卡驱动后开机卡住,无法进入登陆界面问题解决

    ubuntu20 04 安装显卡驱动后开机卡住 xff0c 无法进入登陆界面问题解决 进入recovery mode 禁用nvidia drm systemctl isolate multi user target modprobe r n
  • Linux环境变量失效,命令不可用

    背景 linux在修改完环境变量 etc profile后保存文件后 xff0c 发现大多数命令不可用 xff0c 只有少数如 xff1a cd pwd可以使用 xff1b 原因分析 1 etc profile文件中有无效字符或变量 xff
  • Ubuntu20.04安装MySQL5.7-实测3种方法(保姆级教程)

    最近生产系统系统需要使用MySQL5 7版本的数据库 xff0c 而Ubuntu20 04默认是8 0的版本 xff0c 折腾了一段时间后 xff0c 测试了3中方法 xff0c 在实际应用环境中测试成功 xff0c 因此发布出来给大家参考
  • 数据仓库的源数据类型

    数据仓库中集成了企业几乎所有的可以获取到的数据以用于数据分析和决策支持 xff0c 当然也包括了我在网站分析的数据来源一文中所提到的所有数据 这些进入到数据仓库中的数据无外乎三种类型 xff1a 结构化数据 半结构化数据 和非结构化数据 x