位运算 - 应用篇 基础篇中对各种位运算操作进行了详细的介绍说明,在具备基础篇的知识基础上,学习了解一些位运算的奇淫技巧,能够更好的掌握位运算知识,同时在一些算法题中,也可以有更开阔的视野和题解。斯坦福计算机资料整理:http://graphics.stanford.edu/~seander/bithacks.html#OperationCountingCHAR_BIT is the number of...
位运算 - 基础篇 位运算 - 缘起欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Mar...
狄克斯特拉算法 - 学习整理 很多时候,总会忽略了一些你认为不需要的知识体系,但最终你发现,你又要花大量的时间去弥补这个空缺。算法简介狄克斯特拉算法,用于计算出在非负权重的情况下,图中起点到终点的最短路径......解决问题从A出发是否存在到达B的路径;从A出发到达B点的最短路径(时间最少或者路径最少);算法思路找出“最便宜”的节点,即可在最短时间内到达的节点;更新此节点到“邻居”节点的开销,其含...
Hadoop分布式文件系统 Hadoop分布式文件系统(HDFS)的设计主旨,在于对超大规模数据集提供可靠的存储功能,并对用户应用程序提供高带宽的输入输出数据流。在大型的集群里,上千台服务器均可直接参与到数据存储和应用程序任务执行。通过多服务器,分布式的存储和计算,计算资源的规模能够按照需要增长,并兼顾在各种规模上经济适用性。 本文主要描述了HDFS的架构,并以Yahoo!企业数据服务为例,介绍了如何使用HDFS系统管理高达
Hadoop :实践环节–故意造成数据块丢失 使用以下步骤连续杀死3个DataNode:使用下列命令重启所有节点: $ start-all.sh等到Hadoop的 “dfsadmin –report”命令显示有4个活跃节点:把测试文件的新副本file1.new放到HDFS上: $ Hadoop fs -put file1.data file1.new登录到集群中的3台主机并杀死每台主机上的DataNode进
Hadoop的数据管理 Hadoop的数据管理HDFS的数据管理HDFS是分布式计算的存储基石,Hadoop分布式文件系统和其他分布式文件系统有很多类似的特性:对于整个集群有单一的命名空间;具有数据一致性,都适合一次写入多次读取的模型,客户端在文件没有被成功创建之前是无法看到文件存在的;文件会被分割成多个文件块,每个文件块被分配存储到数据节点上,而且会根据配置由复制文件块来保证数据的安全性。
谷歌三大核心技术(一)Google File System - 系统设计 我们在设计这个系统时,一个重要的原则是最小化所有操作和Master节点的交互。带着这样的设计理念,我们现在描述一下客户机、Master服务器和Chunk服务器如何进行交互,以实现数据修改操作、原子的记录追加操作以及快照功能。3.1 租约(lease)和变更顺序(alex注:lease是数据库中的一个术语)变更是一个会改变Chunk内容或者元数据的操作,比如写入操作或者记录追加操作。
谷歌三大核心技术(一)Google File System - 设计 2.1设计预期在设计满足我们需求的文件系统时候,我们的设计目标既有机会、又有挑战。之前我们已经提到了一些需要关注的关键点,这里我们将设计的预期目标的细节展开讨论。系统由许多廉价的普通组件组成,组件失效是一种常态。系统必须持续监控自身的状态,它必须将组件失效作为一种常态,能够迅速地侦测、冗余并恢复失效的组件。系统存储一定数量的大文件。我们预期会有几百万文件,文件的大小通常
谷歌三大核心技术(一)Google File System - 简介 为了满足Google迅速增长的数据处理需求,我们设计并实现了Google文件系统(Google File System – GFS)。GFS与传统的分布式文件系统有着很多相同的设计目标,比如,性能、可伸缩性、可靠性以及可用性。但是,我们的设计还基于我们对我们自己的应用 的负载情况和技术环境的观察的影响,不管现在还是将来,GFS和早期文件系统的假设都有明显的不同。所以我们重新审视了传统文件系统在设计
谷歌三大核心技术(一)Google File System - 摘要 译者:alex摘要我们设计并实现了Google GFS文件系统,一个面向大规模数据密集型应用的、可伸缩的分布式文件系统。GFS虽然运行在廉价的普遍硬件设备上,但是它依然了提供灾难冗余的能力,为大量客户机提供了高性能的服务。虽然GFS的设计目标与许多传统的分布式文件系统有很多相同之处,但是,我们的设计还是以我们对自己的应用的负载情况和技术环境的分析为基础 的,不管现在还是将来
正则表达式 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。Visual Basic Scripting EditionVBScript匹配/^\[ \t]*$/"^\[ \t]*$"匹配一个空白行。
Oracle错误信息一览表 ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换会话 ORA-00022: 无效的会话 ID;访问被拒绝 ORA-00023: 会话引用进程私用内存
SMP,NUMA,MPP体系结构介绍 从系统架构来看,目前的商用服务器大体可以分为三类:SMP : Symmetric Multi-Processor(对称多处理器结构 )NUMA : Non-Uniform Memory Access(非一致存储访问结构 ) MPP : Massive Parallel Processing (海量并行处理结构 )1. SMP(Symmetric Multi-Proc
hash function比较(一) 由于工作需要,针对千万级别的数据,使用stl::map着实存在着效率问题,最后使用boost::unordered_map替代前者,发现效率上有很大的提升,但是还是无法达到我们的需求;stl::map 底层算法:B+tree 实现boost::unordered_map 底层算法:hash 实现所以可能要针对不同的数据类型编写hash function来优化查找和插入的效率,自己编写
Ubuntu下解决网络很慢的问题 这其实是一个很郁闷的问题,在win 7系统下网络完全正常,可是在ubuntu下慢的和蜗牛一样....郁闷,是因为由于网速慢的原因,让我以为工作中程序的问题,花费了一周的时间去修改程序和调查优化的方法,可是最终还是如此,最后在别的机器上测试,发现并无次问题.系统:ubuntu 11.04 存在的可能问题:系统使用的r8169驱动并不能很好地支持主板上的Realtek 8111/816
Oracle实例解析:编码与字符集 名人名言:正如每一条金镂是宝贵的,每一刻时间也是宝贵的。——梅森 字符集:人们按照须要把某些字符收集到一处,并赋以名称,于是便有了某某字符集。编码:当前面收集的工作完成今后,为了让只熟悉数字的“笨拙”的策画机也可以或许存储字符,人们不得不为凑集里的每一个字符分派”身份证号码”,这就是编码,从此,终于可以以存储编码的体式格式在策画机中存储字符了。在字符集与编码世界的漫漫汗青长河里(伪