摘要: 1 概念 先序遍历:节点 - 左孩子 - 右孩子中序遍历:左孩子 - 根结点 - 右孩子后序遍历:左孩子 - 右孩子 - 根结点 前序遍历:- + a * b – c d / e f 中序遍历:a + b * c – d – e / f 后序遍历:a b c d – * + e f / - 2 py 阅读全文
posted @ 2019-03-28 18:44 luohaixian 阅读(3528) 评论(0) 推荐(0) 编辑
摘要: 1 冒泡排序 算法思想:从第一个开始,相邻两个数进行比较,如果前1个数大于后一个数,则进行调换,这样换到最后,最大的那个就会在最后面,重复这个过程,较大的就会逐个累积在后面,本质思想就是大的在一轮中会逐渐冒泡到后排。python代码实现: 算法时间复杂度:O(n²)算法空间复杂度:O(1)算法稳定性 阅读全文
posted @ 2019-03-22 01:53 luohaixian 阅读(5785) 评论(1) 推荐(2) 编辑
摘要: 1 什么是crushmap crushmap就相当于是ceph集群的一张数据分布地图,crush算法通过该地图可以知道数据应该如何分布;找到数据存放位置从而直接与对应的osd进行数据访问和写入;故障域的设置和数据冗余选择策略等。crushmap的灵活设置显示出了ceph的软件定义存储方案。这里可以引 阅读全文
posted @ 2019-03-04 19:51 luohaixian 阅读(7046) 评论(0) 推荐(0) 编辑
摘要: 1 PG介绍pg的全称是placement group,中文译为放置组,是用于放置object的一个载体,pg的创建是在创建ceph存储池的时候指定的,同时跟指定的副本数也有关系,比如是3副本的则会有3个相同的pg存在于3个不同的osd上,pg其实在osd的存在形式就是一个目录,可以列出来看下: 这 阅读全文
posted @ 2018-09-23 22:21 luohaixian 阅读(24404) 评论(0) 推荐(1) 编辑
摘要: 1 galera mariadb首先MariaDB是一个数据库,可以看成是MySQL的一个分支,由于MySQL被SUN收购,所以MySQL面临着闭源的风险,当时MySQL之父Widenius并没有加入SUN,而是基于MySQL的代码开发新的分支,命名为MariaDB,并全部开源。 Galera是Ga 阅读全文
posted @ 2018-08-05 17:03 luohaixian 阅读(7142) 评论(0) 推荐(0) 编辑
摘要: 1 快照的概念一般对快照的理解就是能够将系统还原到某个瞬间,这就是快照的作用。快照针对要保存的数据分为内存快照和磁盘快照,内存快照就是保存当前内存的数据,磁盘快照就是保存硬盘的数据。快照针对保存方式又分为内部快照和外部快照。内部快照:是指快照信息和虚拟机存在同一个qcow2镜像中,使用单个的 qco 阅读全文
posted @ 2018-07-21 01:25 luohaixian 阅读(11873) 评论(1) 推荐(2) 编辑
摘要: 1 编译linux内核原因一般情况下,我们是不需要重新去编译linux内核的,但如果你发现你需要修改内核的某个部分或者说你需要的某个模块并没有编译进内核,那里你可以通过重新编译内核来满足你的需求,比如当我们需要用bcache时,但默认bcache是没有编译进内核的,我们可以通过修改编译配置文件,将b 阅读全文
posted @ 2018-07-15 16:12 luohaixian 阅读(4601) 评论(1) 推荐(1) 编辑
摘要: 1 Bcache介绍Bcache是一种缓存技术,它是根据SSD的特性设计的,由于SSD的随机读写速度要比普通硬盘的随机读写快N多倍,但是一般SSD的容量小且贵,当然土豪除外,所以我们可以综合SSD的读写速度快和HDD的容量大的优点,这就可以使用bcache来做到,将SSD作为HDD的缓存磁盘,,即保 阅读全文
posted @ 2018-07-08 15:30 luohaixian 阅读(3964) 评论(0) 推荐(0) 编辑
摘要: 1. 块存储是什么 块存储简称RBD(RADOS Block Device),是一种有序的字节序块,也是在Ceph三大存储类型中最为常用的存储方式 ,Ceph的块存储是基于RADOS的,因此它也借助RADOS的快照、复制和一致性等特性提供了快照、克隆和备份等操作。Ceph的块设备是一种精简置备模式, 阅读全文
posted @ 2018-01-08 16:06 luohaixian 阅读(8314) 评论(0) 推荐(0) 编辑
摘要: 1 Cinder架构图 Cinder是在虚拟机和具体存储设备之间引入了一层“逻辑存储卷”的抽象,Cinder本身并不是一种存储技术,只是提供一个中间的抽象层,Cinder通过调用不同存储后端类型的驱动接口来管理相对应的后端存储,为用户提供统一的卷相关操作的存储接口。 由上图可以看出,目前的Cinde 阅读全文
posted @ 2017-12-28 13:05 luohaixian 阅读(21119) 评论(0) 推荐(0) 编辑