基于海量微博数据的仓库构建与舆情热点挖掘项目笔记(第三天)

本文记录了一个基于海量微博数据的项目,涉及数据校验、数据清洗和分词UDF的编写。在数据校验阶段,通过抽样检查和解决数据错位问题确保数据质量。数据清洗过程中,按照日期分区清洗数据并去除不合法和不合理记录。在分词环节,选用ansj分词器,考虑到其业务效果和社区支持。最后,将分词UDF集成到Hive中,创建新的分词结果表。
摘要由CSDN通过智能技术生成

数据校验

方法说明与实战案例

抽样检查:查看最复杂的那一列及其后面的字段

// 数据校验方法
select 字段 from 表  limit 条数;

数据出现错位原因及解决办法

原因:数据向左对齐
解决办法:将数据导入法方式与数据表的解析方式保持完全一致

// 数据解析格式
row format serde 'org.apache.hadoop.hive.serde2.OpenCSVSerde';

case by case && one by one:一个案例一个案例解决

数据清洗

将数据表weibo_origin经过清洗规则处理,按每天分区载入weibo_product表
数据清洗 去除不合法数据
数据去燥 去除不合理数据
数据清洗的常见做法:

  1. 基于规则、规律去清洗
  2. case by case

清洗代码

// 一次查询多次插入
from weibo_origin
insert overwrite table weibo_product partition(day_seq)
select * where mid != 'mid';

分词UDF编写

此处主要指中文分词:将一个汉字序列(一段话)切分成一个一个单独的词的过程
分词选择器:ansj分词
面试问时选择ansj原因:

  1. 基于业务功能需要,ansj实际测试效果不错,业务需求功能上可以达标;
  2. ansj社区丰富;
  3. 组内之前有人用过ansj,并且反馈还不错,易于解决出现的问题。

ansj分词器应用集成

maven导入依赖jar包

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.dhf</groupId>
	<artifactId>weibo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<!-- 首先配置仓库的服务器位置,首选阿里云,也可以配置镜像方式, 效果雷同 -->
	<repositories>
		<repository>
			<id>nexus-aliyun</id>
			<name>Nexus aliyun</name>
			<url>http://maven.aliyun.com/nexus/content/groups/public
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值