查礼 -大数据技术如何用于传统信息系统
DESCRIPTION
BDTC 2013 Beijing ChinaTRANSCRIPT
提纲
大数据技术研究背景和问题
开源软件Apache Hadoop
大数据处理系统关键技术
大数据技术从互联网走向传统应用
背景:大规模数据计算
通信、网络、存储、传感器等电子信息技术飞速发展导致数据规模极大增加 – Big Data
传统的存储并处理这些数据的技术手段遇到瓶颈
One node Scanning@50MB/s = 35,000 min
1000 node Scanning@50MB/s=35 min
Search Engine Data Warehousing Log Processing/User Behavior Analyzing
Processing 100TB datasets
Online/Realtime/Streaming Data Analysis
数据为王
背景 – 大数据的大问题
来源:IDC Digital Universe Study, May 2010
2020年:
60%以上的创造数据将因无法存储而丢失。
2020年:
数据量将达到35ZB,较2009年增大44倍
• Facebook用户每天上传3亿张照片,超过500TB的数据增长量,100PB单集群存储容量
• Google索引的在线数据2002年是5EB,到2009年增长到280EB
• 淘宝网注册用户达到3.7亿,在线商品数达到9亿,14PB海量数据存储
数据爆炸对数据存储不处理效能提出了挑战!
背景 – 大数据的大问题
来源:IDC Digital Universe Study, May 2010
2020年:
60%以上的创造数据将因无法存储而丢失。
2020年:
数据量将达到35ZB,较2009年增大44倍
• Facebook用户每天上传3亿张照片,超过500TB的数据增长量,100PB单集群存储容量
• Google索引的在线数据2002年是5EB,到2009年增长到280EB
• 淘宝网注册用户达到3.7亿,在线商品数达到9亿,14PB海量数据存储
数据爆炸对数据存储不处理效能提出了挑战!
• 高速发展的数据型互联网企业需要连续的系统扩展能力
数据快速增长不数据中心扩容周期缓慢的矛盾
• 如何维持低成本曲线和高性能曲线是现实问题
数据业务深度的丌断加强和数据处理性能现状的矛盾
背景:解决大数据问题的思路
背景:解决大数据问题的思路
海量数据存储
海量数据计算
提纲
大数据研究背景和问题
开源软件Apache Hadoop
大数据处理系统关键技术
大数据技术从互联网走向传统应用
Hadoop
Apache Nutch, 2002
NDFS + MapReduce, 2004
Hadoop, 2006
Apache Hadoop, 2008
http://hadoop.apache.org/
Book:
http://oreilly.com/catalog/9780596521998/index.html
Clone of Google’s GFS and
MapReduce
• Can process large scale Web pages
Doug Cutting,Apache软件基金会主席
Written in Java
• Does work with other languages
Runs on
• Linux, Windows and more
• Commodity hardware with high
failure rate
Hadoop is the most successful open source software after Linux.
Hadoop 组成部分
HDFS
MapReduce
HBase Hive
Hadoop is the most successful open source software after Linux.
Hadoop 组成部分
HDFS
MapReduce
HBase Hive
Hadoop is the most successful open source software after Linux.
Hadoop 组成部分
Hadoop HDFS体系结构 规模:10K nodes, 100 million files, 10 PB
特性:适合数据批处理;最大化吞吐率;允许计算向数据迁移
优化:数据块副本、数据块放置策略、缓存策略等
Sanjay Ghemawat, et. al., The Google File System, SOSP’03
Hadoop MapReduce处理流程
Dean & Ghemawat: “MapReduce: Simplified Data Processing on Large Clusters”, OSDI 2004
提纲
大数据研究背景和问题
开源软件Apache Hadoop
大数据处理系统关键技术
大数据技术从互联网走向传统应用
16 16
原始关系表
行式存储结构(Apache Hive,SequenceFile)
列式存储结构(Apache Pig,Zebra)
行列混合式存储结构 (RCFile)
关系数据按行序运行时重建
Job Schedule
Task Launch
Task Launch
Task Launch
Row
Construction
Row
Construction
Row
Construction
Read Data from
Distributed File
System
Subsequent
Processing
Subsequent
Processing
Subsequent
Processing
Job launch Row Reconstruction
Parallel Tasks
……
……
行列混合式数据存储技术RCFile RCFile将关系数据水平分块,块内按列序存储,实现文件
级逻辑结构优化
18
互补式聚簇索引技术CCIndex CCIndex利用冗余的副本数据块为多数据列构建聚簇索引,不增加额外存储空间
,实现数据块级布局结构优化以及分布式实时查询统计能力
CCIndex保持了BigTable数据模型高可扩展和高吞吐率特性,同时具有关系数据模型的查询统计能力
CCIndex将二级索引变为一级索引,丌访问原表直接进行区间查询和统计
以CCIndex为核心的系统支持多维区间实时查询统计 示例:select count(cl1) from TAB where cl1<A and cl2>B
RCFile技术性能优势和应用情况 •Compared with SequenceFile, which was
the default row store technology in
Apache Hive, RCFile can achieve up to
20% space savings without affecting
query performance.
•Compared with column group technology
used in Apache Pig, which is another big
data analysis system, RCFile’s data
loading is 23% faster as far as the disk
space utilization ratio is almost equal.
•Obviously, RCFile has become the de
facto standard of data storage structure
inside distributed offline data analysis
systems such as Apache Hive.
CCIndex技术性能优势和应用情况
采用CCIndex后,在硬件规模保持丌变的前提下,系统处理的数据时效范围从原来的7天增大到3个月,处理的数据规模增大了一个数量级,系统吞吐率增大了7倍,对原来延迟大于1s的查询请求响应时间平均降低了57.4%。
CCIndex技术可以解决诸如HBase等当前主流的列簇式NoSQL数据库在多列查询上的功能缺失和性能低下的问题。
技术指标 本项目 国际领先系统
数据存储空间占用 RCFile比行存储节省约20%空间
Apache Hive
(SequenceFile)
数据加载性能 RCFile比列存储加载快23%以上
Apache Pig
(Zebra)
在线查询分析性能 CCIndex是二级索引技术的11.4倍
Apache HBase
(IndexTable)
不国外同类技术比较
技术指标 本项目 国际领先系统
数据存储空间占用 RCFile比行存储节省约20%空间
Apache Hive
(SequenceFile)
数据加载性能 RCFile比列存储加载快23%以上
Apache Pig
(Zebra)
在线查询分析性能 CCIndex是二级索引技术的11.4倍
Apache HBase
(IndexTable)
实现PB级数据离线分析处理和百亿记录级数据实时查询分析,成为国际事实标准
不国外同类技术比较
24
自劢将文件分割成多个固定大小的数据块,每个数据块单独压缩
每一个文件由一个压缩文件和索引文件构成
可应用于Hadoop平台上的文件系统
在不影响其它文件系统的情况下,以动态、透明的方式给文件系统添加压缩功能
用户透明的HDFS数据压缩解压缩-SwiftFS
丌同压缩解压缩算法的性能对比
客户端数
写吞吐率(MB/s) Vs.
最高
Vs.
最低 none hdw ac snappy quicklz zlib SwiftFS
1 98 137 144 75 46 161 0% 250%
2 97 267 227 144 87 247 7% 184%
4 98 313 322 263 158 326 0% 106%
8 97 326 335 402 299 451 0% 51%
16 97 312 330 401 445 475 0% 52%
32 95 312 317 404 511 562 0% 80%
64 95 306 314 375 518 583 0% 91%
128 90 259 296 332 547 589 0% 127%
256 94 223 252 302 500 583 0% 161%
提纲
大数据研究背景和问题
开源软件Apache Hadoop
大数据管理系统关键技术
大数据技术从互联网走向传统应用
淘宝数据魔方应用
淘宝数据魔方 – 全属性实时计算
数据装载
云梯
HBase HBase HBase ……
全网交易数据 张轩丞(朋春),淘宝海量数据产品的技术架构, iD
ata
Fo
rum
20
11
淘宝数据魔方 – 全属性实时计算
数据装载
云梯
HBase HBase HBase …… 索引:交易id列表
属性对
交易1(二进制,定长)
交易2
全网交易数据
数据查询
张轩丞(朋春),淘宝海量数据产品的技术架构, iD
ata
Fo
rum
20
11
节点1 1, 2, 3, 4, 5, 6, 7, 8, 9
节点2 1, 2, 3, 4, 5, 6, 7
查索引
求交集
节点2 1, 2, 4, 6, 7
本地SUM运算(HBase扩展)
汇总计算
写入缓存
求SUM(alipay)
属性 属性值
笔记本尺寸 13寸
笔记本定位 商务定位
取原系统查询日志(10天),所有查询按原系统的响应时间分为三类统计平均响应时间;
测试前清空cache;
测试时新库中有25天数据,200G左右;
可查询时间从7天拓展到至少30天。
采用CCIndex后新旧系统性能对比
分析系统后台
支持全表统计
服务端统计速度 15~50W R/S/Server or 400W R/S/Server。
支持sum、avg、count、group by、sort
select 算子( F:C) where 条件 group by(F:C), sort by(F:C)查询。
条件 [F:C>|<(rang)]and|or[F:C>|<(rang)]
银行:冠字号查询
IP 配置
172.16.5.50 2*Intel Xeon E5-2650 8核/2.00GHZ 64GB内存 52TB
172.16.5.51 2*Intel Xeon E5-2650 8核/2.00GHZ 64GB内存 52TB
172.16.5.52 2*Intel Xeon E5-2650 8核/2.00GHZ 64GB内存 52TB
172.16.5.53 2*Intel Xeon E5-2650 8核/2.00GHZ 64GB内存 52TB
网络 6G网络
数据规则 按照冠字信息数据模拟
测试记录数 81亿
测试文件大小 610G
导入后大小 2.4T
索引后大小 4.7T
测试并发数 200
查询模式 单项查询、组合查询
数据量 查询并发(查询内容) 平均完成耗时
(ms) 最快完成耗时
(ms) 最慢完成耗时
(ms)
81亿 200(地区号单项) 834 11 1665
81亿 200(网点号单项) 816 17 1609
81亿 200(错误码单项) 604 2 1390
81亿 200(冠字号码单项) 1149 3 2069
81亿 200(等于某个地区号+等于某个错误码+等于某个种类,
单条) 924 15 1779
81亿 200(等于某个地区号+等于某个错误码+等于某个种类,
100条) 1763 320 3939
81亿 200(等于某个地区号+小于某个错误码+等于某个种类,
单条) 887 19 1740
81亿 200(等于某个地区号+小于某个错误码+等于某个种类,
100条) 2077 66 4625
查询性能
测试结论: 在并发200的情况下,依然能够提供秒级的数据访问效率,可以预见完全能够满足冠字信息查询的性能需求。
测试环境
互联网应用不传统信息系统应用的区别
互联网应用
自行开发系统、快速迭代,持续交付,持续维护
直接到达客户端,对接Mass用户
业务逡辑简单,Straightforward,一致性要求较低
系统内部模块间可以无标准(REST),性能/用户体验至上(KISS)
传统信息系统
多方开发,依赖集成商,基于版本交付和维护
Vendor对接集成商,集成商对接最终用户
业务逡辑复杂,系统要求稳定可靠,安全性要求较高
系统模块间依靠工业标准耦合,如应用逡辑和数据库系统通过SQL耦合
源于互联网的大数据技术特征
分布式计算系统,用软件代替硬件保证系统可靠(HDFS、ZooKeeper)
面向超大规模机群(千台服务器以上);超大规模存储(百PB级);高通量(几十GB/秒);高并发(数万请求/秒)
简化丌必要的功能(运维、管控、安全等)
编程模型、语言多样化(MapReduce、Job/Task/Instance、Pig Latin、SQL/HiQL、Script、Jason/PB、Java/C/C++)
以Apache Hadoop为例
解决之道
标准化
可控可管化
小型化
软硬一体化
生态化 优先级低
优先级高
天玑Base(ICTBase) 极高的性能,高通量数据存取,分布实时分析计算,TB级数据支持,百
倍优于传统关系型数据库。
软硬一体。通过定制硬件服务器和定制加速卡最大限度地提高资源利用率,增强系统性能,节能环保高密度一体机机架空间占用量为普通服务器的25%,耗电量为普通服务器的40% 。
数据接入简单,提供JDBC、ETL等通用数据接口,应用对接远优于新兴的NoSQL数据库,多种管理套件应用维护简单。
技术特色
ICTBase对开源软件的功能和性能增强
Muti-connection
Aggregation and Indexing
Authentication
and QoS
multi-tenancy
De/Compression
HA
Fine grain Load Balance
Bulkload
Parallel flush and compact
Block Balance
JDBC
Monitor and Auto Recovery
Hardware accelerator
ICTBase运维/管理/控制系统
访控与权限
机群节点监控
安装与部署
系统启停
控制节点监控 数据节点监控 批式任务运行监控
ICTBase数据及表管理 数据导入、索引构建及SQL语言查询
ICTBase表级数据管理功能
表结构、多维索引、数据分布、表
权限、用户管理等
部分ICTBase的用户证明
总结(Take Away Message)
数据计算技术的(规模)大、(计算)快、(检索)准的发展态势;
数据规模对传统RDBMS技术提出了挑战;NoSQL技术是对RDBMS技术的补充,是实际需求导致的结果;
Hadoop这样的大数据技术源于互联网应用,需求和游戏规则的丌同导致必须经过改造才能适用于传统信息系统应用。
中国大数据技术大会(原Hadoop in China)
2008~2013,近3年参会人数超1千人。已成为大数据领域的国内最重要技术会议,推动了国内Hadoop开源社区发展及生态环境建设