美文网首页
大数据核心技术---Map技术

大数据核心技术---Map技术

作者: 程序o07 | 来源:发表于2018-01-08 11:18 被阅读16次

    大数据处理关键技术一般包括:大数据采集、大数据预处理、大数据存储及管理、大数据分析及挖掘、大数据展现和应用(大数据检索、大数据可视化、大数据应用、大数据安全等)。而以上这些关键技术都离不开底层的应用技术,键值对map的性能。

    对于c++程序来说 map的使用无处不在。影响程序性能的瓶颈也往往是map的性能。尤其在大数据情况下,以及业务关联紧密而无法实现数据分发和并行处理的情况。map的性能就成了最关键的技术。

    一、大数据采集技术

       在电信行业和信息安全行业的工作经历,我是和底层大数据采集打交道,尤其信息安全行业数据最复杂,都离不开map。

    比如:ip表、mac表,电话号码表、域名解析表、身份证号码表的查询、病毒木马的特征码的云查杀等等。

    stl库的map采用二分查找,性能最差。Google的哈希map性能和内存目前是最优的,但是有重复碰撞的机率。现在大数据 基本上不用有碰撞几率的map。

    当然,这些情况可以使用并发的形式来解决,但是对于网络数据包每秒高达2万以上的情况,以及业务关联紧密无法分发的情况,大数据就只能本地化处理。

    比如电信信令的sccp层的组包流程,网络协议的tcp和ip层的组包流程。这些必须靠map本地化来完成。

    (大家可以加入爱好集结,一同交流:342836117) 欢迎交流: (老师q:858288017)

    二、大数据预处理技术

    数据库的关联功能是性能超慢的,因此想要实现大数据分析的实时性,预处理是很关键的步骤,我在电信时,处理的是将一个通话流程完整的关联起来,实现电话通话过程的实时性关联,如果将上亿条数据放到数据库中做关联,客户的体验效果可想而知。

    要保证每秒几万个信令数据包能全部处理完成,就必须使用高效的map技术,对相同业务id的信令数据进行插入,查询以及完成关联后从map表中删除。

    三、大数据存储及管理技术

      针对web2.0的频繁应用,key-value的数据库具有非常高效的读写性能,尤其在大数据情况下。Map型的数据库没有关系型数据库那么复杂的结构,性能优越。

    介绍:

    pwwMap是一种全新算法概念的map技术。它包含三种map。

    memmap,hashmap适合用于大数据采集和预处理分析,diskmap适合做nosql数据库。

    1、memmap  支持插入,修改,删除,查询等日常操作。适合任何场合下使用。采用独特的索引技术,性能和内存比stl库的map高百倍以上。性能和google的哈希map相差无几,且无碰撞机率。

    2、hashmap  仅仅支持查询。适合高速查询的场合。性能比目前的google哈希算法快100倍。而且无碰撞机率。

    3、diskmap 支持插入,修改,删除,查询等日常操作,类似nosql数据库的功能。其数据量高达百亿,查询性能依旧强劲。对比google的leveldb技术,优势明显。而且其采用模板形式支持各种数据类型,不仅仅是string类型的数据。

    程序使用pwwMap 最直接的效益就是 原来需要十个服务器解决的方案 现在只需要一个服务器。

    相关文章

      网友评论

          本文标题:大数据核心技术---Map技术

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