Realtime Compute for Apache Flink structure ses ressources et ses opérations autour de concepts fondamentaux. Cette rubrique définit chaque concept et explique leurs relations pour vous aider à planifier la configuration de votre espace de travail, configurer les namespaces, déployer des jobs et gérer les accès.
Hiérarchie
Le diagramme suivant illustre l’organisation des concepts principaux : de l’espace de travail et du namespace au sommet, en passant par le déploiement et le job, jusqu’aux connecteurs, aux fonctions et aux catalogs qui assurent le traitement des données.
Consoles
Realtime Compute for Apache Flink propose deux consoles aux rôles distincts.
| Console | Objectif | Cas d’utilisation |
|---|---|---|
| Management Console | Portail centralisé pour la gestion du cycle de vie des espaces de travail et des namespaces. Créez, libérez et reconfigurez des espaces de travail ; clonez des namespaces pour une migration ou une extension. | Configurez l’infrastructure : création d’espaces de travail, ajustement des ressources de calcul ou duplication d’un namespace vers un nouvel environnement. |
| Development Console | IDE dédié à chaque espace de travail pour le développement et l’exploitation (O&M) des jobs Flink. Basculez entre les namespaces, écrivez et déboguez du code, surveillez les jobs en cours d’exécution et gérez le contrôle d’accès, le tout depuis une seule interface. | Développez au quotidien : rédigez des brouillons SQL ou YAML, lancez des déploiements, surveillez l’état des jobs et gérez les permissions des namespaces. |
Espace de travail et namespace
Les espaces de travail et les namespaces constituent l’ossature organisationnelle de Realtime Compute for Apache Flink.
| Concept | Description | Finalité |
|---|---|---|
| workspace | Unité de gestion de base pour les namespaces de Realtime Compute for Apache Flink. Chaque espace de travail est un environnement indépendant disposant de ses propres ressources de calcul dédiées. | Isole les environnements de calcul — par exemple, des espaces de travail distincts pour différentes unités commerciales ou produits. Chaque espace de travail possède sa propre Development Console indépendante. |
| namespace | Unité de gestion des brouillons et des déploiements au sein d’un espace de travail. Chaque namespace dispose de ses propres configurations, brouillons, déploiements et permissions, gérés de manière indépendante. | Isole les ressources et les permissions entre locataires ou équipes au sein d’un même espace de travail. Créez des namespaces séparés pour appliquer des limites d’accès sans avoir à provisionner un nouvel espace de travail. |
Un espace de travail contient un ou plusieurs namespaces. Les brouillons et les déploiements appartiennent toujours à un namespace spécifique.
Tâches associées : Créer un espace de travail | Gérer les namespaces | Reconfigurer les ressources
Brouillon et déploiement
Les brouillons et les déploiements représentent deux étapes du cycle de vie d’un job Flink.
| Concept | Description | Contraintes principales |
|---|---|---|
| draft | Script SQL ou YAML créé et modifié dans la Development Console. | Vous ne pouvez créer des brouillons que via la console, et non par le biais des SDK. |
| deployment | Unité exécutable créée à partir d’un brouillon ou d’un package JAR ou Python téléchargé par l’utilisateur. Les déploiements permettent d’isoler les environnements, tels que le développement et la production. | La modification d’un brouillon après le déploiement n’affecte pas l’instance de job en cours d’exécution. Vous pouvez créer et gérer les déploiements via la Development Console ou les SDK. |
Un brouillon constitue votre source modifiable, tandis qu’un déploiement correspond à la version en cours d’exécution. Toute modification apportée au brouillon après le déploiement n’affecte pas le job actif ; vous devez redéployer pour appliquer les changements.
Tâches associées : Carte de développement des jobs | Déployer un job
Job
Un job est une instance en cours d’exécution d’une charge de travail exécutée dans un déploiement. Les jobs possèdent des propriétés de streaming ou de batch déterministes, définies au moment du déploiement et figées pour toute la durée de vie du job.
Ressources et files d’attente
Ressource
La facturation de Realtime Compute for Apache Flink repose sur des unités de calcul (CU). Une CU offre :
1 cœur CPU
4 Go de mémoire
20 Go de stockage local (pour les journaux et les points de contrôle)
Le nombre de CU consommées par un déploiement dépend de trois facteurs : le nombre de requêtes par seconde (QPS) des flux de données entrants, la complexité de calcul du job et la distribution des données d’entrée. Planifiez l’allocation de vos CU en fonction de l’échelle prévue de votre charge de travail.
Tâches associées : Présentation de la facturation | Configurer les ressources des jobs | Gestion des tags
File d’attente
Une file d’attente est une partition de ressource que vous assignez aux déploiements. Utilisez les files d’attente pour mettre en œuvre l’isolement et la gestion des ressources.
Tâche associée : Gérer les files d’attente de ressources
Traitement des données
Connecteur
Les connecteurs intègrent Realtime Compute for Apache Flink aux magasins de données amont et aval, permettant la lecture et l’écriture de données pour les pipelines de synchronisation. Le service fournit un ensemble de connecteurs intégrés et prend également en charge les connecteurs personnalisés téléchargés sous forme de packages JAR.
Référence : Connecteurs pris en charge
Fonction
Les fonctions étendent la logique de traitement SQL au sein des jobs Flink. Realtime Compute for Apache Flink fournit des fonctions intégrées et prend en charge les fonctions définies par l’utilisateur (UDF) pour une logique personnalisée.
Références : Présentation des fonctions de fenêtrage | Présentation des fonctions intégrées | UDF
Catalog
Un catalog stocke les métadonnées utilisées par les jobs Flink pour découvrir et interroger les données, y compris les bases de données, les tables, les champs, les partitions et les données stockées dans les bases de données ou d’autres systèmes externes. La gestion des catalogs est une étape cruciale lors de la configuration des pipelines de données.
Référence : Gestion des données
Contrôle d’accès
Rôle
Un rôle est un ensemble nommé de permissions. Assignez des rôles aux utilisateurs pour accorder un accès cohérent au sein d’un namespace. Un utilisateur peut détenir plusieurs rôles et plusieurs utilisateurs peuvent partager le même rôle. Toute modification de permission appliquée à un rôle s’applique à tous les utilisateurs auxquels ce rôle est assigné.
Référence : Accorder des permissions à un rôle RAM
Membre
Un compte Alibaba Cloud ou un utilisateur RAM devient membre lorsqu’il est ajouté à un namespace. Les membres ne peuvent gérer les données, les brouillons, les déploiements, les ressources et les fonctions au sein de ce namespace qu’après avoir été ajoutés et avoir reçu les permissions appropriées.
Référence : Autorisation de la Development Console
Étapes suivantes
Présentation des consoles — Explorez en détail la Management Console et la Development Console.
Créer un espace de travail — Configurez votre premier espace de travail.
Carte de développement des jobs — Suivez le parcours complet, du brouillon au job en cours d’exécution.
Clonage de projet — Clonez un namespace pour étendre ou migrer votre configuration.