Hbase什么情况下使用?

作者: 葡萄喃喃呓语 | 来源:发表于2016-10-23 19:37 被阅读192次

    //Hadoop_v4_12.pdf(tt分享的教程《Hadoop数据分析平台》)

    什么情况下使用Hbase?
     成熟的数据分析主题,查询模式已经确立并且丌轻易改变
     传统的关系型数据库已经无法承受负荷,高速插入,大量读取
     适合海量的,但同时也是简单的操作(例如key-value)

    场景一:浏览历史


    Paste_Image.png

    关系型数据库的困难
     简单的事情只要上了量就会变成无比复杂的事情
     Order by耗费很多性能
     大量发生,但又无法分布式处理
     顾客需要实时看到自己的足迹,因此丌能使用缓存技巧

    Hbase迎接挑战
     天生就是面向时间戳查询
     基于行键的查询异常快速,特别是最近的数据被放在内存的memstore里,完全没有
    IO开销
     分布式化解负荷

    //场景二:商品推荐

    Paste_Image.png

    用关系型数据库实现
    http://f.dataguru.cn/thread-84-1-1.html
     拿ITPUB实验了一把。
    阅读推荐说白了,就是你打开一个帖子,看到有一个提示写着读了本帖的人有xx%读了
    xxxx贴,有xx%读了xxxx帖。。。等等,这项功能也可以推广到商品推荐,音乐推荐
    ,下载推荐等等。
    在ITPUB中设置了一个log表,记录每次用户点击,有3个列,分别是时间戳,用户id,
    还有点击的主题id
    使用了一段时间的数据大约有1000万行,写了个sql搞定

    使用Hbase:表设计不查询实现
     两个表,一个是u-t,另一个是t-u
     U-t表的结构:行键为userid,列族和列为thread:threadid
     T-u表结构:行键为threadid,列族和列为user:userid
     查询:先在u-t表从userid->threadid,再从t-u表从threadid->userid,在计算程序
    中 实现去重和统计功能

    相关文章

      网友评论

        本文标题:Hbase什么情况下使用?

        本文链接:https://www.haomeiwen.com/subject/daekuttx.html