Hadoop从互联网领域蓬勃发展,广大搜索、电商、视频、门户、游戏公司都纷纷开始实施Hadoop技术解决方案替代老旧的脚本分析和数据仓库平台。同时Hadoop大数据解决方案已经扩展到通信、安全、工业、电力、乃至生物医药等传统基础设施领域,成为公认的大数据分析处理领域规范标。
EasyHadoop社区从2012年举办了七次,汇集各行各业的案例和相关实践。以小规模技术聚会开始,希望能提供给大家真正企业一线的实战经验分享。构建一个开放,简单(小而美)的Hadoop技术沟通分享平台,让大家的大数据之梦得到落地。
在2013年3月,EasyHadoop社区和ChinaHadoop,北京大学开源软件协会,联络广大奋斗在Hadoop软件一线的开发者,使用者,推广者,给大家献上一次的技术分享活动,让大家更贴近,体会,感受到大数据Hadoop大数据分析,和大规模技术带给大家的力量,帮助更多的朋友和公司实现Hadoop大数据的落地。
合作伙伴:北京大学开源软件协会
直属于北京大学校团委,现已成为北大社团中有很大影响的技术协会。协会本着"源码公开,使用自由,资源整合,信息共享"的精神,在开源软件的学习和应用中起到了带头的作用!协会组织开展技术沙龙,技术讲座,普及开源知识,方便各种专业背景的同学参与我们的协会活动。协会成员主要学习方向有:Linux、windows,meego,android多种平台的软件开发,侧重于android的内核分析与GUI深度定制,Linux内核分析、html5游戏引擎开发,基于移动设备的html5浏览器开发,应用平台的组建与开发,推动学院的信息化建设的发展等。与世界知名企业,如INTEL,GOOGLE等公司合作。
意义:宣传开源知识,普及开源软件的使用,推广开源技术和自由/开源思想。培养同学们的科技动手能力,将所学的理论与实践相 结合。培养团队成员的协作与开发能力,在真实的项目中体验项目的管理。培养出更多优秀的开源人才。
合作伙伴:云计算开放小组
云计算开放小组由北大CIIM云计算应用联合实验室技术专家发起。成员来自于研究机构研究人员、企事业单位IT负责人、优秀IT企业技术专家、高校学生等。小组本着开放的心态,为推动云计算的应用积极努力。小组定期举行各种线上线下活动进行技术交流,分享技术成果,每月推送一期《云刊》让技术分享影响更远,通过QQ群、微博等多种线上渠道让交流更容易,还通过实验室向成员提供免费的实验平台帮助研究与研发。
宗旨:开放、互动、分享、融合
【北京】开场致辞 14:30~14:40
【北京】优酷土豆集团数据平台 傅杰 14:40~15:00
【北京】实时数据流计算Storm 刘刚 15:10~15:30
【北京】个性化推荐在优酷的实践 王晓龙 15:40~16:00
【北京】HBase应用与优化分析 卢亿雷 16:10~16:30
【北京】Hadoop/HBase实践及修改 冼茂源 16:40~17:00
【北京】Hadoop在PaaS中的应用实践 鲁四海 17:40~18:00
【北京】EHM和PHA的近况 向磊 17:40~18:00
【北京】活动闭幕 18:00~18:30
【北京】晚上聚餐 18:30~
傅杰 微博主题:优酷土豆集团数据平台组织:优酷头衔:数据平台架构师简介:毕业于清华大学高性能所, 专注于海量数据处理,数据平台构建与安全研究。目前就职于优酷土豆集团担任数据平台架构师职位,主要负责优酷土豆开放数据平台架构及运营,支撑集团其他业务部门大数据存储与计算的需求。 优酷土豆数据平台已安全开放给集团13个团队,90余名hadoop工程师,日均处理数据量上百T,几乎涵盖全集团所有产品线。
刘刚 微博主题:实时数据流计算Storm组织:蓝汛头衔:Hadoop高级工程师简介:目前就职于国内最大CDN厂商,北京蓝汛通信技术有限责任公司,作为Hadoop高级工程师开发了ChinaCache 日志分析系统,系统承担每日几十TB的更新量,运算量。在海量数据分析和处理领域积累了丰富经验。曾经在北京大学软件研究所担任国家重点项目 "核高基" 的(6-1)课题。的EJB应用服务器的开发,产品名称为PKUAS2010.目前是国内唯一一个开源的EJB服务器。
王晓龙 微博主题:个性化推荐在优酷的实践组织:优酷头衔:数据挖掘高级工程师简介:负责优酷个性化推荐系统的整体架构和算法优化工作。曾从事人脸识别、人群性别年龄定向相关的研发工作,专注于机器学习、数据挖掘技术及其在海量数据中的应用。
卢亿雷 微博主题:HBase应用与优化分析组织:凯备份头衔:凯备份技术总监兼高级架构师简介:负责凯备份整个技术架构工作,曾在联想研究院联想网盘和百度基础架构部工作。06年研究生毕业后一直从事分布式存储架构相关工作。对分布式存储和分布式计算、超大集群等有较多实践经验,对Lustre,HDFS,HBase,MongoDB等有比较多的理解,对备份和网盘产品有较深的理解。发表了两个发明专利《一种分布式文件系统及其数据访问方法》和《一种数据备份的版本管理方法及装置》。
冼茂源 微博主题:Hadoop/HBase实践及修改组织:搜狗头衔:高级工程师简介:从传统IT行业转投互联网的老兵,曾经从事Java虚拟机相关的开发工作,三年Hadoop开发经验。现负责搜狗Hadoop/HBase计算平台研发工作,在Hadoop的系统问题排查、代码修改及调优,分布式应用实现架构方面有着丰富经验。
向磊 博客丨微博主题:
Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说.
首先来下载和搭建SVN服务器.
现在Subversion已经迁移到apache网站上了,下载地址:
http://subversion.apache.org/packages.html
这是二进制文件包的下载地址,你可在左侧的导航栏找到源代码,文档的下载地址.
windows操作系统下面的二进制文件包一共有5种,如图:
个人认为最好用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用.
点开上面的VisualSVN连接,下载VisualSVN server,如图:
然后下载TortoiseSVN客户端,官网下载地址:http://tortoisesvn.net/downloads.html
注意下载跟你电脑匹配的安装包,在页面的下面你还可以找到语言包,如图:
下载完成后,应该有这些安装包,如图:
TortoiseSVN安装包和简体中文语言包
VisualSVN server安装包
先安装VisualSVN server的安装包,双击VisualSVN server安装包,如图:
点Next,进入下一步,如图:
点同意,进图下一步,如图:
选择上面一个选项,点Next,进入下一步,如图:
Location是指VisualSVN Server的安装目录,Repositorys是指定你的版本库目录.Server Port指定一个端口,Use secure connection勾山表示使用安全连接,Use Subversion authentication 表示使用Subversion自己的用户认证.点击Next,进入下一步,如图:
点Install,进入下一步,如图:
等待安装完成,如图:
安装完成后,启动VisualSVN Server Manager,如图:
接下来我们安装TortoiseSVN,双击安装包,进入下一步.如图:
点击Next,进入下一步,如图:
选择接受,然后点击Next,进入下一步,如图:
选择安装路径,然后点击Next,进入下一步,如图:
点击Install,开始安装,如图:
等待安装完成,安装完成后如图:
接下来我们安装简体中文语言包,这个非常简单,一路Next就行,就不截图了.语言包安装完成以后在桌面任意空白地方单击鼠标右键,会在右键菜单里找到SVN,如图:
选择设置,进入下一步,如图:
在右边的语言里面选择简体中文,然后点击应用,确定,汉化即完成,如图:
到这里,服务端和客户端都已经安装完毕,下一篇介绍用VisualSVN Server创建版本库,以及TortoiseSVN的使用.
1. 前言: 有的程序可以通过编译, 但在运行时会出现Segment fault(段错误). 这通常都是指针错误引起的. 但这不像编译错误一样会提示到文件->行, 而是没有任何信息, 使得我们的调试变得困难起来.
2. gdb: 有一种办法是, 我们用gdb的step, 一步一步寻找. 这放在短小的代码中是可行的, 但要让你step一个上万行的代码, 我想你会从此厌恶程序员这个名字, 而把他叫做调试员. 我们还有更好的办法, 这就是core file.
3. ulimit: 如果想让系统在信号中断造成的错误时产生core文件, 我们需要在shell中按如下设置: #设置core大小为无限 ulimit -c unlimited #设置文件大小为无限 ulimit unlimited 这些需要有root权限, 在ubuntu下每次重新打开中断都需要重新输入上面的第一条命令, 来设置core大小为无限.
4. 用gdb查看core文件: 下面我们可以在发生运行时信号引起的错误时发生core dump了. 发生core dump之后, 用gdb进行查看core文件的内容, 以定位文件中引发core dump的行. gdb [exec file] [core file] 如: gdb ./test test.core 在进入gdb后, 用bt命令查看backtrace以检查发生程序运行到哪里, 来定位core dump的文件->行.
1. 什么是Core:
Sam之前一直以为Core Dump中Core是 Linux Kernel的意思. 今天才发现在这里,Core是另一种意思:
在使用半导体作为内存的材料前,人类是利用线圈当作内存的材料(发明者为 王安),线圈就叫作 core ,用线圈做的内存就叫作 core memory。如今 ,半导体工业澎勃发展,已经没有人用 core memory 了,不过,在许多情况下, 人们还是把记忆体叫作 core 。
2. 什么是Core Dump:
我们在开发(或使用)一个程序时,最怕的就是程序莫明其妙地当掉。虽然系 统没事,但我们下次仍可能遇到相同的问题。于是这时操作系统就会把程序当掉 时的内存内容 dump 出来(现在通常是写在一个叫 core 的 file 里面),让 我们或是 debugger 做为参考。这个动作就叫作 core dump。
3. Core Dump时会生成何种文件:
Core Dump时,会生成诸如 core.进程号 的文件。
4. 为何有时程序Down了,却没生成 Core文件。
Linux下,有一些设置,标明了resources available to the shell and to processes。 可以使用
#ulimit -a 来 看这些设置。 (ulimit是bash built-in Command)
-a All current limits are reported
-c The maximum size of core files created
-d The maximum size of a process鈥檚 data segment
-e The maximum scheduling priority ("nice")
-f The maximum size of files written by the shell and its children
-i The maximum number of pending signals
-l The maximum size that may be locked into memory
-m The maximum resident set size (has no effect on Linux)
-n The maximum number of open file descriptors (most systems do not allow this value to be set)
-p The pipe size in 512-byte blocks (this may not be set)
-q The maximum number of bytes in POSIX message queues
-r The maximum real-time scheduling priority
-s The maximum stack size
-t The maximum amount of cpu time in seconds
-u The maximum number of processes available to a single user
-v The maximum amount of virtual memory available to the shell
-x The maximum number of file locks
从这里可以看出,如果 -c是显示:core file size (blocks, -c)
如果这个值为0,则无法生成core文件。所以可以使用:
#ulimit -c 1024 或 者 #ulimit -c unlimited 来 使能 core文件。
如果程序出错时生成Core