Personalização de API
Personalização da API emwatsonx.data fornece uma maneira para os administradores de instância personalizarem JVM, CONFIG, catálogo e Velox (Presto (C++)) propriedades paraPresto (Java ) ePresto (C++) por meio de uma API.
Presto ( Java ) os mecanismos nas instâncias do plano watsonx.data Lite só permitem a personalização de tags, descrição e nome de exibição do mecanismo.
Este método de customização não exige que você adicione os parâmetros dentro do pod, reinicie o pod (se houver implantação de CPD) ou entre em contato com a equipe de suporte (se houverSaaS implantação) para personalização. Também não requer nenhum acesso e privilégios especiais ao sistema back-end. A personalização da API é uma maneira unificada de personalizar as propriedades permitidas emwatsonx.data, independentemente da implantação. A personalização da API é suportada pela API PATCH. Endpoints de API e solicitações de amostra paraPresto (Java ) ePresto Os motores (C++) são os seguintes:
API PATCH (Presto (Java ) motor)
Terminal
/presto_engines/{engine_id}
Corpo da solicitação
O patch de personalização da API deve ter os seguintes campos como obrigatórios configuration, jvm, catalog, event_listener, jmx_exporter_config, log_config, global e outros campos como opcionais.
{
"description": "updated description for presto engine",
"engine_display_name": "sampleEngine",
"engine_properties": {
"configuration": {
"coordinator": {
"property_1": "property_value",
"property_2": "property_value"
},
"worker": {
"property_1": "property_value",
"property_2": "property_value"
}
},
"jvm": {
"coordinator": {
"property_1": "property_value",
"property_2": "property_value"
},
"worker": {
"property_1": "property_value",
"property_2": "property_value"
}
},
"catalog": {
"property_1": "property_value",
"property_2": "property_value"
},
"event_listener": {
"property_1": "property_value",
"property_2": "property_value"
},
"log_config": {
"coordinator": {
"property_1": "property_value",
"property_2": "property_value"
},
"worker": {
"property_1": "property_value",
"property_2": "property_value"
}
},
"global": {
"enable-mixed-case-support": "true"
}
},
"engine_restart": "force",
"remove_engine_properties": {
"configuration": {
"coordinator": [
"property1",
"property2"
],
"worker": [
"property1",
"property2"
]
},
"jvm": {
"coordinator": [
"property1",
"property2"
],
"worker": [
"property1",
"property2"
]
},
"event_listener": [
"property1",
"property2"
]
},
"catalog": {
"catalog_name": [
"property1",
"property2"
]
},
"global": {},
"tags": [
"tag1",
"tag2"
]
}
API PATCH (Presto (motor C++))
Terminal
/prestissimo_engines/{engine_id}
Corpo da solicitação
O patch de personalização da API deve ter os seguintes campos como obrigatórios configuration, jvm, catalog, velox, log_config, global e outros campos como opcionais.
optimizer_properties para presto (C++) não poderá ser personalizado se as tabelas de consulta materializadas estiverem ativadas na guia de configuração.
{
"description": "updated description for prestissimo engine",
"engine_display_name": "sampleEngine",
"engine_properties": {
"configuration": {
"coordinator": {
"property_1": "property_value",
"property_2": "property_value"
},
"worker": {
"property_1": "property_value",
"property_2": "property_value"
}
},
"jvm": {
"coordinator": {
"property_1": "property_value",
"property_2": "property_value"
}
},
"catalog": {
"catalog_name": {
"coordinator": {
"property_1": "property_value",
"property_2": "property_value"
},
"worker": {
"property_1": "property_value",
"property_2": "property_value"
}
}
},
"velox": {
"property_1": "property_value",
"property_2": "property_value"
},
"log_config": {
"coordinator": {
"property_1": "property_value",
"property_2": "property_value"
},
"worker": {
"property_1": "property_value",
"property_2": "property_value"
}
},
"optimizer_properties":{
"property_1": "property_value",
"property_2": "property_value"
},
"global": {
"property_1": "property_value",
"property_2": "property_value"
}
},
"engine_restart": "force",
"remove_engine_properties": {
"configuration": {
"coordinator": [
"property1",
"property2"
],
"worker": [
"property1",
"property2"
]
},
"catalog": {
"catalog_name": {
"coordinator": [
"property1",
"property2"
],
"worker": [
"property1",
"property2"
]
}
},
"jvm": {
"coordinator": [
"property1",
"property2"
]
},
"log_config": {
"coordinator": [
"property1",
"property2"
],
"worker": [
"property1",
"property2"
]
},
"velox": [
"property1",
"property2"
]
},
"tags": [
"tag1",
"tag2"
]
}
Você pode encontrar o exemplo curl para personalização de API em Atualizar mecanismo presto.
Para obter a lista de propriedades que podem ser personalizadas por meio de uma API paraPresto (Java ), ver:
- Propriedades de configuração paraPresto(Java)- coordenador e nós de trabalho
- Propriedades JVM paraPresto(Java)- Nós coordenador e de trabalho
- Propriedades de catálogo paraPresto(Java)
Para obter a lista de propriedades que podem ser personalizadas por meio de uma API paraPresto (C++), consulte:
- Propriedades de configuração paraPresto(C++)- nós de trabalho
- Propriedades de configuração paraPresto(C++)- nós coordenadores
- Propriedades de catálogo paraPresto(C++)
- Propriedades Velox paraPresto(C++)
Para imóveis que devem ser customizados sob orientação dowatsonx.data equipe de suporte, consulte Propriedades a serem personalizadas sob orientação de suporte.
Você pode obter logs de plug-in do SAC (System Access Control) com informações de DEBUG. Para ativar os DEBUG registros do plug-in SAC no Presto, acione a API de personalização e adicione "com.ibm.openlakehouse.prestodb": "DEBUG" em log_config.
"log_config": {
"coordinator": {
"com.ibm.openlakehouse.prestodb": "DEBUG"
},
"worker": {}
}
Para obter mais informações, consulte Atualizar o mecanismo do presto.