Alteryx's risky moves, and Snowflake integra

I wrote up my thoughts on Alteryx’s latest moves since Oct.

https://hhhypergrowth.com/the-alteryx-forecast/

In particular, since the big APA announcement early in the summer (right after COVID made their growth screech to a halt), the CEO has continued to rehash his arguments about how most of the Global 2000 are still on-prem. WELL DUH. The problem with that is the MASSIVE move to SaaS tooling for basic business operations, driving the digital transformation that was already ongoing, and which then got a major boost from pandemic and a stay-at-home work force.

Well – the long-time founder/CEO finally bowed out in October 2020, and shuffled over to Exec Chairman. The company then hired someone with some SaaS background to replace him. And in turn, that new CEO hired a bunch of other C-suiters from his prior gig (Palo Alto) with SaaS background. So it seems the BOD finally said to hell with this on-premise stuff that Dean keeps pushing – it is finally time for the cloud.

But a major risk now exists - the company is overhauling its platform at the same time it is overhauling its upper mgmt and sales process and go-to-market. It might be the kick-in-the-ass that Alteryx needed, or… it might become a huge mess.

Beyond that, I find myself EXTREMELY unimpressed with Alteryx’s latest PR on its partnership with Snowflake. It is simply rehashing existing features and using some vague language to make it seem like they have expanded integration with Snowflake. NOPE. It’s still just the Snowflake Bulk Data Loader and the In-Database Operations that they’ve always had with some minor updates… NOT the deeper integration I’ve been looking for where it EITHER 1) embeds its functionality into Snowflake compute or 2) creates a cloud-based platform with deep integration into Snowflake’s features.

Glad I left this one. I really want to like Alteryx for enabling the Citizen Scientist and the shift to feature engineering and model automation, and will continue to watch it – but I don’t foresee any signs of stellar execution for a long while. This company has an entirely Windows-based codebase that it has to shift to the cloud. THIS IS GOING TO TAKE WHILE.

BTW, I finally bought Snowflake with a small position. Writing up some tidbits on what I really like about their positioning as the Data Cloud.

  • muji
    long SNOW
139 Likes

I find myself EXTREMELY unimpressed with Alteryx’s latest PR on its partnership with Snowflake. It is simply rehashing existing features and using some vague language to make it seem like they have expanded integration with Snowflake. NOPE. It’s still just the Snowflake Bulk Data Loader and the In-Database Operations that they’ve always had with some minor updates

Thank you so much, Muji! That may be worse than Twilio’s “growth at scale” or Talend’s “Cloud is growing 100%” comments. It’s irritating, and anger-inducing, but I’m calmed by my appreciation for you, Muji.

Everyone understands how valuable you are here but I want to add one thing I’ve realized anew recently as I’ve struggled to understand Snowflake: ever since Hadoop (and before that I’m sure, but I’m talking about my investing attempts) I have struggled mightily with companies that are trying to capitalize on the huge data wave we all know will grow forever. Finding the right company in the space is not as easily done as said! But having help understanding the details from people who understand it 100x better, like you are giving us above, is amazing. Thanks again.

Bear

104 Likes

This company has an entirely Windows-based codebase that it has to shift to the cloud. THIS IS GOING TO TAKE WHILE.

Hi Muji - what do you mean by this? My understanding is that the cloud is able to run software/processes running previously in windows or linux.

I believe what he means by this is that the codebase is going to have to be lifted and shifted to run in the cloud (currently it runs on windows based servers on premise). The process of rewriting the codebase to run in the cloud is what will take a while to complete.

6 Likes

I believe what he means by this is that the codebase is going to have to be lifted and shifted to run in the cloud (currently it runs on windows based servers on premise). The process of rewriting the codebase to run in the cloud is what will take a while to complete.

You don’t need to rewrite code for it to run on the Cloud. Perhaps this is something relevant to only Alteryx.

1 Like

You don’t need to rewrite code for it to run on the Cloud. Perhaps this is something relevant to only Alteryx.

Alteryx is a Windows application, heavy on the GUI (Graphical User Interface), and with all the data sucked up into that single application. Just using a Windows instance in the cloud to run the application merely gets you away from on-Premise hardware and introduces potential GUI lags. It does not enable the application to scale in terms of data or compute capacity, does not address the need to import everything before processing, etc.

So, while a Windows App can run in the cloud, that doesn’t mean it’s a proper cloud-scale offering.

32 Likes

You don’t need to rewrite code for it to run on the Cloud. Perhaps this is something relevant to only Alteryx.

AFAIK, the server part of Alteryx already can be run on the cloud. The part that doesn’t is the designer, which doesn’t seem like there is a good reason to run in the cloud. But, if you did want to run it in the cloud, you would have to restructure it to have the UI run in a browser and the logic run remotely.

7 Likes

I am not a software developer that specializes in moving native apps to the cloud, but I have been on calls with the men and women that do this type of work. To use a really bad analogy, it is like doing an organ transplant.

Yes, the heart will still work in the new host, you don’t need to rebuild a new heart. The surgery however is not a trivial thing.

The core of the programs will still work, but all the ‘hooks’ to resources will have to at the very least be looked at and tested. Many will need adjustments, and then retested, and some will have to be rewritten.

6 Likes

Alteryx is a Windows application, heavy on the GUI (Graphical User Interface), and with all the data sucked up into that single application. Just using a Windows instance in the cloud to run the application merely gets you away from on-Premise hardware and introduces potential GUI lags. It does not enable the application to scale in terms of data or compute capacity, does not address the need to import everything before processing, etc. So, while a Windows App can run in the cloud, that doesn’t mean it’s a proper cloud-scale offering.

Thanks so much Smorg, I finally understand what the issue is! Appreciate your help.
Saul

7 Likes

So, while a Windows App can run in the cloud, that doesn’t mean it’s a proper cloud-scale offering.

Again, I think there is a failure to distinguish between the server, which does work in the cloud and the designer which actually makes more sense as a local desktop application. There may be something I am missing here, but I keep mentioning it and I haven’t seen any rebuttal.

1 Like

It has a lot to do with how well the Designer tool uses remote procedures to query the data. If it is bringing data back, sticking it in SQLite and processing the query locally, then that is a design issue.

Read the Designer help section on help.alteryx.com and “Optimization”… it leaves open some real design questions, imo.

-Another Rob

3 Likes

It’s also worth adding that when one moves software to cloud, a lot of our previous assumptions don’t hold. For example, that the server will always be there. In the cloud, instances are ephemeral which means architecting a system for failure as a first class principle. This gets into the foundations of the system and can result in a total rethink. There are a few of these principles which totally plays into muji’s comments of taking more time than people think.

1 Like

Again, I think there is a failure to distinguish between the server, which does work in the cloud and the designer which actually makes more sense as a local desktop application. There may be something I am missing here, but I keep mentioning it and I haven’t seen any rebuttal.

Hi tamhas, I’ve been doing some research since you first posted - kind of busy with other things right now so it’s taking me longer than I’d like.

Alteryx Server runs on Microsoft Windows Server 2008 R2 or later ( see https://help.alteryx.com/current/server/system-requirements ), but I don’t consider that a cloud. Microsoft’s true cloud, Azure, is able to run a virtual instance of Windows Server (this is called Azure Hybrid). AWS can also run Windows and so can also run Alteryx Server. But, note that Server is still licensed per “core” and so any kind of scale-out you want to do requires additional licenses from Alteryx.

Also note this isn’t a SaaS model. There is no available Alteryx subscription that gets you a hosted environment in which you run your jobs. You, the customer, are creating server instances on Azure or AWS, managing them, scaling them, etc. You can scale-up the instance to be bigger on your own, but to scale-out to multiple instances you’ve got to buy licenses from Alteryx, which means you’re going to be careful about spreading your workloads out among all your users and will get complaints as workflows get bottlenecked. This kind of instance creation, tuning and management disqualifies the term “cloud” in my view. Hosting a Windows machine on a remote server, even virtually, merely gets you separation from hardware acquisition and deployment, but scaling and management are not what I consider cloud hallmarks.

The gory details for Alteryx Server on AWS are here: https://www.alteryx.com/sites/default/files/2020-05/best-pra… Note that at least 5 times in that document it says something equivalent to Alteryx Server licensing is based on physical cores. That’s not a cloud licensing model.

Alteryx Designer does not require Alteryx Server, and as far as I can tell, it can’t leverage Alteryx Server to run jobs for it; Jobs are always run locally. You can export workflows created in Designer to run in an automated/scheduled fashion in Server (on-premise or cloud hosted), but to create workflows in Designer you’ve got to import all the data to your local instance for try-outs. Note that even for the Server you’ve got to import all the data into the Server’s own MongoDB instance.

As of Nov 2020, Alteryx is working on moving some Designer functionality to the web in order to streamline user access to Alteryx capabilities (https://community.alteryx.com/t5/Alteryx-Designer-Ideas/Web-… ). Designer today remains a desktop GUI application requiring a local Windows host.

25 Likes

We use Tableau, which is a similar tool to Alteryx (also connecting to Snowflake). Tableau has two modes, one where you have all the data local in the designer, and another where the data resides on a server (either terrestrial or cloud). The internals of Alteryx will determine to what degree it is able to take advantage of Snowflake’s data engine. I can speak from experience that it is blindingly fast, and has changed entirely how we go about structuring data for reporting. I know of other companies that are using Snowflake, too, and some in very unexpected ways. For example, one vendor (whose route accounting system we use) also has a WMS – warehouse management system – that runs entirely in Snowflake. This is a stunning technological achievement, as systems like that include motion control. I speak now and then with their senior technical people, and they have quite a few stories of what others do in Snowflake. It looks to be a game changer.

19 Likes

Jobs are always run locally.

This was my impression, too. I was reading the product help on Alteryx’s site yesterday and while I wasn’t certain enough state it emphatically, my impression of the Designer tool were/are the same as what Smorgasbord1 is saying.

It definitely read as though a lot of the SQL happens inside the Designer, so the user interface requires its own horsepower making this not an efficient cloud deployment under the current design.

1 Like

But, note that Server is still licensed per “core” and so any kind of scale-out you want to do requires additional licenses from Alteryx.

But, this is also true on prem. And, it is a licensing issue, not a technical one. If Alteryx wanted to introduce an alternate license which was say usage based instead of the simplicity of core based, the only technical change needed would be to add the meter for the basis of the license. This would allow dynamic scaling in response to demand at the risk of higher overall license costs if one demanded too much.

A true SaaS model, as usually implemented, implies a single implementation shared by multiple customers. This is fine for some applications, but for Alteryx would imply having a company put all of its data accessible to that implementation. That may not be desirable.

I don’t see the running locally for the designer as being an issue. Many things work that way. One develops locally, drawing from where ever the data happens to live. Then, when the report is developed, package it for repeat use on the server.

4 Likes

Just to chime in again with all the questions… The “heart transplant” analogy is starting to move the discussion in the right direction on the amount of effort, but I completely concur with Smorg – just moving Alteryx software to the cloud doesn’t make it SaaS.

Yes anyone can run Alteryx Server in the web, if they load up a Windows Server 2013 instance on a Azure VM, and install it and open it up securely to access it. That creates a single private instance of the software in the cloud, which would look exactly as it would if run on-prem.

Alteryx could take a really easy route and just create and run separate Alteryx Server instances, each on its own separate VM, creating one per customer that each customer runs off of. This is SINGLE TENANCY, which means it has a separate software install and compute cluster PER CUSTOMER (tenant).

That is easy path for them, but that is a horrible way to scale. What I am referring to in my original post on the difficulties in architectural shift, is in MULTI-TENANT CLOUD PLATFORM, not running a single Alteryx Server instance. This would involve creating an all new code base to run natively in the cloud as a SaaS platform that can handle all customers at once (multi-tenancy).

There are 2 heavy lifts, development wise, in moving their platform beyond on-prem Windows software:

  1. Alteryx needs to morph its Windows client GUI app, Alteryx Designer, to be browser based.

  2. Alteryx needs to adapt its Windows server app, Alteryx Server, to be multi-tenant cloud based platform. To handle its own integrations into other cloud-based services, it could have a storage layer or just work over other data clouds, could have its own compute services to run models, or could embed directly into Snowflake and others. All the ML/AI model code might be able to port over pretty easily but overall this is a complete overhaul, a multi-year effort.

It’s stated publicly that it is doing the first. They haven’t much talked about the second. Both of these mean a completely new codebase from scratch - they will not be reusing Windows codebase or likely running any of this in Windows at all. (Linux or serverless is much preferred for web and cloud dev.)

Add’l Reading: I talked about some of this in my Alteryx APA write up https://discussion.fool.com/alteryx-q120-and-its-new-apa-platfor… and my “Alteryx is not SaaS” write up long ago https://discussion.fool.com/alteryx-is-not-saas-34231799.aspx .

-muji
not long AYX

43 Likes

Note that at least 5 times in that document it says something equivalent to Alteryx Server licensing is based on physical cores. That’s not a cloud licensing model.

“Nah nah it’s restin.”
“Look mate. This parrot wouldn’t voom if you put 4000 volts through it… If you hadn’t nailed it to the perch it would be pushing up the daisies… This is an ex-parrot!”

https://en.wikipedia.org/wiki/File:Parrot_sketch.ogg

1 Like

And yet…the competition in this space is

Code Based

  • SAS software + SAS coder
  • R Studio + R coder
  • Databricks + Python coder

Low/No Code - Analysts can use

  • Knime, open source consistently lower performance

  • Power BI/Query - limited drag and drop and slow performance, must code your own analysis. Largely a data prep tool. Easy to turn on and use through O365. Data flows now browser based but still working on bugs

  • Tableau Prep - never used

  • Alteryx - drag and drop data prep and analytics

The browser based support for AYX is to reduce the sales cycle. It’s the best product today in this space. However, very touch heavy sales process (relied on PwC sales force…which is face to face on digital transformation projects)…then the installs require interaction with IT personnel.

MSFT Power BI and Data Flows is the place to watch here as far as competition.

Just a Fool

3 Likes