{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"redocly_category":"Products","product_name":"Real-time","type":"markdown"},"seo":{"title":"Real-time 2.0 Configuration and Initialization","description":"Treasure Data Product Documentation · Collect and Unify · Segment and Activate · Experiment and Analyze · Decisioning Automate with AI Scale and Trust.","siteUrl":"https://docs.treasuredata.com","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"real-time-20-configuration-and-initialization","__idx":0},"children":["Real-time 2.0 Configuration and Initialization"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"overview","__idx":1},"children":["Overview"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Configuration and initialization in Real-Time 2.0 cover how you set up ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/customer-data-platform/real-time/real-time-id-stitching-overview"},"children":["id stitching"]},", define events and attributes, and prepare batch data for use in real-time. This section outlines the key behaviors, limits, and best practices to help you configure Real-Time 2.0 correctly from the start."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Category"},"children":["Category"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Limit / Behavior"},"children":["Limit / Behavior"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Notes"},"children":["Notes"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["ID Stitching Keys"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Up to 100 IDs can be defined as stitching keys; stitching keys must have string values"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Examples: email, user_id, td_client_id. Used to link events to profiles."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Batch ID Sync (Initialization)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Optional. Batch ID graphs can be imported into real-time to ensure continuity"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Recommended when existing batch identities need to be available in real-time."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Profile Key (Primary ID)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Defined at Parent Segment creation; cannot be changed later"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Determines the main join key across batch and real-time data."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Event Tables"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Maximum 100 event tables per Parent Segment"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Applies to both batch and real-time event tables."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Event Definitions"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No hard limit"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Aggregate filter length across definitions must be ≤1000 characters."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Attribute Backfill"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Supported for batch attributes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Use backfill to pre-populate RT attributes with values from existing batch data."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Importing Batch Attributes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Supported"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Newly added fields in batch tables become available after segment refresh."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["New Event Fields"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Automatically available in the database"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Must be explicitly configured as RT attributes to use in personalization or triggers."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Multi-Account Deployment"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Supported via CI/CD pipeline"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Configurations can be exported from one environment and reused in another."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"expected-behavior","__idx":2},"children":["Expected Behavior"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Batch ID Sync: Not mandatory, but recommended when migrating existing batch identities into real-time."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Profile Keys: Chosen during Parent Segment setup and remain fixed afterward."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Attributes: Backfill lets you populate RT attributes with historical values. New fields automatically flow into the system but require explicit configuration to be used in activations or personalization."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Deployment Across Accounts: Supported through CI/CD processes to ensure consistent configuration across multiple environments."]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"batch-id-graph-upload-excluding-redundant-data","__idx":3},"children":["Batch ID Graph Upload: Excluding Redundant Data"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When uploading the batch ID graph, exclude the following — they serve no purpose in Real-Time 2.0 and add unnecessary overhead:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Batch keys that are not used as Real-Time 2.0 stitching keys"]}," — identifiers from the batch layer that are not configured as Real-Time 2.0 stitching keys cannot participate in real-time identity resolution."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Batch Unification IDs that have no associated Real-Time 2.0 stitching keys"]}," — profiles without any real-time stitching key cannot be matched to incoming real-time events and do not need to be uploaded."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"notes--recommendations","__idx":4},"children":["Notes & Recommendations"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Plan your profile key strategy before enabling real-time to avoid rework."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use attribute backfill when enabling real-time for existing batch segments."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Manage configurations with CI/CD to simplify multi-environment deployments."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Regularly review new batch or event fields to decide if they should be promoted as RT attributes."]}]}]}]},"headings":[{"value":"Real-time 2.0 Configuration and Initialization","id":"real-time-20-configuration-and-initialization","depth":1},{"value":"Overview","id":"overview","depth":2},{"value":"Expected Behavior","id":"expected-behavior","depth":2},{"value":"Batch ID Graph Upload: Excluding Redundant Data","id":"batch-id-graph-upload-excluding-redundant-data","depth":2},{"value":"Notes & Recommendations","id":"notes--recommendations","depth":2}],"frontmatter":{"seo":{"title":"Real-time 2.0 Configuration and Initialization"}},"lastModified":"2026-05-14T21:24:05.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/customer-data-platform/real-time/real-time-2-0-configuration-and-initialization","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}