During the recent press conference announcing the finalization of SAP’s acquisition of hybris, I revisited the architecture of hybris and was surprised to see a variety of touch points with the HANA Cloud Platform (HCP).   I decided to explore the potential of a combination of the two solutions – in particular, I wanted to examine the possibility of deploying hybris on this platform.  As I explored the technical viability of such an action, I realized that there were other broader strategic questions that should be asked as well.

/wp-content/uploads/2013/08/image001_268716.jpg

A TRAIN! A TRAIN! A TRAIN! A TRAIN!

COULD YOU, WOULD YOU ON A TRAIN?

NOT ON TRAIN! NOT IN A TREE!

NOT IN A CAR! SAM! LET ME BE!

I WOULD NOT, COULD NOT, IN A BOX.

I WOULD NOT, COULD NOT, WITH A FOX.

I WILL NOT EAT THEM IN A HOUSE.

I WILL NOT EAT THEM HERE OR THERE.

I WILL NOT EAT THEM ANYWHERE.

I DO NOT EAT GREEM EGGS AND HAM.

I DO NOT LIKE THEM, SAM-I-AM.

“GREEN EGGS AND HAM” (by Doctor Seuss) [SOURCE]

[PICTURE SOURCE]

Could I port hybris to the HANA Cloud Platform

Note: Unfortunately, little technical information about the hybris architecture exists in the public domain – so a more detailed analysis isn’t possible.  I’ve been forced to base much of this examination on assumptions and my experience as a Java developer.

Note: A discussion of the potential to port hybris to HCP must be based on the awareness that the fundamental characteristic of the two solutions are different – HCP is a PaaS where as hybris is an application suite.

There are various characteristics of the hybris platform that would suggest that a port to HANA Cloud Platform would be possible.

Java

Hybris

HANA Cloud Platform

The hybris architecture is based on Java and the application runs in a Java EE Servlet Container.  [SOURCE].

The HANA Cloud Platform is Java EE 6, Web Profile certified – this profile “includes a servlet container and all the traditional presentation technologies such as JSP, JSF, and the Standard Tag Library for JavaServer Pages (informally referred to as JSTL). EJB 3”.

Assessment: There is documentation available about porting existing Java and other JVM-based applications to HCP and I have performed such ports myself, so the fundamental possibility exists that you could have hybris running on HCP. 

Spring

The Spring framework is a popular framework for Java developers and is associated with both platforms.

Hybris

HANA Cloud Platform

Hybris uses various components from Spring including its MVC framework and Spring Security.

Indeed, the hybris documentation suggests “A Spring developer will get accustomed to the hybris platform quickly.

The ability to use Spring to develop with the HCP is well documented. Indeed, SAP Labs already provides a development scenario based on Spring Roo

Assessment: The common use of Spring components suggests that the likelihood of a successful port is high. 

Open Source

Both environments rely heavily on open-source software.

Hybris

HANA Cloud Platform

hybris uses open source technologies such as Spring, ZK, SOLR/Lucene, ANT, Groovy, Apache Commons and many more [SOURCE]

The use of open source technology in the HCP is well documented and includes Apache Chemistry, Eclipse Virgo server, etc.

Assessment: The common use of open source components suggests that the likelihood of a successful port is higher.   One example of this synergy involves the use of maven in hybris and in HCP.

Note: There are various services of the HCP – such as the Cloud Connector or the Document Service – that take advantage of the unique characteristics of the platform. In all likelihood, the hybris application suite would have to be altered to use such functions.

Based on the quick analysis above, it appears that the fundamental technological foundation for a successful port is present.  Indeed, hybris CEO stated that hybris has already been ported to HANA so some experience with SAP’s latest technology is already present.

The question is whether such an environment would be viable in a production environment as well.

Production Features that might make things more difficult

hybris-specific Tomcat configuration

As the hybris documentation describes, the solution ships with preconfigured components:

The software comes with an installer that includes modified Apache Tomcat servlet container, Spring modules and a home-made ORM framework for data persistence. [SOURCE]

I have no idea if it would be possible to move such configurations to the HCP.  It is critical to remember that HCP is a PaaS: therefore, the flexibility that exists in a standalone deployment is often not possible.

Clustering

Since hybris is supported by various JEE container they cannot rely on container clustering features, Hybris Cluster solution is independent of the underlying JEE container.  They also provide support for TCP or UDP based clustering [SOURCE]. Since the existing HCP clustering is associated more with the underlying infrastructure and which platform package is used (you can determine vertical or horizontal scaling when using the neo command line tool),  conflicts regarding clustering should be expected.

Would I port hybris to the HANA Cloud Platform?

A discussion of the technical aspects of a hybris port to HCP only covers part of this discussion. Perhaps, the most interesting question is “would I make the port”? This isn’t an ethical question but rather involves strategic considerations for hybris as well as SAP.   

The hybris perspective

hybris provides various deployment options that offer customers a great deal of flexibility.

Option

Description

Perpetual license, hosted by customers

This version usually runs in the customer data center – although I did find one example of what I assume is a customer hybris instance running on AWS.

Perpetual license, hosted by hybris Managed Services

hybris delivers this flexible, secure, scalable, high-availability solution through an offering of hosted cloud-based infrastructure services within state-of-the-art global datacenters with server and network management, security infrastructure and services, 24×7 monitoring, incident management and emergency support.

On-demand/SaaS license, hosted by hybris Managed Services

Option based on hybris Managed Services but with a rapidly-deployed, cost-effective software-as-a-service model

Hosting by partners

Hybris can also be hosted in the data centers from partners (for example, eclipse or netrics)

None of these deployment options are based on a PaaS model.

Note: This tendency isn’t restricted to HCP – I found no evidence of hybris running on other Java-based PaaSs (OpenShift, CloudBees, etc).

The On-Demand option provides hybris as a SaaS – similar to that of other SAP cloud offerings such as SuccessFactors or Ariba.

There is no real reason for hybris or a hybris customer to port the application suite to HCP. One of the main reasons for applications to run in this environment is the use of HANA and the port of hybris to this database appears to already have occurred independent of HCP.

The question is whether a HCP-specific version would be desirable inasmuch as the involved development efforts might be high and the number of customers using this version might be limited.

I can only imagine this scenario being viable for a hybris partner that doesn’t offer hosting on its own and wants to take advantage of HCP features.

In the very long term, a consolidation of the hybris managed services assets and SAP cloud-related infrastructure elements (data centers, staffing, etc) might lead to more benefits from such a port.

The SAP Perspective

The role of the HANA Cloud platform in SAP’s cloud strategy has evolved over time and is crystallizing as the number and maturity of SAP cloud solutions increases. 

A recent exchange on Twitter between analyst Naomi Bloom and SAP Cloud executive Sven Denecken illustrates this evolution.

Bloom.jpg

/wp-content/uploads/2013/08/sven_268709.jpg

Naomi’s question is similar to the first part of this blog – would it be possible to port SuccessFactors to HCP (I have to admit I posed the same question after its acquisition).  Sven’s answer is that on which I really want to focus. It demonstrates that strategically HCP is seen primarily as an extension platform for existing cloud offerings.

This strategy is also evident in this video from SuccessFactors CTO Aaron Au:

Based on this strategy, a port of hybris to HCP probably isn’t planned but rather hybris extensions might be possible in this environment.

Despite the strategic focus on the HCP as an extension platform, this does not mean that HCP will become THE extension platform for hybris. Many hybris extensions are written to be deployed within the hybris environment (here is one example of an extension that adds chat, voice and video communication tools) rather than external to this environment.  Thus, the use cases for such HCP-based hybris extensions would have to be specific to the features of this platform.  For example, although there is already a hybris extension from SAP for ERP integration, I could imagine new hybris extensions based on HCP’s Gateway-as-a-Service.  The potential of combining hybris with other Sales/CRM-related SaaS solutions from SAP is also quite intriguing – HCP presents the ideal environment for such interactions to occur. 

Thus, there are excellent opportunities for HCP and hybris integration – the challenge is to find those scenarios where the strengths of both environments are emphasized.

SAY! I LIKE GREEN EGGS AND HAM!

I DO! I LIKE THEM, SAM-I-AM!

AND I WOULD EAT THEM IN A BOAT.

AND I WOULD EAT THEM WITH A GOAT…

AND I WILL EAT THEM, IN THE RAIN.

AND IN THE DARK. AND ON A TRAIN.

AND IN A CAR. AND IN A TREE.

THEY ARE SO GOOD, SO GOOD, YOU SEE!

“GREEN EGGS AND HAM” (by Doctor Seuss) [SOURCE]

To report this post you need to login first.

3 Comments

You must be Logged on to comment or reply to a post.

    1. Matthias Braeuer

      Hi Dick. I recently discussed this question with a colleague and wondered whether anyone has published some ideas on the topic of “hybris on HCP”. I came across this blog post via your excellent article on HCP/CF alignment from June last year.

       

      I think there is a real use case for deploying hybris on HCP, given SAP’s planned tighter integration between hybris and on-premise ECC instances via real-time JCo calls (in order to support complex pricing, product configuration, and other types of stateful interaction that are typical for B2B scenarios). The HANA Cloud Connector makes such an integration very easy, whereas traditional integration via a Middleware solution is often limited to stateless calls (plus all the headache to set up network filters, firewalls, reverse proxies, and so on).

       

      So, for a hybrid deployment (hybris in the cloud, connected to on-premise Business Suite ABAP servers), the HCP would offer a neat solution if it can be made to work. If one uses HCP purely for extension apps, one would end up building an “integration extension” in HCP with a cloud-to-cloud interface to hybris (hosted in another cloud) as well as a HCC connection to an on-premise system. Not sure whether that would be an elegant architecture.

       

      It will be interesting to see where SAP is heading.

       

      Regards

      Matt

      (0) 
      1. Richard Hirsch Post author

        If one uses HCP purely for extension apps, one would end up building an “integration extension” in HCP with a cloud-to-cloud interface to hybris (hosted in another cloud) as well as a HCC connection to an on-premise system

         

        Hybris extensions will probably be coming in the future but they will have a different architecture than existing extensions like those for SuccessFactors. hybris extensions will probably come in the form CF-based micro-services.

         

        I have no idea when they are coming though….

         

        D.

        (0) 

Leave a Reply