数据仓库

MySQL用户如何构建实时数仓

橙三吉。 提交于 2019-12-05 06:32:07
依托数据库生态,AnalyticDB for MySQL可以给用户提供分析场景下的标准解决方案,尤其是在大数据和性能要求较高的情况下AnalyticDB for MySQL的价值可以更好的体现。 MySQL用户为什么要单独构建数据仓库 为什么要单独构建数据仓库,而不是直接在MySQL数据库上运行分析查询?这个问题我上面文章提到过,为了回答这个问题,我们先来看下数据仓库与OLTP数据库之间的差别。数据仓库主要是针对批量写入和大量数据的读取操作,而OLTP数据库是针对持续写入操作以及大量的小规模读取操作。通常,数据仓库会因较高的数据吞吐量要求而使用非规范化模型,如星型模型和雪花模型。星型架构包含多个引用大量维度表的大型事实数据表。雪花型架构是星型架构的扩展,包含更加规范化的维度表。而OLTP数据库则使用高度规范化的模型,更适合高事务吞吐量的要求,对于复杂查询的性能很难满足用户要求。 规范化操作是一定要把分析查询拆分到数据仓库中,达到“臃肿”状态时再构建数据仓库是会付出迁移成本。直接在MySQL数据库上运行分析查询的缺点总结为: 很容易影响在线业务,只读实例扩展难,无法做到实时分析; 每月新增数据比较大情况下,需要定期手动做分库操作,从多个库检索数据进行分析,查询性能无法满足需求; 把数据统一抽取到大数据平台,技术门槛高,改造难度大耗时长。 什么是AnalyticDB for MySQL

数据仓库001 - 复习Linux shell命令 - 01

核能气质少年 提交于 2019-12-05 05:27:46
1. [root@localhost ~]# 的含义 ?    【登录的用户 机器的名称 家目录】 2. 查看当前光标所在的目录 pwd [root@localhost ~]# pwd /root 3. 切换目录 cd [root@localhost ~]# cd /home [root@localhost home]# pwd /home   root用户 家目录 /root 规定   xxx用户 家目录 /home/xxx 默认 回退家目录 的三种方法: [root@localhost home]# cd - /root [root@localhost ~]# cd /home [root@localhost home]# cd ~ [root@localhost ~]# cd /home [root@localhost home]# cd /root [root@localhost ~]# cd ../ 回退上一层目录 cd ../../ 回退上2层目录 [root@localhost ~]# cd /home/linux/ [root@localhost linux]# pwd /home/linux [root@localhost linux]# cd ../ [root@localhost home]# pwd /home [root@localhost home]#

数据仓库_第三次笔记

雨燕双飞 提交于 2019-12-04 17:34:29
1.整理 用户用户组 2.整理 sudo命令 3.整理 用户无法登录 passwd文件 4.权限 rwx------ chmod chown 案例 5.其他命令 - su find du等 用户和用户组 针对用户的相关文件在: /usr/sbin/user* [root@aliyun ~]# ll /usr/sbin/user* -rwxr-x---. 1 root root 118192 Nov 6 2016 /usr/sbin/useradd -rwxr-x---. 1 root root 80360 Nov 6 2016 /usr/sbin/userdel -rwxr-x---. 1 root root 113840 Nov 6 2016 /usr/sbin/usermod -rwsr-xr-x 1 root root 11296 Apr 13 2017 /usr/sbin/usernetctl 针对用户的相关文件在: /usr/sbin/group* [root@aliyun ~]# ll /usr/sbin/group* -rwxr-x---. 1 root root 65480 Nov 6 2016 /usr/sbin/groupadd -rwxr-x---. 1 root root 57016 Nov 6 2016 /usr/sbin/groupdel -rwxr-x

数据仓库ETL案例学习(一)

删除回忆录丶 提交于 2019-12-04 16:29:07
来自课程案例学习 某跨国食品超市的信息管理系统,每天都会记录成千上万条各地连锁超市的销售数据。基于大数据的背景,该公司的管理层决定建立FoodMart数据仓库,期望能从庞大的数据中挖掘出有商业价值的信息,来进一步帮助管理层进行决策。 设计一个销售数据仓库。要求: 1、至少4个维度,每个维度至少3个属性,尽量包含维层。 2、至少1个事实表。 3、数据源能获取(设计的维度和度量字段应该在数据源中直接或间接得到)。 * 以下使用SQL Server Integration Services (SSIS) (一)设计数据仓库概念模型,设计如下: (二)数据仓库数据源、数据视图、维度表装载 1. 建立一个项目 2. 将数据集导入sql server(本文将access数据库先转到sql server,再在SSIS里使用,也可以直接在SSIS里使用Access驱动) 3. 建立与sql server的连接 4. 依次装载数据产品维、顾客维、日期维、连锁店维、促销维。 产品维中涉及两个表product、product_class,根据生成查询获得了想要的数据 目标编辑器选择新建表来存入数据仓库。 同理装载商品维 同理装载促销维 装载客户维 同理装载时间维 这里需要将时间字符串进行分割,使用派生列和日期函数,分别建立年、月、日 (ps:这里不需要手动建立时间维,数据仓库提供了建立时间维的模板

数据仓库_第二次笔记

ⅰ亾dé卋堺 提交于 2019-12-04 13:57:33
1.整理 全局环境变量 个人环境变量 which的理解 2.整理 别名 3.整理 删除 4.整理 history 全局环境变量 全局环境变量的配置文件是:/etc/profile 全局环境变量中一般配置的是共用的程序环境 比如java 下面以java为例子配置 [root@aliyun ~]# vim /etc/profile java的安装路径在 /usr/java下,所以文件中如下配置 export JAVA_HOME=/usr/java/jdk1.8.0_144 export PATH=$JAVA_HOME/bin:$PATH 需要注意的是 $PATH接在$JAVA_HOME的后面,即把$JAVA_HOME放在$PATH的最前面 /opt/module/jdk1.8.0_144/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/module/jdk1.8.0_144/bin:/root/bin 个人环境变量 个人环境变量配置在 ~/.bashrc 文件中, 这里需要注意的是如果配置在 ~/.bash_profile文件中,使用ssh远程连接的时候不会加载 ~/.bash_profile,造成一些无法排查的bug 个人环境配置一些独自使用的程序变量,如果配置在用户的个人环境中,其他用户无法访问

基于Hadoop的数据仓库Hive

懵懂的女人 提交于 2019-12-04 12:02:04
测试第二阶段--(留) (2)第二阶段:根据提取出来的信息做精细化操作 ip--->城市 city(IP) date--> time:2016-11-10 00:01:03 day: 10 traffic:62 type:article/video id:11325 这一阶段跟上一阶段类似,只是做了细化处理。 代码: 截图: 来源: https://www.cnblogs.com/msdog/p/11862684.html

学习数据仓库之构建

浪子不回头ぞ 提交于 2019-12-04 08:44:37
数据库有三级模型的概念,在这里,数据仓库也是有着三级模型并且是有着相似的思路。 1.概念模型 “信息世界”中的信息结构,也常常借用关系数据库设计中的E-R方法,不过在数据仓库的设计是以主题替代实体。 根据业务的范围和使用来划分主题 划分的方法是首先要确定系统边界,包括了解决策者需求(关注点),需求类型。通过对业务系统的详细说明,确定数据覆盖范围,对数据进行梳理,列出数据主题详细的清单,了解源数据状况。 对每个数据主题都作出详细的解释,然后经过归纳、分类,整理成各个数据主题域,确定系统包含的主题。列出每个数据主题域包含哪些部分,并对每个数据主题域作出详细的解释,最后划分成主题域概念模型。 2.逻辑模型 逻辑模型的设计是数据仓库实施中最重要的一步,因为它直接反映了数据分析部门的实际需求和业务规则,同时对物理模型的设计和实现具有指导作用。它的特点就是通过实体和实体之间的关系勾勒出整个企业的数据蓝图和规划。逻辑模型一般遵循第三范式,与概念模型不同,它主要关注细节性的业务规则,同时需要解决每个主题包含哪些概念范畴和跨主题域的继承和共享的问题。 根据需求列出需要分析的主题,需求目标纬度指标,纬度层次分析的指标,分析的方法、数据来源等 对于一些 纬度存在层次问题 ,比如说产品存在产品的类别,产品的子类别以及具体的产品 在逻辑模型设计中需要考虑 粒度层次的划分

你需要的不是实时数仓 | 你需要的是一款合适且强大的OLAP数据库(上)

◇◆丶佛笑我妖孽 提交于 2019-12-04 07:53:14
前言 今年有个现象,实时数仓建设突然就被大家所关注。我个人在公众号也写过和转载过几篇关于实时数据仓库的文章和方案。 但是对于实时数仓的狂热追求大可不必。 首先,在技术上几乎没有难点,基于强大的开源中间件实现实时数据仓库的需求已经变得没有那么困难。其次,实时数仓的建设一定是伴随着业务的发展而发展,武断的认为Kappa架构一定是最好的实时数仓架构是不对的。实际情况中随着业务的发展数仓的架构变得没有那么非此即彼。 在整个实时数仓的建设中,OLAP数据库的选型直接制约实时数仓的可用性和功能性。本文从业内几个典型的数仓建设和发展情况入手,从架构、技术选型和优缺点分别给大家分析现在市场上的开源OLAP引擎,旨在方便大家技术选型过程中能够根据实际业务进行选择。 管中窥豹-菜鸟/知乎/美团/网易严选实时数仓建设 为什么要构建实时数据仓库 传统的离线数据仓库将业务数据集中进行存储后,以固定的计算逻辑定时进行ETL和其它建模后产出报表等应用。离线数据仓库主要是构建T+1的离线数据,通过定时任务每天拉取增量数据,然后创建各个业务相关的主题维度数据,对外提供T+1的数据查询接口。计算和数据的实时性均较差,业务人员无法根据自己的即时性需要获取几分钟之前的实时数据。数据本身的价值随着时间的流逝会逐步减弱,因此数据发生后必须尽快的达到用户的手中,实时数仓的构建需求也应运而生。 总之就是一句话:时效性的要求。

Hive学习笔记简版

ぐ巨炮叔叔 提交于 2019-12-04 06:27:20
一.概述 1. Hive是Apache提供的基于Hadoop的数据仓库管理工具 2. Hive提供了类SQL语言来操作Hadoop,底层会将SQL转化为MapReduce来执行,所以效率会比较低 3. Hive适应于离线处理 4. 要求安装Hive的节点要先安装Hadoop,解压完成之后,在启动Hive的时候自动去找环境变量中的HADOOP_HOME 二.数据仓库和数据库比较         数据库          数据仓库 数据量      <=GB          >=TB 数据种类  单一 - 结构化        多样 - 结构化、半结构化、非结构化 数据来源  相对单一          数据库、日志、爬虫、埋点… 事务    提供了完整的事务(ACID)   弱/无事务 冗余    精简冗余          人为制造冗余 - 副本 场景    为线上系统实时捕获数据    一般存储的是历史数据 系统    OLTP - 联机事务处理    OLAP - 联机分析处理 面向对象  最终面向程序员、DBA    最终面向市场、领导、客户等人员 三.Hive的特点 1. 在Hive中,每一个database/table在HDFS都会对应一个目录 2. Hive中没有主键 3.Hive中如果需要指定字段之间的间隔符号,需要在建表的时候就指定,而一个表一旦建立好