- 论坛徽章:
- 8
|
1、 为了使分布式存储系统获得更高性能,您会采用哪些措施?
硬件升级:服务器、SSD、网络(40GB/s, 25GB/s)、网络交换机、RDMA协议
网络通信框架改进:Luna, RDMA+用户态驱动+私有I/O协议
线程模型改进:用户态驱动,加入co-routine协程,加run to completion模式
数据布局改进:采用追加写,修改元数据模式(元数据记录数据的位置)
更细致的分层和抽象;针对不同的IO属性,提供更定制化的策略模块,满足不同的IO Profile需求
2、 分布式存储系统的高并发能力应如何实现?
把不同的业务分拆到不同的服务器上去跑(垂直拆分),相同的业务压力分拆到不同的服务器去跑(水平拆分),并时刻不要忘记备份、扩展、意外处理等问题。
3、 使存储系统获得更高网络带宽的方法有哪些?
在同地域100千米范围内,多个数据中心间的延时增加小于1毫秒,带宽可以做到接近于数据中心内部网络的水平,在系统设计时主要考虑在数据分布上,在流量控制和延时上的限制不突出。但是跨地域的容灾将延时增大到几十毫秒,带宽则下降至少一个数量级。为了缓解这样的问题,需要做到数据可以异步进行同步,数据可以按照重要程度来区别对待。
4、 怎样在控制总体成本的情况下,合理地为海量数据提供存储空间,并能满足数据量快速增长的需求?
(1)分布均匀,即每台设备上的数据量要尽可能相近;
(2)负载均衡,即每台设备上的请求量要尽可能相近;
(3)扩缩容时产生的数据迁移尽可能少。
5、 真正可靠的数据保护往往需要一套复杂的策略,实现多级数据保护与容灾,这需要分布式存储系统具备哪些功能?
(1)系统中所有数据至少需要有两个以上的副本,并且系统的处理能力要有一定的冗余,需要保证在故障机器不能提供服务时,系统不会过载。
(2)需要考虑物理部署,通过把数据的不同副本分布在不同机架、不同机房、甚至是不同城市,来把系统的容灾能力提升到不同的级别
(3)配置运维中心会监控系统存储层所有节点的状态,存储节点会定时上报心跳,如果配置运维中心在一段时间未收到某个存储节点的心跳,则把该节点的状态标记为故障,并进行故障处理流程。
(4)在容灾切换之后,还需要进行故障节点的恢复,以便系统恢复到正常的状态。
6、 海量非结构化场景下,应用类型、数据类型复杂,为获得高效便捷的数据管理功能,需要在哪些方面做好准备?
(1)存储选择时的成本比较,从实际业务入手,对数据扩展性要求高、需求变化快的应用,使用分布式存储方式肯定会节省一定的成本。
(2)在存储设备的选择上是否考虑使用闪存存储,如果是将访问量较大的元数据放入闪存中,就可以快速提高应用对非结构化数据的检索效率,进而提升整个集群存储的效能。
(3)存储高可用设计方面,单点故障在设计初期也要考虑,分布式文件系统的存储方式,除了要关注存储节点还要关注计算节点的高可用。
7、 针对海量非结构化数据场景,您认为分布式存储系统的设计与建设还应关注什么?如何实现?(可选回答)
(1)合理设计过期时间,减少内存占用
(2)数据结构选用方面,考虑需求的同时还需考虑性能因素。
(3)设计实用高效命令。
(4)重点关注存储节点底层磁盘I/O、系统读写cache大小等。
(5)不同的分布式文件系统对客户端的支持是有差别的,要关注文件系统I/O吞吐是否能够对客户端增加有较好的可扩展性。 |
|