精华内容
下载资源
问答
  • SPSS大数据案例分析报告.pdf
  • 互联网-大数据案例

    2018-02-26 19:04:30
    大数据案例:自有产品畅想、基础产品规划设想、数能数说产品设计、智慧数据产品设计、数能数道产品设计 案例模型:时空洞察、智慧社区、资源全景平台、数据集市、保险反欺诈、电信欺诈分析、移动研发等
  • spark大数据案例

    2018-11-12 09:21:20
    包含了Spark的一系列的小案例,包含core,sql,stream等案例
  • 1. 案例开发练习 问题 依次完成以下两小题的任务: (1) 代码实现网站连续几日UV量统计 (2) 网站每日每个连接来源统计 数据:access.log(nginx服务器中获取)
  • 大数据案例

    2013-01-26 22:03:59
    大数据案例-中国移动广东为用户提供详单账单的实时查询。大家可以下载参考一下。
  • 华为FusionInsight大数据案例集.zip
  • 由工业和信息化部、国家发展和改革委员会、国家互联网信息办公室和贵州省人民政府主办,国家工业信息安全发展研究中心承办的《大数据优秀产品和应用解决方案案例系列丛书》发布会暨数博会“十佳大数据案例”揭晓活动...
  • 1 Redis安装练习 问题 依次完成以下2小题的任务: 1) 安装Redis 2) 配置复制
  • 大数据案例,行业是汽车信息相关行业
  • 能源大数据理念是将电力、石油、燃气等能源领域数据进行综合采集、处理、分析与应用的相关技术与思想。能源大数据不仅是大数据技术在能源领域的深入应用,也是能源生产、消费及相关技术革命与大数据理念的深度融合,...

    在这里插入图片描述
    能源大数据理念是将电力、石油、燃气等能源领域数据进行综合采集、处理、分析与应用的相关技术与思想。能源大数据不仅是大数据技术在能源领域的深入应用,也是能源生产、消费及相关技术革命与大数据理念的深度融合,将加速推进能源产业发展及商业模式创新。随着信息化的深入和两化的深度融合,大数据在石油石化行业应用的前景将越来越广阔。

    能源大数据市场现状

    石油天然气行业的大数据仍处于起步阶段。2014年石油行业共组织召开5场提高油气行业信息化的会议,意在提高行业信息化程度,推广大数据在行业内的应用。根据中国石油招标网的数据统计,2014年中国石油共发起建设12个与大数据有关的项目,其中东方物探、新疆塔里木油田及大庆油田在大数据领域的动作最多。项目建设内容多集中在建设油田勘探开发一体化数据中心、建设研究成果知识库2个领域。这也说明目前国内油气行业仍处在数据的采集、存储阶段,尚未上升到大数据挖掘分析的高度。

    油气行业长期以来处于垄断地位,对于新技术的接受和推广较为缓慢。但随着国家大数据战略的推行,大数据在能源行业必将展开应用。预计大数据也将写入能源行业的十三五规划,未来大数据必会成为油气行业新的爆发点。

    由于石油、煤炭等能源的生产是不可持续的,因此,国家在近年发布了一系列相关政策,明确提出将提高可再生能源的利用率,其中包括《关于互联网+行动的指导意见》、《关于推进互联网+智慧能源发展的指导意见》,都在指向新型的能源互联网。

    能源产业消费结构

    中国能源消耗一直以煤炭为主,近年来天然气、风电、水电等清洁能源占比缓慢提高。煤炭从2008年的占比70.3%降至2013年的66.0%,石油的消耗量始终保持在18%上下,天然气由2008年的占比3.7%升至2013年的5.8%,水电、风电、核电从2008年的7.7%升至9.8%。煤炭的主导地位短期内不会产生太大变化。受国家环保政策支持,预计未来天然气等清洁能源的消耗量将逐渐增大。
    在这里插入图片描述
    据调查机构BP最新发布的2035世界能源展望,煤炭从2000年以来增长最快的化石燃料(年均3.8%)变为增速最慢的燃料(年均0.8%)。这也反映了亚洲煤基工业化趋缓以及关键市场的气价走低的趋势。天然气是增速最快的化石燃料(年均1.9%),而石油增速略高于煤炭(年均0.8%)。可再生能源是增速最快的燃料(年均6.3%)。核电(年均1.8%)和水电(年均1.7%)的增长快于总体能源增速。

    能源产业大数据市场需求

    ①石油行业的大数据需求

    国内三大石油国企将成为推动石油大数据进展的主力。中国石油的数据中心,中石化的能源行业十三五规划、炼油大数据、油品销售大数据,中海油的海上石油勘探、海底地震,这些都是大数据与能源行业的结合点。

    ②电力行业的大数据需求

    国家电网于2014年重新开始大数据的尝试,并开始大力推动智能电网。智能电网的推广,将带动对大数据调节用电高峰的需求,家庭用电及工业用户节能省电的需求,这些需求必将引发一系列智能设备、数据分析厂商的崛起。

    能源大数据行业应用现状

    石油天然气行业大数据

    对石油行业来说,国内石油企业将会把更多的新技术应用于战略决策、科技研发、生产经营和安全环保等各个领域,目的是为了从大数据资源中挖掘更多的财富和价值。大数据应用是石油行业信息化深入、IT与业务深度融合的必然,在我国石油石化行业应用的前景将越来越广阔。随着石油储备的逐步减少,石油石化行业产业链中的勘探、开发难度日益增大,信息化的成熟度已经成为影响行业增长幅度的首要因素。
    在这里插入图片描述
    电力行业大数据

    对电力行业来说,大数据是电力企业深化应用、提升应用层次、强化集团企业管控的有力技术手段。随着电力企业各类IT系统对业务流程的基本覆盖,采集到的数据量迅速增长。电力行业面临的问题不仅仅是收集和存储数据,而是围绕数据采用相应的定量和统计信息,挖掘更加有价值的信息。利用大数据可对业务进行分析,加工成有用的数据,进而全面掌控企业业务。
    在这里插入图片描述
    能源产业大数据关键技术

    能源大数据的发展也需要一些关键技术的支撑:

    大数据传输及存储技术

    能源管控系统各个环节的运行数据及设备状态在线监测数据将会带来海量数据传输和存储问题。

    实时数据分析及处理技术

    在未来的能源管控系统环境中,从采集、运输环节,到储存环节,都需要实时数据处理,借助大数据的分析技术可以从能源管控系统的海量数据中找出潜在的模态与规律,为决策人员提供决策支持。

    大数据展示技术

    包括可视化技术、空间信息流展示技术、历史流展示技术等。

    能源产业数据类型特点分析

    体量大

    是能源大数据的重要特征。随着能源企业信息化和智慧能源的全面建设,数据采集的范围、频度显著增加,能源数据飞速发展。

    类型多

    能源大数据涉及多种类型的数据,包括结构化数据、半结构化数据和非结构化数据。随着石油行业中视频应用的不断增多,音、视频等非结构化数据在能源数据中的占比进一步加大。

    此外,能源大数据应用过程中还存在着对行业内外能源数据、天气数据等多类型数据的大量关联分析需求,这些都直接导致了能源数据类型的增加;

    速度快

    主要指对能源数据采集、处理、分析的速度。能源系统中业务对处理时限的要求比较高,实时处理是能源大数据的重要特征,这也是能源大数据与传统的事后处理型的商业智能、数据挖掘间的最大区别。

    数据即能量

    能源大数据具有无磨损、无消耗、无污染、易传输的特性,并可以在使用过程中不断精炼而增值,可以在保障用户利益的前提下,在能源管控系统各个环节的低耗能、可持续发展方面发挥独特而巨大的作用。

    数据即交互

    能源大数据与国民经济社会存在广泛而紧密的联系,其价值不仅局限在石油系统内部,更体现在国民经济运行、社会进步以及各行业创新发展等多个方面。

    通过与行业外数据的交互融合,以及在此基础上全方位的挖掘、分析和展现,必将使能源大数据发挥更大价值。

    数据即共情

    企业的根本目的在于创造客户、创造需求,通过对用户需求的充分挖掘和满足,建立情感联系,为广大客户提供更加优质、安全、可靠的能源服务。

    能源大数据应用案例分析

    作为国内能源领军企业,中控智网集团在信息化建设方面已取得一定的成绩,并积累了大量的业务数据,进一步加强大数据关键技术的研究和应用,对促进中控智网产业转型升级、提升竞争力具有重要意义。

    掌沃数据通过建立大数据中心,实现对中控智网集团企业业务数据的深层次价值挖掘,提升企业管理和运营能力,平台采用当前业界先进的大数据处理技术和模式,构建业务松耦&中间性的大数据统计、分析和挖掘平台。

    通过资源的线性扩展,可实现单条信息秒级的在线处理性能、每日TB级数据离线分布式处理、PB级数据的存储。

    掌沃数据通过数据的关联分析和预测能力,帮助中控智网集团企业经营和决策,进而打造“智慧化”企业,实现企业决策、运营、管理的智能化,应对企业内外部风险,提升企业的经济效益和竞争力。

    安全生产管理领域

    对石油生产设备运行状态、参数、设备维修记录等数据进行分析,研究生产设备运行状态管理、计划检修工期安排、以及设备运行风险预警等方面的大数据技术应用,进一步提高生产设备精细化管理水平。

    能耗营销管理领域

    为积极适应进一步深化石油体制改革的总体要求,满足中控智网集团石油企业参与石油市场化交易的新需要,研究探索石油营销领域的大数据应用,实现区域化能耗统计、能耗历史等数据的综合分析,为全集团范围内石油营销提供信息化数据支撑。

    人力资源管理领域

    通过大数据技术探索人力资源管理基础信息与其他业务数据的关联关系。实现人资数据在相关业务应用系统中的共享,实现对员工的不同属性(知识、技能、角色定位、价值观等)指标进行细分,为全方位掌控公司人力资源现状提供数据支持。

    数据管理领域

    通过对业务应用系统中积累的大量业务数据进行分析,对数据进行统一规范、统一流程管理,进一步提高数据治理管控水平,实现对现有信息化数据资产的有效利用。

    制度标准管理领域

    通过对公司管理制度和流程进行梳理,建立统一的制度流程分析规则,建立制度管理与应用的知识库,实现各业务应用系统流程处理智能化辅助支持。

    能源互联网未来展望

    能源产业链从最初的一个链状结构,由能源生产端的电力、燃气、油品,经过勘探、开采,到中间环节的传输、量化,再到各管网单位使用,已经逐渐变成一个网状结构,也就是能源互联网。

    并且,在掌沃数据帮助企业建立能源大数据平台之后,根据不同场景以SaaS的方式提供服务,可以提高企业效能和优化能力。

    未来,能源互联网一定是彼此合作、互联互通的,在能源互联网应用中非常重要的一点,就是要对每一个节点进行精准画像,以能源用户为中心,将各个用能设备、环节数据化。

    欢迎各位关注掌沃数据网站http://javodata.com/,我们将发布行业动态,技术前言,领域方向,打造工业智能领域新社区,并欢迎热爱技术,热爱工业互联网,热爱AI和数学领域的同仁、专家和学者加入或者合作。共同为中国的腾飞做出贡献。

    欢迎关注同名微信:掌沃数据

    展开全文
  • 全球大数据案例汇编-行业篇193个案例.pdf
  • 大数据案例分析.pdf

    2020-10-26 20:27:01
    大数据案例分享 英特尔软件部 邓 刚 大数据真实案例分享 I 区域电子病历中心云平台方案 区域卫生电子病历中心原有系统整体架构 存在的问题 传统关系型数据库 数据存放在磁盘阵列中成为访问瓶颈无法 医院HIS系统 提供...
  • 1环境常规设置 问题 依次完成以下5个小题的任务 1) 设置IP为192.168.1.100,掩码为255.255.255.0,网关为192.168.1.1,并设置DNS为8.8.8.8主机名为master 2) 关闭防火墙 3) 配置ip为192.168.1.100的主机名为...
  • 联通大数据案例

    2018-06-20 19:51:52
    关于联通大数据应用的典型案例,可以供其他行业的企业借鉴
  • java大数据案例_3HBase

    2018-01-23 16:53:56
    1搭建HBASE集群并进行监控 问题 依次完成以下2个小题的任务: 1) 搭建Hbase分布式集群,要求一个Master、三个RegionServer,使用Hbase自带的Zookeeper 2) 安装后启动查看监控页面
  • 大数据案例30.pptx

    2021-09-23 14:21:25
    大数据案例30.pptx
  • 政务大数据案例库;案例库;2用户位置跟踪;2用户位置跟踪;2用户位置跟踪;案例库;2用户位置跟踪;2用户位置跟踪;案例库;联通城市大脑架构;10;11;12;统计工作日周末的客流量特点 选取适宜做潮汐车道的备选道路;3.5武汉市...
  • 英特尔公司和用友医疗在锦州区域卫生数据中心,利用基于英特尔至强 E5 服务器平台,以及英特尔Hadoop发行版( Intel Distribution ),成功的搭建了的完整的区域医疗大数据计算架构。
  • 微软工业大数据,微软工业大数据,微软工业大数据,微软工业大数据案例 ,(案例一 和利时工业自动化云平台 案例二特来电新能源汽车充电网的建设、运营)
  • 大数据案例分享
  • 华为FusionInsight大数据案例集.pptx
  • 10个典型的大数据案例

    千次阅读 2017-09-06 10:39:00
    在听Gartner的分析师Doug Laney用55分钟讲述55个大数据应用案例之前,你可能对于大数据是否落地还心存疑虑。Laney的演讲如同莎士比亚的全集一样,不过可能“缺乏娱乐性而更具信息量”(也许对于技术人员来说是这样的...

    10个典型的大数据案例

      在听Gartner的分析师Doug Laney用55分钟讲述55个大数据应用案例之前,你可能对于大数据是否落地还心存疑虑。Laney的演讲如同莎士比亚的全集一样,不过可能“缺乏娱乐性而更具信息量”(也许对于技术人员来说是这样的)。这个演讲是对大数据3v特性的全面阐释:variety(类型)、velocity(产生速度)和volume(规模)。术语的发明者就是用这种方式来描述大数据的 – 可以追溯到2001年。

      这55个例子不是用来虚张声势,Laney的意图是说明大数据的实际应用前景,听众们应该思考如何在自己公司里让大数据落地并促进业务的发展。“也许有些例子并非来自于你当前所处的行业,但是你需要考虑如何做到他山之石可以攻玉。”Laney表示。

      下面是其中的10个典型案例:

      1. 梅西百货的实时定价机制。根据需求和库存的情况,该公司基于SAS的系统对多达7300万种货品进行实时调价。

      2. Tipp24 AG针对欧洲博彩业构建的下注和预测平台。该公司用KXEN软件来分析数十亿计的交易以及客户的特性,然后通过预测模型对特定用户进行动态的营销活动。这项举措减少了90%的预测模型构建时间。SAP公司正在试图收购KXEN。“SAP想通过这次收购来扭转其长久以来在预测分析方面的劣势。”Laney分析到。

      3. 沃尔玛的搜索。这家零售业寡头为其网站Walmart.com自行设计了最新的搜索引擎Polaris,利用语义数据进行文本分析、机器学习和同义词挖掘等。根据沃尔玛的说法,语义搜索技术的运用使得在线购物的完成率提升了10%到15%。“对沃尔玛来说,这就意味着数十亿美元的金额。”Laney说。

      4. 快餐业的视频分析(Laney没有说出这家公司的名字)。该公司通过视频分析等候队列的长度,然后自动变化电子菜单显示的内容。如果队列较长,则显示可以快速供给的食物;如果队列较短,则显示那些利润较高但准备时间相对长的食品。

      5. Morton牛排店的品牌认知。当一位顾客开玩笑地通过推特向这家位于芝加哥的牛排连锁店订餐送到纽约Newark机场(他将在一天工作之后抵达该处)时,Morton就开始了自己的社交秀。首先,分析推特数据,发现该顾客是本店的常客,也是推特的常用者。根据客户以往的订单,推测出其所乘的航班,然后派出一位身着燕尾服的侍者为客户提供晚餐。也许,这听起来过于离奇,但是你必须审视自己:“我是否有能力做到这个程度?”Laney说。

      6. PredPol Inc.。PredPol公司通过与洛杉矶和圣克鲁斯的警方以及一群研究人员合作,基于地震预测算法的变体和犯罪数据来预测犯罪发生的几率,可以精确到500平方英尺的范围内。在洛杉矶运用该算法的地区,盗窃罪和暴力犯罪分布下降了33%和21%。

      7. Tesco PLC(特易购)和运营效率。这家超市连锁在其数据仓库中收集了700万部冰箱的数据。通过对这些数据的分析,进行更全面的监控并进行主动的维修以降低整体能耗。

      8. American Express(美国运通,AmEx)和商业智能。以往,AmEx只能实现事后诸葛式的报告和滞后的预测。“传统的BI已经无法满足业务发展的需要。”Laney认为。于是,AmEx开始构建真正能够预测忠诚度的模型,基于历史交易数据,用115个变量来进行分析预测。该公司表示,对于澳大利亚将于之后四个月中流失的客户,已经能够识别出其中的24%。

      9. Express Scripts Holding Co.的产品制造。该公司发现那些需要服药的人常常也是最可能忘记服药的人。因此,他们开发了一个新产品:会响铃的药品盖和自动的电话呼叫,以此提醒患者按时服药。

      10. Infinity Property & Casualty Corp.的黑暗数据(dark data)。Laney对于黑暗数据的定义是,那些针对单一目标而收集的数据,通常用过之后就被归档闲置,其真正价值未能被充分挖掘。在特定情况下,这些数据可以用作其他用途。该公司用累积的理赔师报告来分析欺诈案例,通过算法挽回了1200万美元的代位追偿金额。

    原文发布时间为: 2014-07-21
    本文来自云栖社区合作伙伴至顶网,了解相关信息可以关注至顶网。
    展开全文
  • 什 么 是 大 数 据 据 什么是 大 某比萨店的电话铃响了 客服人员拿起电话 你好我想要一份 XXX 比萨店您好请问有 什么需要我为您服务 16846146* 先生烦请先把您的会员卡 号告诉我 你为什么知道我所有的电话 号码 陈...
  • CIO必须知道的十个大数据案例,作为一个信息管理者必须知道的案例!
  • 以信息化与工业化深度融合为引领,以3D打印技术为代表,从而实现个性化定制的大规模工业化生产。进入信息化和互联网条件下的个性化制造,其先进性在于以工业化的效率制造个性化产品,效率高、成本低、质量稳定、满足...
  • 这个案例用到的东西很多,如果你能静下心来好好看完,你一定会受益匪浅的 首先我们对自己提出几个问题 1.怎么划分数据,怎么定义一组??? 2.考虑reduce的计算复杂度??? 3.能不能多个reduce??? 4.如何...

    首先我们来说说需求在这里插入图片描述
    假设以上就是我们需要处理的数据,我们需要计算出每个月天气最热的两天。
    这个案例用到的东西很多,如果你能静下心来好好看完,你一定会受益匪浅的
    首先我们对自己提出几个问题
    1.怎么划分数据,怎么定义一组???
    2.考虑reduce的计算复杂度???
    3.能不能多个reduce???
    4.如何避免数据倾斜???
    5.如何自定义数据类型???
    ----记录特点
    每年
    每个月
    温度最高
    2天
    1天多条记录怎么处理?
    ----进一步思考
    年月分组
    温度升序
    key中要包含时间和温度!
    ----MR原语:相同的key分到一组
    通过GroupCompartor设置分组规则
    ----自定义数据类型Weather
    包含时间
    包含温度
    自定义排序比较规则
    ----自定义分组比较
    年月相同被视为相同的key
    那么reduce迭代时,相同年月的记录有可能是同一天的,reduce中需要判断是否同一天
    注意OOM
    ----数据量很大
    全量数据可以切分成最少按一个月份的数据量进行判断
    这种业务场景可以设置多个reduce
    通过实现partition

    一>>>MainClass的实现

    package com.huawei.mr.weather;
    
    import java.io.IOException;
    
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.Path;
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapreduce.Job;
    import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
    import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
    
    /**
     * @author Lpf.
     * @version 创建时间:2019年4月13日 下午7:43:40
     */
    public class MainClass {
    	public static void main(String[] args) throws IOException, ClassNotFoundException, InterruptedException {
    
    		// 输入错误返回提示
    		if (args == null || args.length != 2) {
    			System.out.println("输入格式有误");
    			System.out.println("正确格式为:yarn jar weather.jar com.huawei.mr.weather.MainClass args[0] args[1]");
    		}
    
    		// 初始化hadoop默认配置文件,如果有指定的配置,则覆盖默认配置
    		Configuration conf = new Configuration(true);
    		// 创建Job对象,用到系统配置信息
    		Job job = Job.getInstance(conf);
    		// 指定job入口程序
    		job.setJarByClass(MainClass.class);
    		// 设置job名称
    		job.setJobName("weather");
    		// 指定文件从哪里读取,从hdfs加载一个输入文件给job
    		FileInputFormat.addInputPath(job, new Path(args[0]));
    		// 指定hdfs上一个不存在的路径作为job的输出路径
    		FileOutputFormat.setOutputPath(job, new Path(args[1]));
    		// 自主设置reduce的数量
    		job.setNumReduceTasks(2);
    		// 指定map输出中key的类型
    		job.setMapOutputKeyClass(Weather.class);
    		// 指定map输出中value的类型
    		job.setMapOutputValueClass(Text.class);
    
    		// 设置map中的比较器,如果不设置默认采用key类型自带的比较器
    		/**
    		 * 由于map里面的排序和这儿的排序不一样,称之为二次排序
    		 */
    		job.setSortComparatorClass(WetherComparator.class);
    
    		// 设置分区器类型 避免数据倾斜
    		job.setPartitionerClass(WeatherPartitioner.class);
    		
    		job.setMapperClass(WeatherMapper.class);
    		job.setReducerClass(WeatherReduce.class);
    
    		job.waitForCompletion(true);
    	}
    }
    

    二 >>>Weather 自定义key的实现

        package com.huawei.mr.weather;
        
        import java.io.DataInput;
        import java.io.DataOutput;
        import java.io.IOException;
        
        import org.apache.hadoop.io.WritableComparable;
        
        /**
         * @author Lpf.
         * @version 创建时间:2019年4月13日 下午8:15:26
         * map中输出key的自定义
         */
        public class Weather implements WritableComparable<Weather> {
        
        	private String year;
        	private String month;
        	private String day;
        	private Integer weather;
        
        	public String getYear() {
        		return year;
        	}
        
        	public void setYear(String year) {
        		this.year = year;
        	}
        
        	public String getMonth() {
        		return month;
        	}
        
        	public void setMonth(String month) {
        		this.month = month;
        	}
        
        	public String getDay() {
        		return day;
        	}
        
        	public void setDay(String day) {
        		this.day = day;
        	}
        
        	public Integer getWeather() {
        		return weather;
        	}
        
        	public void setWeather(Integer weather) {
        		this.weather = weather;
        	}
        
        	@Override
        	public void write(DataOutput out) throws IOException {
        		// 把封装的数据序列化之后写出去
        		out.writeUTF(year);
        		out.writeUTF(month);
        		out.writeUTF(day);
        		out.writeInt(weather);
        	}
        	/*
        	 * 读写的顺序要一致
        	 */
        
        	@Override
        	public void readFields(DataInput in) throws IOException {
        		// 把封装的数据序列化之后读进来
        		setYear(in.readUTF());
        		setMonth(in.readUTF());
        		setDay(in.readUTF());
        		setWeather(in.readInt());
        	}
        
        	@Override
        	public int compareTo(Weather that) {
        		int result = 0;
        		result = this.getYear().compareTo(that.getYear());
        		if (result == 0) {
        			result = this.getMonth().compareTo(that.getMonth());
        			if (result == 0) {
        				result = this.getDay().compareTo(that.getDay());
        				if (result == 0) {
        					// 如果年月日都相同,把温度按照高到低倒序排列
        					result = that.getWeather().compareTo(this.getWeather());
        				}
        			}
        		}
        
        		return result;
        	}
        }
        三 >>>自定义map中key的比较器用于排序
        package com.huawei.mr.weather;
    
    import org.apache.hadoop.io.WritableComparable;
    import org.apache.hadoop.io.WritableComparator;
    
    /**
     * @author Lpf.
     * @version 创建时间:2019年4月13日 下午8:29:41
     * map中的比较器设置
     */
    public class WetherComparator extends WritableComparator {
    
    	public WetherComparator() {
    		super(Weather.class, true);
    	}
    
    	@Override
    	public int compare(WritableComparable a, WritableComparable b) {
    		int result = 0;
    		Weather wa = (Weather) a;
    		Weather wb = (Weather) b;
    
    		// 分组比较器要保证同年同月为一组 和Weather里面的排序规则不一样
    		result = wa.getYear().compareTo(wb.getYear());
    		if (result == 0) {
    			result = wa.getMonth().compareTo(wb.getMonth());
    			if (result == 0) {
    				result = wb.getWeather().compareTo(wa.getWeather());
    			}
    		}
    		return result;
    	}
    }
    

    四>>>设置分区器避免数据倾斜

    package com.huawei.mr.weather;
    
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapreduce.Partitioner;
    
    /**
     * @author Lpf.
     * @version 创建时间:2019年4月13日 下午8:47:46 
     * 分区器,避免数据倾斜
     */
    public class WeatherPartitioner extends Partitioner<Weather, Text> {
    
    	@Override
    	public int getPartition(Weather key, Text value, int numPartitions) {
    
    		String month = key.getMonth();
    		int partitionNum = (month.hashCode() & Integer.MAX_VALUE) % numPartitions;
    		return partitionNum;
    	}
    }
    

    五>>>map里面对每一行的处理

        package com.huawei.mr.weather;
        
        import java.io.IOException;
        import java.text.ParseException;
        import java.text.SimpleDateFormat;
        import java.util.Calendar;
        import java.util.Date;
        
        import org.apache.hadoop.io.LongWritable;
        import org.apache.hadoop.io.Text;
        import org.apache.hadoop.mapreduce.Mapper;
        
        /**
         * @author Lpf.
         * @version 创建时间:2019年4月13日 下午8:55:29 map里面的处理
         */
        public class WeatherMapper extends Mapper<LongWritable, Text, Weather, Text> {
        
        	private SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-mm-dd");
        
        	private Weather wea = new Weather();
        
        	@Override
        	protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
        
        		// 每一行的数据格式为 1949-10-01 14:21:02 34c
        		String linStr = value.toString();
        		// {"1949-10-01 14:21:02","34c"}
        		String[] linStrs = linStr.split("\t");
        		// 得到温度
        		int weather = Integer.parseInt(linStrs[1].substring(0, linStrs[1].length() - 1));
        
        		// 获取时间
        		try {
        			Date date = DATE_FORMAT.parse(linStrs[0]);
        			Calendar calendar = Calendar.getInstance();
        			calendar.setTime(date);
        			int year = calendar.get(Calendar.YEAR);
        			int month = calendar.get(Calendar.MONTH);
        			int day = calendar.get(Calendar.DAY_OF_MONTH);
        			wea.setYear(year + "");
        			wea.setMonth(month + "");
        			wea.setDay(day + "");
        			wea.setWeather(weather);
        
        			// 把map中的值输出
        			context.write(wea, value);
        		} catch (ParseException e) {
        			e.printStackTrace();
        		}
        	}
        }
    六>>>reduce里面的输出
    package com.huawei.mr.weather;
    
    import java.io.IOException;
    import java.util.Iterator;
    
    import org.apache.hadoop.io.NullWritable;
    import org.apache.hadoop.io.Text;
    import org.apache.hadoop.mapreduce.Reducer;
    
    /**
     * @author Lpf.
     * @version 创建时间:2019年4月13日 下午8:55:35 
     * reduce 里面的处理
     */
    public class WeatherReduce extends Reducer<Weather, Text, Text, NullWritable> {
    
    	@Override
    	protected void reduce(Weather key, Iterable<Text> values, Context context)
    			throws IOException, InterruptedException {
    		Iterator<Text> iterator = values.iterator();
    		Text text = null;
    		String day = null;
    		while (iterator.hasNext()) {
    			text = iterator.next();
    			if (day != null) {
    				if (!day.equals(key.getDay())) {
    					// 输出本月温度最高的第二天
    					context.write(text, NullWritable.get());
    					break;
    				}
    			} else {
    				// 输出本月温度最高的第一天
    				context.write(text, NullWritable.get());
    				day = key.getDay();
    			}
    		}
    	}
    }
    

    年纪上来了 坐一下腰就酸的要死注释补充的不是很完整,有不明白的留言,乐意解答

    展开全文
  • 大数据卓越人才培养模式研究与实践--基于“新财经”视角以金融大数据案例教学应用方向为例.pdf
  • 对智能交通系统、全国上网记录,网络优化等的业务背景、部署方案、难点分析、逻辑构架等的分析,提供详细的平台分布图解。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 113,864
精华内容 45,545
关键字:

大数据案例