On an enterprise-level big data platform, we recommend that you create MaxCompute projects for data at the operational data store (ODS), data warehouse detail (DWD), and data warehouse service (DWS) layers by business unit. For data at the application data service (ADS) layer, we recommend that you create MaxCompute projects by application.

Allocate projects

In this tutorial, we recommend that you create MaxCompute projects. Each square in the figure represents a project.
  • To create projects for data at the ODS layer, use ods as the suffix, for example, asaleods.
  • To create projects for data at the common data model (CDM) layer, use cdm as the suffix, for example, asalecdm.
  • Data at the ADS layer is categorized into the following two types:
    • To create projects for data reports and data analysis, use bi as the suffix, for example, asalebi.
    • To create projects for data product applications, use app as the suffix, for example, asaleapp.

This tutorial focuses on the business process of receipt confirmation, where a transaction is successful, in the e-commerce marketing business unit. You can create a project separately for the ODS, CDM, and ADS layers.

Select a project mode

In standard mode, a DataWorks workspace corresponds to two MaxCompute projects. One project serves as the development environment, and the other serves as the production environment. The standard mode can standardize code development and strictly control table permissions. It imposes limits on table operations in the production environment to ensure data security.

When you create a workspace in DataWorks, we recommend that you use the standard mode to ensure data security in the production environment. After a workspace is created in DataWorks, you can get a project that serves as the production environment and a project that serves as the development environment and has its name ended with _dev. for example, the asaleods and asaleods_dev projects.

Configure project permissions

You need to grant different roles in a project different permissions. For example, you must consider which members can have access to production nodes, which members can edit and debug code, and which members can commit production nodes. In addition, you need to grant permissions to roles that need to use resources during data development, and ensure that data is isolated in a secure manner.