lowman.flowman-kernel-api.1.2.0-cdp7-spark3.3-hadoop3.1.source-code.dataframe.proto Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of flowman-kernel-api Show documentation
Show all versions of flowman-kernel-api Show documentation
Flowman Kernel gRPC protocol definition
syntax = "proto3";
option java_multiple_files = true;
option java_package = "com.dimajix.flowman.kernel.proto";
option java_outer_classname = "DataFrameProto";
package com.dimajix.flowman.kernel;
import "common.proto";
message StructField {
string name = 1;
bool nullable = 2;
optional string description = 3;
optional string format = 4;
optional string collation = 5;
optional string charset = 6;
string sqlType = 7;
oneof type {
StructType struct = 10;
MapType map = 11;
ArrayType array = 12;
ScalarType scalar = 13;
}
}
message StructType {
string typeName = 1;
repeated StructField fields = 2;
}
message MapType {
string typeName = 1;
string keyType = 2;
oneof valueType {
StructType struct = 10;
MapType map = 11;
ArrayType array = 12;
string scalar = 13;
}
}
message ArrayType {
string typeName = 1;
oneof elementType {
StructType struct = 10;
MapType map = 11;
ArrayType array = 12;
string scalar = 13;
}
}
message ScalarType {
string typeName = 1;
}
message MapElement {
optional Field key = 1;
optional Field value = 2;
}
message Map {
repeated MapElement values = 1;
}
message Array {
repeated Field values = 1;
}
message Null {}
message Field {
oneof value {
double double = 1;
int64 long = 2;
bool bool = 3;
string string = 4;
bytes bytes = 5;
Timestamp timestamp = 6;
Date date = 7;
Map map = 8;
Array array = 9;
Row row = 10;
Null null = 11;
}
}
message Row {
repeated Field field = 1;
}
message DataFrame {
StructType schema = 1;
repeated Row rows = 2;
}