Hive入门+实战.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Hive开发使用-java客户端 hive需要引用的客户端jar包列表: java端连接hive,需要预先引入hive相关的客户端jar包, jar包可以直接从hive安装包的lib目录下拷贝。jar包列表如下: Hive客户端java代码,如下: Hive开发使用-java客户端 谢 谢 * * * Hive开发使用-Hive的数据模型 内部表 内部表与关系数据库中的Table在概念上类似。每一个Table在Hive中都有一个相应的目录存储数据。所有的Table数据(不包括External Table)都保存在这个目录中。删除表时,元数据与数据都会被删除。 元数据库中查询数据表列表: HDFS下对应存储目录: Hive开发使用-Hive的数据模型 外部表 外部表指向已经在HDFS中存在的数据,可以创建Partition。它和内部表在元数据的组织上是相同的,而实际数据的存储则有较大的差异。内部表的创建过程和数据加载过程这两个过程可以分别独立完成,也可以在同一个语句中完成,在加载数据的过程中,实际数据会被移动到数据仓库目录中;之后对数据访问将会直接在数据仓库目录中完成。删除表时,表中的数据和元数据将会被同时删除。而外部表只有一个过程,加载数据和创建表同时完成(CREATE EXTERNAL TABLE ……LOCATION),实际数据是存储在LOCATION后面指定的 HDFS 路径中,并不会移动到数据仓库目录中。当删除一个External Table时,仅删除该链接。 Hive开发使用-Hive的数据模型 如何选择使用内部表或外部表? 如果所有处理都由hive来完成,则使用内部表 如果需要用hive和外部其他工具处理同一组数据集,则使用外部表。 Hive开发使用-Hive的数据模型 分区 Partition对应于关系数据库中的Partition列的密集索引,但是Hive中Partition的组织方式和数据库中的很不相同。在Hive中,表中的一个Partition对应于表下的一个目录,所有的Partition的数据都存储在对应的目录中。例如pvs表中包含ds和city两个Partition,则 对应于ds = city= jinan 的HDFS子目录为:/wh/pvs/dscity=jinan ; Hive开发使用-Hive的数据模型 桶 Buckets是将表的列通过Hash算法进一步分解成不同的文件存储。它对指定列计算hash,根据hash值切分数据,目的是为了并行,每一个Bucket对应一个文件。分区是粗粒度的划分,桶是细粒度的划分,这样做为了可以让查询发生在小范围的数据上以提高效率。适合进行表连接查询、适合用于采样分析。 例如将user列分散至32个bucket,首先对user列的值计算hash,则 对应hash值为0的HDFS目录为:/wh/pvs/dsctry=US/part-00000; 对应hash值为20的HDFS目录为: /wh/pvs/dsctry=US/part-00020。 如果想应用很多的Map任务这样是不错的选择。 Hive开发使用-Hive的数据模型 Hive的视图 视图与传统数据库的视图类似。视图是只读的,它基于的基本表,如果改变,数据增加不会影响视图的呈现;如果删除,会出现问题。如果不指定视图的列,会根据select语句后的生成。 视图的简单示例: 创建表:create view test_view as select * from test; 查看数据:select * from test_view; Hive开发使用-Hive的数据存储模型 数据库 (database) 表 (table) 表 (table) 常规数据 (data) (Buckets) 桶 (Buckets) 桶 分区 (Partition) 分区 (Partition) (Buckets) 桶 (Buckets) 桶 Hive开发使用-Hive创建数据表命令 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT col_

文档评论(0)

js1180 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档