Kort genomgång av modern subd. Databashanteringssystem och deras funktioner

Databashanteringssystem (DBMS) - ett mjukvarusystem utformat för att skapa en gemensam databas för en mängd olika applikationer på en dator, hålla den uppdaterad och säkerställa effektiv användaråtkomst.

Huvudfunktionen hos DBMS är närvaron av procedurer för att mata in och lagra inte bara själva data utan också beskrivningar av deras struktur. Filer försedda med en beskrivning av data som lagrats i dem och kontrolleras av en DBMS började kallas "Databaser" (DB).

Design egenskaper:

1) Närvaron av ett visuellt gränssnitt som automatiserar processen att skapa manipulationsverktyg - skärmformulär, mallar, rapporter, frågor;

2) Tillgänglighet av verktyg för att skapa databasobjekt i dialogläge;

3) Tillgång till avancerade verktyg för att skapa programtillägg inom en enda miljö;

4) Inbyggt stöd för universella datahanteringsspråk (SQL eller QBE).

Huvudfunktioner i DBMS

hantering av data i externt minne (på diskar);

hantering av RAM-buffertar;

transaktionshantering;

loggning av ändringar i databasen;

Säkerställande av databasens integritet och säkerhet.

Typer av DBMS: Efter datamodell : 1) hierarkisk; 2) nätverk; 3) relationell; objektorienterad

Av användningens natur : personlig och industriell.

Beroende på graden av distribution:

Lokal DBMS (alla delar av den lokala DBMS finns på samma dator)

· Distribuerad DBMS (delar av DBMS kan finnas på två eller flera datorer).

Genom att komma åt databasen:

1) filserver (DBMS-åtkomst till data sker via ett lokalt nätverk);

2) klient-server (alla klientförfrågningar för databehandling behandlas centralt av klient-server DBMS);

3) inbäddad (designad för lokal lagring av applikationsdata och inte designad för delad användning i nätverket)

26. Grunderna i MS Access DBMS: grundläggande teknik för att arbeta med tabeller (till exempel).

Databashanteringssystemet låter dig skapa, redigera och bearbeta relationsdatabaser (DB), där textuell, numerisk, grafisk och annan information grupperas och lagras i relaterade tabeller. Tabellerna måste ha följande egenskaper:
varje tabellkolumn är ett dataelement;
alla kolumner är homogena, d.v.s. deras element har samma karaktär
det finns inga två identiska rader i tabellen;
kolumner och rader kan ses i valfri ordning, oavsett informationsinnehåll och betydelse.

Det finns flera sätt att skapa tabeller i Access:

· Skapa en tabell i tabellvy (eller genom att ange data);

· Skapa en tabell i tabelldesignläge;

· Skapa tabeller med hjälp av tabellguiden.

27. Grunderna i MS Access DBMS: grundläggande teknik för att arbeta med formulär (till exempel).

Huvudsyftet med en tabell i MS Access är att lagra inmatade data. Samtidigt spelar den rollen som en passiv lagring, det vill säga att den själv inte kan initiera vare sig processen att begära nya poster eller överföringen av information till slutanvändaren.

Formulär låter dig glömma besväret som uppstår när du arbetar med tabeller som har ett stort antal fält. I läge Formuläret du kan ge all din uppmärksamhet åt en post, inte använda rullning för att hitta det önskade fältet i en lång rad tabellkolumner, utan att ha all information framför dina ögon.

För att underlätta arbetet med formuläret kan du också placera det på det Kontroller(Till exempel Knappar).

Formulär, delad form, formbyggare osv.

28. Grunderna i MS Access DBMS: de viktigaste teknikerna för att organisera multi-table databaser (till exempel).

Huvudsyftet med en tabell i MS Access är att lagra inmatade data. Samtidigt spelar den rollen som en passiv lagring, det vill säga att den själv inte kan initiera vare sig processen att begära nya poster eller överföringen av information till slutanvändaren. För att göra detta används andra objekt - frågor - i DBMS.

Alla förfrågningar är uppdelade i förfrågningar-val och förfrågningar-åtgärder.

Huvudobjekten i Access-databasen är tabeller, frågor, formulär, rapporter, makron, moduler. Tabellen är basobjektet för DBMS, alla andra objekt härleds och skapas endast på basis av tidigare förberedda tabeller. Tabeller är en uppsättning data som förenas av en betydelse, karaktär, syfte (till exempel data om insättningar). I tabeller lagras dessa data i fält (kolumner) och poster av samma typ (rader). Varje enskilt fält innehåller en del information om tabellelementet. En enda post består av fält och innehåller all information om det objektet. Vanligtvis består en databas av flera tabeller, vars storlek är begränsad. Antalet rader i tabellen är en större än antalet poster (den sista tomma raden är för att ange en ny post), och antalet kolumner är lika med antalet fält i posten. Tabellkolumnrubriker motsvarar fältnamn.

I Access DBMS innebär processen att skapa en relationsdatabas att skapa ett dataschema. Dataschemat visar visuellt tabeller och relationer mellan dem, och ger även användning av relationer i databehandling. Dataschemat anger parametrarna för att säkerställa integriteten för relationer i databasen.

Således utförs en oupplöslig koppling mellan utformningen av en databas utanför maskinen och stadiet för dess skapande med hjälp av ett DBMS. En-till-en- och en-till-många-relationer kan upprättas i dataschemat byggt enligt ämnesområdets normaliserade datamodell. För sådana länkar upprätthålls integriteten för sammankopplade data, vilket inte tillåter närvaron i databasen av en underordnad post utan en master associerad med den, under den initiala laddningen av databasen och dess justeringar. Relationer som definieras i dataschemat används automatiskt när man utvecklar flertabellsformulär, frågor, rapporter, vilket avsevärt förenklar processen för deras konstruktion.

29. Grunderna i MS Access DBMS: grundläggande tekniker för att arbeta med frågor (till exempel).

Huvudsyftet med en tabell i MS Access är att lagra inmatade data. Samtidigt spelar den rollen som en passiv lagring, det vill säga att den själv inte kan initiera vare sig processen att begära nya poster eller överföringen av information till slutanvändaren. För att göra detta används andra objekt - frågor - i DBMS.

Alla förfrågningar är uppdelade i förfrågningar-val och förfrågningar-åtgärder.

Efter att ha gjort välj-fråga DBMS skapar en virtuell tabell i vilken den matar in den valda informationen och lagrar den tills den genererade tabellen stängs. När denna fråga stängs förstörs den resulterande tabellen, vilket frigör minnet som den upptog.

Till skillnad från en urvalsfråga, begäran-åtgärd gör ändringar i befintliga data. Med en åtgärdsfråga kan du automatiskt skapa en ny tabell, lägga till data i en befintlig tabell eller ta bort eller ändra en uppsättning poster från en befintlig tabell.

Varje nyskapad fråga i MS Access betraktas automatiskt som en urvalsfråga. I händelse av att en användare eller utvecklare behöver ta emot en åtgärdsbegäran ska detta anges specifikt. Detta hjälper till att undvika oavsiktliga dataåtgärder som inte kan ångras.

Frågor i MS Access är tillgängliga i tre lägen: tabellform, där frågan ser ut som en vanlig tabell, designerläge, där frågan visas som ett schema av relaterade objekt, och i form av SQL-satser (frågor är inbyggda i en lexikal dialekt baserad på semantiken i en vanlig tabell.språk (engelska) När man skapade språket antog man att vilken oförberedd användare som helst kunde skriva en konstruktion på den, enbart styrd av sina behov och utifrån den befintliga datastrukturen).


Liknande information.


Desktop DBMS används för relativt små uppgifter (liten mängd bearbetad data, litet antal användare). Med detta i åtanke har dessa DBMS en relativt förenklad arkitektur, i synnerhet fungerar de i filserverläge, de stöder inte alla möjliga DBMS-funktioner (till exempel finns det ingen transaktionslogg, det finns ingen möjlighet till automatisk databasåterställning efter misslyckanden etc.). Sådana system har dock ett ganska brett användningsområde. För det första handlar det om statliga (kommunala) institutioner, utbildningssektorn, tjänstesektorn, små och medelstora företag. Det specifika med de uppgifter som uppstår där är att datavolymerna inte är katastrofalt stora, uppdateringsfrekvensen är inte för hög, organisationen är vanligtvis geografiskt placerad i en liten byggnad, antalet användare varierar från en till 10-15 personer . Under sådana förhållanden är användningen av desktop DBMS för att hantera informationssystem fullt motiverad, och de används framgångsrikt.

En av de första DBMS var de så kallade dBase-kompatibla mjukvarusystemen som utvecklats av olika företag. Det första utbredda systemet av detta slag var dBase III-PLUS-systemet (Achton-Tate). Ett utvecklat programmeringsspråk, ett användarvänligt gränssnitt tillgängligt för massanvändare, bidrog till den utbredda användningen av systemet. Samtidigt orsakade driften av systemet i tolkningsläget låg prestanda vid exekveringsstadiet. Detta ledde till uppkomsten av nya kompilatorsystem nära dBase III - PLUS-systemet: Clipper (Nantucket Inc.), FoxPro (Fox Software), FoxBase + (Fox Software), Visual FoxPro (Microsoft). En gång i tiden användes PARADOX DBMS (Borland International) flitigt.

På senare år har databashanteringssystemet Microsoft Access blivit mycket utbrett, vilket ingår i ett antal versioner av Microsoft Office-paketet (Microsoft).

3.5.2. Server DBMS

För stora organisationer är situationen fundamentalt annorlunda. Där är användningen av filserverteknik otillfredsställande av de skäl som beskrivs ovan. Därför ligger de så kallade server-side DBMS i framkant av kampen för automatisering.

De huvudsakliga tillverkarna av sådana databehandlings- och lagringssystem är tre företag: Oracle, Microsoft och IBM. Ett diagram som visar den relativa försäljningen av respektive system (källa: IDC Report, maj 2006) visas i figur 1. 3.4.


Ris. 3.4.

Den vanligaste klient-server systemen här är respektive Oracle-system (utvecklare av Oracle), MS SQL Server (utvecklare från Microsoft), DB2, Informix Dynamic Server (IBM).

Låt oss ge en kort beskrivning av dessa system.

MS SQL Server

Hittills har flera versioner av system utvecklats: MS SQL Server-2000, MS SQL Server -2005, MS SQL Server-2008. Här finns information om MS SQL Server-2008-systemet från Microsofts server (http://www.microsoft.com/rus/SQL/2008/default.mspx)

Microsoft SQL Server 2008 är ett komplett databas- och dataanalyserbjudande för snabbt skapande skalbara lösningar e-handel, affärsapplikationer och datalager. Det minskar avsevärt tiden till marknaden för dessa lösningar samtidigt som den ger skalbarhet för att möta de högsta kraven. SQL Server inkluderar stöd för XML-språket och HTTP-protokollet, prestanda- och tillgänglighetsförbättringar för att hjälpa till att balansera belastningen och säkerställa drifttid, och funktioner för att förbättra hantering och anpassning som minskar den totala ägandekostnaden.

Tätt integrerad med Microsoft Office, SQL Server 2008 Business Intelligence Platform tillhandahåller en rik, skalbar infrastruktur för att tillföra kraftfulla affärsinformationsfunktioner till arbetsflödet för alla affärsenheter i ditt företag, vilket gör den affärsinformation du behöver tillgänglig via en välbekant MS Excel och MS Word-gränssnitt..

MS SQL Server-2008 stöder skapandet och driften av ett företagsdatalager som kombinerar information från alla system och applikationer, vilket gör att du kan få en enda heltäckande bild av ditt företags verksamhet.

MS SQL Server-2008 tillhandahåller en skalbar och högpresterande "dataprocessor" - för de mest kritiska och krävande affärsapplikationerna, de som behöver högsta nivå av tillförlitlighet och skydd, samtidigt som den totala ägandekostnaden minskar tack vare avancerad hantering av serverinfrastruktur Förmågor.

MS SQL Server-2008 erbjuder utvecklare en utvecklad, bekväm och funktionell programmeringsmiljö, inklusive verktyg för att arbeta med webbtjänster, innovativa dataåtkomstteknologier - allt som är nödvändigt för ett effektivt arbete med data av alla typer och format.

Separata aspekter av MS SQL Server - 2008 kommer att beskrivas i föreläsningarna "Strukturen av ett modernt DBMS på exemplet Microsoft SQL Server 2008" och "Directions of databas development" 14.

Orakel

Hittills har flera versioner av system utvecklats, som var och en innehåller en hel produktlinje, såsom Oracle 8, Oracle 9i, Oracle 10g.

Motsvarande produktlinjer inkluderar både själva DBMS (till exempel Oracle Database 10g, Oracle Database 11g), såväl som utvecklings- och dataanalysverktyg.

Här finns information om systemet från Oracle-servern http://www.oracle.com/global/ru/mid/oracle_products/database.html).

Oracle erbjuder kompletta, öppna, prisvärda och lättanvända tekniklösningar. Färdiga paketerade lösningar inkluderar automatiskt en databas, en applikationsserver, en integrationsplattform, analysverktyg och ostrukturerade datahanteringsverktyg i priset. Oracles skalbara affärsapplikationer kan sömlöst integreras i ett företags IT-infrastruktur utan att förlora befintliga IT-investeringar.

Oracle Database 11g ger förbättrad prestanda genom att automatisera administrativa uppgifter och tillhandahålla branschledande funktioner för säkerhet och efterlevnad. Det finns fler funktioner för automation, självdiagnostik och kontroll. Bland egenskaperna hos systemet kan man notera hanteringen av stora mängder data med hjälp av distribuerade tabeller och komprimering, effektivt dataskydd, möjligheten till fullständig återhämtning, förmågan att integrera geofysiska data av medieinnehåll i en affärsprocess, etc.

IBM databasservrar

Hittills har DB2 och Informix produktlinjer utvecklats, inklusive både själva DBMS och datautvecklings- och analysverktyg (DB2 Universal Database DB2 Personal Edition, DB2 Enterprise 9, etc., samt Informix Dynamic Server, Informix Dynamic Server Express, Informix Extended Parallel Server, etc.

Här är information om några av dessa system från servern (

1. Vilka trender i utvecklingen av server DBMS kunde du notera under 2015–2016?

Vitaly Chesnokov, QSOFT
De viktigaste trenderna i utvecklingen av modern DBMS: användning av virtualisering och GRID-teknik, självdiagnostik och automatisk korrigering, användning av NoSQL DBMS i Big Data, användning av NewSQL DBMS, exekvering av C / C ++-kod i DBMS-adressutrymmet.

Under de senaste åren har mängden data som lämpar sig för bearbetning och lagring i en databas ökat exponentiellt. En ändring av lagen "Om personuppgifter" antogs, som säger att personuppgifter om medborgare i Ryska federationen måste lagras på Ryska federationens territorium. Vissa västländer har också liknande lagar. Allt detta leder oss till behovet av att gruppera och dela upp data i delar.

Överallt ökar andelen av att använda NoSQL DBMS, där det är möjligt, på grund av den höga hastigheten att arbeta med data och möjligheten till relativt enkel klustring. En ny typ av DBMS, NewSQL, vinner mark. De viktigaste oöverträffade funktionerna i NewSQL inkluderar: möjligheten till asynkron master-master-replikering, som ersätter det klassiska master-slave-schemat och ger större flexibilitet för högbelastningsprojekt; förenkling av administration och tillhandahållande av dynamisk databashantering; stöd för lagrade procedurer i C / C ++ och möjligheten att exekvera C / C ++-kod i adressutrymmet för DBMS (ger nästan obegränsad utökningsbarhet och en otrolig ökning av prestanda); förbättrade diagnostik- och felsökningsverktyg.

Dessutom ger användandet av virtualisering i DBMS den nödvändiga feltoleransen och skalbarheten.

Nikolai Fetyukhin.MST
Övergång till NoSQL och specialisering av databaser. Du kan till exempel vara uppmärksam på Redis och Tarantool. Den senare innehåller till och med en egen applikationsserver. En intressant trend är den kombinerade DBMS och backend, som Facebooks Parse. Också smidig migrering av databaser till molnen.

Petr Urvaev SimbirSoft
Funktioner som har visat sig framgångsrikt i vissa DBMS implementeras i andra produkter efter en tid. Till exempel, materialiserade vyer, som först dök upp i Oracle DBMS, implementerades senare i MS SQL Server och dök sedan upp i PostgreSQL. Fördelarna som NoSQL-lösningar ger implementeras gradvis även i relations-DBMS. Till exempel stöder de senaste versionerna av PostgreSQL att arbeta med data i JSON-format.

Evgeny Gusev, ITECH
De senaste årens förändringar inom DBMS-segmentet var både privata – i förhållande till enskilda ledande produkter, och strukturella till sin natur, så det finns många trender. För det första, heterogenitet. Övergången till mikrotjänstmodellen gjorde det möjligt att flexibelt välja sätt att lösa datalagringsproblemet, inte begränsat till ett. För det andra, utvecklingen av NoSQL, minneslagringar. För det tredje är Big Data en revolution som krävde omprövning av både metodiken för att lagra data och själva begreppet "data". För det fjärde, kolumnära (kolumnorienterade) databaser.

2. Finns det enligt din åsikt en tendens för DBMS att flytta till "molnen"? Vilka är för- och nackdelarna med detta tillvägagångssätt?

Vitaly Chesnokov, QSOFT
Ja, det finns definitivt en trend. Till att börja med behöver vi separera två grundläggande tillvägagångssätt för driften av ett DBMS i molnet.

Den första är att distribuera en virtuell maskin med ett DBMS i molnet. Du kan ladda upp din egen bild till den eller använda en förberedd med en redan optimerad DBMS. Faktum är att en sådan virtuell maskin inte är fundamentalt olik en vanlig fysisk server. Den största fördelen jämfört med en fysisk server är att det är lätt att skala, både vertikalt (du kan tilldela fler resurser för denna "virtuella" när som helst) och horisontellt (att skapa en ny "virtuell" tar bara några minuter). Ett annat betydande plus är den höga tillgängligheten av virtuella molnmaskiner (99,9 %–99,99 %). Dessutom tillhandahåller molnvärdar många ytterligare tjänster, såsom övervakning, säkerhetskopiering, serverkontrollpanel, etc.

Ett fundamentalt annorlunda tillvägagångssätt är ett moln-DBMS. I det här fallet köper inte klienten en server utan helt enkelt tjänsten att använda ett DBMS. Den nuvarande marknaden för offentliga moln DBMS, som uppgår till 400 miljoner dollar, kommer att öka till 1,2 miljarder dollar 2017. De viktigaste fördelarna med detta tillvägagångssätt: betalning för resurser som inte tillhandahålls (som kan "inaktiva"), utan bara för de som faktiskt används: mängden lagrad data, mängden bearbetade DBMS-operationer; det finns inget behov av att konfigurera och administrera DBMS - dessa uppgifter är helt på värddatorn; du behöver inte tänka på skalning; hostaren tillhandahåller många praktiska och intuitiva verktyg för att hantera DBMS; hög tillgänglighet. Den största nackdelen är bristen på förmågan att finjustera DBMS.

Du kan också separat markera en sådan underart av ett moln-DBMS som DbaaS (Database as a Service). Nästan alltid är en specifik DbaaS en specifik DBMS som tillhandahålls i molnet av direkta utvecklare. Detta leder uppenbarligen till skillnaden i affärsmodeller: moln DBMS är lämpliga för storskaliga typiska uppgifter, medan DbaaS är lämplig för specialiserade sådana, för ett specifikt märke av databasmotor, med möjlighet till direkt kommunikation med sina utvecklare. Dessutom tillåter DbaaS mycket mer exakt val av systemet för den erforderliga belastningen, i synnerhet genom att reglera antalet klientanslutningar.

Nikolai Apurin, Artwell
Trenden finns. De flesta stora (helryska) system använder redan molndatabaser.

Nikolai Fetyukhin.MST
Trenden är svag. Användningen av moln, även om det minskar vissa kostnader, men leder till nya kostnader. Att använda molnet kan bara vara fördelaktigt för projekt med låg närvaro.

Fördelar med moln: enkel skalbarhet, hög feltolerans, tillgänglighet av servrar runt om i världen, enkel kloning och distribution av data. Nackdelar: medan molnen, som en produkt, är "rå" - det är omöjligt att fysiskt kontrollera data, eftersom de hanteras av molnleverantören.

Petr Urvaev SimbirSoft
Trenden att flytta DBMS till molnen finns som en del av den allmänna trenden att flytta hela IT-infrastrukturen för organisationer till molnen. Den största fördelen med detta tillvägagångssätt är möjligheten att överföra databasunderhåll. Nackdelarna inkluderar lagring av viktig data på en okontrollerad webbplats. En användare av molnlagring kan, om det behövs för att förstöra lagrad data, inte vara säker på att data faktiskt har raderats.

Evgeny Gusev, ITECH
Den finns och är en av de primära. Det finns många fördelar med att placera en databas i molnet: enkel skärning och replikering, möjligheten att effektivt separera data från affärslogik i prestandasammanhang, enkel och begriplig hantering av datorkraft och ett antal andra. Kritiska minus, baserat på erfarenhet, ser vi inte. Ju mer data du måste hantera, desto mer horisontell skalning krävs, desto mer motiverad blir användningen av moln.

3. Vilka faktorer påverkar valet av ett DBMS? För vilka projekt är SQL-databaser mer lämpliga, och för vilka - NoSQL?

Vitaly Chesnokov, QSOFT
Huvudfaktorn för att välja mellan SQL och NoSQL DBMS är applikationens behov. SQL lämpar sig bättre för vissa uppgifter, NoSQL är bättre för andra.

Det finns flera viktiga skillnader mellan dessa typer av DBMS. Dataformatet i SQL är mycket strikt, det finns tydliga tabellscheman som anger var vilken typ av data används. Det finns inga fördefinierade dokumentscheman i NoSQL - all information kan läggas till i vilket dokument som helst.
I SQL finns det komplexa relationer mellan olika tabeller. Data i en tabell är ofta en länk till data i en annan (datanormaliseringsprincip). I NoSQL är som regel varje dokument en isolerad informationsenhet och lagrar all tillgänglig data (denormaliseringsprincipen).
SQL har inbyggda mekanismer för att upprätthålla dataintegritet (du kan till exempel inte ta bort en post från en tabell om den hänvisas till i andra tabeller). Det finns inga sådana mekanismer i NoSQL, så datadenormalisering är viktig (helst lagrar varje dokument absolut all information om något objekt).
SQL har en transaktionsmekanism som gör att du kan köra flera SQL-frågor på allt-eller-inget-basis. I NoSQL finns en liknande mekanism endast i ett enda dokument.
Helst är NoSQL snabbare än SQL på grund av en enklare metod för att lagra data som gör att du kan få all information om ett objekt med en enkel begäran om ett enda dokument. Det finns dock ett problem förknippat med det faktum att den mest populära NoSQL DBMS dök upp ganska nyligen. Konsekvensen av detta är en mindre mängd information om dessa DBMS och ett större antal olösta problem.
NoSQL är mycket lättare att skala på grund av bristen på komplexa logiska relationer mellan dokument. Dessutom skapades det mesta av NoSQL DBMS ursprungligen med tonvikt på skalningsmekanismer.

Som ett resultat är NoSQL bättre lämpad för projekt med en stor mängd data som enkelt kan delas upp i separata oberoende objekt. Ger hög hastighet och skalbarhet. SQL lämpar sig för projekt där olika data har komplexa logiska relationer med varandra och deras integritet är oerhört viktig.

Nikolai Apurin, Artwell
NoSQL - för icke-standardiserade beräkningar med en enorm mängd data. Men som praxis har visat, bearbetas volymer upp till 20 miljoner poster perfekt av SQL-databaser.

Nikolai Fetyukhin.MST
NoSQL-teknologier används aktivt av välkända företag, inklusive i högbelastningsprojekt. Att spara data och enkla val med NoSQL kommer att gå riktigt snabbt. Vid mer komplexa frågor kommer uppgiften att behöva lösas på produktsidan, vilket komplicerar själva produkten. I sin renaste form väljer vi inte NoSQL. Komplikationen av produktlogiken och emuleringen av grundläggande SQL-saker leder till en ökning av kostnaden för projektet. Och inte alla NoSQL-lösningar ger datasäkerhet i kritiska situationer.

Petr Urvaev SimbirSoft
Valet av en databas beror ofta på arkitektens preferenser, den möjliga belastningen, den nödvändiga funktionaliteten. SQL-databaser låter dig tydligt definiera datalagringsscheman och hämta data med hjälp av komplexa frågor, NoSQL-databaser låter dig lagra data i ett mindre ordnat format och stöder horisontell skalning. Ofta använder distribuerade system både SQL- och NoSQL-databaser, som var och en löser sina egna problem.

Evgeny Gusev, ITECH
I det nuvarande tillståndet är SQL / NoSQL snarare inte konkurrerande, utan snarare kompletterande enheter. Att använda SQL-lösningar i en applikation, när du behöver arbeta med komplexa data i deras relation, och NoSQL, när hastigheten att arbeta med ostrukturerad information kommer i förgrunden, är en helt naturlig praxis.

4. Hur skulle du bedöma fördelningen av betalda DBMS-licenser bland användare? När är det vettigt att köpa en licens?

Vitaly Chesnokov, QSOFT
Det finns två olika alternativ för att dela upp DBMS i betalda och gratis.

Den första är gratisversioner av kommersiella DBMS (MS SQL, Oracle, etc. har det) I själva verket är detta en avskalad version av DBMS, som saknar en del av funktionaliteten. Här är den viktigaste valfaktorn mycket enkel - om denna funktionalitet behövs för detta projekt. Mer sällan finns det en gratisversion, som inte skiljer sig från den kommersiella vad gäller funktionalitet, men som uppdateras mer sällan (Couchbase Server).

Det andra är gratis DBMS, för vilket det finns liknande kommersiella produkter (MySQL från Oracle, Percona Server eller MariaDB). I det här fallet ligger fördelen med en kommersiell produkt vanligtvis i tillgången till mer seriös teknisk support. När det gäller funktionalitet skiljer sig betalda och gratis DBMS lite från varandra, även om båda kan ha sina egna verktyg som inte är tillgängliga i andra versioner.

Som ett resultat finns det två huvudskäl att välja ett betald DBMS: närvaron av funktionalitet som inte är tillgänglig i gratis motsvarigheter, och möjligheten att kontakta tillverkarens tekniska support för hjälp.

Nikolai Apurin, Artwell
Varför betala när det finns gratis? Det finns dock många lösningar som bara kan fungera med betalda databaser. I grund och botten är dessa utländska sedvänjor.

Nikolai Fetyukhin.MST
Frågan är tvetydig. Ofta har betalda DBMS gratisversioner, och gratisversioner har komponenter som kan köpas för pengar. Skillnaden ligger oftast i de inbyggda analys- och databasövervakningsverktygen. Därför är betalda DBMS mer lämpade för stora projekt med stora distribuerade system.

Petr Urvaev SimbirSoft
Betalda DBMS-licenser är att föredra framför gratis när projektet förlitar sig på kapaciteten hos en specifik databas, och det är viktigt för den att funktionerna som används fungerar som annonserade och problem i deras arbete snabbt elimineras. Numera används kommersiella och fria databaser lika ofta, och de flesta nya projekt väljer fria databaser, eftersom datahanteringsförmågan och stabiliteten är ungefär på samma nivå som betalda och gratis DBMS.


Huvudfunktionerna för DBMS:
    datahantering i externt minne (på diskar);
    datahantering i RAM med diskcache;
    loggning av ändringar, säkerhetskopiering och återställning av databasen efter fel;
    stöd för databasspråk (datadefinitionsspråk, datamanipulationsspråk).
Komponenter i modern DBMS:
    kärnan, som är ansvarig för att hantera data i extern och RAM och loggning,
    en databasspråkprocessor som optimerar datahämtning och modifieringsförfrågningar och skapar, som regel, maskinoberoende exekverbar intern kod,
    ett runtime-stödundersystem som tolkar datamanipulationsprogram som skapar ett användargränssnitt med DBMS
    samt serviceprogram (externa verktyg) som tillhandahåller ett antal ytterligare funktioner för service av informationssystemet.
DBMS-klassificeringar:
    Efter datamodell
    Hierarkisk
    Nätverk
    relationella
    Objektorienterad
    Objektrelationell
- hierarkisk. En hierarkisk datamodell är en modell som kombinerar poster lagrade i en gemensam trädstruktur med en enda rotposttyp som har flera eller inga underordnade posttyper. Varje delposttyp kan också ha flera undertyper eller inga undertyper. Huvudstrukturen som stödjer den hierarkiska presentationen av information är ett träd.

Fördelarna med den hierarkiska datamodellen inkluderar effektiv användning av datorminne och bra indikatorer på exekveringstiden för grundläggande dataoperationer. Den hierarkiska datamodellen är bekväm för att arbeta med hierarkiskt ordnad information.

Nackdelen med den hierarkiska modellen är dess krånglighet för att bearbeta information med ganska komplexa logiska kopplingar, samt komplexiteten i förståelsen för den genomsnittliga användaren.

Exempel: utländska system IMS, PC/Focus, Team-Up och Data Edge, samt inhemska system Oka, INES och MIRIS;

Nätverk. Denna modell låter dig visa en mängd olika relationer mellan dataelement i form av en godtycklig graf, och därigenom generalisera den hierarkiska datamodellen

Fördelen med nätverksdatamodellen är möjligheten till effektiv implementering när det gäller minneskostnader och effektivitet. I jämförelse med den hierarkiska modellen ger nätverksmodellen stora möjligheter när det gäller tillåtligheten av bildandet av godtyckliga länkar.
Nackdelen med nätverksdatamodellen är den höga komplexiteten och stelheten hos databasschemat byggt på dess bas, samt svårigheten att förstå och bearbeta information i databasen av en vanlig användare. Dessutom, i nätverksdatamodellen, är kontrollen av länkarnas integritet försvagad på grund av tillåtligheten av att upprätta godtyckliga länkar mellan poster.
System baserade på nätverksmodellen används inte i stor utsträckning i praktiken. De mest kända nätverks-DBMS är följande: IDMS, db_VistaIII, NETWORK, SETOR och KOMPAS;

relationsmodell. I relationsdatabaser presenteras all information i form av tvådimensionella tabeller. Relationsmodellen är baserad på begreppssystemet för relationalgebra, av vilka de viktigaste är "tabell", "relation", "rad", "primärnyckel". Alla operationer på en relationsdatabas handlar om att manipulera tabeller. En tabell består av rader och kolumner och har ett namn som är unikt i databasen. Tabellen återspeglar typen av det verkliga objektet (entitet), och var och en av dess rader (tupel) är ett specifikt objekt.

Fördelen med relationsdatamodellen ligger i enkelheten, klarheten och bekvämligheten med fysisk implementering på en dator. Det är enkelheten och förståeligheten för användaren som var huvudorsaken till deras utbredda användning. Problemen med effektiviteten av databehandling av denna typ visade sig vara tekniskt ganska lösbara.

De huvudsakliga nackdelarna med relationsmodellen är följande: bristen på standardmetoder för att identifiera individuella poster och komplexiteten i att beskriva hierarkiska och nätverksrelationer.

Exempel på utländska relations-DBMS för PC är följande: dBaseIII Plus och dBase IV (Ashton-Tate), DB2 (IBM), R:BASE (Microrim), FoxPro och FoxBase (Fox Software), Paradox och dBASE för Windows (Borland ) , FoxPro senare, Visual FoxPro och Access (Microsoft), Clarion (Clarion Software), Ingres (ASK Computer Systems) och Oracle (Oracle).

Under de senaste åren har dessutom följande datamodeller dykt upp och har blivit mer aktivt implementerade i praktiken:

Objektorienterad modell. I den, när du presenterar data, är det möjligt att identifiera enskilda poster i databasen. Relationer etableras mellan databasposter och deras bearbetningsfunktioner med hjälp av mekanismer som liknar motsvarande faciliteter i objektorienterade programmeringsspråk.

Strukturen för en objektorienterad databas representeras grafiskt som ett träd, vars noder är objekt. Objektegenskaper beskrivs av någon standardtyp (till exempel sträng - sträng) eller en användarkonstruerad typ (definierad som en klass).

Den främsta fördelen med den objektorienterade datamodellen i jämförelse med den relationella är förmågan att visa information om objektens komplexa relationer. Den objektorienterade datamodellen låter dig identifiera en enda databaspost och definiera funktionerna för bearbetning av dem.

Nackdelarna med den objektorienterade modellen är den höga konceptuella komplexiteten, besväret med databehandling och den låga hastigheten för exekvering av frågor.

Moderna DBMS är objektorienterade och relationella. Grundenheten är ett objekt som har egenskaper och länkar mellan objekt. DBMS använder flera datamodeller: hierarkiska och nätverk (sedan 60-talet) och relationella (sedan 70-talet). Den största skillnaden mellan dessa modeller är representationen av relationer mellan objekt. Den hierarkiska datamodellen bygger på principen om objekthierarkin, det vill säga en typ av objekt är den huvudsakliga, alla underliggande är underordnade. En en-till-många-relation upprättas, det vill säga för en mastertyp finns det flera underordnade objekttyper. Annars kallas huvudtypen för överordnad typ, och de underordnade typerna kallas härledda typer. Undertyper kan i sin tur ha undertyper. Den högsta noden i hierarkin (en uppsättning attribut) kallas rotnoden. Nätverksdatamodellen är byggd på principen om "master och slavtyp samtidigt", det vill säga vilken datatyp som helst kan samtidigt generera flera slavtyper (vara ägare till uppsättningen) och vara underordnad flera huvudtyper (vara en medlem av uppsättningen). De relationella datamodellobjekten och länkarna mellan dem presenteras i form av tabeller, medan länkarna också betraktas som objekt. Alla rader som utgör tabellen i
relationsdatabasen måste ha en primärnyckel. Alla moderna DBMS-verktyg stödjer relationsdatamodellen.
Objekt (Entitet) - ett element i vilket system som helst, information om vilken lagras. Ett objekt kan vara både verkligt (till exempel en person) och abstrakt (till exempel en händelse - en persons intagning på ett sjukhus).
Attribut är en informationsvisning av objektegenskaper. Alla
ett objekt kännetecknas av en uppsättning attribut. En tabell är en ordnad struktur som består av en ändlig uppsättning poster av samma typ.
En primärnyckel är ett attribut (eller en grupp av attribut) som tillåter unika
sätt att definiera varje rad i tabellen.

    Enligt graden av fördelning
    Lokal DBMS (alla delar av den lokala DBMS finns på samma dator)
    Distribuerad DBMS (delar av DBMS kan finnas på två eller flera datorer).
    Genom att komma åt databasen
3.1 Filserver

I filserver-DBMS finns datafiler centralt på filservern. DBMS finns på varje klientdator (arbetsstation). DBMS kommer åt data via det lokala nätverket. Synkronisering av läsningar och uppdateringar utförs med hjälp av fillås. Fördelen med denna arkitektur är den låga CPU-belastningen på filservern. Nackdelar: potentiellt hög lokal nätverksbelastning; svårighet eller omöjlighet med centraliserad kontroll; svårigheten eller oförmågan att tillhandahålla så viktiga egenskaper som hög tillförlitlighet, hög tillgänglighet och hög säkerhet. De används oftast i lokala applikationer som använder databashanteringsfunktioner; i system med låg databehandlingsintensitet och låga toppbelastningar på databasen.

För närvarande anses filserverteknik vara föråldrad, och dess användning i stora informationssystem anses vara deras nackdel.

Exempel: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.

3.2 Klient-server

Klient-server DBMS finns på servern tillsammans med databasen och kommer direkt åt databasen, i exklusivt läge. Alla klientförfrågningar för databehandling behandlas centralt av klient-server DBMS. Nackdelen med klient-server DBMS är de ökade kraven på servern. Fördelar: Potentiellt lägre lokal nätverksbelastning; bekvämlighet med centraliserad förvaltning; bekvämligheten med att tillhandahålla viktiga funktioner som hög tillförlitlighet, hög tillgänglighet och hög säkerhet.

Var och en av de element som utgör denna arkitektur spelar en roll: servern äger och hanterar informationsresurserna i systemet, klienten har möjlighet att använda dem. Databasservern är en fleranvändarversion av DBMS som behandlar förfrågningar från alla arbetsstationer parallellt. Dess uppgift är att implementera transaktionsbearbetningslogiken med hjälp av nödvändiga synkroniseringstekniker - stöd för resursblockeringsprotokoll, tillhandahållande, förebyggande och/eller eliminering av dödlägen.

Som svar på en användarförfrågan kommer arbetsstationen inte att få "råmaterial" för vidare bearbetning, utan färdiga resultat. Arbetsstationsmjukvaran med denna arkitektur spelar endast rollen som det externa gränssnittet (Front-end) i det centraliserade datahanteringssystemet. Detta gör att du kan minska nätverkstrafiken avsevärt, minska väntetiden för blockerade dataresurser i fleranvändarläge och avlasta arbetare.
Som regel är klienten och servern geografiskt åtskilda från varandra, i vilket fall de ingår i eller bildar ett distribuerat databehandlingssystem.
För modern DBMS har klient-server-arkitekturen blivit de facto-standarden. Om det antas att informationen som designas kommer att ha en "klient-server"-arkitektur, betyder detta att applikationsprogrammen som implementeras inom dess ram kommer att distribueras, dvs en del av applikationsfunktionerna kommer att implementeras i klientprogrammet, dvs. annat - i serverprogram.
Grundprincipen för "klient-server"-tekniken är att dela upp funktionerna i en interaktiv standardapplikation i fyra grupper:

    datainmatning och visningsfunktioner;
    applikationsfunktioner specifika för ämnesområdet;
    grundläggande funktioner för lagring och hantering av resurser (databaser);
    servicefunktioner.
Exempel: Oracle, Firebird, Interbase, IBM DB2, Informix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Cache, Linter.

3.3 Inbäddad

Embedded DBMS - ett DBMS som kan levereras som en integrerad del av någon mjukvaruprodukt utan att det krävs en självinstallationsprocedur. En inbäddad DBMS är utformad för att lagra dess applikationsdata lokalt och är inte avsedd att delas över ett nätverk. En fysiskt inbäddad DBMS implementeras oftast som ett plugin-bibliotek. Tillgång till data från applikationen kan ske genom SQL eller genom speciella programmeringsgränssnitt.

Exempel: OpenEdge, SQLite, BerkeleyDB, Firebird Embedded, Microsoft SQL Server Compact, Linter.

Utsikter för utveckling av databashanteringssystem: Detta skede kännetecknas av framväxten av en ny dataåtkomstteknologi - intranät. Den största skillnaden mellan detta tillvägagångssätt och klient-server-teknik är att det inte finns något behov av att använda specialiserad klientprogramvara. En vanlig webbläsare, som Microsoft Internet Explorer eller Netscape Navigator, används för att arbeta med fjärrdatabasen, och för slutanvändaren liknar processen att komma åt data som att surfa på World Wide Web (se figur 1.1). Samtidigt spårar koden som är inbäddad i HTML-sidorna som laddas av användaren, vanligen skriven i Java, Java-script, Perl och andra, alla användaråtgärder och översätter dem till lågnivå SQL-frågor till databasen, och utför därmed det arbete som i klient-server-teknik, klientprogrammet är inblandat. Bekvämligheten med detta tillvägagångssätt ledde till att det började användas inte bara för fjärråtkomst till databaser utan också för användare av företagets lokala nätverk.

Krav för modern DBMS:

    den snabba tillväxten av e-handelns värde och volym och trenden att skapa virtuella företag, butiker, kontor, kiosker;
    kommunikationsteknikens roll - e-post, grupparbetsverktyg, telekonferenser, interaktiv kommunikation. Datanätverk, inklusive Internet, växer mycket snabbt, värdet av en sådan kombination växer ännu snabbare;
    behovet av att förvandla "data" till "information". Den korrekta tolkningen av data på nya bekväma sätt, tillsammans med kraftfulla mekanismer för att lagra och manipulera data, gör allt information till en viktig konkurrensfördel;
    Som regel har de flesta organisationer betydande mängder data, och denna data lagras i olika källor i en lång rad heterogena system. Därför är ett obligatoriskt krav för nya system att tillsammans med innovationer integrera hela mängden data från befintliga system på enklaste sätt;
i en mycket konkurrensutsatt miljö har företag utmaningen att "göra mest med minsta ansträngning". Det finns därför ett behov av mjukvaruverktyg som snabbt kan läras in, konfigureras och anpassas till specifika uppgifter för att hänga med i de snabba förändringarna på marknaden.

Modern teknik som används när man arbetar med data:

"Client-server"-teknologi är en teknik som delar upp en DBMS-applikation i två delar: en klient (ett interaktivt grafiskt gränssnitt på användarens dator) och en server,
faktiskt utför datahantering, informationsdelning, administration och säkerhet, placerad på en dedikerad dator. Klient-server-interaktionen utförs enligt följande: klientdelen av applikationen bildar en begäran till databasservern, på vilken alla kommandon exekveras, och resultatet av förfrågningsexekveringen skickas till klienten för visning och användning. Denna teknik tillämpas
etc.................

Databas (DB)är en uppsättning strukturerade data som lagras i minnet av ett datorsystem och som återspeglar objektens tillstånd och deras relationer i det aktuella ämnesområdet.

Den logiska strukturen för data som lagras i databasen kallas datarepresentationsmodellen. De huvudsakliga datapresentationsmodellerna (datamodeller) inkluderar hierarkiska, nätverksmässiga, relationella.

Databashanteringssystem (DBMS) -är en uppsättning språk- och mjukvaruverktyg utformade för att skapa, underhålla och dela en databas med många användare. RDBMS särskiljs vanligtvis av den datamodell som används. Så, DBMS baserat på användningen av relationsdatamodellen kallas för relationell DBMS.

För att arbeta med en databas räcker det ofta med DBMS-verktyg. Men om det krävs för att säkerställa bekvämligheten med att arbeta med databasen för okvalificerade användare eller om DBMS-gränssnittet inte passar användarna, kan applikationer utvecklas. Deras skapelse kräver programmering. En applikation är ett program eller en uppsättning program som automatiserar lösningen av en tillämpad uppgift. Applikationer kan skapas i eller utanför DBMS-miljön - med hjälp av ett programmeringssystem som använder verktyg för databasåtkomst, till exempel Delphi eller C ++ Вuildeg. Applikationer som utvecklats i DBMS-miljön kallas ofta för DBMS-applikationer, medan applikationer som utvecklats utanför DBMS ofta kallas externa applikationer.

Datadictionary är ett databasundersystem designat för centraliserad lagring av information om datastrukturer, relationer mellan databasfiler, datatyper och presentationsformat, dataägande av användare, säkerhets- och åtkomstkontrollkoder, etc.

Informationssystem baserade på användningen av en databas fungerar vanligtvis i en klient-server-arkitektur. I det här fallet finns databasen på serverdatorn och delas.

Server en viss resurs i ett datornätverk kallas en dator (program) som hanterar denna resurs, klient - dator (program) som använder denna resurs. Som datanätverksresurs kan till exempel databaser, filer, utskriftstjänster, posttjänster fungera.

Fördelen med att organisera ett informationssystem på en klient-server-arkitektur är en framgångsrik kombination av centraliserad lagring, underhåll och kollektiv tillgång till gemensam företagsinformation med individuellt användararbete.

Enligt den grundläggande principen för klient-server-arkitekturen bearbetas data endast på servern. Användaren eller applikationen ställer frågor som kommer till databasservern i form av SQL-språkinstruktioner. Databasservern tillhandahåller sökning och extrahering av nödvändig data, som sedan överförs till användarens dator. Fördelen med detta tillvägagångssätt i jämförelse med de tidigare är en märkbart mindre mängd överförd data.

Det finns följande typer av DBMS:

* Fullständig DBMS;

* databasservrar;

* verktyg för att utveckla program för att arbeta med databasen.

Fullständiga DBMS är traditionella DBMS. Dessa inkluderar dBaseIV, Microsoft Access, Microsoft FoxPro och andra.

Databasservrar är utformade för att organisera databehandlingscenter i datornätverk. Databasservrar tillhandahåller bearbetning av förfrågningar från klientprogram, vanligtvis med hjälp av SQL-satser. Exempel på databasservrar är: Microsoft SQL Server, InterBase, etc.

Kasta klientprogram i det allmänna fallet kan DBMS, kalkylblad, ordbehandlare, e-postprogram etc. användas.

Verktyg för att utveckla databasprogram kan användas för att skapa följande program:

* klientprogram;

* databasservrar och deras individuella komponenter;

* anpassade applikationer.

Av användningens natur DBMS är indelade i flera användare (industriell) och lokal (personlig).

Industrial, DBMS är en mjukvarubas för utveckling av automatiserade styrsystem för stora ekonomiska objekt. Industriell DBMS måste uppfylla följande krav:

* Möjligheten att organisera gemensamt parallellt arbete för många användare;

* skalbarhet;

* Portabilitet till olika hårdvaru- och mjukvaruplattformar;

* stabilitet i förhållande till fel av olika slag, inklusive närvaron av ett säkerhetskopieringssystem på flera nivåer för lagrad information;

* Säkerställa säkerheten för lagrad data och ett utvecklat strukturerat system för åtkomst till dem.

Personal DBMS är programvara som är inriktad på att lösa problemen för en lokal användare eller en liten grupp användare och är avsedd att användas på en persondator. Detta förklarar deras andra namn - desktop. De definierande egenskaperna hos skrivbordssystem är:

* Relativ enkel drift, vilket gör att du kan skapa fungerande användarapplikationer utifrån deras bas;

* relativt begränsade krav på hårdvaruresurser.

Enligt den datamodell som används DBMS är indelade i hierarkiska, nätverk, relationella, objektorienterade, etc. Vissa DBMS kan samtidigt stödja flera datamodeller.

Följande typer av språk används för att arbeta med data som lagras i databasen:

* databeskrivningsspråk - ett icke-procedurspråk på hög nivå av deklarativ typ, utformat för att beskriva datas logiska struktur;

* språk för datamanipulation - en uppsättning strukturer som säkerställer implementeringen av grundläggande operationer för att arbeta med data: inmatning, modifiering och urval av data på begäran.

Namngivna språk i olika DBMS kan ha skillnader. De två mest använda standardiserade språken är QBE - Pattern Query Language och SQL - Structured Query Language. QBE har i grunden egenskaperna hos ett datamanipuleringsspråk, SQL kombinerar egenskaperna hos båda typerna av språk.

DBMS implementerar följande grundläggande lågnivåfunktioner:

* datahantering i externt minne;

* RAM-bufferthantering;

* transaktionshantering;

* logga ändringar i databasen;

* Säkerställa databasens integritet och säkerhet.

Implementeringen av datahanteringsfunktionen i externt minne säkerställer organisationen av resurshanteringen i OS-filsystemet.

Behovet av databuffring beror på att mängden RAM är mindre än mängden externt minne. Buffertar är områden med RAM som är utformade för att påskynda utbytet mellan externt och RAM. Buffertar lagrar temporärt databasfragment, från vilka data är tänkt att användas vid åtkomst till DBMS eller planeras att skrivas till databasen efter bearbetning.

Transaktionsmekanismen används i DBMS för att upprätthålla integriteten för data i databasen. En transaktion är en odelbar sekvens av operationer på databasdata, som spåras av DBMS från början till slut. Om transaktionen av någon anledning (fel och fel på utrustning, fel i programvara, inklusive applikationen) förblir ofullständig, avbryts den.

Transaktioner har tre huvudsakliga egenskaper:

* atomicitet (alla operationer som ingår i transaktionen utförs eller ingen);

* Serialiserbarhet (det finns ingen ömsesidig påverkan av transaktioner som utförs samtidigt);

* hållbarhet (även om systemet kraschar leder inte till förlust av resultatet av en genomförd transaktion).

Ett exempel på en transaktion är operationen att överföra pengar från ett konto till ett annat i banksystemet. Först dras pengar från ett konto, sedan krediteras de till ett annat konto. Om åtminstone en av åtgärderna inte slutförs framgångsrikt kommer resultatet av operationen att bli felaktigt och balansen i operationen rubbas.

Ändringsloggning utförs av DBMS för att säkerställa tillförlitligheten för datalagring i databasen i närvaro av hårdvaru- och mjukvarufel.

Att säkerställa databasens integritet är en nödvändig förutsättning för att databasen ska fungera framgångsrikt, särskilt när den används i ett nätverk. Databasens integritet är en egenskap hos databasen, vilket innebär att den innehåller fullständig, konsekvent och adekvat reflekterande ämnesområdesinformation. Integriteten för databasens tillstånd beskrivs med hjälp av integritetsbegränsningar i form av villkor som måste uppfyllas av data som lagras i databasen.

Säkerhet uppnås i DBMS genom datakryptering, lösenordsskydd, stöd för åtkomstnivåer till databasen och dess individuella element (tabeller, formulär, rapporter, etc.).

Har frågor?

Rapportera ett stavfel

Text som ska skickas till våra redaktioner: