【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

百度技术沙龙第 25 期回顾:海量数据处理技术解析(含资料下载)

  • 2012-04-08
  • 本文字数:2522 字

    阅读完需:约 8 分钟

在 4 月 7 日由 @百度 主办、 @InfoQ 策划组织和实施的第25 期百度技术沙龙活动上,来自百度数据流计算系统DStream 项目负责人杨栋( @Sherlock__Yang )、58 同城 (58.com) 云平台技术负责人,58 同城技术中心架构部架构师徐振华( @浊者)分别分享了各自在海量数据存储和处理上取得的成果及经验,话题涉及“Hypertable Goes Realtime at Baidu”,以及“58 同城在分布式存储方面的架构实践”等。本文将对他们各自的分享做下简单的回顾,同时提供相关资料的下载。

主题一:Hypertable Goes Realtime at Baidu微盘下载讲稿

来自百度数据流计算系统 DStream 项目负责人杨栋第一个为大家分享,本次演讲的主要内容包括:Hypertable 能够满足应用的哪些需求、实际应用中遇到的挑战有哪些、可靠性 or 性能、如何应对这些挑战以及 Hypertable 和 HBase 有哪些异同。杨栋提到,在 Noah 系统最初建设时,主要遇到了以下的问题:

  • MySQL
    Not inherently distributed(数据的无序增长、频繁地手工分配数据);表大小的限制;不够灵活的结构
  • Hadoop
    不支持随机写入;随机读取的支持也不理想

由此,Hypertable+Hadoop 的组合成为了最终的理想方案,在此基础上 S,不仅从系统的角度有了足够多的灵活性,数据写入的高吞吐量、高可用的灾难恢复特性、错误隔离机制以及随机扫描等特性都得以大大增强。在详细介绍了模型设计和评估方法之后,杨栋对主要的设计关键点进行了总结:

  • 应用层面
    • 表设计
    • 加载策略
    • 去重处理
  • 高可用层面
    • 数据集中化
    • 日志与数据隔离
    • 负载均衡
  • 内存使用
    • 内存池
    • 简洁策略
  • 读 / 写性能
    • 内存 /SSD/SAS/SATA
    • 块 / 队列缓存
    • 压缩策略
    • 资源隔离

最后,杨栋从多个角度对 Hypertable 和 HBase 进行了对比:

  • 社区(Hypertable:Hypertable;HBase:Apache)
  • 实现语言(Hypertable:Boost C++;HBase:Java)
  • 内存管理(Hypertable:详尽的内存管理;HBase:垃圾回收)
  • 缓存管理(Hypertable:动态的缓存管理;HBase:Java 堆栈缓存)
  • 性能(Hypertable:高;HBase:一般)
  • 编译配置(Hypertable:容易;HBase:复杂)
  • 压缩机制(Hypertable:直接的 Native 压缩;HBase:基于 JNI 方式)

主题二:58 同城在分布式存储方面的架构实践微盘下载讲稿

58 同城 (58.com) 云平台技术负责人,58 同城技术中心架构部架构师徐振华第二个为大家分享,徐振华主要从理论、分析和实践三个层次分享了 58 同城在分布式存储领域的思考和实践。首先,通过 Draw Something 成功和 C10K 问题,引出分布式系统的目标是提高资源利用率, 做到线性扩展;同时分享了分布式存储的主要存储模型,分布式 hash 表和分布式 B+ 树,以及常用的用空间换时间,用错误率换空间,用查询性能换插入性能等思想:

  • Consistent hash(去中心化)
  • B+ tree(实时、随机)
  • LSM tree(批量、顺序)

接着,和大家分享了 58 同城做为一个创业公司,如何根据自身业务的特点,选择适合自己的技术和架构, 用最小的成本获得最大的回报:

  • 分析需求,做好平衡
  • 使用 Kiss 原则,做到 RAS(可靠、可用、可扩展)
  • 设计和充分利用硬件,分级存储

然后,和大家分享了 58 同城在分布式存储方面的实践:

  • 信息系统 :Search engine(index) +MySQL(shard + M/S)+ memcached
  • 统计数系统 :MongoDB + Auto sharding
  • 图片系统 :CDN+Nginx+simple GFS(master-slave)
  • 统计分析:Hadoop + HBase

最后,徐振华提到 58 同城在使用开源软件的同时,也在积极参与和回报开源社区,推动开源社区的发展。

Open Space(开放式讨论环节)

和以往的环节一样,​为了让参会者能够有更多的时间进行相互的交流,本次活动依然设置了 Open ​Space(开放式讨论)环节。除了讲师杨栋、徐振华外,新浪微博唐福林、阿里云王乐珩也参与了小组讨论。在 Open Space 的总结环节,几位话题小组长​分别对讨论的内容进行了总结。

杨栋:主要分享了“如何构建一套完整的数据分析平台”的话题,包括如何构建分布式的存储系统、如何构建分布式的计算系统以及如何构建分布式的数据仓库,此外还讨论了关于实时计算和数据量方面的问题,并与个别参会者就如何处理压缩的问题进行了细节的讨论。

徐振华:主要分享了“如何构建一个弹性计算平台”的话题,并就 Hadoop 的使用经验与大家进行了讨论。

唐福林:主要分享了“最简单的大数据实现(微博计数器)”的话题,从微博计数器出发,引出每种大数据解决方案在特定限制条件下都有不足,并就如何选择和开发适合自己的大数据解决方案工具进行了讨论。

王乐珩:主要分享了“Offline 大数据处理”的话题,并就云平台上数据分析的工具和方法进行了讨论。

会后,一些参会者也通过新浪微博分享了他们的参会感受:​​

@genstoneV :即时心得:云集算服务需要满足很多业务特点,所以什么边界条件都要研究。

@gqgl_work :58 实现计算资源的统筹,任务与计算不绑定,灵活部署。

@Andy 平安:Draw Something 为什么可以这么火?出色的产品创意不可否认,另外一方面是 Zynga 早在用户膨胀之前就提前做了 Couchbase 方面的技术储备。兵马未动,粮草先行,用户数据量的增长是难以准确 hold 的,我们不能总是被动升级现有系统。

@genstoneV :刚听完#百度技术沙龙# 的 Hypertable 的分享,对分布式系统的搭建过程,需要面临的细节问题提了些,很有心得。不过分享时能否尽量不要用 e 文呢,毕竟大家都是说中文,理解有些慢。

@Baidu 朱涛:百度需要的是持续创新,永葆活力,这样才能赢得更多百度用户的好评和网民的认可。

@solochar #百度技术沙龙# hypertable 高可用,内存,读写优化。Hypertable 很多思想与 HBase 很一致,优化的想法也很一致。C++ 的优势在于操控性,用于较苛刻的场景。

@赵国栋 TMT :百度技术沙龙,讨论大数据技术。主题是海量数据处理技术。人非常多,许多人席地而座。我们准时到达,也只能站边上。

@ujnjing #百度技术沙龙# 诺亚最开始使用 MySQL 存储数据量确实太大了,而且数据格式无规律。

此外,在本次的沙龙活动中,还特别邀请到中科院计算所副研究员、大规模数据计算专家查礼( @solochar )来与大家分享在大数据领域的研究成果。

有关百度技术沙龙的更多信息,可以通过新浪微博关注 ** @百度技术沙龙,或者加入百度技术沙龙微群 **,InfoQ 上也总结了过往 24 期所有百度技术沙龙的演讲视频和资料等,感兴趣的读者可以直接浏览阅读

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2012-04-08 20:565911
用户头像

发布了 156 篇内容, 共 49.7 次阅读, 收获喜欢 7 次。

关注

评论

发布
暂无评论
发现更多内容

黑幕!阿里P8爆出学透这份算法面试文档,不再怕任何大厂算法题

Geek_0c76c3

Java 数据库 开源 程序员 开发

【C语言难点突破】动态内存知识详解

Geek_65222d

10月月更

腾讯Offer已拿,这99道算法高频面试题别漏了,80%都败在算法上

Geek_0c76c3

Java 数据库 开源 程序员 架构

深度思考:到底什么是抽象?

海风极客

10月月更

翻译翻译,什么是滑动窗口

海风极客

10月月更

玩转子网划分和超网汇聚

海风极客

10月月更

一文搞懂MySQL中一条SQL语句是如何执行的

海风极客

10月月更

一文带你搞懂HTTP和RPC协议的异同

海风极客

10月月更

探索云原生之“翻译翻译,什么是云原生”

海风极客

10月月更

一文带你搞懂HTTP和HTTPS

海风极客

10月月更

浅谈Docker底层原理

海风极客

10月月更

手把手教你搭建Spring Boot+Vue前后端分离

海风极客

10月月更

阿里微服务架构到底多牛逼:深入解析Apache Dubbo与实战

Geek_0c76c3

Java 数据库 开源 程序员 架构

深度思考:为什么需要泛型?

海风极客

10月月更

深度思考:到底什么是面向接口编程?

海风极客

10月月更

完美!首份把架构三原则拆开来讲的“架构师宝典”,电子版已上线

Geek_0c76c3

Java 数据库 开源 程序员 开发

我是如何学习一门新技术的

海风极客

10月月更

一文搞懂布隆过滤器(BloomFilter)

海风极客

10月月更

如何编写一个原生 Web Components 组件

茶无味的一天

CSS JavaScript html5 前端

浅谈MVC、MVP、MVVM框架模式

海风极客

10月月更

从0开始,用Go语言搭建一个简单的后端业务系统

海风极客

10月月更

一文搞懂Go搭建Restful接口

海风极客

10月月更

一文搞懂SaaS、PaaS、IaaS的概念和异同

海风极客

10月月更

代理模式与动态代理

海风极客

10月月更

深入浅出Docker容器数据卷

海风极客

10月月更

一文搞懂从浏览器输入一个URL到页面出现都经历了哪些过程

海风极客

10月月更

玩转Docker—部署Spring Boot+MySQL工程实战

海风极客

10月月更

公司刚来的阿里p8,看完我构建的springboot框架,甩给我一份文档

Geek_0c76c3

Java 数据库 开源 程序员 架构

毕业季,说一说自己从学生初入职场的感受

海风极客

10月月更

首版发布!2022年AlibabaJava中高级架构师面试手册(对标P5-P8)

Geek_0c76c3

Java 数据库 开源 程序员 开发

从0开始,让你的Spring Boot项目跑在Linux服务器

海风极客

10月月更

百度技术沙龙第25期回顾:海量数据处理技术解析(含资料下载)_数据库_贾国清_InfoQ精选文章