Я новичок в Protobufs; Я не имел большого воздействия на них. Одна из конечных точек API, от которой нам требуются данные, использует данные в кодировке Protobuf. Обычно это не было бы проблемой, если бы я использовал «поддерживаемый» язык, такой как JavaScript, Java, Python или даже R, для декодирования данных ...
К сожалению, я пытаюсь автоматизировать процесс с помощью Alteryx. Вместо того, чтобы задавать вопросы об Alteryx, у меня есть несколько вопросов о самих Protobufs, поэтому я лучше понимаю эту ситуацию. Я ознакомился с реализацией Protobufs на Java и Python и имею общее представление о том, как их использовать.
Для предположения (пожалуйста, исправьте меня, если я ошибаюсь), Protobuf - это метод сериализации структурированных данных, где схема .proto используется для кодирования / декодирования данных в необработанный двоичный файл. Моя путаница лежит с компилятором. Документация Google и примеры для Python / Java показывают, как компилятор Protobuf (библиотека) необходим для запуска процесса кодирования и декодирования. Читая веб-сайт Google, вы узнаете, что Protobufs «независимы от языка и платформы», но я не понимаю, как это возможно, если вам нужен компилятор (и файл .proto!) Для декодирования. Например, как кто-либо, использующий язык, отличный от языков, где Google создал компилятор, может декодировать данные, закодированные в Protobuf? Я что-то пропустил?
Я полагаю, что я что-то упустил, так как кажется странным, что публичный API может вызвать это ограничение.