Github是什么我就不多说了,全国最大的同性交友平台(狗头!),用过的都懂!

其实本来是不想做这种教程的,网上的教程多得是.但是以后可能会用到吧.

博客园直达: https://www.cnblogs.com/liam-sliversucks/p/17464416.html

Git下载链接:https://git-scm.com/downloads

Git小乌龟下载链接:https://tortoisegit.org/download/

语言包下载链接:https://tortoisegit.org/download/

版本控制:

  • Git-2.13.0-64-bit.exe:Windows版本的Git工具安装包
  • TortoiseGit-2.4.0.2-64bit.msi:Git的可视化工具安装包
  • TortoiseGit-LanguagePack-2.4.0.0-64bit-zh_CN.msi:TortoiseGit工具的汉化包

本地仓库构建

构建本地仓库构建有三种方式:

  • 方式一:通过Git自带的图形化界面进行构建
    • 鼠标右键,Git GUI Here,然后点第一个Create New Repository
  • 方式二:通过Git命令来构建
    • 鼠标右键,Git Bash Here然后输入git init
  • 方式三:通过TortoiseGit构建
    • 鼠标右键,看到Git Create repository Here

Git管理的组成结构

pCFf9z9.png

  • 本地版本控制Git服务器
    • 工作区【Work Dir】:就是你开发和修改代码的地方
    • 暂存区【Index】:临时存放你即将提交的版本的地方
      • 所有需要保存的版本必须先添加到暂存区
    • 本地版本仓库【HEAD】:本地的版本库,实现本地的版本的管理
      • 所有暂存区的版本会被提交到本地版本库
  • 远程版本仓库:用于共享项目代码版本
    • GitHub、Gitee

Git操作(添加、提交)

Add添加

通过命令方式添加

1
2
3
4
5
6
7
8
9
10
#添加一个或者多个文件到暂存区
git add [file1] [file2] ...

#添加指定目录到暂存区,包括子目录
git add [dir]

#添加当前目录下的所有文件到暂存区
git add .

#如何嫌命令难记,也可以使用下述的tortoiseGit工具操作

通过Tortoise工具添加

点文件,鼠标右键,

Commit提交

通过命令方式添加

1
2
3
4
5
6
7
8
9
#前面我们使用 git add 命令将内容写入暂存区。

#git commit 命令将暂存区内容添加到本地仓库中。

#master涉及分支的管理,我们后面细说。

git commit -m [message]

提交的时候最好写上提交日志 便于后续浏览排查。

通过Tortoise工具添加

提交到本地库

1
2
3
4
5
6
7
8
9
# 前面我们使用 git add 命令将内容写入暂存区。

git commit 命令将暂存区内容添加到本地仓库中。

# master涉及分支的管理,我们后面细说。

git commit -m [message]

# 提交的时候最好写上提交日志 便于后续浏览排查。

Git操作(修改、还原)

Git连接仓库

Git提交

Interview

订单相关表

订单主表 t_shop_order
订单副表(订单详情表) t_shop_order_address_detail
订单组表 t_shop_order_group
订单组支付表 t_order_pay
订单结算表 t_order_settle
订单配送表 t_order_delievery_item
退款订单表 t_refund_order
订单评价表 t_goods_evaluation
商品评价表 t_goods_evaluation_detail
订单商品快照表(订单和商品的中间表) t_shop_order_goods_details

交易记录表 t_trade_record

店铺相关表

店铺表 t_store
商圈表 t_trade_area
地址表 t_location
区域字典表 t_district

商品相关表

商品表 t_goods
商品分类表 t_goods_class
品牌表 t_brand
商品收藏表 t_goods_collect

用户相关表

登录日志表 t_user_login
店铺收藏表 t_store_collect
购物车表 t_shop_cart

系统配置相关表

时间维度表 t_date

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#1、通过sqoop将业务数据库中的数据采集同步到新零售数仓的ODS层中;
可能问到:sqoop工具知识点
几种同步方式及区别:全量覆盖、全量同步、增量同步、新增及更新同步
结合sqoop和hive建表如何使用

#2、基于ODS层数据进行清洗转换处理的工作, 根据分析需求区分事实表、维度表,后将数据同步至DWD层, 同时在DWD层完成了历史数据维护工作,项目采用拉链表的方案;
可能问到:清洗转换具体做了什么,怎么做的
如何区分事实、维度,什么是事实、什么是维度--->这一扩展可能会扯到维度建模整个理论
拉链表是什么?解决什么?如何实现拉链?

#3、接着对DWD层基于业务模块进行数据维度退化处理工作, 将退化后的宽表数据灌入到DWB层中, 构建了整个集团数据中心
可能问到:维度退化是什么?如何实现?依据是什么?优缺点?


#4、开始进行主题统计分析, 整个项目主题共有三个(销售主题, 商品主题, 用户主题), 根据业务需求、分析师提供的维度和指标, 进行统计分析, 在统计的时候, 先进行提前聚合处理工作, 将聚合统计后宽表数据同步到DWS层中;
可能问到:主题有哪些、指标、维度有哪些?主题、指标、维度怎么确定的?
主题有哪些表?如果表名和表个数张嘴说出来那就十分棒棒了。
如果说不出来?业务不熟悉,打酱油的?项目没做过?培训的?
预聚合这里指的是什么?为什么要预聚合?


#4、后对DWS层进行细化上卷维度统计操作, 形成DM层数据;
可能问题:上卷是?如何实现?下钻?---->这里可能延伸出OLAP多维分析 rollup cube等

#5、最后根据报表系统应用要求, 从DM层获取相关的数据拼接, 同步到RPT层, 再通过presto将数据导出到mysql中, 后续供应用使用;
可能问题:RPT是什么?报表系统直接使用DM数据行吗?为什么?
presto导出数据怎么操作的?
为什么使用mysql存储最终数据?

#以上每个步骤中,都可能会问到的是
sqoop、hive、presto功能技术点 优化点
你这这里做了什么工作?
遇到了哪些问题?
怎么解决的?
这个问题你用A解决,B你知道吗? AB区别是?
针对你做的有考虑什么优化方案吗?
优化方案解决什么的? 查询效率 存储效率 逻辑清晰?
为什么用这个方案,其他相同类似的你还知道吗?