`
yiihsia
  • 浏览: 68219 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
前年的文章,备份 前几天一个项目在长时间压测的情况下,发现内存一直飙升,停止压测,内存不释放,明显肯定是内存泄露。把JVM的 Xmx设小了还是无济于事,检查JVM的垃圾回收情况一切都正常,非常困惑,从来没有遇到过这 ...
去年的文章,备份 lua和groovy都是可以嵌入到java中的脚本语言。lua以高性能著称,与C/C++在游戏开放中有较多使用,groovy是一个基于Java虚拟机(JVM)的敏捷动态语言,在jvm下有着不错的性能。 groovy天生与java有着极高的兼容性,两者间对象无缝存取,支持jsr223。而lua是基于C的,需要调用jni,jni的性能是硬伤。这块网上基本都用luajava,好多年不更新了,不支持jsr223,而且很多方法都没有实现,也不能做到对象无缝存取,比如lua传到java的对象,java用不了。 另一个是luaj,基于java的lua库,快速,稳定,支持jsr223,测 ...
前年的文章,备份 spark自身不提供sortByKey的功能,但提供reduceByKey,groupByKey,combineByKey等功能。SortByKey常用于构建倒排索引上。 比如原始数据结构为(key1,4)(key1,3)(key1,7)(key1,1)需要转换成(key1,(1,3,4,7)) 我创建了一个简单的数据样本,保存到一个文件里sortByKey.txt。也可以自己通过parallelize随机生成文件里的内容如下: key1 2key1 3key2 54key1 23key2 12key3 45key3 5key1 53key2 4key3 78ke ...
前年的文章,备份 spark编写了一段统计CSDN中不同邮箱的密码白痴程序,数据来源于最近被公布的csdn明文数据,以下代码重点是spark在编程性上的体验,性能上比较没有意思,这点数据单机都能计算,计算结果仅供娱乐。 感谢CS ...
前年的文章,备份 spark是一个开源的分布式计算系统,提供快速的数据分析功能。 官网地址 http://www.spark-project.org/ 据说性能高出hadoop很多(个人理解主要是因为两点:内存和cache),而且相对更加简单,灵活。非常适合需要反复迭代的计算,比如机器学习。 spark基于scala编写,对我而言也是门陌生的语言,至今还是有很多不理解的地方。 基本概念 RDD spark最大的亮点是提出RDD(Resilient Distributed Dataset)的概念,也就是可伸缩的分布式数据集合,本身只读,可恢复。spark本身不做物理储存,通过保存足够 ...
  Twitter在9月19日的Strange Loop大会上公布Storm的代码。这个类似于Hadoop的即时数据处理工具是BackType开发的,后来被Twitter收购用于Twitter。 Twitter列举了Storm的三大类应用: 1. 信息流处理{Stream processing}  Storm可用来实时处理新数据和更
  我是标题党,其实本文与hbase关系不大,只是把它作为列族数据库的代表来讲。从目前字眼上看,HBase比Bigtable无疑更具吸引力。题目改成:RDBMS到列族的数据储存方式变迁 更恰当。 如今Bigtable型(列族)数据库应用越来越广,功能也很强大。但是很多人还是把它当做关系型数据库在使用,用原来关系型数据库的思维建表、存储、查询。本文以hbase举例讲述数据模式的变化。 传统关系型数据库(mysql,oracle)数据存储方式主要如下:
个人博客总是访问不了,原文:实时计算应用场景 实时计算的概念很难定义,每个人对这四个字的理解可能都不同。个人观点主要分为两块:数据的实时入库和数据的实时计算。 数据实时入库的时候,一般都需要对原始数据做一定的处理再入库。能在这个步骤计算尽量在这里完成。 这个类似数据的预算后入库,然后提供直接读取服务。对用户的延时性上最好。 然而有一些对数据的计算并不能通过预算解决全部问题,比如搜索。这篇主要讲实时计算的应用场景,技术架构、实现细节以后写。
环境准备  1.在windows下安装VMware  2.创建了3个fedora14 linux。地址分别为:  m201 192.168.0.201 (Namenode)  s202 192.168.0.202 (Datanode)  s203 192.168.0.203 (Datanode)  3.在linux系统中下载所需要的软件。分别为:  jdk-6u23-linux-i586-rpm.bin  hadoop-0.20.2.tar.gz  zookeeper-3.3.3.tar.gz  hbase-0.90.2.tar.gz 将下载的软件保存到/root/install目录下 ...
解决办法: 执行命令修改如下2个内核参数   sysctl -w net.ipv4.tcp_timestamps=1  开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用 sysctl -w net.ipv4.tcp_tw_recycle=1  表示开启TCP连接中TIME-WAIT sockets的快速回收
原文地址:redis源码分析-如何rehash dict实现中主要用到如下结构体,其实就是个典型的链式hash。 一个dict会有2个hash table,由dictht结构管理,编号为0和1. 使用是优先使用0号hash table,当空间不足时会调用dictExpand来扩展hash table,此时准备1号hash table用于增量的rehash使用。rehash完成后把0号释放,1号保存到0号。 rehashidx是下一个需要rehash的项在ht[0]中的索引,不需要rehash时置为-1。也就是说-1时,表示不进行rehash。 iterators记录当前dict ...
原文地址:对redis数据持久化的一些想法 数据持久化通俗讲就是把数据保存到磁盘上,保证不会因为断电等因素丢失数据。 redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持两种持久化方式,一种是 Snapshotting(快照)也是默认方式,另一种是Append-only file(缩写aof)的方式。先介绍下这两种dump方式再讲讲自己遇到的一些现象和想法,前面的内容是从网上整理出来的。Snapshotting快照是默认的持久化方式。这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。可以通过配置设置自动做快照持久 化的方式。我们可 ...
修改一个value值的时候,当新数据大于老数据,如果后面有空间,就增大,没有就移动。 有两种收拾碎片的方法,一是把数据重新导一份,名曰静态碎片整理,这个是手动调接口执行的。二是动态收集碎片,再重新整合,这个 ...
Tokyo Cabinet提供了Hash、Fixed-length、Table和B+ Tree四种数据结构,不同的结构特性和应用场景都不一样。TC本身提供了专门测试和调试工具tc (h/f/t/b) mgr。 Tokyo Tyrant在启动的时候,通过数据库文件名后缀来表示使用哪种数据结构。 以下是结构和后缀对应表:  Hash Database :.tch B+ tree database :.tcb fixed-length database :.tcf table database :.tct 内存Hash Database :* 内存B+ tree database ...
redis是个对内存依赖性很强的NoSql数据库,在内存足够的情况下性能出色 如果只有一台机子去部署redis,一定要特别小心。 比如我有台24G的服务器,理所当然我会将大量内存分配给redis。 比如20G的内存, 问题来了, 当你对redis插入数据后,redis会异步将数据dump到硬盘中 想起来很完美,问题是它会fork一个进程,并占去同样大小的内存,你需要的内存瞬间便为 20G+20G =40G 这时内存超过了物理内存的限制,马上会启动虚拟内存,我的机子上是8G虚拟内存,重点是这个是linux的虚拟内存,并不是redis自己的虚拟内存。 linux的虚拟内存 pag ...
Global site tag (gtag.js) - Google Analytics