- 博客(23)
- 资源 (10)
- 收藏
- 关注
原创 spark3.5.1与HDP平台集成
yarn执行节点所有目录必须包含 /usr/hdp/current/spark2-client/standalone-metastore/standalone-metastore-1.21.2.3.1.4.0-315-hive3.jar。将hdp原来的spark2配置文件拷贝过来即可,包括spark-defaults.conf和hive-site.xml文件拷贝到spark的conf文件夹下。
2024-03-19 16:46:04
299
原创 flink与HDP平台适配
flink1.12.1和hive3.1.2的漫长集成之旅开篇絮叨背景问题定位源码编译准备下载配置maven源配置版本配置编译问题缺少依赖HIVE版本骂个街开篇絮叨背景 垂青于阿里吹捧的流批一体,迫不及待下载了flink1.12.1,按照flink的官方教程,下载了依赖包, 放进了lib文件夹,一个命令跑起来,结果就报了“NoSuchMethodError: com.google.common.base.Preconditions.checkArgument” 这个让我废寝忘食了一个星期
2021-01-27 15:38:17
1416
2
原创 solr的安装和配置
solr的安装和配置背景部署下载配置解压配置启动注意背景apache atlas和apache ranger都需要使用solr作为审计存储组件,这篇文章整理下solr的部署。solr的版本号是8.3.0部署下载// An highlighted blockwget http://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/8.3.0/solr-8.3.0-src.tgz配置解压// An highlighted blocktar zx
2020-10-15 11:45:27
194
原创 apache ranger的hive插件在CDH平台中的适配
apache ranger的hive插件在CDH平台中的适配问题描述解决方案问题描述我使用的是CDH6.3.0,本来hive版本是2.2.1,后来升级为3.1.2。我们希望使用apache ranger作为权限控制组件。根据教程,发现hiveserver2启动失败,报不能读取ranger的配置文件。查看可知,配置文件生成到指定的目录下,但是CDH服务每次的配置目录是变化的,所以hiveserver2启动失败的原因是因为配置文件读取不到。根据: 《CDH大数据平台集成Apache Ranger安全管理
2020-10-12 16:11:10
1051
原创 apache ranger编译
apache ranger编译背景改动修改项目目录下pom.xml添加npm和node的内网下载地址,要不下载太慢编译背景我需要在cdh中使用apache ranger来做权限控制,需要自己编译一份apache ranger 来部署服务。CDH版本是6.3.0,apache ranger版本使用的是3.0.0,不建议使用ranger 2.1.0,编译一直不成功。改动修改项目目录下pom.xml在repositories节点下添加:// An highlighted block<repos
2020-10-10 10:07:31
572
1
原创 apache ranger usersync不能同步用户
apache ranger usersync不能同步用户问题源码解决问题打算使用apache ranger作为大数据集群的权限管理工具,部署好ranger-admin和ranger-usersync,设置同步用户源为unix,但是一直不能成功。所幸是开源软件,打开代码,研究代码,最终解决问题。源码// 同步是根据config.isUserSyncEnabled()方法控制的 private void syncUserGroup() throws Throwable { UserGroupSyn
2020-09-29 10:22:06
2091
原创 CDH集群的hive升级
简介我们的CDH集群使用的是6.3.0版本,默认的hive版本是2.1.1,在使用过程中发现presto创建的orc表,在hive中查询报错,在spark中查询不到数据。但hive或者spark生成的orc表,presto可正常使用。因为需要使用apache atlas,故升级了hive到3.1.2,发现hive中可正确查询presto生成的orc表,但spark依然查询不了,肯定了是hive版本导致的问题,排查以后,替换spark目录下hive目录下的hive的jar包,就可以正确查询presto生成的
2020-09-23 09:53:57
4099
15
原创 部署yanagishima纪实
部署yanagishima纪实简介Gradle安装Node.js安装下载源码并编译修改yanagishima的配置文件yanagishima的启停简介 yanagishima 是presto的一个客户端web工具,目前支持相对较好,部署一下。Gradle安装// A code block# 下载Gradlewget http://services.gradle.org/distributions/gradle-5.6.2-bin.zip mv gradle-5.6.2-bin.zip
2020-09-22 14:06:22
3258
7
原创 apache atlas编译坑
apache atlas编译坑简介maven配置frontend-maven-plugin配置maven-site-plugin插件配置结语简介 元数据管理是数仓的重要组成部门,一直在寻找一个开源的元数据管理系统,知道遇见apache atlas。 网上碰到的教程让我欣喜若狂,知道自己上手,遇到一堆坑。这篇文章写在上手的第三天,希望能帮到现在以及以后遇到这些坑的同学,对现在网上那些教程的作者致以崇高的鄙视。 apache atlas的编译严重依赖网络速度,或者说网络速度是编译成功的关键。
2020-08-26 11:06:47
622
原创 presto配置
presto配置hive数据源权限控制分区hive数据源// connector.name=hive-hadoop2记得还有其他几种类型,查不到了,官网也没找到说法。// hive.metastore.uri=thrift://mycbigdatan02:9083hive metastore的地址// hive.config.resources=/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xmlhdfs的配置文件
2020-07-31 15:05:39
307
1
原创 presto编译部署
presto编译部署背景环境准备maven安装maven配置国内源下载presto-0.224下载oracle插件下载编译编译presto编译Oracle插件部署背景新公司需要部署大数据平台做一个数仓,经过调研,决定使用presto作为ETL和OLAP工具,需要支持Oracle,MySQL,SQLServer等多数据源。这里比较特殊的是对Oracle的支持,presto本身不带Oracle插件,需要自己实现。网上找了个比较新的版本,是对presto-0.224版本的支持,决定暂时使用presto-0.2
2020-07-29 15:39:56
820
原创 docker单机部署mongodb
docker单机部署mongodb简介部署安装docker-compose编写yaml文件初始化数据的脚本部署简介在做项目需要用到mongodb来存储设备的心跳日志,因为其他组件都是用的docker部署,所以mongodb也使用docker单机部署。部署过程很简单,但是使用的时候总是提醒心跳库使用的用户名密码校验失败,因为mongodb需要开启登陆验证,但是初始化过程中并没有创建初始的数据库,...
2020-04-09 14:36:31
456
原创 centos下离线部署小技巧
centos下离线部署小技巧简介下载安装简介运维部署过程中经常遇到需要离线部署的时候,这时候需要先将软件包下载下来携带到离线环境再部署。今天分享一下centos下离线部署这个过程。下载首先需要下载所需的软件包。// 下载 yum install --downloadonly --downloaddir=指定目录 软件名称如果centos没有downloadonly插件,需要先安装插...
2020-04-09 10:08:47
167
原创 unsigned 类型减法注意点
新年第一天,执行新年计划,每日一记,大小皆宜。 今天碰到一个小问题,不引人注目,却也会是个大坑,留下警示自己吧。 代码中有两个unsigned int相减的公式: unsigned int a = 1; unsigned int b = 2; 那么 int c = a - b;等于多少呢? 一个小细节,都以为是-1,没问题!!!
2015-02-25 17:23:20
2753
原创 进程和线程的区别
进程和线程的差别:答:线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行(3)拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源. (4)系统开销:在创建或撤消进程时,由于系统都
2014-03-05 13:46:28
420
原创 jquery选择器用法总结
jquery最核心的是查询功能,下面对jquery选择器总结一下(版本是1.9)。 一、 基础选择器 (1)*号选择器,获取所有元素。例:$("*")。 (2)class选择器。例:$(".classname")。 (3)id选择器。例:$(“#id”)。 (4)多个选择器的集合。 例:$("div, span, p, .cl
2013-08-14 15:35:02
706
原创 我的第一次面试准备工作
老总给我一个任务,让我下个星期一去面试一个人,据说申请的是产品架构师,颇多压力啊,原因下面慢慢道来。 原因一,自身原因。产品架构师诶,能有胆申请这一职业的怎么地也有五年以上工作经验了吧,你说我这C++工作经验三年零头的多少是不是应该忐忑一下。虽然这一行当可能真有些许滥竽充数之辈,毕竟是技术行业,能熬上这些年,技术知识的积累必然也是我所不能及的。 原因二,怎么测技术水
2013-04-21 20:02:06
573
原创 谈谈你对面向对象编程的认识
这是京东的一个面试题,我来谈谈我对面向对象编程的认识。 面向对象编程的三个经典解释是封装,继承和多态。我也以这三个方面阐述我对面向对象编程的认识。 封装从思想上来说是以一个对象来看待我们要处理东西。比如说一个公司的员工管理系统,管理的是一个个员工。一个员工在一个公司应该有一个唯一的工号(这是公司管理需要),员工应该有姓名,员工有自己的性别,员工每个月的工资,员工的职务,
2013-04-07 15:49:57
1094
原创 c++类型重复定义的问题
公司有一套自己的完整的代码风格,几乎成了一套新的语言,虽然还是c++,但是基本看不到C++的底层实现。 虽然方便了开发,很多东西比如指针指向对象的删除,单例,字符串处理都不用去担心。只是一不小心碰到了很基本的错误,却是非常的头疼。 开发过程中写一个类习惯了拷贝一个现成的类,改改,实现逻辑,补充完代码基本上就好了。今天闲着,将一些工具函数封装成了一个类,自己写得,没有拷贝。写
2011-11-22 20:51:04
776
原创 python 类的析构问题
在练习python的时候遇到一个问题,请教大家。 先贴代码: class Person: population = 0 def __init__(self, name): self.name = name print "Add name", self.name Person.population += ...
2011-10-17 10:30:08
155
原创 linux 下用C++ 对gsm modem编程
各位帮个忙,充网上找了个程序,可以运行,但是在用pdu格式发送中文时AT指令的最后一步CTRL+Z在程序中该怎么表示啊?网上搜遍了,都没说清楚,谢谢大家了!...
2010-10-29 09:02:47
160
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人