- 博客(128)
- 资源 (9)
- 收藏
- 关注
原创 Java API实现向Hive批量导入数据
Java程序中产生的数据,如果导入oracle或者mysql库,可以通过jdbc连接insert批量操作完成,但是当前版本的hive并不支持批量insert操作,因为需要先将结果数据写入hdfs文件,然后插入Hive表中。package com.enn.idcard;import java.io.IOException;import java.sql.Connection;import
2017-12-27 18:24:39 19874 3
翻译 Hive官方文档-Hive Tutorial
Hive TutorialHive TutorialConcepts What Is HiveWhat Hive Is NOTGetting StartedData UnitsType SystemBuilt In Operators and FunctionsLanguage CapabilitiesUsage and Examples Creating, Showi
2017-12-22 11:24:56 1492
转载 基于TCP协议的Socket通信实例(JAVA)
1、首先先来看下基于TCP协议Socket服务端和客户端的通信模型: Socket通信步骤:(简单分为4步)1.建立服务端ServerSocket和客户端Socket2.打开连接到Socket的输出输入流3.按照协议进行读写操作4.关闭相对应的资源 2、相关联的API: 1.首先先来看下ServerSocket
2017-12-19 10:32:46 20039 1
翻译 kafka官网示例说明--KafkaConsumer
Kafka client会消费kafka cluster中的记录。它将透明地处理Kafka集群中的服务器故障,并透明地适应它在集群内迁移的数据分区。该客户机还与服务器交互,以允许用户组使用消费者组来负载平衡消费(如下所述)。消费者维护TCP连接到必要的代理来获取数据。使用后未能关闭消费者会泄漏这些连接。消费者不是线程安全的。更多细节见多线程处理。偏移量Kafka为分
2017-12-18 18:17:52 16064
翻译 kafka官网示例说明--KafkaProducer
The producer is thread safe and sharing a single producer instance across threads will generally be faster than having multiple instances.producere是线程安全的。所以多线程调用的时候,使用单个producer实例即可。
2017-12-18 17:49:25 2927
原创 Java内部类总结
内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。*内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部顶级类即类名和文件名相同的只能使用public和default)。首先讨论一下内部类的必要性 1.完善多重继承C++作为比较早期的面向对象编程语言,摸着石头过河,不幸的当了炮灰
2017-12-18 14:04:59 801
原创 HiveServer2服务端配置与启动
在之前的学习和实践Hive中,使用的都是CLI或者hive –e的方式,该方式仅允许使用HiveQL执行查询、更新等操作,并且该方式比较笨拙单一。幸好Hive提供了轻客户端的实现,通过HiveServer或者HiveServer2,客户端可以在不启动CLI的情况下对Hive中的数据进行操作,两者都允许远程客户端使用多种编程语言如Java、Python向Hive提交请求,取回结果。H...
2017-12-15 18:33:11 16296
转载 hadoop集群配置文件详解
首先hadoop包放到一个程序目录下,例如我放到/usr/local下 完整路径为/usr/loca./hadoop-2.4.1然后配环境变量,前提是jdk1.7已经安装好了。环境变量配置:export JAVA_HOME=/usr/local/jdk1.7export JRE_HOME=/usr/local/jdk1.7/jreexport CLASSPATH=.:$
2017-12-15 16:46:04 8559 1
转载 HBase的RowKey设计原则
HBase是三维有序存储的,通过rowkey(行键),column key(column family和qualifier)和TimeStamp(时间戳)这个三个维度可以对HBase中的数据进行快速定位。HBase中rowkey可以唯一标识一行记录,在HBase查询的时候,有以下几种方式:通过get方式,指定rowkey获取唯一一条记录通过scan方式,设置startRow和sto
2017-12-14 17:13:59 960
原创 HDFS源码分析
HDFS源代码分布在16个目录下,它们可以分为四类:1.基础包(包括工具包和安全包)包括工具和安全包。其中,hdfs.util包含了一些HDFS实现需要的辅助数据结构;hdfs.security.token.block和hdfs.security.token.delegation结合Hadoop的安全框架,提供了安全访问HDFS的机制。hdfs.util(一
2017-12-13 14:18:18 1599
原创 mysql 5.7.13 安装配置方法图文教程(linux)
linux环境Mysql 5.7.13安装教程分享给大家,供大家参考,具体内容如下1系统约定Mysql目录安装位置:/usr/local/mysql数据库保存位置:/usr/local/mysql/data/mysql日志保存位置:/usr/local/mysql/data/log/mysql2下载mysql在官网:http://dev.mysql.com/down
2017-12-12 15:22:55 1666
原创 RedHat Enterprise Linux 6 使用 Centos 6 的yum
概述 redhat的yum源需注册付费,费时费力,整理RedHat yum 安装CentOS的方法。安装系统文件系统:RedHat Enterprise Linux 6.4-x86_64 md5:467B53791903F9A0C477CBB1B24FFD1F 这是下载地址:http://pan.baidu.com/s/1bniVAMj第一步下载相关安装包
2017-12-11 14:58:48 813
原创 Java IO流操作汇总: inputStream 和 outputStream
Java IO通过Stream(流)来实现。关于流,可以理解为是一种“数据的管道”。管道中流动的东西可以是基于字节,也可以是基于字符的等。1、在java中stream代表一种数据流(源),javaio的底层数据元,---(想像成两头都有水龙头的输水管)2、任何有能力产生数据流(源)的javaio对象就可以看作是一个InputStream对象既然它能产生出数据,我们就可以将数据取出,ja
2017-12-08 16:42:49 1669
原创 hive元数据库配置metadata
一、什么是hive元数据?hive元数据就是hive的一些基本的元素,主要包括hive表的基本属性,如下(1)hive表的数据库名、表名、字段名称与类型、分区字段与类型(2)表的分区,分区的属性location等(3)serdeproperties, tblproperties等等可以通过desc formatted tablename查看表
2017-12-05 18:44:56 8538
原创 spark伪分布standalone搭建
一.环境准备 jdk 1.8.0 hadoop2.7.3 伪分布式部署 scala 2.11.8 支持spark2.0.1及以上版本 spark2.1.1二.Spark安装模式(本文伪分布式) spark有以下几种安装模式,每种安装模式都有自己不同的优点和长处。 local(本地模式): 常用于本地开发测试,本地还分为local单线程和local-cluster多线程; standalone(集群...
2017-12-05 16:26:04 2362
原创 hbase1.1.12伪分布、单机搭建
环境:hadoop 2.7.3 + hbase 1.1.12一、下载解压到官网 http://hbase.apache.org 下载合适的版本(hbase与hadoop的版本要匹配,否则可能运行不起来),解压到某个目录即可二、设置环境变量export HBASE_HOME=/opt/hadoop/hbase-1.1.12export PATH=$PATH:$H
2017-12-05 14:20:30 816
原创 hive2.0单机、伪分布搭建
1. 所需要的环境Hive 2.0需要以下运行环境: Java 1.7以上(强烈建议使用Java 1.8) Hadoop 2.X2. 下载、解压Hive安装包Hive官网地址: http://hive.apache.org/ 例如:wget "http://mirrors.cnnic.cn/apache/hive/hive-2.0.0/apache-hive
2017-12-05 11:43:28 1106
原创 java try后面括号的作用
Java7新特性,支持使用try后面跟随()括号管理释放资源例如通常使用try代码块try { fis = new FileInputStream(source); fos = new FileOutputStream(target); byte[] buf = new byte[8192]; int i;
2017-11-29 17:50:30 7985
原创 Google Dremel数据模型详解
转载自:http://blog.csdn.net/dc_726/article/details/41627613首先简单介绍一下Dremel是什么,能解决什么问题。第二部分着重讲Dremel的数据模型,即数据结构。第三部分将谈一下在此数据结构上设计的算法。1 起源Dremel的数据模型起源于分布式系统的应用环境(Protocol Buffers,一种在Google内
2017-11-28 16:59:03 3047 1
原创 Impala-大数据时代快速SQL引擎
背景随着大数据时代的到来,Hadoop在过去几年以接近统治性的方式包揽的ETL和数据分析查询的工作,大家也无意间的想往大数据方向靠拢,即使每天数据也就几十、几百M也要放到Hadoop上作分析,只会适得其反,但是当面对真正的Big Data的时候,Hadoop就会暴露出它对于数据分析查询支持的弱点。甚至出现《MapReduce: 一个巨大的倒退》此类极端的吐槽,这也怪不得Hadoop,毕
2017-11-28 15:03:30 7133 3
原创 Impala、Hive与HBase整合实践
我们知道,HBase是一个基于列的NoSQL数据库,它可以实现的数据的灵活存储。它本身是一个大表,在一些应用中,通过设计RowKey,可以实现对海量数据的快速存储和访问。但是,对于复杂的查询统计类需求,如果直接基于HBase API来实现,性能非常差,或者,可以通过实现MapReduce程序来进行查询分析,这也继承了MapReduce所具备的延迟性。实现Impala与HBase整合,我们能够获
2017-11-24 14:44:23 1082
翻译 Apache Spark 2.2.0 中文文档 - Spark Streaming 编程指南
概述Spark Streaming 是 Spark Core API 的扩展, 它支持弹性的, 高吞吐的, 容错的实时数据流的处理. 数据可以通过多种数据源获取, 例如 Kafka, Flume, Kinesis 以及 TCP sockets, 也可以通过例如map,reduce,join,window等的高级函数组成的复杂算法处理. 最终, 处理后的数据可以输出到文件系统, 数据库以及实时仪表盘
2017-11-22 15:06:46 1358
转载 Linux系统下运行jar文件,提示:No main manifest attribute, in XXX.jar
在Linux系统下执行java -jar XXX.jar com.HelloWorld往往会提示:No main manifest attribute, in XXX.jar原因如下:正常情况下,java打包成jar包需要在MANIFEST.MF中指定Main-Class项以便运行java -jar XXX.jar时找到对应的主类。因为-jar的
2017-11-21 14:46:13 42887 3
原创 eclipse + maven + scala+spark环境搭建
一、配置eclipse + maven + scala环境1. 在Eclipse Market中安装Scala IDE、Maven 2. 安装m2e-scala(图中的url是:http://alchim31.free.fr/m2e-scala/update-site/) 二、测试eclipse+m
2017-11-16 15:42:37 940
转载 An error occurred while collecting items to be installed session context was:(profile=epp.package.je
这个解决方法也适用于:1.安装插件报错,找不到某jar包;2.安装插件报错An error occurred while collecting items to be installed session context was:(profile=epp.package.je..。出现错误的原因p2有它的一个垃圾回收机制,之前删除的JAR包
2017-11-16 15:19:12 1031 2
原创 RPC 原理
RPC(Remote Procedure Call Protocol)的主要功能目标是让构建分布式计算(应用)更容易,在提供强大的远程调用能力时不损失本地调用的语义简洁性。1 如何调用他人的远程服务?由于各服务部署在不同机器,服务间的调用免不了网络通信过程,服务消费方每调用一个服务都要写一坨网络通信相关的代码,不仅复杂而且极易出错。如果有一种方式能让我们像调用本
2017-11-14 18:25:30 714
原创 Eclipse连接Hadoop2.7.3 HA 集群配置及测试
1. 安装Hadoop2.7.3 6节点集群并HAnn:bi-hdp0nn:bi-hdp32. 编译hadoop-eclipse-plugin-2.7.3基于hadoop2x-eclipse-pluginhttps://github.com/winghc/hadoop2x-eclipse-plugin3.配置插件打
2017-11-10 09:45:09 1013
转载 eclipse 中运行 Hadoop2.7.3 map reduce程序 出现错误(null) entry in command string: null chmod 0700
环境:windowsHadoop版本:hadoop2.7.3开发工具:eclispe-hadoop-plugin运行map reduce任务报错:(null) entry in command string: null chmod 0700解决办法:在https://github.com/SweetInk/hadoop-c
2017-11-09 16:34:17 2568
原创 Hadoop HA高可用集群配置详解
1 Hadoop HA架构详解1.1 HDFS HA背景HDFS集群中NameNode 存在单点故障(SPOF)。对于只有一个NameNode的集群,如果NameNode机器出现意外情况,将导致整个集群无法使用,直到NameNode 重新启动。影响HDFS集群不可用主要包括以下两种情况:一是NameNode机器宕机,将导致集群不可用,重启NameNode之后才可使用;二是计划内
2017-11-09 09:48:26 1448
转载 hbase的coprocessor使用
1.起因(Why HBase Coprocessor)HBase作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执行求和、计数、排序等操作。比如,在旧版本的(计数据表的总行数,需要使用Counter方法,执行一次MapReduce Job才能得到。虽然HBase在数据存储层中集成了MapReduce,能够有效用于数据表的分布式计算。然而在很多情况下,做一些简单的
2017-11-08 17:30:18 991
原创 MySQL中Cardinality介绍
1) 什么是Cardinality不是所有的查询条件出现的列都需要添加索引。对于什么时候添加B+树索引。一般的经验是,在访问表中很少一部分时使用B+树索引才有意义。对于性别字段、地区字段、类型字段,他们可取值范围很小,称为低选择性。如SELECT * FROM student WHERE sex='M'按性别进行查询时,可取值一般只有M、F。因此SQL语句得
2017-11-08 17:28:37 1176
转载 Apache Calcite:Hadoop中新型大数据查询引擎
Apache Calcite是面向Hadoop新的查询引擎,它提供了标准的SQL语言、多种查询优化和连接各种数据源的能力,除此之外,Calcite还提供了OLAP和流处理的查询引擎。正是有了这些诸多特性,Calcite项目在Hadoop中越来越引入注目,并被众多项目集成。Calcite之前的名称叫做optiq,optiq起初在Hive项目中,为Hive提供基于成本模型的优化,即CBO(Co
2017-11-07 15:46:07 1021
原创 HIVE 数据类型转换
Hive内置数据类型由基本数据类型和复杂数据类型组成。今天的话题是Hive数据类型之间的转换。同Java语言一样,Hive也包括 隐式转换(implicit conversions)和显式转换(explicitly conversions)。 Hive在需要的时候将会对numeric类型的数据进行隐式转换。比如我们对两个不同数据类型的数字进行比较,假如一个数据类型是INT型,另一个 是SMA
2017-11-07 14:02:15 5745
转载 Kylin执行查询流程分析
Kylin基于MOLAP实现,查询的时候利用Calcite框架,从存储在Hbase的segment表(每一个segment对应着一个htable)获取数据,其实理论上就相当于使用Calcite支持SQL解析,数据从Hbase中读取,中间Kylin主要完成如何确定从Hbase中的哪些表读数据,如何读取数据,以及解析数据的格式。场景设置首先设想一种cube的场景:维度:A(ca
2017-11-07 10:36:36 1264
转载 Hive系列之SerDe
SerDe是Serialize/Deserilize的简称,目的是用于序列化和反序列化。序列化作用序列化是对象转换为字节序列的过程。反序列化是字节序列恢复为对象的过程。对象的序列化主要有两种用途:对象的持久化,即把对象转换成字节序列后保存到文件中;对象数据的网络传送。除了上面两点, hive的序列化的作用还包括:Hive的反序列化是对key/value反序列化成hive table的每个
2017-11-03 10:45:40 11901
原创 kylin从入门到实战:实际案例
Apache Kylin(麒麟)是由eBay开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据。底层存储用的是HBase,数据输入与cube building用的是Hive,中间数据存储用的是HDFS。1.创建project进入kylin操作界面,如果没有project可以创建,kylin里面可以创建多个project,有效的把各
2017-11-02 17:11:39 10906
原创 Kylin介绍
Kylin是ebay开发的一套OLAP系统,与Mondrian不同的是,它是一个MOLAP系统,主要用于支持大数据生态圈的数据分析业务,它主要是通过预计算的方式将用户设定的多维立方体缓存到HBase中(目前还仅支持hbase),这段时间对mondrian和kylin都进行了使用,发现这两个系统是时间和空间的一个权衡吧,mondrian是一个ROLAP系统,所有的查询可以通过实时的数据库查询完成,而
2017-11-01 18:56:03 1150
原创 MySQL数据库中的哈希加密
数据库安全是数据库中最为重要的环节,只有确保了数据库中数据的安全,才能够更好的发挥数据库的功能,本文将为大家介绍一种很好的数据库加密方法,即哈希加密。 导读:MySQL数据库加密的方法有很多种,不同的加密方法对应着不同的情况,本文介绍的数据库加密方法----哈希加密,对数据库保存的敏感数据有较好的数据库保护性。哈希加密如果数据库保存了敏感的数据,如银行卡密码
2017-11-01 14:48:00 5998
原创 Linux如何查看JDK的安装路径
如何在一台Linux服务器上查找JDK的安装路径呢? 有那些方法可以查找定位JDK的安装路径?是否有一些局限性呢? 下面总结了一下如何查找JDK安装路径的方法. 1:echo $JAVA_HOME使用$JAVA_HOME的话能定位JDK的安装路径的前提是配置了环境变量$JAVA_HOME,否则如下所示,根本定位不到JDK的安装路径[root@localhost ~]
2017-10-30 16:50:40 1122
原创 mysql 用FEDERATED引擎实现DBLINK
用mysql实现类似于oracle dblink的功能 首先看看有没有federated 引擎。 mysql> show engines; +------------+----------+----------------------------------------------------------------+ | Engine | Support | Comme
2017-10-30 14:49:59 837
proxifier for Mac(含注册码、使用图解)
2019-01-15
Oracle_OCP_11G_题库-中文版
2016-02-26
Visual_C++MFC入门教程
2013-11-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人