中企动力 > 商学院 > 数据采集分析
  • ?

    医疗大数据采集难度分析 大健康产业将乘数据快车前行

    空心人

    展开

    中商情报网讯:医疗大数据是指个人从出生到死亡的全生命周期过程中,因为免疫、体检、门诊、住院等健康活动所产生的大数据。通过对医疗大数据的分析和加工,可以挖掘出和疾病诊断、治疗、公共卫生防治等方面的重要价值。

    现阶段电子病历的广泛应用,使得有价值的医疗大数据实现了快速增长,可供医生、研究者和患者使用的数据量极大地提升。EMC和IDC发布的报告显示,2013年全球医疗保健数据量为153EB,预计年增长率为48%。这意味着到2020年,这个数字将达到2314EB(2.26ZB)。因此,我们计算出医疗数据的总量约占到全球所有数据容量的5.1%。

    随着医院的信息化程度日趋成熟及物联网和互联网的发展,医、药相关的行为数据量大大提升。我国医疗数据主要来自于医院信息系统(HIS)、电子病历系统(EMR)、影像采集与传输系统(PACS)、实验室检查信息系统(LIS)、病理系统(PS)、医疗器械等信息化系统和设备所记录下来的疾病、体征数据。还包括医院物资管理、医院运营系统所产生的数据。

    我国医疗数据采集途径、难度及价值一览表

    数据来源:中商产业研究院整理

    未来,伴随着万物的行为逐步被数据所量化,医疗大数据的形式和数量将极大地丰富起来,整个医疗领域会迎来一个新的时期,我国医疗事业将迎来一个新的发展高峰。

    数据推动产业发展同时,也对企业的前期规划有着严格的要求。中商产业研究院院长袁建教授认为,我国东部或中西部、山地或平原、城郊或城心,都可以发展健康产业。譬如,深山的药材种植,二线城市的健康食品或体育用品代工,一线城市的医疗器械或生物制药,优美郊区的养生养老服务等。但是,由于健康产业涵盖内容很多,而我国各区域资源与市场差异很大,所以,袁建教授强调,健康产业园区规划运营必须突出特色,瞄准细分领域,实行差异化经营。

  • ?

    数据分析全流程(内附案例)

    许淇

    展开

    (图片来源于网络)

    作者:苏格兰折耳喵

    来源: 运营喵是怎样炼成的 (yymzylc)

    (温馨提示:图片显示毛糙和不清楚,是分辨率过高的缘故,点击图片,即可看到高清大图。 )

    本文将对一个案例进行从数据采集、数据清洗、数据分析再到数据可视化的全流程分析,力求条理清晰的展现外部数据分析的强大威力。以下是本文的写作框架:

    1 分析背景

    1.1 分析原理---为什么选择分析虎嗅网

    在现今数据爆炸、信息质量良莠不齐的互联网时代,我们无时无刻不身处在互联网社会化媒体的“信息洪流”之中,因而无可避免的被它上面泛滥的信息所“裹挟”,也就是说,社会化媒体上的信息对现实世界中的每个人都有重大影响,社会化媒体是我们间接了解现实客观世界和主观世界的一面窗户,我们每时每刻都在受到它的影响。

    综合上述两类情形,可以得出这样的结论,透过社会化媒体,我们可以观察现实世界:

    由此, 社会化媒体是现实主客观世界的一面镜子,而它也会进一步影响人们的行为,如果我们对该领域中的优质媒体所发布的信息进行分析,除了可以了解该领域的发展进程和现状,还可以对该领域的人群行为进行一定程度的预判。

    鉴于此种情况,作为互联网从业者的笔者想分析一下互联网行业的一些现状,于是想到了虎嗅网。

    虎嗅网创办于2012年5月,是一个聚合优质创新信息与人群的新媒体平台。该平台专注于贡献原创、深度、犀利优质的商业资讯,围绕创新创业的观点进行剖析与交流。虎嗅网 的核心,是关注互联网及传统产业的融合、一系列明星公司(包括公众公司与创业型企业)的起落轨迹、产业潮汐的动力与趋势。

    因此,对该平台上的发布内容进行分析,对于研究互联网的发展进程和现状有一定的实际价值。

    1.2 本文的分析目的

    笔者在本项目中的分析目的主要有4个:

    (1)对虎嗅网内容运营方面的若干分析,主要是对发文量、收藏量、评论量等方面的描述性分析;

    (2)通过文本分析,对互联网行业的一些人、企业和细分领域进行趣味性的分析;

    (3)展现文本挖掘在数据分析领域的实用价值;

    (4)将杂芜无序的结构化数据和非结构化数据进行可视化,展现数据之美。

    1.3 分析方法---分析工具和分析类型

    本文中,笔者使用的数据分析工具如下:

    Python3.5.2(编程语言)

    Gensim(词向量、主题模型)

    Scikit-Learn(聚类和分类)

    Keras(深度学习框架)

    Tensorflow(深度学习框架)

    Jieba(分词和关键词提取)

    Excel(可视化)

    Seaborn(可视化)

    新浪微舆情(情绪语义分析)

    Bokeh(可视化)

    Gephi(网络可视化)

    Plotly(可视化)

    使用上述数据分析工具,笔者将进行2类数据分析:第一类是较为传统的、针对数值型数据的描述下统计分析,如阅读量、收藏量等在时间维度上的分布;另一类是本文的重头戏---深层次的文本挖掘,包括关键词提取、文章内容LDA主题模型分析、词向量/关联词分析、DTM模型、ATM模型、词汇分散图和词聚类分析。

    2 数据采集和文本预处理

    2.1 数据采集

    笔者使用爬虫采集了来自虎嗅网主页的文章(并不是全部的文章,但展示在主页的信息是主编精挑细选的,很具代表性),数据采集的时间区间为2012.05~2017.11,共计41,121篇。采集的字段为文章标题、发布时间、收藏量、评论量、正文内容、作者名称、作者自我简介、作者发文量,然后笔者人工提取4个特征,主要是 时间特征 (时点和周几)和 内容长度特征 (标题字数和文章字数),最终得到的数据如下图所示:

    2.2 数据预处理

    数据分析/挖掘领域有一条金科玉律:“Garbage in, Garbage out”,做好数据预处理,对于取得理想的分析结果来说是至关重要的。本文的数据规整主要是对文本数据进行清洗,处理的条目如下:

    (1) 文本分词

    要进行文本挖掘,分词是最为关键的一步,它直接影响后续的分析结果。笔者使用jieba来对文本进行分词处理,它有3类分词模式,即全模式、精确模式、搜索引擎模式:

    · 精确模式:试图将句子最精确地切开,适合文本分析;

    · 全模式:把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;

    · 搜索引擎模式:在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。

    现以“新浪微舆情专注于社会化大数据的场景化应用”为例,3种分词模式的结果如下:

    【全模式】: 新浪/ 微舆情/ 新浪微舆情/ 专注/于/ 社会化/ 大数据/ 社会化大数据/ 的/ 场景化/ 应用

    【精确模式】: 新浪微舆情/ 专注/于/ 社会化大数据/ 的/ 场景化/ 应用

    【搜索引擎模式】:新浪,微舆情,新浪微舆情,专注,于,社会化,大数据,社会化大数据,的,场景化,应用

    为了避免歧义和切出符合预期效果的词汇,笔者采取的是精确(分词)模式。

    (2) 去停用词

    这里的去停用词包括以下三类:

    标点符号:, 。! /、*+-

    特殊符号:▲等

    无意义的虚词: “the”、“a”、“an”、“that”、“你”、“我”、“他们”、“想要”、“打开”、“可以”等

    (3) 去掉高频词、稀有词和计算Bigrams

    去掉高频词、稀有词是针对后续的主题模型(LDA、ATM)时使用的,主要是为了排除对区隔主题意义不大的词汇,最终得到类似于停用词的效果。

    Bigrams是为了自动探测出文本中的新词,基于词汇之间的共现关系---如果两个词经常一起毗邻出现,那么这两个词可以结合成一个新词,比如“数据”、“产品经理”经常一起出现在不同的段落里,那么,“数据_产品经理”则是二者合成出来的新词,只不过二者之间包含着下划线。

    3 描述性分析

    该部分中,笔者主要对数值型数据进行描述性的统计分析,它属于较为常规的数据分析,能揭示出一些问题,做到知其然。

    3.1 发文数量、评论量和收藏量的变化走势

    从下图可以看出,在2012.05~2017.11期间,以季度为单位,主页的发文数量起伏波动不大,在均值1800上下波动,进入2016年后,发文数量有明显提升。

    此外,一头(2012年第二季)一尾(2017年第四季)因为没有统计完全,所以发文数量较小。

    下图则是该时间段内收藏量和评论量的变化情况,评论量的变化不愠不火,起伏不大,但收藏量一直在攀升中,尤其是在2017年的第二季达到峰值。收藏量在一定程度上反映了文章的干货程度和价值性,读者认为有价值的文章才会去保留和收藏,反复阅读,含英咀华,这说明虎嗅的文章质量在不断提高,或读者的数量在增长。

    3.2 发文时间规律分析

    笔者从时间维度里提取出“周”和“时段”的信息,也就是开题提到的“人工特征”的提取,现在做文章分布数量的在“周”和“时”上的交叉分析,得到下图:

    上图是一个热力图,色块颜色上的由暖到冷表征数值的由大变小。很明显的可以看到,中间有一个颜色很明显的区域,即由“6时~19时”和“周一~周五”围成的矩形,也就是说,发文时间主要集中在工作日的白天。另外,周一到周五期间,6时~7时这个时间段是发文的高峰,说明虎嗅的内容运营人员倾向于在工作日的清晨发布文章,这也符合它的人群定位---TMT领域从业、创业者、投资人,他们中的许多人有晨读的习惯,喜欢在赶地铁、坐公交的过程中阅读虎嗅讯息。发文高峰还有9时-11时这个高峰,是为了提前应对读者午休时间的阅读,还有17时~18时,提前应对读者下班时间的阅读。

    3.3 相关性分析

    笔者一直很好奇,文章的评论量、收藏量和标题字数、文章字数是否存在统计学意义上的相关性关系。基于此,笔者绘制出能反映上述变量关系的两张图。

    首先,笔者做出了标题字数、文章字数和评论量之间的 气泡图 (圆形的气泡被六角星替代,但本质上还是气泡图)。

    上图中,横轴是文章字数,纵轴是标题字数,评论数大小由六角星的大小和颜色所反映,颜色越暖,数值越大,五角星越大,数值越大。从这张图可以看出,文章评论量较大的文章,绝大部分分布于由文章字数6000字、标题字数20字所构成的区域内。虎嗅网上的商业资讯文章大都具有原创、深度的特点,文章篇幅中长,意味着能把事情背后的来龙去脉论述清楚,而且标题要能够吸引人,引发读者的大量阅读,合适长度标题和正文篇幅才能做到这一点。

    接下来,笔者将收藏量、评论量和标题字数、文章字数绘制成一张3D立体图,X轴和Y轴分别为标题字数和正文字数,Z轴为收藏量和评论量所构成的 平面 ,通过旋转这个3维的Surface图,我们可以发现收藏量、评论量和标题字数、文章字数之间的相关关系。

    注意,上图的数值表示和前面几张图一样,颜色上的由暖到冷表示数值的由大到小,通过旋转各维度的截面,可以看到在正文字数5000字以内、标题字数15字左右的收藏量和评论量形成的截面出现“华山式”陡峰,因而这里的收藏量和评论量最大。

    3.4 城市提及分析

    在这里,笔者通过构建一个包含全国1~5线城市的词表,提取出经过预处理后的文本中的城市名称,根据提及频次的大小,绘制出 一张反映城市提及频次的地理分布地图 , 进而间接地了解各个城市互联网的发展状况(一般城市的提及跟互联网产业、产品和职位信息挂钩,能在一定程度上反映该城市互联网行业的发展态势)。

    上图反映的结果比较符合常识,北上深广杭这些一线城市的提及次数最多,它们是互联网行业发展的重镇。值得注意的是,长三角地区的大块区域(长江三角洲城市群,它包含 上海 , 江苏省 的 南京 、 无锡 、 常州 、 苏州 、 南通 、 盐城 、 扬州 、 镇江 、 泰州 , 浙江省 的 杭州 、 宁波 、 嘉兴 、 湖州 、 绍兴 、 金华 、 舟山 、 台州 , 安徽省 的 合肥 、 芜湖 、 马鞍山 、 铜陵 、 安庆 、 滁州 、 池州 、 宣城 )呈现出较高的热度值,直接说明这些城市在虎嗅网各类资讯文章中的提及次数较多,结合国家政策和地区因素,可以这样理解地图中反映的这个事实:

    长三角城市群是“一带一路”与长江经济带的重要交汇地带,在中国国家现代化建设大局和全方位开放格局中具有举足轻重的战略地位。中国参与国际竞争的重要平台、经济社会发展的重要引擎,是长江经济带的引领发展区,是中国城镇化基础最好的地区之一。

    长三角城市群是“一带一路”与长江经济带的重要交汇地带,在中国国家现代化建设大局和全方位开放格局中具有举足轻重的战略地位。中国参与国际竞争的重要平台、经济社会发展的重要引擎,是长江经济带的引领发展区,是中国城镇化基础最好的地区之一。

    接下来,笔者将抽取文本中城市之间的 共现关系 ,也就是城市之间两两同时出现的频率,在一定程度上反映出城市间经济、文化、政策等方面的相关关系,共现频次越高,说明二者之间的联系紧密程度越高,抽取出的结果如下表所示:

    将上述结果绘制成如下动态的流向图:

    由于虎嗅网上的文章大多涉及创业、政策、商业方面的内容,因而这种城市之间的共现关系反映出城际间在资源、人员或者行业方面的关联关系,本动态图中,主要反映的是北上广深杭(网络中的枢纽节点)之间的相互流动关系和这几个一线城市向中西部城市的单向流动情形。流动量大、交错密集的区域无疑是中国最发达的3个城市群和其他几个新兴的城市群:

    京津冀城市群

    长江三角洲城市群

    珠江三角洲城市群

    中原城市群

    成渝城市群

    长江中游城市群

    上面的数据分析是基于数值型数据的描述性分析,接下来,笔者将进行更为深入的文本挖掘。

    4 文本挖掘

    数据挖掘是从有结构的数据库中鉴别出有效的、新颖的、可能有用的并最终可理解的模式;而文本挖掘(在文本数据库也称为文本数据挖掘或者知识发现)是从大量非结构的数据中提炼出模式,也就是有用的信息或知识的半自动化过程。

    本文的文本挖掘部分主要涉及高频词统计/关键词提取/关键词云、文章标题聚类、文章内容聚类、文章内容LDA主题模型分析、词向量/关联词分析、ATM模型、词汇分散图和词聚类分析。

    4.1 关键词提取

    对于关键词提取,笔者没有采取词频统计的方法,因为词频统计的逻辑是:一个词在文章中出现的次数越多,则它就越重要。因而,笔者采用的是 TF-IDF (termfrequency–inverse document frequency)的关键词提取方法:

    它用以评估一字/词对于一个文件集或一个语料库中的其中一份文件的重要程度,字/词的重要性会随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。

    由此可见,在提取某段文本的关键信息时,关键词提取较词频统计更为可取,能提取出对某段文本具有重要意义的关键词。

    下面是笔者利用jieba在经预处理...

  • ?

    被选召的你,数据采集分析的思维超进化

    任剑

    展开

    在日常工作中,除了1104报表等规定动作之外,各种各样、没完没了的专项统计、快速调查,报表、报告,简直就是分析人员难以摆脱的梦魇!

    但工作是干不完的,该你负起的责任也是推不出去的,那有没有更好的办法少加些班呢?

    我可以肯定的说:有的,只要你改变工作流程!

    『常见的快速调查方式』

    首先,你要弄清楚你的领导想要什么,只有这样布置工作的人才能知道写什么样的调研提纲,画什么样子的表,否则弄着弄着就成了庞大无比的表,然后被发通知,要求几天之内就得报回,你还能活着走出公司的大门?。

    其次,超人一步的提前思维,上面如果催得紧,你就得抓紧给一线人员原表转发,并要求他们尽量提前2天上报,要不你是绝对来不及汇总的。

    然后,一线人员填表各种实际数据与报表口径有差异,电话打爆,大家商量着填,时限到了,赶紧报回,还有报告没写呢!

    传话的本来就容易两头受气,下面的几家机构,总有人腰来腿不来,不是没报来,就是表不平,一不留神,就把身份证号当贷款余额给填了,晕死!:-(上面催得不行,本来时间就紧,还又提前了两天,让不让人活啦!

    最后,最终汇总的人,报告里想要知道的数据情况没有,不沾边的内容一大堆,数与数还不平,你能怎么说?让下面的人再给你重做?

    『标准化思维下的调查方式』

    上述需求,如果依照数据标准化思维来考虑,其实只需三张表就能解决问题,请看明细表、参数表、透视表解决数据汇总与分析问题的示例。

    个人以为,对于一线干活的人来讲,做好科学合理的明细表足矣!对于中后台的人,用那张透视表即可。如果从上到下都事无巨细的一大堆表,结果只能是都忙死,效率还低。

    首先,分析需求,下发通知及表样。

    在认真分析决策需求的基础上,一般就搞两张表,一是明细表,弄清自己需要获得的分析指标有哪些,也就是表中的字段,确保不重不漏,覆盖调查总需求。

    二是参数表,为明细表中的各个字段确定标准化的可选值,最好能依托现成的统计指标体系(如1104报表),避免填表的随意性。

    然后就可以下发了。

    其次,一线人员依照参数表,填好明细表,保证字段与记录不重不漏,大数碰上就行。

    然后就可简要写个报告,随明细表上报了。

    再次,收回明细表并勾稽,无论是二传手,还是最终分析人员,只需初审报来的明细表是否合参数表的要求,对于因手工填报出现的数据质量问题,因为可定位至每一笔明细记录,所以很易纠改或确定处理方式。

    当明细表审过后,与下一级填报人员的沟通即完毕。

    最后,汇总数据并分析。这1,2,3的步骤完成了,到了4,分析人员只需再设计一张透视表,结合调查提纲与分析搞OLAP,动态分析撰写报告。

    -因为最初的明细表覆盖面广,颗粒度细,所以除非是最初没考虑到的个别情况,明细表+透视表+透视图,三者兼用,肯定可以满足调查需求,而且极大地减小了数据勾稽的工作量,多么简单快捷!

    很多分析人员,在最初的分解需求,下发通知与表样环节,搞“过水面”,照抄照转,当时是轻松了,却越往后越麻烦,直至事赶事儿,数据能勾稽平就不易了,谁还看数据真实性与分析深度呢?

    工欲善其事,必先利其器,标准化、大数据的思维方式还有很多需要我们仔细研究探讨的地方!让我们一起共同学习大数据思维吧!

  • ?

    六大主流大数据采集平台架构分析

    周夜山

    展开

    随着大数据越来越被重视,数据采集的挑战变的尤为突出。今天为大家介绍几款数据采集平台:

    Apache Flume Fluentd Logstash Chukwa Scribe Splunk Forwarder

    大数据平台与数据采集

    任何完整的大数据平台,一般包括以下的几个过程:

    数据采集–>数据存储–>数据处理–>数据展现(可视化,报表和监控)

    其中,数据采集是所有数据系统必不可少的,随着大数据越来越被重视,数据采集的挑战也变的尤为突出。这其中包括:

    我们今天就来看看当前可用的六款数据采集的产品,重点关注它们是如何做到高可靠,高性能和高扩展。

    1、Apache Flume

    Flume 是Apache旗下的一款开源、高可靠、高扩展、容易管理、支持客户扩展的数据采集系统。 Flume使用JRuby来构建,所以依赖Java运行环境。

    Flume最初是由Cloudera的工程师设计用于合并日志数据的系统,后来逐渐发展用于处理流数据事件。

    Flume设计成一个分布式的管道架构,可以看作在数据源和目的地之间有一个Agent的网络,支持数据路由。

    每一个agent都由Source,Channel和Sink组成。

    Source

    Source负责接收输入数据,并将数据写入管道。Flume的Source支持HTTP,JMS,RPC,NetCat,Exec,Spooling Directory。其中Spooling支持监视一个目录或者文件,解析其中新生成的事件。

    Channel

    Channel 存储,缓存从source到Sink的中间数据。可使用不同的配置来做Channel,例如内存,文件,JDBC等。使用内存性能高但不持久,有可能丢数据。使用文件更可靠,但性能不如内存。

    Sink

    Sink负责从管道中读出数据并发给下一个Agent或者最终的目的地。Sink支持的不同目的地种类包括:HDFS,HBASE,Solr,ElasticSearch,File,Logger或者其它的Flume Agent。

    Flume在source和sink端都使用了transaction机制保证在数据传输中没有数据丢失。

    Source上的数据可以复制到不同的通道上。每一个Channel也可以连接不同数量的Sink。这样连接不同配置的Agent就可以组成一个复杂的数据收集网络。通过对agent的配置,可以组成一个路由复杂的数据传输网络。

    配置如上图所示的agent结构,Flume支持设置sink的Failover和Load Balance,这样就可以保证即使有一个agent失效的情况下,整个系统仍能正常收集数据。

    Flume中传输的内容定义为事件(Event),事件由Headers(包含元数据,Meta Data)和Payload组成。

    Flume提供SDK,可以支持用户定制开发:

    Flume客户端负责在事件产生的源头把事件发送给Flume的Agent。客户端通常和产生数据源的应用在同一个进程空间。常见的Flume 客户端有Avro,log4J,syslog和HTTP Post。另外ExecSource支持指定一个本地进程的输出作为Flume的输入。当然很有可能,以上的这些客户端都不能满足需求,用户可以定制的客户端,和已有的FLume的Source进行通信,或者定制实现一种新的Source类型。

    同时,用户可以使用Flume的SDK定制Source和Sink。似乎不支持定制的Channel。

    2、Fluentd

    Fluentd是另一个开源的数据收集框架。Fluentd使用C/Ruby开发,使用JSON文件来统一日志数据。它的可插拔架构,支持各种不同种类和格式的数据源和数据输出。最后它也同时提供了高可靠和很好的扩展性。Treasure Data, Inc 对该产品提供支持和维护。

    Fluentd的部署和Flume非常相似:

    Fluentd的架构设计和Flume如出一辙:

    Fluentd的Input/Buffer/Output非常类似于Flume的Source/Channel/Sink。

    Input

    Input负责接收数据或者主动抓取数据。支持syslog,http,file tail等。

    Buffer

    Buffer负责数据获取的性能和可靠性,也有文件或内存等不同类型的Buffer可以配置。

    Output

    Output负责输出数据到目的地例如文件,AWS S3或者其它的Fluentd。

    Fluentd的配置非常方便,如下图:

    Fluentd的技术栈如下图:

    FLuentd和其插件都是由Ruby开发,MessgaePack提供了JSON的序列化和异步的并行通信RPC机制。

    Cool.io是基于libev的事件驱动框架。

    FLuentd的扩展性非常好,客户可以自己定制(Ruby)Input/Buffer/Output。

    Fluentd从各方面看都很像Flume,区别是使用Ruby开发,Footprint会小一些,但是也带来了跨平台的问题,并不能支持Windows平台。另外采用JSON统一数据/日志格式是它的另一个特点。相对去Flumed,配置也相对简单一些。

    3、Logstash

    Logstash是著名的开源数据栈ELK (ElasticSearch, Logstash, Kibana)中的那个L。

    Logstash用JRuby开发,所有运行时依赖JVM。

    Logstash的部署架构如下图,当然这只是一种部署的选项。

    一个典型的Logstash的配置如下,包括了Input,filter的Output的设置。

    几乎在大部分的情况下ELK作为一个栈是被同时使用的。所有当你的数据系统使用ElasticSearch的情况下,logstash是首选。

    4、Chukwa

    官网:https://chukwa.apache.org/

    Apache Chukwa是apache旗下另一个开源的数据收集平台,它远没有其他几个有名。Chukwa基于Hadoop的HDFS和Map Reduce来构建(显而易见,他用Java来实现),提供扩展性和可靠性。Chukwa同时提供对数据的展示,分析和监视。很奇怪的是它的上一次 github的更新事7年前。可见该项目应该已经不活跃了。

    Chukwa的部署架构如下:

    Chukwa的主要单元有:Agent,Collector,DataSink,ArchiveBuilder,Demux等等,看上去相当复杂。由于该项目已经不活跃,我们就不细看了。

    5、Scribe

    代码托管:https://github/facebookarchive/scribe

    Scribe是Facebook开发的数据(日志)收集系统。已经多年不维护,同样的,就不多说了。

    6、Splunk Forwarder

    以上的所有系统都是开源的。在商业化的大数据平台产品中,Splunk提供完整的数据采金,数据存储,数据分析和处理,以及数据展现的能力。

    Splunk是一个分布式的机器数据平台,主要有三个角色:

    Search Head负责数据的搜索和处理,提供搜索时的信息抽取。

    Indexer负责数据的存储和索引 Forwarder,负责数据的收集,清洗,变形,并发送给Indexer

    Splunk内置了对Syslog,TCP/UDP,Spooling的支持,同时,用户可以通过开发 Input和Modular Input的方式来获取特定的数据。在Splunk提供的软件仓库里有很多成熟的数据采集应用,例如AWS,数据库(DBConnect)等等,可以方便的从云或者是数据库中获取数据进入Splunk的数据平台做分析。

    这里要注意的是,Search Head和Indexer都支持Cluster的配置,也就是高可用,高扩展的,但是Splunk现在还没有针对Farwarder的Cluster的功能。也就是说如果有一台Farwarder的机器出了故障,数据收集也会随之中断,并不能把正在运行的数据采集任务Failover到其它的 Farwarder上。

    总结

    我们简单讨论了几种流行的数据收集平台,它们大都提供高可靠和高扩展的数据收集。大多平台都抽象出了输入,输出和中间的缓冲的架构。利用分布式的网络连接,大多数平台都能实现一定程度的扩展性和高可靠性。

    其中Flume,Fluentd是两个被使用较多的产品。如果你用ElasticSearch,Logstash也许是首选,因为ELK栈提供了很好的集成。Chukwa和Scribe由于项目的不活跃,不推荐使用。

    Splunk作为一个优秀的商业产品,它的数据采集还存在一定的限制,相信Splunk很快会开发出更好的数据收集的解决方案。

  • ?

    数据采集过程中的常见问题

    冷淡

    展开

    经过两周的整理总结,沉淀出来好多数据采集的经验与大家分享。

    前嗅免费模板共享链接:http://forenose/help/collection/template/cases.html

    1.如何进行数据采集?

    ①下载安装软件后,登录到软件上。

    ②准备好模板:在前嗅的官网上下载免费的模板或自己配置好的模板

    ③将下载的官网导入到软件中。

    点击文件---点击导入采集文件(将采集文件导入,自己配置的模板请忽略这一步)

    ④在数据建表中建关联数据表

    选中需要采集模板下的表单---点击创建关联数据表,所创表名不能为汉字,点击确定---在所创数据表前的方框打勾即可关联数据表。详情见下图。

    此时在数据浏览中就存在了刚刚建的关联数据表。

    ⑤进行数据采集。

    在需要进行数据采集的模板前打勾--点击允许采集--点击开始按钮即可进行数据采集。详情见下图。

    ⑥数据预览及导出

    选中关联表---点击刷新按钮即可查看数据---点击导出按钮即可导出数据。详情见下图。

    多种导出方式:

    a.可以将采集到的数据全部导出。

    b.可以将数据分割导出,设置特定数目后数据会分别储存放在文件夹中。

    c.可以将每个字段所采集到的内容分别导出到不同文件夹,方便查看。

    数据导出教程:

    http://forenose/help/guildbook/crawler_new/5-2.html

    2.所采集的网站弹验证码是怎么回事?

    弹验证码分为四种情况:

    ①登录需要验证码:登录时只需要一个验证码,所以直接手动填写配置即可。

    ②多账号登录:每次账号登录都需要验证码,此时应该接第三方打码平台。

    前嗅(forenose)是首个深度大数据专家。

    提供数据采集-分析-处理-管理-营销-应用,自主知识产权的全套大数据产品 。

  • ?

    武汉中仪数据采集分析软件

    何南莲

    展开

    PipeSight管道检测视频判读报告软件

    对检测视频文件进行播放预览、添加检测信息、截取缺陷图像、判读描述等;可将判读结果数据自动生成为图文并茂的检测报告;可导出GIS平台通用的ShapeFile接口数据;提供电子地图查阅功能,在电子地图中标注出作业点的位置,查看作业点对应的检测数据、判读信息、缺陷图片和检测视频;

    PipeLineTracer管道检测定位示踪软件

    可进行管道坡度测量,曲线绘制,并分析生成报告;

    PipeSonar管道声纳成像分析报告软件

    可自动检索管壁轮廓并计算沉积深度、沉积宽度、沉积体积、水位高度。支持测量尺、测量环、测量网格等多种鼠标测量工具,以进行距离、宽度、高度、半径、直径等测量操作。提供高自由度的三维管道模型漫游功能,对实体、网格、点列三种管道模型均提供管内漫游和自由漫游方式。采用回波幅度和回波时间成像技术提供三种视图:管壁横断面图、管壁全景展开图和三维管道模型。具有视图联动功能,可将不同视图中选择的位置对行关联定位和标记。

    PipeFell管道电法测漏定位软件

    用于进行管道电法测漏检测数据的采集存储;可对电法测漏仪的结果数据进行存储、显示、编辑、导出、分析;可将电法测漏仪的结果数据自动生成为图文并茂的检测报告(包括项目信息、工程概况、缺陷分布示意图、检测设备简介、缺陷统计图表、详细缺陷图表等内容);

  • ?

    数据分析师需要掌握的知识:数据采集内容与程序

    东方旅

    展开

    数据采集内容

    数据采集包括历史数据的采集和当前市场数据的采集,是科学进行数据分析的基础,数据采集的准确与否直接决定了数据分析的价值。

    在企业运营过程中,假设企业环境基础不稳定,项目发展的规律在运营期间内没有大的变化,我们可以通过搜集准确的历史数据或可比历史数据,根据以往的发展规律,运用定量预测技术对未来收入和成本加以预测,直接推算出预测的相关数据。当运营环境略有改变时,可以利用定性预测技术对预测结果加以修正。因而,这类项目的数据采集主要是对历史数据的有效采集。

    对于新开的发的项目,由于缺乏可比性历史数据,或者市场发展规律不明确或不稳定,我们则先需要通过市场调研甄别影响市场需要求的主要市场因素的变量,根据项目具体情况选择市场调研的途径和方法,进而采集相关的市场数据,形成预测主要市场因素间关系的数据基础。

    企业所在的市场不同,影响需求的主要因素不同,数据采集的途径也不同。

    数据采集程序

    1、制定市场研究的具体计划

    在市场研究工作中数据采集是最重要的部分,它帮助解决投资与经营中相关的重要数据的确定和决策的改进。然而,数据采集工作是要花费资金的,尽量其带来的益处不言而喻,但是,如果要采集数据,就一定要让这笔费用华的物超所值。为了达到这一目标,需要周密的计划、安排和监控。这样做,不仅从协调计划的方面看是很重要的,而且也确保在预计时间内获得重要的数据,同时也可将成本监控在一定的范围内。

    2、明确数据来源

    在数据采集前,必须要对数据资料来源进行选择。数据资料按其来源不同,可分为第一首资料和第二手资料。第一手资料指为了一定的目的采集所得的原始资料。采集第一手资料的费用比较高,但资料的价值相当大。这种资料常常来自现场的调查,其准确度高且针对性强。第二手资料是指采集现成的资料,包括互联网上的信息,各种报刊

    文献上的资料,还有各类权戚机构发布的统计和研究报告等等,在现代项目研究中,由于互联网应用的普及,获取各种二手资料比起以往变得更加便捷,内容也异常丰富,所以二手资料的采集成为非常重要的调研手段.它有方便、快捷.成本较低的优点。数据分析人员还可以从内部资料中提取第二手资料.也可以利用外部资料间接获取。常见的内部资料往往来自企业的财务报表.比如.资金平衡表、销售统计以及其他报表档案。项目数据分析的起点始于采集第二手资料.但是这样的二手资料必须经过仔细统计、筛选及甄别.以尽可能保证资料的精确、可靠和真实。

    3、明确抽样方案及样本容量

    在一手数据的采集中,根据项目所属的特定行业及特定市场定位,许多数据可以通过直接采集得到全部样本,尤其对于成本、费用等可控制的要素;然而,对于其他数据的采集,比如说产销硫及其趋势变化数据,其总体范围很广,很难直接获取全部数据。这时我们常采川抽样技术,从拟采集数据的总体中抽取有代表性的部分单位作为样本,对样本进行调查或观察,并根据样本统计城估计总体参数,对所猫投资数据进行顶测

    4、明确数据采集方法

    数据采集往往采用三种方法:访问调查法、实验法和观察法。访问调查法通过访问代表性样本而获得数据,强调语言应答。而观察法强调非语言方式,通过调研人员在事件发生时或在过去已发生事件的记录中采集信息 · 与上述两种方法相比,实验法能够有效控制调研环境,在实际项目数据采集中,可根据项目特点、数据采集成本费用预算标准、时间及精度要求,采用不同的方法。

    5、问卷设计

    为了达到采集数据的目的,采川问卷方式进行调査是近年应用最广的一种调査手段。问卷设计的好坏,在很大程度上取决于调查问卷的回收率和有效率。另外,—张好的调查问卷必须满足后期数据分析的两个基本标准:相关性与准确性。

    问卷设计部分包括了对问卷结构、问卷设计原则、问卷的问题格式等问题的讨论与分析。

    6、数据处理及分析

    原始数据收集回来后,可能出现虚假、差错、冗余等现象,如果简单地把这些数据投 入预测分析,可能会导致错误的分析结论,从而使整个分析工作失去意义。因此,首先要对数据进行整理和加工,才能进行分析研究并得出科学的结论。数据的处理是指运用科学的方法,将调査所得的原始资料按调査目的进行审核、编码、录人及预分析的过程

  • ?

    如何做市场调研及经营数据的采集与分析?

    怪珈

    展开

    最近在研究商超零售的数据分析,有不少干货和想法可分享。此前,一直注重店铺管理、商品库存管理、财务绩效管理的数据分析。后来发现,无论是零售商铺的选址,还是百货商场的招商营运,都有不少需要运用到数据管理思维的地方。

    店铺选址前或者招商营运前都要进行市场调研,小规模的店家可能会说,我照自己的经验,观测人流量以及周边店铺的经营情况来判断,这样的方法确实是有迹可寻。但是,店铺不是放着让你来选的,店铺商也是需要去谈的,甚至对于那些成体系的,每年都在扩张的一些企业,必须需要一套成体系的数据分析方法论来指导。

    一、市场调研的要点

    1、着重于项目周边状况调查,如:业态布局、购买力等;

    2、网点及竞争对手调研的要点

    3、收集品牌资源,是否符合定位,有无可备选方案,效益最大化;

    针对选址,

    可采用常用的SWOT分析模型,分析内部环境以及外部环境的优劣势;而后采用3C模型(Company商铺,Customer顾客,Competitor 竞争者)对开店的选址分析;看附近1小时经济圈、2小时经济圈、3小时经济圈的覆盖范围。

    而正式营运之后,最主要关注的就是客流量。

    传统零售的数据是基于交易客流,基本等同于俗称的会员。商超里面的客流其实分为交易客流、返店客流、进店客流、到达客流、潜在客流。这里最容易获取的就是交易客流,因为企业现有的CRM系统或者收银系统基本都能涵盖这部分客流。怎么得顾客数据?这就要建立一整套的全顾客全消费行为管理的客流分析系统。

    客流数据分析建模

    二、如何去经营分析?

    经营分析是指商业运营管理者通过数据采集并运用统计、分析、图表呈现等方式,对商场整体经营情况进行深入解析。

    确定这样一个流程后,经营分析按照时间划分一般分为日、周、月以及一些关键时期,比如活动、法定节假日等等。形式以经营报表为主。

    大体分析内容

    经营分析的指标解析

    做好全百货的经营分析要发挥主观能动性,有了数据和图表,要做好经营分析,还要发挥人的主观能动性,营运人员需根据数据和图表阐述现象并提出相关建议,加强与店铺、品牌负责人的沟通和联系,充分了解店铺的经营现状。

    三、关于品牌店铺活动的分析

    经营分析案例分享及关注点(日经营分析)

    以上每日的客流与销售趋势图,需要关注波动趋势、波动周期和波动异常。比如波峰大多是重大节假日或企划活动,或者特殊事件。

    店铺活动分析

    活动前期搭建好相关指标,收集活动数据,实时监测分析。

    至于如何搭建这样的分析体系,譬如以上用finereport搭建的活动监测模板,这里不多赘述。前提需要明确分析的指标,之后就是数据收集、整合、分析、展现的额工作啦~

  • ?

    携程用户数据采集与分析系统

    粱烙

    展开

    一、携程实时用户数据采集系统设计实践

    随着移动互联网的兴起,特别是近年来,智能手机、pad等移动设备凭借便捷、高效的特点风靡全球,同时各类APP的快速发展进一步降低了移动互联网的接入门槛,越来越多的网民开始从传统PC转移至移动终端上。但传统的基于PC网站和访问日志的用户数据采集系统已经无法满足实时分析用户行为、实时统计流量属性和基于位置服务(LBS)等方面的需求。

    我们针对传统用户数据采集系统在实时性、吞吐量、终端覆盖率等方面的不足,分析了在移动互联网流量剧增的背景下,用户数据采集系统的需求,研究在多种访问终端和多种网络类型的场景下,用户数据实时、高效采集的方法,并在此基础上设计和实现实时、有序和健壮的用户数据采集系统。此系统基于Java NIO网络通信框架(Netty)和分布式消息队列(Kafka)存储框架实现,其具有实时性、高吞吐、通用性好等优点。

    1、技术选型和设计方案:

    一个典型的数据采集分析统计平台,对数据的处理,主要由如下五个步骤组成:

    图1、数据平台处理流程

    其中,数据采集步骤是最核心的问题,数据采集是否丰富、准确和实时,都直接影响整个数据分析平台的应用的效果。本论文关注的步骤主要在数据采集、数据传输和数据建模存储这三部分。

    为满足数据采集服务实时、高效性、高吞吐量和安全性等方面的要求,同时能借鉴互联网大数据行业一些优秀开源的解决方案,所以整个系统都将基于Java技术栈进行设计和实现。整个数据采集分析平台系统架构如下图所示:

    图2(数据采集分析平台系统架构)

    其中整个平台系统主要包括以上五部分:客户端数据采集SDK以Http(s)/Tcp/Udp协议根据不同的网络环境按一定策略将数据发送到Mechanic(UBT-Collector)服务器。服务器对采集的数据进行一系列处理之后将数据异步写入Hermes(Kafka)分布式消息队列系统。为了关联业务服务端用户业务操作埋点、日志,业务服务器需要获取由客户端SDK统一生成的用户标识(C-GUID),然后业务服务器将用户业务操作埋点、日志信息以异步方式写入Hermes(Kafka)队列。最后数据消费分析平台,都从Hermes(Kafka)中消费采集数据,进行数据实时或者离线分析。其中Mechanic(UBT-Collector)系统还包括对采集数据和自身系统的监控,这些监控信息先写入Hbase集群,然后通过Dashboard界面进行实时监控。

    (1)基于NIO的Netty网络框架方案

    要满足前面提到的高吞吐、高并发和多协议支持等方面的要求。我们调研了几种开源异步IO网络服务组件(如Netty、MINI、xSocket),用它们和NginxWeb服务器进行了性能对比,决定采用Netty作为采集服务网络组件。下面对它进行一些概要介绍:Netty是一个高性能、异步事件驱动的NIO框架,它提供了对TCP、UDP和文件传输的支持,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获得IO操作结果。

    图3(Netty框架内部组件逻辑结构)

    Netty的优点有:

    a、功能丰富,内置了多种数据编解码功能、支持多种网络协议。

    b、高性能,通过与其它主流NIO网络框架对比,它的综合性能最佳。

    c、可扩展性好,可通过它提供的ChannelHandler组件对网络通信方面进行灵活扩展。

    d、易用性,API使用简单。

    e、经过了许多商业应用的考验,在互联网、网络游戏、大数据、电信软件等众多行业得到成功商用。

    Netty采用了典型的三层网络架构进行设计,逻辑架构图如下:

    图4(Netty三层网络逻辑架构)

    第一层:Reactor通信调度层。该层的主要职责就是监听网络的连接和读写操作,负责将网络层的数据读取到内存缓冲区中,然后触发各种网络事件,例如连接创建、连接激活、读事件、写事件等,将这些事件触发到Pipeline中,再由Pipeline充当的职责链来进行后续的处理。

    第二层:职责链Pipeline层。负责事件在职责链中有序的向前(后)传播,同时负责动态的编排职责链。Pipeline可以选择监听和处理自己关心的事件。

    第三层:业务逻辑处理层,一般可分为两类:a. 纯粹的业务逻辑处理,例如日志、订单处理。b. 应用层协议管理,例如HTTP(S)协议、FTP协议等。

    我们都知道影响网络服务通信性能的主要因素有:网络I/O模型、线程(进程)调度模型和数据序列化方式。

    在网络I/O模型方面,Netty采用基于非阻塞I/O的实现,底层依赖的是JDKNIO框架的Selector。

    在线程调度模型方面,Netty采用Reactor线程模型。常用的Reactor线程模型有三种,分别是:

    a、Reactor单线程模型:Reactor单线程模型,指的是所有的I/O操作都在同一个NIO线程上面完成。对于一些小容量应用场景,可以使用单线程模型。

    b、Reactor多线程模型:Rector多线程模型与单线程模型最大的区别就是有一组NIO线程处理I/O操作。主要用于高并发、大业务量场景。

    c、主从Reactor多线程模型:主从Reactor线程模型的特点是服务端用于接收客户端连接的不再是一个单独的NIO线程,而是一个独立的NIO线程池。利用主从NIO线程模型,可以解决一个服务端监听线程无法有效处理所有客户端连接的性能不足问题。Netty线程模型并非固定不变的,它可以支持三种Reactor线程模型。

    在数据序列化方面,影响序列化性能的主要因素有:

    a、序列化后的码流大小(网络带宽占用)。

    b、序列化和反序列化操作的性能(CPU资源占用)。

    c、并发调用时的性能表现:稳定性、线性增长等。

    Netty默认提供了对GoogleProtobuf二进制序列化框架的支持,但通过扩展Netty的编解码接口,可以实现其它的高性能序列化框架,例如Avro、Thrift的压缩二进制编解码框架。

    通过对Netty网络框架的分析研究以及对比测试(见后面的可行性分析测试报告)可判断,基于Netty的数据采集方案能解决高数据吞吐量和数据实时收集的难点。

    》》点击阅读全文

  • ?

    干货丨大数据是如何被采集及应用的

    空笑颜

    展开

    尽管“大数据”一词近年来屡遭热捧

    但很多人都还不知道什么是大数据

    更不知道大数据有甚卵用

    这两年,发现“大数据”这个词出现的越来越频繁了

    不仅企业,连国家都在部署大数据战略

    一番百度了之后

    Oh~ emmmmmmmmm~ +_+

    还是没搞懂大数据到底是个什么玩意儿

    直到有一天

    我发现一个秘密

    不管我在网上搜索什么

    页面都会跳出我要搜索的相关产品或关联事物

    然后,我恍然大悟!

    所谓大数据,就是算法!

    它能够“算”出我们“心中所想”

    那么问题来了

    大数据技术是如何采集到我们的信息的呢?

    数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。在互联网行业快速发展的今天,数据采集已经被广泛应用于互联网及分布式领域,比如摄像头,麦克风,都是数据采集工具。

    数据采集系统整合了信号、传感器、激励器、信号调理、数据采集设备和应用软件。在数据大爆炸的互联网时代,数据的类型也是复杂多样的,包括结构化数据、半结构化数据、非结构化数据。结构化最常见,就是具有模式的数据。非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,包括所有格式的办公文档、文本、图片、XML, HTML、各类报表、图像和音频/视频信息等等。大数据采集,是大数据分析的入口,所以是相当重要的一个环节。

    我们首先来了解一下数据采集的三大要点:

    一、数据采集的三大要点

    (1)全面性

    数据量足够具有分析价值、数据面足够支撑分析需求。

    比如对于“查看商品详情”这一行为,需要采集用户触发时的环境信息、会话、以及背后的用户id,最后需要统计这一行为在某一时段触发的人数、次数、人均次数、活跃比等。

    (2)多维性

    数据更重要的是能满足分析需求。灵活、快速自定义数据的多种属性和不同类型,从而满足不同的分析目标。

    比如“查看商品详情”这一行为,通过埋点,我们才能知道用户查看的商品是什么、价格、类型、商品id等多个属性。从而知道用户看过哪些商品、什么类型的商品被查看的多、某一个商品被查看了多少次。而不仅仅是知道用户进入了商品详情页。

    (3)高效性

    高效性包含技术执行的高效性、团队内部成员协同的高效性以及数据分析需求和目标实现的高效性。也就是说采集数据一定要明确采集目的,带着问题搜集信息,使信息采集更高效、更有针对性。此外,还要考虑数据的及时性。

    不同应用领域的大数据其特点、数据量、用户群体均不相同。不同领域根据数据源的物理性质及数据分析的目标采取不同的数据采集方法。

    那么,接下来我们再来了解一下常用的数据采集的方法。

    常用的数据采集方法归结为以下三类:传感器、日志文件、网络爬虫。

    (1)传感器

    传感器通常用于测量物理变量,一般包括声音、温湿度、距离、电流等,将测量值转化为数字信号,传送到数据采集点,让物体有了触觉、味觉和嗅觉等感官,让物体慢慢变得活了起来。

    (2)系统日志采集方法

    日志文件数据一般由数据源系统产生,用于记录数据源的执行的各种操作活动,比如网络监控的流量管理、金融应用的股票记账和 web 服务器记录的用户访问行为。

    很多互联网企业都有自己的海量数据采集工具,多用于系统日志采集,如Hadoop的Chukwa,Cloudera的Flume,Facebook的Scribe等,这些工具均采用分布式架构,能满足每秒数百MB的日志数据采集和传输需求。

    (3)Web 爬虫

    网络爬虫是指为搜索引擎下载并存储网页的程序,它是搜索引擎和 web 缓存的主要的数据采集方式。通过网络爬虫或网站公开API等方式从网站上获取数据信息。该方法可以将非结构化数据从网页中抽取出来,将其存储为统一的本地数据文件,并以结构化的方式存储。它支持图片、音频、视频等文件或附件的采集,附件与正文可以自动关联。

    此外,对于企业生产经营数据上的客户数据,财务数据等保密性要求较高的数据,可以通过与数据技术服务商合作,使用特定系统接口等相关方式采集数据。比如八度云计算的数企BDSaaS,无论是数据采集技术、BI数据分析,还是数据的安全性和保密性,都做的很好。

    数据的采集是挖掘数据价值的第一步,当数据量越来越大时,可提取出来的有用数据必然也就更多。只要善用数据化处理平台,便能够保证数据分析结果的有效性,助力企业实现数据驱动。

数据采集分析

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP