Distribuerad informationsbas: Grunderna. Distribuerad informationsbas. Steg-för-steg instruktioner och fallgropar Skapa revben

RIB är en distribuerad informationsbas, som är en trädliknande struktur, vars grenar är individuella utplacerade 1C Enterprise-databaser. Dessa databaser kallas distribuerade informationsbasnoder (nedan helt enkelt noder). Ett informationsutbyte bildas mellan dessa noder för att synkronisera alla noder (konfigurationer och databaser).

Huvudmekanismen är en utbytesmekanism med vissa distinkta och universella möjligheter. Den största skillnaden är att RIB-utbytesmekanismen är mer specialiserad och smal, medan universella utbyten ger användaren ett bredare utbud av möjligheter.

Grundläggande driftprinciper för RIB

Det är möjligt att ändra konfigurationsstrukturen endast i huvudrotnoden för den distribuerade infobasen. Dessa ändringar sprids sedan hierarkiskt till de underordnade noderna. Detta ger således ett enda konfigurationsstrukturutrymme över alla RIB-noder.

Data kan ändras i vilken som helst av noderna, som i sin tur distribueras till alla andra noder. Dessutom behöver dessa uppgifter inte nödvändigtvis överföras till andra deltagare i systemet och deras fullständiga identitet kanske inte bibehålls. Utvecklaren kan anpassa sammansättningen av den data som deltar i utbytet med andra RIB-deltagare efter önskemål. Dessutom kan inställningar göras inte bara på konfigurationsmetadatanivån, utan också på nivån för enskilda element, på vilka speciella val kan tillämpas.

Som nämnts ovan uppnås RIB-mekanismen genom användning av utbytesplaner. men för att en viss plan ska kunna användas i denna hierarkiska struktur måste dess "Distribuerad infobas"-egenskap vara aktiverad.

All data överförs till RIB via meddelanden. Innehållet i dessa meddelanden är tydligt reglerat och kan inte vara godtyckligt, som i den universella utbytesmekanismen. Data placeras i ett meddelande med hjälp av XML-serialiseringsprincipen. Utöver dessa dataändringar innehåller meddelandet även information om konfigurationsändringar, samt en viss mängd serviceinformation. Ändringar registreras och läggs i utbytesmeddelandet helt automatiskt. Varken användaren eller utvecklaren kan påverka detta.

Mottagning och generering av utbytesmeddelanden i RIB ställs in med ett kommando

Utbytesplaner. WriteChanges(WriteMessages, 0)

Innehållet läses med kommandot

Slutsats

Vi kan med säkerhet säga att RIB-mekanismen huvudsakligen består av en universell utbytesmekanism med några särdrag som bara finns i RIB-strukturen.

Tekniken för distribuerade informationsbaser (RIB) gör att du kan skapa ett geografiskt distribuerat system baserat på 1C Enterprise-konfigurationer. Detta gör att du kan ha ett gemensamt informationsutrymme även med de avdelningar som inte har en pålitlig kommunikationskanal, vilket kombinerar hög autonomi för noder med möjligheten att snabbt utbyta information. I våra artiklar kommer vi att titta på funktionerna och den praktiska implementeringen av denna mekanism på 8.2-plattformen

Först och främst, låt oss fråga oss själva: varför autoutbyte? Modern teknik, i kombination med billigt och snabbt internet, gör det möjligt att organisera distansarbete utan några svårigheter. Valet av metoder är lika brett som alltid: RDP, tunna klienter och webbklienter, ansluta nätverk med VPN - det finns mycket att tänka på. Men alla dessa metoder har en betydande nackdel - ett starkt beroende av kvaliteten på kommunikationskanalen.

Även med idealisk drift av den lokala leverantören är det omöjligt att garantera 100% tillgänglighet för kommunikationskanalen. Problem med stamnätsleverantören, bristande strömförsörjning, fysisk skada på kommunikationslinjen och många andra faktorer gör denna uppgift oöverstiglig. Samtidigt leder otillgängligheten av informationsbasen i ett avlägset lager eller butik till ganska betydande förluster. Och slutligen, låt oss inte glömma att det finns platser (till exempel industrizoner i utkanten av städer) där det är dyrt och/eller problematiskt att tillhandahålla en kommunikationskanal av hög kvalitet.

RIB-mekanismen låter dig bli av med dessa brister; varje avdelning har sin egen kopia av informationsbasen med vilken du kan arbeta självständigt även i fullständig frånvaro av kommunikation med omvärlden. Och den lilla mängden överförd information gör att du kan använda vilken kommunikationskanal som helst, inklusive mobilt Internet, för utbyte.

RIB på plattform 8.2 är inte något fundamentalt nytt, som representerar en vidareutveckling av RIB-plattform 7.7, bara nu har denna teknik blivit mer tillgänglig och enklare. Till skillnad från RIB-komponenten, som måste köpas separat, är RIB en integrerad del av många standardkonfigurationer och fungerar helt i användarläge, vilket gör att du kan klara dig utan konfiguratorn även vid installationsstadiet.

Vid det här laget skulle det vara dags att gå vidare till den praktiska delen, men vi måste göra ytterligare en avvikelse. Faktum är att övergången till 8.2-plattformen, som redan verkar ha skett, faktiskt ledde till uppkomsten av två typer av konfigurationer: baserad på en hanterad applikation, "inbyggd" för 8.2-plattformen, och anpassad från 8.1, fortsättningsvis att använda föråldrade tekniker och mekanismer. Eftersom en betydande del av konfigurationerna (Enterprise Accounting, Payroll and HR Management) är anpassade eller övergångsmässiga, kan de inte diskonteras, så den första delen av vår artikel kommer att ägnas åt dessa konfigurationer (i huvudsak 8.1-plattformen), medan i den andra vi kommer att undersöka hur man ställer in automatiskt utbyte för konfigurationer baserade på en hanterad applikation (plattform 8.2).

Låt oss överväga en praktisk uppgift: att ställa in automatiskt utbyte via FTP för Enterprise Accounting 2.0-konfigurationen. Trots det faktum att RIB låter dig utbyta med e-post eller fildelning, rekommenderar vi att du använder FTP som den enklaste och mest pålitliga metoden för kommunikation. Du kan läsa hur du ställer in din egen FTP-server, eller så kan du använda FTP-tjänsten från vilken värdleverantör som helst.

Först och främst måste vi konfigurera utbytesnoder. För att göra detta, starta konfigurationen med administratörsrättigheter och välj Transaktioner - Bytesplaner.

Välj i listan som visas Full planera eller Efter organisation, om register för flera företag i en databas och utbytet endast behöver göras för ett av dem. I fönstret som öppnas finns det redan en nod - den centrala, vi måste redigera den genom att ange koden och namnet.

Sedan skapar vi en annan nod för grenen, fyller den på samma sätt (för att lägga till, klicka på den gröna cirkeln med ett plus). Nästa steg är att skapa en initial bild för denna nod, som är en färdig informationsbas i filläge. För att göra detta, högerklicka på önskad nod och välj från rullgardinsmenyn Skapa en startbild.

Nu går vi vidare Service - Distributed Information Base (DIB) - Konfigurera RIB-noder.

Klicka på knappen i fönstret som öppnas Lägg till och konfigurera en ny växel genom att specificera fjärrvärden, växeltypen (via FTP) och serveranslutningsparametrarna.

Bokmärke Automatiskt utbyte låter dig ställa in ett utbytesschema, utbyte efter händelser (start och slut på arbete, etc.), dessa inställningar görs för användaren för vars räkning utbytet kommer att utföras, så se till att han har rättigheter att utbyta data.

Glöm inte att ange nodprefixet för dokumentnumrering (annars får du olika dokument med samma nummer) i Verktyg - Programinställningar; här kan du även konfigurera några andra utbytesparametrar. På samma flik bör du välja en användare för att utföra utbytesuppgifter, om du inte gör detta kommer schemat inte att fungera. Kom ihåg att bytet endast kommer att göras om användaren är inloggad i programmet.

Detta slutför konfigurationen av den centrala noden; nu måste du göra liknande inställningar för den perifera noden, koppla den ursprungliga bilden som ett befintligt informationssäkerhetssystem. Därefter kan du börja utbyta data. För att kontrollera bör du använda Kommunikationsmonitor, det låter dig inte bara övervaka framgången för uppladdningen/nedladdningen, utan visar också eventuella kollisioner som har uppstått eller försenade rörelser (om användaren som gjorde utbytet inte har tillräckligt med rättigheter att utföra några åtgärder i databasen). Närvaron av detta verktyg gör att du snabbt och effektivt kan lösa olika typer av problem som uppstår under autoutbyte.

Vid denna tidpunkt kan utbytesinstallationen anses vara klar och du kan börja arbeta i distribuerat läge. Det är värt besväret att uppehålla sig specifikt vid att uppdatera eller göra ändringar i konfigurationen. Dessa åtgärder är endast tillgängliga på den centrala noden; alla ändringar som görs kommer automatiskt att spridas till de perifera noderna under nästa utbyte. För att göra ändringar automatiskt måste den perifera databasen vara i exklusivt läge, annars måste du köra Konfigurator och verkställa Uppdatering av databaskonfigurationen manuellt.

En situation uppstår ofta när en organisation har flera filialer eller butiker geografiskt avlägsna från varandra. Det finns dock fortfarande ett behov av att upprätthålla konsekventa register i hela organisationen. Ett av alternativen för att lösa detta problem är att skapa ett enhetligt nätverk, som kommer att inkludera automatiserade arbetsstationer för alla grenar, och vara värd för 1C-informationsbasen på en offentlig server. Denna metod kan vara tekniskt komplex och dyr. Dessutom uppstår en rad frågor som rör informationssäkerhet.

Det andra alternativet är att skapa en distribuerad informationsbas (RIB). En distribuerad informationsbas är en hierarkisk struktur som består av separata informationsbaser på plattformen 1C:Enterprise, mellan vilka datautbyte organiseras i syfte att synkronisera konfiguration och data. Dessa individuella informationsbaser kallas RIB-noder.

En distribuerad informationsbas kan skapas baserat på olika konfigurationer av 1C:Enterprise-systemet. Låt oss överväga dess skapelse med hjälp av exemplet med 1C: Trade Management 10.3.

Låt oss säga att en ytterligare butik öppnas i en handelsorganisation, där det är nödvändigt att ha tillgång till organisationens allmänna handelssystem. För att skapa en RIB måste du utföra följande steg:


Detta slutför skapandet av en distribuerad informationsbas. För att utbyta information måste du starta datautbyte i den centrala databasen (ändringar som har skett i den kommer att laddas ner), sedan i butiken (ändringar från den centrala databasen kommer att laddas ner och ändringar som har inträffat i butiken kommer att laddas ner ), och igen i den centrala databasen (ändringar kommer att laddas ner till den , inträffade i butiken).

Distribuerade informationsbaser har sin egen kollisionsupplösningsmekanism. Så om det under ett utbyte visar sig att något objekt (dokument, katalog, etc.) har ändrats i både huvud- och underordnade databaser, kommer ändringen som görs i huvuddatabasen att ha prioritet.

Om det är nödvändigt att ändra konfigurationen av en distribuerad infobas måste detta göras i rotnoden (se första figuren i artikeln), konfigurationerna för de återstående noderna är låsta. Efter att ha gjort de nödvändiga ändringarna kan de överföras till slavnoder med standardproceduren för utbyte av data mellan RIB-noder. Efter att utbytet har utförts i slavnodens konfigurator är det nödvändigt att uppdatera infobaskonfigurationen.

Om du har problem med att skapa en distribuerad informationsbas hjälper våra specialister dig att sätta upp datautbyte och förklarar i detalj hur du använder det.

För att skapa en distribuerad informationsbas måste du gå in i programmet i 1C: Enterprise-läge. För att skapa distribuerade databasnoder, välj från menyn: Operations - Exchange plans. Fönstret "Välj objekt: Utbytesplan" öppnas.


1. Överväg alternativet med "Fullständig" utbytesplan.

Utbytet kommer att genomföras mellan alla organisationer som finns i den distribuerade informationsbasen.

Låt oss välja den "fullständiga" utbytesplanen. Fönstret "Fullständig utbytesplan" öppnas.

Vi fyller i två poster:

Låt oss kalla den första posten "Huvudnod", ange koden "GU",

Låt oss kalla den andra posten "Underordnad nod", ange koden "PU".

Som vi kan se från figuren har den första posten en ikon med en grön cirkel; detta är ikonen "Huvudnod".


För att skapa en kopia av informationsbasen "Huvudnod", klicka på "Slavnod" och klicka på ikonen "Skapa initial bild". Detta kommer att vara informationsbasen "Underställd nod".


Fönstret "Skapa en första informationssäkerhetsbild" öppnas, välj "På den här datorn eller på en dator i det lokala nätverket", klicka på "Nästa".


I fältet "Infobase Directory" väljer du platsen där kopian av "Main Node" ska installeras och klickar på "Slutför".


Efter att ha skapat informationsbasen "Underordnad nod" kommer följande meddelande att visas:


Klicka på "Ok".

Lägg till informationsbasen "Underordnad nod" till "1C: Enterprise". Vi går till den underordnade databasen i läget "1C: Enterprise". Låt oss öppna: Operations - Exchange Plans. Fönstret "Välj objekt: Utbytesplan" öppnas. Låt oss välja den "fullständiga" utbytesplanen. Fönstret "Fullständig utbytesplan" öppnas. Vi ser att ikonen "Huvudnod" är orange, vilket betyder att denna nod är huvudnoden för den informationsbas vi befinner oss i.


Vi gör följande inställningar i både master- och slavnoderna:

1. Lägg till ett prefix för den distribuerade infobasen.

Detta görs för att det inte ska uppstå konflikter i nummer och koder för dokument och kataloger skapade i två databaser, så i varje databas anger vi ett prefix som kommer att läggas till dokumentnumren och katalogkoderna. Öppna: Verktyg - Programinställningar - Fliken "Datautbyte". I fältet "Nodprefix för en distribuerad infobas:" anger du "PU" i den underordnade databasen och "GU" i huvuddatabasen.


2. Lägg till en inställning för datautbyte mellan noder:

Öppna: Service - Distributed Information Base (DIB) - Konfigurera RIB-noder. Fönstret "Inställningar för datautbyte" öppnas.


Klicka på "Lägg till" och fönstret "Inställningar för datautbyte" öppnas. Ange "Namn" för din inställning.


En nod kommer automatiskt att dyka upp i fältet "Node", för "Masternod" kommer det att finnas en "Slavnod", för "Slavnoden" kommer det att finnas en "Masternod".

I fältet "Katalog" väljer du mappen till vilken utbytesdata ska skickas; det är bäst att ange en katalog för huvud- och slavdatabaserna.

I fältet "Exchange Type" konfigurerar vi överföringen av data mellan databaser: via en fil eller FTP-resurs. Låt oss välja, till exempel, "dela genom en filresurs."

Vi ändrar ingenting i de återstående fälten.

Klicka på "Ok". Vi ser att en inställning har dykt upp.

3. För att utbyta data gör vi följande:

Först, i databasen där ändringarna gjordes, klicka på ikonen "Byt enligt aktuell inställning", som visas i bilden.


Efter uppladdningen visas uppladdningsresultatfönstret.


Sedan, i databasen som du vill överföra ändringarna till, klicka på ikonen "Byt enligt aktuell inställning" och data kommer att gå till den databas du vill ha.

2. Överväg alternativet med utbytesplanen "Efter organisation".

Utbytet kommer att genomföras bland utvalda organisationer placerade i en distribuerad informationsbas.

För att skapa noder för en distribuerad databas, välj från menyn: Operations - Exchange plans. Fönstret "Välj objekt: Utbytesplan" öppnas.


Låt oss välja utbytesplanen "Efter organisation". Fönstret "Utbytesplan efter organisation" öppnas.

Vi fyller i två poster:

Låt oss kalla den första posten "Huvudnod", ange koden "GU", vi ser skillnaden från "Utbytesplanen: Full", en tabell har dykt upp där vi anger de organisationer för vilka utbytet kommer att äga rum.

Låt oss kalla den andra posten "Underordnad nod", ange koden "PU", ange organisationen.


I alla andra avseenden är upplägget absolut detsamma som med "Exchange Plan: Full".

Instruktioner för att skapa och konfigurera distribuerade databaser med URDB (URIB)-komponenten

Komponenten URDB (Distributed Database Management) används för att utbyta information mellan två identiska 1C-databaser. Om konfigurationerna är olika kan du också använda den, detta skrivs i en annan. För att komponenten ska fungera måste du ha filen DistrDB.dll i BIN-mappen i 1C: Enterprise-programmet.

Låt oss titta på stegen för att skapa distribuerade databaser. Till exempel har vi en arbetsbas i katalogen D:\base1. Det krävs för att göra det centralt och skapa en perifer bas.

1. Skapa en katalog D:\base2 för den perifera databasen.

2. Skapa mapparna CP och PC i katalogerna D:\base1 och D:\base2 (använd latinska bokstäver).

3. Starta den centrala databaskonfiguratorn (D:\base1) och välj Meny - Administration - Distributed Information Security - Management.

4. Klicka på knappen "Central Information Security", i fönstret som visas, ange koden och namnet på databasen. Det är bättre att använda siffror eller latinska bokstäver för koden. Ange till exempel 001 och "Central bas", bekräfta genom att trycka på knappen "OK".

5. Klicka på knappen "Ny perifer informationssäkerhet" för att skapa en perifer databas. Vi anger parametrarna för det: 002 och "Perifer bas 1".

6. Använd markören för att välja "Peripheral Base 1"-basen och tryck på "Setup"-knappen. autoväxling". I inställningarna ändrar du manuellt läge till automatiskt. Var försiktig, det här är viktigt.

7. Använd markören och välj databasen "Peripheral Base 1" och tryck på knappen "Ladda upp data" och sedan på knappen "OK". Som ett resultat av uppladdningen kommer filen D:\base1\CP\020.zip att visas.

8. Starta 1C i konfiguratorläge, lägg till en ny databas "Peripheral databas 1" i 1C-startfönstret, ange den tidigare skapade katalogen D:\base2 för den.

9. Välj Meny - Administration - Distribuerad informationssäkerhet - Hantering. På frågan som ställdes ”Informationsbasen hittades inte. Vill du ladda data?" Klicka på knappen "Ja" och ange filnamnet "D:\base1\CP\020.zip", klicka på knappen "OK". När nedladdningen är klar kan processen att skapa en perifer databas anses vara avslutad.

I och även i metoderna för att skapa en perifer databas genom att återställa en kopia av den centrala databasen från en säkerhetskopia eller bifoga filer av en kopia av den centrala databasen för SQL-format och exekvera skriptet. Detta kommer att vara användbart för stora datamängder, när uppladdningar och nedladdningar tar timmar eller är helt orealistiska.

Instruktioner för utbyte mellan distribuerade databaser med URDB (URIB)-komponenten

Låt oss överväga ett förenklat exempel; vi kommer att utföra utbytet manuellt genom att starta konfiguratorn. Du kan använda konfiguratorns batchläge; du kan använda post, ftp och automatisk filkopiering för att leverera utbytespaket.

För att utföra utbytet måste du välja Meny - Administration - Distribuerad informationssäkerhet - Autoutbyte. Om bytet är automatiskt (se punkt 6 i de tidigare instruktionerna), kommer allt att lösa sig.

1. Så vi ändrar eller skapar några objekt som migrerar till den perifera databasen. Objektmigreringsregler ställs in på fliken "Migration" i objektegenskaperna (se objektträdet i konfiguratorn).

2. Starta den centrala databaskonfiguratorn, välj Meny - Administration - Distribuerad informationssäkerhet - Autoutbyte, klicka på knappen "Kör".

3. Flytta den resulterande filen D:\base1\CP\020.zip till mappen D:\base2\CP\

4. Vi ändrar några objekt i den perifera databasen. Helst inte de som ändrats tidigare i den centrala databasen, eftersom den centrala databasen har prioritet för objektändringar under utbyte.

5. Starta den perifera databaskonfiguratorn, välj Meny - Administration - Distribuerad informationssäkerhet - Autoutbyte, klicka på knappen "Kör".

6. Som ett resultat av det automatiska utbytet bör vi ha ändringar som kommer från den centrala databasen. Vi bör också ha en fil att överföra till den centrala databasen D:\base2\PC\021.zip

7. Kopiera filen D:\base2\PC\021.zip till mappen D:\base1\PC

8. Upprepa punkt 2. Som ett resultat kommer ändringar som tas emot från den perifera databasen att visas i den centrala databasen.

Så, den allmänna principen för utbyte: alternativt körning av automatiskt utbyte med samtidig förflyttning av filer (utbytespaket) från PC-mappen i en databas till PC-mappen i en annan databas och från CP-mappen i en databas till CP-mappen på annan databas.

Konfigurationsändringar görs endast i den centrala databasen. När du ändrar konfigurationen är det nödvändigt att utföra utbytet i perifera databaser i exklusivt läge. För att framgångsrikt bearbeta paket från perifera databaser i den centrala databasen måste konfigurationen laddas in i de perifera databaserna. Om du blir förvirrad är det okej, paketet som avvisats av den centrala databasen kommer att laddas ner igen.