• hive的安装配置笔记


    1.上传hive安装

    2.解压

    3.配置Hive(在一台机器上即可)

        mv hive-env.sh.template hive-env.sh


    4.运行hive
        发现内置默认的metastore存在问题(1.换执行路径后,原来的表不存在了。2.只能有一个用户访问同一个表)
        
    5.配置mysql的metastore
            查询以前安装的mysql相关包

            rpm -qa | grep mysql

            暴力删除这个包

            rpm -e mysql-libs-5.1.66-2.el6_3.i686 --nodeps

            上传两个mysql的rpm包

    1.         rpm -ivh MySQL-server-5.1.73-1.glibc23.i386.rpm 
    2.         rpm -ivh MySQL-client-5.1.73-1.glibc23.i386.rpm

             执行命令设置mysql

            /usr/bin/mysql_secure_installation

             授权:

    1.         GRANT ALL PRIVILEGES ON hive.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
    2.         FLUSH PRIVILEGES

              在hive当中创建两张表

    1.         create table trade_detail (id bigint, account string, income double, expenses double, time string) row format delimited fields terminated by '\t';
    2.         create table user_info (id bigint, account string, name  string, age int) row format delimited fields terminated by '\t';

            将mysql当中的数据直接导入到hive当中

    1.         sqoop import --connect jdbc:mysql://192.168.1.10:3306/itcast --username root --password 123 --table trade_detail --hive-import --hive-overwrite --hive-table trade_detail --fields-terminated-by '\t'
    2.         sqoop import --connect jdbc:mysql://192.168.1.10:3306/itcast --username root --password 123 --table user_info --hive-import --hive-overwrite --hive-table user_info --fields-terminated-by '\t'

            创建一个result表保存前一个sql执行的结果

            create table result row format delimited fields terminated by '\t' as select t2.account, t2.name, t1.income, t1.expenses, t1.surplus from user_info t2 join (select account, sum(income) as income, sum(expenses) as expenses, sum(income-expenses) as surplus from trade_detail group by account) t1 on (t1.account = t2.account);
            create table user (id int, name string) row format delimited fields terminated by '\t'

            将本地文件系统上的数据导入到HIVE当中

            load data local inpath '/root/user.txt' into table user;

           创建外部表

            create external table stubak (id int, name string) row format delimited fields terminated by '\t' location '/stubak';

           
            创建分区表
            普通表和分区表区别:有大量数据增加的需要建分区表

            create table book (id bigint, name string) partitioned by (pubdate string) row format delimited fields terminated by '\t'

            分区表加载数据

            load data local inpath './book.txt' overwrite into table book partition (pubdate='2023-08-22');

  • 相关阅读:
    纵横内外·突破盲区|BF-TR8500​高功率全频段数字中继台
    1110 Complete Binary Tree
    html+css+javascript打造网页内容浮动导航菜单
    15. 三数之和
    vr飞机驾驶舱模拟流程3D仿真演示加大航飞安全法码
    基于OpenCV+QT的人脸识别打卡项目
    Catalan 数 和 Stirling 数
    c++使用http请求-drogon框架
    智工教育:教师招聘面试时要注意的细节
    翻译|K8s权限提升: 集群中过多权限引发的安全问题
  • 原文地址:https://blog.csdn.net/caryxp/article/details/134174059