support checksums in HBase block cache
https://issues.apache.org/jira/browse/HBASE-5074
Skip checksum is broke; are we double-checksumming by default?
HDFS-2699里面的讨论比较清楚:现在的软件和硬件都是4096 byte为单位进行读写
facebook的
dhruba borthakur说他们的hbase生产系统都设置io.bytes.per.checksum为4096 (instead of 512)
facebook的相关设置是:the hbase block size is 16K. The hdfs checksum size is 4K. The hdfs block size is 256 MB.
ebay的hbase生产系统hdfs block size 设置的是128M,在其他地方看到的
HBASE-5074的特性是默认打开的,通过属性"hbase.regionserver.checksum.verify"设置
HRegionServer:
// do we use checksum verfication in the hbase? If hbase checksum verification
// is enabled, then we automatically switch off hdfs checksum verification.
this.useHBaseChecksum = conf.getBoolean(
HConstants.HBASE_CHECKSUM_VERIFICATION, true);
现在的cdh3u3对这个特性的支持还不完整:DFS Client端的verifyChecksum会设置为false,这样子DFS Client不会对读取到的Data和CheckSum进行校验。但是DataNode还是会读取Data和CheckSum,所以DataNode机器上面的两次iops还是不可避免,需要hdfs进行相应的修改。
HBase一个Block里面既有Data又有CheckSum,CheckSum和Data是连续存储的,所以只需要一次iops。
分享到:
相关推荐
Hadoop-2.6.4源码包包含了Hadoop的核心组件和相关模块,是理解Hadoop工作原理、进行二次开发或优化的基础。 1. Hadoop核心组件: Hadoop主要包括两个核心组件:HDFS(Hadoop Distributed File System)和MapReduce...
2. `hadoop distcp -Ddfs.checksum.type=CRC32 -skipcrccheck -i -update hftp://src_cluster:50070/hbase/tablename webhdfs://dest_cluester:50070/hbase/data/default/tablename` 3. `hadoop distcp -Ddfs....
- **HDFS校验和验证**: 为保证数据的正确性,可以开启`hbase.regionserver.checksum.verify=true`,对数据进行校验。 #### 其他优化建议 - **保持数据节点的稳定性**: 对于HBase存储来说,保持数据节点的稳定运行...
HBase 是一个分布式的、版本化的、基于列族的NoSQL数据库,它是构建在Hadoop文件系统(HDFS)之上的,特别适合处理海量半结构化数据。这份【中文】HBase 官方文档(中文版)是为那些不熟悉或者对英文文档有困难的用户...
通过以上这些知识点,你可以对Hadoop有一个全面的理解,这对于准备Hadoop相关的面试至关重要。在实际面试中,你可能会遇到关于这些概念的深入问题,如具体配置参数、性能调优、故障排查等,都需要根据实际情况进行...
3. **性能优化**:Facebook通过改进HBase的数据结构和算法,进一步提升了数据读写性能,特别是在处理大量随机读操作时,通过采用Inline Checksum技术,显著提高了数据吞吐量,保障了系统的高效运行。 #### 总结 ...
- **Keytab权限与有效性**:如果遇到“Checksum failed”错误,检查`hbase.keytab`的权限是否正确赋予了hbase用户,并通过`kinit`命令验证keytab的有效性。如果keytab失效或不匹配,可能需要重新生成或更新。 - **...
- **HBase**: 提供高可靠性、高性能、面向列、可伸缩的分布式存储系统。 - **Flink**: 一个流处理框架,能够实现低延迟的数据流处理任务。 - **ClickHouse**: 一款用于在线分析处理查询的语言和原生数据库管理系统。...