Working in projects
A project is a collaborative workspace where you work with data and other assets to accomplish a particular goal.
Your project can include these types of resources:
- Collaborators are the people who you work with in your project.
- Data assets are what you work with. Data assets often consist of raw data that you work with to refine.
- Tools and their associated assets are how you work with data.
- Environments are how you configure compute resources for running assets in tools.
- Jobs are how you manage and schedule the running of assets in tools.
- Project documentation and notifications are how you stay informed about what's happening in the project.
- Asset storage is where project information and files are stored.
- Integrations are how you incorporate external tools.
- Services are how you add tools or processing power to your project.
- Catalogs are how you share assets between projects.
You can customize projects to suit your goals. You can change the contents of your project and almost all of its properties at any time. However, you must make these choices when you create the project because you can't change them later:
- Whether to restrict eligible collaborators to your company's employees, or members of your IBM Cloud account.
- Whether to enable catalog access by restricting collaborator eligibility.
- The instance of IBM Cloud Object Storage to use for project storage.
Collaboration in projects
As a project creator, you can add other collaborators and assign them roles that control which actions they can take. You automatically have the Admin role in the project, and if you give other collaborators the Admin role, they can add collaborators too. See Adding collaborators and Project collaborator roles.
When you create a project, you can control who is eligible to be added as collaborators:
- Restrict who is eligible to be added as a collaborator to people who are internal to your organization by selecting the Restrict who can be a collaborator checkbox. When you select this option, you can add only members of your IBM Cloud account, or, if your company has SAML federation set up in IBM Cloud, employees of your company. This option also allows access to catalog assets from the project. If you have Watson Knowledge Catalog, this option is selected by default.
- Allow anyone to be added as a collaborator. If necessary, clear the checkbox.
This setting is permanent. You can't change it after you create the project.
Collaboration on assets
Assets are locked during editing to prevent conflicts between changes made by different collaborators. All collaborators work with the same copy of each asset. Only one collaborator can edit an asset at a time. While a collaborator is editing an asset in a tool, that asset is locked. Other collaborators can view a locked asset, but not edit it. See Managing assets.
You can add these types of data assets to projects:
- Data assets from local files, catalogs, or the Gallery
- Connections to cloud and on-premises data sources
- Connected data assets from an existing connection asset that provide read-only access to a table or file in an external data source
- Imported data assets from an existing connection asset that provide read-only access to a table or a file in an external data source
- Folder data assets to view the files within a folder in a file system
Learn more about data assets:
Tools and their associated assets
When you run a tool, you create an asset that contains the information for a specific goal. For example, when you run the Data Refinery tool, you create a Data Refinery flow asset that defines the set of ordered operations to run on a specific data asset. Each tool has one or more types of associated assets that run in the tool. Some types of assets can run in more than one tool, for example, notebook assets. Assets that run in tools are also known as operational assets.
For a mapping of assets to the tools that you use to create them, see Asset types and properties.
The tools that you can use in a project depend on the services that you have. To see which tools you use in a project and which services those tools require, open the tools and services map.
Environments control your compute resources. An environment template specifies hardware and software resources to instantiate the environment runtimes that run your assets in tools.
Some tools have an automatically selected environment template. However, for other tools, you can choose between multiple environments. When you create an asset in a tool, you assign an environment to it. You can change the environment for an asset when you run it.
Watson Studio includes a set of default environment templates that vary by coding language, tool, and compute engine type. You can also create custom environment templates or add services that provide environment templates. For example, you can associate the IBM Analytics Engine service to your project to provide extra compute power.
The compute resources that you consume in a project are tracked. Depending on your offering plan, you have a limit to your monthly compute resources or you pay for all compute resources.
A job is a single run of an asset in a tool with a specified environment runtime. You can schedule one or repeating jobs, monitor, edit, stop, or cancel jobs. See Jobs.
Each project has a dedicated, secure storage bucket that contains:
- Data assets that you upload to the project as files.
- Data assets from files that you copy from another workspace.
- Files that you save to the project with a tool.
- Files for assets that run in tools, such as notebooks.
- Saved models.
- The project readme file and internal project files.
When you create a project, you must select an instance of IBM Cloud Object Storage or create a new instance. You cannot change the IBM Cloud Object Storage instance after you create the workspace. See Object storage.
When you delete a project, its storage bucket is also deleted.
You can associate more services with a project to add tools, compute environments, or other functionality. See Adding associated services.
Integrations with external tools
Integrations provide a method to interact with tools that are external to the project.
You can integrate with a Git repository to publish notebooks.
Project documentation and notifications
While you create a project, you can add a short description to document the purpose or goal of the project. You can edit the description later, on the project's Settings page.
You can mark the project as sensitive. When users open a project that is marked as sensitive, a notification is displayed stating that no data assets can be downloaded or exported from the project.
The Overview page of a project contains a readme file where you can document the status or results of the project. The readme file uses standard Markdown formatting. Collaborators with the Admin or Editor role can edit the readme file.
You can view recent asset activity in the Assets pane on the Overview page, and filter the assets by selecting By you or By all using the dropdown. By you lists assets that you edited, ordered by most recent. By all lists assets that are edited by others and also by you, ordered by most recent.
All collaborators in a project are notified when a collaborator changes an asset.
A catalog is a central repository for assets where you can easily find and share data and other assets. Before you can access a catalog, a catalog administrator must add you as a catalog collaborator. A catalog has the same type of roles as a project. With any catalog role, you can copy assets from the catalog into a project to use them. With the Editor or Admin role in the catalog, you can create assets in a project and then publish them into the catalog.
If you want to access catalogs in a project, you must select the Restrict who can be a collaborator option when you create the project. This setting keeps the company data in your catalog secure. You can't enable catalog integration in a project after creation. See Collaborator eligibility.