<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article Lakeflow Connect: Message Bus Ingestion - Now shipping your logs directly! (Beta) in Technical Blog</title>
    <link>https://community.databricks.com/t5/technical-blog/lakeflow-connect-message-bus-ingestion-now-shipping-your-logs/ba-p/167458</link>
    <description>&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Vicky_Bukta_DB_1-1788469144356.jpeg" style="width: 999px;"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/30686i3452E443E10689DB/image-size/large?v=v2&amp;amp;px=999" role="button" title="Vicky_Bukta_DB_1-1788469144356.jpeg" alt="Vicky_Bukta_DB_1-1788469144356.jpeg" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Take a quick inventory of where your operational data lives right now. There is probably a &lt;/SPAN&gt;&lt;STRONG&gt;Kafka&lt;/STRONG&gt;&lt;SPAN&gt; cluster carrying your event backbone, or perhaps &lt;/SPAN&gt;&lt;STRONG&gt;RabbitMQ&lt;/STRONG&gt;&lt;SPAN&gt; capturing messages on a factory floor or between services. Getting this data into your lakehouse for analytics has traditionally meant standing up, scaling, and babysitting a custom ingestion pipeline for every topic or queue.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/streaming-overview" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;Lakeflow Connect&lt;/STRONG&gt;&lt;/A&gt;&lt;SPAN&gt; now eliminates this maintenance burden. &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/kafka" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;Kafka&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt; and &lt;/STRONG&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/rabbitmq" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;RabbitMQ&lt;/STRONG&gt;&lt;/A&gt;&lt;SPAN&gt; ingestion are now available as &lt;/SPAN&gt;&lt;STRONG&gt;fully managed streaming connectors (Beta)&lt;/STRONG&gt;&lt;SPAN&gt;,&amp;nbsp; allowing you to bring your most demanding operational streams into the lakehouse with zero infrastructure to manage. You simply point a connector at your source stream, and the data flows continuously into Delta.&lt;/SPAN&gt;&lt;/P&gt;
&lt;H2&gt;&lt;SPAN&gt;Your workload changes, your pipelines should too&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P&gt;&lt;SPAN&gt;Lakeflow Connect for message buses is packed with features to handle your toughest workloads. Advanced functionality, such as bin-packing under the hood, allows us to effectively distribute and bundle your topic ingestion across compute resources for optimal performance.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Think back to how you managed your low- to moderate-workload. How do they change and fluctuate over the course of a week or month? It's common to see events spike during peak periods, such as flash sales, working hours, or newsletters being sent out. This translates to fluctuations in volume for your topics. Having separate dedicated pipelines is great for durability, but can be costly. On the other hand, bundling your topics into a single pipeline can be messy to maintain when scaling clusters is required for matriculation.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Bin-packing allows managed Lakeflow Connect streaming ingestion to use a single CPU core to process data from multiple Kafka partitions within a single task more efficiently. Lakeflow Connect is also serverless, which means that you only pay for the compute you use, rather than the compute you provisioned. The result is a cost-effective pipeline that can scale elasticity in response to your changing volumes.&lt;/SPAN&gt;&lt;/P&gt;
&lt;H2&gt;&lt;SPAN&gt;Getting started with the managed connectors&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P&gt;&lt;SPAN&gt;These managed connectors are configured today with &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/dev-tools/bundles/" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;Declarative Automation Bundles (DABs)&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;, &lt;/STRONG&gt;&lt;SPAN&gt;with the exception of RabbitMQ, which is coming soon, and the pipeline API, which means you can author them from a notebook or check them into your source code. Point-and-click &lt;/SPAN&gt;&lt;STRONG&gt;UI authoring is coming&lt;/STRONG&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Each connector uses two pieces:&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;A &lt;/SPAN&gt;&lt;STRONG&gt;Connection&lt;/STRONG&gt;&lt;SPAN&gt;, a Unity Catalog securable that stores the broker endpoint and credentials. You create it once in &lt;/SPAN&gt;&lt;STRONG&gt;Catalog Explorer&lt;/STRONG&gt;&lt;SPAN&gt; (choose the connector type and enter the bootstrap servers or broker endpoint plus authentication), and reference it by name in your pipelines.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;An &lt;/SPAN&gt;&lt;STRONG&gt;ingestion pipeline&lt;/STRONG&gt;&lt;SPAN&gt;, defined as a bundle, that maps sources to destination tables and runs on &lt;/SPAN&gt;&lt;STRONG&gt;serverless compute&lt;/STRONG&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;H3&gt;&lt;SPAN&gt;Example&lt;/SPAN&gt;&lt;/H3&gt;
&lt;P&gt;&lt;SPAN&gt;Here is a minimal Kafka ingestion pipeline. It reads two topics into a single destination table.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;This example demonstrates the following:&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Selecting the UC connection to our Kafka cluster via &lt;/SPAN&gt;&lt;SPAN&gt;connection_name&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Describing the managed Kafka pipeline via &lt;/SPAN&gt;&lt;SPAN&gt;kafka_pipeline&lt;/SPAN&gt;&lt;/LI&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="2"&gt;&lt;SPAN&gt;Choosing a destination via destination_catalog, destination_schema, which represents the schema, and destination_table. Note that &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/kafka-reference#fanout-options" target="_blank" rel="noopener"&gt;&lt;SPAN&gt;fanout rules&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt; can be specified to autocreate tables.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;/OL&gt;
&lt;LI-CODE lang="markup"&gt;variables:
  connection_name:
    default: my-kafka-connection
  dest_catalog:
    default: main
  dest_schema:
    default: kafka_ingest
resources:
  pipelines:
    kafka_pipeline:
      name: kafka-ingestion-pipeline
      continuous: true
      channel: PREVIEW
      catalog: ${var.dest_catalog}
      target: ${var.dest_schema}
      ingestion_definition:
        connection_name: ${var.connection_name}
        objects:
          - table:
              source_table: N/A
              destination_catalog: ${var.dest_catalog}
              destination_schema: ${var.dest_schema}
              destination_table: user_events
              connector_options:
                kafka_options:
                  topics: [user-events, power-user-events]&lt;/LI-CODE&gt;
&lt;P&gt;&lt;SPAN&gt;Deploy it with the bundle CLI:&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;databricks bundle init
databricks bundle deploy&lt;/LI-CODE&gt;
&lt;P&gt;&lt;SPAN&gt;The connector handles the rest: reading continuously from the topics and writing to the &lt;/SPAN&gt;&lt;SPAN&gt;user_events&lt;/SPAN&gt;&lt;SPAN&gt; streaming table.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Flexible data handling with Variant&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;Kafka messages are rarely perfectly uniform, so the connector lets you say how to deserialize values and what to do when the shape drifts. This is where it connects to schema management directly.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;This example demonstrates the following:&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;format&lt;/SPAN&gt;&lt;SPAN&gt; is set to &lt;/SPAN&gt;&lt;SPAN&gt;STRING&lt;/SPAN&gt;&lt;SPAN&gt; and &lt;/SPAN&gt;&lt;SPAN&gt;JSON&lt;/SPAN&gt;&lt;SPAN&gt;. The &lt;/SPAN&gt;&lt;SPAN&gt;JSON&lt;/SPAN&gt;&lt;SPAN&gt; body of the message will then be parsed to a variant column for ultimate flexibility.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI style="font-weight: 400;" aria-level="1"&gt;&lt;SPAN&gt;Starting_offset is set to the latest signal from which we should start ingestion in the topic. Options are the &lt;FONT face="andale mono,times"&gt;latest&lt;/FONT&gt; and the &lt;/SPAN&gt;&lt;FONT face="andale mono,times"&gt;earliest&lt;/FONT&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;Learn more from our documentation &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/kafka-reference#transformer-options" target="_blank" rel="noopener"&gt;&lt;SPAN&gt;here&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;LI-CODE lang="markup"&gt;ingestion_definition:
  connection_name: ${var.connection_name}
  objects:
    - table:
	 source_table: N/A
        destination_catalog: ${var.dest_catalog}
        destination_schema: ${var.dest_schema}
        destination_table: user_events
        connector_options:
          kafka_options:
            topics:
              - user-events
            starting_offset: latest
            key_transformer:
              format: STRING
            value_transformer:
              format: JSON&lt;/LI-CODE&gt;
&lt;P&gt;&lt;STRONG&gt;Schema Inference and Evolution.&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Though schemas drift slowly, teams typically establish rules for schema evolution to ensure backward compatibility (e.g., adding optional columns or widening types). Lakeflow Connect automatically applies forward-rolling schema updates, maintaining schematized data and optimal query performance&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;ingestion_definition:
  connection_name: ${var.connection_name}
  objects:
    - table:
	 source_table: N/A
        destination_catalog: ${var.dest_catalog}
        destination_schema: ${var.dest_schema}
        destination_table: user_events
        connector_options:
          kafka_options:
            topics:
              - user-events
            starting_offset: latest
            key_transformer:
              format: STRING
            value_transformer:
		format: JSON
		json_options:
		  schema_evolution_mode: ADD_NEW_COLUMNS&lt;/LI-CODE&gt;
&lt;P&gt;&lt;STRONG&gt;Routing to many tables (fanout).&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Other times, it's not about schema drift. It's the fact that a single Kafka topic could contain many different event types. Our fanout capability lets you route events to different tables using an expression, rather than defining a pipeline per table.&lt;/SPAN&gt;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;objects:
  - schema:
      source_schema: N/A
      destination_catalog: ${var.dest_catalog}
      destination_schema: ${var.dest_schema}
      connector_options:
        kafka_options:
          topic_pattern: 'events-.*'
          starting_offset: earliest
	   value_transformer: 
     format: STRING
      fanout_options:
        fanout_by: 'cast(value as string):event_type::string'
        transforms:
          - format: JSON
            input_column: value&lt;/LI-CODE&gt;
&lt;H2&gt;&lt;SPAN&gt;Decision matrix: managed connector or forwarder?&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P&gt;&lt;SPAN&gt;There are two approaches to move your data: Push vs. pull.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Our &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/streaming-overview" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;managed streaming connectors&lt;/STRONG&gt;&lt;/A&gt;&lt;SPAN&gt; are &lt;/SPAN&gt;&lt;STRONG&gt;pull-based&lt;/STRONG&gt;&lt;SPAN&gt;. Lakeflow Connect reaches into your source, polls for data, and replicates it. Due to the fact that it reaches in, the connector &lt;/SPAN&gt;&lt;STRONG&gt;requires inbound network access&lt;/STRONG&gt;&lt;SPAN&gt; to the source. In exchange, there is &lt;/SPAN&gt;&lt;STRONG&gt;no software for you to run or maintain&lt;/STRONG&gt;&lt;SPAN&gt;. It is a fully managed service.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;A &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/zerobus-overview" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;Zerobus Ingest forwarder&lt;/STRONG&gt;&lt;/A&gt;&lt;SPAN&gt; is &lt;/SPAN&gt;&lt;STRONG&gt;push-based&lt;/STRONG&gt;&lt;SPAN&gt;. A sidecar process you build with the Zerobus SDK runs inside your perimeter and pushes data out, so all traffic is &lt;/SPAN&gt;&lt;STRONG&gt;outbound only&lt;/STRONG&gt;&lt;SPAN&gt;. Zerobus is flexible enough that you can build a forwarder from almost &lt;/SPAN&gt;&lt;STRONG&gt;any source system&lt;/STRONG&gt;&lt;SPAN&gt;. The cost is that you own and run that agent.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Our connector and Zerobus Ingest services are therefore complementary, rather than competing.&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Evaluate the tradeoff between the managed connector and the Zerobus forwarder based on your security posture and operational constraints, as outlined in the matrix below.&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TH&gt;&amp;nbsp;&lt;/TH&gt;
&lt;TH&gt;
&lt;P&gt;&lt;STRONG&gt;Managed streaming connector&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TH&gt;
&lt;TH&gt;
&lt;P&gt;&lt;STRONG&gt;Zerobus forwarder&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TH&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Direction&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Pull.&lt;/STRONG&gt;&lt;SPAN&gt; Lakeflow Connect replicates from the source&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Push.&lt;/STRONG&gt;&lt;SPAN&gt; Your agent pushes records out&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Who runs it&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;SPAN&gt;Fully managed by &lt;/SPAN&gt;&lt;STRONG&gt;Lakeflow Connect&lt;/STRONG&gt;&lt;SPAN&gt;. No software to run&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;You build and run &lt;/STRONG&gt;&lt;SPAN&gt;the agent (using the Zerobus SDK)&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Network&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;SPAN&gt;Requires &lt;/SPAN&gt;&lt;STRONG&gt;inbound&lt;/STRONG&gt;&lt;SPAN&gt; access to the source&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Outbound only&lt;/STRONG&gt;&lt;SPAN&gt; from inside your perimeter&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Source of truth&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;SPAN&gt;Stays in the &lt;/SPAN&gt;&lt;STRONG&gt;message bus&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;SPAN&gt;Is the &lt;/SPAN&gt;&lt;STRONG&gt;lakehouse.&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Sources&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;SPAN&gt;Kafka, RabbitMQ, other coming soon.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;Any source&lt;/STRONG&gt;&lt;SPAN&gt; you can write code against.&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Vicky_Bukta_DB_0-1788469122486.png" style="width: 999px;"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/30685iE423AFDD6CF37BD7/image-size/large?v=v2&amp;amp;px=999" role="button" title="Vicky_Bukta_DB_0-1788469122486.png" alt="Vicky_Bukta_DB_0-1788469122486.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H2&gt;&lt;SPAN&gt;What's next?&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P&gt;&lt;SPAN&gt;The managed streaming connectors are just getting started. UI-based authoring is on the way and more data sources are coming soon. On the horizon, we are adding native support for &lt;/SPAN&gt;&lt;STRONG&gt;Avro&lt;/STRONG&gt;&lt;SPAN&gt; and &lt;/SPAN&gt;&lt;STRONG&gt;Protobuf&lt;/STRONG&gt;&lt;SPAN&gt;, including full &lt;/SPAN&gt;&lt;STRONG&gt;schema registry integration&lt;/STRONG&gt;&lt;SPAN&gt;. Full UI experience is around the corner.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Zerobus Ingest is adding &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/zerobus-kafka" target="_blank" rel="noopener"&gt;&lt;STRONG&gt;Apache Kafka-compatible&lt;/STRONG&gt;&lt;/A&gt;&lt;SPAN&gt; and &lt;/SPAN&gt;&lt;STRONG&gt;MQTT-compatible&lt;/STRONG&gt;&lt;SPAN&gt; producer APIs for the push-based side of the story. Whichever direction your data needs to move, the trade-offs in the matrix above will still guide you.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Ready to try it? Check out the &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/kafka" target="_blank" rel="noopener"&gt;&lt;SPAN&gt;Kafka &lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt;and &lt;/SPAN&gt;&lt;A href="https://docs.databricks.com/aws/en/ingestion/lakeflow-connect/rabbitmq" target="_blank" rel="noopener"&gt;&lt;SPAN&gt;RabbitMQ connector docs&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN&gt; to set up your first managed pipeline.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;&lt;SPAN&gt;Have questions, or want to share which message buses you are bringing into your lakehouse? Join the discussion below!&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 04 Sep 2026 17:21:25 GMT</pubDate>
    <dc:creator>Vicky_Bukta_DB</dc:creator>
    <dc:date>2026-09-04T17:21:25Z</dc:date>
    <item>
      <title>Lakeflow Connect: Message Bus Ingestion - Now shipping your logs directly! (Beta)</title>
      <link>https://community.databricks.com/t5/technical-blog/lakeflow-connect-message-bus-ingestion-now-shipping-your-logs/ba-p/167458</link>
      <description>&lt;DIV class="kix-appview-editor-container"&gt;
&lt;DIV class="kix-appview-editor"&gt;
&lt;DIV data-grammarly-part="highlights"&gt;
&lt;DIV class="AXzy4" data-grammarly-part="highlight-group"&gt;
&lt;DIV class="gUhBO jlbiw oR786 fX3Dk" data-highlight-color-name="blue" data-highlight-format="enclosing" data-grammarly-part="highlight" data-key="1000274-323|0-1"&gt;
&lt;DIV class="wPV13"&gt;
&lt;P&gt;Effortlessly ingest Kafka and RabbitMQ data into your Lakehouse with Lakeflow Connect's new fully managed streaming connectors. Scale without the maintenance.&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Fri, 04 Sep 2026 17:21:25 GMT</pubDate>
      <guid>https://community.databricks.com/t5/technical-blog/lakeflow-connect-message-bus-ingestion-now-shipping-your-logs/ba-p/167458</guid>
      <dc:creator>Vicky_Bukta_DB</dc:creator>
      <dc:date>2026-09-04T17:21:25Z</dc:date>
    </item>
  </channel>
</rss>

