GenevaERS is an enterprise reporting system that currently executes in the IBM mainframe z/OS environment.[1] It is similar to MapReduce or Apache Spark but predates their development by a decade. It has been used as a data warehousing ETL, reporting, and application development platform.[2] It was designed to support business systems using William McCarthy's theory of Resources, Events, Agents.[3]
GenevaERS was created by PricewaterhouseCoopers Consulting as part of their practice.[4] (IBM acquired PwC Consulting in 2002.)[5] IBM renamed GenevaERS IBM's Scalable Architecture for Financial Reporting (SAFR), marketing and licensing it through its IBM Global Services division, typically with customer-specific services. The product solves business intelligence problems for large operational databases, especially in insurance and financial industries.[6] GenevaERS is also popular among SAP and other ERP system users, including manufacturing companies, with large databases and significant reporting needs.[7] (Despite the SAFR name, GenevaERS is not confined to financial industry roles.) In July 2020, IBM contributed the SAFR code base to the Linux Foundation's Open Mainframe Project,.[8]
GenevaERS uses a "single pass" I/O approach and takes advantage of the IBM mainframe's parallelism to create multiple reports concurrently. The software is CPU-efficient, with an internal capability to execute report queries using generated, high-performance IBM Z assembler code. Most GenevaERS users run reports daily, overnight, during a batch window, but jobs can run at any time, including concurrently and without disruption to online workloads. IBM continues to offer a commercial version of GenevaERS under the SAFR name which is able to exploit
Additional GenevaERS performance optimizations include in-memory join processing, either direct access or through a technical called Common Key Buffer joins for very large dimensional tables, piping from one process to another, and Extract-Phrase Record Aggregation] to immediately collapse data for summary outputs.
Although GenevaERS can access multiple types of mainframe-based data, including Db2 and VSAM, like MapReduce, GenevaERS's higher performance comes with the use of sequential files. GenevaERS processes are called VIEWSs, and any number of VIEWs can be run in one pass of the data. These VIEWS can be defined through the graphical user interface termed the Workbench.[9]