
分布式存储
文章平均质量分 78
带着你的名字
这个作者很懒,什么都没留下…
展开
-
GlusterFS源码分析——dht_create
GlusterFS源码分析——dht_create1、简介GlusterFS的分布式哈希表(DIstributed Hash Table,简称DHT)机制是数据分布的核心机制,以目录作为文件分布的基本单位。当用户在客户端创建目录的时候,会在所有brick进行创建,但是创建目录的时候,会根据哈希算法确定文件具体存放在哪个brick上。也就是说,所有brick都有相同的目录结构,但是文件只会存储于特定的brick上,根据文件所在目录的gfid和文件名寻找实际存储文件的brick。我们知道,在Gluster原创 2021-08-26 21:04:17 · 915 阅读 · 1 评论 -
GlusterFS源码学习——函数指针数组的妙用
GlusterFS使用C编写,源码中使用了大量的函数指针来实现模块化编程(是我自己以前没有接触过的编写方式),这样的方式可以很方便的实现功能扩展以及调用。今天学习的是函数指针数组,也就是把相同系列的函数的函数指针存放到一个数组中,通过这个数组和对应于函数操作的编号来进行调用。源码中代码很多,而且跳来跳去的很麻烦,所以自己照葫芦画瓢写了一个小的demo来加深印象,用来学习和记忆该方法。本文前面部分是自己的小demo,后面是GlusterFS的部分源码。demo/* 用来练习函数指针数组的的小demo原创 2021-08-24 19:36:18 · 263 阅读 · 0 评论 -
GlusterFS源码分析——重要数据结构
对几个重要数据结构的简单分析1. frame以及frame->local用来保存volfile内容的一个数据结构,同时还承担了其它重要功能glusterfs/libglusterfs/src/stack.h:struct _call_frame_t { call_stack_t *root; /* stack root 记录当前的用户是谁,要发送给server的,表示当前是谁在系统中工作 */ call_frame_t *parent; /* previous BP */原创 2021-08-18 11:37:39 · 1281 阅读 · 1 评论 -
分布式存储学习(一)相关概念
1.1 什么是网络存储?是数据存储的一种方法,指通过网络存储设备(包括专用数据交换设备、磁盘阵列或磁盘库等存储介质,以及专用的存储软件),利用原有网络,构建一个存储专用网络为用户提供信息存取和共享服务。开放系统的外挂存储根据连接方式的不同,分为直连式存储和网络化存储,网络化存储根据传输协议有分为NAS和SAN,所以现在的存储解决方案主要大致分为三种:直接附加存储DAS(Direct Attached Storage)、网络附加存储NAS(Network Attached Storage)、存储区域网原创 2021-07-22 21:06:09 · 307 阅读 · 0 评论