Hive

MSCK REPAIR hive external tables

帅比萌擦擦* 提交于 2021-01-21 09:37:08
问题 I have a daily ingestion of data in to HDFS . From data into HDFS I generate Hive external tables partitioned by date . My qestion is as follows , should I run MSCK REPAIR TABLE tablename after each data ingestion , in this case I have to run the command each day. Or running it just one time at the table creation is enough . Thanks a lot for your answers Best regards 回答1: You only run MSCK REPAIR TABLE while the structure or partition of the external table is changed. This command updates the

MSCK REPAIR hive external tables

霸气de小男生 提交于 2021-01-21 09:36:04
问题 I have a daily ingestion of data in to HDFS . From data into HDFS I generate Hive external tables partitioned by date . My qestion is as follows , should I run MSCK REPAIR TABLE tablename after each data ingestion , in this case I have to run the command each day. Or running it just one time at the table creation is enough . Thanks a lot for your answers Best regards 回答1: You only run MSCK REPAIR TABLE while the structure or partition of the external table is changed. This command updates the

极简化ES数据同步,终于从繁琐重复的代码里脱身了

社会主义新天地 提交于 2021-01-20 21:02:51
一、背景 Elasticsearch是最近几年非常热门的分布式搜索和数据分析引擎,携程内部不仅使用ES实现了大规模的日志平台,也广泛使用ES实现了各个业务场景的搜索、推荐等功能。 本文聚焦在业务搜索的场景分享了我们在做数据同步方面的思考和实践,希望能对大家有所启发。 二、现状调研 数据同步是个很麻烦的事情,在各种论坛、分享中被大家反复讨论。 我们的需求大致包括全量、增量地从Hive、MySQL、Soa服务、Mq等不同类型的数据源获取数据,部分数据还需要进行一定的计算或者转换,然后近实时地同步到ES中,以被用户搜索到。 为了讨论方便,假定本文的场景是文章搜索的场景: 索引内容为文章,主要的信息保存在article表里; 每个文章关联了tag,保存在article_tag表里; tag表里的tagName也需要进入ES索引,以便使用标签名字搜索文章。 在以前同步这样的数据进入ES,单条文章的数据组装伪代码如下: List<Long> tagIds = articleTagDao.query("select tagId from article_tags where articleId=?", articleId); List<TagPojo> tags =tagDao.query("select id, name from tags whereid in (?)");

一文熟悉Presto(万字长文,建议收藏)

风格不统一 提交于 2021-01-19 04:32:19
1. Presto 介绍 1.1 Presto 简介 1.1.1 Presto 概述 Presto是一个分布式SQL查询引擎,用于查询分布在一个或多个异构数据源上的大型数据集。 1.1.2 Presto 架构 1.1.3 官网地址 就在 2020 年 12 月 27 日 ,prestosql 与 facebook 正式分裂 , 并改名为 trino. https://prestosql.io/ https://trino.io 1.1.4 Prestodb VS Prestosql(trino) 根据目前社区活跃度和使用广泛度 , 更加推荐 prestosql. 具体区别参考博文 : http://armsword.com/2020/05/02/the-difference-between-prestodb-and-prestosql/ 1.2 Prestosql 的安装和使用 1.2.1 prestosql 版本的选择 在 presto330 版本里已经提到 ,jdk8 只支持到 2020-03 月发行的版本 . 详情参考 : https://prestosql.io/docs/current/release/release-330.html 在 2020 年 4 月 8 号 presto 社区发布的 332 版本开始 , 需要 jdk11 的版本 . 由于现在基本都使用的是

hive beeline ClassNotFoundException

[亡魂溺海] 提交于 2021-01-17 16:51:25
异常现象:使用beeline 或者jdbc 连接hive 执行 create table 异常为 ClassNotFoundException: org.apache.hudi.hadoop.HoodieParquetInputFormat 使用hive client可以正常执行crete table 异常分析: beeline 是通过hiveserver2 服务连接的hive,检查hiveserver2所在服务器jar包是否存在 解决方案: 1、将jar拷贝到hive/lib/ 2、修改hive-env.sh ,将jar加入 例如: export HIVE_AUX_JARS_PATH=/home/hive/lib/json-serde-1.3.7-jar-with-dependencies.jar,/home/hive/lib/hudi-hive-bundle-0.6.0-incubating.jar 3、 重启hiveserver2服务 /home/hive/bin/hiveserver2 --hiveconf hive.server2.thrift.port=10000 & 来源: oschina 链接: https://my.oschina.net/u/4343937/blog/4907167

从0开始搭建数据仓库(2):产品经理如何“玩转”Hive SQL

自闭症网瘾萝莉.ら 提交于 2021-01-16 15:03:07
作者介绍 莲石东路@乌森 心之所向,***成长。从底层架构到应用实战,聊聊炼数成金背后的故事。 持续更新数据治理、数据科学、数据可视化、空间计算系列文章。 01 前言 公司新入职了的产品经理小美因为业务需要,想搭一个数据大屏方便自己查看数据。她找开发小王申请了数仓权限,然后从技术中台里找到了数据大屏的工具,把自己平时查数据用的sql搬上去跑,结果总是报错。 小美找到了做数据产品经理的师兄小帅看了看。 小帅:你这个查询有问题,业务系统的sql不能直接搬来用。 小美:我看长得差不多啊,除了多了个分区外,不都是sql吗? 小帅:你现在建的是Hive查询,Hive SQL虽说和SQL非常相似,但是一些细节上还是有区别的。 02 Hive SQL是什么? Hive是大数据领域常用的数据仓库组件,可以借助查询语言SQl将HDFS上存储的结构化文件映射成一张数据库表,并提供类SQL查询功能。Hive-SQL就是这个”类SQL查询功能”。Hive-SQL与SQL基本上一样,因为当初的设计目的,就是让会SQL不会编程MapReduce的也能完成处理数据工作。 【拓展】Hive-SQL是如何转化为MapReduce任务的呢?整个编译过程分为六个阶段: 1) Antlr定义SQL的语法规则,完成SQL词法,语法解析,将SQL转化为抽象语法树AST Tree 2) 遍历AST Tree

小白学习如何打日志

社会主义新天地 提交于 2021-01-14 08:01:34
一、Java打日志的基础 以前自己自学的时候,排查问题只会写下面的代码: try { // doSomething } catch ( Exception e ) { e . printStackTrace (); } ---------- // 查看某个数据的值时: System . out . println ( xxxx ); 去到公司就发现上面的代码全不见了,剩下的是: LOGGER . info ( "begin to run Java3y:{}" , id ); ---- LOGGER . error ( "excepiton occurs when run Java3y {}, exception{}" , id , e . toString ()); 如果使用 e.printStackTrace(); 的话,打印在控制的信息分析不方便: 而我们将信息分等级和时间记录在服务器的磁盘上,有问题了就可以根据对应的信息去查找相关的日志(这样排查起来是十分方便的): 我们再来看一下一般的日志长什么样的 例如:现在有人来反馈某某某用户好像收不到短信,给出发送时间和用户ID,我们就可以在日志上找出该用户在我们系统的发送状态(例如图上的:state:81,我们就认为是发送成功状态) 那么,问题来了,我们在哪打日志?《手册》上其实已经给出了答案: 谨慎地记录日志。生产环境禁止输出

ElasticSearch做实时OLAP框架~实时搜索、统计和OLAP需求,甚至可以作为NOSQL来使用(转)

生来就可爱ヽ(ⅴ<●) 提交于 2021-01-14 03:06:11
使用ElasticSearch作为大数据平台的实时OLAP框架 – lxw的大数据田地 http://lxw1234.com/archives/2015/12/588.htm 一直想找一个用于大数据平台实时OLAP(甚至是实时计算)的框架,之前调研的Druid(druid.io)太过复杂,整个Druid由5、6个服务组成,而且加载数据也不太方便,性能一般,亦或是我还不太会用它。后来发现使用ElasticSearch就可以满足海量数据实时OLAP的需求。 ElasticSearch相信大家都很熟悉了,它在搜索领域已经有了举足轻重的地位,而且也支持越来越多的聚合统计功能,还和YARN、Hadoop、Hive、Spark、Pig、Flume等大数据框架兼容的越来越好,比如:可以将ElasticSearch跑在YARN上,还可以在Hive中建立外部表映射到ElasticSearch的Index中,直接在Hive中执行INSERT语句,将数据加载进ElasticSearch。 所谓OLAP,其实就是从事实表中统计任意组合维度的指标,也就是过滤、分组、聚合,其中,聚合除了一般的SUM、COUNT、AVG、MAX、MIN等,还有一个重要的COUNT(DISTINCT),看上去这些操作在SQL中是非常简单的统计,但在海量数据、低延迟的要求下,并不是那么容易做的。

微服务和大数据性能指标参考和相关组件

穿精又带淫゛_ 提交于 2021-01-13 10:15:12
发布时间:19-07-1720:12 一、引言 本文题为微服务和大数据性能指标参考,但实际上,无论是单体架构还是分布式架构、数据规模如何,在设计和开发各种功能性模块时,都需要提前考虑高性能需求水平并按需设计,对各种性能指标进行合理评估,从而尽量减少代码重构的可能性。 在完成功能模块的开发以后,还需要使用各种压力测试工具进行性能测试,从而判断代码是否能够满足性能要求,并找出性能瓶颈所在。 为了作出更加合理的性能评估值,我们需要先大概的了解一些常用的计算机操作所消耗的时间,从而心中有数的设计出一个符合需求、且易于实现的系统,减小线上系统失败的风险,并能够做到心中有数。 二、常用应用层性能指标参考标准 以下标准是使用PC X86 桌面机器的经验值,并不代表使用线上生产机器的经验值,仅供参考,评审时应该根据机器的不同进行调整。 2.1 通用标准 容量按照峰值的5倍冗余计算。分库分表后的容量一般可存储N年的数据(根据不同机器调整)。第三方查询接口吞吐量为5000/s。单条数据库记录占用大约1KB的空间。 2.2 MySQL 单端口读:1000/s。单端口写:700/s。单表容量:5000万条。 2.3 Redis 单端口读:40000/s。单端口写:40000/s。单端口内存容量:32GB。 2.4 Kafka 单机读:30000/s。单机写:5000/s。2.5 Flume HDFS

Hadoop入门基础知识总结

谁说我不能喝 提交于 2021-01-13 08:46:27
  大数据时代的浪潮袭来,Hadoop作为一种用来处理海量数据分析的工具,是每一个大数据开发者必须要学习和掌握的利器。本文总结了Hadoop入门基础知识,主要包括了Hadoop概述、Hadoop的发展历程和Hadoop的特性。下面一起来看看吧!   1、Hadoop概述   Hadoop 是 Apache 旗下的一个用 Java 语言实现开源软件框架,它还是一个开发和运行处理大规模数据的软件平台。Hadoop允许使用简单的编程模型,在大量计算机集群上,对大型数据集进行分布式处理。   狭义上说,Hadoop 指 Apache 这款开源框架,它的核心组件有:HDFS(分布式文件系统):解决海量数据存储 ;YARN(作业调度和集群资源管理的框架):解决资源任务调度;MAPREDUCE(分布式运算编程框架):解决海量数据计算。   广义上来说,Hadoop 通常是指一个更广泛的概念——Hadoop 生态圈。当下的 Hadoop 已经成长为一个庞大的体系,随着生态系统的成长,新出现的项目越来越多,其中不乏一些非 Apache 主管的项目,这些项目对 HADOOP 是很好的补充或者更高层的抽象。比如,HDFS: 分 布 式 文 件 系 统;MAPREDUCE:分布式运算程序开发框架;HIVE:基于 HADOOP 的分布式数据仓库,提供基于 SQL 的查询数据操作;HBASE