Question
Why do I need to grant write permissions for Reverse ETL?
Product
Twilio Segment
Environment
Segment Console
Answer
Reverse ETL requires write permissions to store "record states" - this allows the system to compute "diffs" (changes) between syncs efficiently. These states are stored in a dedicated, isolated schema (e.g., _segment_reverse_etl) to ensure they remain separate from your primary production data. This architecture allows rETL to perform change tracking and calculations directly within your warehouse.
Without these write permissions, Segment would be forced to read your entire dataset during every sync and compute those differences externally. This would significantly increase both sync times and your processing costs. By granting write access to this isolated schema, we can ensure the operation remains fast and cost-effective.
While we understand the need to minimize permissions, write access to the dedicated schema is essential. One possible approach is for customers to manually create the _segment_reverse_etl schema and then restrict permissions elsewhere. However, write access to this schema remains a critical requirement for optimal functionality.
Additional Information
You can learn more about the Reverse ETL system here.