
RecSys
文章平均质量分 82
slvher
这个作者很懒,什么都没留下…
展开
-
【Python笔记】如何编译不依赖lapack和atlas库的NumPy包
NumPy是科学计算方面的一个Python库,在数据挖掘或机器学习或科学统计等领域经常被用到,官网在这里。在实际业务中,为发挥NumPy的高性能,在编译NumPy时会依赖一些经过特别优化的第三方科学计算库。对于初次接触NumPy的新手来说,从源码编译安装依赖外部库的NumPy通常不是一个简单的任务。事实上,NumPy这个Python包本身不需依赖任何第三方库就能完成编译和安装使用,只不过其原创 2015-04-02 15:57:17 · 3292 阅读 · 0 评论 -
Spark调研笔记第6篇 - Spark编程实战FAQ
本文主要记录我使用Spark以来遇到的一些典型问题及其解决办法,希望对遇到同样问题的同学们有所帮助。1. Spark环境或配置相关Q: Spark客户端配置文件spark-defaults.conf中,spark.executor.memory和spark.cores.max应该如何合理配置?A: 配置前,需要对spark集群中每个节点机器的core和memory的配置有基本了解。比如原创 2015-06-10 11:16:33 · 2145 阅读 · 0 评论 -
Spark调研笔记第5篇 - Spark API简介
由于Spark是用Scala实现的,所以Spark天生支持Scala API,此外,还支持Java和Python API。以Spark 1.3版本的Python API为例,其模块层级关系如下图所示:从上图可知,pyspark是Python API的顶层package,它包含了几个重要的subpackages,其中:1) pyspark.SparkContext它抽象了指向sp原创 2015-06-09 10:50:57 · 1765 阅读 · 0 评论 -
Spark调研笔记第4篇 - PySpark Internals
其实,有两个名为PySpark的概念,一个是指Spark客户端内置的pyspark脚本,而另一个是指Spark Python API中的名为pyspark的package。本文只对第1个pyspark概念做介绍。1. Spark客户端内置的pyspark"命令"Spark客户端支持交互模式以方便应用调试,通过调用pyspark可以进入交互环境:cd /path/to/spark原创 2015-06-08 19:10:23 · 2874 阅读 · 0 评论 -
Spark调研笔记第3篇 - Spark集群对应用的调度策略简介
Spark集群的调度分应用间调度和应用内调度两种情况,下文分别进行说明。1. 应用间调度1) 调度策略1: 资源静态分区资源静态分区是指整个集群的资源被预先划分为多个partitions,资源分配时的最小粒度是一个静态的partition。根据应用对资源的申请需求为其分配静态的partition(s)是Spark支持的最简单的调度策略。我们已经知道,不同的应用有各自的Spark C原创 2015-06-08 13:40:19 · 1344 阅读 · 0 评论 -
Spark调研笔记第2篇 - 如何通过Spark客户端向Spark提交任务
在上篇笔记的基础上,本文介绍Spark客户端的基本配置及Spark任务提交方式。1. Spark客户端及基本配置从Spark官网下载的pre-built包中集成了Spark客户端,如与hadoop ver1.x兼容的Spark客户端位于spark-1.3.1-bin-hadoop1/bin目录下。Spark客户端通常部署在要提交计算任务的机器上,用来向集群提交应用。特别地,客户端自带的原创 2015-06-05 18:02:43 · 3677 阅读 · 0 评论 -
Spark调研笔记第1篇 - Spark简介
在公司线上项目中引入Spark已经将近1年时间了,从效果来看,Spark确实是能提高生产力的优秀分布式计算平台。从本篇笔记开始,会把之前调研Spark时的调研报告分享出来(限于篇幅,会分成几篇文章),以便帮助刚接触Spark的朋友们尽快入门。下面开始正文。1. 项目背景Spark项目于2009年诞生于UC Berkeley AMP Lab并于2010年正式提交Apache Soft原创 2015-06-05 17:09:13 · 1518 阅读 · 0 评论 -
基于Java的开源日志库log4j调研笔记
由于Hadoop生态链基本都是java开发的,所以在很多有关大数据处理的开源项目中,经常会看到log4j这个jar包。本文旨在对它的用法做基本说明。1. log4j是什么从log4j的命名(log for java)不难看出,它是为java提供的日志库。具体而言,它是Apache基金会下的开源项目,它可在不修改应用程序代码的前提下,在程序运行时提供灵活的日志打印功能(当然,应用程序还是原创 2015-04-30 17:51:05 · 1418 阅读 · 1 评论 -
日志收集系统Flume调研笔记第1篇 - Flume简介
用户行为数据的收集无疑是构建推荐系统的先决条件,而Apache基金会下的Flume项目正是为分布式的日志收集量身打造的,本文是flume基本用法的调研笔记。本文所用的Flume版本为目前最新版的ver1.5.2,它属于Flume-NG,在系统架构上与Flume-OG有所区别,二者的不同可以参考FlumeWiki文档的说明。1. Flume是什么Flume是Apache基金会下的一个开源原创 2015-04-29 18:52:07 · 3254 阅读 · 0 评论 -
日志收集系统Flume调研笔记第2篇 - Flume配置及使用实例
上篇笔记对Flume的使用场景和系统架构做了介绍,本篇笔记以实例说明Flume的配置方法。下面开始正文。1. Flume使用实例1.1 配置Flume agent的3个组件及其拓扑关系是在配置文件中指定的,总的原则是必须列出source/channel/sink的name/type等重要的配置项,并通过channel将source(s)和sink(s)连接起来,此外,1个source可原创 2015-04-29 19:13:09 · 2357 阅读 · 0 评论 -
【Python笔记】如何源码编译依赖LAPACK和ATLAS库的NumPy包
上篇笔记介绍了不依赖lapack和atlas库的NumPy包源码编译/安装方法,但“纯净版”的NumPy会损失性能,故本篇笔记说明如何源码编译安装依赖lapack和atlas库的NumPy包。1. GCC版本要求 使用较新版本的GCC工具集(尽量不低于v4.7)且继承有gfortran编译器。备注1:这里大写的"GCC"是指GNU Compiler Collection,它除包含C语言原创 2015-04-03 12:15:39 · 4233 阅读 · 0 评论 -
Spark调研笔记第7篇 - 应用实战: 如何利用Spark集群计算物品相似度
本文是Spark调研笔记的最后一篇,以代码实例说明如何借助Spark平台高效地实现推荐系统CF算法中的物品相似度计算。在推荐系统中,最经典的推荐算法无疑是协同过滤(Collaborative Filtering, CF),而item-cf又是CF算法中一个实现简单且效果不错的算法。在item-cf算法中,最关键的步骤是计算物品之间的相似度。本文以代码实例来说明如何利用Spark平台快速计算原创 2015-06-10 15:01:35 · 4522 阅读 · 0 评论