carbondata与mysql_Apache CarbonData 1.4.0 中文文档

故障排除

本教程旨在为正在构建,部署和使用 CarbonData 的用户和开发人员提供故障排除。

当加载数据时,遇到 tablestatus.lock 问题:

现象

17/11/11 16:48:13 ERROR LocalFileLock: main hdfs:/localhost:9000/carbon/store/default/hdfstable/tablestatus.lock (No such file or directory)

java.io.FileNotFoundException: hdfs:/localhost:9000/carbon/store/default/hdfstable/tablestatus.lock (No such file or directory)

at java.io.FileOutputStream.open0(Native Method)

at java.io.FileOutputStream.open(FileOutputStream.java:270)

at java.io.FileOutputStream.(FileOutputStream.java:213)

at java.io.FileOutputStream.(FileOutputStream.java:101)

可能原因

当你创建 carbonsession 时使用 作为存储路径,你可能会遇到这种错误,因为默认的锁类型是 LOCALLOCK。

处理

创建 carbonsession 之前,进行如下设置:

import org.apache.carbondata.core.util.CarbonProperties

import org.apache.carbondata.core.constants.CarbonCommonConstants

CarbonProperties.getInstance().addProperty(CarbonCommonConstants.LOCK_TYPE, "HDFSLOCK")

加载 thrift 类库失败

现象

Thrift 抛出以下异常 :

thrift: error while loading shared libraries:

libthriftc.so.0: cannot open shared object file: No such file or directory

可能原因

包含类库目录的完整路径没有被正确配置。

处理

启动 Spark Shell 失败

现象

shell 提示以下的错误 :

org.apache.spark.sql.CarbonContext$$anon$$apache$spark$sql$catalyst$analysis

$OverrideCatalog$_setter_$org$apache$spark$sql$catalyst$analysis

$OverrideCatalog$$overrides_$e

可能原因

Spark 版本和编译 Carbondata 指定的 Spark 配置不匹配。

处理

请确保 Spark 版本和编译 Carbondata 指定的 Spark 配置匹配。

使用以下命令 :

"mvn -Pspark-2.1 -Dspark.version {yourSparkVersion} clean package"

注意 : 避免直接使用 "mvn clean package" 而不指定配置参数。

无法在集群上执行加载查询.

现象

加载查询时遇到以下异常:

Dictionary file is locked for updation.

可能原因

集群中所有节点上 carbon.properties 文件可能不一致。

处理

按照下面步骤确保所有节点上的 carbon.properties 文件一致:

将 master 节点上的 carbon.properties 文件复制到集群中其他所有节点上。

比如, 你可以使用 ssh 将该文件复制到所有节点上。

为了使修改生效,重启 Spark 集群。

无法在集群上执行插入查询.

现象

插入查询时遇到以下异常:

Dictionary file is locked for updation.

可能原因

集群中所有节点上 carbon.properties 文件可能不一致。

处理

按照下面步骤确保所有节点上的 carbon.properties 文件一致:

将 master 节点上的 carbon.properties 文件复制到集群中其他所有节点上。

比如, 你可以使用 scp 将该文件复制到所有节点上。

为了使修改生效,重启 Spark 集群。

无法通过 thrift 连接到 hiveuser

现象

遇到以下异常 :

Cannot connect to hiveuser.

可能原因

外部进程没有访问权限。

处理

确保 mysql 中的 Hiveuser 能够允许访问外部进程。

无法在创建表时读取 Metastore 数据库。

现象

我们在尝试连接时遇到以下异常 :

Cannot read the metastore db

可能原因

元数据库可能出现功能障碍。

处理

从 Spark 目录的 carbon.metastore 中删除 metastore db。

无法在集群上加载数据

现象

数据加载时遇到以下异常 :

Data Load failure exception

可能原因

下面原因可能导致这个异常 :

集群中所有节点上的 core-site.xml、hive-site.xml、yarn-site 以及 carbon.properties 等文件可能不一致。

carbon.properties 中关于 hdfs ddl 没有正确的配置。

处理

按照下面步骤确保所有节点上的配置文件一致:

将 master 节点上的 core-site.xml、hive-site.xml、yarn-site 以及 carbon.properties 文件复制到集群中其他所有节点上。

比如, 你可以使用 scp 将该文件复制到所有节点上。

注意 : 在主节点的 carbon.properties 中设置好 hdfs ddl 路径。

为了使修改生效,重启 Spark 集群。

无法在集群上插入数据

现象

数据插入时遇到以下异常 :

Data Load failure exception

可能原因

下面原因可能导致这个异常 :

集群中所有节点上的 core-site.xml、hive-site.xml、yarn-site 以及 carbon.properties 等文件可能不一致。

carbon.properties 中关于 hdfs ddl 没有正确的配置。

处理

按照下面步骤确保所有节点上的配置文件一致:

将 master 节点上的 core-site.xml、hive-site.xml、yarn-site 以及 carbon.properties 文件复制到集群中其他所有节点上。

比如, 你可以使用 scp 将该文件复制到所有节点上。

注意 : 在主节点的 carbon.properties 中设置好 hdfs ddl 路径。

为了使修改生效,重启 Spark 集群。

多个用户无法在表上执行并发操作(加载,插入,更新)

现象

运行时遇到以下异常:

Table is locked for updation.

可能原因

不支持并发。

处理

用户必须等待查询执行完成,并且确保该表的锁被释放,以便其他查询能够执行成功。

无法创建拥有单个数字类型列的表格

现象

运行时遇到以下异常 :

Table creation fails.

可能原因

不支持这种行为

处理

创建表格必须提供一个维度列。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/346432.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用混合多云每个人都应避免的3个陷阱(第4部分)

每天都在肆意宣传云,但每个人都应避免三个陷阱。 从云,混合云到混合多云,您被告知这是确保业务数字化未来的一种方式。 您必须做出的这些选择不会排除提高客户体验和敏捷交付这些应用程序的日常工作。 让我们开始一段旅程,仔细研…

mysql语句使用_Mysql基本使用语句

数据库端口号:Mysql:3306 Orasle:1521 Sqlserver:1443DML: 数据操作语言(检索或者修改数据)DDl:数据定义语言(定义数据结构,比如创建、修改或删除数据库的对象)DCl:数据控制语言(用于定义数据库用户的权限)DML&#xf…

python getattr_Python中的getattr()函数详解:

标签:Python中的getattr()函数详解:getattr(object, name[, default]) -> valueGet a named attribute from an object; getattr(x, ‘y‘) is equivalent to x.y.When a default argument is given, it is returned when the attribute doesn‘texist; without …

python内核死亡的原因_Python的内核由于DLL而死亡

对于机器学习课程,我正在用python做练习。我们的作业必须使用Jupyter笔记本。虽然这在我的笔记本电脑和我的办公桌上运行得很好,但我不能在家里的桌面上运行任何东西。在因为我不确定是否允许我发布给我们的样板代码,我不会这样做。但无论如何…

Java,JavaFX的流畅设计风格拨动开关

嗨,这次我将在新版本的JMetro中讨论新的Toggle Switch样式。 拨动开关是一种近年来变得非常流行的控件。 我前一段时间在ControlsFX库中添加了JavaFX实现。 刚刚发布的JMetro版本4.1中提供了此新样式。 什么是拨动开关 在以前的文章中,我谈到了切换开…

python登录页面_Python:简单的登陆GUI界面

import tkinterimport sysimport retop tkinter.Tk()top.geometry(‘400x170350150‘)top.wm_title(‘综合实例‘)def validateText():val entry1.get()if re.findall(‘^[0-9a-zA-Z_]{1,}$‘,str(val)):return Trueelse:label3[‘text‘] ‘用户名只能包含字母、数字、下划…

python解析多层嵌套json_Python爬虫解析多个嵌套JSON,多级,json

Python爬虫解析多级嵌套json最近刚接触Python爬虫,正好最近肺炎在全国蔓延,所以准备从网站爬取肺炎实时数据,并解析自己想要的数据。获取json数据网址为 https://m.look.360.cn/events/feiyan爬取网址:def main():urlhttps://m.lo…

python __call__一般用在哪些地方_Python __call__内置函数的作用和用法

开学了进入了实验室,需要协助大师兄做事,主要是OpenStack中的代码解析,但是涉及很多python高级用法,一时间有点麻烦,在做项目的同时慢慢更新博客。这次先写一下__call__的用法,因为经常看到它却不知道到底是…

如何使用vps 异地组网_使用ZEROTIER异地组建内网(局域网)

一、注册账号(该网站打开比较慢,但并不影响组网后的网速)二、建立虚拟局域网网(获取Network ID)1.选择菜单栏的Networks菜单2.选择创建网络3.注意获取到的Network ID(需要在每台组网的电脑上加入这个network id)4.大部分设置默认就可以了.三、下载软件点菜单中的Dow…

编写一个watchdog.sh脚本_五大原因!为何要将Jupyter Notebook转换为python脚本?

全文共3360字,预计学习时长9分钟图源:unsplash大多数数据科学在线课程都把Jupyter Notebook作为教学媒介,这是因为初学者在Jupyter Notebook的单元格中编写代码,比编写包含类和函数的脚本更容易。另一个原因在于它使浏览和绘制数据…

how2java_HOW-TO:在Spring 4和Java 7中使用@PropertySource批注

how2java今天,我将我当前正在从事的项目之一迁移到了Spring 4.0。 由于它是我用来学习和演示Spring功能的非常简单的Web应用程序,因此只需要更新项目的POM文件并更改Spring版本。 我将项目部署到Tomcat 7服务器,显然该应用程序未启动。 我在I…

掌握java_如何才算掌握Java,大家都掌握到什么程度

如何才算掌握Java SEjava SE基础课程在朗沃算是学完了,但真正的掌握了么?如何才算掌握了呢?目前已经进入了JavaWEB阶段的项目阶段,把这个问题提出来,是很好的一个时间,那么有没有一些参照觉得学Java基础部分…

IBM将收购Red Hat:面向Java的初衷

甲骨文公司近九年前完成了收购Sun Microsystems的过程。 那是当时的大新闻,今天也宣布了类似的大新闻: IBM和Red Hat已同意IBM收购Red Hat 。 IBM主页面宣布“ IBM收购Red Hat”。 然后它说:“这将改变一切。” 这项宣布的收购很可能会使许多…

java 多线程 总结_Java 多线程总结

昨天熬了个通宵,看了一晚上的视频,把java 的多线程相关技术重新复习了一遍,下面对学习过程中遇到的知识点进行下总结。首先我们先来了解一下进程、线程、并发执行的概念:进程是指:一个内存中运行的应用程序&#xff0c…

python存文件的模块_python模块之StringIO/cStringIO(内存文件)

1. StringIO/cStringIO是什么这个模块提供了一个类,这个类的实例就像是一个文件一样可以读写,实际上读写的是一个字符串缓存,也可以称之为内存文件。StringIO和文件对象拥有共同的父类IOBase,因此方法基本上都是一致的&#xff0c…

性能测试脚本的编写和调试_编写自动调试器以在测试执行期间捕获异常

性能测试脚本的编写和调试以前,我曾说过, 您总是想保留一些调试器断点作为例外 。 这有助于防止代码在不注意的情况下腐烂掉,有时掩盖了另一个问题。 如果您认真对待这一点,那么最好将此想法扩展到自动化测试中。 但是想出一个全…

python自由职业可以做什么_我想成为自由职业者,但不知道做什么?

我想成为自由职业者,但不知道做什么?这其实是就是个人定位的问题,自由职业的第一步,就得先解决这个问题。下面我从3个维度,通过5个步骤,说一下如何成为一名自由职业者,你看完就知道马上该怎么去…

基本服务-使用大使网关

这是我对Knative服务进行实验的延续,这次是围绕在Knative服务应用程序之上构建网关。 这是基于我之前的两篇文章- 使用Knative部署Spring Boot App以及在Knative中进行服务到服务的调用 。 为什么在Knative应用程序之上使用网关 为了解释这一点,让我谈谈…

mysql function 表名作为参数_mysql 常用的分组聚合函数

mysql 常用的分组聚合函数1.聚合运算一般情况下,需要的聚合数据(和,平均值,最大,最小等)并不总是存储在表中,但是可以执行存储数据的计算来获取它.根据定义,聚合函数对一组值执行计算并返回单个值.MySQL提供了许多聚合函数,包括AVG,COUNT,SUM,MIN,MAX等.除COUNT函数外,其它聚合…

java加减乘除运算顺序_java 实现加减乘除混合运算

初衷:解决小学一年级到四年级 基本加减乘除混合运算基本思路:表达式:10032-200(10000/5(100/2))此类表达式我们称之为中缀表达式(运算符在数字的中间),如果我们稍加转换,转化为100, 3, , 2, , 200, -, 10000, 5, /, 100, 2, /, , …