为了方便公司的数据分析平台的独立运行和数据挖掘的探索,今年上半年在公司搭建了支持数据平台和数据挖掘的数据仓库;现就数据仓库的创建工作总结如下,供大家参考:

首先介绍下数据仓库搭建的缘由:

公司创建两年,用户量不多,也有几十万吧,就我来的时候,公司功能性平台基本上都有,例如:用户管理平台、订单管理平台、财务管理平台、运营管理平台、客服管理平台、系统管理平台等相关功能平台算齐全,基本能满足功能,但是数据平台还没有,老板、运营、市场,及相关人员对相关数据指标的了解还是通过看每周发上来的数据报表,这样就有很多重复性工作,效率及其低下,所以在来之后我(做数据的)就从原来的报表及各个部门的沟通,整理了常用的基本数据监控指标,做成了数据平台一期,基本满足各部门的数据需求,但是数据平台的一些基本指标就相当体检项目指标一样,只能关注到我们产品的运营基本情况,没有对数据进行深层次的挖掘,不仅对运营、市场的指导性不强,也对老板的决策没有建设性的支持,所以我提出了用户档案的建立,以便我们数据分析人员做用户画像积累静态数据,同一时间也提出来做APP的用户埋点工作,积累用户的行为数据,以便做关联分析。

数据积累1个月的时间,我们就准备着手数据分析平台的二期工作,数据平台二期工作主要是用户画像和用户行为分析(具体细节下次在整理),在这些需求下,数据平台的反应时间变慢性能也不行,也经常出问题,因为我们一直用的是线上数据库,也没有做中间表之类的,起初想做中间表进行优化,后来想想以后还要做更多的数据分析和数据挖掘方面的工作,所以综合想想,我们干脆搞个数据仓库,专门支持数据平台和数据分析、数据挖掘的工作的。

然后就是介绍下我们数据仓库的设计:

如上,公司到目前为止,没有做微服务的架构,所以线上就两个数据库,分别是线上app功能和埋点数据的相关表, 按照需求,我们会从数据源把数据抽取到数据仓库底层,对数据进行订正等处理,并形成更新的定时事务;导入数据库底层的基础表我们分为实时数据、日数据、月数据(表示更新时间间隔),通过基础表,我们会处理为中间模块表,区分功能,我们公司大体分为支持数据分析平台的中间表和数据挖掘探索应用的中间表,本来到这里就可以支持数据平台和数据挖掘工作,但是由于公司的数据量也不小,mysql计算的一些指标反应速度比较慢,也没有对sql进行优化,简单的优化肯定有,所以我们就数据平台的计算结果又做了一层结果表,这样的话开发直接写接口调用表里的数据即可,而且数据分析平台反应很快,同样,我们对数据挖掘的变量需求数据也做成相关结果表,这样也就形成了数据挖掘常用数据变量表。

中小型公司数据仓库搭建——以mysql为例的更多相关文章

  1. 数据库入门(以MySQL为例)

    一.数据库中的概念 1.数据库是用户存放数据.访问数据.操作数据的存储仓库,用户的各种数据被有组织地存放在数据库中.可以随时被有权限的用户查询.统计.添加.删除.和修改.可以说,数据库是长期存储在计算 ...

  2. 数据库简述(以MySQL为例)

    一.数据库中的概念 1.数据库是用户存放数据.访问数据.操作数据的存储仓库,用户的各种数据被有组织地存放在数据库中.可以随时被有权限的用户查询.统计.添加.删除和修改.可以说,数据库是长期存储在计算机 ...

  3. [转]Spring Cloud在国内中小型公司能用起来吗?

    原文地址:http://www.cnblogs.com/ityouknow/p/7508306.html 原文地址:https://www.zhihu.com/question/61403505 今天 ...

  4. 将excel数据导入到mysql的方法

    文本框被键盘遮挡到了,不会再获取焦点的时候被顶到键盘顶部.解决方案:设置A的Position为绝对定位absolute即可,其他几种定位方式未测试,但是不能是fixed ,正是因为这种定位方式,导致它 ...

  5. Linux(Centos)全自动异地备份数据(WEB+Mysql)

    文章开始之前,先问下各位站长一个问题:什么东西对于站长是十分重要的?其实对于站长而言,很多东西都是很重要的.但我们现在排除外在因素,把范围缩小到网站系统本身,哪些是非常重要的呢?网站数据就是其中之一了 ...

  6. 数据库水平拆分和垂直拆分区别(以mysql为例)

    数据库水平拆分和垂直拆分区别(以mysql为例) 数据库水平拆分和垂直拆分区别(以mysql为例)   案例:     简单购物系统暂设涉及如下表: 1.产品表(数据量10w,稳定) 2.订单表(数据 ...

  7. Spring Cloud在国内中小型公司能用起来吗?

    今天吃完饭休息的时候瞎逛知乎,突然看到这个一个问题Spring Cloud在国内中小型公司能用起来吗?,吸引了我的注意.仔细的看了题主的问题,发现这是一个好问题,题主经过了一番思考,并且用图形全面的将 ...

  8. Net Core中数据库事务隔离详解——以Dapper和Mysql为例

    Net Core中数据库事务隔离详解--以Dapper和Mysql为例 事务隔离级别 准备工作 Read uncommitted 读未提交 Read committed 读取提交内容 Repeatab ...

  9. 通过JDBC进行简单的增删改查(以MySQL为例) 目录

    通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...

随机推荐

  1. hdu 2444

    这道题要先判断图是不是二分图,如果不是的话,就直接输出No,是的话就求最大匹配, 建边是双向的所以要/2 判断二分图:对点进行染色,如果A与B认识,A,B的颜色要不同, 如果出现颜色相同的就矛盾了,就 ...

  2. Facebook开源的基于SQL的操作系统检测和监控框架:osquery daemon详解

    osqueryd osqueryd(osquery daemon)是可以定期执行SQL查询和记录系统状态改变的驻守程序. osqueryd能够根据配置手机归档查询结果,并产生日志. 同时也可以使用系统 ...

  3. ehcache.xml配置参数

    <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLoc ...

  4. vsftpd配置seccomp_sandbox=NO

    在ubuntu14.04 配置vsftp时如果不加上seccomp_sandbox=NO这一句会出现莫名的530错误

  5. 浅谈java垃圾回收机制

    今天看thinking in java,里面很详细的谈到java垃圾回收器机制,看完后让我对这神秘的区域有一定的了解,特写一些小总结记录下来. 分两点来说. 第一点:Object.finalize() ...

  6. Python基础1-变量、运算符、表达式

    一.Python的安装 1.下载python安装包https://www.python.org/ 2.选择对应的Python版本(Windows下) 3.装完之后打开电脑的cmd,验证一下安装是否成功 ...

  7. Nopcommerce架构浅谈之架构层次

    前面谈到了系统的文件,从文件结构中我们也可以看出Nop的层次划分还是非常清晰,下面我将介绍下Nop的架构层次,并对每个层做简要的介绍,先看我画的层次图. 这个系统基本上按照了ddd的形式做了划分,我本 ...

  8. Mocha的单元测试实战

    Mocha Mocha是一个测试框架,为JS应用添加测试.使用见:mochajs. Mocha结合Nodejs实战 ontstair.js 这里我们使用自定义模块:ontstair.js,代码如下. ...

  9. Influxdb原理详解

    本文属于<InfluxDB系列教程>文章系列,该系列共包括以下 15 部分: InfluxDB学习之InfluxDB的安装和简介 InfluxDB学习之InfluxDB的基本概念 Infl ...

  10. Kattis - Peragrams

    Peragrams Photo by Ross Beresford Per recently learned about palindromes. Now he wants to tell us ab ...