18 | 架构:需求分析 (下) · 实战案例
18 | 架构:需求分析 (下) · 实战案例
讲述:丁伟
时长16:56大小15.55M
案例: 打造 “互联网”
案例: 存储新兵 “对象存储”
案例分析
结语
赞 18
提建议
精选留言(34)
- 黄强2019-06-14互联网产品的核心需求或稳定点是“连接”,安全等其他需求属于变化点,所以在互联网产品设计中,连接交给了稳定的协议、物理设施等,安全交给软件层来实现以利于扩展
作者回复: 👍
共 2 条评论44 - Longerian2019-06-14这是 Google 设计 GFS 的背景导致的,网页库存储,或者日志型存储的共同特征是单个文件很大,可以到几个 G 级别,这样的话文件系统的元数据就会减少到单台机器就可以存储的级别。 这句话咋理解?
作者回复: 存储空间=单文件平均大小*文件数。在相同集群规模下,单文件平均大小越大,文件数越少。比如平均大小1M,和平均大小1G,文件数差1024倍。而元数据集群规模与文件数从正比,所以平均尺寸1G的集群,元数据规模非常小。
25 - Geek_88604f2019-06-14桶下可以建很多层级的目录,这个是不是树形结构?
作者回复: 假的,基于 ListPrefix api 模拟出来的
共 3 条评论14 - 觉2019-06-14一门深入 长时薰修共 1 条评论12
- 科春2019-06-17我看贵司的官方网站中提供视频监控边缘节点的云存储,然而平安城市类的项目,视频监控既有视频数据也有图片数据,分别都是周期性保存。那么监控视频前端采集的数据是视频流,存储是如何看待这类数据以及这类业务应用对存储的要求是什么呢?七牛云和传统监控厂商所提供的云存储有什么区别?
作者回复: 七牛云上有很多这类视频监控类业务应用,比如海康萤石、中移动的和目摄像头等。他们的共同特征是:上行量大、存储有周期性(对象存储可以设置文件的lifetime,主要就是针对这类场景)。一般传统监控厂商都会基于七牛云这类云存储对外提供服务。
10 - 水木年华2019-06-15老师讲的第一个案例,打造“互联网”。里面讲到了构建互联网基础设施,还要在启动阶段开发杀手级应用来吸引客户。 我一下子就想到了区块链上的公链EOS,一直在努力做公链基础建设的事情。这还不够,官方也发布了一个社交应用Voice,希望把这个应用打造成为一个杀手级应用。 不同的场景,相同的打法。这种架构需求分析的思路原来是相通的。展开
作者回复: 我没有研究过voice,但是我判断可能还是有很大不同。互联网的两个应用email和www,都是去中心的,并不存在某个企业可以操控它(这和微信很不一样)。如果voice也是一样完全公开协议,分散部署(每个企业数据在自己这里),那么我觉得这个事情是成立的,如果voice是一个某个公司的app,那么和公链的关联就很勉强。
共 4 条评论5 - MJ2019-06-14【题外话】老师,是否了解中型企业关于安全的架构,一般怎么做,有没有好的推荐参考?最近做这事比较急。
作者回复: 安全涉及面太广,不知道你关注点是什么?
5 - hantics2019-08-01老师,hdfs分布式文件系统也是分散到各台机器上,通过namenode来组织,处理的也不仅是日志,我理解数据库类型数据都可以处理啊。 OBS类型我只觉得优势在可以存储图像、视频等异构类数据,具体还有其他什么优势嘛?
作者回复: hdfs和obs最大差别还是meta server,一个是fs,一个是kv。这意味着obs集群容量限制几乎没有,这个优势是非常重要的。
共 4 条评论4 - 梦醒十分2019-06-14许老师分析了pc时代和移动互联网两个方面的存储需求,从而从需求分析出适合的技术发展趋势。很有洞察力!4
- Geek_88604f2019-10-03重温了《需求分析下》,文中关于存储的需求分析中什么是核心稳定点?什么是变化点?个人认为存储的稳定点是用户对存储对象的增删改查,变化点是存储系统的类型(包括文件系统、数据库、KV等)。如何隔离变化点则通过存储网关来实现,使得用户不用感知底层的变化和扩展。不知道理解是否正确,请老师指正。
作者回复: 存储类型是结果(解决方案)不是原因(需求)。我们分析需求的时候不应该把解决方案放到需求中去分析。
共 2 条评论3 - 晓凉2019-06-14感谢许老师的分享,我问两个问题。老师说大数据存储方式在从hadoop转向对象存储,目前有什么好的开源对象存储方案推荐。另外关于树形结构的操作,我的理解是正在被修改的两个节点,只要其中一个不是另一个的祖节点,就应该可以同时修改,所以叶节点都可以同时修改。老师说树结构的并发性能问题主要来自哪些方面。
作者回复: 修改操作要么都成功要么都不成功,所以这是一个分布式事务。另外,传统树状结构在找文件的过程是要一层层目录解析下去的,在分布式元数据的情况下查询效率较低。
3 - 程序员小跃2019-06-19以前一直不理解桶(Bucket)这个东西,只知道在云存储上建一个桶,才能开始云存储。这下明白了,也是之前太懒了,都没深入研究。共 1 条评论2
- Chen2019-06-18学会了如何说服团队使用对象存储,😄2
- honnkyou2019-06-14“SAN,我们不用细分析就知道它们不是文件型存储的最佳选择” 老师这句话不是很理解,另外,对象存储底层也是块存储设备吧。我理解的对象存储是在文件系统之上又封装了一层,不知道对不对。
作者回复: 嗯,应该说不在讨论范围,反正他上面还有一个其他的存储
2 - 随心而至2019-06-14当一张表或者一个文件太大了时候,人们就会想办法把它分开。Kafka里面有partition,MongoDb有sharding,elastic search也有sharding,redis有slot,RDB有分库分表,等等。刚刚入行,说的不一定对,如有错误,请老师指正。
作者回复: 分开是自然的,否则物理上也放不下
2 - prader262019-10-27对象存储,自己简单的理解是,通过数据库上的表,建立文件和路径的映射。1
- 杨寅冬2019-06-20老师,现在越来越多的应用是各种web端,我们直接申请账号,在浏览器中编辑文档,可以实时保存,只要有网络,随时随地都可以协作办公,这种业务必须保证存储的高可用和可靠性,这种类型的业务用到的存储技术,底层用到的是对象存储技术吗。
作者回复: 不一定,后面我们会分析到
1 - Aaron Cheung2019-06-16打卡18 翻回国内不易…
作者回复: 辛苦了
1 - 小熊bill2019-06-16IPFS作为一种新的分布式文件存储协议,基于Merkle DAG实现内容寻址,防篡改,去重,与现有的云存储如何对比?是否会成为互联网存储的趋势?
作者回复: 不可能
1 - Eason2019-06-15自己虽毕业多年,许老师,第二个案例分析,感觉有点论文的影子。论述背景,提出挑战,综诉现有方案为什么不满足,然后提新的方案。1