在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

关注数据:百度首届技术沙龙总结 (含资料下载)

  • 2010-04-13
  • 本文字数:1477 字

    阅读完需:约 5 分钟

4 月 10 日 InfoQ 中文站和百度合作举办了首届百度技术沙龙,邀请了百度 Web 开发高级工程师和豆瓣网系统程序员刘洪清分享了他们对数据交互的理解,本文简单总结了他们演讲的内容并提供了演讲资料下载。更多图文报道请参见百度技术沙龙专题

据介绍,这次是百度第一次深入社区,通过线下活动的形式和业界技术人员交流。从整个活动的策划和准备,可以看出百度已经将与社区的交流提上了议事日程。在和百度讲师黄方荣、百度产品市场经理郑昊的沟通中,他们也提到虽然百度内部经常有类似的交流活动,但和外界的交流还是比较少,这次活动是一次尝试,如果效果不错,以后会继续和 InfoQ 联合举办类似的活动。

在黄方荣的演讲中,他主要介绍了数据在 Web 发展中的重要性,即“数据交互推动着 Web 的发展”,介绍的内容点包括:

  • Server 数据推送
  • 域服务器数据交互
  • 异域网面跨帧数据交互
  • 客户端网页跨浏览器数据交互
  • 数据的压缩处理
  • WEB 前后端交互的数据格式
  • 数据交互推动着 WEB 的发展

在每个技术点中,黄方荣都列举了多个解决方案进行类比。比如在介绍 Server 数据推送时,他提到了轮询、长连接、伪长连接等不同的应用及各自特点。而对于数据的压缩处理,他则介绍了 YUI Compressor 和 GZIP 不同的应用场景。最后,他总结说在 Web2.0 时代,Ajax 大行其道,为网站提供了酷炫的交互界面,而在 Web3.0 时代,数据的交互将会更加人性化和简便。根据与会者的反馈,美中不足的是黄方荣在介绍数据交互的应用场景时,并没有比较多地涉及这些技术是如何在百度产品上使用的,这让许多慕名而来的技术人员有些失望。

刘洪清是豆瓣网的系统程序员,同时也是豆瓣开源数据存储系统 BeansDB ,这次他主要介绍了如何应用 BeansDB 来解决三千多万豆瓣用户持续增长的数据需求。豆瓣现在有超过 3800 万的用户,有 15 万个小组,430 万条目,300 万评论等,换算成后台的数据,则是 200G 结构化数据,800G 文本数据,10T 图片,6T 音乐等等。要保证这些数据 24 小时的稳定性,安全性和可用性,并不是一件易事。豆瓣采取的措施就是将数据进行分类,比如将用户信息、好友关系等归为结构化数据类型,将文本内容、图片等归为小文件类型,而日志和备份数据归为大文件类型。然后采用不同的技术来解决问题,比如结构化数据用 MySQL,小文件用 BeansDB,大文件用 MooseFS 等。

在问答环节,有读者对豆瓣广播的实现方式很感兴趣,刘洪清介绍说:

豆瓣的广播跟 twitter 等微博客收件箱的实现思路不太一样,是只保持一分广播副本, 在用户浏览的时候实时合并,依靠精巧的缓存和数据流设计,能够在用户可接受的时间范围内完成复杂的广播合并。这种方式可以大大减少数据库中的数据量和压力, 也与我们产品的某些特性配合得比较好。这种实现方式可行的前提是,用户的关注数是有限的,一般在一百左右,对社会网络的相关研究也是类似的结论。

对于 MySQL 的双 Master 如何实现,以及如何避免诸如自增 ID 等可能的数据冲突等问题,刘洪清也介绍了豆瓣的做法:

豆瓣目前的双 Master 主要是处于切换的便利性考虑,数据读写方面其实是 Master-Slave 结构,通过运维的方式来控制,同时只有一个 Master 是可写的,比如修改帐号权限等,这样就没有数据冲突的问题了。

本次百度技术沙龙的演讲资料现在已经可以下载,链接为: Web 数据交互的艺术、豆瓣数据存储实践资料下载

本次活动原计划 80 人到场,结果有 400 多人报名,近 300 人到场,组织者不得不加急调整了一个大的会议室人到场。有读者开玩笑说,百度在开拓技术社区方面开了个头彩。我们也希望类似百度这样的国内大公司能够更多地关注社区,和社区分享他们的开发经验,让信息在社区内流动起来。

2010-04-13 23:148962

评论

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

联邦学习这件小事

趣链科技

区块链 联邦学习 技术架构

大专学历成功拿下阿里offer,分享面经及我的Java面试复习资料

Java架构之路

Java 程序员 架构 面试 编程语言

【融云技术】超大规模并发下自定义属性的设置与分发

融云 RongCloud

Java日志的心路历程

程序猿阿星

Java log4j logback log4j2框架 Java日志

难忘阿里,4面技术5面HR附加笔试面,走的真艰难真心酸

Java 编程 程序员 面试 架构师

毕业5年的同学突然告诉我,他已经是年薪50W的Java架构师了

Java架构师迁哥

亮相Google I/O,字节跳动是这样应用Flutter的

字节跳动技术团队

2021年阿里/腾讯/美团/字节1万道Java中高级面试题汇总,新鲜出炉

Java架构师迁哥

迎战大厂!“金九银十”和秋招通过率达95%的Java面试要点集锦

Java 程序员 架构 面试

一文回顾 Java 入门知识(中)

逆锋起笔

Java 后端 JAVA开发 java基础 javase

【星环案例】我们用TDH+Sophon把工厂“搬”进高校实验室,推进产学研一体化

星环科技

一周信创舆情观察(5.24~5.30)

统小信uos

小树量化机器人系统开发(马丁策略)

薇電13242772558

区块链 数字货币

【案例】构建应急指挥体系,实现生产过程实时监控

星环科技

为鸿蒙OS说两句公道话(我对鸿蒙OS的一些看法)

Phoenix

Qcon全球软件开发大会 融云分享SDK交付质量保障经验

融云 RongCloud

和12岁小同志搞创客开发:如何驱动各类型传感器?

不脱发的程序猿

DIY 传感器 如何驱动各类型传感器? 创客

☕【JVM技术之旅】全流程化分析Java对象的创建过程

码界西柚

JVM 6月日更 对象布局 内存结构

GitHub火到糊!这份阿里内部10W字Java面试总结,让你薪资翻倍

Java架构追梦

Java 架构 面试 跳槽

前后端分离浅析以及分离教程

北游学Java

前后

新手小白必须知道的Linux基础:常用命令(1)

学神来啦

Linux linux命令 linux运维 linux 文件权限控制 Linux教程

奉劝各位准备面试的Java程序员耗子尾汁,赶紧扔掉网上那些千篇一律的面试题

Java架构之路

Java 程序员 架构 面试 编程语言

获5项大奖,发布《云计算开放应用架构标准》,阿里云持续领航云原生

阿里巴巴中间件

华为云IoT设备接入服务全体验

华为云开发者联盟

物联网 IoT 华为云 智能IoT边缘服务 华为云IoT云服务

从一面就被拒到收割字节offer,我花了一年时间,功夫不负有心人

Java架构师迁哥

什么是交叉编译

IT蜗壳-Tango

IT蜗壳教学 6月日更

有道精品课全链路测试的改进和思考

有道技术团队

测试 有道精品课

Fabric架构演变之路

趣链科技

区块链 fabric 联盟链架构 演变

三位一体:打造软硬服一体化的区块链平台

趣链科技

区块链 联盟链 Baas 一体机 底层平台

将DataX执行结果通过钉钉上报

白粥

DataX

Overbit Flash|5 月加密货币市场风暴抹去了 90% 以上的 NFT 交易量

Overbit学院

比特币 加密货币 NFT Overbit 保证金交易

关注数据:百度首届技术沙龙总结(含资料下载)_数据库_霍太稳@极客邦科技_InfoQ精选文章