收藏 分享(赏)

Druid 实时分析架构设计思路—Imply.pdf

上传人:HR专家 文档编号:6230199 上传时间:2019-04-03 格式:PDF 页数:57 大小:6.56MB
下载 相关 举报
Druid 实时分析架构设计思路—Imply.pdf_第1页
第1页 / 共57页
Druid 实时分析架构设计思路—Imply.pdf_第2页
第2页 / 共57页
Druid 实时分析架构设计思路—Imply.pdf_第3页
第3页 / 共57页
Druid 实时分析架构设计思路—Imply.pdf_第4页
第4页 / 共57页
Druid 实时分析架构设计思路—Imply.pdf_第5页
第5页 / 共57页
点击查看更多>>
资源描述

1、DRUIDINTERACTIVE EXPLORATORY ANALYTICS AT SCALEFANGJIN YANG DRUID COMMITTEROVERVIEWDEMO SEE SOME NEAT THINGS MOTIVATION WHY DRUID? ARCHITECTURE PICTURES WITH ARROWS COMMUNITY CONTRIBUTE TO DRUID 2013THE PROBLEMArbitrary and interactive exploration of time series data Ad-tech, system/app metrics, net

2、work/website traffic analysis Multi-tenancy: lots of concurrent users Scalability: 10+ TB/day, ad-hoc queries on trillions of events Recency matters! Real-time analysisDEMOIN CASE THE INTERNET DIDNT WORK PRETEND YOU SAW SOMETHING COOL2015REQUIREMENTSScalable & highly available Real-time data ingesti

3、on Arbitrary data exploration with ad-hoc queries Sub-second queries Many concurrent reads2015FINDING A SOLUTIONLoad all your data into Hadoop. Query it. Done! Good job guys, lets go home2015FINDING A SOLUTIONHadoopEvent StreamsInsight2015PROBLEMS WITH THE NAIVE SOLUTIONMapReduce can handle almost e

4、very distributed computing problem MapReduce over your raw data is flexible but slow Hadoop is not optimized for query latency To optimize queries, we need a query layer2015FINDING A SOLUTIONHadoop (pre-processing and storage) Query LayerHadoopEvent StreamsInsight2015MAKE QUERIES FASTERWhat types of

5、 queries to optimize for? Business intelligence/OLAP/pivot tables queries Aggregations, filters, groupBysWHAT WE TRIED2015FINDING A SOLUTIONHadoop (pre-processing and storage) RDBMS?HadoopEvent StreamsInsight2015Common solution in data warehousing: Star Schema Aggregate Tables Query CachingI. RDBMS

6、- THE SETUP2015Queries that were cached fast Queries against aggregate tables fast to acceptable Queries against base fact table generally unacceptableI. RDBMS - THE RESULTS2015I. RDBMS - PERFORMANCENaive benchmark scan rate 5.5M rows / second / core 1 day of summarized aggregates 60M+ rows 1 query

7、over 1 week, 16 cores 5 seconds Page load with 20 queries over a week of datalong time2015FINDING A SOLUTIONHadoop (pre-processing and storage)NoSQL K/V Stores?HadoopEvent StreamsInsight2015Pre-aggregate all dimensional combinations Store results in a NoSQL storeII. NOSQL - THE SETUPtsgender age rev

8、enue1 M 18 $0.151 F 25 $1.031 F 18 $0.01Key Value1 revenue=$1.191,M revenue=$0.151,F revenue=$1.041,18 revenue=$0.161,25 revenue=$1.031,M,18 revenue=$0.151,F,18 revenue=$0.011,F,25 revenue=$1.032015Queries were fast range scan on primary key Inflexible not aggregated, not available Does not work wel

9、l with streamsII. NOSQL - THE RESULTS2015Processing scales exponentially! Example: 500k records Precompute 11 dimensions 4.5 hours on a 15-node Hadoop cluster Precompute 14 dimensions 9 hours on a 25-node Hadoop clusterII. NOSQL - PERFORMANCE2015FINDING A SOLUTIONHadoop (pre-processing and storage)C

10、ommercial DatabasesHadoopEvent StreamsInsightDRUID AS A QUERY LAYER2013KEY FEATURES LOW LATENCY INGESTION FAST AGGREGATIONS ARBITRARY SLICE-N-DICE CAPABILITIES HIGHLY AVAILABLE APPROXIMATE & EXACT CALCULATIONSDRUIDDATA STORAGE2015DATA!timestamp page language city country . added deleted2011-01-01T00

11、:01:35Z Justin Bieber en SF USA 10 652011-01-01T00:03:63Z Justin Bieber en SF USA 15 622011-01-01T00:04:51Z Justin Bieber en SF USA 32 452011-01-01T01:00:00Z Ke$ha en Calgary CA 17 872011-01-01T02:00:00Z Ke$ha en Calgary CA 43 992011-01-01T02:00:00Z Ke$ha en Calgary CA 12 53.2015PARTITION DATAtimest

12、amp page language city country . added deleted2011-01-01T00:01:35Z Justin Bieber en SF USA 10 652011-01-01T00:03:63Z Justin Bieber en SF USA 15 622011-01-01T00:04:51Z Justin Bieber en SF USA 32 452011-01-01T01:00:00Z Ke$ha en Calgary CA 17 872011-01-01T02:00:00Z Ke$ha en Calgary CA 43 992011-01-01T0

13、2:00:00Z Ke$ha en Calgary CA 12 53Shard data by time Immutable chunks of data called “segments”Segment 2011-01-01T02/2011-01-01T03Segment 2011-01-01T01/2011-01-01T02Segment 2011-01-01T00/2011-01-01T012015IMMUTABLE SEGMENTSFundamental storage unit in Druid No contention between reads and writes One t

14、hread scans one segment Multiple threads can access same underlying data2015COLUMNAR STORAGEScan/load only what you need Compression! Indexes!timestamp page language city country . added deleted2011-01-01T00:01:35Z Justin Bieber en SF USA 10 652011-01-01T00:03:63Z Justin Bieber en SF USA 15 622011-0

15、1-01T00:04:51Z Justin Bieber en SF USA 32 452011-01-01T01:00:00Z Ke$ha en Calgary CA 17 872011-01-01T02:00:00Z Ke$ha en Calgary CA 43 992011-01-01T02:00:00Z Ke$ha en Calgary CA 12 53.2015COLUMN COMPRESSION DICTIONARIESCreate ids Justin Bieber - 0, Ke$ha - 1 Store page - 0 0 0 1 1 1 language - 0 0 0

16、0 0 0 timestamp page language city country . added deleted2011-01-01T00:01:35Z Justin Bieber en SF USA 10 652011-01-01T00:03:63Z Justin Bieber en SF USA 15 622011-01-01T00:04:51Z Justin Bieber en SF USA 32 452011-01-01T01:00:00Z Ke$ha en Calgary CA 17 872011-01-01T02:00:00Z Ke$ha en Calgary CA 43 99

17、2011-01-01T02:00:00Z Ke$ha en Calgary CA 12 53.2015BITMAP INDICESJustin Bieber - 0, 1, 2 - 111000 Ke$ha - 3, 4, 5 - 000111 timestamp page language city country . added deleted2011-01-01T00:01:35Z Justin Bieber en SF USA 10 652011-01-01T00:03:63Z Justin Bieber en SF USA 15 622011-01-01T00:04:51Z Just

18、in Bieber en SF USA 32 452011-01-01T01:00:00Z Ke$ha en Calgary CA 17 872011-01-01T02:00:00Z Ke$ha en Calgary CA 43 992011-01-01T02:00:00Z Ke$ha en Calgary CA 12 53.2015FAST AND FLEXIBLE QUERIESJUSTIN BIEBER 1, 1, 0, 0KE$HA 0, 0, 1, 1JUSTIN BIEBER OR KE$HA 1, 1, 1, 1rowpage0Justin(Bieber1Justin(Bieber2Ke$ha3Ke$ha

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报