Mac下 Hadoop部署简介(Mac OSX 10.8.3 + Hadoop-1.0.4)
OneCoder在自己的笔记本上部署Hadoop环境用于研究学习,记录部署过程和遇到的问题。 1、安装JDK。 2、下载Hadoop(1.0.4),在Hadoop中配置JAVA_HOME环境变量。修改hadoop-env.sh文件。 export JAVA_HOME= /Library/Java/JavaVirtualMachines/jdk1.7.0_10.jdk/Contents...
OneCoder在自己的笔记本上部署Hadoop环境用于研究学习,记录部署过程和遇到的问题。 1、安装JDK。 2、下载Hadoop(1.0.4),在Hadoop中配置JAVA_HOME环境变量。修改hadoop-env.sh文件。 export JAVA_HOME= /Library/Java/JavaVirtualMachines/jdk1.7.0_10.jdk/Contents...
HBase在扫描数据的时候,使用scanner表扫描器。HTable通过一个Scan实例,调用getScanner(scan)来获取扫描器。可以配置扫描起止位,以及其他的过滤条件。通过迭代器返回查询结果,使用起来虽然不是很方便,不过并不复杂。但是这里有一点可能被忽略的地方,就是返回的scanner迭代器,每次调用next的获取下一条记录的时候,默认配置下会访问一次RegionServer。这...
隔离等级 隔离其实比它看起来复杂。SQL标准定义了四种隔离级别,决定了数据变化在事务内外可见或不可见。低级别的隔离等级会有更好的并发支持和更低的资源消耗。 每种存储引擎都有其独特的隔离等级实现方式。你应该从你使用的存储引擎的手册中获取更详细的信息。 下面让我们来看下四种隔离等级: 未提交读(READ UNCOMMITED) ...
事务 事务是一组被看做一个整体的SQL请求。该组SQL被看成是原子的。如果所有的SQL都正常执行则数据确认请求,如果其中的任何一个失效,则所有的SQL都不生效。也就是说要么全成功,要么全失效。 本节并不是针对MySQL的,如果你已经事务的ACID特性了解,那么可以直接了解MySQL的事务特性。 银行系统是一个典型的需要事务特性的例子。假设系统有两张表支票账户和储蓄表。从Jane的...
一种提高共享资源并发效率的方式是合理的规划锁的范围。仅仅锁住你要修改的部分当然比全表锁住要好。所以,我们尽可能的最小化锁的范围,因为不相干的部分,本身也互不干扰。 不过,也要考虑到,锁是消耗资源的。每种锁的操作都有消耗,例如:获得锁,检查锁是否可用,释放锁等。如果系统花了过多的资源在锁的操作上,那么并发的性能就会受到影响。 锁的策略就是在锁的消耗和数据安全之间寻求一种平衡,这种平衡会...
HBase默认不支持聚合函数(sum,avg等)。可利用HBase的coprocessor特性实现。这样做的好处是利用regionserver在服务端进行运算。效率高,避免客户端取回大量数据,占用网络带宽,消耗大量内存等。 实现方式: 利用HBase提供的endPoint类型的AggregateImplementation Coprocess,配合AggregationClient访...
今天在微博看到消息该书的中文版已经翻译完成即将发售,所以OneCoder不再进行全文翻译,只会以类似读书笔记的方式记录文章大意和自己的理解。每天阅读的不会太多,因为只是休息的时候阅读,学习的重心最近在Hadoop上。 读写锁 多个用户同时读取邮件的时候不会有什么问题,以为没有人去修改文件。但是在有人正在的读的时候删除邮件就会产生问题。所以,出于安全考虑,读也应该特别关注。 这里...
并发控制 任何时刻当不止一个请求想要同时修改数据时候就产生了并发控制问题。从本章我们的观点来看,MySQL需要在两层关注这个问题:服务层和存储引擎层。并发控制是一个大话题,有很多相关的理论文献发表。所以,我们仅简介一下MySQL处理并发读写的方式。你将在本章的接下来的部分看到相关信息。 我们以Unix系统上的电子邮箱为例。传统的邮箱文件格式非常简单。邮箱中的所有信息是一个接一个的连接...
接上篇,第一章 MySQL架构和历史 连接管理和安全 每个客户连接在服务内部都有一个独立的线程处理。查询在这个单独的线程内运行,线程轮流在CPU或核心上运行。线程在服务端被缓存,所以不必针对每个新来线程进行创建和销毁。(注2)。 当客户端(应用)连接到MySQL服务的时候,服务端需要进行认证。认证是基于用户名,来访主机和密码的。X.509认证也可用于通过SSL(安全套接层)进行...
《High Performance MySQL》是OneCoder正在阅读的书,利用茶余饭后时间进行的阅读和翻译,日积月累。 MySQL与其他数据库服务有很大的不同,它的架构特性使得它在广泛领域内成为一种实用而“廉价”的选择。MySQL并不是完美的,但是他足够灵活以适应特定的需求环境,如网络应用。同时,MySQL也可以支持嵌入式应用,数据仓库,内容索引和软件分发,高可用系统,联机事务处理等...