Hive正则表达式对数据过滤
来源:互联网 发布:淘宝如何设置宝贝规格 编辑:程序博客网 时间:2024/06/05 07:22
正在做的一个项目中,由于数据量比较大,所以数据的内容比较乱,比如说mac地址,这个地址有的数据中存在,有的数据中不存在,当通过hive进行导出数据的时候,如果存在些非法的类型的数据会造成NoSuchElement异常,经过几天的排查与摸索,终于将该隐患排除。
在hive中如果某些字段,尤其是中间的部分字段是空的值的话,很容易出错,在数据量十分大的情况下甚至于很难去查询到这种比较特殊的情况。
如图所示是部分的数据,当然为了安全起见只是截取了一点点,能够反映其特征即可,最顶部的数据可以看到是空值的连续串,甚至还出现了0和-1的值,在MAC地址中这种值应该是错误的值,需要将其从众多的数据中剔除掉,否则会对系统带来安全隐患。
由于数据为MAC地址,所以其格式比较统一,开始是通过判断是不是空来进行剔除,但是后来发现并不是想象的那么简单,有的值多个不是空但是也不是不符合的。
采用正则表达式去匹配,这样更加方便的剔除脏数据了。
select * from data where macaddress regexp "([0-9a-fA-F]{2}){6}"
如果中间存在:的话就改为:
[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}
0 0
- Hive正则表达式对数据过滤
- MYSQL使用正则表达式过滤数据
- 正则表达式 过滤html
- 正则表达式,过滤
- 正则表达式过滤中文
- 正则表达式过滤
- 正则表达式:注释过滤
- regexp_extract 正则表达式过滤
- html过滤正则表达式
- 在Ext JS Store用正则表达式过滤数据
- MYSQL必知必会读书笔记 第九章 使用正则表达式过滤数据
- MySQL检索数据(过滤+通配符+正则表达式)
- 用正则表达式过滤数据中的html标签
- hive中的正则表达式
- hive正则表达式
- hive正则表达式
- hive 正则表达式详解
- Hive中的正则表达式
- Spark学习-RDD编程基础
- 【LeetCode】63. Unique Paths II
- K好数
- Remote view API
- Vue-ant
- Hive正则表达式对数据过滤
- RESTful API设计系列四:URLs
- 输入输出
- 快速创建一个servlet并且在web.xml配置和使用它
- Ubuntu上安装Arduino IDE
- dubbo源码浅析(五)-远程服务调用流程
- 机器学习笔记week1(Andrew NG)
- java的几种对象(po,dto,dao等)
- 线程的调度