Skip to content
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
52 lines (38 sloc) 1.38 KB
A deeper look at Vector's data model

Data Model


As shown above, Vector generalizes all data flowing through Vector as "events":

{% code-tabs %} {% code-tabs-item title="event.proto" %}

message EventWrapper {
  oneof event {
    Log log = 1;
    Metric metric = 2;

{% endcode-tabs-item %} {% endcode-tabs %}

You can view a complete definition in the event proto
. You'll notice that each event must be one of 2 types:

{% page-ref page="../data-model/" %}

{% page-ref page="../data-model/" %}


Why not just "event"?

  1. We like the "everything is an event" philosophy a lot.
  2. We recognize that there's a large gap between that idea and a lot of existing tooling.
  3. By starting "simple" (from an integration perspective, i.e. meeting people where they are) and evolving our data model as we encounter the specific needs of new sources/sinks/transforms, we avoid overdesigning yet another grand unified data format.
  4. Starting with support for a little more "old school" model makes us a better tool for supporting incremental progress in existing infrastructures towards more event-based architectures.
You can’t perform that action at this time.