我正试图写一个Kafka连接器从facebook获取数据。问题是,
如何在不超过facebook提供的api命中限制的情况下,通过api从facebook获取数据?连接器应该在特定的时间间隔之后调用facebook api来获取数据,这样命中数就不会超过。
每个用户都可以用他们的访问令牌访问facebook api,这样用户就不能共享同一个主题分区。那么如何处理这种情况。我们必须为每个用户创建一个分区吗?
我读了一些指南和博客来了解Kafka连接和写一个连接器。
汇合-https://docs.confluent.io/current/connect/index.html
Kafka文献-https://kafka.apache.org/documentation/#connect
从概念上讲,它让我了解了什么是kafka connect,它是如何工作的,以及编写kafka连接器的重要类是什么。但是,我仍然对如何编写和运行连接器感到困惑。我试图找到一步一步的发展指南,但没有得到。
任何教程或pdf,如果你可以建议其中有详细的一步一步开发指南编写和运行Kafka连接器。
1条答案
按热度按时间qpgpyjmq1#
唯一的“官方指南”是在那些链接你有
https://docs.confluent.io/current/connect/devguide.html#developing-a-简单连接器
我个人没有使用facebook api的经验,但是我假设它使用rest,所以您可以从分叉kafka connect rest项目开始,但是不超过限制的最简单的答案是在给定的时间段内不发送超过允许的请求(在请求之间等待的代码中添加计时器)
另外,一个连接器只能有一组访问密钥。如何创建
ConnectRecord
对象来最终划分记录是由您决定的,但是我不认为每个用户都有一个访问密钥可以很好地扩展。将一个密钥绑定到一个应用程序可能更有意义,这样每个用户都将接受该应用程序有权从其帐户读取某些详细信息。