本文基于kaggle豆瓣影评数据集,演示如何利用pyspark的word2vec和LSH库实现相似影评的计算,同样的方式可以用于相似内容匹配,例如:在海量文章中检测存在抄袭的文章等类似需求。 继续阅读
分类目录归档:大数据
azkaban二次开发 – 自定义钉钉告警
azkaban默认只支持邮件告警,但支持plugin扩展机制自定义告警,所以我决定实现一个钉钉告警,毕竟没人天天盯着邮箱。 继续阅读
tensorflow分布式训练 — tensorflow on spark使用方法
tensorflow(2.x版本)生产训练需要在大规模训练样本下完成,单机已经无法满足训练速度。
tensorflow on spark是yahoo开源的基于spark进行分布式tensorflow训练的开发框架,本文要求读者熟练tensorflow单机使用,最好读一下前一篇博客:《tensorflow2.0 – 端到端的wide&deep模型训练》。
sqoop export与hadoop版本不兼容问题
我们使用的是sqoop1.4.7,采用sqoop export将数仓ADS层数据导入到Mysql库,通常有两种方式: 继续阅读
canal初体验 – 同步binlog到hive
采用T+1天级同步会遇到一些问题: 继续阅读
azkaban – 同时拉起JOB过多导致机器打满
azkaban经常拉起的就是Hive命令,计算任务其实是丢到Yarn集群中运行的,然而实践中发现Hive命令是非常废本地CPU和Mem的,这是为什么呢? 继续阅读
sqoop – import导入parquet的坑
sqoop import导入mysql数据时使用parquet是为了列存压缩节约磁盘空间,但parquet本身是类似于protocolbuf的强schema格式,每一列的数据类型都是明确定义的,这就带来了一些坑点,下面列举一下。 继续阅读
hive – parquet文件格式OOM问题
sqoop import导入mysql表时,为了降低磁盘空间占用,均采用了parquet文件格式进行列存储+压缩。 继续阅读
如何将spark-sql的Row转成Java对象?
实践中发现一个需求,需要将SQL读取的Dataframe的Row转成方便操作的Java bean。 继续阅读
shell执行hive sql的*星号问题
hive执行sql时一般都写在bash脚本里,例如: 继续阅读
azkaban – 上传zip太大怎么办?
因为azkaban任务需要用到spark,打出来的jar包好几百兆,打包成.zip上传azkaban就会卡住很久很久,甚至失败。 继续阅读
sqoop – mysql导入hive与hive导出mysql
sqoop用于关系型数据库与数仓进行数据交换,是大数据必备工具。 继续阅读
hive系列 – 数仓分层Demo
大数据越来越重要,要管理与利用好这些数据就需要建设数据仓库。
数仓建设是有一套建模理论的,本文通过一个简单例子来理解数仓分层的基本样貌。 继续阅读
hive系列 – spark on hive配置与编程
我们经常会选择使用spark做原始数据的ETL清洗,清洗后的Dataframe最终需要写入到数仓的Hive表中,也就是说spark能否直接读写hive表特别重要。 继续阅读
hive系列 – hive搭建
本文记录hive3.x版本搭建过程。
spark系列 – spark-sql编程使用
体验过spark RDD编程,我们能感受到几个问题: 继续阅读
spark系列 – RDD编程使用
这是一个系列,建议从《spark系列 – spark on yarn搭建》开始阅读。
RDD是spark对数据集的抽象,任意大小的数据集都可以通过1个RDD对象来表达,因此spark编程操作大数据集非常简单。 继续阅读
spark系列 – spark on yarn搭建
mapreduce框架在开发需要多轮MR的任务时,因为shuffle过程和reducer输出需要写到磁盘上,所以执行效率很低。 继续阅读
hdfs系列 – Orc格式与mapreduce
这是系列博客,你应该从《hdfs系列 – Text格式与mapreduce》开始阅读。 继续阅读
hdfs系列 – Avro格式与mapreduce
这是系列博客,你应该从《hdfs系列 – Text格式与mapreduce》开始阅读。 继续阅读