flyrain commented on code in PR #4461: URL: https://github.com/apache/polaris/pull/4461#discussion_r3254187926
########## site/content/in-dev/unreleased/federation/bigquery-metastore-federation.md: ########## @@ -0,0 +1,137 @@ +--- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +title: BigQuery Metastore Federation +type: docs +weight: 706 +--- + +Polaris can federate catalog operations to a BigQuery Metastore catalog. This lets BigQuery Metastore +remain the source of truth for Iceberg table metadata while Polaris brokers access, policies, and +multi-engine connectivity. + +## Build-time enablement + +The BigQuery factory is packaged as an optional extension and is not baked into default server +builds. Include it when assembling the runtime or container images by setting the `NonRESTCatalogs` +Gradle property to include `BIGQUERY` (and any other non-REST backends you need): + +```bash +./gradlew :polaris-server:assemble :polaris-server:quarkusAppPartsBuild --rerun \ + -PNonRESTCatalogs=BIGQUERY -Dquarkus.container-image.build=true +``` + +`runtime/server/build.gradle.kts` wires the extension in only when this flag is present, so binaries +built without it will reject BigQuery federation requests. + +## Feature configuration + +After building Polaris with BigQuery Metastore support, enable the necessary feature flags in your +`application.properties` file (or equivalent configuration mechanism such as environment variables +or a Kubernetes ConfigMap): + +```properties +# Allows BIGQUERY connection type +polaris.features."SUPPORTED_CATALOG_CONNECTION_TYPES"=["BIGQUERY"] + +# Allows IMPLICIT authentication, needed for BigQuery Metastore federation +polaris.features."SUPPORTED_EXTERNAL_CATALOG_AUTHENTICATION_TYPES"=["IMPLICIT"] Review Comment: You are right. I am just saying maybe we should think about adding IMPLICIT to the default list. That'd be a separated discussion. We are good here. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
