使用hive+hbase做数据分析

数据来源:中国软件杯—基于互联网大数据的招聘数据智能分析平台
使用工具:eclipse
环境搭建:hadoop,hive,mysql,hbase,tomcat
博客只做数据分析的流程与方法介绍,代码还在完善中,所以不做提供

闲话不多说,直接展示效果图
数据分析首页
数据分析搜索页

1.数据清洗

拿到数据集后发现数据并不是很规整,需要做一些处理,比如说去除制表符,去空或者是换行符等等,这里的处理方法比较简单,可以使用python或是java快速清洗处理。

2.数据分析(hive分析处理)

UDF分析:

UDF也就是用户自定义的函数,用于HiveQL语句中,HiveQL使用方法与Mysql类似
使用UDF做数据分析:(这里给出行键与薪资分类的方法)
1. 行键UDF的使用:

package com.org.udf;

import org.apache.hadoop.hive.ql.exec.UDF;

public class get_rowkey extends UDF {

    public String evaluate(int i,String key) {
        long get_currentTimeMillis =System.currentTimeMillis();//获取当前时间的时间戳
        long timestamp =get_currentTimeMillis+i;//参数i作为自增数,防止时间戳相同
        String rowkey = timestamp+key;//参数key作为行键识别字符串,用于hbase的行键过滤器
        return rowkey;
    }
}

注意:类需要继承UDF,重写evaluate方法,在hiveql中自定义函数入口就是evaluate方法
使用eclipse打包,右键点击UDF的文件,选择Export

  • 3
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: Spark是一个快速的、通用的分布式计算系统,可以处理大规模数据集并提供高效的数据处理能力。 Hive是一个基于Hadoop的数据仓库系统,可以将结构化数据映射到Hadoop的分布式文件系统中,并提供SQL查询和数据分析的能力。 HBase是一个基于Hadoop的分布式NoSQL数据库,可以处理大规模的非结构化数据,并提供高可用性和高性能的数据存储和查询能力。 Hadoop是一个开源的分布式计算框架,可以处理大规模数据集并提供高可用性和高性能的数据处理能力。它包括HDFS分布式文件系统和MapReduce计算框架。 ### 回答2: Spark、HiveHBase和Hadoop都是大数据生态系统中的关键技术。Hadoop是一个分布式存储和处理框架,它是大数据技术的基础。它可以使用HDFS来存储数据,并使用MapReduce进行数据处理。但是,Hadoop的MapReduce只能用于离线批处理,不能实时处理。 Spark是一个基于内存的大数据处理框架,它提供了比MapReduce更快的处理速度和更多的功能,包括实时处理和迭代算法。Spark可以对数据进行流处理,批处理和交互式查询。它还可以与HiveHBase进行集成,以提供更广泛的大数据生态系统。 Hive是一个基于Hadoop的数据仓库,它可以将结构化数据映射到Hadoop上,并提供类SQL的接口进行查询和分析Hive可以支持大规模数据分析,使大数据变得更加易于管理和处理。 HBase是基于Hadoop的分布式NoSQL数据库,它是一个高度可伸缩的存储系统,可以存储非结构化和半结构化数据HBase数据存储在Hadoop上,并支持快速读写。 综上所述,Hadoop是大数据技术的基础,而Spark和Hive可以进一步拓展其功能和应用场景。HBase则提供了高度可伸缩的存储系统,可以存储更多的非结构化和半结构化数据。整个生态系统的目的是为了使大量数据变得更易于处理和分析,从而提供更有价值的数据洞见。 ### 回答3: Spark,HiveHBase和Hadoop是数据处理和分析领域的重要工具。它们都有自己的优缺点,可以用于不同的场景和需求。 Hadoop是分布式计算平台,可以处理大规模的数据和任务。它主要通过HDFS(分布式文件系统)和MapReduce编程模型来实现数据的存储和计算。Hadoop可以并行处理大量数据,它的数据安全性和可靠性也很好。但是,Hadoop的处理速度相对较慢,因为它需要在任务开始之前将数据移动到磁盘中。 Hive是一个基于Hadoop的数据仓库解决方案,可以以SQL的方式查询和分析数据。它允许用户利用SQL查询大规模数据集,并且可以将查询转化为MapReduce任务执行。Hive的优势在于可以通过类SQL语言查询数据,让不熟悉MapReduce编程模型的开发者快速地进行数据分析。但是,它仍然需要MapReduce,处理速度相对较慢,适用于离线数据分析HBase是一个开源的非关系型数据库,基于Hadoop的HDFS构建。HBase特别适用于存储千万到百亿级别的大数据,同时保持高可靠性和高可用性。它具有高性能、分布式和列存储的特点,并且支持随机读写,适用于需要快速并发高效处理各种类型的数据。 Spark是一种快速、通用、可扩展的数据处理引擎,它能够进行内存计算、流处理以及批处理。Spark可以比Hadoop更快地处理大数据,并且在内存中进行处理,加快了处理效率。它支持多种编程语言,并允许用户在大数据分析使用机器学习和图形处理算法。 总的来说,这些工具各有所长,都是数据分析和处理领域的重要工具,可以根据不同的需求进行选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值