This site uses different types of cookies, including analytics and functional cookies (its own and from other sites). To change your cookie settings or find out more, click here. If you continue browsing our website, you accept these cookies.
It may be best to reach out to your Alteryx contact for a deeper discussion, but typically MongoDB doesn't need a huge amount of RAM as it's used mainly as a meta store as opposed to a large data store.
I'd typically look at altering the RAM for the memory of Alteryx workflows. Depending on the spec of your machine and how many you want to run in parallel.
My formula for the amount of RAM to start with is:
(Available RAM / 2) / Number of Parallel Workflows
So if you were to have 32GB RAM machine and wanted to run 2 workflows simultaneously, I'd set the RAM limit to 8GB for each workflow.
This should then leave enough to run everything else on that machine; Windows OS, Gallery, MongoDB, Antivirus etc etc
That calculation would be for a single Alteryx server set up. Again if this isn't the case for you it's worth engaging in a conversation with your Alteryx contact.
Thank you very much for the valuable inputs. My machine is 32 GB and wanted to run only 1 workflow at a time. I've used the same formula for RAM distribution as mentioned by you. But I'm still wondering that assigning 16 GB RAM to MongoDB is optimal approach to run very memory intensive workflows, say I'm processing 6 B records and doing transpose, & cross tab operations. In this case, shall I keep 16 GB RAM for Mongo DB and rest 16 GB RAM for workflow. Thanks
When you say about MongoDB, do you mean the MongoDB of Alteryx server? This isn't actually used for any processing.
Or is your data stored in MondoDB elsewhere?
The 16 GB of the workflow will be what's allocated to execute your workflow process, so the transpose and crosstabs. However, if you are looking to regularly process 6 billion records, I am not sure 16 GB would suffice and you may need a more powerful machine depending on what it is you are doing and what timelines you need to meet.
By MongoDB, I mean MongoDB of Alteryx server, which i guess have information about schedules,users etc. I'm pulling records from AWS Redshift and doing transformation as per business rules and again pushing back to AWS Redshift. So, in this case-shall I keep 50% share of RAM for MongoDB, OS, etc.? Thanks
Got you, if it's just the MongoDB for Alteryx server, you don't need to worry about the RAM usage for that.
If you are using Redshift, I'd strongly recommend using the In-Database tools. This will push the compute down to Redshift and stop the overhead of moving the data.
Lastly, if you are only ever needing to run one workflow at a time, you could set it to 24 GB RAM. Leaving 8 GB to run the rest of the processes on the machine, however it'd be worth keeping an eye on things whilst you do this to see if you get any odd behaviour (memory pipe errors etc).