universe_stars_planets_nebulae_debris_62627_1920x1080

【dbdao Hadoop 大数据学习】HDFS 配额指导

dbDao.com 引导式IT在线教育

Hadoop 技术学习QQ群号  : 134115150

本文固定链接:http://t.dbdao.com/archives/hadop-hdfs-quotas-guide.html

原文地址:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsQuotaAdminGuide.html 

1概述

 

HDFS允许管理员为名称的数量进行配额限制,并且为单独的目录设置使用空间得大小。

命名限额和空间限额是独立的,但是管理员实施的时候这2者是密切配合的(t.dbdao.com)。

 

 

2.名称限额

 

名称限额是根目录中的目录名称文件的硬性限制。如果达到了这个限制,创建文件和目录将会失败。限额也会在重命名操作上起作用,如果重命名也满足限制条件,这个操作也将失败。即使新的配额已经让当前的目录违反了,这个设置操作任然会成功(设置并不会去校验)。一个新创建的目录不会分配配额。最大的配额是Long.Max_Value。配额强制一个目录保持为空(一个目录的数量就是其自身的配额)

 

在fsimage上,配额是持续性的。当启动时,如果fsimage已经违背了一个配额(也行是fsimage被偷偷的修改),每一个违反都会打印一个警告。设置或删除创建一个日志条目的配额。

(更多…)

Read More

MYSQLV1

【MySQL学生手册】binary备份 vs 文本备份

本文地址:http://t.dbdao.com/archives/mysql-binary-vs-text-backup.html

dbDao 百度贴吧:http://tieba.baidu.com/dbdao

Mysql技术学习QQ群:146959374

 

11.2 binary备份 vs 文本备份

当备份数据库时,你有两种备份格式可选:

  • 二进制(binary)备份是一种对数据库中存储的内容文件的拷贝。这种拷贝实际上使得备份文件格式和MySQL在磁盘上存储的数据库文件格式保持了完全一致。因此此类数据库恢复则涉及将这些文件拷贝回它原有的位置。建立binary备份的技术包括使用文件拷贝命令(如cp或tar),mysqlhotcopy以及InnoDB Hot Backup**。
    ** 需要注意的是mysqlhotcopy从MySQL 5.7及其之后就被去除了,相关功能被融合到了其企业版MySQL Enterprise Backup工具mysqlbackup中。而InnoDB Hot Backup原先是商用软件的一部分,在MySQL Enterprise Backup 3.9之后其相应工具也被融合入mysqlbackup中。
  • 文本备份则是将数据库内容导出(dump)至文件文件中。恢复则涉及到通过处理这些文件的内容将数据返回到数据库中。生成文本备份的技术包括了使用SELECT … INTO OUTFILE 的SQL语句,mysqldump工具等。

 

这两种备份格式有其不同的优缺点。通常选择使用何种备份的考虑因素是对速度和便携性之间的权衡。

 

由于二进制备份仅是对文件进行拷贝操作,它不需要了解文件中的内部结构,因此在速度上这种备份速度会更快。然而,如果需要将这种备份传输到另一个使用不同架构的机器上,那么文件就需要更多考虑二进制的便携性。意思就是这些文件需要平台无关化才行,这样你才能直接拷贝它们,从一个MySQL服务端传输到另一个处于不同服务器上的数据库中,而且这第二个服务端需要能够没有任何问题地访问这些文件的内容。使用二进制备份方法,你还需要确保在进行备份的时候,服务端不会对在被拷贝的文件进行修改。【dbdao.com 数据岛】

(更多…)

Read More

MYSQLV1

【MySQL学生手册】备份和恢复

本文地址:http://t.dbdao.com/archives/mysql-backup_recovery_knowledge.html

dbDao 百度贴吧:http://tieba.baidu.com/dbdao

Mysql技术学习QQ群:146959374

 

第11章 备份和恢复

 

章节概述

本章介绍了MySQL数据备份和恢复。你将学习并了解:

  • 备份的类型
  • 进行二进制备份和文本备份
  • 备份中日志和状态文件的角色作用
  • 使用一个复制从库(replication slave)来进行备份
  • 进行数据恢复
  • 倒入数据文件

 

11.1 备份概述

MySQL数据库备份一般用于应对可能的系统崩溃或硬件故障而导致的数据损失或讹误问题。备份同样对于用户误操作,如误删数据库或表等恢复有帮助。也有时候备份被用于将数据库拷贝或移动到另一个服务器中,如当你需要进行MySQL安装迁移,或建立一个复制从库时。

 

备份可以是对数据文件的直接拷贝,或是通过设计程序来完成同样的备份目的。这些程序包括mysqldump,mysqlhotcopy和InnoDB Hot Backup。

 

对于数据库运维,备份总是必要的,不过备份仅仅是在数据受损后所需进行数据恢复的组件之一。其它的你还需要二进制日志(binary log)文件,它包含了数据修改的记录。进行数据库恢复时,你使用备份将数据库恢复到备份时的状态,然后重新执行binary log中包含的语句来应用备份后的数据修改。

 

这里列出了在进行备份时需要记住的一些原则:

  • 制作一般备份。
  • 启用binary log,这样你在进行备份后,对数据修改的记录将会被保存在日志文件中。
  • 在备份后,使用flush命令,使得服务端从一个新的binary log文件开始,这个日志文件对应了备份的时间(也就是说,将此备份后的日志看作是一个“检查点”,从这个时间后开始的日志记录是备份之后新的数据修改)。
  • 将数据文件目录和你的备份放置在不同的物理设备中,这样一旦某个设备出现故障,不会造成同时被影响的后果。
  • 将你的备份存在在通常合理的文件系统位置中,这样一旦需要就可以从这些位置上找到备份进行恢复。【dbdao.com 数据岛】

(更多…)

Read More

universe_galaxy_stars_light_68743_1920x1080

【dbdao Hadoop 大数据学习】 测试Hadoop程序

dbDao.com 引导式IT在线教育

Hadoop 技术学习QQ群号  : 134115150

本文固定链接:http://t.dbdao.com/archives/testing-hadoop-programs.html

测试Hadoop程序

 

本章介绍了如何在你本地集成开发环境( IDE )中对Hadoop程序进行单元测试。虽然自早期的Hadoop以来,Hadoop程序单元测试已经取得很大进展,但因为Hadoop的组件,如Mappers 和 Reducers,是在分布式环境中运行,它仍然是具有挑战性的。

我们讨论了MapReduce单元测试API,称为MRUnit,这使我们能够独立地对Mapper 和 Reducer类进行单元测试。讨论完MRUnit的限制,我们将探讨处理这些限制的LocalJobRunner类。本章结尾将着探讨MiniMRCluster类,这使我们能够在内存中运行一个完整的MapReduce框架,使其在整个MapReduce框架环境下,适合于MapReduce组件的综合测试。

 

回顾Word Counter

表8-1是你在第3章所看到的word counter的Reducer

(更多…)

Read More

IMG – 2016年 MySQL技术嘉年华会即将召开

毫无疑问,MySQL是最为流行的开源数据库系统,已经广泛的应用于各大互联网公司。目前,大量的传统金融客户也已经逐渐在其生产环境使用MySQL数据库,在互联网+的时代MySQL扮演着举足轻重的角色。本次大会将为MySQL技术爱好者带来最具分享意义的主题,包括MySQL数据库新特性、高可用容灾安全、数据库云架构、行业客户最佳应用实践。本次数据库会议邀请国内顶级MySQL数据库专家分享,旨在打造成一个最有态度的MySQL数据库大会。

SHOUG(上海Oracle用户组)和IMG(Inside MySQL Group)合作来推广本次会议,希望用户组之间的合作能够给大家更多学习的机会。

IMG 2016 MySQL技术嘉年华官方网址:http://www.innomysql.net/img2016/

通过dbDao数据岛平台(为SHOUG提供会议门票代理)直接购买,可享受299元的底价(官方价格现在已经上调至399元了!!)。有志于深度了解MySQL高级议题的同学赶快来报名吧~~
SHOUG用户组渠道链接:http://www.dbdao.com/xianxiake/mysql/8

by dbDao.com 数据岛

 

Read More

MYSQLV1

【MySQL学生手册】关于InnoDB及MyISAM表的恢复

本文地址:http://t.dbdao.com/archives/mysql-innodb-myisam-recoveryinfo.html

dbDao 百度贴吧:http://tieba.baidu.com/dbdao

Mysql技术学习QQ群:146959374

 

10.4 修复InnoDB表

在之前的章节中,我们已经了解了可以通过执行CHECK TABLE语句或使用客户端工具来发出此语句,来对InnoDB表进行检查。不过,如果InnoDB表存在问题,那么你并不能使用REPAIR TABLE来对表进行维修,因为这个命令仅对MyISAM可用。

 

如果检查不InnoDB表有问题,那么你应该使用mysqldump来将表恢复到一个一致性状态,即删除表,并通过dump文件进行重建:

 

在遇到MySQL服务端奔溃或数据库运行的主机奔溃后,一些InnoDB表可能会需要进行修复。正常情况下,简单的进行服务端重启就行了,因为InnoDB存储引擎在启动时会进行自动恢复作业。少数情况下,可能由于InnoDB自动恢复失败而导致服务端无法启动。如果碰到这样的情况,请按以下步骤进行操作:

  • 使用带有 --innodb-force-recovery(值范围为1~6)的命令项来重启服务端。这个值用于提高警告屏蔽级别以避免启动崩溃,对于被恢复的表,允许更高不一致容忍度。较好是值使用从4开始。
  • 当你启动服务端并使用 --innodb-force-recovery设为一个非0值,InnoDB会将表空间作为只读处理(从7.3版本开始,值为4或更大时,将使得InnoDB置于只读模式)。之后,你应该使用mysqldump工具来倒出InnoDB表数据,并在导出后,在此命令项有效的情况下将InnoDB表删除。然后在不使用 --innodb-force-recovery项的情况下重启服务端。当服务端起来后,再从导出的dump文件来恢复InnoDB表。
  • 如果之前的步骤都失败了,那就有必要从之前的备份来恢复InnoDB表了。【dbdao.com 数据岛】

(更多…)

Read More