Voyager's Python Requirements

Voyager Server and Vose require Python to deliver important functionality.This is a brief summary of Voyager's specific Python requirements. 

Installing Python

Current versions of Voyager Server and Vose do not install Python on your system. Installing Python is only a pre-requisite if you plan to do the following:

  • Run any of the processing tasks

  • Add Database Advanced locations in Voyager Server, for example

    • ArcGIS Server

    • ArcGIS Online

    • ArcGIS Geodatabase

    • MySQL

    • SQL Server

    • Oracle

    • Mongo DB

    • Dynamo DB

  • Use and create Python pipeline steps in both Voyager Server and Vose

Python Versions

Voyager Server requires a 32-bit version of Python 2.7, which can be downloaded here.  At the time this document was created, the latest version is 2.7.15.

If you are running ArcGIS for Destkop, Python is likely already installed.  

  • If Voyager and ArcGIS are installed on the same machine, there is no need to install Python, as both use 32-bit Python 2.7

  • If Voyager and ArcGIS Pro are installed on the same machine, Voyager's Python functions will not work, as ArcGIS Pro installs a 64-bit version of Python 3.6

While Python itself is not automatically installed, a large number of third-party 32-bit Python 2.7 libraries are included with Voyager and can be found in the \app\arch\win32_x86\py folder in the Voyager installation directory. These libraries are used by processing tasks, pipeline steps and connectors. To install additional libraries, we recommend using pip, which is included with newer versions of Python.

  • For more information about pip and Python 2.7, go to this page

  • For more information about pip and Python 3.6, go to this page

Python and Processing Tasks

Voyager Server includes a large set of out-of-the-box processing tasks for extracting data, managing data, creating maps and generating reports. Using Python, new tasks can be created to meet user requirements.

Python and Connectors

Voyager includes Connectors that it uses to scan a variety of databases using Python. These connectors can include some or all of the tables in a database. 

Python and Pipeline Steps

Voyager's Indexing Pipeline provides functions to add, transform and manipulate properties of data records as it adds them to the Index. You can also create custom pipeline steps using Python.

Python and Natural language processing (NLP)

Voyager can use NLP to help find the most-relevant search results, and this functionality can be included in a pipeline step that uses Python.

Python and Extractors

During indexing, Extractors open data files and extract additional information before adding items to the Index. Extraction might involve reading text from a Word document or metadata tags from an image file. Voyager chooses the extractor based on the format (mime type) of the data. An Extractor can often operate on multiple related file types, and a particular type of file may have more than one associated Extractor.

You can create new Extractors using Python.

Python and Vose

Vose is Voyager's newest product, consisting of 

  • HQ, a central control panel for searching and administration

  • Distributed Indexing Agents

  • The Flex Index, based on SolrCloud

To learn more about Vose, see Introducing Vose

While Vose 1.0 supports using Python to create new connectors and pipelines, Python is not part of the Vose installation. Unlike Voyager Server, Vose does not require a specific version of Python, but we recommend using the latest 64-bit version of Python 3 when creating custom connectors and pipelines.