- 博客(13)
- 收藏
- 关注
原创 Hive中几种存储格式特点总结
1、TextFile存储方式:行存储。默认格式,如果建表时不指定默认为此格式。 每一行都是一条记录,每行都以换行符"\n"结尾。数据不做压缩时,磁盘会开销比较大,数据解析开销也比较大。 可结合Gzip、Bzip2等压缩方式一起使用(系统会自动检查,查询时会自动解压),推荐选用可切分的压缩算法。 2、Sequence File一种Hadoop API提供的二进制文件,使用方便、可分割、个压缩的特点。 支持三种压缩选择:NONE、RECORD、BLOCK。RECORD压缩率低,一般建议使
2021-08-06 13:19:15 1250
原创 spark内核架构深度剖析(standalone模式下)
深入理解spark程序运作的整个流程,对我们编写高质量的spark工程,以及排查程序运行过程中遇到的错误都非常重要。spark资源调度器包括standalone模式自带、yarn、mesos等,理解spark程序从提交到运行结束整个运行的流程,个人认为从standalone模式入手最为清晰和经典。下面画图来说一下整个过程。整个过程中涉及几个非常重要的算法:stage的划分算法、task的分配算法、master的资源调度算法。这些算法会在其他讲中具体讲解...
2020-05-22 16:56:09 229
转载 Spark共享变量(广播变量、累加器)
Spark两种共享变量:广播变量(broadcast variable)与累加器(accumulator)累加器用来对信息进行聚合,而广播变量用来高效分发较大的对象。共享变量出现的原因:通常在向 Spark 传递函数时,比如使用 map() 函数或者用 filter() 传条件时,可以使用驱动器程序中定义的变量,但是集群中运行的每个任务都会得到这些变量的一份新的副本,更新这些副本的值也不会影响驱动器中的对应变量。Spark 的两个共享变量,累加器与广播变量,分别为结果聚合与广播这两种常见的通信模
2020-05-21 16:01:48 307
转载 Spark性能调优:RDD的复用以及RDD持久化
避免创建重复的RDD通常来说,开发一个Spark作业时,首先是基于某个数据源(比如Hive表或HDFS文件)创建一个初始的RDD;接着对这个RDD执行某个算子操作,然后得到下一个RDD;以此类推,循环往复,直到计算出最终我们需要的结果。在这个过程中,多个RDD会通过不同的算子操作(比如map、reduce等)串起来,这个“RDD串”,就是RDD lineage,也就是“RDD的血缘关系链”。我们在开发过程中要注意:对于同一份数据,只应该创建一个RDD,不能创建多个RDD来代表同一份数据。在.
2020-05-21 15:28:32 378
原创 记一篇海康交通大数据面试经历
鼠年多灾多难的,换工作风险可能比较大,但是我还是想试试,因为现在公司实在是待不住了。。。五一节后约面了海康交通大数据,主要考虑和以前北京的职位,有很多业务交叉,说实话成都这边想找个业务相关度高的工作比较难,想找个自己称心如意的工作是难上加难,大环境决定的没办法。既然有业务交叉那就应该去试一下,珍惜机会。这个公司背景,总体来说的话盈利点主要在2G的政府项目上,2C的产品也有所涉及,当然背靠海...
2020-05-07 14:03:54 2934 4
原创 tensorflow手动指定GPU以及显存大小
以前我们组就一块显卡,不存在指定设备的问题。近期刚插了一块新的gtx 1080ti,几人公用两块卡来做训练、测试、预测等等,网上找了个方式可以指定使用的设备,并且限定使用的显存大小,还是很有用的,亲测可行,拿过来分享给大家~~~~~为了测试方便,使用了mnist代码,数据集和代码都比较小,比较好控制。mnist代码有点多就不贴了,大家自己找找吧。下面开始正题:一般来说GPU devic...
2018-12-26 13:14:09 1389
原创 运行deeplab测试遇到的ModuleNotFoundError: No module named 'deeplab'错误解决
最近彻底决定转型做机器学习和AI了,睡眠时间也比平时一度减少了2小时,会不会秃顶最近的任务是研究一下图像语义分割,自然少不了被引诱去看deeplab系列,刚开始构建就没那么顺利:网上查了一下说需要搞一下环境变量,那就搞呗:vi ~/.bashrc在最后添加一行# added by deeplabexport PYTHONPATH=/APP/allen/models...
2018-12-06 15:05:46 4230
原创 docker从入门到放弃——搭建私有仓库
可能会有人关心,都已经有docker hub了,干嘛还要搭私有仓库,以下是一些原因:引自: https://blog.csdn.net/RonnyJiang/article/details/71189392 (1)有时我们在从dockerhub上下载和上传镜像速度可能受影响。 (2)我们在生产上所使用的docker镜像可能存放着我们的code,tools,不想被外部人员获取,只允许内网的开发人...
2018-07-13 11:14:43 1094
转载 docker进入容器的4种方式
在使用Docker创建了容器之后,大家比较关心的就是如何进入该容器了,其实进入Docker容器有好几多种方式,这里我们就讲一下常用的几种进入Docker容器的方法。进入Docker容器比较常见的几种做法如下:使用docker attach使用SSH使用nsenter使用exec一、使用docker attach进入Docker容器 Docker提供了attach命令来进入Docker容器。 接...
2018-06-28 16:32:52 311
转载 每天一个Linux命令——du命令
Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是查看当前指定文件或目录(会递归显示子目录)占用磁盘空间大小,还是和df命令有一些区别的.1.命令格式:du [选项][文件]2.命令功能:显示每个文件和目录的磁盘使用空间。3.命令参数:-a或-all 显示目录中个别文件的大小。 -b或-bytes 显示目录或文件大小时,以byte为单位。 -c或--t...
2018-06-12 19:19:25 256
原创 每天一个Linux命令——管道命令(pine、"|")
管道命令详解:以前只知道用管道命令,并没有深究。其实管道就是用"|"符号来连接两个命令,以前面命令的标准输出作为后面命令的标准输入,如下图所示(是不是很形象)。注意:1、管道命令会自动忽略错误的标准输入2、管道命令后面接的命令必须能够接收标准输入,不能接收的命令包括ls、cp、mv等管道应用示例:管道需要搭配其他命令来使用,下面来几个例子。1、查看tomcat进程详情(常用,管道入门级)ps -e...
2018-06-09 20:15:49 9847
转载 每天一个Linux命令——vi命令(三种模式、命令大全、常用)
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于 对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编 辑器,学会它后,您将在Linux的世界里畅行无阻。vi的基本概念 基本上vi可以分为三种状态,分别是命令...
2018-06-07 16:42:58 3230
转载 每天一个Linux命令——cat命令
Linux命令:CAT使用权限:所有用户(即root帐号和所有普通帐号)使用方法:cat [参数] 文件名说明:cat 是一个文本文件查看和连接工具。查看一个文件的内容,用cat比较简单,就是cat 后面直接接文件名,如cat linuxyw.txtcat --help可以查看cat帮助信息,如各种参数使用方法,当然也可以用man cat来查看,建议大家养成遇到命令不懂用法时,用--help或ma...
2018-06-06 17:02:53 514
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人