Можно ли представить данные CSV в Буферном формате Протокола Google?

add_two_fields_value_by_using_script Я нашел ответ, нам нужно использовать опцию «Скрипт». Сначала мы устанавливаем метрику, чтобы получить сумму яблока, затем результат суммы яблока добавляется в doc ["orange"]. Value

В скрипте я написал что-то вроде этого _value + doc ["orange" ] .value

и возвращаемое значение на графике верное! : D

5
задан Jon Skeet 17 January 2009 в 19:10
поделиться

2 ответа

Ну, это является, конечно, представимым. Что-то как:

message CsvFile {
    repeated CsvHeader header = 1;
    repeated CsvRow row = 2;
}

message CsvHeader {
    require string name = 1;
    require ColumnType type = 2;
}

enum ColumnType {
    DECIMAL = 1;
    STRING = 2;
}

message CsvRow {
    repeated CsvValue value = 1;
}

// Note that the column is implicit based on position within row    
message CsvValue {
    optional string string_value = 1;
    optional Decimal decimal_value = 2;
}

message Decimal {
    // However you want to represent it (there are various options here)
}

Я не уверен, сколько преимущества это предоставит, обратите внимание... Можно, конечно, добавить, больше информации (добавьте к сообщению CsvFile), и соответствование требованиям завтрашнего дня находится в "нормальном ПБ, путь" - только добавляет дополнительные поля и т.д.

4
ответ дан 14 December 2019 в 19:28
поделиться

Ну, protobuf-сеть (моя версия) основана на регулярных типах.NET, таким образом, не (так как она не справится с различными схемами все время). Но версия Jon могла бы позволить динамические типы. Лично, я просто использовал бы CSV и выполнил бы его через GZipStream - я ожидаю, что это будет хорошо для цели.


Править: на самом деле я забыл: protobuf-сеть действительно поддерживает расширяемые объекты, но необходимо быть немного осторожными..., она зависела бы от полного контекста, я ожидаю.

Плюс подход Jon вложенных данных, вероятно, работал бы также.

1
ответ дан 14 December 2019 в 19:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: