تحديث حالة ClickPipe
نقطة النهاية هذه في Beta. عقد واجهة برمجة التطبيقات مستقر، ولا يُتوقع حدوث تغييرات غير متوافقة في المستقبل.
ابدأ ClickPipe أو أوقفه أو أعد مزامنته. سيؤدي إيقاف ClickPipe إلى إيقاف عملية الاستيعاب بغض النظر عن حالته الحالية. يُسمح بالبدء لـ ClickPipes التي تكون في الحالة “Stopped” أو الحالة “Failed”. وتكون إعادة المزامنة متاحة فقط لـ pipes الخاصة بـ Postgres، ويمكن تنفيذها من أي حالة.
PATCH
/
v1
/
organizations
/
{organizationId}
/
services
/
{serviceId}
/
clickpipes
/
{clickPipeId}
/
state
تحديث حالة ClickPipe
curl --request PATCH \
--url https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state"
payload = {}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body{
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"result": {
"createdAt": "<string>",
"destination": {
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"database": "<string>",
"managedTable": true,
"table": "<string>",
"tableDefinition": {
"engine": {
"columnIds": [
"<string>"
],
"versionColumnId": "<string>"
},
"partitionBy": "<string>",
"primaryKey": "<string>",
"sortingKey": [
"<string>"
]
}
},
"fieldMappings": [
{
"destinationField": "<string>",
"sourceField": "<string>"
}
],
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"scaling": {
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25,
"replicas": 123
},
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"settings": {
"clickhouse_max_download_threads": 4,
"clickhouse_max_insert_threads": 1,
"clickhouse_max_threads": 8,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_parallel_distributed_insert_select": 2,
"clickhouse_parallel_view_processing": false,
"object_storage_concurrency": 1,
"object_storage_max_file_count": 100,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_polling_interval_ms": 30000,
"object_storage_use_cluster_function": true,
"streaming_max_insert_wait_ms": 5000
},
"source": {
"kafka": {
"brokers": "<string>",
"caCertificate": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": {
"timestamp": "2021-01-01T00:00"
},
"reversePrivateEndpointIds": [
"<string>"
],
"schemaRegistry": {
"authentication": "PLAIN",
"caCertificate": "<string>",
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004"
},
"topics": "<string>"
},
"kinesis": {
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"region": "us-east-1",
"streamName": "my-stream",
"timestamp": 1615766400,
"useEnhancedFanOut": true
},
"objectStorage": {
"azureContainerName": "mycontainer",
"compression": "auto",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"delimiter": ",",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"isContinuous": true,
"path": "data/logs/*.json",
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz"
},
"postgres": {
"database": "<string>",
"host": "<string>",
"port": 123,
"settings": {
"allowNullableColumns": true,
"enableFailoverSlots": true,
"initialLoadParallelism": 123,
"publicationName": "<string>",
"pullBatchSize": 123,
"replicationSlotName": "<string>",
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"syncIntervalSeconds": 123
},
"tableMappings": [
{
"excludedColumns": [
"<string>"
],
"sortingKeys": [
"<string>"
],
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"useCustomSortingKey": true
}
]
}
},
"state": "<string>",
"updatedAt": "<string>"
},
"status": 200
}{
"error": "<string>",
"status": 400
}التفويضات
استخدم معرّف المفتاح والسرّ الخاص به اللذين تم الحصول عليهما من ClickHouse Cloud console: https://clickhouse.com/docs/cloud/manage/openapi
معلمات المسار
معرّف المؤسسة المالكة للخدمة.
معرّف الخدمة المالكة لـ ClickPipe.
معرّف ClickPipe المطلوب تحديث حالته.
الجسم
application/json
أمر تغيير الحالة: 'start'، 'stop'، 'resync'.
الخيارات المتاحة:
start, stop, resync آخر تعديل في ٢٦ يونيو ٢٠٢٦
هل كانت هذه الصفحة مفيدة؟
السابق
الحصول على إعدادات التوسيع لـ CDC ClickPipes**نقطة النهاية هذه في مرحلة Beta.** عقد واجهة برمجة التطبيقات مستقر، ولا يُتوقع حدوث breaking changes في المستقبل. <br /><br /> احصل على إعدادات التوسّع لـ DB ClickPipes.
تكون البنية التحتية مشتركة بين جميع DB ClickPipes في الخدمة، سواءً للتحميل الأولي أو CDC. ولأغراض الفوترة، [تعادل](https://clickhouse.com/docs/cloud/manage/billing/overview#clickpipes-for-postgres-cdc) نواتا CPU و8 GB من RAM وحدةَ حوسبة واحدة.
**تصبح نقطة النهاية هذه متاحة بمجرد توفير DB ClickPipe واحد على الأقل.**
التالي
⌘I
تحديث حالة ClickPipe
curl --request PATCH \
--url https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state"
payload = {}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state"
payload := strings.NewReader("{}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes/{clickPipeId}/state")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{}"
response = http.request(request)
puts response.read_body{
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"result": {
"createdAt": "<string>",
"destination": {
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"database": "<string>",
"managedTable": true,
"table": "<string>",
"tableDefinition": {
"engine": {
"columnIds": [
"<string>"
],
"versionColumnId": "<string>"
},
"partitionBy": "<string>",
"primaryKey": "<string>",
"sortingKey": [
"<string>"
]
}
},
"fieldMappings": [
{
"destinationField": "<string>",
"sourceField": "<string>"
}
],
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"scaling": {
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25,
"replicas": 123
},
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"settings": {
"clickhouse_max_download_threads": 4,
"clickhouse_max_insert_threads": 1,
"clickhouse_max_threads": 8,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_parallel_distributed_insert_select": 2,
"clickhouse_parallel_view_processing": false,
"object_storage_concurrency": 1,
"object_storage_max_file_count": 100,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_polling_interval_ms": 30000,
"object_storage_use_cluster_function": true,
"streaming_max_insert_wait_ms": 5000
},
"source": {
"kafka": {
"brokers": "<string>",
"caCertificate": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": {
"timestamp": "2021-01-01T00:00"
},
"reversePrivateEndpointIds": [
"<string>"
],
"schemaRegistry": {
"authentication": "PLAIN",
"caCertificate": "<string>",
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004"
},
"topics": "<string>"
},
"kinesis": {
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"region": "us-east-1",
"streamName": "my-stream",
"timestamp": 1615766400,
"useEnhancedFanOut": true
},
"objectStorage": {
"azureContainerName": "mycontainer",
"compression": "auto",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"delimiter": ",",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"isContinuous": true,
"path": "data/logs/*.json",
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz"
},
"postgres": {
"database": "<string>",
"host": "<string>",
"port": 123,
"settings": {
"allowNullableColumns": true,
"enableFailoverSlots": true,
"initialLoadParallelism": 123,
"publicationName": "<string>",
"pullBatchSize": 123,
"replicationSlotName": "<string>",
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"syncIntervalSeconds": 123
},
"tableMappings": [
{
"excludedColumns": [
"<string>"
],
"sortingKeys": [
"<string>"
],
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"useCustomSortingKey": true
}
]
}
},
"state": "<string>",
"updatedAt": "<string>"
},
"status": 200
}{
"error": "<string>",
"status": 400
}