De nieuwe NOS.nl: Content Database (afl. 3)
Dit is de derde post uit de serie “Achter de schermen @nosnieuwemedia” waarin ik een beschrijving zal geven van de centrale content database zoals besproken in de eerdere posts.
De centrale content database vervult een centrale rol binnen de applicaties die door de afdeling Nieuwe Media van de NOS worden ontwikkeld. Dit centrale systeem heeft verschillende functies die ik deze blogpost nader zal toelichten. Elke functie is als een (onafhankelijke)module gebouwd waardoor het geheel modulair blijft en functionaliteit kan worden aan- of uitgeschakeld.
Algemene opbouw van de content database
Binnen de centrale content database wordt gewerkt met content elementen die allemaal een “standaard” set met metadata bevatten. Deze metadata is voor alle soorten content gelijk. Voorbeelden hiervan zijn bijvoorbeeld de titel, publicatie datum, hoofdcategorie en subcategorie. Door deze “standaard” set met metadata zijn componenten dus door het hele systeem op exact dezelfde wijze te benaderen. Door deze functionaliteit is bijvoorbeeld het leggen van relaties tussen deze componenten en het ontwikkelen van universele routines eenvoudig.
Importeren van content
Door middel van XML-bestanden wordt content aangeboden aan de content-database. Dit zijn content elementen van verschillende types zoals; artikelen, afbeeldingen, dossiers, video en audio. Naast deze redactionele content elementen bevat het systeem ook een aantal niet redactionele content elementen zoals bijvoorbeeld radio en televisie uitzendingen. Deze worden automatisch zonder tussenkomst van een redacteur in het systeem ingelezen.
Naast de bovenstaande content wordt de database ook voorzien van meta-informatie omtrent de daadwerkelijke bestanden die in het systeem gebruikt worden. Zo is een video bijvoorbeeld in meerdere bestandsformaten beschikbaar terwijl de metadata van de video maar één keer wordt ingevoerd.
Exporteren van content
Voor diverse doeleinden wordt de informatie uit de content database geëxporteerd. De RSS feeds die door de NOS worden aangeboden worden bijvoorbeeld vanuit de export module gegenereerd en statisch weggeschreven. Naast standaard RSS feeds worden ook XML feeds voor verschillende afnemers (zoals bijvoorbeeld narrowcasting partijen) gegenereerd en statisch opgeslagen.
Module Social
De module Social is als aparte module binnen de content database ontwikkeld. Deze module wordt bijvoorbeeld gebruikt voor het automatisch plaatsen van Twitter berichten voor verschillende NOS Twitteraccounts. Daarnaast kunnen anderen toekomstige koppelingen met sociale media eenvoudig worden gerealiseerd.
API
De content database beschikt over een eigen API waarmee informatie uit de content database kan worden opgehaald. Deze API wordt zowel voor zowel interne als externe toepassingen en koppelingen gebruikt. Een voorbeeld is de speciaal voor de Sony PS3 ontwikkelde NOS-applicatie, die de API gebruikt om informatie uit de content database op te vragen.
Over de Techniek
De complete content database is ontwikkeld in de programmeertaal PHP waarbij gebruikt wordt gemaakt van Zend Framework. Dit framework vormt een stabiele basis die naar eigen inzicht eenvoudig kan worden uitgebreid.
Alle informatie wordt opgeslagen in MySQL database(s) waarbij er gebruik wordt gemaakt van een master-slave(s) constructie. Deze constructie is zo opgezet dat er – indien gewenst – eenvoudig extra database servers kunnen worden toegevoegd.
In de volgende aflevering meer over de techniek achter en ontwikkeling van de uiteindelijke website.

Vandaag weer eens op nos.nl gekomen en mijn complimenten voor het design. Veel witruimte, video en overzichtelijke knoppen.
Jan-Willem,
Goed om te zien dat zo een high-traffic site als de NOS zo soepel draait op Zend Framework. Bedankt voor het inzicht in de opbouw van dit nieuwe platform.
Ronald
Goede artikels maar ben toch aan het wachten totdat de PortalSite http://tv.nos.nl/browser/ van de NOS wordt uitgebreid voor oa. mijn Philips LCD TV met NET TV.
Ik denk dan bijv. aan uitzendinggemist, sportjournaals en natuurlijk over enkele weken de Olympische winterspelen met meerdere kanalen ..
Kan mij iemand hier de status van vertellen ?
Gr,
Geert
Wellicht niet helemaal relevant voor dit artikel, maar kan de oude “weblogs.nos.nl” homepage terugkomen? De huidige is echt een compleet drama. Of maak het desnoods instelbaar met een cookie of zo.
Waarom? Recente artikelen staan niet bovenaan of sortering staat niet goed. Ik heb dus constant het idee dat ik tegen de pagina van eer-gisteren aan zit te kijken.
@Geert
Wat betreft de uitbreidingen van http://tv.nos.nl/browser/ is het helaas op dit moment niet mogelijk om hier ivm rechten e.d. de Sportjournaal te tonen, hetzelfde is van toepassing op de Winterspelen.
Wat betreft uitzending gemist is het zo dat dit een aangelegenheid is van de Publieke Omroep dus hier hebben wij geen invloed op.