IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 大数据基础 -> 正文阅读

[大数据]大数据基础

Inceptor

Inceptor是一种交互式分析引擎,本质是一种SQL翻译器。Inceptor中一共可以操作五种类型的表结构:

  • 普通文本表(TXT表)

    • 普通表导入数据

      • 创建HDFS数据目录,在本地创建一个存放数据的文件夹,为了区分不同用户和不同数据源,建立以下两个目录

      • hadoop fs -mkdir -p /user/user1/data/inceptor
        hadoop fs -mkdir -p /user/user1/data/hyperbase
        
      • 首先将本地path存放的数据文件put到HDFS目录中,数据可以存放在集群中的任意一台机器中(注意本步操作可能会报load数据没有权限,HDFS上的数据和表的权限不一致 使用:(sudo -u hdfs hadoop fs -chown -R hive /user/*)命令进行owner的修改,hive为owner名字)或者使用sudo -u hdfs hadoop fs -chmod -R 777 /user/*

        • hadoop fs -put <path>/data.txt /user/user1/data/inceptor
          
      • 将上传进HDFS的文件load到Inceptor事先建立好的s3表中,在Inceptor中输入如下命令:

      • load data inpath ‘/user/user1/data/inceptor/data.txt’ into table s3;
        
      • 从其他表导,入注意不复制数据

        • create table t4 like t3;	
          
  • 分区表(分单值分区和范围分区)

    • 创建单值分区表(每创建一个单值分区表就会产生一个小文件,这里只有一个name值)

      • create table single_tbl(name string) partitioned by(level string)
        
  • 分桶表

    • 必须创建外表,只支持从外表导入数据,在分桶表中经常做聚合和join操作,速度非常快。另外分桶规则主要分为

      1. int型,按照数值取模,分几个桶就模几
      2. string型,按照hash表来分桶
    • 创建分桶表bucket_tbl(这里分桶的大小是用表的总数据大小除以200M,经实际优化测试,每个桶的数据为200M处理速度最优)

      • create external table bucket_info(id int, name string)row format delimited fields terminated by ',' location '/user/datadir';
        
  • holodesk表

    • holodesk表既可以基于内存也可以基于ssd存储和查询,holodesk会存两份,一份存在内存或者ssd中,一份存在HDFS中,这样可能在查询的性能上有所延迟
    • holodesk最擅长处理groupby的SQL查询语句
    • “cache”=“cache_medium"指定计算缓存的介质。可以选择ram,SSD和memeory三种。只有当服务器上配置有SSD时,才可以选择SSD作为缓存,Inceptor会自动利用SSD为计算加速。”
  • ORC表(Hive ORC格式)

    • 建立ORC格式表

      1. create table country(id int,country string)stored as orc;
        
      2. create external table ex_tbl(id int,country string)
                row format delimited fields terminated by ','
                stored as textfile
                location '/user/tdh/externaltbl';
        
      3. insert into country select * from ex_tbl;
        
  • ORC事务表(可进行增删改查操作,必须建立分桶表和外表,且两个表的表格式要和源数据字段一一对应起来)

    • 建立ORC格式事务表,必须要分桶,既可以单值插入,又可以通过外表插入

注意事项:

  • HDFS不能直接load到Inceptor中的ORC事务表中,(只能load到普通表和ORC表中)要想在ORC事务表里插入数据有两种方法:
    • a.建立一张外表,再将HDFS load进外表上,再insert into select * from external table
    • b.由于ORC事务表支持增删改查,也可以使用单值插入语句insert into table country values(101,japan)
  • 查看分区表的命令是show partitions [table名]
  • 查看每个表的创建时语句命令是show create table [table名]
  • 使用命令hdfs dfs -ls /user/country(或者使用hadoop fs -ls /user/country命令)
  • 默认数据库存放位置 hdfs://nameservice/inceptorsql1/user/hive/warehouse/ 在Inceptor创建数据库时一般使用它的default默认数据库,若自己建立数据库请不要指定location,还有自己建立的数据库可能会因为权限不够而造成一些操作失败报错。可以使用hadoop fs -ls
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-31 15:30:56  更:2021-08-31 15:32:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 16:45:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码