Category

Project Status

GenevaERS is an Active Project!

By Announcements, Project Status

On August 12, 2021, the Technical Advisory Committee of the Linux Foundation’s Open Mainframe Project approved GenevaERS’s promotion from an incubation to active project. The following were the points made during the presentation, and a video extract of the meeting.

Extract of OMP TAC Presentation on GenevaERS Project Renewal

Presentation Points

Background

  • Initially developed as a product and consulting services asset from late 1980’s through early 2000’s when purchased by IBM as part of acquisition of PwC Consulting
  • Original name was GenevaERS until IBM Acquisition when it became known as Scalable Architecture for Financial Reporting or SAFR
  • Effectively a Map-Reduce Engine more than 10 years before development of Map-Reduce in 2004 by Google
  • Drives incredibly high throughput focused on z/OS on IBM Z Mainframes
  • A score of very large, enterprise customers over its history, continuing to be supported under contract for some customers
  • Released as Open Source by IBM in May 2020
  • Approved as incubation OMP project July 9th, 2020
  • Project Renewal Status on August 12, 2021

TAC Project Status Application

Next Steps

  • Public Build Processes
  • Enhanced Documentation
  • Renewed Spark Integration Efforts
  • Other Enhancements  

Project Mission Statement

The Linux Foundation has formed an LLC to legally hold the GenevaERS Intellectual Property. The terms of the entity can be seen on this Open Mainframe Project GitHub site.

The mission of the GenevaERS Project, as stated in this document is:

1. Mission and Scope of the Project

a. The mission of the Project is to radically improve business systems using Business Event principles while processing significant data volumes to achieve :

● Accurate, fast and transparent outputs,

● Respond quickly to changing business needs, and

● Minimize costs over time.

b. The scope of the Project includes collaborative development under the Project License (as defined herein) supporting the mission, including documentation, testing, integration and the creation of other artifacts that aid the development, deployment, operation or adoption of the open source project.

(Technical Charter for GenevaERS a Series of LF Projects, LLC Adopted March 25, 2021)

Project Update and Goals

By Contributions, News, Project Status

March 15, 2021 is a milestone of sorts: it is 25 years to the day later than predicted by one pundit as the date the last mainframe would be turned off. The GenevaERS team has been working hard to celebrate this milestone by working to become a full-fledged project under the Linux Foundation’s Open Mainframe Project. Here’s where we have come from, and where we are going.

Progress to Date

GenevaERS was accepted as an incubation project on July 9, 2020. Since then the team has:

Project Goals

We’re not done making progress though. In the coming weeks and months we are working to:

  • Release the Workbench, Run Control, and Performance Engine code bases to Github.
  • Begin to convert the GenevaERS Documentation to a new Github Home.
  • Continue to explore potential deeper integration with Apache Spark and GenevaERS, as the Map on the Mainframe component.

Apache Spark Integration: “Map” on the Mainframe Phase

The team continues nearly weekly R&D efforts to explore tighter integration with Apache Spark. GenevaERS has many similarities to the Map-Reduce constructs of Apache Spark, preceding it by a decade or more.

The GenevaERS Extract Engine GVBMR95, is a parallel processing, machine code generation function that can resolve many queries or functions in one pass through the underlying data. The GenevaERS Summarization and Aggregation Engine, GVBMR88, is much more like the reduce phase in Map-Reduce.

The team believes there may be distinct advantages to using the GenevaERS Extract Engine for the Map phase in Map-Reduce, coupled with Apache Spark for the Reduce phase, using its extended functionality and capabilities.

The team holds a weekly R&D Session on most Friday’s at 2:30 EST on webex if you are interested in joining.

Become Involved

Would you like to get more out of your valuable data on z/OS? Consider applying GenevaERS to the problem. Use the GenevaERS e-mail list to start a discussion of the potential use case.

A daily scrum call is held Monday through Thursday at 5:00 EST on webex (not held on TSC meeting days, 2nd and 4th Tuesdays.) Our On Boarding Document will allow you to get connected to all the GenevaERS Resources.

Additionally here are opportunities, many marked in the GenevaERS Repo as Good First Issue, to explore involvement in the GenevaERS Community:

We’re excited on our progress, and our prospects. We’d love to have you participate. Thanks for your interest.

GenevaERS Sister Projects: Polycephaly and OzE

By News, Project Status, Technical

The GenevaERS project is teaming up and providing support for two other Open Mainframe Initiatives; Polycephaly and the Open z/OS Enablement or OzE project.

Polycephaly

Polycephaly is intended to be a key technology in expanding access to mainframes, marrying two different development life cycle methodologies, distributed and z/OS. Polycephaly requires minimal z/OS system programming, and provides flexible development paths and options, moving from linear to non-linear development. It removes the need for separate development paths for distributed and z/OS workloads. Developers can develop on any platform, store to Git and Jenkins to deploy.

GenevaERS’s Performance Engine, which resolves scores of queries or processes in a single pass through a database, today is executed via standard JCL. Polycephaly opens the possibility for an updated execution engine, allowing use of Git and Jenkins commands to perform all the functions typically done within JCL. This may open up use of the Performance Engine to resources not skilled in z/OS commands and JCL.

Work to progress this investigation would include attempting to convert the GenevaERS model Performance Engine JCL to Polycephaly commands. Doing this work will expose the developer to a number of new and old technologies, building bridges in interesting ways.

Learn more about Polycephaly through this introductory video on GenevaTV.

Introduction to Polycephaly

OzE

The Open z/OS Enablement or OzE project grew out of the experience of establishing a community working environment for GenevaERS. The team found there are few places upon which to do Open Source community work. And so the team proposed to the Open Mainframe Project an approach to help solve the problems.

The vision of is lower the bar for companies and individuals to make z/OS computing resources available more broadly. Lack of access to z environments is a major impediment to the growth and innovation on the platform. Type of uses targeted include:

  • Open Source Communities and new software development efforts
  • Mentoring and new user growth, consistent with and attractive to those who use other public cloud learning opportunities
  • Experimentation and innovation on the edge of environment stability like the Raspberry Pi Model
       Impediments to these types of environments include:
       – Critical knowledge and support in sysprogs for z systems
       – Cost and control of donated resources (MIPs, software, storage, etc.)
       – Security and access control

The project intends to create code, processes and techniques which reduce these impediments and enable broader use and development of the Z platform.

You can learn more about the Open z/OS Enablement Project by watching this episode of GenevaTV.

OzE Introduction

Project Update and Goals

By News, Project Status

March 15, 2021 is a milestone of sorts: it is 25 years to the day later than predicted by one pundit as the date the last mainframe would be turned off. The GenevaERS team has been working hard to celebrate this milestone by working to become a full-fledged project under the Linux Foundation’s Open Mainframe Project. Here’s where we have come from, and where we are going.

Progress to Date

GenevaERS was accepted as an incubation project on July 9, 2020. Since then the team has:

Project Goals

We’re not done making progress though. In the coming weeks and months we are working to:

  • Release the Workbench, Run Control, and Performance Engine code bases to Github.
  • Begin to convert the GenevaERS Documentation to a new Github Home.
  • Continue to explore potential deeper integration with Apache Spark and GenevaERS, as the Map on the Mainframe component.

Apache Spark Integration: “Map” on the Mainframe Phase

The team continues nearly weekly R&D efforts to explore tighter integration with Apache Spark. GenevaERS has many similarities to the Map-Reduce constructs of Apache Spark, preceding it by a decade or more.

The GenevaERS Extract Engine GVBMR95, is a parallel processing, machine code generation function that can resolve many queries or functions in one pass through the underlying data. The GenevaERS Summarization and Aggregation Engine, GVBMR88, is much more like the reduce phase in Map-Reduce.

The team believes there may be distinct advantages to using the GenevaERS Extract Engine for the Map phase in Map-Reduce, coupled with Apache Spark for the Reduce phase, using its extended functionality and capabilities.

The team holds a weekly R&D Session on most Friday’s at 2:30 EST on webex if you are interested in joining.

Become Involved

Would you like to get more out of your valuable data on z/OS? Consider applying GenevaERS to the problem. Use the GenevaERS e-mail list to start a discussion of the potential use case.

A daily scrum call is held Monday through Thursday at 5:00 EST on webex (not held on TSC meeting days, 2nd and 4th Tuesdays.) Our On Boarding Document will allow you to get connected to all the GenevaERS Resources.

Additionally here are opportunities, many marked in the GenevaERS Repo as Good First Issue, to explore involvement in the GenevaERS Community:

We’re excited on our progress, and our prospects. We’d love to have you participate. Thanks for your interest.

Sign-up and Commit to the Spark-GenevaERS POC

By Project Status, Technical

Organization of the project continues, but much progress has been made. Check out the Community Repository on GitHub, and its Governance and Technical Steering Committee Checklist to see what’s been happening.

But don’t stop there….

Get Connected

The first Technical Steering Committee (TSC) Meeting, open to all, is scheduled for Tuesday, August 11, 2020 at 8 PM US CDT, Wednesday August 12, 10 AM WAST/HK time.

Project Email List: To join the meeting or to be kept up to date on project announcements, join the GenevaERS Email List. You’ll receive an invitation as part of the calendar system. You must be on the e-mail list to join the meeting.

Slack Channel: Conversations are starting to happen on the Open Mainframe Project Slack workspace. Request access here, then when granted look for the GenevaERS Channel.

Spark POC Plans

The team continues to prepare the code for release. But that’s no impediment to our open source progress.

We’ve determined that the best way to help people understand the power of The Single Pass Optimization Engine is to contrast it–and begin to integrate it–with the better known Apache Spark.

Here’s what we plan to do work on over the next several weeks, targeting completion before the inaugural Open Mainframe Summit, September 16 – 17, 2020.

This POC was designed using these ideas for the next version of GenevaERS.

The POC will be composed of various runs of Spark on z/OS using GenevaERS components in some, and ultimately full native GenevaERS.

GenevaERS Spark POC Approach

The configurations run include the following:

  1. The initial execution to produce the required outputs will be native Spark, on an open platform.
  2. Spark on z/OS, utilizing JZOS as the IO engine. JZOS is a set of Java Utilities to access z/OS facilities. They are C++ routines having Java wrappers, allowing them to be included easily in Spark. Execution of this process will all be on z/OS.
  3. The first set of code planned for release for GenevaERS is a set of utilities that perform GenevaERS encapsulated functions, such as GenevaERS overlapped BSAM IO, and the unique GenevaERS join algorithm. As part of this POC, we’ll encapsulate these modules, written in z/OS Assembler, in Java wrappers, to allow them to be called by Spark.
  4. If time permits, we’ll switch out the standard Spark join processes for the GenevaERS utility module.
  5. The last test is native GenevaERS execution.

The results of this POC will start to contribute to this type of architectural choice framework, which will highlight where GenevaERS’s single pass optimization can enhance Apache Spark’s formidable capabilities.

Note that the POC scope will not test the efficiencies of the Map and Reduce functions directly, but will provide the basis upon which that work can be done.

Start Contributing

Open source is all about people making contributions. Expertise is needed in all types off efforts to carry of the POC.

  • Data preparation. We are working to build a data set that can be used on either z/OS or open systems to provide a fair comparison for either platform, but with enough volume to test some performance. Work here includes scripting, data analysis, and cross platform capabilities and design.
  • Spark. We want some good Spark code, that uses the power of that system, and makes the POC give real world results. Expertise needed includes writing Spark functions, data design, and turning.
  • Java JNI. Java Native Interface is the means by which one calls other language routines under Java, and thus under Spark. Assistance can be used in helping to encapsulate the GenevaERS utility function, GVBUR20 to perform fast IO for our test.
  • GenevaERS. The configuration we create we hope to be able to extract as GenevaERS VDP XML, and provide it as a download for initial installation testing. A similar goal with the sample JCL that will be provided. GenevaERS expertise in these fields is needed.
  • Documentation, Repository Work, and on and on and on. At the end of drafting this blog entry, facing the distinct chance it will be released with typos and other problems, we recognize we could use help in many more areas.

The focus for our work is this Spark-POC repository. Clone, fork, edit, commit, create pull request, repeat.

On a daily basis there is an open scrum call on these topics held at this virtual meeting link at 4:00 PM US CDT. This call is open to anyone to join.

Contributions from all are welcome.

Lucky 13: GenevaERS is an Official Open Mainframe Project project

By News, Project Status

On Thursday July 9th, GenevaERS was approved an Incubation Project under the Linux Foundation’s Open Mainframe Project.

Comments from the approving Technical Advisory Committee included (paraphrased):

  • “This project showcases the types of applications that Z is very important to.”
  • “Would like to see capabilities to cleanse data before feeding into Spark for machine learning.”
  • “Yes, intersecting with Apache Spark would be an interesting development.”
  • “This is exactly the kind of project we want to see”
  • “Most of the projects we are sponsoring are user interface related, supporting modernization. This has interesting transaction processing characteristics.”
  • “Looks like you already have a couple of people interested in participating/contributing…” The energy in the committee is “because this is a mature/sophisticated project.”

The following slides were used in the application discussion:

Additionally, the relationship of GenevaERS to Apache Spark was discussed, leveraging the content from the recent Proposed GenevaERS 5.0 Architectural Direction.