presto mysql连接器_Apache Presto KAFKA连接器

本文介绍了如何通过Presto的Kafka Connector访问Apache Kafka中的数据。首先,详细步骤包括下载并安装Apache ZooKeeper和Kafka,启动它们。接着,使用tpch-kafka工具预加载TPCH数据到Kafka主题。最后,配置Presto服务器以连接到Kafka,并在Presto CLI中查询加载的数据。
摘要由CSDN通过智能技术生成

Presto的Kafka Connector可以使用Presto访问Apache Kafka的数据。

学习提醒

下载并安装最新版本的以下Apache项目。

Apache ZooKeeper

Apache卡夫卡

启动ZooKeeper

使用以下命令启动ZooKeeper服务器。

$ bin/zookeeper-server-start.sh config/zookeeper.properties

现在,ZooKeeper在2181启动端口。

开始卡夫卡

使用以下命令在另一个终端中启动Kafka。

$ bin/kafka-server-start.sh config/server.properties

卡夫卡启动后,使用端口号9092。

TPCH数据

下载tpch-kafka

$ curl -o kafka-tpch

https://repo1.maven.org/maven2/de/softwareforge/kafka_tpch_0811/1.0/kafka_tpch_

0811-1.0.sh

现在您已经使用上述命令从Maven中心下载了加载程序。你会得到类似的回应如下。

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0

5 21.6M 5 1279k 0 0 83898 0 0:04:30 0:00:15 0:04:15 129k

6 21.6M 6 1407k 0 0 86656 0 0:04:21 0:00:16 0:04:05 131k

24 21.6M 24 5439k 0 0 124k 0 0:02:57 0:00:43 0:02:14 175k

24 21.6M 24 5439k 0 0 124k 0 0:02:58 0:00:43 0:02:15 160k

25 21.6M 25 5736k 0 0 128k 0 0:02:52 0:00:44 0:02:08 181k

………………………..

然后,使用以下命令使其可执行,

$ chmod 755 kafka-tpch

运行tpch-kafka

运行kafka-tpch程序,使用以下命令预先加载一些具有tpch数据的主题。

查询

$ ./kafka-tpch load --brokers localhost:9092 --prefix tpch. --tpch-type tiny

结果

2016-07-13T16:15:52.083+0530 INFO main io.airlift.log.Logging Logging

to stderr

2016-07-13T16:15:52.124+0530 INFO main de.softwareforge.kafka.LoadCommand

Processing tables: [customer, orders, lineitem, part, partsupp, supplier,

nation, region]

2016-07-13T16:15:52.834+0530 INFO pool-1-thread-1

de.softwareforge.kafka.LoadCommand Loading table "customer" into topic "tpch.customer"...

2016-07-13T16:15:52.834+0530 INFO pool-1-thread-2

de.softwareforge.kafka.LoadCommand Loading table "orders" into topic "tpch.orders"...

2016-07-13T16:15:52.834+0530 INFO pool-1-thread-3

de.softwareforge.kafka.LoadCommand Loading table "lineitem" into topic "tpch.lineitem"...

2016-07-13T16:15:52.834+0530 INFO pool-1-thread-4

de.softwareforge.kafka.LoadCommand Loading table "part" into topic "tpch.part"...

………………………

……………………….

现在,Kafka表客户,订单,供应商等都使用tpch加载。

添加配置设置

我们在Presto服务器上添加以下Kafka连接器配置设置。

connector.name = kafka

kafka.nodes = localhost:9092

kafka.table-names = tpch.customer,tpch.orders,tpch.lineitem,tpch.part,tpch.partsupp,

tpch.supplier,tpch.nation,tpch.region

kafka.hide-internal-columns = false

在上述配置中,使用Kafka-tpch程序加载Kafka表。

启动Presto CLI

使用以下命令启动Presto CLI,

$ ./presto --server localhost:8080 --catalog kafka —schema tpch;

这里“tpch”是Kafka连接器的架构,您将收到以下回复。

presto:tpch>

列表

以下查询列出了“tpch”模式中的所有表。

查询

presto:tpch>show tables;

结果

Table

----------

customer

lineitem

nation

orders

part

partsupp

region

supplier

描述客户表

以下查询描述“客户”表。

查询

presto:tpch>describe customer;

结果

Column | Type | Comment

-------------------+---------+---------------------------------------------

_partition_id | bigint | Partition Id

_partition_offset | bigint | Offset for the message within the partition

_segment_start | bigint | Segment start offset

_segment_end | bigint | Segment end offset

_segment_count | bigint | Running message count per segment

_key | varchar | Key text

_key_corrupt | boolean | Key data is corrupt

_key_length | bigint | Total number of key bytes

_message | varchar | Message text

_message_corrupt | boolean | Message data is corrupt

_message_length | bigint | Total number of message bytes

课程简介:  本项目课程是一门极具综合性和完整性的大型项目课程;课程项目的业务背景源自各类互联网公司对海量用户浏览行为数据和业务数据分析的需求及企业数据管理、数据运营需求。 本课程项目涵盖数据采集与预处理、数据仓库体系建设、用户画像系统建设、数据治理(元数据管理、数据质量管理)、任务调度系统、数据服务层建设、OLAP即席分析系统建设等大量模块,力求原汁原味重现一个完备的企业级大型数据运营系统。  拒绝demo,拒绝宏观抽象,拒绝只讲不练,本课程高度揉和理论与实战,并兼顾各层次的学员,真正从0开始,循序渐进,每一个步骤每一个环节,都会带领学员从需求分析开始,到逻辑设计,最后落实到每一行代码,所有流程都采用企业级解决方案,并手把手带领学员一一实现,拒绝复制粘贴,拒绝demo化的实现。并且会穿插大量的原创图解,来帮助学员理解复杂逻辑,掌握关键流程,熟悉核心架构。   跟随项目课程,历经接近100+小时的时间,从需求分析开始,到数据埋点采集,到预处理程序代码编写,到数仓体系搭建......逐渐展开整个项目的宏大视图,构建起整个项目的摩天大厦。  由于本课程不光讲解项目的实现,还会在实现过程中反复揉和各种技术细节,各种设计思想,各种最佳实践思维,学完本项目并勤于实践的话,学员的收获将远远超越一个项目的具体实现,更能对大型数据系统开发产生深刻体悟,对很多技术的应用将感觉豁然开朗,并带来融会贯通能力的巨大飞跃。当然,最直接的收获是,学完本课程,你将很容易就拿到大数据数仓建设或用户画像建设等岗位的OFFER课程模块: 1. 数据采集:涉及到埋点日志flume采集系统,sqoop业务数据抽取系统等; 2. 数据预处理:涉及到各类字典数据构建,复杂结构数据清洗解析,数据集成,数据修正,以及多渠道数据的用户身份标识打通:ID-MAPPING等;3. 数据仓库:涉及到hive数仓基础设施搭建,数仓分层体系设计,数仓分析主题设计,多维分析实现,ETL任务脚本开发,ETL任务调度,数据生命周期管理等;4. 数据治理:涉及数据资产查询管理,数据质量监控管理,atlas元数据管理系统,atlas数据血缘管理等;5. 用户画像系统:涉及画像标签体系设计,标签体系层级关系设计,各类标签计算实现,兴趣类标签的衰减合并,模型标签的机器学习算法应用及特征提取、模型训练等;6. OLAP即席分析平台:涉及OLAP平台的整体架构设计,技术选型,底层存储实现Presto查询引擎搭建,数据服务接口开发等;7. 数据服务:涉及数据服务的整体设计理念,架构搭建,各类数据访问需求的restapi开发等;课程所涉及的技术: 整个项目课程中,将涉及到一个大型数据系统中所用到的几乎所有主要技术,具体来说,包含但不限于如下技术组件:l Hadoopl Hivel HBasel SparkCore /SparkSQL/ Spark GRAPHX / Spark Mllibl Sqoopl Azkabanl Flumel lasal Kafkal Zookeeperl Solrl Prestop
可以使用以下步骤来使用 Presto JDBC 连接 Apache Pulsar: 1. 首先,您需要下载 Presto JDBC 驱动程序。您可以从 Presto 官方网站下载最新版本的驱动程序。 2. 下载 Apache Pulsar 客户端库。您可以从 Pulsar 官方网站下载最新版本的客户端库。 3. 将 Presto JDBC 驱动程序和 Apache Pulsar 客户端库添加到您的项目中。 4. 在您的 Java 代码中,使用以下代码来创建 Presto JDBC 连接: ```java String url = "jdbc:presto://<presto-server>:<presto-port>/<catalog>/<schema>"; Properties props = new Properties(); props.setProperty("user", "<username>"); props.setProperty("password", "<password>"); Connection conn = DriverManager.getConnection(url, props); ``` 其中,`<presto-server>` 是 Presto 服务器的主机名或 IP 地址,`<presto-port>` 是 Presto 服务器的端口号,`<catalog>` 是您要连接的 Pulsar 客户端库的名称,`<schema>` 是您要连接的 Pulsar 主题的名称,`<username>` 和 `<password>` 是您的 Presto 认证凭据。 5. 使用创建的连接来执行 Presto 查询。例如: ```java Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM pulsar.<topic-name>"); while (rs.next()) { // 处理查询结果 } ``` 其中,`<topic-name>` 是您要查询的 Pulsar 主题的名称。 请注意,使用 Presto JDBC 连接 Apache Pulsar 可能会影响查询性能,因为 Presto 不是专门设计用于大规模消息传递。如果您需要进行大规模消息传递,建议使用 Apache Pulsar 提供的本机客户端库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值