Thoughts on SAP HANA Express
Upon my return from SAP TechEd Las Vegas last week I posted SAP TechEd & HANA Express Edition that covered the SAP HANA Express announcement.
Jon Reed then asked the question –
This post is in response to that question as I think it justifies more than a couple of sentences. I also hope that others will chime in with their views as well because I know there are aspects and nuances around this subject that haven’t yet occurred to me.
Let me start with the simple example. My understanding is that I can use SAP HANA Express (HANA-X) to build a complete working application. I would need to stay within the confines of the HANA-X license agreement – which essentially means I could not use “SAP data” and I could not exceed a database size of 32GB. But if I built something that grabbed some sort of non-SAP datasource, say some IoT data streams or a point-of-sale dataset, and built on top of it a you-beaut, all-singing and all-dancing application that did amazing things with some of the HANA geospatial and predictive capabilities I could then look to sell it to one – or hopefully many – of my customers. I’ll call it WonderApp.
Now my customer(s) can also use the HANA-X license to deploy and run WonderApp. Again they have to conform to the 32GB size restriction. They would also need to be comfortable with relying on “community support” as the HANA-X license does not give them access to SAP Support. This reduces the barrier to entry and makes it easier for me to close the sale.
Whether or not the customer is prepared to do this depends very much on them – and probably how critical WonderApp is to their business. I envisage that deploying WonderApp initially on HANA-X would not be a huge problem – especially within the context of a proof-of-concept. Once WonderApp began to demonstrate value to the business I see many customers wanting to deploy in on a fully supported version of HANA. Especially if they already have HANA in their landscape.
This might be forced upon them anyway as the 32GB ceiling might come into play quite quickly. That may mean they will also want to take advantage of things like data tiering, Hadoop integration, etc. that are disabled in the HANA-X installation. Data replication, high availability and disaster recovery options are also disabled in HANA-X as well.
So in this example the answer to Jon’s question is probably a ‘Yes’.
But this simple example is really not where we are all looking to go. More likely we want to build applications that run on the HANA Cloud Platform that can take advantage of shared infrastructure and all the additional services that make HCP valuable. (Side note – I slightly offended Matthias Steiner last week when I started a sentence with something like “There is not too much value in HCP per se…” and then saved the day by concluding with “… the real value is in the business services that HCP gives me access to.”)
So can HANA-X help me get started building my WonderApp for the HANA Cloud Platform? I have to say here the answer is a “No – but…”.
At this stage the development environment on HCP is different to what is currently available on HANA. One example is that currently I can build an HCP app in any language I like – as long as it is Java. Other languages are really not supported on the current HCP release – and won’t be until they implement the Cloud Foundry version of HCP and thereby support Cloud Foundry-based languages. In theory you can bring your own language.
I don’t want to bring my own language but I am very interested in the SAP supported buildpacks – XS Advanced & Node.js. HANA-X will be very useful for me to get used to building XSA and Node apps on HANA even though I won’t be able to deploy them to HCP just yet. So I can certainly see that HANA-X will help me prepare for building HCP apps.
I am unsure if I can leverage the HCP services, that I think are the real value of the platform, directly from HANA-X. I wonder if they are considered to be “SAP data” and therefore excluded in the HANA-X license? I trust not because that would mean I could call a Salesforce API but not a SAP C4C API – not a good outcome for anyone really.
Let us assume that the Cloud Foundry version of HCP is in place – now I wonder if I will be able to build & test my applications on HANA-X and then deploy them to HCP. In simple cases I am sure the answer is “yes” – but for more complex applications I am not so sure. HCP, as a shared platform, understandably imposes restrictions on what an application can do over and beyond HANA. An HCP app will likely have access to different API’s and platform facilities than a standalone HANA instance. It is unclear to me how easy it will be to take a HANA app and make it suitable for the HCP platform. I am not sure anyone has the complete answer to those questions yet.
And finally, there is the old issue of marketing, selling and deploying an application through an SAP app store. There is certainly no answer to this problem yet. All I know is that if history is any guide – there will probably be more SAP app stores before there will be less. 😉
Looking forward to everyone’s comments. How off track am I?
I found a FAQ link in the following blog post Free access to SAP HANA, with SAP HANA, express edition. pointing to a SAP source http://go.sap.com/documents/2016/09/88baee6d-897c-0010-82c7-eda71af511fa.html
According to this FAQ, it's possible to extend the usage beyond 32GB up to 128GB, using an "extension license" that can(not) be found on the SAP store. Unfortunately I don't find this in the SAP store, not sure if it's just me or not clear or not even there yet. It does sound interesting despite certain constraints. Of course how popular this extension will be depends on the price point.
I welcome this initiative in terms of getting SAP HANA into the hands of more developers, with a low cost barrier. Free always resonates but it also means there is a catch to it or it wouldn't be free.
I don't directly find the necessary information on how this process would work on the official website. I can imagine for someone outside of this community, it would be hard to find the relevant information. Key information that I found just now is available through links in SCN blog posts but I didn't directly spot this or find a reference or link on the official website to the same source(s). So I would advise SAP to improve this further and make sure all relevant information is available, missing information is added and provide as much clarity as possible on the process of buying such an extension, legal aspects of what can be done and how far one can go. This should also contain information on who to contact or how to get your application in the hands of a customer in the end, running productively. Given this is either not there yet or hard to find it would surprise me if the whole end to end process would go smooth.
Great write-up Graham! You brought up some very good points and I'm happy to chime in and address some of them as best to my current knowledge. But first of, about your 'offense' - none taken. Matter of fact, I started my whole presentation talking about "HCP - The Big picture" with a seque to Playmobil toys - see here:
Replace toy with platform and child with dev and there you go!
Ok, I get your point about the current situation with XSC (on HCP) and XSA on HANA-X. That is an interim situation and the way forward is to enable XSA within HCP leveraging Cloud Foundry. I cannot provide a public date for that, just yet... but it is only a matter of time and not a lack of intent.
Of course we see the arguments for BYOL, no doubt. This has been one reason we integrate Cloud Foundry and its build-pack features.
Mid-term (once XSA has been integrated) I'd believe that there could be such scenarios to start with HANA-X and move to HCP. In fact, technically you should already be able to use a Java-build pack on XSA and deploy the same app to HCP. I'd be interested to try that actually... just didn't find the time yet with all the travel recently.
Regarding the service consumption... again, technically you should be able to use (at least some) of the platform services from HANA-X by consuming the RESTful APIs. I'll look into that as part of my hands-on for sure... stay tuned!
Nice post, comme d'habitude. One small point that I couldn't resist commenting upon:
"...One example is that currently I can build an HCP app in any language I like - as long as it is Java..."
We'll leave the Cloud Foundry aside for a second, but even then, this statement isn't quite accurate. Perhaps:
"... - as long as it compiles to JVM bytecode"
is better. I only point this out as while I find the Java language hard to swallow, I do really enjoy other languages that compile to JVM bytecode, notably Clojure. So even without Cloud Foundry, the possible languages go far beyond Java. See https://en.wikipedia.org/wiki/List_of_JVM_languages for more details.
And if you're a glutton for punishment, I talk a little bit about Clojure on HCP in this interview with Jeff Word on The HANA Effect podcast, linked to from this post http://www.bluefinsolutions.com/blogs/dj-adams/january-2016/the-future-of-app-building-on-the-sap-hana-cloud-p
+1 - thanks for pointing that out DJ.
Several of our community heavy hitters have run other JVM-based apps on HCP. Alisdair Templeton for one once showcased Clojure on HCP at TechEd with me: Building Clojure Web Applications for the NetWeaver Cloud
Here's another report: Using Clojure on HANA Cloud Platform
Fancy jRuby or Grails? There's an incomplete list here: SAP HANA Cloud Platform - Content Overview
As there's already plenty well deserved praise for this blog post, I'll get right into my comment 🙂
My personal view on what the Express Edition offers and where it fits in looks like this:
Whenever you wanted to develop or try out anything with SAP HANA you either needed to have access to HCP or a server installation somewhere.
Depending on your location and network connectivity that experience can easily be very unproductive ("click on navigator tree - go grab a coffee - enjoy the hot beverage while all sub-objects are populated").
All that leaves out all the license discussions, but in my eyes the HXE really is about _not_ to have a commercial license.
With HXE there's now the legal, paved way option to have HANA in a dev. environment similar to most other dev. environments. Distributed, local, completely in the hand of the developer - no IT team involvement required.
Now, that's - to me - where this offering ends.
There's no development life-cycle enabled out of the box.
There's no build-in "publish to HCP" deployment target, no CI server setup, no release management, no dev-ops, ...
If I read your blog correctly, the move from the sandpit-environment to a published and marketed solution was one of the big question marks for you. I agree that HXE doesn't provide that - but I also would say, that it's (at least in its current incarnation) really not a HCP-in-a-box environment but rather a on prem. HANA-in-a-box.
Where I personally fail to follow the argument is the memory limitation.
I still have to see the common development task that really really is not doable without more than X GBs of memory. The vast majority of cases can be worked, developed, tested and proven based on a small subset of data.
When it comes to scaling, throughput and data volume handling, it's of course required to test the assumptions and see if the predictions were correct. But for that real-world test, the full blown infrastructure is required anyhow. Scaling applications does not happen on a single developer laptop - it's always an infrastructure task.
Looked at it from the other side, there's plenty of interesting things you can do with small data sets and clever processing approaches.
Great post and some good questions. I think this announcement will greatly benefit small/mid size companies and also give an easy start for everyone to quickly build applications using HANA platform. Here are my thoughts and I will stay away from programming languages 🙂
Though currently we can't run HANA-X on HCP, we could still install HANA-X on-premise or in the cloud (AWS/Azure) , build HANA models (say for a new business process) and expose the data via XS-OData services. The services can be consumed in HCP (in the usual manner) and we can build applications on top of these XS-OData services. This way, customers can possibly leverage other HCP services (like Security/UXaaS/Mobile etc)
In the roadmap, there is also plans for customers to use virtual machines in HCP. This could be also another option to explore if someone wants to deploy HANA-X on HCP and start building their services also in HCP.
Using these options, we could probably get started with building a HANA-X based application in HCP, but I would be cautious going down this approach. HCP gives that layer of agility for customers to quickly innovate. I would prefer using a full blown HANA instance on HCP. Lack of features like SDI/SDS/Scale out/DB size (max 128GB) in HANA-X will start to put restrictions on how I want to model my business process.
As Matthias Steiner mentioned, lot of things are happening in Cloud Foundry space. HANA has been one of the key differentiators when comparing with other PaaS. Hence, for sure there will be more announcements in the near future where HANA services would be made available as a backing service (currently this is not available in the beta version). Bjorn Goerke demonstrated in the key notes the "Things Modeler" which is actually a Cloud Foundry based application and also showed how we can consume the service in SAP WebIDE to build IoT applications in HCP. This shows how services built using CF can be easily consumed in HCP. Once HANA XSA/Nodejs gets enabled in HCP, it should be possible to start using it with the remaining HCP services. Its just a matter of time.
Graham - first off really excellent post, you hit on many of the things I was wondering about when I posed the question to your prior one.
Sorry I didn't respond sooner. I'm sure I'll have more questions and comments, for example I have questions about the state of HCP developer licensing, which gets implicated here, but overall, my first reaction is this is a solid offering from SAP in terms of the individual developer getting a shot at building something with the marketplace in mind.
This should give us some great talking points in Barcelona. 🙂
Hi Graham, I hope you are fine!
I have found this blog while doing some research on HANA Express and its possible uses by startup founders or entrepreneurs who are in the "idea" phase of a product or company.
A few weeks ago, while I was organizing the SAP Inside Track Ribeirão Preto event and looking for speakers, I had spoken to local startup founders and I have discovered that many of them are not aware of the existence of much of the most recent SAP technologies like SCP, HANA, UI5 and so on.
They also do not know that they can use free or extremely low-cost versions of them to build prototypes or even MVPs using SAP technologies, e.g. SCP Trial + HANA Express (on AWS or GCP or Azure) + SAP Build + OpenUI5. In such cases when the product or startup becomes bigger and commercially viable they would eventually choose to become partners or customers based on the full commercial versions of those SAP products.
Because of that and since I am an SAP developer who has been involved with the startup scene in the city where I live in Brazil, mainly through the Founder Institute which has a local presence, I reasoned that I could do something to make entrepreneurs and startup founders aware of the existence of such SAP technologies. I decided to organize a community event, called "Startup Focus Day" where I will bring other SAP professionals to join me and showcase how easy and accessible these things are even for those who are not part of the SAP Community yet.
My initial idea is to showcase how it is possible to build an app using NodeJS + OpenUI5 and an instance of HXE hosted on GCP as its database. Besides that, I plan to show how to use SAP Build with SCP.
Finally, my question to you is: after some time since this blog post has been written, how do you think about what I am now proposing to do?
I really wanted to know what your opinion is because before finding your article I had already made much of the work needed for this event to happen, I am finishing the blog page I am writing to accept the registrations and I plan to publish it on the next few days to make the first event happen in April and the second one in May.
Thank you very much,
this sounds like a great idea. I presented at a few events last year, along with Gary HOOKER, on HXE. We covered a lot on our experiences installing it on various platforms, setting it up, some pointers for developers and system admins, etc.
But the awareness of the availability of HXE for not just prototypes and as a sandpit but also for being able to take applications all the way to production without having to pay SAP for a license is still little understood or appreciated.
As recently as last month I spoke to a VAR at the Mastering SAP Technology event in Melbourne who had a great idea, designed, built and ready to go and they thought the had to wait for a customer with an existing HANA license - or a willingness to buy one - to get going. They had no idea that they could use a HXE license to get going immediately without worrying about licensing issues until they start to get near to the 32GB limit.
Getting back to your idea I am sure that the SAP Developer Relations Team would be interested in helping you. I am not sure of the status of the SAP Startup Program but they would be able to put you in touch with them if it was appropriate. I suggest you reach out to Thomas Grassl or Craig Cmehil to get their thoughts.
Good luck - I wish I could attend.
Thank you so much for your ideas and suggestions, surely they are already helping me to design a better message for the event audience. This is the event page, with some details: https://blogs.sap.com/2018/04/13/sap-startup-day-ribeirao-preto-brazil/
I will explore your idea that HXE can be used not only for prototyping but also to build a full product since the 32GB constraint is respected. Thank you for that!
The event will happen this week and I will write a blog post afterward detailing how things have gone and also share the learnings.