An automatic tool for copying and converting Firebase Authentication data to BigQuery.
An automatic tool for copying and converting Firebase Authentication data to BigQuery.
Inspired by firestore-to-bigquery-export
npm i firebase-authentication-to-bigquery-export
import bigExport from 'firebase-authentication-to-bigquery-export'
// or
const bigExport = require('firebase-authentication-to-bigquery-export')
// then
const GCPSA = require('./Your-Service-Account-File.json')
bigExport.setBigQueryConfig(GCPSA)
bigExport.setFirebaseConfig(GCPSA)
bigExport.setBigQueryConfig(
serviceAccountFile // JSON
)
bigExport.setFirebaseConfig(
serviceAccountFile // JSON
)
bigExport.createBigQueryTables()
bigExport.copyToBigQuery(
verbose // Boolean
)
bigExport.deleteBigQueryTables()
/*
Initialize BigQuery dataset named 'authentication' with four firebase authentication.
*/
bigExport.createBigQueryTables()
.then(res => {
console.log(res)
})
.catch(error => console.error(error))
Then, you can transport your data:
/*
Copying and converting from Firebase Authentication data
*/
bigExport.copyToBigQuery()
.then(res => {
console.log('Copied ' + res + ' documents to BigQuery.')
})
.catch(error => console.error(error))
After that, you may want to refresh your data. For the time being, the quick and dirty way is to delete your tables and make new ones:
// Deleting the given BigQuery tables.
bigExport.deleteBigQueryTables()
.then(res => {
console.log(res)
})
.catch(error => console.error(error))
Maybe you want to refresh / overwrite a single table?
// Overwrites the users BigQuery table with fresh data from Firebase Authentication
bigExport.deleteBigQueryTables()
.then(() => {
bigExport.createBigQueryTables()
})
.then(promises => {
return bigExport.copyToBigQuery()
})
.then(res => {
console.log('Copied to BigQuery.')
})
.catch(error => console.error(error))
Please use the issue tracker.