1、获取数据源
后台的服务数据
前台的点击流日志数据
业务数据
2、确定主题
用户主题:用户、会员相关的信息
订单主题:订单相关的信息
浏览器主题:跟浏览器相关的信息
事件主题:跟事件相关
3、创建模型(创建表)
100张表以内不分层,以外将分层。
如果维度表较多则将维度表单独分层
1、创建维度层:
dim_维度表
地域维度:拆分成 省 市
浏览器维度:浏览器名称、版本
时间维度:周、季度
事件维度:category(种类)、action
平台维度:
kpi:(指标)
创建ods库:注:ods=operate database store
创建dw库:dw=data warehouse 数据仓库
创建dm库: dm=date manipulation数据操作
命名规则:
库名_主题_表名
ods_user_addr_
ODS_USER_ADDR_(大小写均可,但最好小写)
ods.user.addr不行
事实表
create database if not exists dim;//纬度
create database if not exists ods;//操作数据库存储
create database if not exists dw;//数据仓库
create database if not exists dm;//数据操作
在维度库下面创建维度表:注:``字段带有特殊符号用这个解决,这里desc是关键字,所以用``
CREATE TABLE IF NOT EXISTS `dim_province` (
`id` int,
`province` string,
`country_id` int,
`desc` string
)
row format delimited fields terminated by '\t'
;
CREATE TABLE IF NOT EXISTS `dim_city` (
`id` int,
`city` string,
`desc` string
)
row format delimited fields terminated by '\t'
;
CREATE TABLE IF NOT EXISTS `dim_province_city` (
`dim_region_id` bigint,
`dim_region_city_name` string,
`dim_region_province_name` string,
`dim_region_country_name` string,
`dim_region_city_id` string,
`dim_region_province_id` string,
`dim_region_country_id` string,
`dim_region_date` string
)
row format delimited fields terminated by '\t'
;
CREATE TABLE IF NOT EXISTS `dim_platform` (
`id` int,
`platform_name` string
)
row format delimited fields terminated by '\t'
;
CREATE TABLE IF NOT EXISTS `dim_kpi` (
`id` in
hive电商项目:1数仓构建过程
最新推荐文章于 2025-03-20 14:51:03 发布