centos 分区合并?centos磁盘分区
大家好,关于centos 分区合并很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于centos磁盘分区的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
擎创工程师实战| ClickHouse存储结构及索引详解
ClickHouse作为备受瞩目的开源列式数据库,专为数据分析(OLAP)领域设计。它具备高效查询性能,能够以低成本存储海量数据,同时设计灵活又强大。国内社区热度不减,各大企业纷纷采用。本篇分享了擎创工程师在使用ClickHouse过程中的实战经验,重点介绍了MergeTree表引擎的存储结构以及索引机制。
环境介绍部分,基于ClickHouse 20.8.5.45版本,操作系统为CentOS 7.5,主要探讨MergeTree表引擎的内部结构。创建表语句如下:
CREATE TABLE test_merge_tree( `Id` UInt64, `Birthday` Date, `Name` String) ENGINE= MergeTree() PARTITION BY toYYYYMM(Birthday) ORDER BY(Id, Name) SETTINGS index_granularity=2
接下来分析创建表之后的文件结构。刚创建的表在数据目录下生成了名为test_merge_tree的文件夹,此时并无数据。插入一条数据后,使用tree命令可见生成了以时间戳命名的文件夹。分区目录命名规则遵循特定模式。在介绍具体文件结构前,首先解释分区目录的命名规则:PartitionId_MinBlockNum_MaxBlockNum_Level。分区合并时,新的目录命名遵循特定规则,此处不展开详述。
存储结构部分,修改min_compress_block_size参数以更清晰分析mrk2和bin文件。通过在users.xml文件的profiles部分增加配置,然后重启clickhouse-server服务,验证修改是否成功。插入多条数据后,分析新生成的分区目录200002_2_2_0以及其下的文件存储格式。MergeTree表引擎会为每个主键字段生成primary.idx文件,用于加速查询,创建时使用了(Id, Name)作为主键,因此每隔index_granularity(此处设为2)行数据会产生一个索引。以第1个索引(3,'Lisa')为例,分析Id和Name字段的存储格式,展示小端模式和变长字段的处理方式。
mrk2文件结构固定,primary.idx文件中的每个索引在mrk2文件中有对应的Mark。寻找指定索引时,通过primary.idx找到对应Mark的偏移位置,直接读取24 Bytes即可得到Mark。bin文件由Block组成,每个Block包含头部的Checksum以及若干个Granule。Block的大小受参数min_compress_block_size控制,数据插入达到条件时会被压缩并写入磁盘。结合具体INSERT语句分析数据组织方式,解释Block和Granule之间的关系。partition.dat文件存储分区表达式的值,minmax文件记录分区字段的最小最大值。
分区合并机制自动进行,同一分区下的目录在一段时间后合并为新目录,原目录在更长时间后自动删除。合并遵循特定规则,减少资源占用。一次插入多条数据,避免频繁操作。
索引过程部分,通过图片简要概述了Id字段的索引构建过程,其他列的索引机制类似,具体实现细节可自行探索。
总结部分,本文通过案例深入分析ClickHouse的存储结构,力求逻辑清晰,旨在帮助对ClickHouse感兴趣的读者理解其索引机制,促进更深入的技术探索。
自制物理机安装centos7详细过程
CentOS官网获取镜像文件路径为:centos.org/->Get CengOS Now->list of current mirrors->选择centos7->isos->x86_64->dvd.iso。注意,对于大于4G文件无法拷贝的问题,可以尝试修改格式方法:输入cmd指令convert g:/fs:ntfs。
制作启动盘时,需用U启动制作UEFI版,选择ISO模式,选择下载的ISO镜像文件,进行制作并写入。注意,易出错的地方在于使用本地已下载ISO文件而非软件自带文件,制作完成后选择“否”。重启电脑,进入BIOS设置,设置第一启动项为UEFI,第二启动项为USB。
安装系统前需对硬盘进行格式化或仅安装Linux系统时,进行格式化。若安装双系统,无需格式化。使用win PE版合并分区,删除卷。安装时,先设置第一启动项为UEFI启动盘,进入安装界面,选择中文简体语言,安装信息摘要后,选择软件安装类型、安装位置和分区设置。
安装位置选择“我要配置分区”,标准分区中,swap分区设置为swap模式,其他分区如/、/boot、/home等设置为ext4模式。设置root密码,并增加管理员账号,完成安装后,重启电脑并拔出U盘。至此,CentOS7物理机安装过程完成。
VMware ESXi给虚拟机扩容
通过ESXi管理的虚拟机的硬盘空间不足时,可以进行扩容以满足需求。在开始扩容前,需要查看当前硬盘的状态,了解剩余可用空间,以便确定扩容的大小。
查看硬盘状态的命令可以告诉我们硬盘的使用情况,例如当前硬盘为500G,已使用45%。如果需要扩容,可以根据需求决定扩容的大小,例如本例中扩容500G。
在查看硬盘状态时,需要注意到IDE磁盘的文件名通常为/dev/hdxxx,而SCSI/SATA/USB磁盘的文件名则为/dev/sdxxx。了解这些文件名有助于后续操作。
扩容步骤开始时,首先需要将虚拟机关机并重启,以便进行硬盘大小的设置。在重启后,查看数据以确认硬盘大小已调整至所需大小,例如1000G。
扩容完成后,需要进一步操作以使新的空间可用。这包括创建新的分区、格式化新分区以及将新分区合并到现有分区。例如,在本例中,创建了一个名为sda3的分区,并将其格式化为ext3文件系统。
接下来,需要将新分区合并到现有的根分区/dev/mapper/centos-root,以使系统可以识别和使用新增加的空间。完成合并后,需要重启虚拟机,以便系统读取更新后的分区表。
最后,使用特定的命令进行文件系统的扩容,确保系统能够识别并利用新增加的空间。在完成扩容后,需要检查结果以确保操作成功。
在整个过程中,操作需谨慎,以避免填写错误。此过程完成后,虚拟机的硬盘空间将增加,满足了扩容的需求,提高了虚拟机的性能和存储容量。