<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title><![CDATA[Analysen - Elasticsearch Labs]]></title>
    <description><![CDATA[Articles and tutorials from the Search team at Elastic]]></description>
    <copyright><![CDATA[© 2026. Elasticsearch B.V. All Rights Reserved]]></copyright>
    <image>
      <title><![CDATA[Analysen - Elasticsearch Labs]]></title>
      <url>https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt1121c0bf0e8a6e65/6a88da6340a1841030ef456f/search-labs-thumbnail.png</url>
      <link>https://www.elastic.co/de/search-labs/blog/category/analytics</link>
    </image>
    <link>https://www.elastic.co/de/search-labs/blog/category/analytics</link>
    <atom:link href="https://www.elastic.co/de/search-labs/rss/category/analytics.xml" rel="self" type="application/rss+xml"/>
    <language><![CDATA[de]]></language>
    <lastBuildDate>Mon, 28 Sep 2026 16:26:14 GMT</lastBuildDate>
  <item>
    <title><![CDATA[Verbesserung der Interaktivität des Kibana-Dashboards mit Steuerelementen für Variablen]]></title>
    <description><![CDATA[Entdecken Sie, wie Sie mit Steuerelementen für Variablen in Kibana 8.18+ einzelne Visualisierungen filtern, Zeitintervalle anpassen und nach verschiedenen Feldern in Kibana-Dashboards gruppieren können.]]></description>
    <content:encoded><![CDATA[<p>Wir freuen uns, Ihnen mitteilen zu können, dass <strong>Steuerelemente für Variablen ab Version 8.18 und in allen Versionen der Serie 9.x in Kibana-Dashboards verfügbar sind</strong>! Diese Funktion war eine der am häufigsten nachgefragten Ergänzungen von Dashboard-Benutzern – und nun ist sie endlich da 🎉 In den letzten Monaten haben wir die <a href="https://www.elastic.co/docs/explore-analyze/dashboards/add-controls#add-variable-control">Steuerelemente für Variablen</a> weiter ausgebaut und optimiert, sodass es nun an der Zeit ist, ihnen einen eigenen Blogbeitrag zu widmen.</p><h2>Was sind Steuerelemente für Variablen?</h2><p>Wenn Sie bereits mit Kibana-Dashboards gearbeitet haben, kennen Sie wahrscheinlich unsere klassischen Dashboard-Steuerelemente – diese praktischen Dropdown-Menüs, die Werte aus Ihren Daten anzeigen, sodass Sie mit wenigen Klicks Filter setzen können.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltc7405fbff7584b1b/6a17ee5cfbc5f8aea1491b5d/b82c1b25a0b38661e5ce4552f763be487d5074aa-1600x701.png" alt="" /><p>Variable Bedienelemente sehen auf der Oberfläche ähnlich aus, haben aber eine clevere Wendung: Anstatt automatisch jedes Panel auf deinem Dashboard zu filtern, können sie direkt an <a href="https://www.elastic.co/docs/explore-analyze/visualize/esorql">ES|QL-Abfragen innerhalb einzelner Visualisierungen</a> angeschlossen werden.</p><p>Das bedeutet, <em>Sie</em> können entscheiden, wo jedes Steuerelement angewendet wird. Noch besser: Sie können sie für alle möglichen kreativen Tricks verwenden – beispielsweise zum Anpassen von Zeitintervallen, zum Wechseln von Aufschlüsselungsfeldern oder zum spontanen Ändern von Visualisierungsparametern. Im Grunde genommen sorgen sie für ein wahrhaft interaktives Erlebnis auf Ihren Dashboards, sodass Sie schneller und einfacher zu Ihren Erkenntnissen gelangen.</p><h2>Anwendungsfälle für Steuerelemente für Variablen</h2><p>Steuerelemente für Variablen sind zwar nützlich, aber was kann man damit eigentlich machen? Hier sind einige Beispiele dafür, wie sie Ihre Dashboards verbessern:</p><h3>Ausgewählte Visualisierungen filtern</h3><p>Möchten Sie <em>einige</em> Visualisierungen filtern, aber andere unberührt lassen? Steuerelemente für Variablen ermöglichen Ihnen genau das. Wählen Sie die Panels aus, auf die Sie reagieren möchten, und verknüpfen Sie sie in den ES|QL-Abfragen hinter Ihren Visualisierungen.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltfd014bba50a3a61e/6a17ee5e14d90c006d79b69a/efa367363830b03bc67028aceafe78c4b44e578f-1440x562.gif" alt="" /><h3>Wählen Sie unterschiedliche Zeitintervalle aus</h3><p>Geben Sie Ihren Nutzern die Möglichkeit, zwischen „5 Minuten“, „1 Stunde“, „1 Tag“ oder anderen sinnvollen Buckets zu wechseln. Erstellen Sie ein Steuerelement für Variablen mit vordefinierten Intervallen und verbinden Sie diese mit Ihrer Zeitreihenabfrage.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt237797ddea95ce08/6a17ee602f4a5cfd65fa8996/62aa9f4e728036f8c70213b76b1cf131f36f5b4d-1440x606.gif" alt="" /><h3>Funktionen ändern</h3><p>Anstatt mehrere Diagramme für jeden Vorgang zu erstellen, können die Nutzer des Dashboards wählen, ob sie den Maximalwert, den Durchschnittswert, verschiedene Perzentile oder einen anderen Aggregator sehen möchten.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt4c856460132fb604/6a17ee627b54f920838b3991/f6a2b4c73dc35efe462c2924a153d7b3fa3a7922-1436x606.gif" alt="" /><h3>Nach verschiedenen Feldern gruppieren</h3><p>Mitunter müssen Sie die Daten während einer Untersuchung nach verschiedenen Dimensionen aufschlüsseln. Mit Steuerelementen für Variablen können Sie mehrere „Gruppieren nach“-Felder festlegen und Dashboard-Nutzer so das Feld auswählen lassen, das sie bei der Gewinnung ihrer Erkenntnisse unterstützt.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltbf1a24038dde55b8/6a17ee646864a413b6b6884c/fe8745a6fddccadba0666686b8ebc67fdaf64158-1438x606.gif" alt="" /><h2>Wie kann man sie erstellen?</h2><p>Die einfachste (und wahrscheinlich angenehmste) Methode zur Erstellung eines Steuerelements für Variablen ist direkt über den <strong>ES|QL-Abfrage-Editor</strong> in Ihrer Visualisierung. Beginnen Sie einfach mit der Eingabe Ihrer Suchanfrage, nutzen Sie das Autovervollständigungsmenü und Kibana unterstützt Sie bei der Erstellung Ihres Steuerelements.</p><p>Wenn Sie jedoch lieber mit der Variablen selbst beginnen möchten, können Sie auch zu <strong>Panel hinzufügen → Steuerelemente → Steuerelement für Variablen</strong> gehen und die Variable nach dem Erstellen des Steuerelements zu Ihren Visualisierungen hinzufügen.</p><h3>Beispiel 1: Filter-Steuerelement mit Auswahl mehrerer Werte</h3><p>1. Wählen Sie eine Visualisierung aus, die auf einer ES|QL-Abfrage basiert, und klicken Sie innerhalb der WHERE-Klausel auf „Steuerelement erstellen“</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt1356c9ac1ffce732/6a17ee661d1b83104a93e4f3/46cb6f2a6775aee152d42eb5ee85170f1bdf26cb-1600x668.png" alt="" /><p>2. Sie werden automatisch zum Flyout für die Erstellung von Variablen weitergeleitet, wo der Typ „Werte aus einer Abfrage“ für Sie ausgewählt ist und der Name der Variablen bereits vorausgefüllt ist. Beachten Sie, dass der Name eines Steuerelements immer mit „?...” beginnen muss, damit er in der Visualisierungsabfrage funktioniert.</p><p>In der Regel benötigen Sie eine Abfrage wie diese, um die Werte eines Feldes abzurufen und sie entsprechend dem im Dashboard ausgewählten Zeitraum zu aktualisieren:</p>FROM &lt;datasource_name&gt;
| WHERE @timestamp &lt;=?_tend and @timestamp &gt;?_tstart
| STATS BY &lt;field_name&gt;<img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltb34ecc3303fda700/6a17ee68a2929914e3d02d23/a2a72d4e3159923c6207908da9b4172e27cd5f81-1600x716.png" alt="" /><p>3. Beim Speichern des Steuerelements erscheint sie oben im Dashboard, und Ihre Visualisierungsabfrage wird mit dem Namen des Steuerelements für Variablen aktualisiert.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blte03c74e0c60bdb42/6a17ee6a0b0bed13cddd3636/5fc434c8951889e9769652b675191711d126a685-1600x653.png" alt="" /><p>4. Wenn Sie <a href="https://www.elastic.co/docs/explore-analyze/dashboards/add-controls#esql-multi-values-controls">Mehrfachauswahl</a> zum Steuerelement hinzufügen möchten, verwenden Sie die Funktion <code>MV_CONTAINS</code> in der Abfrage und wählen Sie bei der Erstellung des Steuerelements in Schritt 2 (verfügbar ab 9.3) die Option „Mehrfachauswahl zulassen“ aus.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt218a166f7a1dc52c/6a17ee6ca2929979a9d02d27/1f237cea0a37cb25a7917a2a683707a269adae8e-1600x670.png" alt="" /><h3>Beispiel 2: Zeitintervallsteuerung</h3><p>Bei der Erstellung einer Zeitreihe können Sie ganz einfach ein Steuerelement für Variablen für Ihr Datums-Histogramm-Intervall hinzufügen:</p><p>1. Klicken Sie beim Schreiben einer ES|QL-Abfrage für Ihre Zeitreihe auf „Steuerelement erstellen“. Bei der Erstellung einer Variablen für Intervalle ist es besser, <code>TBUCKET</code> anstelle von <code>BUCKET</code> zu verwenden, damit besser lesbare Intervalle wie „1 Stunde“, „1 Tag“ usw. akzeptiert werden. In Kürze steht auch eine automatische Option für <code>TBUCKET</code> zur Verfügung, sodass sich das System automatisch an Zeitbereiche anpassen kann.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blta6f32acf5ed19697/6a17ee6e6864a4a32fb68850/b0ad53d790ff9bdd42db5e77477318319f423534-1600x664.png" alt="" /><p>2. Legen Sie die Intervalle zum Ausfüllen der Optionen im Dropdown-Menü fest.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltf08d6a75afe87314/6a17ee6f25daab58fe08a2fa/f3bd83f530cfa4698c1a3b1ae60d08d0414043b5-1600x757.png" alt="" /><p>3. Wählen Sie im Dropdown-Menü verschiedene Intervalle aus und sehen Sie, wie sich Ihre Visualisierung verändert.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt5ecd5f376b096063/6a17ee7196142a0f77eb1b9b/0f928d9c70929f64926e065059188d140cd48943-1600x671.png" alt="" /><h3>Beispiel 3: Variablen für Funktionen</h3><ol><li><p>Erstellen Sie eine Variable mithilfe des Kontrolltyps „Statische Werte“ und fügen Sie Funktionsnamen zu Ihren Dropdown-Werten hinzu. Es ist wichtig, für Ihre Variable einen Namen zu verwenden, der mit „??…“ beginnt, um Funktionen zu ersetzen.</p></li></ol><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt6bdc0c817465f3f0/6a17ee73505ac3268cad8bea/531444237b7e152d3c8a6f3ca7e464f954f9e856-1600x663.png" alt="" /><p>2. Fügen Sie den Variablennamen in Ihre ES|QL-Abfrage ein.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltd631ad49bbb93c3e/6a17ee75e9ea87708ea9c6aa/9858442abb26d8d266d464852871b139fde63b89-1600x665.png" alt="" /><h3>Beispiel 4: Variablen für Felder</h3><ol><li><p>Sie können den Kontrolltyp „Statische Werte“ verwenden und die Namen der gewünschten Felder eingeben. Es ist wichtig, einen Variablennamen zu verwenden, der mit „??...“ beginnt, damit er für Felder funktioniert.</p></li></ol><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt29079f2b85c7239c/6a17ee77b1e113328f79f30b/33534c3df2fae024b25c28b4aed5d742e54202a2-1600x710.png" alt="" /><p>2. Verweisen Sie in der Visualisierungsabfrage auf die gewünschte Variable.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt6ca73c08dfa27319/6a17ee780b0bed31e8dd363a/71cdf3e9df72c59d957628a3aa6e4aa9bd60d6d5-1600x676.png" alt="" /><h2>Steuerelemente für Variablen in Discover</h2><p>Steuerelemente für Variablen sind nicht nur eine Dashboard-Funktion, sondern auch direkt im ES|QL-Editor in Discover verfügbar. Sie können Steuerelemente für eine schnellere Datenexploration in Discover erstellen, diese in das Dashboard übertragen und umgekehrt.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt40c9ce5eed7ded45/6a17ee7b420229747b29f684/fdddeec902d0bc746caed9276d01d7d48793dd85-1600x709.png" alt="" /><h2>Technische Details</h2><p>Mittlerweile haben Sie wahrscheinlich bemerkt, dass Steuerelemente für Variablen einigen Regeln unterliegen – beispielsweise, auf welche Teile einer Abfrage sie verweisen können und welche Namenspräfixe Sie verwenden müssen („?...” für Werte und „??...” für Felder oder Funktionen). Das liegt daran, dass Variablen nicht nur einfache Zeichenfolgenersetzungen sind, die auf dem Client stattfinden. Es handelt sich dabei um erstklassige Elemente der Abfragesprache selbst (bekannt als <a href="https://www.elastic.co/docs/solutions/search/agent-builder/tools/esql-tools#parameter-types">Parameter in ES|QL</a>).</p><p></p><p>Dieses Design bietet einige große Vorteile. Zum einen kann Kibana den Kontext jeder Variablen verstehen, wodurch wir die Konfiguration automatisch für Sie generieren und vorausfüllen können. Außerdem ist es viel sicherer: Da die Sprache Variableneingaben streng validiert, verhindert sie böswillige Injektionen und gibt bei Unstimmigkeiten eine Fehlermeldung aus. Darüber hinaus werden Leistung und Stabilität verbessert, indem komplexe Validierungen und Fehlerbehandlungen vom Client auf den Server verlagert werden. Ein Hinweis zur Leistung: Eine bewährte Vorgehensweise besteht in der Erstellung von Variablen, die schnelle Abfragen enthalten, da diese vor dem Dashboard geladen werden. Langsame Abfragen können sich daher auf die gesamte Dashboard-Leistung auswirken.</p><p>Natürlich bringt diese Architektur vorerst auch einige <a href="https://www.elastic.co/docs/solutions/search/agent-builder/limitations-known-issues#esql-limitations">Einschränkungen</a> mit sich. Variablen unterstützen noch keine „Alle“-Option für das Filtern und können derzeit nicht mit bestimmten Operatoren wie <code>LIKE</code>oder <code>FROM</code> (zum Wechseln der Datenquellen) verwendet werden. Die gute Nachricht? Wir arbeiten aktiv an der Erweiterung um diese Funktionen.</p><h2>Was die Zukunft für Bedienelemente bereithält</h2><p>Wir machen hier noch lange nicht Schluss! Zu den geplanten Verbesserungen gehören unter anderem:</p><p>✨ Die Möglichkeit zur beliebigen Platzierung von Steuerelementen auf dem Dashboard</p><p>✨ Verkettung Ihrer Steuerelemente – das bedeutet, der Ausgang eines Steuerelements wird zum Eingang für das nächste Steuerelement</p><p>✨ Verbesserte Auswahlmöglichkeiten wie die Option „Alle“ für Variablen</p><p>✨ Neue Kontrolltypen (Suchtyp-Steuerelement und Variablen für Ihre Datenquellen)</p><p>✨ Und weitere Verbesserungen der von Ihnen Benutzerfreundlichkeit, wie beispielsweise die Vorfilterung normaler Steuerelemente</p><p>Wir freuen uns über Ihre Ideen und Ihr Feedback.</p>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/kibana-dashboard-interactivity-variable-controls-overview</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/kibana-dashboard-interactivity-variable-controls-overview</guid>
    <category><![CDATA[Kibana]]></category>
    <category><![CDATA[Analysen]]></category>
    <dc:creator><![CDATA[Teresa Alvarez Soler]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltddeea5af6d4f9884/6a17ee7ddbb4ff3aa8fb5781/59aa3adffc8c759e42b961ef7d63719ce232893a-1348x830.png" length="0" type="image/png"/>
    <pubDate>Thu, 04 Dec 2025 00:00:00 GMT</pubDate>
  </item>
  <item>
    <title><![CDATA[Spotify Wrapped Teil 2: Datenanalyse und Visualisierung]]></title>
    <description><![CDATA[Wir werden tiefer als je zuvor in Ihre Spotify-Daten eintauchen und Zusammenhänge aufdecken, von denen Sie bisher nichts wussten.]]></description>
    <content:encoded><![CDATA[<p>Im <a href="https://www.elastic.co/search-labs/blog/spotify-wrapped-create-in-kibana">ersten Teil</a> dieser Serie, verfasst von Iulia Feroli, haben wir darüber gesprochen, wie man seine Spotify Wrapped-Daten erhält und in Kibana visualisiert. Im zweiten Teil tauchen wir tiefer in die Daten ein, um zu sehen, was wir sonst noch herausfinden können. Hierfür werden wir einen etwas anderen Ansatz wählen und <a href="https://github.com/elastic/elasticsearch-labs/tree/main/supporting-blog-content/spotify-to-elasticsearch">Spotify to Elasticsearch</a> verwenden, um die Daten in Elasticsearch zu indizieren. Dieses Tool ist etwas fortgeschrittener und erfordert etwas mehr Aufwand bei der Einrichtung, aber es lohnt sich. Die Daten sind strukturierter, und wir können komplexere Fragen stellen.</p><h2>Unterschiede zur ersten Spotify Wrapped-Analyse</h2><p>Im ersten Blogbeitrag haben wir den Spotify-Export direkt verwendet und keine Normalisierungsaufgaben oder sonstige Datenverarbeitungsschritte durchgeführt. Dieses Mal verwenden wir dieselben Daten, werden sie aber aufbereiten, um sie besser nutzbar zu machen. Dies wird es uns ermöglichen, wesentlich komplexere Fragen zu beantworten, wie zum Beispiel:</p><ul><li><p>Wie lang ist ein Song in meinen Top 100 im Durchschnitt?</p></li><li><p>Wie hoch ist die durchschnittliche Beliebtheit eines Songs in meinen Top 100?</p></li><li><p>Wie lange wird ein Lied im Durchschnitt angehört?</p></li><li><p>Welcher Song wird bei mir am häufigsten übersprungen?</p></li><li><p>Wann überspringe ich gerne Musiktitel?</p></li><li><p>Höre ich zu einer bestimmten Tageszeit mehr Musik als zu anderen?</p></li><li><p>Höre ich an einem bestimmten Wochentag mehr Musik als an anderen?</p></li><li><p>Ist es ein Monat von besonderem Interesse?</p></li><li><p>Welcher Künstler hat die längste Hörerschaftszeit?</p></li></ul><p>Spotify Wrapped ist jedes Jahr ein tolles Erlebnis, das dir zeigt, was du dieses Jahr gehört hast. Es werden keine Veränderungen im Jahresvergleich angezeigt, sodass Ihnen möglicherweise einige Künstler entgehen, die einst zu Ihren Top 10 gehörten, aber nun verschwunden sind.</p><h2>Verarbeitung von Spotify Wrapped-Daten zur Analyse</h2><p>Es gibt einen großen Unterschied in der Art und Weise, wie wir die Daten im ersten und im zweiten Beitrag verarbeiten. Wenn Sie weiterhin mit den Daten aus dem ersten Beitrag arbeiten möchten, müssen Sie einige Änderungen der Feldnamen berücksichtigen und auf ES|QL zurückgreifen, um bestimmte Extraktionen wie <code>hour of day</code> dynamisch durchzuführen.</p><p>Dennoch solltet ihr alle in der Lage sein, diesem Beitrag zu folgen. Die Datenverarbeitung im <a href="https://github.com/elastic/elasticsearch-labs/tree/main/supporting-blog-content/spotify-to-elasticsearch">Spotify-zu-Elasticsearch-</a> Repository beinhaltet das Abfragen der Spotify-API nach der Dauer des Songs, der Popularität sowie das Umbenennen und Erweitern einiger Felder. Das Feld <code>artist</code> im Spotify-Export ist beispielsweise lediglich ein String und repräsentiert weder Features noch Tracks mit mehreren Künstlern.</p><h2>Visualisierung von Spotify Wrapped-Daten mit Dashboards</h2><p>Ich habe in Kibana ein Dashboard erstellt, um die Daten zu visualisieren. Das Dashboard ist <a href="https://github.com/elastic/elasticsearch-labs/blob/main/supporting-blog-content/spotify-to-elasticsearch/kibana/dashboard.ndjson">hier</a> verfügbar und kann in Ihre Kibana-Instanz importiert werden. Das Dashboard ist sehr umfangreich und beantwortet viele der oben genannten Fragen.</p><p>Lasst uns einige der Fragen betrachten und gemeinsam überlegen, wie wir sie beantworten können!</p><h3>Wie lang ist ein Song in meinen Top 100 im Durchschnitt?</h3><p>Um diese Frage zu beantworten, können wir Lens oder ES|QL verwenden. Lasst uns alle drei Optionen genauer betrachten. Formulieren wir diese Frage einmal korrekt im Elasticsearch-Stil. Wir möchten die 100 beliebtesten Lieder finden und dann die durchschnittliche Dauer aller dieser Lieder zusammen berechnen. In Elasticsearch-Begriffen wären das zwei Aggregationen:</p><ol><li><p>Finde die Top 100 Songs heraus</p></li><li><p>Berechne die durchschnittliche Dauer dieser 100 Lieder.</p></li></ol><p><strong>Lens</strong></p><p>In Lens ist das ganz einfach: Man erstellt eine neue Lens, wechselt zu einer Tabelle und zieht das Feld <code>title</code> per Drag &amp; Drop in die Tabelle. Klicken Sie anschließend auf das Feld <code>title</code> und stellen Sie die Größe auf 100 ein. Stellen Sie außerdem den Modus <code>accuracy</code> ein. Ziehen Sie dann das Feld <code>duration</code> per Drag &amp; Drop in die Tabelle und verwenden Sie <code>last value</code>, da wir eigentlich nur den letzten Wert der Dauer jedes Liedes benötigen. Dasselbe Lied hat nur eine einzige Dauer. Am Ende dieser <code>last value</code> -Aggregation befindet sich ein Dropdown-Menü für eine Zusammenfassungszeile. Wählen Sie <code>average</code> aus, um sie anzuzeigen.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt5df1d7f36de5e2ae/6a17e5df0b0beddd57dd355c/a56f6e48e6b53af3ca3d38d67ce0916d0621ef16-2910x1058.png" alt="Verwendung von Lens für Spotify Wrapped-Daten" /><p><strong>ES|QL</strong></p><p>ES|QL ist im Vergleich zu DSL und Aggregationen eine recht neue Sprache, aber sie ist sehr leistungsstark und einfach zu bedienen. Um dieselbe Frage in ES|QL zu beantworten, würden Sie die folgende Abfrage schreiben:</p><p>Ich führe Sie Schritt für Schritt durch diese ES|QL-Abfrage:</p><ol><li><p><code>from spotify-history</code> - Dies ist das Indexmuster, das wir verwenden.</p></li><li><p><code>stats duration=max(duration), count=count() by title</code> - Dies ist die erste Aggregation; wir berechnen die maximale Dauer jedes Liedes und die Anzahl der Lieder. Wir verwenden <code>max</code> anstelle von <code>last value</code> , wie es in der Lens verwendet wird, da ES|QL derzeit kein erstes oder letztes Element hat.</p></li><li><p><code>sort count desc</code> - Wir sortieren die Lieder nach der Anzahl der Aufrufe jedes Liedes, sodass das meistgehörte Lied ganz oben steht.</p></li><li><p><code>limit 100</code> - Wir beschränken das Ergebnis auf die Top 100 Songs.</p></li><li><p><code>stats Average duration of the songs=avg(duration)</code> - Wir berechnen die durchschnittliche Dauer der Lieder.</p></li></ol><h3>Ist ein bestimmter Monat für mich von besonderem Interesse?</h3><p>Um diese Frage zu beantworten, können wir Lens mithilfe von Laufzeitfeldern und ES|QL verwenden. Was uns sofort auffällt: Es gibt kein Feld in den Daten, das die <code>month</code> direkt angibt; stattdessen müssen wir sie aus dem Feld <code>@timestamp</code> berechnen. Dafür gibt es mehrere Möglichkeiten:</p><ol><li><p>Verwenden Sie ein Laufzeitfeld, um die Linse mit Strom zu versorgen.</p></li><li><p>ES|QL</p></li></ol><p>Ich persönlich halte ES|QL für die elegantere und schnellere Lösung.</p><p>Das ist alles, nichts Kompliziertes ist nötig. Wir können die <code>DATE_EXTRACT</code> -Funktion nutzen, um den Monat aus dem <code>@timestamp</code> -Feld zu extrahieren und können dann darüber aggregieren. Mithilfe der ES|QL-Visualisierung können wir das auf dem Dashboard einbinden.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt2c221ad4446cfb09/6a17e5e03e9e45076eba144c/7f942cf38fbe0fecec1d741e7df922196f4e9483-1878x722.png" alt="Spotify Wrapped monatliche Aufschlüsselungsvisualisierung" /><h3>Wie lange höre ich im Durchschnitt pro Künstler und Jahr?</h3><p>Die Idee dahinter ist, herauszufinden, ob ein Künstler nur eine einmalige Erscheinung ist oder ob es zu einer Wiederholung kommt. Wenn ich mich richtig erinnere, zeigt Spotify nur die Top 5 Künstler im Jahresrückblick an. Vielleicht bleibt dein Künstler auf Platz 6 immer derselbe, oder er wechselt ab Platz 10 stark?</p><p>Eine der einfachsten Darstellungsformen hierfür ist ein prozentuales Balkendiagramm. Wir können dafür Lens verwenden. Folgen Sie den folgenden Schritten:</p><p>Ziehen Sie das Feld <code>listened_to_ms</code> per Drag &amp; Drop an die gewünschte Stelle. Dieses Feld gibt an, wie lange Sie ein Lied in Millisekunden angehört haben. Standardmäßig erstellt Lens eine <code>median</code> -Aggregation. Das wollen wir nicht, ändern wir das in eine <code>sum</code>. Wählen Sie oben für den Balkendiagrammtyp <code>percentage</code> anstelle von <code>stacked</code> aus. Für die Aufschlüsselung wählen Sie <code>artist</code> und geben Sie „Top 10“ ein. Vergessen Sie nicht, im Dropdown-Menü <code>Advanced</code> die <code>accuracy mode</code> auszuwählen. Jeder Farbblock repräsentiert nun, wie oft Sie diesen einzelnen Künstler gehört haben. Je nach gewähltem Zeitauswahlfeld können die Balken Werte von Tagen über Wochen und Monate bis hin zu Jahren darstellen. Wenn Sie eine wöchentliche Aufschlüsselung wünschen, wählen Sie <code>@timestamp</code> aus und stellen Sie <code>mininum interval</code> auf <code>year</code> ein. Was wir in meinem Fall nun sagen können, ist, dass <code>Fred Again..</code> der Künstler ist, den ich am häufigsten gehört habe; fast 12 % meiner gesamten Hörzeit entfielen auf <code>Fred Again..</code>. Wir sehen auch, dass <code>Fred Again..</code> im Jahr 2024 etwas zurückging, <code>Jamie XX</code> aber stark zunahm. Wenn wir nur die Größe der Balken vergleichen. Wir können auch feststellen, dass während <code>Billie Eilish</code> im Jahr 2024 ständig gespielt wird, der Balken sich verbreitert. Das bedeutet, dass ich <code>Billie Eilish</code> im Jahr 2024 häufiger gehört habe als im Jahr 2023.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blteb0c11b909be859f/6a17e5e2e8fbce239a3a18ee/61a5bcc6b7385ed0a11b67c9c6bab32d27f4a49b-2942x1354.png" alt="Spotify Wrapped Verlaufsvisualisierung mit Kibana" /><h3>Wie sieht es mit den Top-Titeln pro Künstler pro Hörzeit im Vergleich zur gesamten Hörzeit aus?</h3><p>Das ist eine ganz schön komplizierte Frage. Ich möchte versuchen, das zu erklären, was ich damit sagen möchte. Spotify informiert dich über den Top-Song eines einzelnen Künstlers oder über deine insgesamt 5 Top-Songs. Das ist auf jeden Fall interessant, aber wie sieht es mit dem Zusammenbruch eines Künstlers aus? Verbringe ich meine gesamte Zeit nur mit einem einzigen Lied, das ich immer und immer wieder höre, oder ist meine Zeit gleichmäßig verteilt?</p><p>Erstellen Sie eine neue Linse und wählen Sie <code>Treemap</code> als Typ aus. Für <code>metric</code> gilt dasselbe wie zuvor: Wählen Sie <code>sum</code> aus und verwenden Sie <code>listened_to_ms</code> als Feld. Für die <code>group by</code> benötigen wir zwei Werte. Das erste ist <code>artist</code> und dann füge ein zweites mit <code>title</code> hinzu. Das Zwischenergebnis sieht folgendermaßen aus:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt9aa0e4877472123f/6a17e5e44b055d6dcf43218e/2dea389664a0d3d13fff03c6337bff3ce740f9b1-2922x1430.png" alt="Spotify Wrapped Verlaufsvisualisierung mit Kibana" /><p>Ändern wir das in Top 100 Künstler und deaktivieren wir die <code>other</code> im erweiterten Dropdown-Menü sowie aktivieren wir den Genauigkeitsmodus. Ändern Sie den Titel in „Top 10“ und aktivieren Sie den Genauigkeitsmodus. Das Endergebnis sieht folgendermaßen aus:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt070bf745be1d3f92/6a17e5e66864a43a0fb6875b/7e99a15c69801e58302af4c12b500242a7e8bc9d-2640x1622.png" alt="Spotify Wrapped-Visualisierung mit Kibana" /><p>Was genau sagt uns das nun? Ohne die Zeitkomponente zu berücksichtigen, können wir sagen, dass ich in meiner gesamten Hörhistorie bei Spotify 5,67 % mit dem Hören von <code>Fred Again..</code> verbracht habe. Insbesondere habe ich 1,21 % dieser Zeit mit dem Hören von <code>Delilah (pull me out of this)</code> verbracht. Es ist interessant zu sehen, ob es ein einzelnes Lied gibt, das einen Künstler beschäftigt, oder ob es auch andere Lieder gibt. Die Baumkarte selbst ist eine gute Darstellungsform für solche Datenverteilungen.</p><h3>Höre ich zu einer bestimmten Uhrzeit und an einem bestimmten Tag?</h3><p>Nun, das können wir ganz einfach mit einer Lens-Visualisierung beantworten, die die <code>Heat Map</code> nutzt. Erstellen Sie eine neue Linse, wählen Sie <code>Heat Map</code> aus. Wählen Sie für <code>Horizontal Axis</code> das Feld <code>dayOfWeek</code> aus und stellen Sie es auf <code>Top 7</code> anstatt auf Top 3 ein. Für <code>Vertical Axis</code> wähle <code>hourOfDay</code> und für <code>Cell Value</code> einfach <code>Count of records</code>. Dadurch wird folgendes Panel erzeugt:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt2d08e4f4d0a90550/6a17e5e7e8fbce1af43a18f2/c83ec13a3c7d1b71b8a6b110ed2b74e691d868e6-3538x1720.png" alt="Visualisierung der Hörgewohnheiten von Spotify Wrapped mithilfe von Dashboards" /><p>Es gibt ein paar ärgerliche Dinge an diesem Objektiv, die mich beim Interpretieren einfach stören. Lasst uns versuchen, es ein wenig aufzuräumen. Zunächst einmal ist mir die Legende nicht so wichtig, verwenden Sie das Symbol oben mit dem Dreieck, Quadrat und Kreis und deaktivieren Sie sie.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltce46c47addd91c61/6a17e5e94b055d15d5432192/84f51d6c885b929bf47ac05edd32ca149ad2e651-1040x298.png" alt="Spotify Wrapped-Visualisierung " /><p>Der zweite ärgerliche Punkt ist nun die Sortierung der Tage. Es ist Montag, Mittwoch, Donnerstag oder irgendein anderer Tag, je nachdem, welche Werte Sie haben. Die <code>hourOfDay</code> ist korrekt sortiert. Die Art und Weise, wie die Tage sortiert werden, ist ein witziger Trick, nämlich die Verwendung von <code>Filters</code> anstelle von <code>Top Values</code>. Klicken Sie auf <code>dayOfWeek</code> und wählen Sie <code>Filters</code> aus. Es sollte nun so aussehen:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt0e9c6005a917d4de/6a17e5eb4b055d6e10432196/2498a66098d40a1ba44d3f88464a9888dca204af-3574x1294.png" alt="Spotify Wrapped Verlaufsvisualisierung mit Kibana Dashboards" /><p>Jetzt fangen Sie einfach an, die Tage einzugeben. Ein Filter pro Tag. <code>"dayOfWeek" : Monday</code> und gib ihm die Bezeichnung <code>Monday</code> und wiederhole den Vorgang.</p><p>Allerdings gibt es dabei einen Haken: Spotify stellt die Daten in UTC+0 ohne Zeitzoneninformationen bereit. Natürlich liefern sie auch die IP-Adresse und das Land, in dem Sie zugehört haben, und wir könnten daraus die Zeitzoneninformationen ableiten, aber das kann ungenau sein, und für Länder wie die USA, die mehrere Zeitzonen haben, kann es zu umständlich sein. Dies ist wichtig, da Elasticsearch und Kibana Zeitzonen unterstützen. Durch die Angabe der korrekten Zeitzone im Feld <code>@timestamp</code> passt Kibana die Zeit automatisch an die Zeit Ihres Browsers an.</p><p>So sollte es nach der Fertigstellung aussehen, und man kann erkennen, dass ich während der Arbeitszeit sehr aktiv zuhöre, samstags und sonntags hingegen weniger.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltd8eaab83c8c9c7f2/6a17e5ed6df7315e250a0ec5/c664c90ff8e852e1766e8101afc20c58e110f09c-3582x2030.png" alt="Spotify Wrapped-Visualisierung mit Kibana Dashboards" /><h2>Fazit</h2><p>In diesem Blogbeitrag sind wir etwas tiefer in die Feinheiten der Spotify-Daten eingetaucht. Wir haben einige einfache und schnelle Wege aufgezeigt, wie man Visualisierungen erstellen und ausführen kann. Es ist einfach fantastisch, so viel Kontrolle über den eigenen Hörverlauf zu haben. Schaut euch auch die anderen Teile der Serie an:</p><ul><li><p><a href="https://www.elastic.co/search-labs/blog/spotify-wrapped-create-in-kibana">Teil 1: So erstellen Sie Ihr eigenes Spotify Wrapped in Kibana</a></p></li><li><p><a href="https://www.elastic.co/search-labs/blog/elasticsearch-anomaly-detection-jobs">Teil 3: Populationsjobs zur Anomalieerkennung</a></p></li><li><p><a href="https://www.elastic.co/search-labs/blog/find-relationships-in-data">Teil 4: Beziehungen in Daten erkennen</a></p></li><li><p><a href="https://www.elastic.co/search-labs/blog/vectors-spotify-wrapped-part-05">Teil 5: Finde deinen besten Musikfreund mit Vektoren</a></p></li></ul>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/spotify-wrapped-data-analysis-visualization</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/spotify-wrapped-data-analysis-visualization</guid>
    <category><![CDATA[Kibana]]></category>
    <category><![CDATA[Analysen]]></category>
    <dc:creator><![CDATA[Philipp Kahr]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt7f8cddbca1a54cd5/6a17e5efe9ea87717ba9c585/e04f85e87b5b4e69b6e2df9367840a56985b96a1-1792x1024.png" length="0" type="image/png"/>
    <pubDate>Tue, 25 Feb 2025 00:00:00 GMT</pubDate>
  </item>
  </channel>
</rss>