- https://firebase.google.com/docs/firestore
- https://cloud.google.com/firestore/docs/reference/rest
- https://cloud.google.com/iam/docs/service-accounts
- Consumes messages from Kafka-native Condense topics.
- Writes documents into Firestore collections.
- Supports Insert, Update, and Upsert write modes.
- Performs configurable batch writes for improved throughput.
- Authenticates securely using Google Cloud Service Accounts.
- The connector subscribes to the configured Kafka-native topic.
- It authenticates using the provided Google Cloud Service Account.
- Incoming messages are converted into Firestore document format.
- Documents are written into the configured Firestore collection.
- Depending on the selected write mode, documents are inserted, updated, or upserted.
Field-by-Field Explanation
1. Title
Unique identifier for the connector.
Example:
Firestore_Output_Connector
2. Firebase Project ID
Identifier of the Firebase project hosting Firestore.
Example:
my-firebase-project
3. Service Account Key
JSON credentials for a Google Cloud Service Account with Firestore write permissions.
Generate the key from:
Firebase Console → Project Settings → Service Accounts
4. Firestore Collection Path
Destination collection where documents will be stored.
Examples:
- telemetry_data
- fleet/vehicle_logs
- Insert
- Update
- Upsert
100
Larger batch sizes improve throughput but should remain within Firestore limits.
7. Topic (Input)
Kafka-native Condense topic from which records are consumed.
Example:
vehicle_data_stream
Sample Configuration Example
- Use dedicated Firestore collections for different business domains.
- Use least-privilege Service Accounts for authentication.
- Rotate Service Account credentials periodically.
- Test connector configurations with small batch sizes before deploying to production.
- Monitor connector logs and Firestore quotas to ensure reliable streaming.