QVD-bestanden | Qlik Cloud Help
Ga naar hoofdinhoud Ga naar aanvullende inhoud

QVD-bestanden

Een QVD (QlikView Data)-bestand is een bestand dat een gegevenstabel bevat die is geëxporteerd uit Qlik Sense of QlikView 12. QVD is een systeemeigen Qlik-indeling en kan alleen worden geschreven en gelezen door Qlik Sense of QlikView 12. De bestandsindeling is geoptimaliseerd voor snelheid bij het lezen van gegevens uit een Qlik Sense-script, maar is nog steeds zeer compact. Het lezen van gegevens uit een QVD-bestand is doorgaans 10 tot 100 keer sneller dan het lezen uit andere gegevensbronnen.

QVD-bestanden kunnen in twee modi worden gelezen: standaard (snel) en geoptimaliseerd (sneller). De geselecteerde modus wordt automatisch bepaald door de Qlik Sense-scriptengine. De geoptimaliseerde modus kan alleen worden gebruikt wanneer alle geladen velden zonder enige transformaties (formules die op de velden werken) worden gelezen, hoewel het hernoemen van velden is toegestaan. Een Where-clausule die ervoor zorgt dat Qlik Sense de records uitpakt, zal de geoptimaliseerde lading ook uitschakelen.

Een QVD-bestand bevat precies één gegevenstabel en bestaat uit drie delen:

  • Een XML-header (in UTF-8-tekenset) die de velden in de tabel, de lay-out van de daaropvolgende informatie en enkele andere metagegevens beschrijft.
  • Symbooltabellen in een byte-stuffed indeling.
  • Werkelijke tabelgegevens in een bit-stuffed indeling.

QVD-bestanden kunnen voor veel doeleinden worden gebruikt. Er kunnen eenvoudig drie belangrijke toepassingen worden geïdentificeerd. In een bepaalde situatie kunnen er meerdere van toepassing zijn:

  • De belasting van databaseservers verminderen
  • De hoeveelheid gegevens die uit externe gegevensbronnen wordt opgehaald, kan ook aanzienlijk worden verminderd. Dit vermindert de werklast op externe databases en het netwerkverkeer. Bovendien, wanneer meerdere Qlik Sense-scripts dezelfde gegevens delen, is het slechts nodig om deze één keer vanuit de brondatabase in een QVD-bestand te laden. De andere applicaties kunnen dezelfde gegevens gebruiken via dit QVD-bestand.

  • Gegevens uit meerdere Qlik Sense-applicaties consolideren.
  • Met de Binary-scriptopdracht is het mogelijk om gegevens uit slechts één enkele Qlik Sense-applicatie in een andere te laden, maar met QVD-bestanden kan een Qlik Sense-script gegevens uit een willekeurig aantal Qlik Sense-applicaties combineren. Dit opent mogelijkheden voor applicaties die vergelijkbare gegevens van verschillende bedrijfseenheden enz. consolideren.

  • Incrementele lading
  • In veel voorkomende gevallen kan de QVD-functionaliteit worden gebruikt om incrementele lading te vergemakkelijken door uitsluitend nieuwe records uit een groeiende database te laden.

Informatie

Om te zien hoe de Qlik Community Qlik Automate gebruikt om de laadtijden van QVD's te verbeteren, raadpleegt u How to split QVDs using an automation to improve reloads.

QVD-bestanden maken

Een QVD-bestand kan worden gemaakt en benoemd met behulp van de opdracht store in het script. Geef in het script aan dat een eerder gelezen tabel, of een deel daarvan, moet worden geëxporteerd naar een expliciet benoemd bestand op een locatie naar keuze.

Store

Deze scriptopdracht maakt een expliciet benoemd QVD-, Parquet-, CSV- of TXT-bestand.

Store[ *fieldlist from] table into filename [ format-spec ];

De opdracht kan alleen velden uit één gegevenstabel exporteren. Als velden uit meerdere tabellen moeten worden geëxporteerd, moet er vooraf in het script een expliciete join worden gemaakt om de gegevenstabel te maken die moet worden geëxporteerd.

De tekstwaarden worden geëxporteerd naar het CSV-bestand in UTF-8-indeling. Er kan een scheidingsteken worden opgegeven, zie LOAD. De store-opdracht naar een CSV -bestand ondersteunt geen BIFF -export.

Store mytable into [lib://DataFiles/xyz.qvd]; Store * from mytable into [lib://DataFiles/xyz.qvd]; Store myfield from mytable into [lib://DataFiles/xyz.qvd]; Store myfield as renamedfield, myfield2 as renamedfield2 from mytable into [lib://DataFiles/xyz.qvd]; Store mytable into [lib://DataFiles/myfile1.txt]; Store mytable into [lib://DataFiles/myfile2.csv];

  1. Open de Geavanceerde Scripting Zelfstudie applicatie.
  2. Klik op de scriptsectie Product.
  3. Voeg het volgende toe aan het einde van het script:
  4. Store * from Product into [lib://DataFiles/ProductData.qvd](qvd);

    Uw script zou er als volgt moeten uitzien:

    CrossTable(Month, Sales)
    LOAD
        Product,
        "Jan 2014",
        "Feb 2014",
        "Mar 2014",
        "Apr 2014",
        "May 2014"
    FROM [lib://DataFiles/Product.xlsx] 
    (ooxml, embedded labels, table is Product);
    
    Store * from Product into [lib://DataFiles/ProductData.qvd](qvd);

  5. Klik op Gegevens laden.
  6. Het bestand Product.qvd zou nu in de lijst met bestanden moeten staan.

    Dit gegevensbestand is het resultaat van het Crosstable-script en is een tabel met drie kolommen, één kolom voor elke categorie (Product, Month, Sales). Dit gegevensbestand kan nu worden gebruikt om de volledige scriptsectie Product te vervangen.

Gegevens lezen uit QVD-bestanden

Een QVD-bestand kan in Qlik Sense worden ingelezen of geopend via de volgende methoden:

  • Een QVD-bestand laden als een expliciete gegevensbron. Naar QVD-bestanden kan worden verwezen door een load-opdracht in het Qlik Sense-script, net als bij elk ander type tekstbestand (csv, fix, dif, biff, enzovoort).
  • LOAD * from [lib://DataFiles/xyz.qvd] (qvd); LOAD fieldname1, fieldname2 from [lib://DataFiles/xyz.qvd] (qvd); LOAD fieldname1 as newfieldname1, fieldname2 as newfieldname2 from [lib://DataFiles/xyz.qvd](qvd);
  • QVD-bestanden openen vanuit het script. Een aantal scriptfuncties (die allemaal beginnen met QVD) kan worden gebruikt voor het ophalen van diverse informatie over de gegevens die te vinden zijn in de XML-header van een QVD-bestand.

  1. Plaats het volledige script in de scriptsectie Product in de commentaar.
  2. Voer het volgende script in:
  3. Load * from [lib://DataFiles/ProductData.qvd](qvd);			

  4. Klik op Gegevens laden.
  5. De gegevens worden geladen uit het QVD-bestand.

    Voortgangsvenster voor het laden van gegevens

    Voortgangsvenster voor het laden van gegevens.
InformatieVoor meer informatie over het gebruik van QVD-bestanden voor incrementele ladingen, raadpleegt u deze blogpost in de Qlik Community: Overview of Qlik Incremental Loading

Bedankt!

U hebt deze tutorial nu afgerond en hopelijk hebt u meer kennis opgedaan over scripting in Qlik Sense. Bezoek onze website voor meer informatie over de verdere beschikbare trainingen.

Was deze pagina nuttig?

Als u problemen ervaart op deze pagina of de inhoud onjuist is – een tikfout, een ontbrekende stap of een technische fout – laat het ons weten!