Hadoop版本:hadoop-20-master
源码阅读配置记录
RaidNode
| 属性 | 缺省值 | 说明 | |
|---|---|---|---|
| raid.classname | DistRaidNode | RaidNode实现类,默认DistRaidNode在createRaidNode中读取conf设置 | |
| fs.raidnode.startup | -regular | ||
| raid.server.address | localhost:60000 | RaidNode RPC服务地址 | |
| fs.raidnode.handler.count | 10 | RaidNode RPC服务handler线程数目 | |
| raid.mapreduce.upload.classes | 无 | 设置tmpjars | |
| mapred.raid.http.address | localhost:50091 | raid http服务器地址 | |
| hdfs.raid.stripe.encoding | 1 | 一个EncodingCandidate对应的编码单元(一个编码单元stripeLength个源Block) | |
| hdfs.raid.min.filesize | 10*1000(10KB) | RaidNode统计目录状态(listDirectoryRaidFileStatus)时最小文件大小,小于此值不参与目录Raid | |
| hdfs.raid.parity.initial.repl | 3 | ||
| mapred.job.id | 无 | Raid操作的job id,临时目录 |
Encoder
| 属性 | 缺省值 | 说明 |
|---|---|---|
| raid.encoder.max.buffer.size | 1024*1024(1MB) | |
| hdfs.raid.checksum.store.required | false | 是否必须配置ChecksumStore |
| raid.encoder.retry.count.partial.encoding | 3 | 文件局部编码失败重试次数 |
| raid.encoder.bufsize | 最大buffer大小1MB | 一次从Block中读取并编码数据的大小,如果大于Block大小,则为Block大小.小于Block大小时,如果不能被Block大小整除,则配置为Block大小的1/256,最小1KB |
Decoder
| 属性 | 缺省值 | 说明 |
|---|---|---|
| raid.decoder.max.buffer.size | 1024*1024(1MB) |
raid.decoder.max.buffer.size|最大buffer大小1MB|一次从Block中读取并编码数据的大小,如果大于Block大小,则为Block大小.小于Block大小时,如果不能被Block大小整除,则配置为Block大小的1/256,最小1KB|
ConfigManager
| 属性 | 缺省值 | 说明 |
|---|---|---|
| raid.config.file | raid.xml | Raid配置文件,相应类:ConfigManager,对应策略类:PolicyInfo |
| raid.config.reload | true | Raid配置文件是否可重新加载 |
| raid.config.reload.interval | 10*1000(10s) | 配置文件重新加载周期,成员属性reloadInterval |
| raid.policy.rescan.interval | 3600*1000(1h) | Raid策略文件加载周期,成员属性periodicity |
| raid.mod.time.period | 24小时 | 启动日志信息modTimePeriod,成员属性modTimePeriod |
| raid.har.partfile.size | 4*1024*1024*1024(4G) | |
| raid.distraid.max.jobs | 10 | 一个policy最多可运行的job数目,成员属性maxJobsPerPolicy |
| raid.distraid.max.files | 5000 | 通过fileListPath设置Raid文件,文件Raid一个job(一次Raid操作)支持最大的文件数目,成员maxFilesPerJob |
| hdfs.raid.dir.raid.block.limit | 5000 | 通过fileListPath设置Raid文件时,目录Raid一个job(一次Raid操作)支持最大的区块数目,成员maxBlocksPerDirRaidJob |
| raid.read.reconstruction.metrics.url | “” | |
| RELOAD_WAIT | 5000(5s) | ConfigManager成员,配置文件修改经5s才会重新加载 |
Codec
| 属性 | 缺省值 | 说明 |
|---|---|---|
| raid.encoder.parallelism | 4 |
CheckSumStore
| 属性 | 缺省值 | 说明 |
|---|---|---|
| hdfs.raid.checksum.store.class | null | 对应类:ChecksumStore子类,存在创建实例,initialize函数初始化 |
| hdfs.raid.local.checksum.dir | “” | LocalCheckSumStore对应本地存储目录 |
StripeStore
| 属性 | 缺省值 | 说明 |
|---|---|---|
| hdfs.raid.stripe.store.class | null | 对应类:StripeStore子类,存在创建实例,initialize函数初始化 |
| hdfs.raid.local.stripe.dir | 无 | LocalStripeStore中storeDirName |
BlockIntegrityMonitor
| 属性 | 缺省值 | 说明 |
|---|---|---|
| raid.blockfix.classname | DistBlockIntegrityMonitor | RaidNode启动时createBlockIntegrityMonitor读取配置 |
| raid.blockreconstruction.corrupt.disable | false | 是否禁用损坏区块的修复 |
| raid.blockreconstruction.decommissioning.disable | true | 是否禁用丢失区块修复 |
| raid.corruptfile.counter.disable | false | 是否禁用损坏区块计数器 |
| raid.blockfix.interval | 5*1000(5s) | 每次修复线程执行dofix时休眠时间,对应成员属性blockCheckInterval |
| raid.corruptfilecount.interval | 600*1000(10m) | 检查丢失区块的间隔,对应成员属性corruptFileCountInterval |
| raid.blockfix.noraid.replication | 3 | 对应成员属性notRaidedReplication |
| raid.monitor.seconds | “18000,86400,604800”(5h,1d,1w) | “,”分割的s位单位的时间,对应成员属性monitorSeconds |
| raid.corruptfile.counter.dirs | “/“ | 字符串数组,损坏文件目录扫描根目录,对应成员属性monitorDirs |
| hdfs.raid.histogram.dividend | 1000 | |
| raid.histogram.length | 20 | |
| raid.histogram.percents | “0,50,95,99,100” |
TriggerMonitor
| 属性 | 缺省值 | 说明 |
|---|---|---|
| hdfs.raid.trigger.monitor.sleep.time | 10000(10s) | 执行process过程的休眠间隔,即两次Raid操作之间的间隔 |
| raid.directorytraversal.threads | 4 | 一个policy中存在srcPath时,遍历srcPath所指路径可Raid文件的线程数 |
| raid.directorytraversal.shuffle | true | 是否打乱srcPath解析的路径的顺序 |
| raid.exclude.patterns | 无 | 不参与Raid的路径,默认包含”.Trash”路径 |
| raid.infermtimefromname | true | 从文件名推断修改时间(即文件名与修改时间相关联?) |
UnderRedundantFilesProcessor
| 属性 | 缺省值 | 说明 |
|---|---|---|
| hdfs.raid.under.redundant.files.processor.sleep.time | 10000(10s) | |
| raid.under.redundant.files.processor.threads.num | 5 | |
| raid.increase.replication.batch.size | 50 |
PlacementMonitor
| 属性 | 缺省值 | 说明 |
|---|---|---|
| hdfs.raid.block.move.threads | 10 | 移动线程数目 |
| hdfs.raid.block.move.queue.length | 30000 | 移动队列长度 |
| hdfs.raid.block.move.min.replication | 2 | 区块移动最小备份 |
| hdfs.raid.block.move.simulate | true |
PurgeMonitor
| 属性 | 缺省值 | 说明 |
|---|---|---|
| raid.directorytraversal.shuffle | true | 目录遍历时打乱顺序 |
| raid.directorytraversal.threads | 4 | 目录遍历线程 |
| hdfs.raid.purge.monitor.sleep | 10000(10s) |
StatisticsCollector
| 属性 | 缺省值 | 说明 |
|---|---|---|
| raid.directorytraversal.threads | 4 | |
| raid.statscollector.submit.raid.jobs | true | |
| raid.statscollector.update.period | 20601000(20m) | 统计信息更新周期 |
| fs.raid.statscollector.snapshotFile | 无 | 快照文件名 |