zoukankan      html  css  js  c++  java
  • 我读《大数据时代的IT架构设计》

    架构设计是一门艺术,对架构的掌握要通过多看,多学,多交流,多积累,从实战架构上总能吸收到很好的营养,这边书虽然

    (一).hadoop技术处理电信行业的上网日志
    根据上网的url或未知url爬取内容,进行分类,根据模型统计出个人喜好,从何精准营销。
    经典hadoop应用分层:
    接口层:负责与外部数据的交换
    数据层:分布式大数据处理平台
    资源层:类似ISSA,实现对物理资源的自动部署和动态扩展
    功能层:流程,调度,监控,元数据管理,安全等
    应用层:词库分类,分类索引,负责应用功能的具体算法
    展示层:web展示应用层处理的结果
    网络爬虫:爬去url中的内容
    (二).Hadoop平台在金融银行业的应用架构
    在核心系统层,增加hadoop平台实现历史数据存储备份、对外提供数据查询、基于存储提供数据挖掘
    (三).优酷hadoop平台开放
    主要是安全和开放,安全包括访问安全(查看数据,hdfs权限)和用户安全(用户身份)
    开放:规范、流程管理、监控(节点、资源利用率、异常分析、用户存储配额、调度队列)
    (四).推荐平台
    包括实时接入、实时计算、cache分布式存储、离线计算平台、运营平台

    四个关键部分:
    a:实时接入:管道作用,接入数据,分发给计算平台
    b:流式计算:关注业务特点,业务场景而非平台架构
    c:存储引擎:写主读备
    d:推荐引擎:接入、分法计算、真正计算
    (五).社交网络大数据挖掘与社会化推荐
    推荐系统发展:
    协同过滤算法CF-->推荐引擎-->item based-->二度好友-->社会化推荐
    社会化推荐引擎构成:
    好友推荐模型的几个关键算法:
    二度好友-->好友簇-->好友圈演化趋势预估-->好友接受率模型-->多图谱融合
    (六).微博用户兴趣建模
    用户兴趣的三个方面:兴趣标签、兴趣词、兴趣分类
    实时系统抽取兴趣词,离线挖掘优化
    实时抽取:
    微博内容-->分词、分类-->按微博ID存入redis-->超出范围按userID合并-->非活跃用户利用历史redis和实时redis中的同一用户数据在内存中完成合并
    离线挖掘:
    减少实时抽取的噪声,通过计算单词的上下文相似性来获得词的相似性,通过词的相似性建立图挖掘的一边,相似度越大,图越密集,进而有效识别噪声,挖掘出用户真正的兴趣。
    (七)小米移动应用网络建设和优化
    1.移动应用网络的挑战:
    基于电波传送信号不稳定;移动网络尚不成熟;
    2.不同类型移动网络速度:
    3.小米应对措施:
    建设CDN或动态加速节点,源站和节点之间可以通过广域网直接对接,也可以通过速度好的中继节点;用户请求重转;通过TCPXM抓包分析链路质量,进而分析;
    持续优化:不断修改IP库,地域性联通问题大可考虑拉专线,基于http协议做协议转换
    (八)西门子系统架构管理概念
    系统架构全生命周期:

    (九)构建高性能、稳定SOA应用
    基于消息队列解耦;流程间按子任务,任务间用消息队列异步获取输入或输出结果,达到任务间并行的目的,其实只是同时处理,从某一个完成流程来看,其还是顺序的,而且效率是有影响的。
    (十)基于开源技术的网络安全架构
    OSSIM系统组成:各类安全设施、代理进程Agent、传感器、关联引擎、数据仓库、web控制台
    数据包通过的路径:
    网卡硬中断--->软中断--->内核协议栈--->系统调用--->socket接口--->libpcap接口--->用户应用程序
    (十一)TOGAF应用架构设计落地
    业务架构关键:组织机构、业务功能、业务流程
    业务功能靠业务流程实现,业务流程由业务步骤组成,业务步骤由组织机构单元承担
    应用架构关键:功能和系统,系统是IT功能的承载者。
    应用架构建新一代系统工作主线:
    业务功能--->业务流程--->业务步骤--->区分全手工半自动全自动业务步骤--->功能分组映射系统,找出IT功能点--->设计IT系统
    (十二)分布式系统安全设计解决
    数组签名确保完整性,对传递的信息进行加解密确保私密性。
    (十三)淘宝TFS
    1.写入完成后回向client返回一个由集群号、block id、file id组成的文件名,方便client通过该文件名访问存储的文件。
    2.服务端不会立刻删除文件,先打上标记,当删除超过一定比例,在低峰期再进行删除,同时对block进行整理。
    3.tfs支持利用tair分布式存储将block的位置信息缓存,以便减轻nameserver的访问压力。
    4.tfs自持通过metaserver的映射关系实现用户自定义文件名;
    5.tfs支持将大文件分散成小文件(2M),然后将多个小文件的名称作为新的文件数据存储到TFS,读取时根据此新文件的特殊名称标识知道此乃大文件,于是读取启动的小文件名,在从TFS里读出各分片数据,重新组合成大文件。
    6.机房容灾:机房独立集群,集群间同步(通过dataserver在后台线程重放日志)保证数据互为镜像。
    7.多机房多主集群部署方式,可以通过一定配置规则如blockid的奇偶性来分开写,然后对其他机房彼此同步
    8.TFS将所有资源信息存储在mysql的数据库里,通过资源管理服务器rcserver进行统一管理。
    (十四)内存作为统一存储实实践
    对微博之类的社交类,基础内存做信息同步的三种模式:
    拉模式:查询此用户关注的人,然后从这些人中查所有的微博。缺点:是关注的人多时数据大,长时间响应不了。
    推模式:为每个收听者建立一个队列,用户发了微博后向收听者队列插入数据。缺点:大V粉丝多,数据量太大。
    内存模式:只更新内存中的收听用户队列,当非内存中的收听用户上来时,在内存中利用拉模式构建收听队列。
    把缓存当作具有一定逻辑结构的存储体系,注意利用数据填充工具填充新服务器中的缓存数据。
    (十五)数据库优化
    优化步骤:设计层 sql调优 内存IO层面 操作系统优化
    尽量不建索引,实在要建,就建复合压缩索引
    缓存sql语句执行计划
    (十六)京东商城网站架构演变
    三个发展时代:
    1:asp连db
    2:静态网页放在cdn中配合动态交易系统(购物车、订单中心)具体如下:cdn--->web应用--->读取静态文件(用生成器生成)
    还有几点:将促销系统拆分出来,拆分库存逻辑,db复制
    3:
    交易系统:前面的负载均衡--->web应用--->业务服务层--->基础服务层
    1.核心系统全面服务化,服务框架的基本三功能:路由,fileover机制,服务分组
    2.数据访问分库分表
    3.缓存
    大流量下的四步:异步化--->限流--->分流--->降级
    (十七)新浪视频后台架构变迁
    视频点播CDN:
    每个squid将io、连接数等状态报告给数据中心,播放接口根据统计信息将用户引导到离他近且状态良好的节点上:
    视频直播:
     
    视频存储:
     
     
     
     
     
     
     





  • 相关阅读:
    Numpy用于数组的文件输入输出
    numpy利用数组进行数据处理
    numpy的通用函数:快速的元素级数组函数
    NumPy基础知识:数组和矢量计算
    数据处理任务介绍
    Django的ModelForm
    Http1.0和Http1.1的主要区别
    静态库中如何包含资源文件
    zt 正则
    oc调用swift的打包.a / framework 不成功?!
  • 原文地址:https://www.cnblogs.com/dimmacro/p/4459227.html
Copyright © 2011-2022 走看看