Hive

史上最全的大数据技术栈,有种冲动学习的既视感,你是否感受到了自己的不足?

泄露秘密 提交于 2020-08-05 04:19:44
前言 提起大数据,不得不提由IBM提出的关于大数据的5V特点: Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性) ,而对于大数据领域的从业人员的日常工作也与这5V密切相关。大数据技术在过去的几十年中取得非常迅速的发展,尤以Hadoop和Spark最为突出,已构建起庞大的技术生态体系圈。 下面我们通过一张图来了解一下目前大数据领域常用的一些技术,当然大数据发展至今所涉及技术远不止这些。 下面自底向上介绍各个层的主要项目。 1 采集层和传输层 Sqoop 在hadoop和关系型数据库之间转换数据。 Flume Flume是一个分布式的高可用的数据收集、聚集和移动的工具。通常用于从其他系统搜集数据,如web服务器产生的日志,通过Flume将日志写入到Hadoop的HDFS中。 Canal 数据抽取是 ETL 流程的第一步。我们会将数据从 RDBMS 或日志服务器等外部系统抽取至数据仓库,进行清洗、转换、聚合等操作。在现代网站技术栈中,MySQL 是最常见的数据库管理系统,我们会从多个不同的 MySQL 实例中抽取数据,存入一个中心节点,或直接进入 Hive。市面上已有多种成熟的、基于 SQL 查询的抽取软件,如著名的开源项目 Apache Sqoop,然而这些工具并不支持实时的数据抽取。MySQL Binlog

[Hive on Tez] Input path does not exists error

自古美人都是妖i 提交于 2020-08-05 00:07:07
Issue hive metadata有分区信息 partition=x, hdfs路径不存在分区目录partition=x时。执行一些hive sql就会报错: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: 见 issue: https://issues.apache.org/jira/browse/HIVE-13781 影响:Hive on Tez. Hive3 解决方案 在执行hive sql执行保证hdfs目录和hive metadata的一致性 回退hive on mr 执行msck repair table修复全表 来源: oschina 链接: https://my.oschina.net/u/3534184/blog/4321187

【赵强老师】什么是Spark SQL?

强颜欢笑 提交于 2020-08-04 22:15:41
一、Spark SQL简介 Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame并且作为分布式SQL查询引擎的作用。 为什么要学习Spark SQL?我们已经学习了Hive,它是将Hive SQL转换成MapReduce然后提交到集群上执行,大大简化了编写MapReduce的程序的复杂性,由于MapReduce这种计算模型执行效率比较慢。所以Spark SQL的应运而生,它是将Spark SQL转换成RDD,然后提交到集群执行,执行效率非常快!同时Spark SQL也支持从Hive中读取数据。 二、Spark SQL的特点 无缝集成在Spark中,将SQL查询与Spark程序混合。Spark SQL允许您使用SQL或熟悉的DataFrame API在Spark程序中查询结构化数据。适用于Java、Scala、Python和R语言。 提供统一的数据访问,以相同的方式连接到任何数据源。DataFrames和SQL提供了一种访问各种数据源的通用方法,包括Hive、Avro、Parquet、ORC、JSON和JDBC。您甚至可以通过这些源连接数据。 支持Hive集成。在现有仓库上运行SQL或HiveQL查询。Spark SQL支持HiveQL语法以及Hive SerDes和udf,允许您访问现有的Hive仓库。 支持标准的连接

2020中金所实习面试问题

ぐ巨炮叔叔 提交于 2020-08-04 18:54:52
一、Java基础 Arraylist和LinkedList的区别 底层实现原理 Arraylist:底层是基于动态数组,根据下表随机访问数组元素的效率高,向数组尾部添加元素的效率高;但是,删除数组中的数据以及向数组中间添加数据效率低,因为需要移动数组。 Linkedlist基于链表的动态数组,数据添加删除效率高,只需要改变指针指向即可,但是访问数据的平均效率低,需要对链表进行遍历。 对于随机访问get和set,ArrayList优于LinkedList,因为LinkedList要移动指针。对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。 “==”和“equals”区别 hashcode是什么 垃圾回收算法;分代回收中新生代采用的方法,老年代的方法 标记清除算法 复制算法(新生代算法) 标记整理算法(老年代回收算法) String StringBuilder StringBuffer 区别 Error和Exception的区别,举例…… Exception和Error都是继承了Throwable类,在java中只有Throwable类型的实例才可以被抛出(throw)或者捕获(catch),他是异常处理机制的基本组成类型。 Exception和Error体现了java平台设计者对不同异常情况的分类

大数据篇:数据仓库案例

杀马特。学长 韩版系。学妹 提交于 2020-08-04 17:37:08
离线数据仓库 数据仓库(Data WareHouse)是为企业所有决策制定过程,提供所有系统数据支持的战略集合 通过对数据仓库中数据的分析,可以帮助企业,改进业务流程、控制、成本、提高产品质量等 数据仓库,并不是数据最终目的地,而是为数据最终的目的地做好准备:清洗、转义、分类、重组、合并、拆分、统计等等 1 项目简介 1.1 项目需求 用户行为数据采集平台搭建 业务数据采集平台搭建 数据仓库维度建模 分析:用户、流量、会员、商品、销售、地区、活动等主题 采用即席查询工具,随时进行指标分析 对集群性能进行监控,发生异常需要报警 元数据管理 质量监控 1.2 技术选型 数据采集功能如何技术选型 采集框架名称 主要功能 Sqoop 大数据平台和关系型数据库的导入导出 Datax 大数据平台和关系型数据库的导入导出 flume 擅长日志数据的采集和解析 logstash 擅长日志数据的采集和解析 maxwell 常用作实时解析mysql的binlog数据 canal 常用作实时解析mysql的binlog数据 waterDrop 数据导入导出工具 消息中间件的技术选型 开源MQ 概述 RabbitMQ LShift 用Erlang实现,支持多协议,broker架构,重量级 ZeroMQ AMQP最初设计者iMatix公司实现,轻量消息内核,无broker设计。C++实现 Kafka

Spark-Hive中出现 access denied org.apache.derby.security.SystemPermission( "engine", "usederbyintern...

跟風遠走 提交于 2020-08-04 16:51:49
参考: http://db.apache.org/derby/releases/release-10.12.1.1.cgi https://blog.csdn.net/hxl122lcq/article/details/7782940 修改 D:\Java\Java8X64\jre1.8.0_181\lib\security\java.policy 与 D:\Java\Java8X64\jdk1.8.0_181\jre\lib\security\java.policy 文件 在其中加入 permission org.apache.derby.security.SystemPermission "engine", "usederbyinternals"; 即可 来源: oschina 链接: https://my.oschina.net/u/4280959/blog/4302059

大数据PAZR集成ldap实操!what?

时间秒杀一切 提交于 2020-08-04 16:22:31
1.说明 p:presto a:allixop z:zeppelin r:rancher 分为三部分讲解 1.什么是presto+Alluxio,大数据presto+Alluxio集成详细部署说明 2.大数据zeppelin+rancher,docker的集成部署 3.presto+alluxio集成ldap实操测试,zeppelin+rancher集成ldap实操测试 1.1什么是presto 于内存的并行计算,Facebook推出的分布式SQL交互式查询引擎 多个节点管道式执行 支持任意数据源 数据规模GB~PB 是一种Massively parallel processing(mpp)(大规模并行处理)模型 数据规模PB 不是把PB数据放到内存,只是在计算中拿出一部分放在内存、计算、抛出、再拿 为什么要用&优点&特点 多数据源、支持SQL、扩展性(可以自己扩展新的connector)、混合计算(同一种数据源的不同库 or表;将多个数据源的数据进行合并)、高性能、流水线(pipeline) 1.2 presto架构 2.1什么是alluxio Alluxio(前身Tachyon)是世界上第一个以内存为中心的虚拟的分布式存储系统。它统一了数据访问的方式,为上层计算框架和底层存储系统构建了桥梁。 2.2Alluxio架构 Alluxio是大数据和机器学习生态系统中的新数据访问层

SQL query Frequency Distribution matrix for product

一世执手 提交于 2020-08-04 04:27:08
问题 i want to create a frequency distribution matrix 1.Create a matrix.**Is it possible to get this in separate columns** customer1 p1 p2 p3 customer 2 p2 p3 customer 3 p2 p3 p1 customer 4 p2 p1 2. Then I have to count the number of products that come together the most For eg p2 and p3 comes together 3 times p1 p3 comes 2 times p1 p2 comes 2 times I want to recommend products to customers ,frequency of products that comes together select customerId,product,count(*) from sales group by customerId

SQL query Frequency Distribution matrix for product

你离开我真会死。 提交于 2020-08-04 04:27:06
问题 i want to create a frequency distribution matrix 1.Create a matrix.**Is it possible to get this in separate columns** customer1 p1 p2 p3 customer 2 p2 p3 customer 3 p2 p3 p1 customer 4 p2 p1 2. Then I have to count the number of products that come together the most For eg p2 and p3 comes together 3 times p1 p3 comes 2 times p1 p2 comes 2 times I want to recommend products to customers ,frequency of products that comes together select customerId,product,count(*) from sales group by customerId