The original product line (Blink-based Realtime Compute) of Alibaba Cloud Realtime Compute for Apache Flink supports two service modes: exclusive mode and shared mode. The exclusive mode provides more features than the shared mode. This topic describes the benefits of the two modes and their differences.
Shared mode (phased-out)
In exclusive mode, an independent computing cluster is created on an Alibaba Cloud Elastic Compute Service (ECS) instance. A single user can exclusively use physical resources such as networks, disks, CPUs, and memory in the computing cluster. The resources of the user are isolated from those of other users. Compared with the shared mode, the exclusive mode provides the following benefits:
- Adaption to various hardware
Leverages the capabilities of Alibaba Cloud in hardware-specific optimization such as CPU-to-memory ratio and GPU or FPGA. This solves hardware adaptation issues.
- Isolation between users
Allows you to use a VPC and exclusive computing resources. In addition, you can connect your development platform to the VPC to meet your business requirements.
- Support for UDFs
Isolates your network and physical machines from those of other users. This way, you can use UDFs and underlying APIs to meet your business requirements. For more information about UDFs, see UDX overview.
- Rich features
- Extract, transform, load (ETL) in a data lake: You can use Flink SQL and UDFs to develop ETL tasks.
- Computing of heterogeneous data sources: Data can be read from heterogeneous data sources for analysis. For example, Realtime Compute for Apache Flink can read archived logs from Object Storage Service (OSS) buckets and associate the logs with high-risk IP addresses in an ApsaraDB for HBase database to analyze web attacks.
- Multiple upstream and downstream data stores are supported, such as Create a Kafka source table and Create a result table of Alibaba Cloud Message Queue for Apache Kafka.
- Adaption to various hardware
- Architecture of Realtime Compute for Apache Flink in exclusive mode
- For Realtime Compute for Apache Flink in exclusive mode, all your purchased ECS instances are hosted in the VPC of your Realtime Compute for Apache Flink cluster. In this mode, you cannot log on to these ECS instances. If you want to log on to these ECS instances, submit a ticket.
- When you create a cluster, you can apply for an Elastic Network Interface (ENI) under your account to access all resources in the VPC to which the ENI belongs.
- To access the Internet, you can bind a NAT gateway and an elastic IP address (EIP)
to the ENI. For more information, see Associate an EIP with the a NAT gateway.
Note You are charged for the use of the ENI only when your Realtime Compute for Apache Flink cluster accesses the Internet.
- To access services of other security groups in the VPC, you must configure inbound and outbound rules for the security group.
Differences between exclusive mode and shared mode
|Item||Exclusive mode||Shared mode|
|Development of custom features||Supports UDFs and APIs, which helps you flexibly develop jobs.||Not supported.|
|Network type||Supports Alibaba Cloud VPCs.
Note Users in a Realtime Compute for Apache Flink cluster in exclusive mode can only access the upstream and downstream storage resources in the same region and VPC as the cluster. If you want to access resources in another VPC, you must configure port numbers of security groups and use Express Connect to access the VPC.
|Machine type selection||Allows you to select a machine type when you purchase Realtime Compute for Apache Flink in exclusive mode. GPU is supported. FPGA will be supported in the future.||Not supported.|
|Supported data sources||
|Supported data outputs||
Note As of December 24, 2019, Realtime Compute for Apache Flink in shared mode is no longer available. You cannot purchase projects in this mode. You can only scale out, scale in, or renew existing shared-mode projects. We recommend that you purchase the exclusive mode or semi-managed Flink mode of Realtime Compute for Apache Flink based on your business requirements.
|Specification||Provides an independent real-time computing engine and allows each user to perform stream processing in an independent ECS cluster.||Provides a large cluster to allow users to share public resources.|
|Isolation||Provides strong isolation. Resources in an ECS instance such as networks and security groups are isolated from the resources of other users.||Provides weak isolation. Network resources cannot be isolated.|
|Customer groups||Big data teams that have advanced development technologies and demand for flexible and controllable development.||Teams or individuals that only want to realize streaming business and have no special requirements for the development process.|
|Cost||Has a higher cost than the shared mode. In high availability mode, each user must bear the cost of three additional master nodes.||Users only need to pay for the computing service.|
|Cluster management and maintenance||Requires cluster management and network configuration skills.||Cluster management is not required.|