211service.com
Super Sync
I decennier har framtidsinriktade teknologer och visionärer antagit att teknologin skulle skapa något slags elektroniskt bibliotek i Alexandria. I det här scenariot skulle massiva databanker vara centraliserade informationsverktyg, med tillgång som ges av billiga, snabba och allestädes närvarande dataflöden. I Star Trek, till exempel, använde besättningsmedlemmarna ett trådlöst nätverk för att länka sina tricorders med rymdskeppet Enterprises omborddator - det förråd av allt intressant och relevant. Och det ursprungliga Internet skapades inte för att distribuera information, utan som ett massivt fjärråtkomstsystem, som gör det möjligt för forskare på ett ställe att utnyttja datorer som finns någon annanstans. Till och med George Orwells 1984 föreställde sig en värld där register över nyheter och aktuella händelser lagrades på relativt få platser; det var så Winston Smith kunde redigera det förflutna så att Big Brothers uttalanden aldrig var fel.
Men verkligheten är på väg åt ett annat håll. Istället för allestädes närvarande anslutning till centraliserade databanker bygger vi istället en infrastruktur som är optimerad för data replikering . Samma information kopieras till dussintals, hundratals eller till och med tusentals platser över hela världen, och den hålls aktuell genom kontinuerliga återsändningar och uppdateringar. Människor arbetar instinktivt på detta sätt - det är därför människor som samarbetar i ett projekt tenderar att utbyta dokument via e-post snarare än att lägga dem på en central server. När allt kommer omkring, ibland är vi anslutna till ett av dessa datalager på ett snabbt nätverk, ibland är vi anslutna på ett långsamt nätverk, och ibland är vi inte anslutna alls. Folk gillar att ha sina egna kopior och sedan hålla dem uppdaterade genom att åberopa ett otroligt kraftfullt koncept som kallas sync.
Den här historien var en del av vårt novembernummer 2001
- Se resten av frågan
- Prenumerera
Synkronisering – förkortning för synkronisering – handlar om att kunna ta data från en plats och på ett intelligent sätt kopiera den till var den än kan behövas. Och viktigast av allt, synkronisering handlar om att spåra ändringar. Ett bra synksystem låter dig eller andra fritt redigera antingen originaldokumentet eller kopiorna, och sedan få dina ändringar att automatiskt spridas varhelst de behövs. Det bästa av dessa system spårar ändringar när de görs och tillåter sofistikerad ångra-till exempel återställning av data till hur det var vid ett visst datum, eller ta bort alla ändringar som gjorts av en viss författare. Synkronisering är ingen ny idé, men den har först nyligen börjat dyka upp som en avgörande del av sättet att driva datorsystem. Synkroniseringsteknik kommer verkligen att sätta tonen för framtida datoranvändning.
Idag är den ledande synkroniseringsplattformen Palm-operativsystemet, som jag har hyllat tidigare. Faktum är att en av de stora anledningarna till Palms popularitet är dess HotSync-teknik. Palm-användare kan lägga till, ta bort eller ändra sina adressböcker, möteskalendrar eller andra databaser på antingen sina skrivbord eller sina Palm-baserade datorer. Placera Palm i sin vagga och tryck på HotSync-knappen, så replikeras ändringarna automatiskt på den andra maskinen.
Men HotSync slutar inte där. Du kan till exempel synkronisera flera stationära datorer till samma Palm, så att personer i både ditt hem och ditt arbete kan komma åt och uppdatera din kalender även om det inte finns någon nätverksanslutning mellan dem. Allt du gör är att bära Palm fram och tillbaka mellan hemmet och kontoret, synkronisera på båda platserna; den intelligenta programvaran gör resten. Om du glömmer att synkronisera är det inga problem - nästa gång justeras systemet automatiskt.
Naturligtvis går synkroniseringsteknik långt bortom Palm-och långt bortom en persons stationära PC. Ett synkroniseringsprogram som kallas Concurrent Versions System är roten till många framgångsrika programvaruutvecklingsprojekt, från små företag där ett fåtal programmerare arbetar med samma projekt till storskaliga samarbetsinsatser med öppen källkod som registrerar hundratals eller tusentals programmerare. Denna teknik gör det möjligt för många att arbeta med samma program samtidigt. Varje programmerare har en personlig kopia av programvaran som utvecklas. En programmerare som lägger till en ny funktion eller fixar en bugg kan begå den ändringen i projektets arkiv. Andra programmerare - antingen i korridoren eller över hela världen - kan sedan uppdatera sina kopior och automatiskt få ändringarna tillämpade. Förr var det krångligt för mer än en person att arbeta med ett program samtidigt. Men nu är samtidig utveckling och buggfixning regel snarare än undantag. Concurrent Versions System, byggt på konceptet synkronisering, har dramatiskt påskyndat mjukvaruutvecklingen.
För programmerare med öppen källkod som vill konkurrera med kommersiell programvara har synkronisering varit både en förbannelse och en välsignelse. Det är oerhört svårt att designa applikationer som synkroniseras rätt. De avancerade synkroniseringssystem som är inbyggda i kommersiell databasprogramvara som Oracle gör det möjligt att bygga enorma databasfarmar genom att länka samman ett stort antal synkroniserade servrar. Hittills ger ledande open source-databaser som PostgreSQL och MySQL endast begränsat stöd för databassynkronisering. Systemen med öppen källkod kommer förmodligen att komma ikapp en dag snart, men tekniken är till sin natur svår att utveckla.
Ibland är informationskällan som synkroniseras ett rörligt mål. Tänk på Usenet, det ursprungliga globala anslagstavlasystemet. När två Usenet-servrar ansluter, synkroniserar de i huvudsak sina artiklar. Om en artikel finns på den ena maskinen men inte den andra, görs en kopia för att eliminera avvikelsen. Redan 1991 sa John Gilmore, en av grundarna av Electronic Frontier Foundation, att Usenet tolkar censur som skada och vägar runt den. Vad han menade var detta: alla universitet eller företag som inte gillar artiklar som publiceras på Usenet kan radera dem från sin server, men eftersom artiklarna flödar genom nätverket som helhet kan ingen institution blockera information från att komma ut till världen .
Under de senaste åren har Gilmores citat omtolkats av många journalister som att det refererar till Internet snarare än Usenet. Tråkigt för både Gilmore och för yttrandefriheten gör denna ändring citatet felaktigt. När artiklar publiceras från en webbplats, istället för via Usenet, distribueras de verkligen från en central plats - och den centrala platsen kan bli föremål för censur eller andra former av politiskt tryck.
Filbytesoperationer online som Napster och Gnutella är egentligen bara väldigt stora synkroniseringstjänster. Användare har sina egna visioner om vilken musik eller andra filer de vill ha, och de synkroniserar och synkroniserar tills de är nöjda. Här gäller synkronisering inte för en enskild fil utan för en samling. Resultaten är dock ungefär desamma.
Att ladda ner musik från en fildelningstjänst skiljer sig fundamentalt från att ladda ner information över webben. När det gäller webben är det väldigt få läsare som behåller och distribuerar sina egna långtidsexemplar. Det är därför Napster och dess ättlingar hotar musikindustrin; som Usenet visade kan det vara oerhört svårt att stoppa spridningen av data genom ett storskaligt synkroniseringssystem. En av de stora fördelarna med synkronisering är faktiskt redundans: även om huvudkopian raderas, lämnar sync alltid många andra kopior kvar. Detta fenomen gör det svårt för utomstående att radera eller kontrollera information som delas av synkronisering.
Att förstå användningen och kraften med synkronisering är avgörande för att exakt förutsäga riktningen som Internet och e-handel sannolikt kommer att växa. De flesta gillar säkerheten som kommer av att ha data på flera platser, och hastigheten som kommer av att ha data omedelbart tillgänglig på sina egna datorer. Produkter och tjänster som erbjuder synkronisering kommer därför troligen att klara sig bättre på marknaden än tjänster med liknande priser som erbjuder höghastighetsåtkomst till data lagrad på fjärrsystem. Människor vill inte bara utnyttja en dataström; de vill ha en egen kopia av informationen och de vill att den ska hållas uppdaterad. Detta har breda konsekvenser för allt från video on demand till hembank. Jag har gjort så kallade internetbanker med Intuits Quicken-programvara i flera år: med några dagars mellanrum laddar jag ner mitt kontos senaste transaktioner och korrigeringar över Internet och lägger till dem i mitt register. Min bank låter mig också se hela mitt kontoutdrag på Internet. Skulle jag ge upp att ladda ner transaktionerna på egen hand? Inte på ditt liv - jag känner mig säkrare att behålla mitt eget exemplar.
Synkronisering är också ekonomiskt vettigt. Med synkronisering är du inte så beroende av en dyr, alltid-på, höghastighetsanslutning till nätet. Du kan få mycket av samma effekt med lokal lagring och långsamma eller till och med intermittenta nätverksanslutningar. Sync speglar verkligen hur världen har byggts upp, i motsats till hur förståsigpåare och ingenjörer trodde att den skulle vara.
Faktum är att till och med biblioteket i Alexandria byggdes genom synkronisering. Varje skepp som lade till i Alexandria genomsöktes efter rullar: om några hittades fick fartyget inte lämna förrän rullarna hade kopierats. Tyvärr gick bibliotekets hundratusentals rullar förlorade när de brändes av Julius Caesar år 47 fvt eftersom de inte synkroniserade en säkerhetskopia.
