大数据分析项目_第1页
大数据分析项目_第2页
大数据分析项目_第3页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、公司简介:式、音乐、创意,时尚等多个领域。3D 音乐颠覆你的听觉体验。上线短短数月就受到了公司业务:3D 3D ()、趣味声音。趣味声音。首创声音/首创声音/音乐弹幕评论,让你感觉不再是一个人听歌!从未有过的听觉社交体验。的听觉社交体验。3.4.遇见音乐/遇见音乐/声音大咖,轻松结识跟你喜欢同一首歌/音频的朋友。6.根据歌曲收听量排出每种歌曲类型的热门歌曲。MV echo 你。用户社区,好友圈,看看你的朋友都在聊什么听什么。项目需求:总是跳过播放哪些歌曲,来给用户打标签。每天对新上线的音乐进行分类统计,每类歌曲新增数。top10 歌曲。 的数量。 计。每天对用户上传的音乐进行分类化和收听点击率

2、排名。8.APP,android,ios 占比度。歌曲。用户圈,统计用户圈中讨论最多的热词。发现和你口味相同的朋友并推荐给你。项目架构:歌曲。kafkamr spark 清洗。kafkaHDFS 上。hive 进行分析计算。hbase mysql中。HBase 看个人资料和好友信息,等级等。需求设计:spark mysql用户信息表相关联的用户歌曲风格表里。HIVE HDFS 上的每天上线的歌曲做分类统计每类新增数量。从 mysql 分类歌曲推荐给用户。spark HDFS 上导入进来进行一个求和操hbase 中。mysql 设计实现:统计每类新增歌曲数量HDFS hive 每日新增歌曲数量表

3、字段中文名字段英文名字段类型Id编号IntsongName歌曲名Stringsingername歌手名StringStyle曲风StringDate时间String1,演员,薛之谦, 流行,2016-3-202,告白气球,周杰伦,流行,2016-3-203,成都,赵雷,流行,016-3-204,espana cani,andre rieu,古典,2016-3-20 5,小桃红,汤旭,民谣,2016-3-20 6,everything,wrld, 嘻 哈 ,2016-3-20 7,wake,free,摇滚,2016-3-208,长安长安,2016-3-20 9,love is a 摇滚,2016

4、-3-20 10,I 摇滚,2016-3-20 HIVA 下建一个歌曲表Create table music_160320(id int,songName string,style string,singerName string,date string)row format delimited fields terminated by ,;Load data inpath NewMusic/music_160320/music.txt into table music_160320;Hiveselect style,count(*) from music_160320 group by st

5、yle;结果为Style 流行,3民谣嘻哈摇滚APP 埋点信息Json 数据结构(maidian.json)imei:864874020839760,phone type:huawei p6,phone system:Android6.0,user_name:周一懵然状,like_music:我是不是该安静的走开,真的爱你,灰色轨迹imei:864874020839761,phone type:huawei p6,phone system:Android6.0,user_name:bigbaby,like_music:Laser life,简单爱,演员,最冷的一天imei:8648740208

6、39762,phone type:huawei p6,phone 最好的我,北国,imei:864874020839764,phone type:huawei p6,phone system:Android6.0,user_name:小于一,like_music:imagine,respect,hey judeimei:864874020839765,phone type:huawei p6,phone system:Android6.0,user_name:the who,like_music:misty,your eyes,all i wantspark 清洗:Var meidian=sq

7、lContext.jsonFile(hdfs:/jun110:9000/user/spark/meidian.js on)Var qingxi=meidian.select(”user_name”,”like_music”) qingxi.save(hdfs:/jun110:9000/user/spark/qingxi,json) json 转化成 CSV 格式的文件:周一懵然状,我是不是该安静的走开,真的爱你,灰色轨迹Bigbaby,Laser life,简单爱,演员,最冷的一天1993058,最好的我,北国,少年游小 于 一 ,imagine,respect,hey jude the wh

8、o,misty,your eyes,all i want9 从歌曲库中匹配出歌曲的风格类型User_nameLike_musicstyle周一懵然状我是不是该安静的走开流行周一懵然状真的爱你流行周一懵然状灰轨迹流行BigbabyLaser life摇滚Bigbaby简单爱流行Bigbaby演员流行bigbaby最冷的一天流行1993058最好的我流行1993058北国民谣1993058少年游民谣小于一imagine摇滚小于一Respect摇滚小于一Hey jude摇滚the whomisty轻音乐the whoYour eyes轻音乐the whoAll I want轻音乐导入 hive 进行

9、行转列去除多余字段Hivecreate table user_style(user_name string,music_name string,style string) row format delimited fields terminated by ,;HiveLoad data inpath user/user_music.txt into table user_style; Hiveselectuser_name,concat_ws(,collect_set(style)from user_stylegroup by user_name;sqoop mysqlUser_nameUse

10、r_nameStyle周一懵然状流行Bigbaby摇滚,流行1993058流行,民谣小于一摇滚The who轻音乐mysql用户表里每天注册用户数User_nameUser_namevarChar用户名PasswdVarchar密码Sexchar性别Register_datevarchar注册时间Create table user(user_name varchar(16),passwd varchar(16),sex char(2),register_date varchar(20);MysqlSelect“ 今日注册数”,count(user_name) fromuserwhereunix

11、_timestamp(register_date) unix_timestamp()-1*24*60*60;结果:今日注册数 1230HBase 性能优化Linux 最大文件数Linux 1024,如果你不进Many Open Files ”的错误,导HBase 不可运行查看:ulimit-a结果:openfiles (-n) 1024临时修改: ulimit -n 4096持久修改:vi /etc/security/limits.conf 在文件最后加上:soft nofile65535hard nofile65535soft nproc65535hard nproc65535修改 JVM

12、配置修改 hbase-env.sh 文件中的配置参数HBASE_HEAPSIZE 4000 #HBase 使用的 JVM 堆的大小HBASE_OPTS server XX:+UseConcMarkSweepGCJVM #GC 选项参数解释:-client,-server这两个参数用于设置虚拟机使用何种运行模式,client 模式启动比较server 应用程序。相反,server client 慢,但可获得更高的运行性能。XX:+UseConcMarkSweepGC:设置为并发收集HBase 配置:hbase-site.xmlzookeeper.session.timeout默认值:3 分钟(1

13、80000ms),可以改成 1 分钟说明:RegionServer Zookeeper 间的连接超时时间。当超时时间到后,ReigonServer Zookeeper RS 集群清单中移除,HMaster 收server regions RegionServer 接管.调优:这个 timeout 决定了 RegionServer 是否能够及时的 failover。设置成 1分钟或更低,可以减少因等待超时而被延长的 failover 时间。不过需要注意的是,对于一些Online 从宕机到恢复时间本身就很短的(h 等故障,运维可快速介入timeout ReigonServer 被正RS 集群中移除

14、时,HMaster balance 了(RS 根WAL 日志进行恢复RS 在人工介入恢复后,这个balance 动作是毫无意义的,反而会使负载不均匀,给RS带来更多负担。特别是那些固定分配 regions 的场景。hbase.regionserver.handler.count默认值:10说明:RegionServer 的请求处理 IO 线程数。调优:这个参数的调优与内存息息相关。默认值:10说明:RegionServer 的请求处理 IO 线程数。调优:这个参数的调优与内存息息相关。较少的 IO 线程,适用于处理单次请求内存消耗较高的 Big PUT 场景(PUT cache scanBig

15、 PUT)或ReigonServer 的内存比较紧张的场景。较多的 IO 线程,适用于单次请求内存消耗低,TPS(吞吐量)要求非常高的场景。hbase.hregion.max.filesize默认值:256M说明:在当前 ReigonServer 上单个 Reigon 的最大存储空间,单个Region 默认值:256M说明:在当前 ReigonServer 上单个 Reigon 的最大存储空间,单个Region 超过该值时,这个 Region 会被自动 split 成更小的 region。调优:region split compaction region compactregion store

16、file split 和compaction 会很频繁。特别是数量较多的小 region 不停地 split, compaction,会导致集群响应时间波动很大,应时间波动很大,region 数量太多不仅给管理上带来麻烦,甚至会Hbase Hbase 。一般 512 以下的都算小 region。regionsplit compactioncompact 和split 会产生较长时间的停顿,对应用的读写性能冲击非常大。hfile.block.cache.size默认值:0.2说明:storefile 的读缓存占用内存的大小百分比,0.2 表示 20%。该值直接影响数据读的性能。调优:当然是越大越

17、好,如果写比读少很多,开到 0.4-0.5 也没问题。如果读写较均衡,0.3 默认值:0.2说明:storefile 的读缓存占用内存的大小百分比,0.2 表示 20%。该值直接影响数据读的性能。调优:当然是越大越好,如果写比读少很多,开到 0.4-0.5 也没问题。如果读写较均衡,0.3 左右。如果写比读多,果断默认吧。HBase Regionserver 的内存分为两个部分,一部分作为Memstore,主要用来写;另外一部分作为 BlockCache,主要用于读。写请求会先写入 Memstore,Regionserver 会给每个 region 提供一个Memstore 64MB flus

18、h 刷新到磁盘。读请求先到 Memstore 中查数据,查不到就到 BlockCache 中查,再查不到就会到磁盘上读,并把读的结果放入 BlockCache。由于BlockCache 采用的是 LRU 策略(Least Recently Used 近期最少使用算法,因此e 达到上限e* e*0.85)后,会启动淘汰机制,淘汰掉最老的一批数据。Regionserver BlockCache 和N 小之和不能大于等于内存* 0.8,否则 小之和不能大于等于内存* 0.8,否则 HBase 不能启动。默认BlockCache 0.2Memstore 0.4。对于注重读响应时间的系统,可以将 BlockCache 设大些,比如设置 BlockCache=0.4,Memstore=0.39,以加大缓存的命中率。hbase.hregion.memstore.block.multiplier默认值:2region 里 的 memstore region 的所flush,释放内存。虽然我们设置了r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论