gcp.bigquery.AppProfile
Explore with Pulumi AI
App profile is a configuration object describing how Cloud Bigtable should treat traffic from a particular end user application.
To get more information about AppProfile, see:
Example Usage
Bigtable App Profile Anycluster
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.bigtable.Instance("instance", {
    name: "bt-instance",
    clusters: [
        {
            clusterId: "cluster-1",
            zone: "us-central1-a",
            numNodes: 3,
            storageType: "HDD",
        },
        {
            clusterId: "cluster-2",
            zone: "us-central1-b",
            numNodes: 3,
            storageType: "HDD",
        },
        {
            clusterId: "cluster-3",
            zone: "us-central1-c",
            numNodes: 3,
            storageType: "HDD",
        },
    ],
    deletionProtection: true,
});
const ap = new gcp.bigquery.AppProfile("ap", {
    instance: instance.name,
    appProfileId: "bt-profile",
    multiClusterRoutingUseAny: true,
    ignoreWarnings: true,
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.bigtable.Instance("instance",
    name="bt-instance",
    clusters=[
        {
            "cluster_id": "cluster-1",
            "zone": "us-central1-a",
            "num_nodes": 3,
            "storage_type": "HDD",
        },
        {
            "cluster_id": "cluster-2",
            "zone": "us-central1-b",
            "num_nodes": 3,
            "storage_type": "HDD",
        },
        {
            "cluster_id": "cluster-3",
            "zone": "us-central1-c",
            "num_nodes": 3,
            "storage_type": "HDD",
        },
    ],
    deletion_protection=True)
ap = gcp.bigquery.AppProfile("ap",
    instance=instance.name,
    app_profile_id="bt-profile",
    multi_cluster_routing_use_any=True,
    ignore_warnings=True)
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigquery"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{
			Name: pulumi.String("bt-instance"),
			Clusters: bigtable.InstanceClusterArray{
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-1"),
					Zone:        pulumi.String("us-central1-a"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-2"),
					Zone:        pulumi.String("us-central1-b"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-3"),
					Zone:        pulumi.String("us-central1-c"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
			},
			DeletionProtection: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = bigquery.NewAppProfile(ctx, "ap", &bigquery.AppProfileArgs{
			Instance:                  instance.Name,
			AppProfileId:              pulumi.String("bt-profile"),
			MultiClusterRoutingUseAny: pulumi.Bool(true),
			IgnoreWarnings:            pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var instance = new Gcp.BigTable.Instance("instance", new()
    {
        Name = "bt-instance",
        Clusters = new[]
        {
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-1",
                Zone = "us-central1-a",
                NumNodes = 3,
                StorageType = "HDD",
            },
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-2",
                Zone = "us-central1-b",
                NumNodes = 3,
                StorageType = "HDD",
            },
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-3",
                Zone = "us-central1-c",
                NumNodes = 3,
                StorageType = "HDD",
            },
        },
        DeletionProtection = true,
    });
    var ap = new Gcp.BigQuery.AppProfile("ap", new()
    {
        Instance = instance.Name,
        AppProfileId = "bt-profile",
        MultiClusterRoutingUseAny = true,
        IgnoreWarnings = true,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.bigtable.Instance;
import com.pulumi.gcp.bigtable.InstanceArgs;
import com.pulumi.gcp.bigtable.inputs.InstanceClusterArgs;
import com.pulumi.gcp.bigquery.AppProfile;
import com.pulumi.gcp.bigquery.AppProfileArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var instance = new Instance("instance", InstanceArgs.builder()
            .name("bt-instance")
            .clusters(            
                InstanceClusterArgs.builder()
                    .clusterId("cluster-1")
                    .zone("us-central1-a")
                    .numNodes(3)
                    .storageType("HDD")
                    .build(),
                InstanceClusterArgs.builder()
                    .clusterId("cluster-2")
                    .zone("us-central1-b")
                    .numNodes(3)
                    .storageType("HDD")
                    .build(),
                InstanceClusterArgs.builder()
                    .clusterId("cluster-3")
                    .zone("us-central1-c")
                    .numNodes(3)
                    .storageType("HDD")
                    .build())
            .deletionProtection(true)
            .build());
        var ap = new AppProfile("ap", AppProfileArgs.builder()
            .instance(instance.name())
            .appProfileId("bt-profile")
            .multiClusterRoutingUseAny(true)
            .ignoreWarnings(true)
            .build());
    }
}
resources:
  instance:
    type: gcp:bigtable:Instance
    properties:
      name: bt-instance
      clusters:
        - clusterId: cluster-1
          zone: us-central1-a
          numNodes: 3
          storageType: HDD
        - clusterId: cluster-2
          zone: us-central1-b
          numNodes: 3
          storageType: HDD
        - clusterId: cluster-3
          zone: us-central1-c
          numNodes: 3
          storageType: HDD
      deletionProtection: true
  ap:
    type: gcp:bigquery:AppProfile
    properties:
      instance: ${instance.name}
      appProfileId: bt-profile
      multiClusterRoutingUseAny: true
      ignoreWarnings: true
Bigtable App Profile Singlecluster
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.bigtable.Instance("instance", {
    name: "bt-instance",
    clusters: [{
        clusterId: "cluster-1",
        zone: "us-central1-b",
        numNodes: 3,
        storageType: "HDD",
    }],
    deletionProtection: true,
});
const ap = new gcp.bigquery.AppProfile("ap", {
    instance: instance.name,
    appProfileId: "bt-profile",
    singleClusterRouting: {
        clusterId: "cluster-1",
        allowTransactionalWrites: true,
    },
    ignoreWarnings: true,
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.bigtable.Instance("instance",
    name="bt-instance",
    clusters=[{
        "cluster_id": "cluster-1",
        "zone": "us-central1-b",
        "num_nodes": 3,
        "storage_type": "HDD",
    }],
    deletion_protection=True)
ap = gcp.bigquery.AppProfile("ap",
    instance=instance.name,
    app_profile_id="bt-profile",
    single_cluster_routing={
        "cluster_id": "cluster-1",
        "allow_transactional_writes": True,
    },
    ignore_warnings=True)
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigquery"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{
			Name: pulumi.String("bt-instance"),
			Clusters: bigtable.InstanceClusterArray{
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-1"),
					Zone:        pulumi.String("us-central1-b"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
			},
			DeletionProtection: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = bigquery.NewAppProfile(ctx, "ap", &bigquery.AppProfileArgs{
			Instance:     instance.Name,
			AppProfileId: pulumi.String("bt-profile"),
			SingleClusterRouting: &bigquery.AppProfileSingleClusterRoutingArgs{
				ClusterId:                pulumi.String("cluster-1"),
				AllowTransactionalWrites: pulumi.Bool(true),
			},
			IgnoreWarnings: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var instance = new Gcp.BigTable.Instance("instance", new()
    {
        Name = "bt-instance",
        Clusters = new[]
        {
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-1",
                Zone = "us-central1-b",
                NumNodes = 3,
                StorageType = "HDD",
            },
        },
        DeletionProtection = true,
    });
    var ap = new Gcp.BigQuery.AppProfile("ap", new()
    {
        Instance = instance.Name,
        AppProfileId = "bt-profile",
        SingleClusterRouting = new Gcp.BigQuery.Inputs.AppProfileSingleClusterRoutingArgs
        {
            ClusterId = "cluster-1",
            AllowTransactionalWrites = true,
        },
        IgnoreWarnings = true,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.bigtable.Instance;
import com.pulumi.gcp.bigtable.InstanceArgs;
import com.pulumi.gcp.bigtable.inputs.InstanceClusterArgs;
import com.pulumi.gcp.bigquery.AppProfile;
import com.pulumi.gcp.bigquery.AppProfileArgs;
import com.pulumi.gcp.bigquery.inputs.AppProfileSingleClusterRoutingArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var instance = new Instance("instance", InstanceArgs.builder()
            .name("bt-instance")
            .clusters(InstanceClusterArgs.builder()
                .clusterId("cluster-1")
                .zone("us-central1-b")
                .numNodes(3)
                .storageType("HDD")
                .build())
            .deletionProtection(true)
            .build());
        var ap = new AppProfile("ap", AppProfileArgs.builder()
            .instance(instance.name())
            .appProfileId("bt-profile")
            .singleClusterRouting(AppProfileSingleClusterRoutingArgs.builder()
                .clusterId("cluster-1")
                .allowTransactionalWrites(true)
                .build())
            .ignoreWarnings(true)
            .build());
    }
}
resources:
  instance:
    type: gcp:bigtable:Instance
    properties:
      name: bt-instance
      clusters:
        - clusterId: cluster-1
          zone: us-central1-b
          numNodes: 3
          storageType: HDD
      deletionProtection: true
  ap:
    type: gcp:bigquery:AppProfile
    properties:
      instance: ${instance.name}
      appProfileId: bt-profile
      singleClusterRouting:
        clusterId: cluster-1
        allowTransactionalWrites: true
      ignoreWarnings: true
Bigtable App Profile Multicluster
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.bigtable.Instance("instance", {
    name: "bt-instance",
    clusters: [
        {
            clusterId: "cluster-1",
            zone: "us-central1-a",
            numNodes: 3,
            storageType: "HDD",
        },
        {
            clusterId: "cluster-2",
            zone: "us-central1-b",
            numNodes: 3,
            storageType: "HDD",
        },
        {
            clusterId: "cluster-3",
            zone: "us-central1-c",
            numNodes: 3,
            storageType: "HDD",
        },
    ],
    deletionProtection: true,
});
const ap = new gcp.bigquery.AppProfile("ap", {
    instance: instance.name,
    appProfileId: "bt-profile",
    multiClusterRoutingUseAny: true,
    multiClusterRoutingClusterIds: [
        "cluster-1",
        "cluster-2",
    ],
    ignoreWarnings: true,
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.bigtable.Instance("instance",
    name="bt-instance",
    clusters=[
        {
            "cluster_id": "cluster-1",
            "zone": "us-central1-a",
            "num_nodes": 3,
            "storage_type": "HDD",
        },
        {
            "cluster_id": "cluster-2",
            "zone": "us-central1-b",
            "num_nodes": 3,
            "storage_type": "HDD",
        },
        {
            "cluster_id": "cluster-3",
            "zone": "us-central1-c",
            "num_nodes": 3,
            "storage_type": "HDD",
        },
    ],
    deletion_protection=True)
ap = gcp.bigquery.AppProfile("ap",
    instance=instance.name,
    app_profile_id="bt-profile",
    multi_cluster_routing_use_any=True,
    multi_cluster_routing_cluster_ids=[
        "cluster-1",
        "cluster-2",
    ],
    ignore_warnings=True)
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigquery"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{
			Name: pulumi.String("bt-instance"),
			Clusters: bigtable.InstanceClusterArray{
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-1"),
					Zone:        pulumi.String("us-central1-a"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-2"),
					Zone:        pulumi.String("us-central1-b"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-3"),
					Zone:        pulumi.String("us-central1-c"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
			},
			DeletionProtection: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = bigquery.NewAppProfile(ctx, "ap", &bigquery.AppProfileArgs{
			Instance:                  instance.Name,
			AppProfileId:              pulumi.String("bt-profile"),
			MultiClusterRoutingUseAny: pulumi.Bool(true),
			MultiClusterRoutingClusterIds: pulumi.StringArray{
				pulumi.String("cluster-1"),
				pulumi.String("cluster-2"),
			},
			IgnoreWarnings: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var instance = new Gcp.BigTable.Instance("instance", new()
    {
        Name = "bt-instance",
        Clusters = new[]
        {
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-1",
                Zone = "us-central1-a",
                NumNodes = 3,
                StorageType = "HDD",
            },
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-2",
                Zone = "us-central1-b",
                NumNodes = 3,
                StorageType = "HDD",
            },
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-3",
                Zone = "us-central1-c",
                NumNodes = 3,
                StorageType = "HDD",
            },
        },
        DeletionProtection = true,
    });
    var ap = new Gcp.BigQuery.AppProfile("ap", new()
    {
        Instance = instance.Name,
        AppProfileId = "bt-profile",
        MultiClusterRoutingUseAny = true,
        MultiClusterRoutingClusterIds = new[]
        {
            "cluster-1",
            "cluster-2",
        },
        IgnoreWarnings = true,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.bigtable.Instance;
import com.pulumi.gcp.bigtable.InstanceArgs;
import com.pulumi.gcp.bigtable.inputs.InstanceClusterArgs;
import com.pulumi.gcp.bigquery.AppProfile;
import com.pulumi.gcp.bigquery.AppProfileArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var instance = new Instance("instance", InstanceArgs.builder()
            .name("bt-instance")
            .clusters(            
                InstanceClusterArgs.builder()
                    .clusterId("cluster-1")
                    .zone("us-central1-a")
                    .numNodes(3)
                    .storageType("HDD")
                    .build(),
                InstanceClusterArgs.builder()
                    .clusterId("cluster-2")
                    .zone("us-central1-b")
                    .numNodes(3)
                    .storageType("HDD")
                    .build(),
                InstanceClusterArgs.builder()
                    .clusterId("cluster-3")
                    .zone("us-central1-c")
                    .numNodes(3)
                    .storageType("HDD")
                    .build())
            .deletionProtection(true)
            .build());
        var ap = new AppProfile("ap", AppProfileArgs.builder()
            .instance(instance.name())
            .appProfileId("bt-profile")
            .multiClusterRoutingUseAny(true)
            .multiClusterRoutingClusterIds(            
                "cluster-1",
                "cluster-2")
            .ignoreWarnings(true)
            .build());
    }
}
resources:
  instance:
    type: gcp:bigtable:Instance
    properties:
      name: bt-instance
      clusters:
        - clusterId: cluster-1
          zone: us-central1-a
          numNodes: 3
          storageType: HDD
        - clusterId: cluster-2
          zone: us-central1-b
          numNodes: 3
          storageType: HDD
        - clusterId: cluster-3
          zone: us-central1-c
          numNodes: 3
          storageType: HDD
      deletionProtection: true
  ap:
    type: gcp:bigquery:AppProfile
    properties:
      instance: ${instance.name}
      appProfileId: bt-profile
      multiClusterRoutingUseAny: true
      multiClusterRoutingClusterIds:
        - cluster-1
        - cluster-2
      ignoreWarnings: true
Bigtable App Profile Priority
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.bigtable.Instance("instance", {
    name: "bt-instance",
    clusters: [{
        clusterId: "cluster-1",
        zone: "us-central1-b",
        numNodes: 3,
        storageType: "HDD",
    }],
    deletionProtection: true,
});
const ap = new gcp.bigquery.AppProfile("ap", {
    instance: instance.name,
    appProfileId: "bt-profile",
    singleClusterRouting: {
        clusterId: "cluster-1",
        allowTransactionalWrites: true,
    },
    standardIsolation: {
        priority: "PRIORITY_LOW",
    },
    ignoreWarnings: true,
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.bigtable.Instance("instance",
    name="bt-instance",
    clusters=[{
        "cluster_id": "cluster-1",
        "zone": "us-central1-b",
        "num_nodes": 3,
        "storage_type": "HDD",
    }],
    deletion_protection=True)
ap = gcp.bigquery.AppProfile("ap",
    instance=instance.name,
    app_profile_id="bt-profile",
    single_cluster_routing={
        "cluster_id": "cluster-1",
        "allow_transactional_writes": True,
    },
    standard_isolation={
        "priority": "PRIORITY_LOW",
    },
    ignore_warnings=True)
package main
import (
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigquery"
	"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/bigtable"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := bigtable.NewInstance(ctx, "instance", &bigtable.InstanceArgs{
			Name: pulumi.String("bt-instance"),
			Clusters: bigtable.InstanceClusterArray{
				&bigtable.InstanceClusterArgs{
					ClusterId:   pulumi.String("cluster-1"),
					Zone:        pulumi.String("us-central1-b"),
					NumNodes:    pulumi.Int(3),
					StorageType: pulumi.String("HDD"),
				},
			},
			DeletionProtection: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = bigquery.NewAppProfile(ctx, "ap", &bigquery.AppProfileArgs{
			Instance:     instance.Name,
			AppProfileId: pulumi.String("bt-profile"),
			SingleClusterRouting: &bigquery.AppProfileSingleClusterRoutingArgs{
				ClusterId:                pulumi.String("cluster-1"),
				AllowTransactionalWrites: pulumi.Bool(true),
			},
			StandardIsolation: &bigquery.AppProfileStandardIsolationArgs{
				Priority: pulumi.String("PRIORITY_LOW"),
			},
			IgnoreWarnings: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() => 
{
    var instance = new Gcp.BigTable.Instance("instance", new()
    {
        Name = "bt-instance",
        Clusters = new[]
        {
            new Gcp.BigTable.Inputs.InstanceClusterArgs
            {
                ClusterId = "cluster-1",
                Zone = "us-central1-b",
                NumNodes = 3,
                StorageType = "HDD",
            },
        },
        DeletionProtection = true,
    });
    var ap = new Gcp.BigQuery.AppProfile("ap", new()
    {
        Instance = instance.Name,
        AppProfileId = "bt-profile",
        SingleClusterRouting = new Gcp.BigQuery.Inputs.AppProfileSingleClusterRoutingArgs
        {
            ClusterId = "cluster-1",
            AllowTransactionalWrites = true,
        },
        StandardIsolation = new Gcp.BigQuery.Inputs.AppProfileStandardIsolationArgs
        {
            Priority = "PRIORITY_LOW",
        },
        IgnoreWarnings = true,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.bigtable.Instance;
import com.pulumi.gcp.bigtable.InstanceArgs;
import com.pulumi.gcp.bigtable.inputs.InstanceClusterArgs;
import com.pulumi.gcp.bigquery.AppProfile;
import com.pulumi.gcp.bigquery.AppProfileArgs;
import com.pulumi.gcp.bigquery.inputs.AppProfileSingleClusterRoutingArgs;
import com.pulumi.gcp.bigquery.inputs.AppProfileStandardIsolationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var instance = new Instance("instance", InstanceArgs.builder()
            .name("bt-instance")
            .clusters(InstanceClusterArgs.builder()
                .clusterId("cluster-1")
                .zone("us-central1-b")
                .numNodes(3)
                .storageType("HDD")
                .build())
            .deletionProtection(true)
            .build());
        var ap = new AppProfile("ap", AppProfileArgs.builder()
            .instance(instance.name())
            .appProfileId("bt-profile")
            .singleClusterRouting(AppProfileSingleClusterRoutingArgs.builder()
                .clusterId("cluster-1")
                .allowTransactionalWrites(true)
                .build())
            .standardIsolation(AppProfileStandardIsolationArgs.builder()
                .priority("PRIORITY_LOW")
                .build())
            .ignoreWarnings(true)
            .build());
    }
}
resources:
  instance:
    type: gcp:bigtable:Instance
    properties:
      name: bt-instance
      clusters:
        - clusterId: cluster-1
          zone: us-central1-b
          numNodes: 3
          storageType: HDD
      deletionProtection: true
  ap:
    type: gcp:bigquery:AppProfile
    properties:
      instance: ${instance.name}
      appProfileId: bt-profile
      singleClusterRouting:
        clusterId: cluster-1
        allowTransactionalWrites: true
      standardIsolation:
        priority: PRIORITY_LOW
      ignoreWarnings: true
Create AppProfile Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new AppProfile(name: string, args: AppProfileArgs, opts?: CustomResourceOptions);@overload
def AppProfile(resource_name: str,
               args: AppProfileArgs,
               opts: Optional[ResourceOptions] = None)
@overload
def AppProfile(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               app_profile_id: Optional[str] = None,
               data_boost_isolation_read_only: Optional[AppProfileDataBoostIsolationReadOnlyArgs] = None,
               description: Optional[str] = None,
               ignore_warnings: Optional[bool] = None,
               instance: Optional[str] = None,
               multi_cluster_routing_cluster_ids: Optional[Sequence[str]] = None,
               multi_cluster_routing_use_any: Optional[bool] = None,
               project: Optional[str] = None,
               row_affinity: Optional[bool] = None,
               single_cluster_routing: Optional[AppProfileSingleClusterRoutingArgs] = None,
               standard_isolation: Optional[AppProfileStandardIsolationArgs] = None)func NewAppProfile(ctx *Context, name string, args AppProfileArgs, opts ...ResourceOption) (*AppProfile, error)public AppProfile(string name, AppProfileArgs args, CustomResourceOptions? opts = null)
public AppProfile(String name, AppProfileArgs args)
public AppProfile(String name, AppProfileArgs args, CustomResourceOptions options)
type: gcp:bigquery:AppProfile
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args AppProfileArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args AppProfileArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args AppProfileArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args AppProfileArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args AppProfileArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var appProfileResource = new Gcp.BigQuery.AppProfile("appProfileResource", new()
{
    AppProfileId = "string",
    DataBoostIsolationReadOnly = new Gcp.BigQuery.Inputs.AppProfileDataBoostIsolationReadOnlyArgs
    {
        ComputeBillingOwner = "string",
    },
    Description = "string",
    IgnoreWarnings = false,
    Instance = "string",
    MultiClusterRoutingClusterIds = new[]
    {
        "string",
    },
    MultiClusterRoutingUseAny = false,
    Project = "string",
    RowAffinity = false,
    SingleClusterRouting = new Gcp.BigQuery.Inputs.AppProfileSingleClusterRoutingArgs
    {
        ClusterId = "string",
        AllowTransactionalWrites = false,
    },
    StandardIsolation = new Gcp.BigQuery.Inputs.AppProfileStandardIsolationArgs
    {
        Priority = "string",
    },
});
example, err := bigquery.NewAppProfile(ctx, "appProfileResource", &bigquery.AppProfileArgs{
	AppProfileId: pulumi.String("string"),
	DataBoostIsolationReadOnly: &bigquery.AppProfileDataBoostIsolationReadOnlyArgs{
		ComputeBillingOwner: pulumi.String("string"),
	},
	Description:    pulumi.String("string"),
	IgnoreWarnings: pulumi.Bool(false),
	Instance:       pulumi.String("string"),
	MultiClusterRoutingClusterIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	MultiClusterRoutingUseAny: pulumi.Bool(false),
	Project:                   pulumi.String("string"),
	RowAffinity:               pulumi.Bool(false),
	SingleClusterRouting: &bigquery.AppProfileSingleClusterRoutingArgs{
		ClusterId:                pulumi.String("string"),
		AllowTransactionalWrites: pulumi.Bool(false),
	},
	StandardIsolation: &bigquery.AppProfileStandardIsolationArgs{
		Priority: pulumi.String("string"),
	},
})
var appProfileResource = new AppProfile("appProfileResource", AppProfileArgs.builder()
    .appProfileId("string")
    .dataBoostIsolationReadOnly(AppProfileDataBoostIsolationReadOnlyArgs.builder()
        .computeBillingOwner("string")
        .build())
    .description("string")
    .ignoreWarnings(false)
    .instance("string")
    .multiClusterRoutingClusterIds("string")
    .multiClusterRoutingUseAny(false)
    .project("string")
    .rowAffinity(false)
    .singleClusterRouting(AppProfileSingleClusterRoutingArgs.builder()
        .clusterId("string")
        .allowTransactionalWrites(false)
        .build())
    .standardIsolation(AppProfileStandardIsolationArgs.builder()
        .priority("string")
        .build())
    .build());
app_profile_resource = gcp.bigquery.AppProfile("appProfileResource",
    app_profile_id="string",
    data_boost_isolation_read_only={
        "compute_billing_owner": "string",
    },
    description="string",
    ignore_warnings=False,
    instance="string",
    multi_cluster_routing_cluster_ids=["string"],
    multi_cluster_routing_use_any=False,
    project="string",
    row_affinity=False,
    single_cluster_routing={
        "cluster_id": "string",
        "allow_transactional_writes": False,
    },
    standard_isolation={
        "priority": "string",
    })
const appProfileResource = new gcp.bigquery.AppProfile("appProfileResource", {
    appProfileId: "string",
    dataBoostIsolationReadOnly: {
        computeBillingOwner: "string",
    },
    description: "string",
    ignoreWarnings: false,
    instance: "string",
    multiClusterRoutingClusterIds: ["string"],
    multiClusterRoutingUseAny: false,
    project: "string",
    rowAffinity: false,
    singleClusterRouting: {
        clusterId: "string",
        allowTransactionalWrites: false,
    },
    standardIsolation: {
        priority: "string",
    },
});
type: gcp:bigquery:AppProfile
properties:
    appProfileId: string
    dataBoostIsolationReadOnly:
        computeBillingOwner: string
    description: string
    ignoreWarnings: false
    instance: string
    multiClusterRoutingClusterIds:
        - string
    multiClusterRoutingUseAny: false
    project: string
    rowAffinity: false
    singleClusterRouting:
        allowTransactionalWrites: false
        clusterId: string
    standardIsolation:
        priority: string
AppProfile Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The AppProfile resource accepts the following input properties:
- AppProfile stringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- DataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- Description string
- Long form description of the use case for this app profile.
- IgnoreWarnings bool
- If true, ignore safety checks when deleting/updating the app profile.
- Instance string
- The name of the instance to create the app profile within.
- MultiCluster List<string>Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- MultiCluster boolRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- RowAffinity bool
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- SingleCluster AppRouting Profile Single Cluster Routing 
- Use a single-cluster routing policy. Structure is documented below.
- StandardIsolation AppProfile Standard Isolation 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- AppProfile stringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- DataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only Args 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- Description string
- Long form description of the use case for this app profile.
- IgnoreWarnings bool
- If true, ignore safety checks when deleting/updating the app profile.
- Instance string
- The name of the instance to create the app profile within.
- MultiCluster []stringRouting Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- MultiCluster boolRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- RowAffinity bool
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- SingleCluster AppRouting Profile Single Cluster Routing Args 
- Use a single-cluster routing policy. Structure is documented below.
- StandardIsolation AppProfile Standard Isolation Args 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- appProfile StringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- dataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description String
- Long form description of the use case for this app profile.
- ignoreWarnings Boolean
- If true, ignore safety checks when deleting/updating the app profile.
- instance String
- The name of the instance to create the app profile within.
- multiCluster List<String>Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multiCluster BooleanRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- rowAffinity Boolean
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- singleCluster AppRouting Profile Single Cluster Routing 
- Use a single-cluster routing policy. Structure is documented below.
- standardIsolation AppProfile Standard Isolation 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- appProfile stringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- dataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description string
- Long form description of the use case for this app profile.
- ignoreWarnings boolean
- If true, ignore safety checks when deleting/updating the app profile.
- instance string
- The name of the instance to create the app profile within.
- multiCluster string[]Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multiCluster booleanRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- rowAffinity boolean
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- singleCluster AppRouting Profile Single Cluster Routing 
- Use a single-cluster routing policy. Structure is documented below.
- standardIsolation AppProfile Standard Isolation 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- app_profile_ strid 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- data_boost_ Appisolation_ read_ only Profile Data Boost Isolation Read Only Args 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description str
- Long form description of the use case for this app profile.
- ignore_warnings bool
- If true, ignore safety checks when deleting/updating the app profile.
- instance str
- The name of the instance to create the app profile within.
- multi_cluster_ Sequence[str]routing_ cluster_ ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multi_cluster_ boolrouting_ use_ any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- row_affinity bool
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- single_cluster_ Approuting Profile Single Cluster Routing Args 
- Use a single-cluster routing policy. Structure is documented below.
- standard_isolation AppProfile Standard Isolation Args 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- appProfile StringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- dataBoost Property MapIsolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description String
- Long form description of the use case for this app profile.
- ignoreWarnings Boolean
- If true, ignore safety checks when deleting/updating the app profile.
- instance String
- The name of the instance to create the app profile within.
- multiCluster List<String>Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multiCluster BooleanRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- rowAffinity Boolean
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- singleCluster Property MapRouting 
- Use a single-cluster routing policy. Structure is documented below.
- standardIsolation Property Map
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
Outputs
All input properties are implicitly available as output properties. Additionally, the AppProfile resource produces the following output properties:
Look up Existing AppProfile Resource
Get an existing AppProfile resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: AppProfileState, opts?: CustomResourceOptions): AppProfile@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        app_profile_id: Optional[str] = None,
        data_boost_isolation_read_only: Optional[AppProfileDataBoostIsolationReadOnlyArgs] = None,
        description: Optional[str] = None,
        ignore_warnings: Optional[bool] = None,
        instance: Optional[str] = None,
        multi_cluster_routing_cluster_ids: Optional[Sequence[str]] = None,
        multi_cluster_routing_use_any: Optional[bool] = None,
        name: Optional[str] = None,
        project: Optional[str] = None,
        row_affinity: Optional[bool] = None,
        single_cluster_routing: Optional[AppProfileSingleClusterRoutingArgs] = None,
        standard_isolation: Optional[AppProfileStandardIsolationArgs] = None) -> AppProfilefunc GetAppProfile(ctx *Context, name string, id IDInput, state *AppProfileState, opts ...ResourceOption) (*AppProfile, error)public static AppProfile Get(string name, Input<string> id, AppProfileState? state, CustomResourceOptions? opts = null)public static AppProfile get(String name, Output<String> id, AppProfileState state, CustomResourceOptions options)resources:  _:    type: gcp:bigquery:AppProfile    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- AppProfile stringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- DataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- Description string
- Long form description of the use case for this app profile.
- IgnoreWarnings bool
- If true, ignore safety checks when deleting/updating the app profile.
- Instance string
- The name of the instance to create the app profile within.
- MultiCluster List<string>Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- MultiCluster boolRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- Name string
- The unique name of the requested app profile. Values are of the form projects/<project>/instances/<instance>/appProfiles/<appProfileId>.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- RowAffinity bool
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- SingleCluster AppRouting Profile Single Cluster Routing 
- Use a single-cluster routing policy. Structure is documented below.
- StandardIsolation AppProfile Standard Isolation 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- AppProfile stringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- DataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only Args 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- Description string
- Long form description of the use case for this app profile.
- IgnoreWarnings bool
- If true, ignore safety checks when deleting/updating the app profile.
- Instance string
- The name of the instance to create the app profile within.
- MultiCluster []stringRouting Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- MultiCluster boolRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- Name string
- The unique name of the requested app profile. Values are of the form projects/<project>/instances/<instance>/appProfiles/<appProfileId>.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- RowAffinity bool
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- SingleCluster AppRouting Profile Single Cluster Routing Args 
- Use a single-cluster routing policy. Structure is documented below.
- StandardIsolation AppProfile Standard Isolation Args 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- appProfile StringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- dataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description String
- Long form description of the use case for this app profile.
- ignoreWarnings Boolean
- If true, ignore safety checks when deleting/updating the app profile.
- instance String
- The name of the instance to create the app profile within.
- multiCluster List<String>Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multiCluster BooleanRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- name String
- The unique name of the requested app profile. Values are of the form projects/<project>/instances/<instance>/appProfiles/<appProfileId>.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- rowAffinity Boolean
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- singleCluster AppRouting Profile Single Cluster Routing 
- Use a single-cluster routing policy. Structure is documented below.
- standardIsolation AppProfile Standard Isolation 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- appProfile stringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- dataBoost AppIsolation Read Only Profile Data Boost Isolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description string
- Long form description of the use case for this app profile.
- ignoreWarnings boolean
- If true, ignore safety checks when deleting/updating the app profile.
- instance string
- The name of the instance to create the app profile within.
- multiCluster string[]Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multiCluster booleanRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- name string
- The unique name of the requested app profile. Values are of the form projects/<project>/instances/<instance>/appProfiles/<appProfileId>.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- rowAffinity boolean
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- singleCluster AppRouting Profile Single Cluster Routing 
- Use a single-cluster routing policy. Structure is documented below.
- standardIsolation AppProfile Standard Isolation 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- app_profile_ strid 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- data_boost_ Appisolation_ read_ only Profile Data Boost Isolation Read Only Args 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description str
- Long form description of the use case for this app profile.
- ignore_warnings bool
- If true, ignore safety checks when deleting/updating the app profile.
- instance str
- The name of the instance to create the app profile within.
- multi_cluster_ Sequence[str]routing_ cluster_ ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multi_cluster_ boolrouting_ use_ any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- name str
- The unique name of the requested app profile. Values are of the form projects/<project>/instances/<instance>/appProfiles/<appProfileId>.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- row_affinity bool
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- single_cluster_ Approuting Profile Single Cluster Routing Args 
- Use a single-cluster routing policy. Structure is documented below.
- standard_isolation AppProfile Standard Isolation Args 
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
- appProfile StringId 
- The unique name of the app profile in the form [_a-zA-Z0-9][-_.a-zA-Z0-9]*.
- dataBoost Property MapIsolation Read Only 
- Specifies that this app profile is intended for read-only usage via the Data Boost feature. Structure is documented below.
- description String
- Long form description of the use case for this app profile.
- ignoreWarnings Boolean
- If true, ignore safety checks when deleting/updating the app profile.
- instance String
- The name of the instance to create the app profile within.
- multiCluster List<String>Routing Cluster Ids 
- The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
- multiCluster BooleanRouting Use Any 
- If true, read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
- name String
- The unique name of the requested app profile. Values are of the form projects/<project>/instances/<instance>/appProfiles/<appProfileId>.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- rowAffinity Boolean
- Must be used with multi-cluster routing. If true, then this app profile will use row affinity sticky routing. With row affinity, Bigtable will route single row key requests based on the row key, rather than randomly. Instead, each row key will be assigned to a cluster by Cloud Bigtable, and will stick to that cluster. Choosing this option improves read-your-writes consistency for most requests under most circumstances, without sacrificing availability. Consistency is not guaranteed, as requests may still fail over between clusters in the event of errors or latency.
- singleCluster Property MapRouting 
- Use a single-cluster routing policy. Structure is documented below.
- standardIsolation Property Map
- The standard options used for isolating this app profile's traffic from other use cases. Structure is documented below.
Supporting Types
AppProfileDataBoostIsolationReadOnly, AppProfileDataBoostIsolationReadOnlyArgs              
- ComputeBilling stringOwner 
- The Compute Billing Owner for this Data Boost App Profile.
Possible values are: HOST_PAYS.
- ComputeBilling stringOwner 
- The Compute Billing Owner for this Data Boost App Profile.
Possible values are: HOST_PAYS.
- computeBilling StringOwner 
- The Compute Billing Owner for this Data Boost App Profile.
Possible values are: HOST_PAYS.
- computeBilling stringOwner 
- The Compute Billing Owner for this Data Boost App Profile.
Possible values are: HOST_PAYS.
- compute_billing_ strowner 
- The Compute Billing Owner for this Data Boost App Profile.
Possible values are: HOST_PAYS.
- computeBilling StringOwner 
- The Compute Billing Owner for this Data Boost App Profile.
Possible values are: HOST_PAYS.
AppProfileSingleClusterRouting, AppProfileSingleClusterRoutingArgs          
- ClusterId string
- The cluster to which read/write requests should be routed.
- AllowTransactional boolWrites 
- If true, CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.
- ClusterId string
- The cluster to which read/write requests should be routed.
- AllowTransactional boolWrites 
- If true, CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.
- clusterId String
- The cluster to which read/write requests should be routed.
- allowTransactional BooleanWrites 
- If true, CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.
- clusterId string
- The cluster to which read/write requests should be routed.
- allowTransactional booleanWrites 
- If true, CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.
- cluster_id str
- The cluster to which read/write requests should be routed.
- allow_transactional_ boolwrites 
- If true, CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.
- clusterId String
- The cluster to which read/write requests should be routed.
- allowTransactional BooleanWrites 
- If true, CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.
AppProfileStandardIsolation, AppProfileStandardIsolationArgs        
- Priority string
- The priority of requests sent using this app profile.
Possible values are: PRIORITY_LOW,PRIORITY_MEDIUM,PRIORITY_HIGH.
- Priority string
- The priority of requests sent using this app profile.
Possible values are: PRIORITY_LOW,PRIORITY_MEDIUM,PRIORITY_HIGH.
- priority String
- The priority of requests sent using this app profile.
Possible values are: PRIORITY_LOW,PRIORITY_MEDIUM,PRIORITY_HIGH.
- priority string
- The priority of requests sent using this app profile.
Possible values are: PRIORITY_LOW,PRIORITY_MEDIUM,PRIORITY_HIGH.
- priority str
- The priority of requests sent using this app profile.
Possible values are: PRIORITY_LOW,PRIORITY_MEDIUM,PRIORITY_HIGH.
- priority String
- The priority of requests sent using this app profile.
Possible values are: PRIORITY_LOW,PRIORITY_MEDIUM,PRIORITY_HIGH.
Import
AppProfile can be imported using any of these accepted formats:
- projects/{{project}}/instances/{{instance}}/appProfiles/{{app_profile_id}}
- {{project}}/{{instance}}/{{app_profile_id}}
- {{instance}}/{{app_profile_id}}
When using the pulumi import command, AppProfile can be imported using one of the formats above. For example:
$ pulumi import gcp:bigquery/appProfile:AppProfile default projects/{{project}}/instances/{{instance}}/appProfiles/{{app_profile_id}}
$ pulumi import gcp:bigquery/appProfile:AppProfile default {{project}}/{{instance}}/{{app_profile_id}}
$ pulumi import gcp:bigquery/appProfile:AppProfile default {{instance}}/{{app_profile_id}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the google-betaTerraform Provider.