211service.com
Supersynchronisatie
Decennialang hebben toekomstgerichte technologen en visionairs aangenomen dat technologie een soort elektronische bibliotheek van Alexandrië tot stand zou brengen. In dit scenario zouden enorme databanken gecentraliseerde informatiehulpprogramma's zijn, met toegang verleend door goedkope, snelle en alomtegenwoordige datafeeds. In Star Trek gebruikten bemanningsleden bijvoorbeeld een draadloos netwerk om hun tricorders te verbinden met de boordcomputer van het ruimteschip Enterprise - die opslagplaats van alle interessante en relevante dingen. En het oorspronkelijke internet is niet gemaakt om informatie te verspreiden, maar als een enorm systeem voor externe toegang, waardoor onderzoekers op één plek computers kunnen aanboren die zich ergens anders bevinden. Zelfs George Orwell's 1984 voorzag een wereld waarin verslagen van nieuws en actuele gebeurtenissen op relatief weinig plaatsen werden opgeslagen; zo kon Winston Smith het verleden bewerken zodat de uitspraken van Big Brother nooit verkeerd waren.
Maar de realiteit gaat een andere richting uit. In plaats van alomtegenwoordige connectiviteit met gecentraliseerde databanken, bouwen we in plaats daarvan een infrastructuur die is geoptimaliseerd voor data replicatie . Dezelfde informatie wordt gekopieerd naar tientallen, honderden of zelfs duizenden plaatsen over de hele wereld en wordt actueel gehouden door voortdurende hertransmissies en updates. Mensen werken instinctief op deze manier - daarom hebben mensen die samenwerken aan een project de neiging om documenten per e-mail uit te wisselen in plaats van ze op een centrale server te plaatsen. Soms zijn we immers verbonden met een van deze gegevensopslagplaatsen op een snel netwerk, soms zijn we verbonden met een langzaam netwerk en soms zijn we helemaal niet verbonden. Mensen houden ervan om hun eigen kopieën te hebben, en ze dan up-to-date te houden door een ongelooflijk krachtig concept genaamd sync aan te roepen.
Dit verhaal maakte deel uit van ons nummer van november 2001
- Zie de rest van het nummer
- Abonneren
Sync, een afkorting van synchronisatie, gaat erom gegevens van één locatie te kunnen halen en deze op intelligente wijze te kopiëren naar waar het ook nodig is. En het belangrijkste is dat synchronisatie gaat over het bijhouden van wijzigingen. Een goed synchronisatiesysteem stelt u of anderen in staat om het originele document of de kopieën vrij te bewerken en uw wijzigingen vervolgens automatisch te laten verspreiden waar ze nodig zijn. De beste van deze systemen houden wijzigingen bij terwijl ze worden gemaakt en maken geavanceerde ongedaan maken mogelijk, bijvoorbeeld door de gegevens te herstellen zoals ze waren op een bepaalde datum of alle wijzigingen die door een bepaalde auteur zijn aangebracht te verwijderen. Synchronisatie is geen nieuw idee, maar het is pas onlangs begonnen op te duiken als een cruciaal onderdeel van de manier waarop computersystemen worden beheerd. Synchronisatietechnologie zal echt de toon zetten voor toekomstig computergebruik.
Tegenwoordig is het leidende synchronisatieplatform het Palm-besturingssysteem, dat ik in het verleden heb geprezen. In feite is een van de belangrijkste redenen voor de populariteit van de Palm de HotSync-technologie. Palm-gebruikers kunnen hun adresboeken, afspraakkalenders of andere databases toevoegen, verwijderen of wijzigen op hun desktops of hun Palm-computers. Plaats de Palm in de houder en druk op de HotSync-knop, en de wijzigingen worden automatisch gerepliceerd op de andere machine.
Maar daar houdt HotSync niet op. U kunt bijvoorbeeld meerdere desktopcomputers synchroniseren met dezelfde Palm, zodat mensen bij u thuis en op uw werk uw agenda kunnen openen en bijwerken, zelfs als er geen netwerkverbinding tussen is. Het enige dat u hoeft te doen, is de Palm heen en weer dragen tussen huis en kantoor, terwijl u op beide locaties synchroniseert; de intelligente software doet de rest. Als u vergeet te synchroniseren, is dat geen probleem: de volgende keer past het systeem zich automatisch aan.
Natuurlijk gaat de synchronisatietechnologie veel verder dan de Palm en veel verder dan de desktop-pc van één persoon. Een synchronisatieprogramma genaamd het Concurrent Versions System ligt aan de basis van veel succesvolle softwareontwikkelingsprojecten, van kleine bedrijven waar een paar programmeurs aan hetzelfde project werken tot grootschalige open-source samenwerkingsinspanningen waarbij honderden of duizenden programmeurs worden ingeschreven. Deze technologie maakt het voor veel mensen mogelijk om tegelijkertijd aan hetzelfde programma te werken. Elke programmeur heeft een persoonlijk exemplaar van de software die wordt ontwikkeld. Een programmeur die een nieuwe functie toevoegt of een bug repareert, kan die wijziging vastleggen in de repository van het project. Andere programmeurs - in de hal of over de hele wereld - kunnen vervolgens hun kopieën bijwerken en de wijzigingen automatisch laten toepassen. Vroeger was het omslachtig voor meer dan één persoon om tegelijkertijd aan één programma te werken. Maar nu zijn gelijktijdige ontwikkeling en het oplossen van bugs eerder regel dan uitzondering. Het Concurrent Versions-systeem, gebaseerd op het concept van synchronisatie, heeft de softwareontwikkeling aanzienlijk versneld.
Voor open-source programmeurs die willen concurreren met commerciële software, is synchronisatie zowel een vloek als een zegen geweest. Het is enorm moeilijk om applicaties te ontwerpen die synchroon lopen. De geavanceerde synchronisatiesystemen die zijn ingebouwd in commerciële databasesoftware zoals Oracle, maken het mogelijk om enorme databasefarms te bouwen door grote aantallen gesynchroniseerde servers aan elkaar te koppelen. Tot nu toe bieden toonaangevende open-sourcedatabases zoals PostgreSQL en MySQL slechts beperkte ondersteuning voor databasesynchronisatie. De open source-systemen zullen waarschijnlijk binnenkort een inhaalslag maken, maar de technologie is inherent moeilijk te ontwikkelen.
Soms is de informatiebron die wordt gesynchroniseerd een bewegend doel. Overweeg Usenet, het originele wereldwijde bulletinboard-systeem. Wanneer twee Usenet-servers verbinding maken, synchroniseren ze in wezen hun artikelen. Als een artikel op de ene machine staat maar niet op de andere, wordt er een kopie gemaakt om de discrepantie op te heffen. In 1991 zei John Gilmore, een van de oprichters van de Electronic Frontier Foundation, dat Usenet censuur interpreteert als schade en er omheen loopt. Wat hij bedoelde was dit: elke universiteit of bedrijf die niet houdt van artikelen die op Usenet zijn geplaatst, mag ze van zijn server verwijderen, maar omdat de artikelen door het netwerk als geheel stromen, kan geen enkele instelling voorkomen dat informatie de wereld in gaat .
In de afgelopen jaren is het citaat van Gilmore door veel journalisten opnieuw geïnterpreteerd als een verwijzing naar internet in plaats van naar Usenet. Helaas voor zowel Gilmore als de oorzaak van de vrijheid van meningsuiting, maakt deze wijziging het citaat onnauwkeurig. Wanneer artikelen vanaf een website worden gepubliceerd in plaats van via Usenet, worden ze inderdaad vanaf een centrale locatie verspreid - en die centrale locatie kan onderhevig zijn aan censuur of andere vormen van politieke druk.
Online bestandsuitwisselingsoperaties zoals Napster en Gnutella zijn eigenlijk gewoon hele grote synchronisatiediensten. Gebruikers hebben hun eigen visie op welke muziek of andere bestanden ze willen, en ze synchroniseren en synchroniseren totdat ze tevreden zijn. Hier is synchronisatie niet van toepassing op een afzonderlijk bestand, maar op een verzameling. De resultaten zijn echter grotendeels hetzelfde.
Het downloaden van muziek van een dienst voor het delen van bestanden verschilt fundamenteel van het downloaden van informatie via het web. In het geval van het web bewaren en verspreiden maar heel weinig lezers hun eigen langetermijnkopieën. Dit is de reden waarom Napster en zijn nakomelingen een bedreiging vormen voor de muziekindustrie; zoals Usenet liet zien, kan het buitengewoon moeilijk zijn om de verspreiding van gegevens te stoppen via een grootschalig synchronisatiesysteem. Inderdaad, een van de grote voordelen van synchronisatie is redundantie: zelfs als de hoofdkopie wordt gewist, laat synchronisatie steevast veel andere kopieën over. Dit fenomeen maakt het voor buitenstaanders moeilijk om informatie die via synchronisatie wordt gedeeld, uit te wissen of te controleren.
Inzicht in het gebruik en de kracht van synchronisatie is essentieel om nauwkeurig te kunnen voorspellen in welke richting internet en e-commerce zullen groeien. De meeste mensen houden van de veiligheid die voortkomt uit het hebben van gegevens op meerdere locaties en de snelheid die voortkomt uit het direct beschikbaar hebben van de gegevens op hun eigen computers. Producten en services die synchronisatie bieden, zullen het daarom waarschijnlijk beter doen op de markt dan vergelijkbare geprijsde services die snelle toegang bieden tot gegevens die zijn opgeslagen op externe systemen. Mensen willen niet zomaar een datastroom aanboren; ze willen hun eigen exemplaar van de informatie hebben en ze willen dat deze up-to-date wordt gehouden. Dit heeft brede implicaties voor alles, van video-on-demand tot thuisbankieren. Ik doe al jaren zogenaamd internetbankieren met de Quicken-software van Intuit: om de paar dagen download ik de meest recente transacties en correcties van mijn rekening via internet en voeg ik ze toe aan mijn register. Via mijn bank kan ik ook mijn hele afschrift op internet bekijken. Zou ik het downloaden van de transacties zelf opgeven? Niet op jouw leven. Ik voel me veiliger om mijn eigen exemplaar te bewaren.
Sync is ook economisch zinvol. Met synchronisatie bent u niet zo afhankelijk van een dure, always-on, high-speed internet-verbinding. U kunt veel van hetzelfde effect krijgen met lokale opslag en langzame of zelfs intermitterende netwerkverbindingen. Sync weerspiegelt echt de manier waarop de wereld is gebouwd, in tegenstelling tot de manier waarop experts en ingenieurs dachten dat het zou zijn.
In feite is zelfs de bibliotheek van Alexandrië gebouwd door middel van synchronisatie. Elk schip dat in Alexandrië aanmeerde, werd doorzocht op rollen: als die werden gevonden, mocht het schip niet vertrekken voordat de rollen waren gekopieerd. Helaas gingen de honderdduizenden rollen van de bibliotheek verloren toen ze in 47 vGT door Julius Caesar werden verbrand omdat ze geen back-up synchroniseerden.
