flume的sink写入hive表

a1.sources = r1
a1.sinks = s1
a1.channels = c1

a1.sources.r1.type = netcat     
a1.sources.r1.bind = localhost 
a1.sources.r1.port = 44444

a1.sinks.s1.type = hive
a1.sinks.s1.type.hive.metastore=thrift://master:9083
a1.sinks.s1.type.hive.datebase=bd14
a1.sinks.s1.type.hive.table=flume_user
a1.sinks.s1.serializer=DELIMITED
a1.sinks.s1.serializer.delimiter="\t"
a1.sinks.s1.serializer.serdeSeparator=‘\t‘
a1.sinks.s1.serializer.fieldnames=user_id,user_name,age

a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

a1.sources.r1.channels = c1
a1.sink.s1.channel = c1
保存
运行flume-ng agent -c conf -f netcat_to_hive_user.conf --name a1
hive目录-->hcatalogatalog/下面的架包拷贝到flume的lib里面

在hive中
创建一张hive表 表名是flume_user,字段是user_id,user_name,age
create table flume_user(
user_id int
,user_name string
,age int
)
clustered by (user_id) into 2 buckets
stored as orc
tableproperties("transactional"=‘true‘)

set hive.support.concurrency=true
set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;
select * from flume_user

打开一个连接 到服务器然后输入 :
telnet localhost 44444 
然后输入 对应字符
1 tab键 王五 tab键 15 tab键

时间: 2024-10-04 11:03:54

flume的sink写入hive表的相关文章

优雅的将hbase的数据导入hive表

v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} wgx wgx 2 67 2016-04-02T15:15:00Z 2016-04-02T15:15:00Z 1 233 1332 11 3 1562 15.00 Clean Clean false 7.8 磅 0

[Hive]MapReduce将数据写入Hive分区表

业务需求: 将当天产生的数据写入Hive分区表中(以日期作为分区) 业务分析: 利用MapReduce将数据写入Hive表实则上就是将数据写入至Hive表的HDFS目录下,但是问题在于写入至当天的分区,因此问题转换为:如何事先创建Hive表的当天分区 解决方案: 1. 创建Hive表 # 先创建分区表rcmd_valid_path hive -e "set mapred.job.queue.name=pms; drop table if exists pms.test_rcmd_valid_pa

Hive使用HDFS目录数据创建Hive表分区

描述: Hive表pms.cross_sale_path建立以日期作为分区,将hdfs目录/user/pms/workspace/ouyangyewei/testUsertrack/job1Output/crossSale上的数据,写入该表的$yesterday分区上 表结构: hive -e " set mapred.job.queue.name=pms; drop table if exists pms.cross_sale_path; create external table pms.c

hive表与外部表的区别

相信很多用户都用过关系型数据库,我们可以在关系型数据库里面创建表(create table),这里要讨论的表和关系型数据库中的表在概念上很类似.我们可以用下面的语句在Hive里面创建一个表: hive> create table wyp(id int, > name string, > age int, > tele string) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY '\t' > STORED AS TEX

使用spark对hive表中的多列数据判重

本文处理的场景如下,hive表中的数据,对其中的多列进行判重deduplicate. 1.先解决依赖,spark相关的所有包,pom.xml spark-hive是我们进行hive表spark处理的关键. <dependencies> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <version

《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中

  先看一下我要实现的功能界面:   这个界面的功能在图中已有展现,课程分配(教师教授哪门课程)在之前的页面中已做好.这个页面主要实现的是授课,即给老师教授的课程分配学生.此页面实现功能的步骤已在页面中有所体现,这里不再赘述,此篇文章主要介绍:我是如何通过js从前台获取数据,然后通过ajax技术向后台一般处理程序传递JSON,后台又是如何获取传来的JSON,并对JSON数据转换,然后将转换后的数据写入数据库的! 介绍这些步骤实现前,先说说自己的辛酸:絮叨辛酸,是因为为了实现这个功能,我真的用了很

连接Oracle与Hadoop(4) Oracle使用OSCH访问Hive表

OSCH是Oracle SQL Connector for Hadoop的缩写,Oracle出品的大数据连接器的一个组件 本文介绍的就是如何使用OSCH从Oracle数据库直接访问Hive表 前提1:在Oracle数据库端,部署好HDFS客户端与OSCH软件,设置好环境变量 #JAVA export JAVA_HOME=/home/oracle/jdk1.8.0_65   #Hadoop export HADOOP_USER_NAME=hadoop export HADOOP_HOME=/hom

根据JSON创建对应的HIVE表

本文提供一种用SCALA把JSON串转换为HIVE表的方法,由于比较简单,只贴代码,不做解释.有问题可以留言探讨 package com.gabry.hiveimport org.json4s._import org.json4s.native.JsonMethods._import scala.io.Source class Json2Hive{ /** * sealed abstract class JValue *case object JNothing extends JValue //

C++ 无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run

C++  无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,但在写入HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run时,在目录HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下也会生成,同时在以下两图目录下也生成相应的注册项. 实际写入目录为: