自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

残缺的歌的专栏

pure coding and thinking

  • 博客(111)
  • 资源 (4)
  • 收藏
  • 关注

转载 Parquet与ORC:高性能列式存储格式

随着大数据时代的到来,越来越多的数据流向了Hadoop生态圈,同时对于能够快速的从TB甚至PB级别的数据中获取有价值的数据对于一个产品和公司来说更加重要,在Hadoop生态圈的快速发展过程中,涌现了一批开源的数据分析引擎,例如Hive、Spark SQL、Impala、Presto等,同时也产生了多个高性能的列式存储格式,例如RCFile、ORC、Parquet等,本文主要从实现的角度上对比分析O

2016-11-08 14:47:00 1785

原创 类型 Option

类型 Option前几章,我们讨论了许多相当先进的技术,尤其是模式匹配和提取器。 是时候来看一看 Scala 另一个基本特性了: Option 类型。可能你已经见过它在 Map API 中的使用;在实现自己的提取器时,我们也用过它, 然而,它还需要更多的解释。 你可能会想知道它到底解决什么问题,为什么用它来处理缺失值要比其他方法好, 而且可能你还不知道该怎么在你的代码中使用它。 这一章的目

2016-10-26 15:21:30 739

原创 大数据仓库之ods原始数据层和dw层设计

甲问:数仓建模时,涉及到uv(去重用户数)指标时,数据从哪里取,只能走ods原始数据层吗,汇总到dw层时,由于数据量太大,不能到用户粒度,所以在dw层中不包含用户粒度的数据,而且电商的报表分析,几乎每张报表都会涉及到uv指标,如果所有的uv指标都从ods层去获取,那样io是否会成为瓶颈,原始数据量也比较大。举例:比如说有个字段column_a,包含了几百个数据(1-500),统计时可能会统计条件为

2016-08-31 15:55:46 29692 4

原创 Benchmark 性能测试简介

一、Benchmark简介Benchmark是一个评价方式,在整个计算机领域有着长期的应用。正如维基百科上的解释“As computer architecture advanced, it became more difficult to compare the performance of various computer systems simply by looking at t

2016-08-29 18:25:44 35634 1

转载 hadoop 2.x常用端口一览表

1.DataNode的http服务的端口、ipc服务的端口分别是哪个?2.NameNode的http服务的端口、ipc服务的端口分别是哪个?3.journalnode的http服务的端口、ipc服务的端口分别是哪个?4.ResourceManager的http服务端口是哪个?5.NodeManager的http服务端口是哪个?6.Master的http服务的

2016-08-19 10:36:13 469

原创 SBT(一) 搭建之漫漫长路

最近在学scala,入乡随俗,不用maven改用sbt。构建如下:安装SBT在SBT的官网(http://www.scala-sbt.org/)下载相应版本的SBT。Windows环境下建议配置SBT的环境变量。(windows上搞开发真是越发蛋疼。)具体步骤不说了,就是把sbt/bin目录配置进PATH。在sbt/bin下有个sbt.bat

2016-08-11 16:36:44 4358

原创 数据库的乐观锁和悲观锁

一、广义的乐观锁,悲观锁悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时

2016-08-10 14:19:31 319 1

原创 Groovy (三) 闭包的使用-----极速入门总结

一、直接摆例子/** * Created by Administrator on 2016/8/6. *//*** 闭包的使用* 避免了代码的冗长,可以辅助创建轻量级可复用的代码片段*/print("\n闭包的使用:")def pickEven(n, block) { for (int i = 2; i 2) { block(i) } p

2016-08-06 16:26:34 901

原创 scala 与groovy 语法对比----长期更新

最近在学scala的同时也在接触groovy,因为每个语言都有很多相同点和不同点,拿出来比较就不容易混乱了。太基本的语法这里就不列出来对比了,只列出些遇到的比较重要的语法或者特性之间容易混淆的东西。一、traits 特性在scala中 traits的出现是为了代替java中的interface,与interface不同的是,interface只可以声明抽象方法,而traits可以声明抽象/

2016-08-06 11:42:54 3493

原创 Groory(二) 字符串String+集合Collection篇---极速入门总结

这里只总结一些与java不同的的用法,但是又比较常用的API/** * 这里只总结一些与java不同的的用法,但是又比较常用的API *//** * " ' ' "的用法 */String c = "'Hello Triple" + "Multiple lines'";//print 'Hello TripleMultiple lines'/** *索引用法 */St

2016-08-05 15:46:25 785

原创 Groory(一) 语法篇---极速入门总结

这篇文章主要针对有java基础很扎实,学习能力比较强的同学进行学习。因为groovy与java同根,所以这里只列出与java不同的一部分,力求精简!避免啰嗦重复。一、声明方式:Variables in Groovy can be defined in two ways − using the native syntax for the data type or the next is by

2016-08-05 15:39:54 1252

原创 IDEA 社区版 使用Maven创建Web工程 并部署tomcat(解决无tomcat的问题)

很多人使用idea构建web项目的时候在烦恼,为什么我的破idea找不到Web Appplication,找不到Web Appplication就新建不了tomcat。其实我们在下载的时候没有分清楚idea是有两种版本的,一个是社区版,一个是旗舰版(要钱的)。旗舰版的功能很齐全,但是社区版的很多东西需要自己集成。由于IDEA社区版(Community)无法直接New一个Web Ap

2016-08-04 15:21:01 39007 3

原创 Intellij IDEA创建Maven Web项目 左边目录结构不正确原因

现象:Intellij IDEA创建Maven Web项目找不到src目录,找不到java目录,找不到webapp目录等。首先,你按照网上的方法去新建一个maven的web项目(网上一大把),当走到完成时,你会发现一个进度条正在下载东西,如下:这个时候这个下载是很缓慢,注意了,当初心急的我想着把maven的仓库修改一下,于是停了。之后,你在项目左边目录中

2016-08-03 18:04:28 15779

原创 Scala 浅谈scala闭包与java回调函数

闭包是指可以包含自由(未绑定到特定对象)变量的代码块;这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义(局部变量)。“闭包” 一词来源于以下两者的结合:要执行的代码块(由于自由变量被包含在代码块中,这些自由变量以及它们引用的对象没有被释放)和为自由变量提供绑定的计算环境(作用域)。在PHP、Scala、Scheme、Common Lisp、Smalltalk、

2016-08-03 15:39:38 1832

转载 Groovy(一)环境搭建

Step1:配置JDKGroovy是依赖于Java的,所以首先要配置好JDK。Step2:下载Groovy下载地址,下载下来解压即可。Step3:配置Groovy环境变量新建GROOVY_HOME,值为刚才解压的路径。修改PATH,在最后追加%GROOVY_HOME%\bin

2016-08-01 16:32:05 722

原创 Scala Actot(三):设计原则

这部分内容待续更新

2016-07-29 18:09:19 522

原创 Scala Actot(二):共享--react,loop,loopwhile实现共享以及while的共享失效性

一、前言考虑一个发送消息给另一个actor的actor。如果每个actor都在单独的线程中运行,我们很容易实现控制流转。作为消息发送方的actor将消息发到邮箱中,然后它的线程继续执行。而每当有条目被放入邮箱时,作为消息接收方的actor的线程就会被唤醒。在有些程序所包含的actor是如此之多,以至于要为每个actor创建独立的线程开销很大。所以实际需求中,我们肯定不能这样做,我们必须使得

2016-07-29 18:00:38 657

转载 Scala Actor(一):简单入门

(ps:虽然scala.actors最近被抛弃,但可作为新手入门理解scala的并发编程原理)原博文地址为:http://blog.csdn.net/yyywyr/article/details/50465411原文如下:Java中的并发编程主要通过线程实现的,通过共享资源的机制实现并发,但会面临着死锁的问题。在Scala中,是通过消息传递来实现并发的,而Actor正是实现消息

2016-07-29 15:42:24 1119

原创 JAVA ArrayList clear() gc()垃圾回收

下载LOFTER我的照片书  |一、一个简单的例子       代码图          图1图1为上代码图的运行结果,说明在创建了一个大小为100W的列表后,内存分配了一定大小的空间,在clear() 之后,调用gc()垃圾清除后得到创建列表以后的内存大小.      图2如果将代码中第11行改为ArrayList list

2016-07-29 15:23:30 8765

原创 maven项目在eclipse的library中没有Maven Dependencies

maven项目在eclipse的library中没有Maven Dependencies 今天使用maven创建了一个多模块的项目,在分别创建完父项目和各个子模块后,编译父项目的时候,父项目工程目录上出现了一堆红叉叉,点进去一看,是找不到依赖的类,但是pom文件中相应jar的dependence都写了,本地maven仓库里也有jar包了,但是eclipse的library里没有Mave

2016-07-29 13:51:22 34790 2

原创 elicpse 上已有的工程转换为Maven工程

1. 前言在开发中经常要建立一个Maven的子工程,对于没有模板的同学来说从Java工程来转换也是一个不错的选择。本文就如何从一个Java工程创建一个Maven工程做了一个介绍,相信对于将一个Java工程转换为Maven工程的工作也是有帮助的。2. 创建Java工程。创建一个Java工程,如下图所示:3. 转换为Maven工程。选中此工程 -> 右键

2016-07-29 10:23:28 2989

转载 Linux 批量更改文件后缀名

原文:http://blog.csdn.net/longxibendi/article/details/6387732一.rename解决1.  Ubuntu系统下rename 's//.c//.h/'  ./* 把当前目录下的后缀名为.c的文件更改为.h的文件 2.  CentOS5.5系统下rename .c  .h   *.c

2016-07-28 16:49:47 1825 1

原创 scala 高级类型

本文参考 《快学scala》第18章,这里列出来备忘:内容为1.单例类型可用于方法串接和带对象参数的方法。 2.类型投影对所有外部类型的对象都包含了其内部类的实例。 3.类型别名给类型指定一个短小的名称。 4.结构类型等效于“鸭子类型”。 5.存在类型为泛型类型的通配参数提供了统一形式。 6.使用自身类型来表明某特质对混入它的类或对象的类型要求。 7.“蛋糕模式”用

2016-07-27 18:32:57 527

原创 Scala Functions vs Methods(scala中的函数和方法)

Scala中既有函数也有方法,大多数情况下我们都可以不去理会他们之间的区别。但是有时候我们必须要了解他们之间的不同。 Scala中的方法跟Java的方法一样,方法是组成类的一部分。方法有名字、类型签名,有时方法上还有注解,以及方法的功能实现代码(字节码)。具体的差异,总结为如下几点:1、方法不能作为单独的表达式而存在(参数为空的方法除外),而函数可以。如: 在如

2016-07-27 16:59:19 408

原创 scala 泛型之初解,定界,类型约束,逆变与协变

scala 的泛型应用如下:一、初解当构建一个类或者函数时,如果我们不知道(或者说不确定)传入的参数的具体数据类型,这时候可以泛型,例子如下:1-1例子:object test0 extends App{ val str = "123" val intv =123 val strTest = new Test[String](str) val intTest

2016-07-27 10:58:02 2612

原创 PyDev Unresolved Import Error

引起Unresolved Import的原因有很多,下面我分情况总结一下:一、如果引入的是python系统包错误这种情况首先确保该model在系统包是存在的。例如1-1)先在工程的中查看改model是否存在:1-2)再在Windows---preference--pydev--interpreter中查看环境配置。1-3)如果你发现上一步的都是正

2016-07-25 10:25:36 1017 1

原创 scala map/list/array/的常用内置遍历操作总结

scala map/list/array/的常用内置遍历操作总结。Scala 是面向函数的,所以在集合函数里,它很轻易地提供了非常丰富遍历操作,数组变换操作。这对于我们数据挖掘,爬虫,文本处理等都非常有帮助。有了这些内置的遍历变换操作,我们再也不用像java那样写一个笨笨的for循环来迭代,然后还要定义一些规范的函数来迎合需求。而scala不同,随时随地就可以写一个你自己想要的函数,而不需要严格地定义它,规范它。(注意,scala里一切事物皆函数,一切函数皆对象)下面将提供一些集合内置遍历方法用法,熟练

2016-07-22 17:50:39 12302

原创 scala List集合的用法

一、前言:人们常说,Scala是一个难掌握的语言,一是其面向函数和面向对象结合的原因,二是其丰富的语法和内置函数。对于Conllection 这一章的内容,更多的是利用内置函数灵活地运用,避免自己重复造轮子(要求性能高除外)对于集合,通常来说有以下几个常用操作是必须掌握的:1.增删改查单个元素2.单个集合的各种遍历方式3.单个集合分拆组合与翻转

2016-07-22 17:23:46 48201 3

原创 scala flatMap 简介

scala  flatMap的理解一、官方例子个人解析object FlatMapTest extends App{ //官方API用法1.对于一阶集合flatMap返回与主对象相同的类型2.对于map,flatMap能扁平化一层的map,把map的每个键值对都转为tuple形式

2016-07-22 16:01:51 5787

原创 Mutable and Immutable Collections的区别

在写scala的时候,常常不太明白Mutable and Immutable Collections的用法和区别。=这个操作符,如果操作的对象是可变的,它会自动调用对象的update方法(具体对象看具体操作),相当于更新或者追加的操作。如果对象是不可变的,它就会返回一个新的对象。问题扩展:为什么要花费精力弄明白可变与不可变对象的区别?(这个涉及到多线程安全,循环遍历等,具体自己上网查)scala 的设计者真是用心良苦啊!

2016-07-21 16:54:07 1567

原创 垂直搜索引擎七》web模块的设计与实现

4.5web模块的设计与实现4.5.1 web模块的总设计Web客户端主要是业务端的web前后端管理与展示。主要包括的内容有:(1)索引管理;(2)栏目管理;(3)用户权限管理;(4)前端搜索展示。Web模块的功能主要是指面对广大用户的页面展示以及后台数据的基本管理,其中包括前台展示部分和后台展示部分。搜索引擎的前台页面主要是以简洁为主,所以...

2016-07-19 14:44:44 1750

原创 垂直搜索引擎六》搜索与更新模块的设计与实现

4.4 搜索与更新模块的设计与实现4.4.1搜索与更新模块的总设计搜索与更新模块主要是分别对Solr和Luecne的查询模块进行封装。封装的内容包括:(1)通用的查询过程;(2)把参数封装为类;(3)把返回结果封装成类;(4)工厂模式启动服务。图4-16 搜索与更新模块总设计如上图,该模块涉及到的系统有:Solr/Lucene索引与搜索服务...

2016-07-19 14:37:55 1575

原创 垂直搜索引擎五》索引与检索模块的设计与实现

4.3索引与检索模块的设计与实现4.3.1 索引与检索模块的流程。索引与检索模块主要是负责对文本数据进行倒排索引和检索,本系统采用了Lucene和Solr并用作为服务端。用户可以根据传入的参数进行选择使用Lucene或者是Solr进行服务。其流程图4-13所示:图4-13 索引与检索模块流程4.3.2索引与检索模块之Lucene服务(1)工作方式:lucen...

2016-07-19 14:30:36 1555

原创 垂直搜索引擎四》文本处理模块的设计与实现

4.2文本处理模块的设计与实现4.2.1 文本处理模块的总设计另外还对信息过滤模块主要要做的事情有三个:(1)对抓下来的HTML网页进行解析,提取出所关心的文章标题,时间和正文;(2)对文章标题和内容进行分词;(3) 去重。图4-7 文本处理设计图4.2.2 文本模块之页面解析页面解析主要是用开源的htmlparser工具。htmlparse...

2016-07-19 14:25:37 1959

原创 垂直搜索引擎三》爬虫机器人模块的设计与实现

4 功能模块的设计与实现4.1. 爬虫机器人模块的设计与实现本系统因为是只针对农业进行垂直搜索,所以爬虫只爬相关的主题内容,所以采取聚焦爬虫的方式进行。聚焦爬虫,又称主题爬虫(或专业爬虫),是“面向特定主题”的一种网络爬虫程序。它与我们通常所说的爬虫(通用爬虫)的区别之处就在于,聚焦爬虫在实施网页抓取时要进行主题筛选。它尽量保证只抓取与主题相关的网页信息。4.1.1 农业主题爬虫的工作...

2016-07-19 14:15:09 1834

原创 农业垂直搜索引擎二》系统总设计

本系统包含的模块有:爬虫机器人模块,文本处理模块,数据搜索与更新模块,索引与检索模块,搜索模块和web客户端。每个模块之间紧密相连,但耦合性低,各自有独立的框架和开发流程。

2016-07-19 14:07:36 2110

原创 垂直搜索引擎一》前言与需求分析

1前言1.1 课题研究的背景互联网特别是移动互联网的高速发展,网上信息急剧增长,传统的搜索引擎十分适合大众搜索,但是面向特定领域的搜索时,就会有心无力。并且传统搜索引擎采集网页是饥饿扫描式爬虫,难以查找相关主题,网络带宽消耗大等等,这些潜在的问题急需解决。在这种背景下,垂直搜索就产生了。垂直搜索引擎的应用领域很多,比如就业类搜索,内推网,拉勾网都是这个方面的典型代表;去哪儿、去旅游网等...

2016-07-19 14:02:53 3394

原创 脚本下运行MySql语句

一、首先,废话少说,来个win 下例子(linux例子也一样就不举例了)bat文件pausemysql -uroot -p123 -e "show databases;"pause效果(我这里是免账号密码登录,正常下是按照上面格式语句):从这里可以看出,参数-e是执行sql语句的命令,执行玩之后就退出,注意加个pause,不然会自动退出。二、其次,如果想要s

2016-07-11 11:39:01 691

原创 Maven 打包的一些事儿

1. 关于 Maven 打 war 包《使用 Eclipse 的 Maven 2 插件开发一个 JEE 项目》详细介绍了如何在 Eclipse 使用 Maven 新建一个 JEE 项目并对其进行断点跟踪调试,但是没有介绍如何对 JEE 项目打 war 包。其实很简单,你只需要把 pom.xml 中的 jar 换成 war 就可以使用 mvn package 命令对其打 war 包了,而

2016-07-07 00:37:11 2473 1

原创 quartz 立即执行+定时+防止并发+监听Job是否运行状态

这文章没有新手教程,只有个人一些笔记,新手请下载附件教程:SimpleRun:package cn.wa8.qweb.extract.quartz;import java.util.Date;import org.quartz.CronTrigger;import org.quartz.JobDetail;import org.quartz.Scheduler;import

2016-07-06 21:51:06 26792 3

2015年最新基于jsp的李狗蛋买书网(优秀类毕业设计)

jsp+servlet+sql server 2008。内含源码,报告,数据库!无论是课程设计还是毕业论文,还是新手学习,都非常有借鉴的地方!

2015-07-16

2015最新基于JSP的网络订餐系统(jsp+servlet)

2015最新基于JSP的网络订餐系统(jsp+servlet),内含数据库,源码和报告,只要改改数据库密码便可以运行。

2015-07-16

2015最新JSP+Servlet课程设计-二手驿站(有报告)

2015最新JSP+Servlet课程设计-二手驿站(有报告),适合课程设计,成绩良好,高手勿喷!

2015-07-16

php会员管理系统模板(适合初学者)

这是我自己刚学时用的模板,该模板 主要功能: 1.会员注册; 2会员资料修改; 3会员信息查询; 4管理员注册; 5管理员登陆及管理. 这个特别适合初学者学习,望大家多多支持

2013-05-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除