memsql kafka集成
memsql 可以加载s3,文件系统,kafka、hdfs 系统的数据,测试使用kafka
环境使用 docker-compose 运行,新版本的需要申请license,参考链接:
https://www.cnblogs.com/rongfengliang/p/9922041.html
环境准备
- docker-compose 文件
version: "3.7"
services:
memsql:
image: memsql/cluster-in-a-box
init: true
ports:
- "8080:8080"
- "3306:3306"
environment:
- "LICENSE_KEY=youlicense"
zk:
image: wurstmeister/zookeeper:3.4.6
ports:
- "2181:2181"
kafka:
image: wurstmeister/kafka:1.1.0
ports:
- "9092:9092"
depends_on:
- zk
environment:
KAFKA_ADVERTISED_HOST_NAME: kafka
KAFKA_ADVERTISED_PORT: 9092
KAFKA_ZOOKEEPER_CONNECT: zk:2181
KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'false'
KAFKA_DELETE_TOPIC_ENABLE: 'true'
KAFKA_BROKER_ID: 0
- 启动
docker-compose up -d
测试
- 链接kafka 创建topic
./kafka-topics.sh --topic test --zookeeper zk:2181 --create --partitions 8 --replication-factor 1
- 生产者发送消息
./kafka-console-producer.sh --topic test --broker-list 127.0.0.1:9092
- 创建memsql数据库&&表
CREATE DATABASE quickstart_kafka;
USE quickstart_kafka;
CREATE TABLE messages (id text);
- 创建pipeline kafka 数据加载
CREATE PIPELINE `quickstart_kafka` AS LOAD DATA KAFKA 'kafka/test' INTO TABLE `messages`;
- 测试pipeline
TEST PIPELINE quickstart_kafka LIMIT 1;
- 启动pipeline
START PIPELINE quickstart_kafka;
- 发送数据
上边的kafka product console
- 查询数据
SELECT * FROM quickstart_kafka.messages;
- 查询结果
SELECT * FROM quickstart_kafka.messages;
+--------+
| id |
+--------+
| |
| s |
| sdf |
| sd |
| sdf |
| sd |
| f |
| f |
| appo |
| sdf |
| f |
| demo |
| df |
| dalong |
| sd |
+--------+
- 查询pipeline 的信息
SELECT * FROM information_schema.PIPELINES_BATCHES_SUMMARY;
参考信息:
SELECT * FROM information_schema.PIPELINES_BATCHES_SUMMARY \G
*************************** 1. row ***************************
DATABASE_NAME: quickstart_kafka
PIPELINE_NAME: quickstart_kafka
BATCH_ID: 4
BATCH_STATE: Succeeded
START_TIME: 2018-12-24 01:27:19.000000
BATCH_TIME: 0.176132
ROWS_PER_SEC: 17.032680035427973
ROWS_STREAMED: 3
NUM_PARTITIONS: 3
NUM_PARTITIONS_FINISHED: 3
MB_STREAMED: 0.0000
MB_PER_SEC: 0.00009651852020075853
EXTRACTOR_WAIT_TIME: 0.0726
TRANSFORM_WAIT_TIME: 0
*************************** 2. row ***************************
DATABASE_NAME: quickstart_kafka
PIPELINE_NAME: quickstart_kafka
BATCH_ID: 2
BATCH_STATE: Succeeded
START_TIME: 2018-12-24 01:24:19.000000
BATCH_TIME: 0.665859
ROWS_PER_SEC: 1.5018194542688468
ROWS_STREAMED: 1
NUM_PARTITIONS: 1
NUM_PARTITIONS_FINISHED: 1
MB_STREAMED: 0.0000
- 可视化界面查看
open http://localhost:8080
一张pipeline 参考图

参考资料
https://docs.memsql.com/memsql-pipelines/v6.7/pipelines-overview/
https://docs.memsql.com/memsql-pipelines/v6.7/kafka-pipeline-quickstart/
https://github.com/rongfengliang/memsql-kafka-pipeline-docker-compose
memsql kafka集成的更多相关文章
- Kafka集成SparkStreaming
Spark Streaming + Kafka集成指南 Kafka项目在版本0.8和0.10之间引入了一个新的消费者API,因此有两个独立的相应Spark Streaming包可用.请选择正确的包, ...
- Spark Streaming和Kafka集成深入浅出
写在前面 本文主要介绍Spark Streaming基本概念.kafka集成.Offset管理 本文主要介绍Spark Streaming基本概念.kafka集成.Offset管理 一.概述 Spar ...
- Spark Streaming与Kafka集成
Spark Streaming与Kafka集成 1.介绍 kafka是一个发布订阅消息系统,具有分布式.分区化.多副本提交日志特点.kafka项目在0.8和0.10之间引入了一种新型消费者API,注意 ...
- Spark Streaming之四:Spark Streaming 与 Kafka 集成分析
前言 Spark Streaming 诞生于2013年,成为Spark平台上流式处理的解决方案,同时也给大家提供除Storm 以外的另一个选择.这篇内容主要介绍Spark Streaming 数据接收 ...
- 新闻实时分析系统-Flume+HBase+Kafka集成与开发
1.下载Flume源码并导入Idea开发工具 1)将apache-flume-1.7.0-src.tar.gz源码下载到本地解压 2)通过idea导入flume源码 打开idea开发工具,选择File ...
- 新闻网大数据实时分析可视化系统项目——9、Flume+HBase+Kafka集成与开发
1.下载Flume源码并导入Idea开发工具 1)将apache-flume-1.7.0-src.tar.gz源码下载到本地解压 2)通过idea导入flume源码 打开idea开发工具,选择File ...
- 解析SparkStreaming和Kafka集成的两种方式
spark streaming是基于微批处理的流式计算引擎,通常是利用spark core或者spark core与spark sql一起来处理数据.在企业实时处理架构中,通常将spark strea ...
- springboot kafka集成(实现producer和consumer)
本文介绍如何在springboot项目中集成kafka收发message. 1.先解决依赖 springboot相关的依赖我们就不提了,和kafka相关的只依赖一个spring-kafka集成包 &l ...
- Structured Streaming + Kafka Integration Guide 结构化流+Kafka集成指南 (Kafka broker version 0.10.0 or higher)
用于Kafka 0.10的结构化流集成从Kafka读取数据并将数据写入到Kafka. 1. Linking 对于使用SBT/Maven项目定义的Scala/Java应用程序,用以下工件artifact ...
随机推荐
- android 广播 接收短信
; i < messages.length; i++) { SmsMessage ms = SmsMessage.createFromPdu((byte[])pdus[i]); String f ...
- CodeForces - 779D
Little Nastya has a hobby, she likes to remove some letters from word, to obtain another word. But i ...
- Mybaties学习
基于现在Mybatis 我没有学习太多,就基于简单的增删改查进行基础学习. 学习资源来自 http://www.cnblogs.com/xdp-gacl/p/4261895.html 1 引入 ...
- python flask实现小项目方法
本文目的是为了完成一个项目用到的flask基本知识,例子会逐渐加深.最好对着源码,一步一步走. 下载源码,运行 pip install -r requirements.txt 建立环境 python ...
- MacBookPro-OSX
修改用户名 sudo hostname macbookpro sudo scutil --set HostName macbookpro sudo scutil --set LocalHostName ...
- Python socket简单操作
#服务端:#导入socket模块 import socket #创建socket对象,创建了一个手机 server = socket.socket() #给程序设置一个ip地址和端口号,买了个手机卡 ...
- 【Python】Excel操作-2 (07版本以下Excel操作,其实不怎么用了,麻蛋,预习了2天课间才发现,还说怎么跟老师讲的不一样)
#保存修改Excel import xlrd from xlutils.copy import copy #打开Excel文档并将内容读取到内存 readbook=xlrd.open_workbook ...
- cxf动态调用外部web service 报告异常java.lang.NoSuchFieldErr
原因:cxf 依赖的xmlschema-core 与axis2-kernel依赖的xmlschema冲突. 解决方法:因为在项目中只用cxf即可,所以删除axis2的依赖.
- 【转】在python3.5安装tkinter
链接:https://www.zhihu.com/question/42162071/answer/95441732 安装tkinter tkinter是由tcl和tk两个部分组成的,所以下载tkin ...
- Java 经典面试题 —— 性能
1. 性能 String.StringBuffer 与 StringBuilder 两个字符串相加,str1+str2,相当于执行: StringBuilder strBuilder1 = new S ...