首页 > 其他分享 >HBase与HDFS&Hive

HBase与HDFS&Hive

时间:2024-09-23 14:36:09浏览次数:10  
标签:HDFS 存储 hive Hive HBase 数据

在大数据领域中,HBase和HDFS是两种常用的存储系统。它们各自有其独特的特性和优势,但也有一些关键的差异。理解这些差异可以帮助我们更好地选择适合我们需求的存储解决方案。

HBase:HBase是一个分布式列存储数据库,它是Apache Hadoop生态系统的一部分。它以行键为索引,支持高性能的随机读写操作。这意味着你可以快速地添加、删除和修改数据。HBase非常适合那些需要快速随机访问和更新大量数据的应用程序,如搜索引擎、实时分析等。

HDFS:Hadoop Distributed File System,是一个分布式文件系统,也属于Hadoop生态系统。它以文件块的形式存储数据,适用于批量数据的存储和批处理操作。HDFS的设计目标是能够存储和处理超大规模的数据,可以扩展到数千台机器和PB级别的存储容量。因此,对于需要处理大规模数据集的应用,如大数据分析机器学习等,HDFS是一个很好的选择。


为什么我们需要这两种不同的存储系统呢?HBase和HDFS各有其最佳应用场景。

如果你需要频繁地随机访问和更新数据,HBase可能是更好的选择。例如,如果你正在构建一个需要实时更新的推荐系统或搜索引擎,HBase的高性能随机读写特性将非常有用。
如果你正在处理大规模的数据集,并且需要进行批处理操作,那么HDFS可能更适合你。例如,如果你正在进行大数据分析、机器学习或图像处理等任务,HDFS的大规模数据存储和批处理能力将为你提供所需的性能和可扩展性。

Hive

用户处理存储在HDFS中的数据,hive的意义就是把好写的hive的sql转换为复杂难写的map-reduce程序。

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能。

  • Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑。hive需要用到hdfs存储文件,需要用到MapReduce计算框架。
  • hive可以认为是map-reduce的一个包装。hive的意义就是把好写的hive的sql转换为复杂难写的map-reduce程序。

Hbase和Hive在大数据架构中处在不同位置,Hbase主要解决实时数据查询问题,Hive主要解决数据处理和计算问题,一般是配合使用。

 

在大数据架构中,Hive和HBase是协作关系,数据流如下:

  1. 通过ETL工具将数据源抽取到HDFS存储;
  2. 通过Hive清洗、处理和计算原始数据;
  3. HIve清洗处理后的结果,如果是面向海量数据随机查询场景的可存入Hbase;数据应用从HBase查询数据;

 

标签:HDFS,存储,hive,Hive,HBase,数据
From: https://www.cnblogs.com/clarino/p/18427014

相关文章

  • hive学习笔记之二:复杂数据类型
    selectperson,friends[0],friends[3]fromt2;执行结果如下,第一条记录没有friends[3],显示为NULL:hive>selectperson,friends[0],friends[3]fromt2;OKperson _c1 _c2tom tom_friend_0 NULLjerry jerry_friend_0 jerry_friend_3Timetaken:0.052seconds,Fetched:2......
  • Hive企业级调优[7]——HQL语法优化之小文件合并
    目录HQL语法优化之小文件合并 优化说明 Map端输入文件合并Reduce端输出文件合并优化案例HQL语法优化之小文件合并 优化说明小文件合并优化主要分为两个方面:Map端输入的小文件合并以及Reduce端输出的小文件合并。 Map端输入文件合并合并Map端输入的小文件意味着......
  • Hive企业级调优[8]—— 其他优化
    目录 其他优化CBO优化 优化说明 优化案例 谓词下推 优化说明 优化案例 矢量化查询Fetch抓取 本地模式优化说明 优化案例并行执行 严格模式 其他优化CBO优化 优化说明CBO(CostBasedOptimizer),即基于成本的优化。在Hive中,成本模型考虑到了数据的......
  • 利用sqoop将某一数据库从MySQL导入hive
    首先,为防止报错,将两个驱动包装在sqoop中:commons-lang-2.6.jar和hive-common-3.1.2.jar一般hive中都会有这两个驱动包,因此可执行如下命令:cp/opt/installs/hive/lib/commons-lang-2.6.jar/opt/installs/sqoop/lib/cp/opt/installs/hive/lib/hive-common-3.1.2.jar/opt/ins......
  • HiveServer2 文件描述符泄漏
     现象用户反馈hs2打开的文件描述符的数量一直在涨,但是当前hs2的连接只有个位数。 排查过程首先找到hs2进程持有了哪些文件描述符,通过lsof命令lsof-p$pid,看到hs2进程确实在/data/emr/hive/tmp/operation_logs/目录下打开了大量描述符在jira中找到一......
  • Hive sql 4:中位数
    先说下中位数的概念:中位数‌是统计学中的一个重要概念,它代表将一组数据按照大小排序后位于中间位置的数值。如果一组数据有奇数个数值,则中位数是中间那个数;如果数据中有偶数个数值,则中位数是中间两个数的平均值。中位数是一种位置平均数,它是按顺序排列的一组数据中居于中间位......
  • Hive sql 6:行转列及列转行
    1) 多行转单列user_idlogin_date10012024-09-0110012024-09-0210022024-09-0310032024-09-05比较常见的selectuser_id,concat_ws(',',collect_list(login_date))login_date_setfromtblgroupbyuser_id延伸下,集合中保证日期的有序启动多个mr,顺序会有问题1) 以前......
  • 怎么办?用DolphinScheduler调度执行复杂的HiveSQL时无法正确识别符号
    在使用ApacheDolphinScheduler调度执行复杂的HiveSQL时,HQL包含多种海豚无法正确识别的符号,怎么办?本文提供了可行的思路和方法,供用户参考。一、目的在Hive中完成复杂JSON,既有对象还有数组而且数组中包含数组的解析后,原本以为没啥问题了,结果在DolphinScheduler中调度又出现了大问......
  • 大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他
    点一下关注吧!!!非常感谢!!持续更新!!!目前已经更新到了:Hadoop(已更完)HDFS(已更完)MapReduce(已更完)Hive(已更完)Flume(已更完)Sqoop(已更完)Zookeeper(已更完)HBase(已更完)Redis(已更完)Kafka(已更完)Spark(已更完)Flink(已更完)ClickHouse(正在更新···)章节内容上节我们完成了如下的内容:MergeTre......
  • 易优eyoucms网站安装时数据库提示写入表ey_archives记录失败,请刷新重试
    遇到安装时数据库提示“写入表 ey_archives 记录失败,请刷新重试”的问题,可能是由于多种原因导致的,包括数据库连接问题、权限问题、数据冲突等。以下是详细的解决步骤:解决步骤清空数据库重新安装切换数据库版本手动导入数据库1.清空数据库首先尝试清空数据库,确保数据库......