- 浏览: 48999 次
- 性别:
- 来自: 酆都
最新评论
文章列表
1.Druid是什么
Druid是一个分布式的支持实时分析的数据存储系统,遵循的三个设计:
快速查询:通过数据预聚合+数据内存化+索引实现快速查询
水平扩展能力:分布式数据存储+并行化查询
实时分析:不可变的过去,只追加未来
Druid具有如下的技术特点:
数据吞吐量大
支持流式数据的摄入和实时分析
查询灵活快速
社区支持力度大
Druid数据格式:
时间列:以时间序列进行数据分片,所有查询以时间为中心。
维度列:Druid基于列式存储,查询结果展示列,常用于数据过滤,如示例 ...
大数据(四)-----zookeeper安装
- 博客分类:
- HADOOP
1.安装规划
见大数据(一)-----HADOOP安装
2.zookeeper安装
下载并解压ZooKeeper-3.4.6.tar.gz,安装目录为:/home/hadoop/zookeeper-3.3.6,zookeeper集群安装需为奇数台(重要)
tar -zxvf zookeeper-3.4.6.tar.gz
配置环境变量
vi /etc/profile
export ZOOKEEPER_HOME=/home/hadoop/zookeeper-3.4.6
source /etc/profil
在conf目录下修改zoo.cfg,配置好dataDi ...
大数据(一)-----HADOOP安装
- 博客分类:
- HADOOP
1.安装总览
软件版本
hadoop-2.7.2 spark-2.0.1-bin-hadoop2.7
scala-2.11.8 sqoop-1.4.6 mysql-5.6.15 hbase-0.98.24-hadoop2 apache-hive-2.1.1 apache-kylin-2.0.0 zookeeper-3.3.6 apache-flume-1.7.0-bin
...
大数据(二)-----Spark安装
- 博客分类:
- HADOOP
1.安装规划
见 【大数据(一)-----HADOOP安装】
2.scala安装
在10.112.171.47机器上安装scala,安装目录为/usr/scala/scala-2.11.8
配置环境变量
vi /etc/profile
#在文件中添加如下脚本
export SCALA_HOME=/usr/scala/scala-2.11.8
#在PATH中加入如下脚本
$SPARK_HOME/bin
#保存后刷新配置
source /etc/profile
将scala拷贝到其他机器的同级目录下,并设置一样的环境变量
3.spark安装
在1 ...
大数据(三)-----Hive安装
- 博客分类:
- HADOOP
1.安装规划
见大数据(一)-----HADOOP安装
2.mysql安装
创建mysql用户以及用户组
#创建mysql用户组
groupadd -g 5001 mysql
#创建mysql用户
useradd -g mysql -d /home/mysql mysql
#设置mysql用户密码
passwd mysql
用mysql登录在/home/mysql下创建mysql目录
mkdir mysql
#上传数据库安装包 mysql-5.6.15.tar.gz并解压
tar -xzvf mysql-5.6.15.tar.g
安装cm ...
转自:http://blog.163.com/zhangjie_0303/blog/static/9908270620146951355834/
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t where num=0
算法描述
给定一个正整数,给出消除重复数字以后最小的整数,注意需要考虑长整数。
输入示例:423234
输出示例:234
算法实现
public class FindMinString extends Sort{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
String string = scanner.nextLine();
int[] src = {string.charAt(0) - '0 ...
算法分析
在有序数组中使用二分查找,如果没有找到则进行插入。
public class BinarySearchInsert{
public static void main(String args[]){
int search = 0;
int[] src = {1,2,3,4,5,6,7,8,9,10};
Map<String,String> result = binarySearch(src,search);
if("Y".equals(result.getStrin ...
算法分析
简单选择排序的基本思想:给定数组:int[] arr={里面n个数据};第1趟排序,在待排序数据arr[1]~arr[n]中选出最小的数据,将它与arrr[1]交换;第2趟,在待排序数据arr[2]~arr[n]中选出最小的数据,将它与r[2]交换;以此类推,第i趟在待排序数据arr[i]~arr[n]中选出最小的数据,将它与r[i]交换,直到全部排序完成。
public class SelectionSort extends Sort{
public static void main(String arg[]){
int[ ...
算法分析
它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
基本步骤:
获得待排序数组a
选取一个合适的数字p(一般来说就选取数组或是子数组的第一个元素)作为排序基准
将待排序数组a中比基准p小的放在p的左边,比基准p大的放在p的右边
从第3步获得的两个子数组sub1跟sub2
判断sub1或sub2中是否只有一个元素,如果只有一个元素则返回此元素,否则就将sub1(或是sub2) ...
算法分析
冒泡排序算法是所有排序算法中最简单的,在生活中应该也会看到气泡从水里面出来时,越到水面上气泡就会变的越大。在物理上学气压的时候好像也看到过这种现象;其实理解冒泡排序就可以根据这种现象来理解:每一次遍历,都把大的往后面排(当然也可以把小的往后面排),所以每一次都可以把无序中最大的(最小)的元素放到无序的最后面(或者说有序元素的最开始);
基本步骤: 1、外循环是遍历每个元素,每次都放置好一个元素; 2、内循环是比较相邻的两个元素,把大的元素交换到后面; 3、等到第一步中循环好了以后也就说明全部元素排序好了;
...
一、Redis介绍
Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,Redis支持各种不同方式的排序。 和Memcache一样,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。所以Memcache的 ...
Kafka
Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,用scala语言编写,Linkedin于2010年贡献给了Apache基金会并成为顶级开源 项目。
1.前言
消息队列的性能好坏,其文件存储机制设计是衡量一个消息队列服务技术水平和最关键指标之一。下面将从Kafk ...
原文地址:http://blog.csdn.net/hu_shengyang/article/details/7861261
package com.adam.test.entity;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
...
访问者模式
1.定义
表示一个作用于某对象结构中的个元素的操作,它可以使你在不改变个元素的类的前提下定义作用于这些元素的新操作。
2.示例代码
/**
* 访问组合对象结构的访问者接口
*/
public interface Visitor {
/**
* 访问组合对象,相当于给组合对象添加访问者的功能
* @param composite 组合对象
*/
public void visitComposite(Composite composite);
/**
* 访问叶子对 ...