近来在做项目中的技术调研,使用最新版的hdp3.1,其中使用spark2.3和hive 3.1.

遇到 一些问题,记录如下:

一,使用spark-sql client driver去访问hive创建的数据库,发现找不到,使用presto访问hive,只能读写外部表。

经过查询资料了解到,hive3.1默认对内部表支持事务和ACID特性,spark等外部工具无法直接读取ACID的表数据,

spark新版本正在跟进,但spark-sql本身也在和hive分离,走自己的路,已经和hive共用一个元数据库,但是使用不同的

catalog,存不同的元数据。

如果想使用spark-sql来处理hive的表数据,则需要做如下调整:

1.在advanced spark2-hive-site-override中配置metastore.catalog.default=hive之后重启spark2 服务,
这样就可以看到hive创建的数据库和表,但是只能访问外部表,无法访问内部表,原因上面已说明。

2.如果想使用presto,spark-sql来访问hive3.1的表,则需要做如下调整,放弃acid和事务特性。

hive.strict.managed.tables=false
hive.create.as.insert.only=false
metastore.create.as.acid=false
这三个属性设置之后,重启hive server2,这样hive 放弃了事务,acid的特性,生成的表数据,spark-sql,presto
就可以读取了。
二,使用kylin生成cube报错,无法修改hive运行时属性xxxxx

* hive.security.authorization.sqlstd.confwhitelist
Kylin在执行作业的时候,需要做一些mapreduce的优化,set xxx=xxx,但报错,显示不能在运行时修改,
经查可以配置这个属性,符合这个java正则的属性可以被修改。

hdp3.1 hive 3.0的使用记录的更多相关文章

  1. ccs6.0使用问题记录

    ccs6.0使用问题记录 彭会锋 1 编译过程中提示warning  " Description Resource Path Location Type #9-D nested commen ...

  2. select2 4.0.3 空记录时的处理

    使用select2插件,如果后台查找没有记录,不能返回null,要返回一个空数组,不然会报错:data is null 空数组形式为(firefox调试输出):{"items":[ ...

  3. 浅析Entity Framework Core2.0的日志记录与动态查询条件

    前言 Entity Framework Core 2.0更新也已经有一段时间了,园子里也有不少的文章.. 本文主要是浅析一下Entity Framework Core2.0的日志记录与动态查询条件 去 ...

  4. Lucene.net(4.8.0) 学习问题记录五: JIEba分词和Lucene的结合,以及对分词器的思考

    前言:目前自己在做使用Lucene.net和PanGu分词实现全文检索的工作,不过自己是把别人做好的项目进行迁移.因为项目整体要迁移到ASP.NET Core 2.0版本,而Lucene使用的版本是3 ...

  5. Lucene.net(4.8.0) 学习问题记录六:Lucene 的索引系统和搜索过程分析

    前言:目前自己在做使用Lucene.net和PanGu分词实现全文检索的工作,不过自己是把别人做好的项目进行迁移.因为项目整体要迁移到ASP.NET Core 2.0版本,而Lucene使用的版本是3 ...

  6. Video Test Pattern Generator(7.0)软件调试记录

    Video Test Pattern Generator(7.0)软件调试记录 . XVidC_VideoMode XVIDC_VM_576_50_I = XVIDC_VM_720x576_50_I ...

  7. manjaro xfce 18.0 踩坑记录

    manjaro xfce 18.0 踩坑记录 1 简介1.1 Manjaro Linux1.2 开发桌面环境2 自动打开 NumLock3 系统快照3.1 安装timeshift3.2 使用times ...

  8. hive Hive 2.0函数大全(中文版)(转)

    转自:https://www.cnblogs.com/MOBIN/p/5618747.html#1 摘要 Hive内部提供了很多函数给开发者使用,包括数学函数,类型转换函数,条件函数,字符函数,聚合函 ...

  9. mysql 8.0.18 手工安装记录

    mysql 8.0.18 手工安装记录 为了日常方便,特记录如下. 一.安装系统依赖包 #.系统依赖包安装 yum -y install make gcc-c++ cmake bison-devel ...

随机推荐

  1. c++第四次作业:继承

    继承与派生 基本概念和语法 概念 继承与派生是同一过程从不同角度看 保持已有的特性而构造新类的过程称为继承. 在已有类的基础上新增自己的特性而产生新类的过程为派生. 被继承的已有类称为基类(父类) 派 ...

  2. Launch configuration JUnitCore references non-existing project XXX.

  3. Javascript 用来验证电话号码的正则

    Javascript 用来验证电话号码的正则 在学习 Javascript 时学习到的. function telephoneCheck(str) { // return /^(1\s?)?(\d{3 ...

  4. python if 选择结构

  5. oracle函数 round(d1[,c1])

    [功能]:给出日期d1按期间(参数c1)四舍五入后的期间的第一天日期(与数值四舍五入意思相近) [参数]:d1日期型,c1为字符型(参数),c1默认为j(即最近0点日期) [参数表]:c1对应的参数表 ...

  6. oracle函数 COALESCE(c1, c2, ...,cn)

    [功能]返回列表中第一个非空的表达式,如果所有表达式都为空值则返回1个空值 [参数]c1, c2, ...,cn,字符型/数值型/日期型,必须类型相同或null [返回]同参数类型 [说明]从Orac ...

  7. Python基础:22__slots__类属性

    1:工厂函数 由于类型和类的统一,因而可以子类化Python数据类型.但是所有的Python 内建的转换函数现在都是工厂函数.当这些函数被调用时,你实际上是对相应的类型进行实例化.比如下面的函数都已经 ...

  8. UIImageView xib里面拉伸图片技巧

    拉伸图片的时候代码里和xib里面的图片名字去掉@2x,但是原始图片文件得要xxx@2x.png The X and Y values seem to be the positions for the ...

  9. Linux 运算符

    布尔运算符 下表列出了常用的布尔运算符,假定变量a为10 变量b为20: 运算符  说明 举例 ! 非运算 , 表达式为true 则返回false 否则返回true  [!false] 返回true. ...

  10. @noi.ac - 490@ game

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 小 Q 和小 T 正在玩一种双人游戏.m 张木牌从左往右排成一排 ...