1.采集微博数据ETL项目:
- 数据输入与输出
- 输入(两个类别的文件集合)
- 房地产评论主题下的对应的用户基本信息文件集和评论内容文件集,两者之间是通过用户id关联的。
- 通过一定的Java程序设计做数据解析、结构化、各自合并成一个文件即可方便load到hive中。
- 输出(两张表,一个用户表,一个评论内容表)
- 将两个类别下各自对应的文件集,进行解析、结构化。
- 通过load语法,将数据分别导入到两张表当中。
- 输入(两个类别的文件集合)
- 思路:
-
- 通过javase+maven解决数据解析、结构化到一个文本文本的目标。
- 通过hive load语法将数据加载入数据仓库管理。
- 注意数据仓库的研发思路和开发步骤拆解,做到功能实现、目录清晰易懂。
1、基于定的微博数据目录,拿到该目录下所有的输入数据的文件路径。
2、基于文件路径,读取文本文件的数据。
3、解析读取出来的文件数据,成为结构化数据-微博博文对象抽象类-ContentPojo,最终获取对应的对象集合。
4、解析读取出来的文件数据,成为结构化数据-用户对象抽象类-UserPojo, 最终获取对应的对象集合。
5、将两个抽象的对象集合,进行文本化数据落地,形成待load到hive的数据文件。
6、load两个类型的文件数据到hive的两张表当中。(提前创建两张表,均为外表)
7、测试数据及查询结果的准确性。
2. 常见的数据格式:
1.txt
2.html
3.xml(自定义标记标签)
4.Json
- Key:value
- 也可以key:value的数组
3.仓库项目的标准开发流程:
以数据流来驱动项目开发!
4.四化建设:
复杂的问题简单化
简单的问题流程化
流程的问题自动化
自动的问题标准化
5.Java对应数据抽象的封装常用命习惯
model,数据模型的统一命名
entity,数据库与java对象进行交互时候的抽象
dto: data transfer object,数据传输对象
多用于web前后端传输数据对象时
pojo: java开发当中用于一般性、无数据库交互的对象的统称。
6.递归复习:
1、递归公式 fn=跟fn有关逻辑;
2、递归的终止条件fn=常数;