Husky大数据分析
文章平均质量分 90
由实验室基于C++开发的下一代通用性的分布式计算系统Husky,集合了更高效、适用范围广,用户友好等诸多优点。同时,其提供的Python接口可以非常方便的进行各类数据分析处理。这里,我将介绍如何通过PyHusky来解决我们所面对的不同数据分析情景。
happen_chen
这个作者很懒,什么都没留下…
展开
-
Husky中文文档-C++ Husky Aggregator 指南
Aggregator在list_executes过程中聚合数值。一个aggregator就像是整个集群中的一个全局变量。使用介绍头文件: #include "lib/dcaggregator.hpp"创建一个aggregator: Husky::Aggregator agg(InitValue, [](ValueType & old, const Val翻译 2017-05-31 19:59:35 · 5235 阅读 · 1 评论 -
Husky中文文档-C++ Husky 基础
纲要一个c++ husky程序的框架如下:void job() { // work ...}int main(int argc, char ** argv) { Husky::run_job(job, argv[1]); return 0;}我们在job函数中实现程序逻辑。首先,我们需要在程序的开头创建一个husky worker.翻译 2017-05-31 20:01:36 · 5657 阅读 · 0 评论 -
Husky中文文档-C++ Husky Combiner 指南
CombinerCombiner 基础Husky中的combiner在消息发送出去之前进行聚合,从而降低消息量。当使用combiner时,来自同一台机器的拥有相同的key的所有信息将被聚合成一条消息。不使用combiner的情况下发消息:Husky::send_message(1, w, w_list); // (Msg, Key, Obj_List)翻译 2017-05-31 20:02:42 · 4308 阅读 · 0 评论 -
Husky中文文档-C++ Husky Broadcast 和 Request 指南
Husky提供了broadcast/get_response APIs,用于广播变量给集群中所有的worker。在某些情况下,广播变量比使用send_message更加高效。Husky 还提供了request/list_reply/get_response APIs来向特定的对象发送获取某些变量值的请求。broadcast/get_response以下例子使用broadcast A翻译 2017-05-31 20:03:57 · 4026 阅读 · 0 评论 -
Husky中文文档-C++ Husky 例子
Husky团队已经使用Husky's C++ API开发了许多分布式的大数据应用,包括基本的MapReduce应用,分布式机器学习和图计算。未来Husky团队将会推出更多应用。 下面给出了Husky目前可用的应用列表,它们放在examples/目录下:als.cppbasic-pca.cppbm25.cppdbscan.cppk-bfs.cppkmeans.cpplinear_regres翻译 2017-05-31 20:04:59 · 5292 阅读 · 0 评论 -
获取全球各大证券交易所的全部股票交易信息
幻想过这样的两种能力,一是回到过去,二是预见未来。时间逆转回到过去,这更多的是在文艺作品中能够出现的情节。而预见未来,我们正在努力,希望可以更准确地预见更长时间内更多的细节。例如在瞬息万变的股票交易市场中,我们可能会利用NLP来判断股市舆情,或者借助机器学习的方法来预测股市行情大势,又或者可以通过大数据找出不同股票间的隐性关联,从而获取正确的投资策略。而实现这一切,都需要大量数据来支撑我们的试验,在原创 2017-03-28 20:43:42 · 29900 阅读 · 7 评论 -
分布式网络爬虫实例——获取静态数据和动态数据
前言刚刚介绍完基于PyHusky的分布式爬虫原理及实现,让我们具备了设计分布式网络爬虫方便地调动计算资源来实现高效率的数据获取能力。可以说,有了前面的基础,已经能够解决互联网上的绝大部分网站的数据获取问题。下面我将以正常模式爬取某地产网站上相关的新房、二手房和租房信息;然后使用selenium来抓取动态数据来分别介绍两种类型网站的分布式网络爬虫的实现:实例由于前面已经设计好了实现分布式爬虫的框架,它原创 2017-04-11 14:51:10 · 17117 阅读 · 2 评论 -
Husky数据分析——招聘信息背后的潜规则揭秘
每天新闻中都可以看到各种各样的排行,和数不尽的好玩的结论。可是有很多时候我们看到某些数据结论时,总会激发我们质疑精神,有时是对于数据取样的片面性的怀疑,有时也有不满足于数据的小众化的遗憾。恰好目前我们实验室正在开发下一代的更高效的husky分布式计算平台,一来出入对数据全面性和真实性的追求以及隐藏在数据背后各种结论关系的好奇,二来也为了验证husky强大的高效快速的数据分能力。工具在手天下我有原创 2016-12-13 16:43:13 · 39281 阅读 · 13 评论 -
Husky数据分析——关于最近房子在强力限购下的趋势分析
在去库存的大背景下,2016年一二线城市的房价经历了一场逆势疯狂上涨的大戏,使得许多城市从10月份开始不得不相继出台了号称史上最严的限购措施。与此同时,美联储加息消息不断使得美元强势,人民币对美元的汇率加速贬值,直逼7.0关口。加上股市经历两次断崖式暴跌至今元气大伤,在外围市场总体向好的情况下中国股市还未能走出低迷状态,使得大量资金流向海外。严格的限购和资金的大量外流是否会遏制房价过快上涨的趋势,原创 2017-01-12 01:55:49 · 30853 阅读 · 4 评论 -
Husky数据分析——全球航班信息的研究
在莱特兄弟制造了第一架可控飞机100年后的今天,坐飞机已然成为了大众化的出行方式。可是我们大多数人对航空领域的相关情况了解得还并不多,例如历史上各国航空器制造公司的兴衰、全球各个机场的繁忙程度,和每家航空公司的准点率,还有每家公司的机龄分布和飞机利用率等等问题。为了揭开这一切,几个月前连续跟踪来自https://www.flightradar24.com的全球航空飞行记录。由于飞行记录原创 2017-01-13 12:04:31 · 27221 阅读 · 4 评论 -
PyHusky接口功能及实例介绍
这里假设已经在集群上成功部署了Husky并且已为PyHusky编译成功所需的后端运用程序Master和Daemon。假如情况不是这样,可以参考PyHusky快速开始。#首先启动Master:./Master conf/myhusky.conf #在另一个窗口,if配置文件myhusky.conf指向单机环境,则如下启动单机Daemon:./Daemon conf/myhusky.conf原创 2017-02-23 11:56:20 · 22911 阅读 · 3 评论 -
PyHusky处理属性图数据生成——由XML文件到完整图形为例
目前为止,网络上能找到的关于large attributed graph的数据集还非常少。更多的是单纯的关系图,这样就缺少了必要的属性数据。所以我们需要在获得原始数据后,再经过一系列数据计算处理得到我们所要的图数据。下面我将提供已经处理好了的三组完整属性图数据的下载链接,同时利用前面讲过的PyHuksy来介绍其中的一组数据的生成过程。Tencent_GraphDBLP_Journal_Graph原创 2017-04-03 21:04:56 · 30221 阅读 · 1 评论 -
基于PyHusky的分布式爬虫原理及实现
原理爬虫是我们获取互联网数据的一个非常有效的方法,而分布式爬虫则是利用许多台机器协调工作来加快抓取数据效率的不二途径。分布式爬虫是由访问某些原始网址开始,在获取这些网址的内容后,根据某些规则从中提取出下一轮的爬虫网址。依此类推,直到将全部链接访问完毕或达到我们设置的某些限定方可结束。这里我们需要选定一个运算效率较高的机器作为master, 和一群正常的workers来协助。这个master要负原创 2017-04-06 17:14:01 · 32001 阅读 · 3 评论 -
Husky中文文档-部署
部署依赖Husky依赖以下软件包:CMakeZeroMQ (libzmq and cppzmq)Boost一种C++编译器(clang/gcc/icc/MSVC)TCMallocPSSH部分可选择的依赖:Hadooplibhdfs3HBaseKafkaMongoDBHusky已经实现了与HDFS,MongoDB,HBase,Kafka的对接,并在添加翻译 2017-02-22 13:04:02 · 17624 阅读 · 1 评论 -
Husky中文文档-PyHusky 架构
PyHusky Architecture本节介绍husky的架构,其中包括前端和后端。PyHusky 前端在PyHusky前端,几乎所有的运算符如map,flat_map和reduce 等都属于DAG的节点,定义了对PyHuskyList中objects的转换。例如, b = a.map(func) 将从PyHuskyList a 返回一个新的PyHuskyList b翻译 2017-02-22 13:29:50 · 17388 阅读 · 2 评论 -
Husky中文文档-PyHusky 运算符
Pyhusky OperatorsPyHusky支持三种运算符: Load, Transformation, 和 Action.通畅情况下,一个PyHusky程序首先使用Load运算符.PyHusky 采用lazy evaluation技术, 所有 Loads 和 Transformations 的运算将会被推迟,以避免不必要的计算和提高性能。 Action 操作才会真正触翻译 2017-02-22 13:16:24 · 15383 阅读 · 0 评论 -
PyHusky快速开始
快速开始构建本节假设Husky已经被成功部署。若Husky还未被部署于集群之上,请参照Husky中文文档-部署.编译Daemon后端应用程序.PyHusky需要编译Maser和Daemon。在构建目录,使用 make Master 编译Master 和 make Daemon 编译Daemon。需确保构建目录已经被cmake正确创建。启动翻译 2017-02-22 12:26:27 · 16626 阅读 · 3 评论