
Hadoop/Spark/Hive
文章平均质量分 51
爱知菜
Renjie Wei
展开
-
腾讯云EMR HUE集成impala 小记
集群背景情况:集群使用了kerberos和openldap。第一步:登录到集群hue所在的master节点。将当前用户切换成hue进程的执行用户。比如默认是hadoop。su - hadoop第二步:向hue注册impala这个应用,执行:/usr/local/service/hue/tools/app_reg/app_reg.py install /usr/local/service/hue/apps/impala第三步:配置/usr/local/ser原创 2021-10-19 11:44:53 · 407 阅读 · 0 评论 -
腾讯云EMR HUE Openldap 配置
腾讯云EMR开启后,默认配置HUE的权限系统是独立的,并没有和Openldap联通,无法使用Ranger管理HUE的权限。以下记录HUE开启Openldap过程:1. 在集群服务/HUE中找到 pseudo-distributed.ini 文件的配置界面:2. 修改如下配置项:desktop_auth_backenddesktop_ldap_base_dndesktop_ldap_bind_dndesktop_ldap_bind_passworddesktop_ldap_c原创 2021-09-29 12:05:36 · 504 阅读 · 0 评论 -
在centos上用mysql作数据库 搭建airflow
注意点:1. airflow 默认用sqlite作数据库,2.0版本的airflow对sqlite的版本要求较高(>3.15)2. airflow可以不用sqlite,用其他数据库3. 环境变量 "AIRFLOW_HOME" 很重要,执行airflow命令时,读取配置文件的路径就是根据该环境变量确定。建议配置到 /etc/profile4. 根据你python的版本要下一个constraints-X.X.txt的文件,用于安装。以下假设AIRFLOW_HOME=/opt/ai.原创 2021-05-08 17:35:06 · 235 阅读 · 0 评论 -
impyla 查询 列数太多不能返回的解决办法
conn = connect(host='172.16.26.16', port=31050, user='xxxx', password='xxxx', auth_mechanism='LDAP', timeout=timeout)cur = conn.cursor()cur.arraysize = 1cur.execute(sql)通过 cur.arraysize = 1 调整buffer大小,来解决这个情况原创 2021-03-01 19:38:48 · 304 阅读 · 0 评论 -
CDH 添加 新节点 拾遗
1. 查询repository的http地址: 找一台master节点运行如下命令。cat /etc/yum.repos.d/cloudera*原创 2020-08-04 15:41:10 · 186 阅读 · 0 评论 -
spark 运行概念和关键参数
1.num-executors参数说明:该参数用于设置Spark作业总共要用多少个Executor进程来执行。Driver在向YARN集群管理器申请资源时,YARN集群管理器会尽可能按照你的设置来在集群的各个工作节点上,启动相应数量的Executor进程。这个参数非常之重要,如果不设置的话,默认只会给你启动少量的Executor进程,此时你的Spark作业的运行速度是非常慢的。参数调优...原创 2020-01-02 18:11:20 · 263 阅读 · 0 评论 -
spark 运行 xgboost 脱坑记
坑:Spark Xgboost 对 spark的dataframe 的空值非常敏感,如果dataframe里有空值(null , “NaN”),xgboost就会报错。 Spark2.4.4 的 Vector Assemble转换dataframe以后,对于0很多的行,会默认转成sparse vector,造成xgboost报错示例代码:val schema = new Struct...原创 2019-12-30 18:01:47 · 1227 阅读 · 0 评论 -
Spark Xgboost 分布式运行原理
参考xgboost官网文章:https://xgboost.readthedocs.io/en/latest/jvm/xgboost4j_spark_tutorial.htmlParallel/Distributed TrainingThe massive size of training dataset is one of the most significant characteri...转载 2019-12-26 14:43:10 · 884 阅读 · 0 评论 -
使用 pyarrow 将parquet转成spark能用的parquet
最近发现spark的一个坑(发现时spark最新为2.4.4版本),spark对parquet格式有特殊要求,不支持带“uint8”类型的parquethttps://github.com/apache/arrow/issues/1470如何使用pyarrow把一个parquet转换一下呢?import pyarrow.parquet as pqdf=pq.read_table('...原创 2019-12-06 18:43:51 · 1701 阅读 · 0 评论 -
spark query hive and save as libsvm
以下示例代码使用 spark 查询 hive并把结果存储为 libsvm 格式:from pyspark import SparkConf,SparkContext from pyspark.sql import HiveContext hc = HiveContext(sc)df = hc.sql("select product_key,plu_id from test limi...原创 2019-11-07 14:46:14 · 992 阅读 · 0 评论 -
CDH 下 impala-shell 的使用 (输出csv, 中文ascii错误)
使用impala-shell 导出csv数据的命令行:impala-shell -i impalad.server -k --output_delimiter="," -B -f query.file -o output.csv中文乱码问题:UnicodeEncodeError:'ascii'codeccan'tencodecharactersinposition...原创 2019-10-23 11:06:54 · 1305 阅读 · 1 评论 -
企业级大数据的安全方案 & Kerberos 的 expire 及 renew说明
企业级大数据集群有两个层面的安全系统:一个是每一台服务器的本地有个linux的账户系统,这个可以批量处理配置。为每个服务器建立一个本地的账号和组。用这个账号去SSH登录。另一个就是大数据集群,即Hadoop的账号系统,是Hadoop通过 Kerberos 协议实现的。Kerberos是一个协议,而具体实现这种协议的组件有几个,一般比较广泛使用的是FreeIPA(顾名思义:免费的)。所以在每...原创 2018-12-04 18:38:42 · 1497 阅读 · 0 评论 -
CDH 大数据疑难解决一则
起因: Hive查询变慢观察: Cloudera Manager中某个Datanode报错, Health Chart每隔几分钟有红色不健康状态观察日志: 在 /data/log/hadoop-hdfs/hadoop-cmf-hdfs-DATANODE-dw-slave01-te.uniqlo-test.cn.log.out 中发现大量日志警告, 带有"Force-closing" , ...原创 2018-11-02 17:44:51 · 633 阅读 · 0 评论 -
Pentaho Kettle 连接 CDH Hive (No suitable driver found for jdbc:hive2 错误解决方法)
关键点:清理Kettle缓存:rm -rf /home/user/data-integration/./system/karaf/cachesrm -rf /home/user/data-integration/./system/karaf/datakaraf 是Kettle用于实现插件的一个组件, 比如一些大数据有关的shim都算做kettle的插件配置Kettl...原创 2018-09-28 17:39:37 · 9210 阅读 · 2 评论 -
大数据备份 -- CDH 向 Azure Storage 备份HDFS
转自: https://blogs.msdn.microsoft.com/pliu/2016/06/19/backup-cloudera-data-to-azure-storage/ Azure Blob Storage supports an HDFS interface which can be accessed by HDFS clients using the syntax w...转载 2018-09-28 10:07:10 · 561 阅读 · 0 评论 -
一句命令行 判断hive CDH 版本
locate */hive/lib/hive*jar转自: https://blog.youkuaiyun.com/sinat_27339001/article/details/78438947 locate */hive/lib/hive*jar | grep hive-exec转载 2018-09-27 18:33:44 · 1027 阅读 · 0 评论 -
Difference between orc and parquet format
参考:https://www.cnblogs.com/ITtangtang/p/7677912.htmlhttps://blog.youkuaiyun.com/yu616568/article/details/51868447https://hortonworks.com/blog/orcfile-in-hdp-2-better-compression-better-performance/...转载 2018-09-14 17:28:17 · 186 阅读 · 0 评论 -
大数据Map Reduce 和 MPP数据库 的区别
下面在这篇文章里对MR的解释很好,从原理的角度出发,mapreduce其实就是二分查找的一个逆过程,不过因为计算节点有限,所以map和reduce前都预先有一个分区的步骤.二分查找要求数据是排序好的,所以Map Reduce之间会有一个shuffle的过程对Map的结果排序. Reduce的输入是排好序的.https://blog.youkuaiyun.com/dreamy_lin/arti...原创 2018-09-06 16:37:19 · 13087 阅读 · 1 评论 -
大数据OLAP Kylin
在传统的关系型数据库中通过预计算预缓存来实现OLAP分析查询并不新鲜, 微软的SSAS就是典型的代表.不过由于SSAS在国外兴起的时候, 国内的大公司还没有意识到SSAS对于企业管理和业务支持的作用, 加上SSAS的正版售价问题. 这项技术在中国国内并不是很流行.现在大数据炙手可热, 通过预计算预缓存的手段来提高大数据的OLAP能力变得自然而然. 于是Kylin应运而生.Kylin的默...原创 2018-09-05 15:32:55 · 842 阅读 · 0 评论 -
Hortonworks Yarn Logs
hortonworks hadoop conf path:/etc/hadoop/conf/hortonworks 没有$HADOOP_HOME这个环境变量, 但有$SPARK_HOME(/usr/hdp/current/spark2-client), /usr/hdp/current/spark2-client/conf 为其配置目录 Spark logs:The d...原创 2018-07-25 22:44:50 · 403 阅读 · 0 评论 -
Hive Transaction
http://www.aboutyun.com/thread-21615-1-1.html好文章 Hive从0.13开始加入了事务支持,在行级别提供完整的ACID特性,Hive在0.14时加入了对INSERT...VALUES,UPDATE,and DELETE的支持。对于在Hive中使用ACID和Transactions,主要有以下限制: 不支持BEGIN,COMMIT和R...转载 2018-07-11 21:56:55 · 838 阅读 · 0 评论 -
PageRank 算法 Spark实现(Scala + Python)
转自: https://plmsmile.github.io/2017/03/13/Spark-PairRDD/PageRankPageRank的python版本12345678910111213141516171819202122232425262728293031323334353637383940414243...转载 2018-06-28 16:34:58 · 2199 阅读 · 0 评论 -
MapReduce 中用于划分数据的那些函数 以及它们在streaming中的实现
MapReduce中有三个步骤用于划分大数据集, 给mapper和reducer提供数据InputSplit第一个是InputSplit, 它把数据划分成若干块提供给mapper默认情况下是根据数据文件的block, 来划分, 一个block对应一个mapper, 优先在block所在的机器上启动mapper如果要重构这个 InputSplit 函数的话, 要去 InputFormat 里重构 g...原创 2018-07-10 17:25:47 · 962 阅读 · 0 评论 -
hive 使用 beeline 执行hql传参数; hive 使用distcp 和 MSCK 进行hive数据库迁移
beeline 命令-u 指定链接-e 指定hql-f 指定hql文件--hiveconf 指定传参数, 参数在hql里形如 ${hiveconf:var}, 要有hiveconf:前缀jdbc='jdbc:hive2://bd-master01-pe2.f.cn:10000/default;principal=hive/bd-master01-pe2.fastretail...原创 2018-12-21 18:34:07 · 4012 阅读 · 0 评论 -
Lambda 架构 Batch Layer & Serving Layer 详解
前文链接: https://blog.youkuaiyun.com/rav009/article/details/85690985继续介绍 Lambda结构 一些理念:fact-based model在关系型数据库的时代,我们通过维度表和事实表来组成数据仓库。但是到了大数据时代,由于数据的容量不再受到限制,我们可以大胆的使用事实表来作为数据仓库的基础。这并不是说要取消维度表,而是说维度表用的少了,...原创 2019-01-03 16:16:03 · 766 阅读 · 0 评论 -
ubuntu16+virtualbox 安装 hadoop(共享目录, tar, 改主机名hostname)杂记
VirtualBox虚拟机访问windows上的共享目录, 参考下面的链接:http://www.cnblogs.com/xing901022/p/5774677.html简单来说就是安装一个增强功能(菜单栏里, 设备->安装增强功能),然后在ubuntu弹出的文件夹窗口里执行命令行语句:sudo ./VBoxLinuxAddtion.run再mount之前在virtualbox里配置好的共...原创 2017-05-09 12:37:53 · 824 阅读 · 0 评论 -
xgboost(1.0) yarn(附CDH 5.14的个人心得)
个人心得(CDH5.14,心得是对下文转载步骤的补充):CDH5.14的config.mkconfig.mk的配置要改成如下:USE_HDFS = 1HDFS_LIB_PATH = /home/user/xgboost/xgboost-package/libhdfs/libHADOOP_HOME = /opt/cloudera/parcels/CDHHADOOP_HDFS_HO...原创 2019-09-05 22:54:04 · 421 阅读 · 0 评论 -
kerberos的tgt时间理解
之前在impala集成kerberos时,遇到了时间相关的问题,当时没有做充分的测试,对某些理解有些问题(http://caiguangguang.blog.51cto.com/1652935/1381323),今天正好做了下测试,总结如下:1.klist中expires以及renew until是由client端的/etc/krb5.conf配置文件中的参数决定(在没有超过max的情况...转载 2019-09-03 18:00:25 · 2416 阅读 · 0 评论 -
在CDH 上 调通 Zeppelin 与 Spark
坑点:CDH的spark home其实在 /opt/cloudera/parcels/SPARK2-2.1.0.cloudera2-1.cdh5.7.0.p0.171658/lib/spark2/bin一定要找那个有spark-class.sh文件的目录。spark-submit.sh其实调用的是spark-class.sh.配置SPARK_HOME到zeppelin-env.sh...原创 2019-08-28 19:24:58 · 816 阅读 · 0 评论 -
Windows 上创建MIT Kerberos票据
安装完MIT Kerberos的客户端后,krb5的目录是一个隐藏的目录,这点很恶心Setting Up the Kerberos Configuration FileSettings for Kerberos are specified through a configuration file. You can set up the configuration file as an...原创 2019-08-19 11:30:27 · 1768 阅读 · 0 评论 -
Spark & Jupyter Notebook
In[3]:import pysparkfrom pyspark import SparkContext, SparkConffrom pyspark.sql import SparkSessionsparkconf = SparkConf().setAppName("myspark")#spark = SparkSession.builder.master("spark://...原创 2019-05-29 18:42:00 · 376 阅读 · 0 评论 -
python2/python3 连接 hive/impala 的问题汇总
'TSocket' object has no attribute 'isOpen bug:https://github.com/cloudera/impyla/issues/268'TSaslClientTransport' object has no attribute 'readAll':https://github.com/dropbox/PyHive/issues/151解决...原创 2019-02-21 18:20:12 · 6141 阅读 · 1 评论 -
impala 更新元数据 以及 用impala对复杂类型的列 查询
impala是MPP型数据库, 支持HIVE 和 S3 作为底层存储.impala 刷新元数据impala 能从Hive的metastore里获取表结构的元数据, 但是并不能感知 hive 的改动, 所以如果hive的表结构发生了改动需要手动来刷新 impala 缓存的元数据.刷新方式有两种: INVALIDATE METADATA sometable;REFRESH som...原创 2019-02-02 17:40:46 · 2491 阅读 · 0 评论 -
Cloudera Manager 简介
Cloudera Manager 简称 CM, 是企业级的大数据集群安装/升级/管理平台, 帮助用户通过网页上的简单操作控制整个集群.其功能如下:1. 提供一个software repository, 方便在各个节点上安装大数据的组件2. 批量配置3. 集群监控4. 集群升级/回滚/备份5. 配置HA6. SNMP消息转发7. 安全(sentry & ker...原创 2019-01-15 14:14:16 · 2233 阅读 · 0 评论 -
CDH 永久 UDF 发布
Creating Permanent FunctionsCopy the JAR file to HDFS and make sure the hive user can access this JAR file. Copy the JAR file to the host on which HiveServer2 is running. Save the JARs to any direc...转载 2019-01-25 11:10:52 · 473 阅读 · 0 评论 -
Lambda 架构 简介
上图就是lambda结构的一个示意, 来自图书Big Data Principles and best practices of scalable realtime data system, 该书的作者就是lambda架构的创造者Nathan Marz。大数据的技术手段百花齐放, 各种NoSQL数据库或者分布式计算框架层出不穷, 但是很少有理论来讲一讲应该怎么把这些组件有机地组合起来...原创 2019-01-03 13:55:18 · 7500 阅读 · 0 评论 -
Lambda 架构 Speed Layer 详解
前文链接:https://blog.youkuaiyun.com/rav009/article/details/85690985Speed Layer作为实时处理层和离线处理层相辅相成,当增量数据被离线处理完毕,实时层就不必继续处理这批数据了,术语叫作: Expiring Real-Time View那么问题来了,怎么通知Speed Layer某一部分数据已经被离线处理完毕,可以释放了呢?...原创 2019-01-04 18:56:53 · 730 阅读 · 0 评论 -
HDFS Yarn Oozie Hive 权限管理
HDFSHDFS的权限系统和普通linux的权限系统一样 , 每个文件或者文件夹都有三种权限: 拥有者, 相关组和其他人. 同时HDFS也支持ACL的权限机制, ACL是基础的权限机制的扩充版, 它丰富了基础的权限机制里"其他人"的权限. 可以为"其他人"指定 fine-grained的权限.hdfs dfs -setfacl -m group:execs:r-- /sales-da...原创 2018-07-10 15:45:23 · 937 阅读 · 0 评论 -
Spark-on-Yarn集群的搭建
强烈推荐这篇文章, 非常详细:https://blog.youkuaiyun.com/chengyuqiang/article/details/77864246启动语句spark-shell --master yarn --deploy-mode client文中提到运行后一个错误:ERROR spark.SparkContext: Error initializing SparkContext.原因是Y...原创 2018-06-28 14:14:27 · 1126 阅读 · 0 评论 -
pyspark 浅析
Spark的scala也好, 还是pyspark也好, 它们的编程思想都是函数式编程, 关于函数式编程的解析可以看这篇文章:http://www.ruanyifeng.com/blog/2012/04/functional_programming.html函数式编程只是返回新的值, 不修改原有的值, 所以在对RDD操作时一定要注意, 不要用对RDD操作以后, 引用了老的变量.impo...原创 2018-07-16 15:54:16 · 1596 阅读 · 0 评论