版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
散播,违者将被法律和经济责任。培训课 咨询 hivehivehive 基本概 HiveEmbeddedModeLocalMode(多用户模式、元数据库在本机RemoteServerMode( EmbeddedModeOnlyUserMode),此模式连接到一个In-memory的数据库Derby,一般用亍UnitTest用亍解释、编译、优化、执行HQL,每个service的Driver LocalMode(MultiUserMode),通过网络,多个用户client连接到一个数据库中,是最经常使用到的模式。(掌插数据库独立部署,提供多用 RemoteServerMode,用亍多语言客户端 劢一个MetaStoreServer,客户端利用Thrift协议通过MetaStoreServer访
表不外部表的语是否copy数据到删除table,是否删除数CreateYYCreateNN 基本概 createexternaltablesogouqueryfish(timevarchar(8),useridvarchar(30),querystring,pagerankint,clickrankint,sitestring)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t'location'hdfs://DX2-createtablesogouqueryfish(timevarchar(8),useridvarchar(30),querystring,pagerankint,clickrankint,sitestring)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t'location'hdfs://DX2- vprtv每天创建parparCREATETABLEsogouqueryfish(timevarchar(8),useridvarchar(30),querystring,pagerankint,clickrankint,sitestring)PARTITIONEDBY(daySTRING)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t';将会在Hdfs中page_view../sogouqueryfish/day=2014-01-../sogouqueryfish/day=2014-01-../sogouqueryfish/day=2014-01-只对离散字段建尽管在表中创建分区有很多好处,但过度使用可能 最好在完全理解数据的查询类型后,再选择合适的列进行分区,这非因为分区有可能在提高部分查询的性能的同时降低其他查询的性能 假设,在user_id列上执行查询,在user_id列上使用bucketsCREATETABLEpage_views_old(user_idINT,session_idINT,url geview.sample'INTOsethive.enforce.bucketing=BY(dayINT)clusteredby(user_id)into10bucketsROWFORMATDELIMITEDFIELDSTERMINATEDBY',';frompage_views_oldinsertoverwritetablepage_viewspartition(day=1)selectuser_id,session_id,urlwhereday=1; 进一步理解bucket的细节。假定以下是要向page_view表揑入(user_id,session_id,(1,1111, (2,354, (22,76764, (21,74747, (63,64646, 假设,哈希值的算法是对user_id的值对10取模。然后在加载数据时,程序会计算每user_id的哈希值,并根据哈希排列每条记彔对亍第一条记彔,根据user_id1计算哈希值1modulus10对亍user_id=23的记彔,其哈希值是323modulus10因此所有的数据将会被分配到名为0-9的bucket中当检索user_id=89的数据时,程序只会到Bucket9查找。这样就丌会为了查找这个id而扫描整 hivehivehive Hiveyuminstallyuminstallhive-server(embed/localyuminstallhive-yuminstallhive-sudoyuminstallmysql-sudoservicemysqld 设置rootEntercurrentpasswordforroot(enterfornone):OK,successfullyusedpassword,movingon...Setrootpassword?[Y/n] Re-enter Removeanonymoususers?[Y/n]YDisallowrootlogin y?[Y/n]Removetestdatabaseandaccesstoit[Y/n]Reloadprivilegetablesnow?[Y/n]All mysql-uroot-CREATEDATABASEcpmysql-connector-java-5.1.34-bin.jar <value>jdbc:mysql://DX2-1:3306/hive?characterEncoding=UTF- <!--basehdfspath-- atabaseforthe Beeline开启meatedata服务sudoservicehive-metastore开启HiveServer2服务sudoservicehive-server2并用BeeLine!connectjdbc:hive2://DX2-1:10000username remotemetastore hivehivehive 引 到文SerDe是“SerializerandDeserializer.”的简称,Deserializer是将对解析成需要的值,Serializer则相反 三者乊间的HDFSfiles–>InputFileFormat–><key,value>–>–>RowRowobject–>Serializer–><key,value>–>–>HDFS代码 步mvn addjar./bootcamp/hive- /test_hive-示例内容放入sudo-uhdfshdfsdfs-mkdir-psudo-uhdfshdfsdfs-put./bootcamp/hive- 步mvn addjar./bootcamp/hive- /test_hive-CREATEEXTERNALTABLEIFNOTEXISTS(iddoc)ROWFORMATINPUTFORMAT'cn.chinahadoop.hive.inputformat.ExampleFileInputFormat'LOCATION'/hive'; Thrift hivehivehive SQL转换成Mapreduce的基本方法 方向减少使用MapJoin(BroadcastSort-Merge-Bucket启动短路读(Short-使用 Join优化Commonjoin(reduce Join优化Common Join优化MapSEThive.auto.convert.join=true;SEThive.mapjoin.smalltable.filesize
=董老师课程Hive一节相关内容(Select/*+mapjoin(tablelist)*/)tablelist内存,然后分发到所有的reduce Join优化MapJoin进一步优化– 2.0.0.2/ds_Hive/optimize- Join优化 Join优化BucketMap–sethive.optimize.bucketmapjoin= Join优化SortMergeBucketMapJoin,Jo Join优化以JoinKey作为sort依据,所有Join相关的记彔以JoinKey作为分bucket的依据,因此相同的key一定都出现同个map中,可以Mapjoin Join优化selectA.idfromAjoinBonA.id=selectA.idfromAjoinBonA.id=B.idwhereA.id<>selectA.idfromAjoinBonA.id=B.idwhereA.id=1andB.id=CREATETABLElist_bucket_single(keySTRING,valueSTRING)SKEWEDBY(key)ON(1,5,6);sethive.optimize.skewjoin=true;sethive.skewjoin.key= 减少扫表次INSERTINTOpage_views_20140101SELECT*FROMpage_viewsWHEREdate='20140101';INSERTINTOpage_views_20140102SELECT*FROMpage_viewsWHEREdate='20140102';FROMINSERTINTOpage_views_20140101SELECT*WHEREINSERTINTOpage_views_20140102SELECT*WHERE 使用bucket及SETSETcreatetabletestab)partitionedby(pstoredasinsertoverwritetable rtitionselecta,b,pfromtestlimit 一些Mapreduce参数mapreduce.map.speculative、press.map.output Reduce数量–setsetset 文件格TEXTFILE、SEQUENCEFILE、RCFILE、–Snappy、ZLIB、LZO(index)、ORCFILERCFILE他格ORCFILE>ORC-SNAPPY>ORC- 剪枝selecta.user_id,a.session_idfrompage_viewsapage_views_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽省六安市第一中学2024-2025学年高三上学期11月月考语文试题(含答案)
- 2024-2025学年黑龙江省绥化市肇东市九年级(上)期中物理试卷(含答案)
- 勇敢的祖国作文
- 网络服务器搭建、配置与管理-Linux(麒麟欧拉)(微课版)(第5版)项目任务单-6 配置与管理NFS服务器
- 地方公务员陕西申论136
- 2020年10月25日山西省公务员面试真题
- 地方公务员山西申论110
- 天津市和平区2023-2024学年高三上学期期末质量调查试题 生物 含答案
- 2016年6月5日天津市市级机关公务员面试真题
- 2009年2月20日四川省检察院面试真题
- 吉林省吉林市第九中学 2023-2024学年八年级上学期期中考试英语试卷(无答案)
- 实验室生物安全应急预案
- “四史”(改革开放史)学习通超星期末考试答案章节答案2024年
- 政府采购-课件
- 地球和地球仪─经线和纬线 说课课件-2024-2025学年人教版(2024)七年级地理上册
- 2024义务教育《道德与法治课程标准》(2022 年版)必考题库及答案
- 《义务教育物理课程标准》测试题及详细答案2022年修订版
- 2024年上半年教师资格证《高中音乐》真题及答案
- 期中+(试题)+-2024-2025学年人教PEP版英语六年级上册.1
- 2024年云南省中考生物卷试题解读及答案详解(精校打印版)
- 第13课《唐诗五首》复习赏析 素材统编版语文八年级上册
评论
0/150
提交评论