在企业架构中实施大数据解决方案


在企业架构中实施大数据解决方案 刘达 liuda@cn.ibm.com IBM 应用开发商合作部 议程 • 大数据的现状、趋势和问题 • IBM 大数据解决方案介绍 • IBM 大数据解决方案技术背景分析以及优势 • 参考资源 3 世界上的新增数据信息每 12 小时就会增长一倍! 2005 年,全球RFID 标签的数量为 13 亿个。 而在 2011 年底,这个数量将变为 300 亿个 Data Variety(数据多样性) 2011 上网 人数为 2 billion 300 亿 RFID 标 签 (1.3B in 2005) 46 亿 部 手机拥有照 相功能 9 亿 GPS 每 年被销售 2009 年有7600 万 智 能计量设备,2014 年将为 2 亿个 Twitter 每天处理的 数据量:7 TBs Facebook 每天处理的数 据量:10 TBs 资本市场的数据,2003- 2006 年增长了: 1750%, World Data Centre for Climate 保 存了 220 TBS 主要数据以及 9 PBs 的辅助数据 16,000 tps 32,0 00 tps 64,000 tps 128,000 tps 2,00 0 tps 4,00 0 tps 8,000 tps ƒ 2 亿用户每天产生超过 9 千万条记录。 – 纽约证交所每天产生 1TB 交易记录 – Twitter 每天产生 7TB 的记录数据 Twitter 持续创造着新的纪录 从海量规模、多样性和快速流量的数据集中抽取有用的信息,这是原有方案 和技术很难实现的目标。 大数据带来的机会 处理各种各样复杂结构的数 据,包括:关系型数据、日 志和文本数据 流数据和大规模的数据改变 超大容量的存储,从 TB 级 到 PB(1K TBs)级甚至是 ZB(1B TBs)级。 Variety: Velocity: Volume: 大数据时代面临的问题 • 相当于不断拥有的数据而言,企业能够分析的数据比例在不断 降低。 • 简而言之,现在的企业在面对一些“可能是机会的数据”时,并 没有清醒的认识。 • 最终的问题回到了我们如何认识、管理和分析我们所拥有的各 种数据。 企业所拥有的数据 企业可以处理的数据比例 “盲区” Up to 10,000 Times larger Up to 10,000 times faster Traditional Data Warehouse and Business Intelligence Data Scale Data Scale yr mo wk day hr min sec … ms μs Exa Peta Tera Giga Mega Kilo Decision Frequency Occasional Frequent Real-time Data in Motion Data at Rest 大数据带来了新的机遇但是需要新的分析方法 电信行业 10 万记录/秒,60亿/天 每 10 毫秒作出一个动作 270TB的数据需要进行深入分析 DeepQA 100s GB for Deep Analytics 3 sec/decision 交通系统 25 万个检测数据/秒 每 1-2毫秒作出一个动作 公共安全 60万 记录/秒, 500亿/天 每 1-2毫秒作出一个动作 320TB 的数据需要进行深入分析 大数据背后隐藏的秘密 • 如何从大量事件驱动的信息中发现 其中的商业价值? – 如果只是对一个 3 只蜜蜂的群体 进行分析,那么将十分简单。 – 如果是一个一百万只蜜蜂的蜂群 ,那么将是一个巨大的任务。 • 每年全球的数据量会以 30 % 的速度增长 Streams Computing 图示 directory: ”/img" filename: “farm” directory: ”/img" filename: “bird” directory: ”/opt" filename: “java” directory: ”/img" filename: “cat” tuples height: 640 width: 480 data: height: 1280 width: 1024 data: height: 640 width: 480 data: ƒ 行业革命:更好地生产 – 流水线让我们认识到可以将生产步骤进行分解,然后持续地进行生产。 – Streams 意味着在您的组织中按照数据的流向一步步地进行数据处理。 ƒ Streams 可以避免在数据被处理之前被保存到磁盘上并进行转换:持续流水线理论 ƒ 实时的安保系统:声音、图像 等等非结构化信息 Data In Motion(动态数据) 每秒收到 1270 万个市场信息, 并在 130 毫秒内为每一个客户生 成相应的交易推荐信息。 IPDR.org 每天将分 析超过 60 亿个 IP 记录。 X 射线衍射的速度到达 100MBps 处理每秒1000个单独的 信息 • 将已有的静态数据(个 人信息、分析数据、历 史数据等)与新兴的动 态数据(社交应用数据、 电信数据)进行融合和 分析后,会挖掘出很多 新的业务信息。 Facebook Network Public database Merged Network Amy 对于零售商的价值何 在?她的影响力有多大? Retailer Calling Network Amy Bearn 32, 已婚, 3 岁孩子的母亲 会计 Telco Score: 91 CPG Score: 76 Fashion Score: 88 CPA Score: 96 Data at Rest(静态数据) Telco company Amy 对于电信运营商的价 值?她是否会更换成其他运 营商?有多少用户会效仿 她? • 通过天气信息进行建模,实现风机放置位置的优化,增大电力 和使用寿命 – 依据全球 1×1 公里的网格数据提供的上百个参数进行建模 – 分析的时间周期从 3 星期缩减到 3 天! • 建模的结果用于预测以及实时操作的数据基础 – 一旦风机投入发电,风机上的传感器将收集和存储大量的数 据,同时会和模型中的历史数据以及其他辅助数据进行比 – 对系统将会计算出合适的服务间隔、故障预期时间以及通过风 力情况给出的优化方案 Optimizing capital investments based on double digit Petabyte analysis IBM Watson 是数据分析的极大创新,但是没有高质量的数据作为基础,这一目标是无 法实现的。 Big Data and Watson InfoSphere BigInsights POS Data CRM Data Social Media 分析的结果 - 消费习惯 - 社交关系 - 购买趋势 Advanced search and analysis Watson 可以利用大数据解决方案提供 的强大分析能力得到更精确的结果 大数据解决方案用于构建 Watson 系统 的知识库。 Watson 使用 Apache Hadoop 实现将 数据加载带内存中这一操作分布到多 个节点上进行 大约 2 亿页文字信息 (Jeopardy! 比赛中用到的数据) Watson’s Memory 经常会被问到 • 不知道什么信息应该被分析? • 待分析的数据量巨大 – 潜在的数据一般处于静态或不被注意的情况。 – 判断如此大量的非结构化数据是否真的具有所需要的价值是一项巨大 的工作 • 多数数据没有固定的结构,或者拥有不同的结构,很难进行分析 • 很难将分散的数据进行整合和集成 • 很多数据的可用周期很短 • 分析需要基于很多已有的信息 • 什么时候以及如何在已有的决策流程中加入大数据的支持? • 大数据解决方案与传统的数据仓库和分析工具之间的关系? • 大数据解决方案与传统的数据仓库和分析工具之间的不同? • 大数据解决方案针对批处理,还是事务处理,还是两者兼顾? • 哪种场景更适合大数据解决方案? • 大数据是否会替代传统数据仓库中的一些工具? 经常会被问到 大数据如何帮助我们? • 让您可以建立实用的风险模型: – 某一品牌的信用卡统计结果发现,经常在酒吧消费人群延迟还款的比例要比经常 在牙医诊所消费的人群高 4 倍。 • 客户流失分析 (CDR 和 IPDR 分析) • 推荐引擎:可能会购买的产品 – 了解购买者的兴趣爱好: “买个这个商品的其他人也同时购买了…” • 刷卡消费记录分析 – 用于预测消费者的消费趋势(零售推荐) • 分析网络数据的状况来预测可能的故障 – 网络对于突然的波动如何应对?例如网络风暴、攻击。 • 垃圾邮件、网络进攻等威胁的分析。 • 交易监管 – 侦测违规交易和危险操作 • 提高搜索质量 • 灵活的数据集 – 让组织可以灵活、方便地从已有的数据中抓取出有用的关 系、模式用于新的业务 大数据如何帮助我们? • 对天气进行预测,实现风机运转的优化,减少运营成本。 • 通过在医院的检查记录发现身体的症状 • 多渠道的客户体验以及购物感受分析 • 通过摄像头、健康、录音等数据发现潜在的犯罪和威胁。 大数据如何帮助我们? 将传统方式与大数据方式进行整合 IT 为业务用户组织 相应的数据结果 IT 提供能够进行各种数据 分析操作的平台。 业务用户 自行通过平台提供的工 具和数据来进行数据分 析 业务用户 决定需要什么样的 数据 月度销售报告 利润率分析 客户调查 品牌忠诚度 产品战略 资产利用率 大数据方式 反复的、挖掘性的分析 传统方式 结构化数据和重复的分析操作 针对传统数据仓库和大数据解决方案的数据质量问题 • 企业数据仓库(EDW)被设计为要求数据是原始的、集成的,并且很好的 进行了集合,同时拥有全面的文档和模型 – 这些特点是 MDM,ETL 操作所必需的 – 让大批量的报告生成、仪表盘应用以及基于 OLAP 的分析工作成为可能。 – 让进入 EDW 的数据尽可能的完整,且能够表现出业务的真实性。 • 为深入的分析工作进行数据的准备工作需要注意:很多数据并不是可以公开 访问且易于被复用的 – 大数据解决方案并不是一开始就可以符合 ETL、数据质量、元数据以及数据 建模的需求 • 由于大数据解决方案的趋势不可避免,对于 EDW 问题和实际情况了解的越 多,会对于实施大数据方案越有帮助 议程 • 大数据的现状、趋势和问题 • IBM 大数据解决方案介绍 • IBM 大数据解决方案技术背景分析以及优势 • 参考资源 25 持久化数据 动态数据 传统数据 非传统数据 Streams 可以重用数据仓库的分 析模型 Streams 过滤进入的 数据InfoSphere BigInsights InfoSphere BigInsights IBM 提供了全面的大数据解决方案 典型的数据流 数据源 显示结果 模型、参数 开始进行分析 模 型 、 参 数 数 据 源 选 择 查 询 参数,新的/扩展应用 查询 / 应用 / 参数 InfoSphere BigInsights InfoSphere InfoSphere BigInsightsBigInsights InfoSphere Warehouse Streams 和 BigInsights 集成模型 BigInsights Hadoop StreamsAll data WAREHOUSE Data marts WAREHOUSE WAREHOUSE Summaries Subsets Subsets 集成 Streams 和 BigInsights 模型构建/部署 BigInsights Hadoop 根据时间 和事件 Metatracker Job Model output 启动预定义 的任务 开始数 据流 流数据 产生数据 模型) 模型部署 创建模型 任务完成 Job Collection Streams 的模型根 据数据集中的参数 来进行更新 其他计算节点 模型管理 Analytic (PMML et al) 在 Hadoop 中构建的模型或者参数会被部署到生产环境的 Streams 中进行实时的情景分 析 集成 Streams 和 BigInsights 结合历史数据的动态数据分析 BigInsights Hadoop Discovery Metatracker Job Historical data for discovery 启动预定义的任务 来查询历史数据进 行分析 开始流 程 Streams Surfaces 为 Streams 提供重新计算和整 合的过程数据 生成数据; 任务结束 Data 当在实时的流分析过程中发现了又有的数据后,就可以启动结合了历史数据的分析流 程。 InfoSphere Streams 可以动态地分析大规模的结构化和非结 构化数据 基于 IBM 的流数据处理研究成果 –IBM Watson 实验室的研究成果 –应用于很多实际的大型项目 –IBM 还在继续研究的步伐 主要优势: –并行、高效的流数据处理平台 –可以处理结构化和非结构化数据 –可在多种硬件平台上进行扩展 Extreme Volumes Extreme Analysis Extreme Speed InfoSphere Streams 工作原理 百万级的事件 微秒级的延迟 Hurricane Forecast Model N Hurricane Forecast Model … Video News Caption Extraction Topic Filtration Speech Recognition Earnings Related News AnalysisVideo News Caption Extraction Topic Filtration Speech Recognition Earnings Related News AnalysisVideo News Caption Extraction Topic Filtration Speech Recognition Earnings Related News Analysis Earnings Moving Average Calculation Hurricane Weather Data Extraction VWAP Calculation Weather Data SEC Edgar 10 Q Earnings Extraction NYSE Dynamic P/E Ratio Calculation Hurricane Impact Join P/E with Aggregate Impact Hurricane Industry Impact Trade Decision Correlate(联合) Transform(转换) Annotate Filter(过滤) Classify(分类) Hurricane Risk Encoder Earnings News Join Hurricane Forecast Model 2 Hurricane Forecast Model 1 IBM Distribution of Apache Hadoop BigInsights 企业 版 Applications & Solutions Enabling InfrastructureBigInsights 核心 ƒ 安装和配置 ƒ 监视 ƒ Jaql ƒ 管理控制台 ƒ 与 Streams, 数据库和数据仓 库的集成 Pig,Hive,Flume,Sqoop 等工 具 ƒ Cognos ƒ SPSS 和 R ƒ 下一代信用卡风险分析 ƒ 自定义应用 Applications / Solutions / Partners / Community ƒ 通过了 IBM 的测试和验证 ƒ 适应性 MapReduce ƒ SystemML(机器 学习) ƒ 非结构化分析 (SystemT) ƒ Metatracker ƒ GPFS SNC IBM BigInsights = IBM 的企业版 Hadoop BigSheets (BigInsights 中的组件) 议程 • 大数据的现状、趋势和问题 • IBM 大数据解决方案介绍 • IBM 大数据解决方案技术背景分析以及优势 • 参考资源 34 不同的数据处理模型 • SETI@home 是一个计算性处理模型 – Service for Extraterrestrial Intelligence (SETI) 使用普通台式机未使用 的CPU处理资源来计算射电望远镜得到的数据 – 将计算的结果输入到应用系统 – Data to function • MapReduce 是一个数据处理模型 – 由用于 Mapper 和 Reducer 的数据处理原语组成 – MapReduce 程序的实现相对复杂,但是可以通过简单的配置扩展到上 千个计算节点 – Function to data Apache Hadoop Framework • Hadoop Common – Hadoop 框架的应用层,可以实现对于 HDFS 和框架组件的管理 • HDFS – Hadoop 框架的数据存储平台 – 可以通过分布到多台机器上实现大规模的存储 • MapReduce – 通过集群节点来实现数据处理的框架(API) – MAP 过程是将输入的数据经过一次映射后进行拆分,然后将拆分后的小 数据集分配到各个计算节点上 – REDUCE 将负责收集各个节点的计算结果,组合成最终的结果 Hadoop 基本架构 Hadoop 设计原则 • 存储和处理数据的新方式: – 让系统自动处理大部分的工作: • 故障 • 扩展 • 减少通信 • 将计算能力更集中到数据的处理上 • 并行模式 • 相对低廉的硬件 • 让数据动起来! • Hadoop = HDFS + Map/Reduce 架构 HDFS = Hadoop Distributed File System • Yahoo 的发明 (Doug Cutting) – 处理互联网的大规模数据(爬虫数据) – 节省成本 - 将巨大的工作量分布到并行运行的普通计算设 备上 • 高容错能力 – 磁盘的平均损坏周期是 3 年,意味着如果拥有 1000 块磁 盘的组织将会每天都有磁盘出现问题 – 能耗与宕机率的很好平衡 • 吞吐量的要求比相应速度高 – 批量处理的操作不需要理解作出响应 • 大规模的读取操作 - 避免随机访问 • 适合大体积文件 • 通过复制来实现高可用 HDFS 架构说明 客户端计算机 应用程序 POSIX API HDFS API 本地文件系统 HDFS 接口 NodeName Node DataNode DataNode DataNode HDFS 文件存储示例 nameNode DataNodeR1N1 DataNodeR1N2 DataNodeR1N3 DataNodeR1N4 DataNodeR1N5 DataNodeR1N6 DataNodeR1N7 DataNodeR1N8 DataNodeR2N1 DataNodeR2N2 DataNodeR2N3 DataNodeR2N4 DataNodeR2N5 DataNodeR2N6 DataNodeR2N7 DataNodeR2N8 DataNodeR3N1 DataNodeR3N2 DataNodeR3N3 DataNodeR3N4 DataNodeR3N5 DataNodeR3N6 DataNodeR3N7 DataNodeR3N8 createcreate DataNodeR2N1 DataNodeR1N4 DataNodeR2N5 B3B2B1 Block done nameNode R1N1 R1N2 R1N3 R1N4: B1 R1N5 R1N6 R1N7 R1N8 R2N1: B1 R2N2 R2N3 R2N4 R2N5: B1 R2N6 R2N7 R2N8 R3N1 R3N2 R3N3 R3N4 R3N5 R3N6 R3N7 R3N8 R2N1: B1 R1N4: B1 R2N5: B1 B3B2B1 HDFS 文件存储示例 nameNode R1N1 R1N2 R1N3 R1N4: B1 R1N5 R1N6 R1N8 R2N1: B1 R2N2 R2N3 R2N4 R2N5: B1 R2N6 R2N7 R2N8 R3N1: B2 R3N2 R3N3 R3N4: B2 R3N5 R3N6 R3N7 R3N8 R2N1: B1 R1N4: B1 R2N5: B1 B3B2B1 R1N7: B2 HDFS 文件存储示例 nameNode R1N1: B3 R1N2 R1N3 R1N4: B1 R1N5 R1N6 R1N8 R2N1: B1 R2N2: B3 R2N3 R2N4 R2N5: B1 R2N6 R2N7 R2N8: B3 R3N1: B2 R3N2 R3N3 R3N4: B2 R3N5 R3N6 R3N7 R3N8 R2N1: B1 R1N4: B1 R2N5: B1 B3B2B1 R1N7: B2 HDFS 文件存储示例 什么是 MAP? • MAP 是指一种高级的方法,可以将一组数据赋值给一个特定的 函数,然后返回相应的结果。 • 示例: – square x = x * x – map square [1,2,3,4,5] will return [1,4,9,16.25] • 最初源自函数式编程语言,现在在很多语言中都有实现 • **最重要的是,我可以并行执行上面的“map square”: – map square [1,2,3] -> [1,4,9] – map square [4,5] -> [16,25] 什么是 REDUCE? • REDUCE 是一组高级的方法,可以以特定的顺序 用特定的函数来遍历一个数据集,同时生成返回 值。通常,REDUCE 包含两部分:一个统计函数 和一组数据,过程就是使用统计函数以优化的方 式来对这一组数据进行处理。Example: – MAX (1, 2, 3, 10,15, 20) -> 20 – SUM (1, 7, 10) -> 18 • 在 Hadoop 中,REDUCE 函数经常以 MAP 函数 的输出作为自己的输入 Map/Reduce 用例 • 计算 URL 的访问次数(日志分析):map 方法处理网页日志 数据,然后输出格式为的数据,reduce 方法将所有相 同 URL 的数据加在一起,生成格式为的数 据组。 • 反向 Web-Link 图:map 方法的输出格式为 ,其中 source 为一个 web 页面(如:index.html),target 为这个页面上所有连接的指向 URL。reduce 方法将所有与同一 目标 URL 相关的 source 整理在一起,生成格式为 的输出 • 统计文本中词语的个数:map 方法将输出每一个单独的词语并 附上它的出现次数(例如:1 次),reduce 方法将根据词语将 输入中的数据进行累加,得到每一个词语出现的总次数。 Cat Bat Dog Other Words (size: TByte) map map map map split split split split combine combine combine reduce reduce reduce part0 part1 part2 MapReduce 3/19/2012 RDMS & Hadoop – 互相补充,而非竞争 • 拥有已知结构的结构化数据 • Records, long fields, objects, XML • 允许更新(update) • SQL & XQuery • 可以快速、随机地进行访问 • 数据的丢失是不能接受的 • 安全和审计 • 加密 • 各种的数据压缩方式 • 企业级硬件平台的支持 • 超过 30 年的发展 • 通过索引加速随机访问 • 庞大的 DBA 和开发社区支持 • 支持非结构化和结构化数据 • 文件 • 只支持插入和删除操作 • Hive, Pig, Jaql • 批量处理 • 数据的丢失是可以承受的 • 不支持 • 不支持 • 简单的文件级压缩 • 普通的应用平台 • 2-3年的发展历程 • 只能对文件进行访问 • 目前只有相对少数的公司将其应用于 生成环境中 IBM 对于开源社区的贡献 • 多年来 IBM 对开源社区有着持续的贡献: – Apache Hadoop and Jaql – Apache Derby – Apache Geronimo – Apache Jakarta – Eclipse: founded by IBM – 文本分析:Unstructured Information Management Architecture (UIMA) • 文本分析的应用是 Haoop 的主要应用方向 – IBM Lucene Extension Library (ILEL)对Lucene的贡献: • Project Gumshoe – DRDA, XQuery, SQL, XML4J, XERCES, HTTP, Java, Linux, +++ • 基于开源技术的 IBM 产品: – WebSphere: Apache – Rational: Eclipse and Apache – InfoSphere: Eclipse and Apache, +++ IBM InfoSphere Big Insights 以合理的成本实现大数据解决方案 • 以普通计算机硬件为基础进行线性扩展,从 TB 级到 PB 级 • 支持对结构化和非结构化数据的处理 • 基于开源的 Hadoop 框架,完全由 IBM 来支持 开箱即用 •InfoSphere BigSheets – 用于收集、搜索和 图形化数据的易用型工具 •高级分析功能 – 与 Cognos, SPSS, LanguageWare 进行集成 用于收集、存储和分析大数据的商业平台 . . . Solutions Business Ready InfoSphere Big Insights InfoSphere Big Insights InfoSphere Big Insights Analytics Platform Cognos Consumer Insight Next Generation Credit Risk Analytics ECM ECM Search BigInsights 的版本分布 部署规模 企业价值 一般用途 高级用途 Hadoop BigInsights Basic BigInsights Enterprise 免费下载使用 网络社区资源支持 随机附带的服务 入门、教程、示例、开发帮助 企业级别的增强: 实用的附件工具 用于数据的载入、 管理、视图化 和报告生成 和 IBM 软件进行集成 和实时分析系统进行 集成(Streams) 数据加载器 数据管理 配给和安全性 分析和查询语言的支持 任务和工作流管理 与 RDBMS 和 ETL 工具的集成 解决方案 BigInsights Basic 版本架构 Hadoop Hadoop Distributed File System (HDFS) Workflow Orchestration (Oozie) Jaql … Pig Hive HBase Data Ingestion (Flume) Indexing (Lucene) Other components (Zookeeper, Avro, etc) BigSheets Hadoop Integration with DB2 Apache Hadoop 的局限性 • 存储: Hadoop Distributed File System (HDFS) – 单点故障的可能 – 与 POSIX 系统的不兼容性 – 没有文件系统级的安全性,数据管理 的功能也很有限(备份、回复、同步 ) – 没有负载隔离 – 随机的读写操作性能很差 • 工作流的编排 (Oozie) – 没有高级的工作流管理工具,无法实 现“loop”的方式运行 – 没有针对工作流的容错功能,只能依 靠 Hadoop 的故障恢复体系 • 语言支持: Pig / Hive – 对于层级和嵌套结构的数据比较 难进处理 – 比较难实现模块的重用 – 对于查询运行时的控制不足 • 操作/开发界面 – 主要针对开发人员提供的接口 – 对 IDE 的支持不足 – 使用方式比较复杂,不够灵活 – 无法真正实现业务人员进行操作 的需求 IBM INTERNAL and CONFIDENTIAL BigInsights Enterprise 版本架构 Unica DB2 Coremetric Streams Netezza DataStage DBADBA Manageability IntegrationConsumability Data Explorer Application Flows Dashboards/Reports Administration BigInsights Enterprise Console BigInsights Enterprise Engine Language (Jaql, Pig, Hive, HBase) Workflow orchestration (MetaTracker) Workload Prioritization (FLEX) Map-reduce (Hadoop + Adaptive Map-Reduce) File system (GPFS, HDFS) Performance AnalystAnalystAnalystAnalystDBA/Analyst/DBA/Analyst/ ProgrammerProgrammer SPSS Cognos Analytics (systemML, system T) Indexing (ILEL: parallel, partitioned, real-time) Databases JMS HTTP Web & Application logs Crawlers Streams 文件系统优势(GPFS) • 高扩展性、高性能、高可用性以及数据一致性 • POSIX 兼容 • Shared nothing clusters (SNC)提供了数据带宽的可 扩展性 • 负载的独立性 • 通过 WAN 实现集群间的复制,让异地灾备成为可能 • 分层存储管理(HSM) 对于 HDFS 的优势 • 更好地顺序读取 • 更好的磁盘布局 • 更好的随机访问 • 缓存带来的更好的随机访问 • 没有单点故障 数据注入(Ingestion) 语言支持 工作流编排 任务调度 Map-reduce engine (Hadoop) 文件系统(GPFS) BigInsights Enterprise Engine BigInsights Enterprise Engine 的优势 性能 IBM INTERNAL and CONFIDENTIAL 工作流编排 • 工作流调度和排序将于任务调度相结合 • 工作流和其子任务都是可以被恢复和被重新启动的 • 支持”持续进行“的工作流 • 工作流的持久化目录 语言 (JAQL): JAQL 的优势 • 包括一系列的高级功能:高级文本分析(SystemT)、开源的文本分析语言 (R)、被高度认可的分析能力(SPSS,SysmteML)、访问数据库的功能 • 原生对复杂数据操作的支持,无需进行 Java 编码 工作负载调度 • 支持可配置策略的调度器,实现了平均响应时间的优化、完成更多任务的优化 • 根据优先级策略的不同将任务进行高中低三档分级 管理 数据诸如 语言支持 工作流编排 任务调度 Map-reduce engine (Hadoop) 文件系统(GPFS) BigInsights Enterprise Engine BigInsights Enterprise Engine 的优势 调度器对比:BigInsights(FLEX)与 Hadoop(FAIR) • 前提条件:假设我们希望缩短任务的响应时间 – 意味着较小的任务将会在较大任务前执行 • 假设:一个较小的任务独立运行花费 2 分钟,一个较大的任务独立运行花费 10 分钟 • 简而言之: – FLEX 会先运行小任务,让它在 2 分钟内完成 – FAIR 会将资源平均分配给两个任务,小任务将会在 4 分钟内完成 • 也就是说: – FAIR 将会平均分配资源 – FLEX 会按优先级分配资源 • 如何区分任务的大小? – FLEX 会记住上一次任务运行的时间 • 非常小的任务的执行时间不会被记录 – FAIR 不会区分任务的大小 systemT • 分析文本并为结果文档进行标注(AQL) • 如何使用: – 创建规则(也可以称为视图(views)) – 运行 systemT 编辑器将规则进行优化和转换成为 Java 代码 – 使用规则来分析文档 • 拥有一套文本分析库 • 已经集成到 JAQL 中,可以实现更好地应用 – 以组件的形式存在 – import systemT; 当前文本分析方法的问题 • 当前用于文本分析的方法和架构让分析变得不太方便 – 效果不够好(精确度以及速度) – 难于使用 • 当前用于文本分析的方法主要依靠抽取和过滤系统提供的数据 – 灵活度低且效率不足,经常导致重复处理的现象 • 已有的工具包也不利于结果的展示和生成 – 分析师需要自己编写相应的代码 – 开发人员 <-> 分析师 – 会导致更多地延迟、复杂度和难度实现需要的结果 – 影响分析效率的最大因素在于无法决定系统如何生成特点的结果 BigInsights 文本分析工具包 • System T 原来只是内嵌于 IBM 产品,最终用户无法直接使用 • BigInsights 是第一个可以允许使用者进行定制和二次开发的文本分析 引擎 • BigInsights 文本分析工具包提供了开发工具、易于使用的文本分析语 言以及易于应用的一组数据提取器 – 多语言支持,包括双字节(DBCS)语言(中文、日文、韩文) • 包含了类似 SQL 的 Annotator Query Language (AQL): – 专门用于文本分析的语言 – 通过从对编程语言的抽象可以更好地适应 – 用于在 BigInsights 中构建数据提取器,从非结构化文本中提取结构化的 数据 • AQL 是针对 MapReduce 高度优化的语言 • 不同于其他的框架,AQL 优化器会决定抽取指令执行 的顺序,从而最大地提高效率 • 将可以实现10倍于其他框架的速度 文本分析工具包 性能加速器(Performance Accelerator) 文本分析工具包– 开发加速器 • 图形化的开发平台,用于提取器的构建和使用 – Eclipse 插件 – 适合敏捷开发 文本分析如何工作? • 文本分析的主要目的是读取非结构化的文本,然后进行统计分析 – 示例:本文分析程序可以读取一段文字,然后根据预定的规则来生成结构化的数 据。这些规则就定义在提取器中,例如可以识别文本中的人名。 “In the 2010 World Cup of Soccer, the team from the Netherlands distinguished themselves well, losing to Spain 1-0 in the Final. Early in the second half, Dutch striker Arjen Robben almost changed the tide of the game on a breakaway, only to have the ball deflected by Spanish keeper, Iker Casilas. Near the end of regulation time, winger Andres Iniesta scored, winning Spain the World Cup.” Name Position Country Arjen Robben Striker Netherlands Iker Casilas Goalkeeper Spain Andres Iniesta Spain Extractor 机器学习 • 问题:“机器学习”是一个很耗费计算资源的工作, 尤其是针对于大型的计算任务。所以,很多人希望将 机器学习这个任务放在 BigInsights(Hadoop)中进行 – 需要并行执行,但是很难实现 • 以 BigInsights 为基础的高性能集群可以为分析人员和数学家提供一个分析和统计 数据的高性能平台,同时自己不必了解过于高深的 Java 编程技术和数学理论。 – 通过 Hadoop 可以实现 R 语言的操作,但是效率并不尽如人意,同时需要很多的管理工作 ,同时功能也不够完全 • BigInsights 将提供一个和 R 十分相似的机器学习语言(MLL),让您只需关心如何 构建统计分析的模型,而不需要去关心如何去进行编程以及具体的实现 – 很方便的和 SPSS 和 InfoSphere Warehouse 进行集成 • 机器学习引擎将会把 MLL 抽象成为十分精简的 MapReduce 代码(Java) • IBM 在相关技术领域进行了 20 多年的研究,并将成功集成与 BigInsights 等产品 让用户充分利用 Hadoop • Hadoop 让分析大数据成为了可能,但是您需要是一个对于 MapReduce 算法有所了解的开发人员 • BigSheets 是一个基于浏览器的图形化工具,可以让业务人员 利用 Hadoop 提供的能力,以电子表单的方式来实现数据的分 析 • 如果您会使用类似 Excel 的电子表格应用,那么您就可以使用 BigSheets 来进行数据分析和挖掘工作 • 让更加高层的使用者可以十分方便得以一种熟悉的方式来查看 数据 使用 BigInsights 中的 BigSheets 进行分析 • BigSheets 让使用 Haoop 分析功能进行业务分析变成可能 – 无需成为一个 MapReduce 开发人员 – 简单的图形化工具,让分析工作可以立即进行 – 如果您的 BI 环境中每 30 个业务人员需要配备一个高级的 SQL 语句开发人员的话,那么这 些工作基本都可以交给 BigSheets 来实现了 • 示例应用: – 数据挖掘和图形化(Infographic) – 图形化报表的生成 BigInsights:实现 Hadoop 的快速方法 • 集成化安装方式 GPFS-SNC(Shared Nothing Cluster) • IBM 对于 Hadoop 的增强,立即可以供企业使用,并符合相关的服务 条款(SLA) – 更好的性能、更好的可用性、更好的管理方式 GPFS-SNC 的性能优势 • Data Striping 实现所有数据的条带化和镜像 • Distributed Metadata 通过大量的随机式读取操作实现性能的提升 • Client-side Caching 提供随机访问的性能,对于某些类型的负载十分有效 GPFS-SNC is 100% POSIX Compliant • 管理 BigInsights 的存储就像管理环境中其他 POSIX 标准的存储一样 • 易用性的优势 – 应用可以不必像 HDFS 那样来写文件 – 多个应用可以并行地对一个文件进行同时写入 • 让您的 BigInsights 集群更加稳定、安全和灵活 – 例如:GPFS-SNC 通过似乎用 PiT snapshot 备份方式,离线同步以及其 他功能扩展了原有的备份能力。 – GPFS-SNC 是内核级别的文件系统 • HDFS 不是 POSIX 兼容的文件系统,因此需要 IT 花费一定的时间了解如何 对它进行管理,同时了解它的限制和不足。 – HDFS 构建与操作系统上(而不是在内核),会导致一定的不稳定性。 BigInsights 中的任务管理 • 开源的 Hadoop 附带了几个调度器,用于任务的管理: – First in First Out (FIFO), Fair 调度器, 和 Capacity 调度器 – Hadoop 调度器无法提供对集群的完全控制 • Fair 调度器可以提供对于资源分配的管理 • 但是,无法对负载任务进行细颗粒度的控制 • IBM 经过对于 Hadoop 管理调度系统的研究,构建了更加智能的调 度器 – 扩展了 Fair 调度器的功能,让它可以不断地提醒任务所分配给他的 Slot 的最小数量 – 囊括了多种指标显示,让使用者可以依据它们进行优化 • 对指标显示根据集群和任务的不同进行细颗粒度的选择 • 通过指标显示来区别各个任务的权重 • 示例: – 副总执行的任务将会比总监执行的任务获得更多 Hadoop 资源 – 越大的任务获得越多的资源 适应性(Adaptive)MapReduce • IBM 负载管理专家希望能够找到一个更加优化 Hadoop 运行的方 法 • 适应性 MapReduce 通过让每一个 mapper 有自我认知的功能, 同时可以通过适应性了解其他 mapper 的状况 – 单独的 map 任务可以根据自己所处的环境进行自适应的条件 • 分解任务的大小?如何选择 – 分解成较小的任务意外着将有更多的 map 来完成整个任务 • 然而更多的 map 任务以为着将耗费更多地资源来启动、运行和管 理它们 – 对于分配了更多资源的任务,适合分解成较大的任务 适应性 Mappers 的优势 • 在 mapper 之间进行负载均衡 • 减少启动和调度的开销 time 企业集成的重要性 • 企业中的其他系统也需要能够使用 Hadoop 的计算能 力,反正亦然 –原来基于 SQL 关系型应用将不会被抛弃,因为您将 还会使用关系型存储 • BigInsights 支持多种数据来源:Netezza,DB2,其 他支持 JDBC 的数据库,InfoSphere Streams, DataStage 等 Traditional Approach Structured, analytical, logical New Approach Creative, holistic thought, intuition Unstructured Exploratory Iterative Brand sentiment Product strategy Maximum asset utilization Structured Repeatable Linear Monthly sales reports Profitability analysis Customer surveys Big Data 解决方案必须集成到您企业的内部才能 发挥其优势 易于部署、集成的方案才能使您的企业数据被更好地利用 推荐下载 • IBM InfoSphere BigInsights – http://t.cn/zOIOP7s • IBM InfoSphere Streams – http://t.cn/zOIOPWo • developerWorks 下载中心 – http://t.cn/zOcXg9P 参考资源 • BigInsights - 基于 Hadoop 的数据分析平台 – http://t.cn/zOV6pi0 • 实战 IBM BigInsights – http://t.cn/zOV6OQp • 安装和配置 InfoSphere Streams – http://t.cn/zOV68nL • Jaql 和 Pig 查询语言的比较 – http://t.cn/zOV6XnS 从 IBM developerWorks 中国网站获取更多资源 79 ƒ Web 社区  技术专区  产品专区  博客  RSS 订阅  社区空间 ƒ 技术资源  指导信息  样例代码  路线图  试用下载  教程  技术文章  网络广播  演示  教育资源  样例项目 • 全球最佳厂商开发者 项目 (IDC) • IT行业第 2 大开发者 社区 • 32 项行业大奖 http://www.ibm.com/developerworks/cn/ developerWorks 社区: “最极客的社交网络” 马上加入:http://www.ibm.com/developerworks/cn/mydeveloperworks • 通过概要信息和别人取 得联系 • 通过群组结识志同道合 的朋友 • 博客,Wiki,论坛,书 签,活动,文件 • 可以共享您在社交网络 Facebook 或 LinkedIn 中的信息 80 81
还剩40页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 3 金币 [ 分享pdf获得金币 ] 1 人已下载

下载pdf

pdf贡献者

zhongle

贡献于2013-11-06

下载需要 3 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf