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.
Sometimes multiple conclusions can be drawn from the same data. Ok, often multiple conclusions can be drawn from the same data. This is especially the case with the Connection Progress that pops up between tools. You may be a bit familiar with this already. When you run a module, you may see something similar to the following: 114gb of data is being passed through my data stream! Is this a lot? Well, yes, but ultimately we have to remember that Alteryx processes everything in memory. Knowing this, the information that we see above doesn't mean we have 114gb of data being written directly to disk (many PC's don't even have this much available). Simply put, there is a ton of data there but if you do not have any type of output connected to the tool, it stays in memory. If we were to connect say, a Browse Tool to the end of my XML Parse Tool shown above, the temp file written out by my Browse Tool would in fact be every bit of that 114gb. Luckily, I don't really need the data written out at this point (I'm performing further analysis downstream), so I simply add a Select Tool just after this and de-select the field with the massive amount of data and just like magic, my module runs very fast and efficient. This little bit of info can be both extremely valuable and scary at the same time. The value is simply that it shows you the amount of data you are dealing with. The scary part is that it can be assumed this is all being written out to disk during runtime. We now know that as long as we're not attaching a Browse Tool to the data at this point, and we deselect the fields we do not need further downstream, we keep our module tidy and efficient! Until next time, - Chad Follow me on Twitter! @AlteryxChad
Alteryx is designed to use all of the resources it possibly can. In order to make Alteryx run as fast as possible, it tries to balance the use of as much CPU, memory, and disk I/O as possible. The good news is that most of the resource utilization can be controlled. You can limit the amount of memory that is used on a system, user, or module level. The Sort/Join memory setting is not a maximum memory usage setting; it’s more like a minimum. One part of Alteryx (sorts) that benefits from having a big chunk of memory will take that entire amount right from the start. It will be split between all the sorts in your module, but other tools will still use memory outside that sort/join block. Some of them (e.g. drive times with a long maximum time) can use a lot. If a sorting can be done entirely in memory, it will go faster than if we have to fall back to temp files, so that’s why it’s good to set this higher. But if the total memory usage on the system pushes it into virtual memory, you’ll be swapping data to disk in a much less optimal way, and performance will be much worse and that’s why setting it too high is a bigger concern. The Default Dedicated Sort/Join Memory Usage can be found in the Designer at Options > User Settings > Edit User Settings Best Practices on Memory Settings 32-bit machines*: Setting should be on the lower, conservative side. No matter how much actual RAM is there, only has at maximum 1 GB available, as soon as it is set higher, the machine will cross over into virtual memory and be unable to recover. A 32-bit machine should never have a setting over 1000MB, and 512 is a good setting. Set it low (128 MB), especially when using Adobe products simultaneously with Alteryx. 64-bit machines: Set this in the system settings to half your physical memory divided by the number of simultaneous processes you expect to run. If you have 8 GB of RAM and run 2 processes at a time, your Sort/Join memory should be set to 2GB. You might set it lower if you expect to be doing a lot of memory intensive stuff on the machine besides Alteryx Set your Dedicated Sort/Join Memory Usage lower or higher on a per-module basis depending on the use of your computer, doing memory intensive non-sort work (i.e. large drive-times) then lower it, doing memory intensive sort-work then higher.
*Please refer to this link for additional details on 32-bit support for Designer
As users of Alteryx become increasingly international, it is important to support the need to prepare, blend and analyze data in a large number of languages. However, many users with data in non-English languages encounter roadblocks at the first step of their data analysis: inputting the data into Alteryx.
This article will demonstrate two ways of bringing double-byte characters (DBCs) into Alteryx. These particular types of characters are associated with languages that have many unique characters or symbols, such as Chinese, Japanese and Korean (CJK). These languages’ graphic characters are stored in two bytes of data rather than just one, which is sufficient for languages like English, French and Spanish (among many others) that can be represented by 256 characters or less. Chinese, Japanese and Korean languages require a fixed width sequence of two bytes for every character, which allows for about 65,000 characters. This need to support such an extensive dataset requires an Alteryx user whose data may be represented by CJK characters to consider certain formatting and preparation steps both before and after inputting data into Alteryx.
Before inputting data into Alteryx, data with CJK characters requires certain encoding and file type considerations. Encoding is the process of converting data from one format into another specific equivalent code that uses letters, symbols and numbers for storage and processing. When using CJK characters, encoding your data in a format that supports double-byte characters is important to accommodate the range of characters in your dataset. Storing the data as Unicode ensures that you do not lose data as you begin your inputting process into Alteryx (Figure 1).
Figure 1: To encode your data from Excel, click “Tools> Web Options” in the bottom right-hand corner of the Save As Window. Then, select “Encoding” from the file tabs. In the Dropdown menu to Save the Document, select “Unicode”, then click “OK”. Make sure that your file name does contain any non-English characters, as that can cause issues the Input tool.
The second pre-input consideration for CJK data is the file extension, or type, with respect to how the data is saved. For example, saving CJK data directly to a Comma Separated Values (CSV) format, especially without encoding, is discouraged. This is because CSV file formats distort characters other than those supported by the American Standard Code for Information Exchange (ASCII) text. In the case of CJK characters, that is likely to be all of your data (Figure 2)! Rather than suffer through the heart-wrenching experience of seeing all your data turned into meaningless question marks, try saving your data as a Unicode text file (.txt) or Excel workbook (.xlsx), both of which are supported by the Alteryx Input Tool (Figure 3). I have found that using CJK characters in these file formats ease the process of inputting data into Alteryx and even reduce some of the steps you may need to perform in your post-input process.
Figure 2: Rats! CJK characters that are saved directly to CSV format without encoding turn into meaningless question marks. WHHHYYYYYY?????
Figure 3: Rather than lose your precious data, save as Unicode Text or an Excel Workbook (encoded as Unicode as a safeguard).
Post- Input Considerations
Because CJK characters are double-byte in size, it is important that their field type is set appropriately to display the data completely. Generally, importing data stored as Unicode text or a Unicode-encoded Excel workbook will be read in as a variable length wide string format (V_WString) to accommodate these wider types of characters (Figure 4). As you can see, forcing the field type to a narrow string format (V_String) leads to data loss. Throughout the data preparation and blending process in Alteryx, you should be sure that fields containing CJK characters have the necessary space requirements to store and transmit the data. The sudden conversion of CJK characters to question marks may indicate that your field type has changed; should this occur, field types can be easily changed using a Select Tool.
Figure 4: The larger size requirements of CJK characters creates the need for using wide string fields (V_WString).
Datasets that contain a mix of Western Latin character sets and CJK characters may require the conversion of text between Code Pages. This may be especially necessary if data has been transferred among many users who have different computer language settings or encoding systems. Figure 5 shows data that has been transferred from a Chinese colleague to an American Alteryx user. Despite bringing the data in as Unicode Text, the data is still unreadable. To convert the data to a useable and meaningful format, Alteryx tools with an Edit Formula Box (or Expression builder), such as the Formula or Multi-Field Formula Tools, contain ConvertFromCodePage and ConvertToCodePage functions. These functions facilitate the conversions between language codes and Unicode. In the below example, the Multi-Field Formula tool is used to overcome coding issues to convert data from the original Chinese code to Unicode using the ConvertFromCodePage function. As a result, the data is displayed in a readable and useable way.
Figure 5: Converting the data from Code Page 20936 (Simplified Chinese GB2312) to Unicode using the ConvertFromCodePage function renders the data readable and useable…Hooray!
And voila! Errr… 这里是! Now your CJK characters are brought into Alteryx beautifully!
Have you had experience with inputting non-English language data with Alteryx? Post any helpful tips or tricks that you’ve used to the Comments section to share with the Alteryx Community.
**Thanks not only to the Alteryx users whose data prep needs have inspired this article, but also to Alteryx’s RodL for his Community post that has provided me with the steps to even know where to begin when troubleshooting data in a variety of languages including Chinese, Japanese, Korean, Thai and Vietnamese.
Did you know that instead of having to choose a save location in the Output Tool, you could leverage the directory that is used to save your temporary files?
This can be handy if you are running chained apps locally or have macros that have a file output process. To use temporary space instead of actually writing out a file to a specified location. All you have to do is add the following onto your file name: %temp%..\Output.yxdb. Once you run your workflow you can navigate to your temporary directory (which can be found in System Settings->Engine->General->Temporary Directory) to view your saved file.
The same path you used in the output tool can be used in an input tool to read in the file that is saved to the temporary directory.
When bringing data into Alteryx a lot of users often add a select tool to check the data type and structure. Data types are very important because of the available operations/functions in tools can be adjusted to fit the data type being used!
Oftentimes in spatial analytics you’ll need to find the closest spatial object to another. The most intuitive way to do that that is through the Find Nearest Tool, which specifically captures the ability to find the shortest distance between spatial objects in one file (targets) and a user-specified number of objects in another file (universe objects). This tool does an amazing job of simplifying the process of finding the nearest object to another but it can also add significant time to your workflow.
I often elect for an alternative method that has trimmed significant run time off of many of my spatial workflows. That is, using the Append Fields Tool to duplicate your target spatial objects for each universe and using the Distance Tool to calculate DriveTime. After that’s done, simply add on a Summarize Tool, group by target and take the “Min” DriveTime for each. You could also sort ascending by DriveTime and sample for the first target by grouping with that field. There is a caveat, however, as the Append Fields Tool drastically increases the number of records in your input and will only speed up the process if there are significantly more targets than universes.
These methods are distinct in that the Find Nearest Tool must do a DriveTime run from each target spatial object to each universe spatial object (200 DriveTime passes in Example 1) whereas the Distance Tool approach already has all the points available to it and recognizes that there are many more targets than universes. As a result, it runs the reverse-direction DriveTime calculation starting from each universe to all target spatial objects at once (5 DriveTime passes in Example 1). If it is quicker for you to use the Find Nearest Tool, be sure to shed the spatial objects you no longer need in your workflow as soon as possible, even inside the Find Nearest Tool’s configuration if possible. That could also reduce your run time due to the sheer size of the spatial object datatype. Below are some examples of the methods. They can also be seen in the attached workflow, AppendAlternative.yxzp, which was made in Alteryx 10.0.
Universe Objects: 5
Attempt 1: Find Nearest Tool
Run Time: 8 minutes 13 seconds
Attempt 2: Append Fields Tool and Summarize
Run Time: 11.9 seconds
Universe Objects: 52
Attempt 1: Find Nearest Tool
Run Time: 49.7 seconds
Attempt 2: Append Fields Tool and Summarize
Run Time: 12.6 seconds
Client Services Representative
Beginning with Alteryx 10.0, the default position of the Results window (formerly the Output window) is across the bottom of the canvas, as show below:
Placing the Results window across the bottom of the canvas helps make workflow development easier. It allows you to see a wide view of your data and it allows you to reference incoming results while configuring a tool.
Users who migrated to 10.0 from a previous version may find that the results window is positioned in the bottom left corner, directly below the Properties window.
We recommend that you move the Results window to the new default position, and there are three different ways to do this:
1) Restore default settings using the menu ( Options > User Settings > Restore Defaults ). Note: This will restore all user setting defaults.
2) Assign a position from a drop-down menu. Click the down arrow in the Results window title bar (circled in red) and choose Dock to > Bottom.
3) Move the window manually. To do this:
Double-click in the title bar of the Results window to un-dock it.
Click and hold the title bar to drag it around. An interface overlay will appear, showing different docking positions.
Drag the window to the interface overlay for the bottom docking position. When your mouse cursor is over the interface overlay, a blue highlight will appear.
Release the mouse button. The window will snap to the position indicated by the blue highlight:
By experimenting with these controls, you may find other window layouts that work even better for you. For example, users with more than one monitor will often move the Results window to their second screen.
What are Tool Palettes?
Tool Palettes are a new feature of Alteryx 10 and allow you to customise the tools that appear in the toolbar in Alteryx.
Why might I want to add my own?
Perhaps you have two difference custom configurations you use regularly, or you like to swap and change but have a regular custom favourite. Perhaps like me you work with different users and need to simplify the user interface in different ways for each one.
Is this officially supported by Alteryx?
err. Probably not. Ensure you backup any files before you change them! Although it's a relatively minor "hack" neither myself nor Alteryx can't be held responsible for playing with the files in the Alteryx configuration.
Why did you do it then?
Finding these XML files, and hacking them is what makes you understand what Alteryx is doing. I spend time playing in each new Alteryx version, seeing what changes have happened underneath the hood and what I can tweak.
What does a custom tool palette look like?
This is my example, I created a custom palette called "The information Lab":
Okay I want one, how did you create your custom Tool Palette?
There are only 5 steps:
1. First of all I edited my palette to the one I wanted to save using the Tool Palette Editor (the little + to the right of the toolbar in v10)
2. Then I found the settings here:
<Windows User Directory>\AppData\Roaming\Alteryx\Engine\10.0\DefaultPalette.xml
3. I copied it to my Alteryx Program Files directory here (Admin version):
and gave it a new name:
4. Then I edited PresetOrder.xml to include the new file:
5. Then I saved everything (backup remember!) and then exited and restarted Alteryx. Nice and Simple.
That's amazing how can I ever thank you?
Reach for the star at the top of this article.
You have gone through the hard work of creating your macro and now want to make it easy to insert this into your workflow time and time again. You may have, up until this point, been right clicking on the Alteryx Canvas and going to Insert>>>Macro.
However, you can now create your own macro category by going to Options>>User Settings>>Edit User Settings
Within this splash screen you should now be able to see a macros tab:
At this point you can hit the '+' icon and you can give a name to your category and select the file folder where you save your macros in.
Then simply press Apply and OK and the new tool category will appear at the end of your tool palette.
Here at Alteryx we believe in working smart, not hard. Building out reports to highlight business-critical metrics is a pretty smart way to track goals. Customizing those reports to everyone in the department, then distributing them as attachments to individual emails? That sounds like a lot of hard work. Scheduling those reports from a refreshing data source each month so you don’t have to remake or rerun the reports yourself - that’s genius. Logging into your work computer to open up Alteryx, then having to check the scheduled results before having any peace of mind those reports were delivered without a hitch? Hard.
Welcome to "What's on the Menu", a Knowledge Base series designed to cover many of the options in the Designer menu. In this installment, we will cover the Autosave feature.
Where can it be found?
To recover autosaved files: Go to File > Open Autosaved Files
To change the settings: Go to the 'Advanced' tab under Options > User Settings > Edit User Settings
From my experience, this is something that a lot of people either ignore or don't realize is there. What most people do realize is that for some reason, every one of their workflows has a similarly named copy, but with a .bak extension. The important thing to know is that when you least expect it, this file can become a life saver if something happens to your original workflow, so please don't delete them!
Unbeknown to many, by default Alteryx saves your open workflows every 10 minutes, keeps the last three iterations of them, and keeps them around for 30 days since the last save. As you can imagine, many people are very happy to find this out when they frantically come to Support hoping for some way to resurrect a deleted or corrupted workflow. I have always found Alteryx to be an incredibly stable program, but it is nice knowing that my workflows will still be there in an unfortunate emergency, self-inflicted or otherwise.
Open an Autosaved Workflow
To open an autosaved file, simply go to the menu File > Open Autosaved Files and the following screen will open:
You simply click on the iteration of the workflow that you want to restore and then you have the choice of either opening that workflow or saving it to a directory. If you open the workflow directly from this screen, Alteryx will open up a temporary version of that workflow that you will need to save to an appropriate directory of your choosing.
Edit the Autosave Defaults
To edit the Autosave settings, go to 'Advanced' tab under Options > User Settings > Edit User Settings.
The Autosave options are highlighted in yellow below. As you can see below, you can adjust the interval in minutes that the workflow is saved, how many iterations of the workflow to save and how many days to keep the file.
As you can see, the Autosave feature is very straightforward, while at the same time it can be the most important feature you ever used!
Check it out in our Help too!
Thanks for reading!
If you are un lucky while rendering a map in Alteryx with a Carto base map, you may encounter the error message Error: AGG error loading font (C:\WINDOWS\fonts\C:\Program). This article explains the cause of this error, and how to resolve it.
Question Have you ever wanted your own help page for your custom macros or applications?
Answer If you create your own macros or applications and send them to other who aren’t as familiar with your project, or if you just need a refresher from time to time, you may try and access the help menu only to be greeted by the general Alteryx macros/apps pages:
Macro Workflows Page
Analytics App Workflows Page
You can actually create your own help pages/files that can be accessed how you would normally access the Alteryx Help Menu for any "out of the box" tool that comes with the Designer.
Using your favorite text editor (Microsoft Word, for example), you can create your help file with any instructions or graphics that you feel would be helpful to the end users who may need to access a help file. Once you are done, you can save this in any file format that your (or your users') machine is able to open, as well as any location those users would be able to access (a network drive for example).
In your application or macro’s Interface Designer Properties, there is an option to add the path of a file or hyperlink to your newly created help file.
For an example I created the following help file as a .docx, .pdf, and .htm file type. Each other these files open in their respective default programs.
With the release of 2018.3 comes a very exciting new functionality – workflow caching! Caching can save a lot of time during workflow development by saving data at “checkpoints” in the workflow, so that each time you add a new step to your workflow, it does not need to rerun the workflow in its entirety, rather it can pick up from your last Cache point. There are a couple conditions where tools cannot be selected as cache points, including tools with multiple output anchors, and tools in "circles".
“Unhandled Exception occurred” error is thrown when you copy and paste text (Ctrl-V) using the R Tool.
Now, to witness it happening:
Looking at the error log you will see error message below:
Default Log path - C:\ProgramData\Alteryx\ErrorLogs\AlteryxGUI
If you look at the log, you can see the error is directly related to the FIPS cryptographic algorithms. According to Wikipedia, FIPS stands for Federal Information Processing Standards and it is a “standard developed by the United States federal government for use in computer systems by non-military government agencies and government contractors”.
As of right now, “Unhandled Exception occurred” error will be thrown in the R Tool if FIPS compliance is turned on .
Our Development team is fully aware of the problem with the FIPS compliance and is planning to sort this out in the future releases. As for temporary solution, you can consider turning off the FIPS compliance, of course after checking and making sure your IT manager is okay with it, and this should resolve the “Unhandled Exception occurred” error.
Here’s how you can turn off FIPS compliance:
There are other ways to turn on/off FIPS compliance and you can find them here:
As most of us can agree, predictive models can be extremely useful. Predictive models can help companies allocate their limited marketing budget on the most profitable group of customers, help non-profit organizations to find the most willing donors to donate to their cause, or even determine the probability a student will be admitted into a given school. A well-designed predictive model can help us make smart and cost-effective business decisions.