Introduction导 语

数字世界为消费者带来便利的同时,也为企业带来了前所未有的机遇和挑战,尤其是对于零售、电商、制造、交通运输等掌握着海量数据的企业来说,要充分满足消费者的体验需求,就要对大规模数据进行实时收集、存储、处理及分析。 然而,实时事件或交互所产生的数据以每秒数百万事件的速率流入,并且需要由系统收集。即使在收集数据时,系统也应该足够强大并且能够并行处理数据。然后执行事件关联的复杂任务,以便能够从数据中提取有意义的信息。 对于任何企业来说,这都是一项艰巨的任务。

为了解决这类复杂的需求,Apache Kafka成了许多企业的选择。它允许分析引擎提取洞察信息,帮助企业打造最优客户体验。但是,由于开源本身的复杂和局限性,Kafka的使用也给企业用户带来了很大的难题。

Learn about Kafka认识卡夫卡

  • 01 /什么是卡夫卡?
  • 02 /能解决哪些问题?
  • 03 /适用于什么类型的企业?

Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写,用于发布、订阅记录流和容错存储。确切地说,它是一个高吞吐量的分布式发布订阅消息系统,可以处理消费者规模的网站中的所有动作流数据,包括网页浏览、搜索和其他用户的相关行为等等,这些数据由于吞吐量的要求通常是通过处理日志和日志聚合来解决。相较于Hadoop这样的日志数据和离线分析系统,Kafka可以更好地满足数据实时处理的要求,其目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,同时通过集群来提供实时的消息。主要具有如下特点:

有如下特性:
通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于数以TB的消息存储也能够保持长时间的稳定性能;
高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒数百万的消息;
支持通过Kafka服务器和消费机集群来分区消息;
支持Hadoop并行数据加载。

Kafka是一种用于构建现代化事件驱动型应用的实用技术,用于提供Hadoop大数据湖的数据流,通常用来为实时流式数据体系结构提供实时分析。主要用于相应不断变化的事件,可以实现事件流回放,通过复制实现高可用性实现自然水平扩展,最终帮助企业从海量数据中发掘洞察力。简而言之,Kafka多用于流处理、网站活动跟踪、度量收集和监控、日志聚合、实时分析、CEP,并将数据导入到Spark中、Hadoop、CQRS等,进行消息重播、错误恢复,并保证内存计算(微服务)的分布式日志提交。

Kafka适用于对海量数据流有实时收集、处理或分析的企业。目前全球超过三分之一的财富500强企业都在使用Kafka,包括前十大旅游公司、前十大银行中的七家、十大保险公司中的八家以及十大电信公司中的九家。此外,LinkedIn、微软、Twitter和Netflix等企业每天也都在使用Kafka处理四条逗号消息。LinkedIn本身起源于Kafka,并用它来跟踪活动数据和运营指标;Twitter使用它作为Storm的一部分来提供流处理基础设施;Square借助Kafka将所有系统事件转移到各种Square数据中心(日志,自定义事件,度量标准等),输出到Splunk、Graphite(仪表板)以及Esper-like / CEP警报系统。Spotify、Uber、Tumbler、Goldman Sachs、PayPal、Box、Cisco、CloudFlare和Netflix等企业也使用这种方法。

Enterprise user needs talk企业用户需求谈

04 /对于企业级客户来说卡夫卡有哪些不足?

首先,Kafka 天生的特性决定了它对于关键Mission critical应用,很难做到确保消息传递的不丢不重。但对于企业而言,这恰恰是对关键业务系统的前提要求。另外,虽然Kafka具有开源软件的优势,但也具有开源软件的不足。比如:没有特定的服务,学习掌握使用全靠人员自学平台基本通过命令行去操作,这要求使用人员要熟悉命令行版本迭代比较快,不同的版本往往变化比较大安全性考虑比较少高可用、容灾的考虑比较少

「因此,企业需要的是一个“进阶版”的企业级Kafka方案。IBM Event Streams 正是这一需求下的产物。作为国内首款企业级Kafka,IBM Event Streams正在以 安全、易用、高性价比,帮助用户在数据捕获和存储的基础上更好实现分析、预测和应对。」

IBM optimal solutionIBM最优解

  • 05 /什么是 IBM
    Event Streams?
  • 06 /有什么特点?
  • 07 /有什么优势?
  • 08 /适用的 使用场景?
  • 09 /能为企业带来 那些价值?
  • 10 /在哪可以试用
    IBM Event Streams

IBM Event Streams是一个基于开源Apache Kafka项目的事件流平台。它构建于IBM Cloud Private平台之上,是一个高吞吐量、容错的事件管理平台,可以帮助企业构建用于构建事件驱动的应用程序。它使得Kafka的使用变得更加简单直观,而用于灾难恢复的地理复制等功能则使其更适合关键任务工作负载。此外,它还包括一个UI设计,可以帮助应用程序开发人员更便捷地使用Kafka,并运行相关的生产集群。企业可以使用IBM Cloud提供的完全托管的Event Streams服务,也可以在IBM Cloud Private中安装和管理自己的Event Streams版本。

在数分钟内就能将适于在生产中使用的 Apache Kafka 部署到 IBM Cloud Private,消除了配置和部署中间件的复杂性,让技术人员能够更专注于编写事件驱动和响应式应用程序;

专为任务关键型用例而设计的灾难恢复与安全功能,利用易于配置的地域间复制功能,可以在两个位置的群集之间备份数据,以便在灾后快速恢复。使用服务 ID 进行更安全的应用访问控制,对用户及用户组信息进行集中控制,并使用基于角色的访问控制策略控制对 Event Streams 资源的访问;

使Apache易于更直观地大规模使用,深入了解群集内的数据,以监控系统的运行状况并有效诊断可能出现的应用程序问题。借助IBM Event Streams,企业可以将流经Kafka的数据从高级吞吐量趋势随时间可视化为单个消息内容,即使对于高吞吐量工作负载也是如此;

充分利用现有数据,将自身转变为真正的事件驱动型企业,IBM Event Streams支持企业与正在使用的系统进行连接,包括IBM MQ和IBM App Connect Enterprise等。让企业充分利用现有的投资、技术及数据,并使用事件驱动技术提供响应更快,更个性化的体验。

2015 年,IBM 是在 IBM Cloud 上提供完全托管的 Apache Kafka 云服务的第一家供应商,并在全球运行 Apache Kafka方面拥有多年的丰富经验在;

IBM Event Streams 打包为一个 Helm Chart,包含一个 3 节点的 Kafka 集群,外加 ZooKeeper、UI、网络代理等,共有 20 多个容器,非常易于安装和维护。此外,Kubernetes 和 Helm 也可以确保所有容器的可控性;

具有高可用性、可扩展性并且易于配置。采用高可用性设计,通过单个命令扩展 Kafka 集群,可以轻松推出 Kafka 集群配置的更改;

使得Kafka版本的升级过程更安全和简化,同时也让 Kafka 变得更直观、更易使用,比如实现了工作负载的可视化,集成式反馈和支持

数据分析工具的事件输入缓冲区:从物联网、网站跟踪系统或后台系统中收集海量事件,并将其反馈输入到大数据分析工具中;

事件驱动型微服务:使用事件来源范例或被动框架围绕中央总线构建敏捷的云原生应用;

与云原生应用相衔接:从现有系统中提取事件,为下一代的响应性云原生应用提供助力。

帮助企业抓住时机提前相应事件:比如监测 Web 渠道中“被舍弃的购物车”,从而抓住当时转瞬即逝的时机与潜在客户进行交互;

提供极具响应性的个性化客户体验:在 API 需要数据之前将数据送至 API,消除加载期,提升 API 的响应性,最终提升用户体验水平;

将实时智能引入到应用之中:将情境信息引入到机器学习模型之中,从而帮助企业作出可根据情形变化而不断演变的实时建议

Download白皮书下载

IBM Event Streams Apache Kafka for the Enterprise立即下载>

IBM Event Streams Apache Kafka for the Enterprise详细展示立即下载>

© 北京第二十六维信息技术有限公司版权所有.
京ICP备15039648号-7 京ICP证161336号 京公网安备 11010802021500号