Welcome to your personalized Keboola Platform Usage Blueprint Document!
This detailed guide helps you create your own documentation, explaining each part and what to include. It’s designed to fit your organization’s specific needs and values. You’ll find helpful notes throughout to make customization easy. Once you’ve added your details, you can remove these notes. Download this file, and start creating documentation matching your organization’s unique requirements!
You can view a sample of the content from the Platform Usage Blueprint document below.
At the start, choose a few people (usually 2 to 4, depending on how big your organization is) to be your Keboola organization administrators. They’ll have the power to set up new Keboola projects and add the first users. It’s best to keep this group small.
Keboola organization admin is a role with permissions to:
Our Keboola organization administrators are:
Usually, Keboola administrators keep a list of all current projects, project owners, and lead project engineers. If you want access to a project, find the project leader on this list and ask them directly. They can use our public guide to add you to the project.
Keep in mind, if you use a single-tenant Keboola deployment with customized identity and access management, such as Active Directory, this process may not apply to you. In that case, describe your organization’s own process.
To join an existing Keboola project, reach out to the project owner directly to invite you to the project. We’ve listed all our current projects below.
Project ID | Name | Description | Owner |
---|---|---|---|
111 | [PROD] Marketing | Production project for marketing campaign automation | Jane Doe; jane@company.com |
Depending on your selection, you might be operating in a multi-tenant Azure (North Europe region), AWS (US or EU regions), or GCP (Europe region) stack, or a dedicated single-tenant stack. The location of the stack determines the base URL that’ll take you to the platform’s UI. Check below for the link that matches your stack:
- Azure North Europe: https://connection.north-europe.azure.keboola.com/admin/
- AWS EU: https://connection.eu-central-1.keboola.com/admin
- AWS US: https://connection.keboola.com/admin
- GCP EU: https://connection.europe-west2.gcp.keboola.com
- Single tenant stack: All relevant information is available within your Production Design document.
Navigate to the login site of the Keboola platform here: https://connection.keboola.com/admin. After you log in, you’ll see a list of projects you can access. Click on the selected project name to access the project environment.
If you wish to develop your own use cases in Keboola, reach out to one of the organization administrators mentioned above to create a project for you.
To have a new project created, contact a Keboola administrator. Organization administrators are the only ones who can set up Keboola projects.
The way to request a new project might vary based on the company size. In larger companies, using a form or questionnaire for project requests is common. This helps give the administrators the extra information they need to create the project.
Terminated users must be manually removed from all projects they are members of. Keboola organization administrators can use telemetry data (see the Keboola Governance Guide for more details) to determine which projects to remove them from.
Or, project owners can remove the terminated user themselves.
Note: Removing a user from a project will not affect any configurations they set up. All their configurations will remain usable and functional after the user is removed.
It is a good idea to establish and follow a convention for creating project names so they are clear and show what the project is about. We suggest some of the typical conventions below. See the Multi-Project Architecture Guide for more on how to name different project levels, stages, etc.
In the following example, we use numerical codes like 00, 10, and 20 to show project levels, but you can also use L0, L1, L2, or other styles.
All projects in our organization follow this naming convention:
[STAGE]{Domain - optional}[Region - optional] Project Name
In the Project Name, we capitalize the first letter of each word, except for conjunctions like “and” and “or.”
Here are examples of how we name projects:
[10]{Sales}[EU] Financial Reporting
[00]{Sales} Corporate Rrofiling
[20]{HR}[GLOBAL] Compensation and Benefits Planning
As mentioned before, a project owner is mainly responsible for managing project users. Keboola has different roles for project users.
The project owner needs to ensure users are added with the right roles. Keboola user roles are documented here. Remember, being a project owner is a formal role and doesn’t directly correspond to specific Keboola project roles and privileges. Usually, users are invited as project admins or with a sharing role unless they need a different one.
To invite or remove a user from your project, follow the steps in the Keboola documentation.
Using naming conventions for all Keboola components is recommended to keep your project well organized, comprehensible, and simpler to manage and navigate. The guidelines below are just suggestions, as there is no universally recognized best practice for naming.
Make sure to apply the naming rules below to all configurations of Keboola components, including data source and data destination connectors, transformations, workspaces, flows, and any other Storage objects you create.
When naming a component (like a data connector or application), include its use case or category and, if relevant, its domain. Start each word in the configuration name with a capital letter.
{Domain}[USECASE - optional] Configuration Name
Examples:
{Sales}[REPORTING] Payments and Invoices
{Operations}[PLANNING] Workloads and Plan
For components with configuration rows, like connectors loading data from a database, name each row after the specific table it connects to. The name should reflect the specific endpoint or domain if it’s an API or service connector.
When naming transformations or optional folders, use a format like [USECASE - optional] Transformation Name
to keep them organized.
Examples:
[REPORTING] Payment Data Preprocessing
[REPORTING] Invoices Denormalization
If transformations are part of a bigger process and run in a set order, add a number to show the sequence:
[REPORTING][00] Payment Data Preprocessing
[REPORTING][01] Invoices Denormalization
[REPORTING][02] Main Report Calculation
Transformations can also be grouped into transformation folders. Name such folders using the following format: [USECASE] Transformation Folder Name
.
Example:
[REPORTING] Financial Reporting
You can name private workspaces however you like. For shared workspaces, use [USECASE]{Owner-optional} Workspace Name
.
Example:
[REPORTING]{Jane} ML Model Development
Flow names need to state their purpose and use case. If flows depend on each other in a project, use the stage signs like in the Transformations section.
You can add a domain if it’s not part of the project. The convention is [USECASE]{Domain}[STAGE] Flow Name
.
Examples:
[REPORTING]{Sales} Main Reporting Calculations
[PLANNING][00] Data extractions
[PLANNING][01] Data normalization
Flows can also be grouped into flow folders. Name such folders using the following format: {Group} Flow Folder Name
.
The {Group}
can be, for example, the Domain
or STAGE
or simply anything that helps to organize your flows.
Example:
{Sales} Financial Reporting
Keep in mind that Storage bucket and table names are automatically created by Keboola data source connectors. The following naming conventions are for objects you create yourself.
For Storage buckets, tables, and columns:
SNAKE_CASE
naming.OUT
buckets for temporary tables. OUT
buckets should only have data that’s ready to use. See Keboola’s documentation for more on IN and OUT Storage buckets here.SHARED
, like SHARED_REPORTING_FINANCIAL
.MAIN
, use something descriptive like SALES_METRICS
. Even in specific projects, use SALES_MAIN
rather than just MAIN
.Every component configuration, transformation, or flow should briefly explain (in two or three sentences) its role in the data flow. Here are some tips:
Keep in sync with the [original transformation](https://connection.keboola.com/admin/projects/xx/transformations/bucket/1234/transformation/1)
.This depends on your multi-project architecture. Here’s a guide for a system with multiple project layers.
Only users with organization admin
or share
role permissions can share buckets.
As a rule, avoid sharing data from higher to lower stages/layers. Limit sharing within the same stage/layer unless necessary.
In the example below, we use levels 00, 10, 15, and 20 as equivalents to L0, L1, L15, and L2.
Sharing from level 00
OUT
stage buckets. Share tables into the output buckets using table aliases if no transformation is needed.Sharing from level 1+
OUT
stage buckets. Share tables into the output buckets using table aliases if no transformation is needed.Sharing from level 20
Linking buckets
IN
stage, prefixed with SHARED
and a reference to the input project.Development branches are separate areas for independently developing or modifying configurations for a specific purpose. Changes made within a branch become accessible to other branches or projects only after they are merged into production.
Some users implement changes in development branches but create new configurations directly in the production branch. Others might not use branches, depending on their internal rules.
When creating or modifying configurations, use a development branch. Name it {Owner}[USE-CASE] Branch Name
to show its purpose, like
{Jane}[FINANCIAL REPORTING] New MSSQL data integration
.
Run components like data source connectors, applications, and transformations in the development branch first to test them.
Be careful with data destination connectors, as they can still overwrite production data.
Include your organization’s specific security principles here. The platform might not directly enforce some, but Organization admins can monitor them using telemetry data.
Here are some of the commonly followed principles:
For organizations with multiple projects, creating a dedicated admin project is helpful. This is a central hub for administrators to manage and analyze telemetry data. Find more details in the Keboola Governance Guide.
Our admin project link: https://connection.keboola.com/admin/projects/XXX
The project extracts the organization’s telemetry data and prepares it for visualization and reporting.