zoukankan      html  css  js  c++  java
  • FusionInsight大数据开发---Hive应用开发

    Hive应用开发

    1. 了解Hive的基本架构原理
    2.  掌握JDBC客户端开发流程
    3. 了解ODBC客户端的开发流程
    4. 了解python客户端的开发流程
    5. 了解Hcatalog/webHcat开发接口
    6.  掌握Hive开发规则

    1. 了解Hive的基本架构原理
    守护进程:

    1. HiveServer(Thrift/Compiler)
    2. webHcat
    3. MetaStore

    Hive的应用场景

    1. 数据挖掘
    2. 非实时分析
    3. 数据汇总
    4. 作为数据仓库

    2. 掌握JDBC客户端开发流程
    JDBC开发-参数初始化

    1. 设置ZooKeeper地址
    2. krb5文件路径
    3. 设置JAAS配置
    4. 配置ZooKeeper Principal
    5. 执行登陆

    JDBC开发-拼接URL

    1. JDBC前缀设置
    2. 服务发现模式
    3. 安全配置:qop.auth.principal
    4. 非安全配置

    JDBC开发-执行SQL

    1. 加载驱动类
    2. 建立连接
    3. 执行SQL
    4. 关闭连接

    JDBC开发-SQL实现

    1. 创建preparedStatement
    2. 执行statement
    3. 关闭statement

    规则建议:
    开发调式:在开发程序时,可通过使用Hive的客户端Beeline先进行调试,检验语句与结果正确性,再部署基于JDBC等的应用程序。
    获取数据库连接:Hive的数据库URL再拼接时已经经过安全认证,所以Hive数据库的用户名和密码为null或空 。


    JDBC超时限制:Hive提供的JDBC实现的超时限制,默认是5分钟。


    执行HQL:再JAVA JDBC应用开发中,拼装HQL语句,注意HQL语句不能以“;“结尾。


    HQL语法规则之判空:判断字段为空使用:”is null“,判断不为空,即有值,使用:"is not null"


    UDF的管理:建议由管理员创建永久UDF,避免每次使用时都去add jar,和重新定义UDF。


    UDF的注解:Hive的UDF会有一些默认属性。@UDFType(deterministic = false)


    使用分区表:当数据量较大时,且经常需要按天统计时,建议使用分区表,按天存放数据。


    动态分区表:为了避免插入动态分区数据过程中,产生过多的小文件,在执行插入时,在分区字段上加distribut by。


    文件格式选择:Hive支持多种存储格式,比如TextFile,RCFile,ORC,Sequence,Parquet.

  • 相关阅读:
    伟大的作曲家 —— 贝多芬与莫扎特、巴赫
    伟大的作曲家 —— 贝多芬与莫扎特、巴赫
    动漫知多少
    动漫知多少
    品牌的命名
    品牌的命名
    作为电磁波的 Wi-Fi 信号
    作为电磁波的 Wi-Fi 信号
    Opencv 使用Stitcher类图像拼接生成全景图像
    Hibernate的fetch
  • 原文地址:https://www.cnblogs.com/cainiao-chuanqi/p/11251556.html
Copyright © 2011-2022 走看看