版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
部署与应用Hive-知识准备在我国,铁路承载着亿万人的出行梦想。随着经济增长,各铁路客运站的客流量不断攀升,节假日的客流量更是达到顶峰,这对铁路部门的客运组织能力提出了前所未有的挑战。尽管改建、扩建项目不断上马,但资金、周期和规划的限制依然束缚着铁路客运站的手脚。在这样的背景下,小数和他的团队将目光投向了Hive技术,他们知道,只有结合客流特性加强运输组织,才能显著提升客运效率。在本项目中,小数将开始着手部署Hive,以确保它能够满足铁路部门对数据存储和分析的需求。通过Hive,铁路部门能够有效地存储和分析海量的客流数据,进而优化运输组织并提高服务质量。小数的工作虽然不直接面向旅客,但他的每一行代码、每一次优化都为铁路客运提供着极大的支持。小数相信,随着Hive的部署和应用,铁路部门将能够更好地应对客流高峰,为旅客提供更加便捷、高效的出行服务。项目背景明确Hive的技术定位与核心应用场景。掌握Hive基本架构的工作逻辑,理解HiveSQL的解析与执行流程,明确元数据与HDFS底层数据的关联关系。了解Hive3种部署模式的差异及适用场景。能独立完成Linux操作系统下本地模式Hive的部署,通过HiveShell客户端验证环境可用性,并确保元数据存储正常、SQL任务可提交至Hadoop执行。了解Hive数据操作的关键流程,能在指导下参与基础的数据操作,观察SQL的执行过程与结果,并识别常见问题。形成“需求分析-表结构设计-部署验证-SQL优化”的规范操作习惯,理解Hive表结构设计对查询效率的影响,培养数据仓库场景下“结构化分析、高效查询”的设计思维。学习目标项目导图目录1Hive应用场景Hive简介2Hive基本架构3HQL语言4Hive部署模式5Hive简介Hive是一个开源的数据仓库查询和分析工具,也是Hadoop生态系统中的一个重要组件。它提供了类似SQL的查询语言(这种语言被称为HiveSQL,简称HiveQL或HQL),为数据分析人员查询和分析大规模数据集提供了极大的方便。Hive将数据存储在HDFS中,并利用Hadoop的并行处理能力来对其进行查询。Hive的核心概念是表,其类似于传统数据库中的表,但又有所区别。Hive是基于HDFS和MapReduce的分布式数据仓库,在处理数据时侧重于决策支持,提供的是直观的查询结果,被广泛应用于数据分析领域。而传统数据库被应用于基本的、日常的事务处理场景(如银行转账)。Hive与传统数据库的对比Hive简介对比项Hive传统数据库数据存储方式按列存储数据按行存储数据查询语言HQLSQL数据规模大小数据存储位置HDFS本地文件系统执行MapReduce或Tez执行引擎查询性能慢快数据更新不支持支持模式读模式写模式目录1Hive应用场景Hive简介2Hive基本架构3HQL语言4Hive部署模式5Hive作为一个基于Hadoop的数据仓库工具,Hive被广泛应用于大规模数据的处理和分析领域。Hive应用场景数据仓库/数据湖构建大数据分析数据迁移Hive被广泛应用于构建数据仓库和数据湖,通过将结构化数据、半结构化数据和非结构化数据存储在HDFS中,并使用Hive表进行管理和查询,用户可以对海量数据进行存储、管理和分析。Hive提供了类似于SQL的查询语言HQL,使得用户可以使用熟悉的SQL语法来进行数据分析。借助Hive的执行引擎和优化器,用户可以在Hadoop集群上执行复杂的数据分析任务,如进行数据聚合、过滤、连接等操作。Hive可将数据从其他数据源迁移到Hadoop集群中。同时,用户可以将数据迁移到Hive中进行进一步的分析和处理。目录1Hive应用场景Hive简介2Hive基本架构3HQL语言4Hive部署模式5Hive基本架构中包括用户接口、驱动器、元数据存储、Hadoop集群4部分。Hive基本架构用户接口:Hive提供了多种用户接口,包括CLI、JDBC/ODBC等,可使用户通过不同的方式与Hive进行交互。驱动器:驱动器主要包含解析器、编译器、优化器和执行器,它们用于完成HQL查询语句的词法分析、语法分析、编译、优化及查询计划生成,生成的查询计划被存储在HDFS中,由MapReduce调用执行。元数据存储:Hive使用元数据存储来管理表的结构、位置及分区信息等元数据,这些元数据通常被存储在关系型数据库(如Hive默认的数据库Derby及MySQL)中。Hadoop集群:Hive运行在Hadoop集群之上,利用HDFS来存储数据,利用MapReduce或Tez来执行查询任务。Hive基本架构目录1Hive应用场景Hive简介2Hive基本架构3HQL语言4Hive部署模式5创建与管理数据库创建与管理数据表数据导入数据查询HQL语言在Hive中,可以使用“CREATE”语句创建数据库,并使用IFNOTEXISTS参数确保数据库的唯一性。数据库创建完成后,可以通过“SHOWDATABASES”语句来查看数据库列表。创建数据库语法如下。--创建数据库CREATEDATABASEIFNOTEXISTSdatabase_name;--指定数据库的存储位置LOCATIONhdfs_path;--指定数据库属性WITHDBPROPERTIES('creator'='creator_name','created_at'='create_time');创建与管理数据库(1)创建数据库可以使用“USE”语句切换到指定的数据库,若想将当前所在数据库还原为默认数据库,则可使用关键字DEFAULT。切换数据库的语法如下。USEdatabase_name;USEDEFAULT;创建与管理数据库(2)切换数据库可以使用“DROP”语句删除数据库。删除数据库语法如下。--删除(空)数据库DROPDATABASEIFEXISTSdatabase_name;--删除数据库及其所有表格和数据DROPDATABASEIFEXISTSdatabase_nameCASCADE;创建与管理数据库(3)删除数据库创建Hive数据表时,可以使用HQL语言编写一个“CREATETABLE”语句,以定义表的结构和属性。“CREATETABLE”语句的语法如下。--建表语句CREATE[TEMPORARY][EXTERNAL]TABLE[IFNOTEXISTS][db_name.]table_name--定义表的列名、数据类型、列约束和列描述[(col_namedata_type[column_constraint_specification][COMMENTcol_comment],...[constraint_specification])]--为表添加描述信息[COMMENTtable_comment]创建与管理数据表(1)创建数据表--指定表的分区策略,包括分区列名和数据类型[PARTITIONEDBY(col_namedata_type[COMMENTcol_comment],...)]--指定表的分桶策略,包括分桶列名和每个桶中的数据排序方式[CLUSTEREDBY(col_name,col_name,...)[SORTEDBY(col_name[ASC|DESC],...)]INTOnum_bucketsBUCKETS]创建与管理数据表--定义表的数据分割信息,如行格式[ROWFORMATrow_format]--指定表数据的分隔符和字段分隔符FIELDSTERMINATEDBY'sign_type’--指定数据的存储文件格式[STOREDASfile_format]--指定表数据在HDFS上的存储路径[LOCATIONhdfs_path];创建与管理数据表在Hive中,对数据表进行修改是指添加、删除、修改列,修改表属性,以及更改表的存储格式等操作。创建与管理数据表(2)修改数据表操作语法添加列ALTERTABLEtable_nameADDCOLUMNnew_columntype;删除列ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop;修改表格属性ALTERTABLEtable_nameSETTBLPROPERTIES();更改表的存储格式ALTERTABLEtable_nameSETFILEFORMATfile_type;添加分区ALTERTABLEtable_nameADDPARTITION(partition_column='value’);删除分区ALTERTABLEtable_nameDROPPARTITION(partition_column='value’);重命名表ALTERTABLEold_tableRENAMETOnew_table;将文件系统中的数据导入Hive有两种方法:一种是将Linux本地文件系统中的数据导入Hive;另一种是将HDFS中的数据导入Hive。数据导入语法如下。--将HDFS路径“hdfs_path”中的数据文件加载到指定的Hive表“table_name”中LOADDATAINPATH‘hdfs_path'INTOTABLEtable_name;--将本地文件系统路径“local_path”中的数据文件加载到指定的Hive表“table_name”中LOADDATALOCALINPATH"local_path"INTOTABLEtable_name;数据导入(1)将文件系统的数据导入到Hive将其他Hive表查询到的数据导入Hive有两种方法,分别为查询数据后插入已有表,以及查询数据后新建表。注意,插入数据时要确保两个表对应的字段的数据类型一致。查询数据后插入已有表分为插入单表和插入多表。Hive查询数据后插入单表语法如下。INSERTINTOTABLEtarget_tableSELECTcolumn1,column2,column3FROMsource_table;该语句表示从source_table查询出column1、column2、column3的数据,并将其插入target_table表。数据导入(2)将其他Hive表查询到的数据导入Hive除了单表插入,Hive还支持多表插入,,即在同一个查询中使用多个insert子句,将查询到的某个表中的数据插入不同的表。Hive查询数据后插入多表语法如下。FROMsource_tableINSERTINTOTABLEtarget_table1SELECTcolumn1INSERTINTOTABLEtarget_table2SELECTcolumn2;上述语句表示从source_table中查询column1,并将其插入target_table1表,从source_table表中查询column2,并将其插入target_table2表。数据导入Hive查询数据后新建表语法如下。CREATETABLEnew_tableSELECTcolumn1,column2,column3FROMtable_name;上述语句表示从table_name中查询column1、column2、column3的数据,并将其存储到新建的表new_table中。数据导入HQL采用SELECT语句进行查询,常见的查询操作对应的语法如下。数据查询操作内容操作代码检索所有列的所有行SELECT*FROMtable_name;检索部分列的所有行SELECTcolumn1,column2FROMtable_name;查询column1为value的行SELECT*FROMtable_nameWHEREcolumn1='value’;将某一列数据汇总SELECTSUM(column1)AScolumn1_totalFROMtable_name;按照某一列数据进行分组后,对另外一列的数据进行汇总SELECTcolumn1,SUM(column2)AScolumn2_totalFROMtable_nameGROUPBYcolumn1;按照某一列降序排列SELECT*FROMtable_nameORDERBYcolumnDESC;检索特定值的分区数据SELECT*FROMpartitioned_tableWHEREcolumn='value’;目录1Hive应用场景Hive简介2Hive基本架构3HQL语言4Hive部署模式5可根据Metastore的服务配置,将Hive分为3种部署模式。Hive部署模式内嵌模式在内嵌模式下,Metastore服务与Hive服务运行在同一个进程中。元数据通常被存储在本地文件系统(如内置的Derby数据库)中。内嵌模式是Metastore默认的部署模式,在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 佛山市交通投资集团有限公司招聘考试真题2025
- 羽毛球场地租用合同样本(2026版)
- 徐州市铜山区学校选调教师笔试真题2025
- 辽宁省妇幼保健院招聘院聘工作人员笔试真题2025
- (正式版)DB34∕T 4211-2022 《秸秆好氧快速堆腐还田技术规程》
- 2026 年防范极端降雨守护山区群众安全
- 2026 年高中秋季开学第一课致敬时代楷模青年励志思政班会
- 2026 年初中秋季开学第一课台风预警信号分级认知科普课件
- 2026年山东青岛市市南区中考一模语文试卷(原卷版)
- 人教版七年级英语下册单项选择易错题100题(含答案解析)
- 中国融通资源开发集团有限公司物资接收、仓储人员专项招聘87人笔试备考试题及答案详解
- 2026年出入境辅警理论考试试卷(含答案)
- 2026江苏徐州市市级机关印刷厂有限公司招聘工作人员2人笔试题库附答案详解(基础题)
- 2025年教师选调教育综合知识真题及答案
- 2025-2030年智能农业灌溉系统行业跨境出海战略分析研究报告
- 第一轮-【黄磷企业检查表】-检查表
- 电动汽车动力性能计算表
- 乔木支撑专项施工方案(3篇)
- 数字化解决方案设计师职业资格认定考试复习题库(附答案)
- 商务数据分析师知识考试复习题库(附答案)
- 2026中国电子签名法律效力与行业发展报告
评论
0/150
提交评论