1// Copyright 2020 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package google.cloud.automl.v1beta1;
18
19import "google/api/resource.proto";
20import "google/cloud/automl/v1beta1/io.proto";
21
22option go_package = "cloud.google.com/go/automl/apiv1beta1/automlpb;automlpb";
23option java_multiple_files = true;
24option java_package = "com.google.cloud.automl.v1beta1";
25option php_namespace = "Google\\Cloud\\AutoMl\\V1beta1";
26option ruby_package = "Google::Cloud::AutoML::V1beta1";
27
28// A specification of a relational table.
29// The table's schema is represented via its child column specs. It is
30// pre-populated as part of ImportData by schema inference algorithm, the
31// version of which is a required parameter of ImportData InputConfig.
32// Note: While working with a table, at times the schema may be
33// inconsistent with the data in the table (e.g. string in a FLOAT64 column).
34// The consistency validation is done upon creation of a model.
35// Used by:
36//   *   Tables
37message TableSpec {
38  option (google.api.resource) = {
39    type: "automl.googleapis.com/TableSpec"
40    pattern: "projects/{project}/locations/{location}/datasets/{dataset}/tableSpecs/{table_spec}"
41  };
42
43  // Output only. The resource name of the table spec.
44  // Form:
45  //
46  // `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/tableSpecs/{table_spec_id}`
47  string name = 1;
48
49  // column_spec_id of the time column. Only used if the parent dataset's
50  // ml_use_column_spec_id is not set. Used to split rows into TRAIN, VALIDATE
51  // and TEST sets such that oldest rows go to TRAIN set, newest to TEST, and
52  // those in between to VALIDATE.
53  // Required type: TIMESTAMP.
54  // If both this column and ml_use_column are not set, then ML use of all rows
55  // will be assigned by AutoML. NOTE: Updates of this field will instantly
56  // affect any other users concurrently working with the dataset.
57  string time_column_spec_id = 2;
58
59  // Output only. The number of rows (i.e. examples) in the table.
60  int64 row_count = 3;
61
62  // Output only. The number of valid rows (i.e. without values that don't match
63  // DataType-s of their columns).
64  int64 valid_row_count = 4;
65
66  // Output only. The number of columns of the table. That is, the number of
67  // child ColumnSpec-s.
68  int64 column_count = 7;
69
70  // Output only. Input configs via which data currently residing in the table
71  // had been imported.
72  repeated InputConfig input_configs = 5;
73
74  // Used to perform consistent read-modify-write updates. If not set, a blind
75  // "overwrite" update happens.
76  string etag = 6;
77}
78