Avatar billede websam Nybegynder
02. marts 2006 - 18:07 Der er 5 kommentarer og
1 løsning

XML vs. Database for data opbevaring

Hejsa,

Jeg kunne tænke mig at få lidt input på fordele og ulemper ved opbevaring af data i XML filer istedet for i en database.

Da jeg tit render ind i det ene eller det andet problem med mulige database typer hos forskellige hosts har jeg kraftigt overvejet generelt at benytte mig af XML til opbevaring af data istedet for en given database.

1. Hvad ville der være af sikkerheds mæssige ulemper ?
2. Er performance ringere end ved database kald ?
3. Har jeg samme muligheder for load til arraylist, dataset, ect.

Har du kommentare, ideer og tanker på dette punkt er du mere end velkommen til at komme med dit besyv.

/Websam
Avatar billede arne_v Ekspert
02. marts 2006 - 19:08 #1
re 1)

paa er web hotel har du sikkert kun et database brugernavn saa sikkerhed maa vaere det samme

re 2)

laese alle data : nej
udvaelge data : ja
opdatere data : ja

re 3)

stort set

4. Er der problemer som jeg skal vaere opmaerksom paa ?

re 4)

ja - flere brugere som opdaterer samtidigt skal du selv styre med XML
Avatar billede arne_v Ekspert
02. marts 2006 - 19:09 #2
hvis man designer sin applikation fra start af til at vaere database uafhaengig, saa
kan man godt

alle interfacene i System.Data namespacene er der for en grund
Avatar billede websam Nybegynder
02. marts 2006 - 19:55 #3
re 1)

ja, men tit er der slet ikke mulighed for f.eks mssql og så skal jeg benytte access som så ligges uden for www roden for ikke at folk skal kunne hente den. Det samme kunne jo være tilfældet med eventuelle xml filer, så kan folk udefra ikke få fat i dem. Kun personalet ved hosten, men de har jo oxo adgang til en mssql database.

re 2)

Min typiske fremgangs metode i forbindelse med en database er jo at trække en hel tabel ud i en arryliste, cache den og så plukkedata derfra så der kan forskellen på hastigheden ikke være anderledes, kan den ?

Har du nogen idé om hvor stor forskellen er ved opdatering af en xml fil vs. en tabel i en database ?

re 4)

Og hvordan skal jeg forstå dette ?
At folk skal sættes i kø ved opdateringer ?
Eller at jeg evt. skal lave noget threading i denne forbindelse ?

Har du under evt. nogle links til artikler der beskriver hvordan jeg opretter et xml dokument ved hjælp af kode, henter data, insætter data, opdatere data og sletter data i et xml dokument ?

Jeg ved godt at de kode eksempel fra et par mdr. siden indeholder en smule xml bbehandling, men det er jo ikke så beskrivende ;o)

/Websam
Avatar billede arne_v Ekspert
02. marts 2006 - 20:04 #4
er der web hoteller som kun har Access ?
jeg troede at naesten alle havde SQLServer eller MySQL !

re 2)

nej

afhaenger af XML filens stoerrelse - husk at man ikke kan rette midt i en tekst fil,
men er noedt til at genskrive alt, saa tilfoejer du et bogstav i linie 5 i en XML fil
paa 100 MB saa skal du skrive alle 100 MB

re 4)

et eller andet som forhindrer:

bruger A reader hele XML filen
bruger B reader hele XML filen
bruger A retter record 1
bruger B retter record 2
bruger A skriver hele XML filen
bruger B skriver hele XML filen
bruger A graeder

XML er klart bedst til readonly data

jeg tror ikke at mit lille 3 layer eksempel med en DAL implementation i XML
ghavde nogen fornuftig haandtering af dette
Avatar billede websam Nybegynder
02. marts 2006 - 20:12 #5
Ja jeg er rendt i web hoteller der ikke tilbyder denne mulighed, hvor utroligtdet end lydder :oO

Jeg kan så godt se at hvis den skal genskabe et helt xml document hver gang der skal opdateres at det alt andet en lige må være langsomere end en database.

Set i lyset af dette må jeg nok beholde mssql som primær data source og så vælge at flytte evt. kunder til et hotel der har mssql installeret.

Men takker for oplysningerne, smid et svar ;o)

/Websam
Avatar billede arne_v Ekspert
02. marts 2006 - 20:16 #6
dem der vaelger at gaa XML vejen goer ofte det at de ikke har en XML fil men
mange XML filer - for at undgaa at skulle genskrive det hele - men det giver
naturligvis ogsaa en del administration

til data som skal opdateres valeger de fleste en database

og et svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester