SecorKafka 日志持久化
Secor 是 Pinerest 公司开发的一个服务,用来将 Kafka 日志持久化到 Amazon S3, Google Cloud Storage 和 Openstack Swift。
特性:
- 强大的一致性:只要Kafka在Secor能够读取邮件之前不丢弃邮件(例如,由于积极的清除策略),就可以确保将每封邮件保存在一个S3文件中。最终一致性模型导致的S3众所周知的时间不一致不会损害此属性,
- 容错:Secor的任何组件都可以在任何给定时间崩溃,而不会影响数据完整性,
- 负载分配:Secor可以分布在多台机器上,
- 水平可扩展性:扩展系统以处理更多负载就像启动额外的Secor流程一样容易。可以通过取消任何正在运行的Secor进程来减少资源占用。增长或下降都不会对数据一致性产生任何影响,
- 输出分区:Secor解析传入的消息,并将它们放在分区的s3路径下,以便直接导入到Hive等系统中。secor支持日期,小时,分钟级别的分区
- 可配置的上传策略:通过基于大小和基于时间的策略来配置控制何时将数据保留在S3中的提交点(例如,当本地缓冲区达到100MB且每小时至少一次时上传数据),
- 监视:跟踪各种性能属性的度量标准通过Ostrich,Micrometer公开,并可以选择导出到OpenTSDB / statsD,
- 可定制性:可以通过更新配置来加载外部日志消息解析器,
- 事件转换:外部消息级别转换可以通过使用自定义类来完成。
- Qubole接口:Secor连接到Qubole,以将最终的输出分区添加到Hive表。
评论