-
Can I modify, publish, transmit, transfer or sell, reproduce, create derivative works from, distribute, perform, display, or in any way exploit any of the content, in whole or in part?
-
You may do all this in accordance to the license only. KNIME is available under a dual licensing model. A version under an open source license is available for download from this website. If you need other license terms, please contact us. Please refer to the license for more information about the terms of the open source license.
-
How much data can I process with KNIME?
-
Basically, there are no limits, since the data is buffered in an intelligent way. Nevertheless, some algorithms may require too much time and memory for very huge datasets.
-
I'm getting errors like java.lang.OutOfMemoryError: PermGenSpace. What is wrong?
-
This is a known bug in Sun's Java, which occurs if a lot of classes are loaded. This sometimes occurs in KNIME/Eclipse if you have a lot of, or huge plugins. A workaround is to pass the option
-XX:MaxPermSize=128m to the Java command. The KNIME product is already using this setting by default. You can also try another Java implementation, such as those from IBM or BEA.
See also Eclipse's and Sun's bug reports.
-
How can I increase the Java Heap Space for KNIME?
-
In the KNIME installation directory there is a file called knime.ini (under linux it might be .knime.ini). Open the file, find the entry
-Xmx512mand change it to -Xmx1024mfor example. You may also consider to change the -XX:MaxPermSize=128moption and increase it to 256mor even 512m, depending on your computer's main memory. Note, that you main memory must be at the very least the sum of both values. (See also the answer for rarely observed problems while increasing heap space under Windows).
If you use the developer version you have to edit the run configuration:
"Run -> "Open Run Dialog..." -> tab "Arguments" -> field VM arguments -> enter -Xmx1024M.
-
I cannot start KNIME on Windows, I do not even see a splash screen? How do I make it work?
-
If you do not even see the KNIME splash screen the system fails to create the Java VM. We observed this problem on a few computer systems. It seems that the anti-virus software Kaspersky prohibits the Java VM to allocate enough memory (http://forum.kaspersky.com/index.php?showtopic=73177). Thus, there are two workarounds:
-
Try to uninstall the Kaspersky components Anti-Dialer and Anti-Spam as proposed in this forum thread, or
-
open the knime.ini file in the installation directory and enter smaller values for the
Xmxand the XX:MaxPermSizeoptions.
-
I extracted the UpdateSite.zip (or parts of it) into the KNIME installation folder, but the new nodes do not appear in the Node repository.
-
With Eclipse 3.4 the mechanism how features/plugins are managed has drastically changed (the magic keyword is "p2"). One of the major implication for users is, that they cannot install new features/plugins (i.e. nodes) by just copying the plugins and/or features into the corresponding directories of the Eclipse/KNIME installation. Instead, they must be installed via the Update Manager. One workaround for plugins for which there exists no feature is the dropins folder that Eclipse scans upon each startup. But please use this only if anything else fails! The recommended way is using the Update Manager with the KNIME Update Site or the zipped version of it.
-
Is it possible to include data files in the workflow so that the, e.g. File Reader is immediately executable on a different system, where the source file is not available?
-
Yes. This feature was added in KNIME v2.2.0. You will need to physically copy the file into a dedicated "drop" directory in the node folder (part of the workflow). KNIME will index this folder and make all files in this "drop" folder available as node-local flow variables in URL syntax. Here are the steps:
-
Create a workflow containing a file reader (or SDF reader or whatever you like to use) and point the reader to the file you want to read.
-
Save the workflow.
-
Use your system file browser and go into the corresponding workflow directory, e.g. <workspace>/KNIME_Project/File Reader (#1)/.
-
Create a folder "drop" in this directory and copy the target file here.
-
Switch back to KNIME and make sure that the node configures at least once (e.g. if the node was executed, reset it, or if the node was configured, open the dialog and close the dialog by pressing ok).
-
Open the dialog of the node, switch to the "Flow Variables" tab and choose the variable representing the drop file (e.g. "knime.node (drop) <file url>) in the corresponding combo box.
The file is now part of the workflow and will be included in the exported workflow unless you explicitly choose to exclude the data from the workflow.
-
-
The Node Description window doesn’t work on Linux; it displays the error "System browser cannot be initialized. No node description will be displayed."
-
KNIME uses the SWT browser widget to display HTML content. This widget requires a proper web browser to be installed. Under Linux Mozilla XULRunner is used. Usually xulrunner is present if the Firefox web-browser is installed. This error message can have two causes:
-
Some recent Linux distributions (e.g. Ubuntu 11.10 or Fedora 16) ship with an incompatible version of XULRunner (Eclipse only support versions 1.8 and 1.9). If KNIME detects an incompatible version it will disable it altogether because otherwise KNIME may crash. Since the distributions do not offer offical packages for older version of XULRunner, the KNIME Update Site contains a feature called KNIME XULRunner binaries for Linux. If installed, KNIME will use this local XULRunner if no compatible version exists in the system. In order to install this feature you must disable the "Group items by category" option in the installation dialog and search for the feature.
-
Some distributions require the installation of a separate package, e.g.
mozilla-xulrunner(OpenSuSE) or simply xulrunner(e.g. Fedora). After installation, KNIME should pick the xulrunner upon restart. If that does not work for any reason, you may want to try to add a line to the the knime.ini file contained in the KNIME directory. This line should read as:
-Dorg.eclipse.swt.browser.XULRunnerPath=<location_to_xulrunner>
For more details on web browser requirements, see the SWT FAQ.
-
When copying Meta nodes such as Cross Validation or Meta Nodes x:x the inner nodes are not copied.
-
This is a known issue for all meta nodes in KNIME 1.3.5 and before. These KNIME versions do not copy the internal workflow of metanodes because of potential index conflicts. A workaround is to create a new meta node of the same type and subsequently copy the internals of the meta node separately. This problem is fixed as of 2.0.
-
Is there any way to run KNIME in batch mode, i.e. only on command line and without the graphical user interface?
-
There is a command line option allowing the user to run KNIME in batch mode. To see a list of possible arguments execute the following line on a command prompt (for Linux):
knime -nosplash -application org.knime.product.KNIME_BATCH_APPLICATION
On Mac the knimeexecutable is not directly located in the KNIME application directory but in the knime.app/Contents/MacOS/subfolder. Besides this the command line usage is the same as in Linux. If you have copied KNIME, for example, into your /Applicationdirectory it can be invoked like this:
/Applications/knime/knime.app/Contents/MacOS/knime -nosplash -application org.knime.product.KNIME_BATCH_APPLICATION
On a Windows system, you need to add two more options to enable system messages (by default any message to System.out is suppressed):
knime.exe -consoleLog -noexit -nosplash -application org.knime.product.KNIME_BATCH_APPLICATION
The -consoleLogoption causes a new window to be opened containing the log messages and -noexitwill keep the window open after the execution has finished - you will need to close the window manually, and, unfortunately, an error message is produced from the Java process, which, however, you can safely ignore. (If you happen to find out how this procedure can be avoided or simplified, please let us know.) Windows users: please remember to add these two options to the command line examples below in order to see KNIME's output messages.
In order to run a (pre-configured) workflow, say Knime_project, contained in the workspace directory, execute (in one line)
knime -nosplash -application org.knime.product.KNIME_BATCH_APPLICATION
-workflowDir="workspace/Knime_project"
It's also possible to change the configuration of the workflow through workflow variables. If you create a workflow variable, say parameter of type Integer, configure a node in the workflow so that it uses the value of the variable where you want the user to parameterize the node. If you run the workflow now in the batch mode, you can specify the -workflow.variable=name,value,typeoption to set a new value before the flow gets executed. For example, to set the value 5 to the parameter integer variable, call the batch executor like this:
knime -nosplash -application org.knime.product.KNIME_BATCH_APPLICATION
-workflow.variable=parameter,5,int
-workflowDir="workspace/KNIME_project"
-
The workspace is empty how do I create a new project?
-
In the Navigator view (left top window) right-click and select "New", then "New KNIME Project". Provide a name for this new project and click the OK button.
-
The Node Repository shows only a few nodes (or none at all) - is that all?!?
-
Did you enter anything in the search field of the Node Repository view? Click into the edit field at the top of that view and press ESC. This should return all nodes included in the installation. If this doesn't help, your installation might be corrupt.
-
Under Linux I cannot see the table in the output port view, the window shows only blank content. What is wrong here?
-
This is very likely a problem with the Compiz OpenGL window manager (Bug report at Sun). Other effects may be empty sub-dialogs, e.g. in the File Reader. You have to switch off Compiz in this case. Another workaround has been posted here, but
we haven't tested it ourselves. For the Non-Germans you have to
-
Install the libXP package, by e.g.
yum -y install libXp.
-
Add
export AWT_TOOLKIT=MToolkitto your ~/.bashrc (or whatever
file your shell executes upon startup).
-
I am running Fedora 10 using the Gnome window manager. The KNIME main application works as expected but as soon as I open a view or a dialog, this panel does not get repainted. Why?
-
That seems to be a java swing / swt problem. It seems as if the libgxim package causes this problem, i.e. if you uninstall that package (and all its dependencies) the panel will get properly painted.
-
How can I force KNIME to cache any intermediate data to disk in order to reduce memory usage?
-
The framework has no absolute control on memory usage of individual nodes, though it can control the amount of data in each node's output that is to be kept in main memory. This memory policy can be controlled in a node's dialog in the tab "General Node Settings". There are three different policies available: The first one ("Keep all in memory") enforces KNIME to leave all data that is generated by the respective node in main memory, the second option ("Write tables to disc") writes all data to disk immediately, the third one ("Keep only small tables in memory") is a heuristic to automatically switch between the first two items depending on the data size. Each of these options has pros and cons, e.g. keeping all data in memory allows for fast iterations on this data but increases memory usage.
The "Keep only small tables in memory" option is the default and of special interest. It uses a threshold value for the number of cells contained in a table (i.e. row count multiplied by column count) to decide whether to keep data in memory or on disk. This threshold defaults to 100 000 cells. If that is inappropriate in your setup (for instance because your cells tend to be large strings), you can change the default. This can be done using a java property that is passed either as command line argument or as part of the knime.ini file that is located in the installation directory. (Note: changing the configuration file is preferred over the additional command line argument since any command line argument instructs knime (more precisely the underlying eclipse) to ignore all entries in the configuration file).
Add the following line after the -vmargs line in the knime.ini file to keep at most 1000 cells in memory (you can choose a different value, even 0 in which case it always swaps to disk):
-Dorg.knime.container.cellsinmemory=1000
You can verify if this setting has been picked up by either looking at the log file or inspecting the tooltip that is shown when hovering over the "Keep only small tables in memory" option in any node.
-
I am getting an OutOfMemoryError when reading from a database using the Database Reader or Database Connection Reader node. What can I do?
-
For some databases KNIME fails to read huge amounts of data from them. Increasing the heap space inside the knime.ini (Xmx) sometimes solves the problem, but does not really solve the memory issues which is caused by a parameter called database "fetch size". Generally different databases use different fetch sizes, see for details. This parameter can be changed for KNIME by appending the following option to the knime.ini file: -Dknime.database.fetchsize=1000, for an example. With this option, the database nodes only fetch the given number of rows into the database ResultSet. We also recommend using the Database Connector together with the Database Row or Column Filter nodes or Database Query node to make the filtering inside the database and only read the desired data into KNIME at the end using the Database Connection Reader node.
-
I'd like to change KNIME's default configuration on the Mac but can't see the knime.ini. Where is it located?
-
The Mac version of KNIME has a different directory structure than the other versions. On the Mac the contents of an application are hidden from the user by default. To edit the knime.ini you have to navigate to your KNIME installation directory, right click on "knime.app" and choose "Show Package Contents". This will open another finder window where you will find the knime.ini under "Contents" -> "MacOS". By the way this is also the location where the knime executable is located if you want to launch KNIME from the terminal.
-
How do I connect to my Microsoft Access database?
-
Two setups without registering additional JDBC-driver are possible, (1) directly connect to the MS Access database using KNIME, or (2) register a database source in the system configuration. In the first case, one needs to enter the database URL as jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\\database.accdb within the Database Reader/Connector node dialog. In the second, the database needs to be registered with the system properties under adminstration (JDBC/ODBC sources). In KNIME, the identifier can diretly be used in KNIME to connect to the specified database, for example jdbc:odbc:DATABASE_ID.
-
Menu doesn't appear on Ubuntu with Unity desktop
-
This problem appears to be an official Eclipse bug reported under id: 330563. The workaround reads as export UBUNTU_MENUPROXY=0 adding this before the application, KNIME, is launched.
-
KNIME problems with Java 1.6.0_29 on Mac
-
At first: If you did not install "Java for Mac OS X 10.7 Update 1" or the "Java for Mac OS X 10.6 Update" containing Java 1.6.0_29 , you are fine. If you did install it already, this manual shows you how to start KNIME with Java 1.6.0_26.
-
In your (hopefully existing) backup of your system there is a folder "/System/Library/Java/JavaVirtualMachines/1.6.0.jdk". This folder contains the necessary jdk. Copy it to anywhere on your hard disk (e.g. into the KNIME installation directory).
-
Download the attached knime.sh script and extract it into your KNIME installation directory (e.g. /Applications/knime).
-
Create a soft link named "jre" in your KNIME installation directory linking to the subdirectory "Contents/Home" of your copied JDK by invoking
ln -s <1.6.0.jdk-DIR>/Contents/Home jre
in the Terminal and launch KNIME by invoking
./knime.sh
Please see the discussion in the forum for more details. Note, this problem has been resolved with KNIME v2.5.4.
-
I cannot update/install additional extension or access the example workflow server because I am behind a firewall.
-
In both cases you need to configure a proxy in Eclipse. For updating or installing new extensions from an update site you need to configure an HTTP proxy, for accessing the example workflow server you must have a SOCKS proxy (ask your system administration for details on how to access the proxies). Both can be configured via File → Preferences → General → Network Connections. As Active Provider select Manual and then edit the entries for HTTP and/or SOCKS in the table below. You need to enter the proxy's name or IP address as well as the port number. If your proxy requires authentication also provide the login credentials.
-
In case you do not have a proxy, you can also download the complete update site as a ZIP file and use this as an archived update site. The example workflows can alternatively be downloaded as a single ZIP file and subsequently be imported via File → Import KNIME workflow.