Запасы активов экспортируются в облачное хранилище в формате JSON. Я хочу загрузить эти данные в BigTable, но не знаю, как лучше всего.
Я думаю, что конвейер будет выглядеть примерно так: «Облачное хранилище»> «ETL в файлы CSV/последовательности»> «Загрузить в BigTable с помощью DataFlow».
Какие есть варианты загрузки данных JSON Cloud Storage в BigTable?
Поскольку и JSON, и Bigtable настолько гибки и аморфны, между ними нет готовых преобразований. Google предоставляет все части, но вам нужно написать код, чтобы склеить их вместе. В частности, сопоставление документов JSON со столбцами и строками Bigtable должно выполняться с нуля.
Используйте клиент Cloud Asset [1] для экспорта ресурсов в GCS.
В зависимости от объема экспорта либо
Используйте вашу любимую библиотеку JSON для разбора каждой строки
Преобразуйте каждый объект JSON в мутацию Bigtable
Используйте приемник Dataflow BigtableIO[3] или клиент Bigtable [4] для записи данных в Bigtable.
[1] https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/libraries [2] https://cloud.google.com/storage/docs/reference/libraries [3] https://beam.apache.org/releases/javadoc/2.12.0/org/apache/beam/sdk/io/gcp/bigtable/BigtableIO.html [4] https://cloud.google.com/bigtable/docs/reference/libraries