GemFire是什么?

官方网站上的说法:Pivotal GemFire is the distributed, in-memory database for developers who are building the highest scaling and performing data-centric apps in the world. 但是,按照我对它的理解,我更愿意用下面的语言来描述它,GemFire是一个高性能的分布式内存对象缓存系统,如果非要说它是数据库,那也只能算是一个Key/Value数据库(我更愿意称之为Key/Value存储系统)
我们通过把对象或数据缓存在内存中,减少对传统关系型数据库的读写次数(减少IO瓶颈),从而使我们的应用支持更多的TPS,更多的并发用户数。GemFire能够在 以下四个场景钟对关系型数据库起到很好的补充(甚至替代)作用。

交易处理

网购、设备互联、证券交易,这些类型的交易处理应用程序要求超高的数据管理性能。随着越来越多的企业着手进行数字化转型,这些类型的应用程序数量只增不减,在这种情况下,高度支持数据一致性的内存数据网格是必须的。
Pivotal  GemFire可以处理超大量的并发交易业务,涉及兆兆字节的运行数据,为客户提供更快,更可靠的交易体验。与传统的关系数据库管理系统相比较,Pivotal GemFire的可扩展性更强,能够随着需求的不断提高进行相应的扩展。GemFire利用闪电般的速度和灵活的可扩展性,为用户提供快速交易,从而可以提高客户保留率和参与性。

运用实例

印度铁路公司是世界上第二大的铁路公司,他们就正在使用GemFire进行交易处理。印度铁路公司每天运行超过12,000辆列车,载客量超过2300万人次。该公司的旧系统每天只能处理不超过40,000个并发互联网用户,而其中许多人网上预订车票仍需花费30分钟。通过使用GemFire支持其电子票务应用程序,该系统现在可以处理超过12万个并发用户,现在完成预订只需几秒钟。GemFire改变了印度铁路公司数百万名客户的体验,并带来高达60000万卢比的日收入增长。
印度铁路公司是世界上第二大的铁路公司,他们就正在使用GemFire进行交易处理。印度铁路公司每天运行超过12,000辆列车,载客量超过2300万人次。该公司的旧系统每天只能处理不超过40,000个并发互联网用户,而其中许多人网上预订车票仍需花费30分钟。通过使用GemFire支持其电子票务应用程序,该系统现在可以处理超过12万个并发用户,现在完成预订只需几秒钟。GemFire改变了印度铁路公司数百万名客户的体验,并带来高达60000万卢比的日收入增长。

事件通知和处理

在诸如信用卡诈骗、风险计算、车辆跟踪这些情景中,数据就像说书人,讲述了现场实时发生的各种事件。随着物联网成为各行各业强有力的数据源,把握热数据机遇变得尤为重要。然而,传统的数据管理系统无法快速处理大数据,从而无法及时将重要事件传达给客户端应用程序,传统的系统也无法结合历史和实时数据进行实时分析和预测。
如果我们结合内存数据网格与大规模并行处理数据存储,就可以像Pivotal Greenplum或者开源Greenplum Database一样快速地处理实时和历史数据集,让热数据分析成为可能。银行、能源,以及电信等行业的领导者无疑会对GemFire出色的事件通知和处理能力喜闻乐见。
GemFire强大的内存数据网格可以管理高达兆兆字节的内存输入数据,并在服务器内部数据发生变化时,跨越多个集群,将通知**至应用程序客户端。这种快速,持续的查询能力使得系统能够快速,轻松地访问大量输入数据,并采取行动。

运用实例

工业巨头通用电气公司就采用了GemFire的内存事件处理和通知功能来对其燃气轮机产品进行跟踪。远程水力和电力监控与诊断中心现在能够处理和存储涡轮机上高速的时间序列传感器的大型数据流(每秒超过10万个,内存10兆兆字节)。
GemFire的连续查询功能允许通用电器公司通过各种传感器数据密切留意涡轮故障信号。此外,通用电气公司已实施快速合并分析实时和历史数据,来预测涡轮维护需求,防止设备故障。利用事件处理和分析功能,结合实时和历史数据,通用电器公司开始采用精简的方式进行监测和维护其舰队,而采用原有的系统来分析这些是不可能的。

高可用性的分布式缓存

如果在启动应用时加载时间过长肯定会叫人心情烦躁,而大多数客户在等待页面加载的时候耐心都极为有限,平时不暴躁的都变暴躁了。
GemFire的内存数据网格可以作为现有应用程序的缓存层使用,这样,应用程序就可以快速调用经常访问的数据,不会在访问磁盘数据时发生卡顿。而更重要的是, GemFire能够在服务器停机以及广域网的连接请求时进行回应,这使得应用程序持续可用从而降低延迟。
不论是网络会话缓存还是主机卸载,GemFire都支持复杂的缓存解决方案。

运用实例

某国家级商业服务提供商正在使用GemFire的内存缓存功能,用于那些需要快速和频繁访问大量数据子集的应用程序。
人力资源和财务人员使用这些应用程序来搜索和筛选员工信息。他们需要快速,可靠地访问各种数据子集,如员工住址或薪酬等级。使用搜索表格从数据库中查询这些信息是一个缓慢而繁琐的过程。为了满足高容量、低延迟的数据调用需求,我们在应用程序中直接创建了一个先进的的本地缓存解决方案,并且可以通过GemFire来不断更新。这个内存本地缓存系统的功能类似于单页面Web应用程序,让用户可以在几分之一秒的时间内搜索和筛选大量的数据,带来流畅而高效的用户体验。

计算/数据网络

使用传统的数据库存储体系意味着处理和分析财务数据需要在各个独立的系统之间来回大量移动数据,许多金融服务公司的陈旧系统很难跟上客户数据不断增加的步伐。
GemFire可以在内存中处理非常大的数据流,无需将数据传输到一个单独的分析系统中去,允许快速地存取数据和充分地分析数据。

运用实例

某大型金融服务公司采用GemFire在单一平台上快速处理兆兆字节级的内存数据,该公司的客户能够快速查看强制组合指标中的不同数据源。以价格数据和性能指标为例,传统的数据库架构需要额外步骤来处理这些指标,花费时间太长。而GemFire的内存数据网格不必在各个单独数据库之间移动数据即可进行复杂计算和分析,这为基金经理、投资者和其他的平台用户提供了即时迅速的大规模分析能力。