Two actions (“Import dataset” and “Export dataset”) can use both Server Link or a connector in order to connect to EasyMorph Server. What’s the difference between the two?
What is Server Link
While Server Link looks like a connector, it’s a different animal which serves a different purpose. Server Link is a Desktop property that links Desktop to Server, or in other words, makes Desktop “aware” of Server. The purpose of Server Link is to integrate Desktop and Server. This integration simplifies several operations:
- Publishing datasets from Desktop to Server in 2 clicks (right-click any action and choose “Send to Server”)
- Receiving datasets from Server to Desktop in 2 clicks (choose “Retrieve dataset” from the “Add data” menu" on the toolbar or the Start screen)
- Publishing projects to Server
- Opening projects from Server
- Using connectors hosted on Server in Desktop (and Launcher)
- (in the future) obtaining a license for Desktop from Server
Server Link is independent from the current repository. You can switch to another repository, but the integration between Desktop and Server will keep working, if Server Link is configured.
How Server Link is configured
Unlike connectors that are configured and stored in a shared repository (or embedded in a project), Server Link is configured right in Desktop, on the Start screen. It’s not stored in repository and can’t be shared with another Desktop.
When Server Link is configured to work with multiple spaces, Desktop works with only one space at any moment. This space is the current space. All the integration features above will connect to that space. The current space can be switched on the Start screen.
Desktop can have several Links pre-configured, each Link with its own set of spaces. It helps switching between dev and prod environments, for instance. However, at any point of time, Desktop is linked to only one Link and one space which is considered the current space.
For a team of users, it is recommended to have Server Links configured for each user’s Desktop. When users have Server Link configured, they can collaborate by exchanging even very large datasets via Server, exchanging projects, and hot-linking datasets (more on that below).
Hot-linking data on Server
Server Link makes it easy to publish datasets on Server, and make a project load them dynamically on opening using the “Import dataset” action with Server Link. This is different from Excel spreadsheets where data and calculation logic is packed into one file. If a spreadsheet is sent to an unauthorized person it may lead to sensitive data leak.
EasyMorph projects don’t contain data, only a calculation model. If a dataset is hot-linked in a project using the “Import dataset” action, the data is loaded automatically when a project is opened in Desktop assuming that the user has Server Link configured and is authorized to connect to the necessary space.
Hot-linking data on Server instead of keeping it in projects also makes it possible to use 3rd party version control systems (e.g. git, SVN) for EasyMorph projects.
Does hot-linking work on Server?
Yes, it does. While Server Link is exclusively a Desktop feature, nevertheless, a project with hot-linked datasets can be run on Server too. In this case, hot-linking would assume that the space in which the project is executed is the current space and will try to hot-link necessary datasets in that space.
All-in-all, Server Link simply means “the current Server space”.