Är hårdvaru raid på väg att dö ut?

Permalänk
Rekordmedlem
Skrivet av Arctunix:

Det är egentligen irrelevant om 2.4 GHz CPU:n är snabbare än 0.8 GHz CPU:n på RAID-kortet när den senare är tillräckligt snabb (i.e. maxar ut kortets specifikationer).

Jag kan bara tala från min egen erfarenhet och det är att mjukvaru-RAID duger alldeles utmärkt för RAID0 och RAID1 (eller kombinationer av bägge), och för icke-prestanda kritisk långtidslagring. Men jämfört med mid-end modeller som Dell PERC H700 och med RAID-6 så har mjukvaru-RAID hittils alltid dragit det kortaste strået.

Detsamma gäller även för virtualisering där den typiska "sanningen" verkar vara försumbar prestandaförsämring medan mina egna mätningar [för en viss produkt] snarare pekar på en 40%-ig smäll.

Raid 0 och 1 och kombinationer av det innebär inga paritetsberäkningar, så det lär inte belasta särskilt mycket, det är i princip bara en parallelkoppling av diskar och att buffra datat och lägga ut det i rätt ordning.
Vid virtualisering blir det inte så att varje virtuell maskin håller på med diskhanteringen? Det måste vara effektivare att bara ha en maskin som håller på med det eftersom en virtuell maskin inte vet vad de andra gör, så ett san/nas blir väl effektivare om man virtualliserar? Dessutom borde väl minnesbuffrar och cache bli effektivare om bara har en maskin som hanterar diskaktiviteten? Och sekundärt kanske det även påverkar möjligheten att använda ncq o dyl effektivare?

Visa signatur

R5 5600G, Asus ROG STRIX X470-F Gaming, WD SN850X 2TB, Seasonic Focus+ Gold 650W, Aerocool Graphite v3, Tittar på en Acer ET430Kbmiippx 43" 4K. Lyssnar på Behringer DCX2496, Truth B3031A, Truth B2092A. Har också oscilloskop, mätmikrofon och colorimeter.

Permalänk
Medlem
Skrivet av mrqaffe:

Raid 0 och 1 och kombinationer av det innebär inga paritetsberäkningar, så det lär inte belasta särskilt mycket, det är i princip bara en parallelkoppling av diskar och att buffra datat och lägga ut det i rätt ordning.

Precis! Därav min poäng att dessa nivåer lämpar sig ypperligt för mjukvaru-RAID.

Skrivet av mrqaffe:

Vid virtualisering blir det inte så att varje virtuell maskin håller på med diskhanteringen? Det måste vara effektivare att bara ha en maskin som håller på med det eftersom en virtuell maskin inte vet vad de andra gör, så ett san/nas blir väl effektivare om man virtualliserar? Dessutom borde väl minnesbuffrar och cache bli effektivare om bara har en maskin som hanterar diskaktiviteten? Och sekundärt kanske det även påverkar möjligheten att använda ncq o dyl effektivare?

Jag borde ha varit tydligare med att förklara att test scenariot bara handlar om att ha en enda VM per fysisk maskin. NCQ bör man alltid stänga av för latency-känsliga applikationer.

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Avstängd
Skrivet av Arctunix:

Varför skulle jag ha köpt denna snabba CPU överhuvudtaget när den är 10x dyrare än en långsammare CPU + ett diskret grafikkort som fungerar lika bra?

Jag vet vad du försöker komma fram till, men grafikkortsanalogin fungerar inte i dagsläget eftersom grundpremissen "samma prestanda för samma pris" inte gäller.

Jag vet inte om du förstår mig. De flesta som köper en cpu idag, köper en 2.4GHz dual core - eller nåt sånt. På en single core når du 8GB/sec parity RAID6 beräkningar:
"For a concrete example, Linux 2.6.32 on a Phenom II X4 945 3.0GHz computes RAID6 parity at close to 8 GB/s on a single core...So achieving a throughput of 500 MB/s on a Linux MD raid6 array requires spending less than 1.5% CPU time computing parity."

Så poängen är att den "snabba cpun som kostar 10x mer" är egentligen en helt vanlig duo core eller quad core. Så du behöver inte dessutom betala ytterligare ett kraftigt överpris för en extra cpu. En cpu är ju ändå något som alla redan har, och inget du betalar extra för. Så om du redan har all hårdvara som behövs, varför ska man då köpa extra hårdvarukort när cpun redan klarar av allt det där, och ger ungefär likadan prestanda? Jag har redan allt som behövs för att köra mjukvaruraid, hur motiverar man att lägga ut ännu mer pengar på att dessutom köpa ett hw-raid kort med 0.8GHz cpu?

Citat:

mdraid, ZFS och det inbyggda RAID-5 i server-versionerna av Windows.

Jag kommer inte ihåg några exakta tal, men typ runt 10 - 20% throughput och ojämnare latency med mjukvaru-RAID.

ZFS är av naturliga skäl ännu värre eftersom den mer eller mindre flaskar CPU-mässigt (jag är medveten om att ZFS har andra fördelar).

Ok, så det var typ 10-20% bättre prestanda med hw-raid. Det låter inte så farligt i mina öron. Men folk har ju andra krav än mig och de kanske tycker det är för dålig prestanda.

Angående att ZFS flaskar cpu mässigt, hur menar du då? Kan du förklara lite mer? ZFS gör omfattande checksummeberäkningar (det inkluderar antagligen även paritetsberäkningar) men de tar väl inte så farligt mycket extra kräm?

Permalänk
Medlem
Skrivet av saddam:

Jag vet inte om du förstår mig. De flesta som köper en cpu idag, köper en 2.4GHz dual core - eller nåt sånt. På en single core når du 8GB/sec parity RAID6 beräkningar:
"For a concrete example, Linux 2.6.32 on a Phenom II X4 945 3.0GHz computes RAID6 parity at close to 8 GB/s on a single core...So achieving a throughput of 500 MB/s on a Linux MD raid6 array requires spending less than 1.5% CPU time computing parity."

Så poängen är att den "snabba cpun som kostar 10x mer" är egentligen en helt vanlig duo core eller quad core. Så du behöver inte dessutom betala ytterligare ett kraftigt överpris för en extra cpu. En cpu är ju ändå något som alla redan har, och inget du betalar extra för. Så om du redan har all hårdvara som behövs, varför ska man då köpa extra hårdvarukort när cpun redan klarar av allt det där, och ger ungefär likadan prestanda? Jag har redan allt som behövs för att köra mjukvaruraid, hur motiverar man att lägga ut ännu mer pengar på att dessutom köpa ett hw-raid kort med 0.8GHz cpu?

Det är helt upp till dig om du finner att mjukvaru-RAID duger för dina ändamål. Jag är inte anställd som försäljare hos Adaptec och försöker därför inte heller få dig att byta. Jag vet bara att vi får bättre prestanda-siffror med hårdvaru-RAID än mjukvaru-RAID. Huruvida det är andra faktorer som påverkar spelar i slutändan ingen roll.

Skrivet av saddam:

Ok, så det var typ 10-20% bättre prestanda med hw-raid. Det låter inte så farligt i mina öron. Men folk har ju andra krav än mig och de kanske tycker det är för dålig prestanda.

Japp. Disk mönstret jag har är egentligen bland dem mest elaka som finns. Jag blandar sekventiella läsningar och skrivningar med en stor mängd slumpmässiga läsningar. Både throughput och latency spelar roll för mina ändamål även om den sistnämnda påverkar mest ("spikarna" är egentligen den främsta orsaken till varför mjukvaru-RAID visar sig passa sämre för mig).

Skrivet av saddam:

Angående att ZFS flaskar cpu mässigt, hur menar du då? Kan du förklara lite mer? ZFS gör omfattande checksummeberäkningar (det inkluderar antagligen även paritetsberäkningar) men de tar väl inte så farligt mycket extra kräm?

Tja... ZFS gör kanske annat också. På min hemma-server så tar det i alla fall c:a 1 kärna att nå ~150 MB/s med raidz2 (10 diskar).

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Medlem

Ja men ojdå
Här var det mycket sagt.

Om vi börjar men grundfrågan: Kommer HW raid att dö ut?
Nej. En riktig HW controller har fortfarande massiva övertag när det gäller säkerhet och skrivprestanda i verkliga miljöer.

Sätter du upp en raid5 mjukvarumässigt så har du två val. Antingen sätta writecache till noll eller riskera att hela raiden blir skrot vid hängning eller power Failure. Då man på företagssidan inte kan tänka sig att ta den risken så vet jag faktiskt ingen "seriös" kontroller som tillåter writecache utan batteribackup på kortet.

Vi gjorde lite utvärderingar på att köra med och utan cache på en hyffsat stressad filserver och det skiljde nära 50% i write performance. Sen beror det väldigt mycket på hur I/O mönstret ser ut. En läsintensiv applikation som tex Google klarar sig garanterat bättre utan writecache då jag skulle tippa att deras IO är 95%+ read.

Sen var det någon som nämde SAN/NFS också. Ett riktigt SAN är snabbt men glöm inte att räkna på hur många system som ska dela på den I/O som SAN:et kan ge. Samma sak för NFS. Har man tex bara ett Gbit interface på NFS servern så blir det ju storstryk av ett par vanlga Sata diskar tom. Med 10Gbit ser det bättre ut men alldelles för många överlastar bussen på sina san likt förbaskat

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Medlem

notera att det lär börja dyka upp "kontrollerkort" med mjukvaru raid inom en kort framtid så HW raid kommer troligen att försvinna eller "gå upp i" mer smarta kontrollerkort och chip!

Notera att man ofta väljer att köra ZFS med Checksum på SSD och med Logg på SSD när man kan för att få mer hastighet på den. Detta innebär att man underlättar då flaskhalsen sällan är raiden i sig (om du inte har extremt intensiv I/O system) utan diskarna. Med cache av checksum på ssd innan SATA så får du ett extremt snabbt system.

Denna Guide är ett bra exempel även om han har lite mer pengar än vad gemena man har:
http://www.natecarlson.com/2010/05/07/review-supermicros-sc84...

Där är alltså en software raid endast på hans system han kör bara kontrollerkort för att kunna jacka in fler diskar. Om du kör de där backplanen kan du smacka in 128 stycken tror jag. Det vill säga du kan seriekoppla 1 sådana som han visar samt en annan chassityp där du bara har ström samt en repeater för kontrollerkorten. Kör ZFS ovanpå med SSD för performance och du knäcker vilken HW raid inom samma prestanda med hästlängder vad det gäller pris per GB.

Visa signatur

One shall not shout when there is a forum!

Permalänk
Medlem

Pratar ni hem eller enterprise-miljö?

Permalänk
Medlem
Skrivet av Fnorken:

Pratar ni hem eller enterprise-miljö?

Både och gissar jag?

Visa signatur

One shall not shout when there is a forum!

Permalänk
Avstängd
Skrivet av Arctunix:

Japp. Disk mönstret jag har är egentligen bland dem mest elaka som finns. Jag blandar sekventiella läsningar och skrivningar med en stor mängd slumpmässiga läsningar. Både throughput och latency spelar roll för mina ändamål även om den sistnämnda påverkar mest ("spikarna" är egentligen den främsta orsaken till varför mjukvaru-RAID visar sig passa sämre för mig).
...
Tja... ZFS gör kanske annat också. På min hemma-server så tar det i alla fall c:a 1 kärna att nå ~150 MB/s med raidz2 (10 diskar).

Det kan även bero på din ZFS konfig. Om ditt ZFS raid består av en enda raidz2 - så kommer du få samma IOPS som om du har en enda disk, mao ganska låg. Alla diskar måste röra på huvudet identiskt, för att du ska hinna läsa på ett nytt ställe på raidet. Huvudena rör sig inte oberoende, de rör sig exakt likadant. Typ.

ZFS raid ger hög prestanda när det gäller sekvensiell läsning, några GB/sec är vanligt. Men, samma config kan ge dåliga IOPS, typ, latency.

Så om du behöver höga IOPS så bör du ha en annan konfig. Om ditt ZFS raid består av flera vdevs (dvs grupper av diskar), t.ex om du har flera raidz2 i ditt ZFS raid, så kommer du få högre IOPS. Varje raidz2 kan röra sig oberoende av andra raidz2 och hämta data oberoende av andra raidz2 grupper. Om du har en enda raidz2, säg med 20 diskar, så blir det katastrofalt långsamt och stora raidz2 bör undvikas å det bestämdaste.

Rekommendationen är att om man behöver mycket IOPS, så bygger man upp sitt ZFS raid utav massa mirrors. Då kommer varje mirror röra sig oberoende av andra och då får man höga IOPS.

Eller, så lägger man på några SSD som L2ARC och ZIL cache, så kan det gå 10x snabbare om man har rätt typ av arbetsbelastning.

Så om du upplever lägre prestanda, så kan det ha att göra med din ZFS konfig, kanske? T.ex. skulle nån skapa ett raidz2 med 20 diskar så kommer han uppleva katastrofalt låga prestanda.

Permalänk
Avstängd
Skrivet av spixx^orginalet:

notera att det lär börja dyka upp "kontrollerkort" med mjukvaru raid inom en kort framtid så HW raid kommer troligen att försvinna eller "gå upp i" mer smarta kontrollerkort och chip!

Menar du typ att man kommer att köra ZFS på ett kontrollerkort? Typ? Jag föredrar att datorns CPU kör ZFS, framför att ett kort gör det. Jag har hört att dyra hw-raid kort är dyra, därför att de praktiken innehåller en liten dator. Förr i tiden när datorer hade låga prestanda, så behövdes det specialdesignad hårdvara. Men idag är cpuerna väldigt snabba, och kan mer eller mindre, ta över ett hw-raid korts arbetsuppgifter.

Skrivet av mats42:

Om vi börjar men grundfrågan: Kommer HW raid att dö ut?
Nej. En riktig HW controller har fortfarande massiva övertag när det gäller säkerhet och skrivprestanda i verkliga miljöer.

Vi gjorde lite utvärderingar på att köra med och utan cache på en hyffsat stressad filserver och det skiljde nära 50% i write performance. Sen beror det väldigt mycket på hur I/O mönstret ser ut. En läsintensiv applikation som tex Google klarar sig garanterat bättre utan writecache då jag skulle tippa att deras IO är 95%+ read.

Hur menar du att hw kort har massiva övertag när det gäller säkerhet?

När ni utvärderade, testade ni en ZFS server med SSD som cache? Såna kan ju ge helt sjuka prestanda om man har rätt typ av arbetsbelastning.

Permalänk
Medlem
Skrivet av saddam:

Det kan även bero på din ZFS konfig. Om ditt ZFS raid består av en enda raidz2 - så kommer du få samma IOPS som om du har en enda disk, mao ganska låg. Alla diskar måste röra på huvudet identiskt, för att du ska hinna läsa på ett nytt ställe på raidet. Huvudena rör sig inte oberoende, de rör sig exakt likadant. Typ.

ZFS raid ger hög prestanda när det gäller sekvensiell läsning, några GB/sec är vanligt. Men, samma config kan ge dåliga IOPS, typ, latency.

Så om du behöver höga IOPS så bör du ha en annan konfig. Om ditt ZFS raid består av flera vdevs (dvs grupper av diskar), t.ex om du har flera raidz2 i ditt ZFS raid, så kommer du få högre IOPS. Varje raidz2 kan röra sig oberoende av andra raidz2 och hämta data oberoende av andra raidz2 grupper. Om du har en enda raidz2, säg med 20 diskar, så blir det katastrofalt långsamt och stora raidz2 bör undvikas å det bestämdaste.

Rekommendationen är att om man behöver mycket IOPS, så bygger man upp sitt ZFS raid utav massa mirrors. Då kommer varje mirror röra sig oberoende av andra och då får man höga IOPS.

Eller, så lägger man på några SSD som L2ARC och ZIL cache, så kan det gå 10x snabbare om man har rätt typ av arbetsbelastning.

Så om du upplever lägre prestanda, så kan det ha att göra med din ZFS konfig, kanske? T.ex. skulle nån skapa ett raidz2 med 20 diskar så kommer han uppleva katastrofalt låga prestanda.

Om du läser min post nogrannt så ser du att det jag beskrev var två helt olika scenarion. Jag är högst medveten om att ZFS stryper antalet IOPS med raidz och det är därför inget alternativ för första fallet. SSD till L2ARC eller ZIL kommer inte att ha någon effekt här.

Det jag använder ZFS till är för långtidslagring på mitt hemma-server och där flaskar den CPU-mässigt vid runt 150 mb/s per kärna för sekventiella skrivningar (mätt med bonnie++, komprimering och dedup är avslaget och hash-algoritmen är fletcher4). Jag har inga problem med denna gräns eftersom den stora flaskhalsen ändå ligger på nätverket, men det kan bara vara värt att notera att mjukvaru-baserade lösningar inte är så "gratis" prestandamässigt som man tror (dock så är de mycket snällare för plånboken, speciellt när det gäller hemmabyggen ).

ps. Sedan får man inte glömma att normal-bra RAID-kort inte är så extremt mycket dyrare än att fylla servern med icke-RAID kort med samma antal portar.

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Medlem
Skrivet av saddam:

Menar du typ att man kommer att köra ZFS på ett kontrollerkort? Typ? Jag föredrar att datorns CPU kör ZFS, framför att ett kort gör det. Jag har hört att dyra hw-raid kort är dyra, därför att de praktiken innehåller en liten dator. Förr i tiden när datorer hade låga prestanda, så behövdes det specialdesignad hårdvara. Men idag är cpuerna väldigt snabba, och kan mer eller mindre, ta över ett hw-raid korts arbetsuppgifter.

Hur menar du att hw kort har massiva övertag när det gäller säkerhet?

När ni utvärderade, testade ni en ZFS server med SSD som cache? Såna kan ju ge helt sjuka prestanda om man har rätt typ av arbetsbelastning.

Ett HW kort är i princip en egen dator ja. De har egen CPU och minne samt I/O bussar. Man använder faktist ibland generella processorer även på raidkort men det är fortfarande en enorm skillnad på ett riktigt kort och att köra via CPU.

En vanlig dator hänger sig någon gång oavsett OS. Har du då en writecache i minnet så är det datat borta och ditt filsystem är korrupt. Dags att hämta senaste backup samt att du förlorar det som är gjort från det tillfället och framåt. EN HW controller skyddar sin cache med eget batteri så det händer inte. Finns det ström till burken så kommer den dessutom att skriva ned datat oavsett hur datorns operativsystem mår. Sitter du då med data som är värt några miljoner så är det ett rätt avgörande argument

Nästa problem är att du måste använda huvudCPU, minnes och databussarna för att göra Raidjobbet. Även om CPU är snabb så har inte I/O bussarna utvecklats i samma takt så du kommer att lägga en hel del last på ditt systems I/O bussar för att hantera Raidfunktionerna. Det leder antingen till att du får köpa en dyrare maskin med bättre I/O bussar för att burken inte ska bli seg eller så får du skaffa fler burkar. I det läget blir tom en HW controller billigare.

Sen att köra en enda disk som cache är inte heller det bra. Den I/O kanalen kommer att bli överlastad ganska fort. Även om vi utgår från att vi skriver 3GB/sekund till en SSD så är inte det så mycket om vi pratar riktiga Raidsystem. Det krävs inte mer än 20-30 disk i raidsystemet innan det blir ett problem.

Ytterligare en fördel för en HW controller är att de är anpassade för att jobba ihop med diskar och bakplan i den servern. Iom det kan HW controllern styra diskarna och på så sätt få fram lite mer I/O också.

ZFS testade vi inte men det spelar egentligen ingen roll då samtliga faktorer jag nämner sitter i hårdvara och inte i mjukvarulagret

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Avstängd

Jo, jag har sett att flera hw-raid kort använder 800MHz PowerPC cpu. Jag undrar hur många ggr snabbare en Quad Core i7 är?

När du påstår att hw-raid är säkrare, så finns det mycket som talar för att ZFS är rejält mycket säkrare än hw-raid. Vad tror du om det?

Permalänk
Medlem
Skrivet av saddam:

Jo, jag har sett att flera hw-raid kort använder 800MHz PowerPC cpu. Jag undrar hur många ggr snabbare en Quad Core i7 är?

PowerPC CPU:n som används för RAID-kort har extra logik för RAID-5/RAID-6 beräkningar.

Se t.ex. http://www.design-reuse.com/articles/15952/raid6-accelerator-...

Om jag förstår det rätt så finns hårdvaru-RAID:ens extra logik som en del av minnesbussen och kan därför betraktas som "gratis".

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Medlem
Skrivet av saddam:

Jo, jag har sett att flera hw-raid kort använder 800MHz PowerPC cpu. Jag undrar hur många ggr snabbare en Quad Core i7 är?

När du påstår att hw-raid är säkrare, så finns det mycket som talar för att ZFS är rejält mycket säkrare än hw-raid. Vad tror du om det?

Nä, det finns ingenting som visar att ett filsystem är säkrare än hårdvara byggd för stabilitet. Som jag skrev ovan så räcker det med en hängning plus Writecache i ram så är det kört. Det kan inget filsystem alls skydda sig emot utan extrema prestandaförluster (Dvs stäng av writecache).

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Medlem

Nope, att köra Windowskärror är fortfarande relevant, så hårdvaru-raid kommer nog vara kvar ett bra tag till.

Permalänk
Medlem

Tror jag har varit med om krasher på det flesta OS.

Windows på rätt HW (Dvs en riktig server med bra drivers) är väl i klass med Linux. Magkänslan säger att de båda har ett steg kvar till Solaris/Sparc dock men då var vi återigen inne på dedikerad HW för jobbet

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Avstängd
Skrivet av Arctunix:

PowerPC CPU:n som används för RAID-kort har extra logik för RAID-5/RAID-6 beräkningar.
Se t.ex. http://www.design-reuse.com/articles/15952/raid6-accelerator-...

Om vi ska lita på din länk, så är en Quad Core kanske 30ggr snabbare
Din länk säger att en 800 MHz PowerPC ger 1600 Dhrystone Mips. En Core i7 Extreme Edition är ca 100x snabbare.
http://en.wikipedia.org/wiki/Instructions_per_second
Men alla cpuer är inte så snabba. Antag att en Quad core ger 50.000 mips, då är den typ 30x snabbare. Med andra ord: en PowerPC uppnår 3% av hastigheten som en Quad Core ger.

Det verkar som att parityberäkningar är ganska billigt att göra, om en så klen PowerPC cpu ger lika höga överföringshastigheter som en 30 ggr snabbare Quad Core som kör ZFS.

Omvänt, om ZFS gör så mycket felkorrigering och checksumme beräkningar att en 3% PowerPC är lika snabb, hur grundliga och säkra är då parity beräkningar? Inte vidare? Jag tycker det är betryggande att ZFS är så grundlig att den kollar alla data riktigt ordentligt. Jag kör hellre långsamt och säkert, än snabbt och osäkert. Det låter lite oroväckande att hw-raid är så ytliga att de inte kollar någonting, allt för att vara snabba.

Det låter lite som Linux utvecklare, som fuskar i koden för att vinna benchmarks. Linux hackern Ted Tso (skaparen av ext4) förklarar:
http://phoronix.com/forums/showthread.php?36507-Large-HDD-SSD...

"(It's a sad fact that sometimes the desire to win benchmark competition will cause developers to cheat, sometimes at the expense of their users.)
In the case of ext3, it's actually an interesting story. Both Red Hat and SuSE turn on barriers by default in their Enterprise kernels. SuSE, to its credit, did this earlier than Red Hat. We tried to get the default changed in ext3, but it was overruled by Andrew Morton, on the grounds that it would represent a big performance loss, and he didn't think the corruption happened all that often --- despite the fact that Chris Mason had developed a python program that would reliably corrupt an ext3 file system if you ran it and then pulled the power plug"

Detta är ju oroväckande. Linux utvecklare tummar på säkerheten bara för att vinna benchmarks. Är det verkligen så viktigt att vara snabb? Bättre snabb och få felaktiga data, än lite långsammare och säker? Eller?

Om man får välja mellan en dator som är jättesnabb (men för att uppnå snabbheten så skippar den var femte beräkning) så du får felaktiga utdata - eller en långsammare dator som gör allting rätt - vad väljer man då? Ja, Linux utvecklare skulle nog välja den första bara för att vara snabbare, misstänker jag.

Ett annat av skälen att ZFS är långsammare, är att det pga sin konstruktion är immunt mot write-hole error som hw-raid lider av: om du drar strömmen mitt under en skrivning, så kan loggen och datat hamna ur synk och du kan förlora hela din raid. Precis det som "mats42" pratar om:

"Som jag skrev ovan så räcker det med en hängning plus Writecache i ram så är det kört. Det kan inget filsystem alls skydda sig emot utan extrema prestandaförluster (Dvs stäng av writecache)."

Men detta problem påverkar inte ZFS alls.

Skulle det verkligen skita sig med en ZFS raid och du förlorar hela ZFS raidet, så kan du alltid backa i tiden till ett tillfälle då allting funkade. I ZFS: om du ändrar på data, så sparas endast ändringarna, så originalet rörs inte. Ändringarna sparas på ett annat ställe på disken, originalet skrivs aldrig över. Så antag att något skiter hela ZFS raidet, då backar du bara tillbaka till originalet och raderar ändringarna. Då förlorar du senaste ändringarna iofs, som kan sträcka sig ända upp till 30sekunder. Det är ett litet problem dock, tycker jag.

Skrivet av mats42:

Nä, det finns ingenting som visar att ett filsystem är säkrare än hårdvara byggd för stabilitet. Som jag skrev ovan så räcker det med en hängning plus Writecache i ram så är det kört. Det kan inget filsystem alls skydda sig emot utan extrema prestandaförluster (Dvs stäng av writecache).

Men vad är hårdvara byggd för stabilitet? Pratar du om hårdvara för miljontals kronor? Eller pratar du om vanliga hw-raid? Om du pratar om vanlig hw-raid, så är de inte så säkra som du tror. Här finns några problem med hw-raid
http://en.wikipedia.org/wiki/RAID#Problems_with_RAID

Sen finns det massor av forskning som visar hur osäkert hw-raid är. Här finns en bunt forskningsartiklar av team med professorer och forskare i datavetenskap:
http://en.wikipedia.org/wiki/ZFS#Data_Integrity

För övrigt så är ZFS immunt mot write-hole error som du pratar om:
http://blogs.oracle.com/bonwick/entry/raid_z
http://blogs.oracle.com/bonwick/entry/zfs_end_to_end_data

Skrivet av Neco:

Nope, att köra Windowskärror är fortfarande relevant, så hårdvaru-raid kommer nog vara kvar ett bra tag till.

Bra poäng där. Eftersom det inte finns ZFS eller BTRFS till Windows, så tvingas de köra hw-raid.

Permalänk
Medlem
Skrivet av saddam:

Om vi ska lita på din länk, så är en Quad Core kanske 30ggr snabbare
Din länk säger att en 800 MHz PowerPC ger 1600 Dhrystone Mips. En Core i7 Extreme Edition är ca 100x snabbare.
http://en.wikipedia.org/wiki/Instructions_per_second
Men alla cpuer är inte så snabba. Antag att en Quad core ger 50.000 mips, då är den typ 30x snabbare. Med andra ord: en PowerPC uppnår 3% av hastigheten som en Quad Core ger.

Läste du ens länken?

PowerPC CPU:n som finns i RAID-kort använder inte ALU:n för paritetsberäkningarna.

Om jag förstår det rätt så är denna logik inbakad som en del av PLB och når således upp till 12,8 GB/s vilket är snabbare än Core i7 930 som når 11 GB/s enligt denna länk: http://openbenchmarking.org/system/1103093-IV-XTENDXTON02/xte...

Behöver man ens nämna att den gör allt detta för 6W medan Core i7 930 har en TDP på 130W?

Skrivet av saddam:

Då förlorar du senaste ändringarna iofs, som kan sträcka sig ända upp till 30sekunder. Det är ett litet problem dock, tycker jag.

Ajdå! Verkar som man i så fall inte kan använda ZFS för ACID-databaser överhuvudtaget (i.e. du tappar D-et).

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Medlem
Skrivet av saddam:

Om vi ska lita på din länk, så är en Quad Core kanske 30ggr snabbare
Din länk säger att en 800 MHz PowerPC ger 1600 Dhrystone Mips. En Core i7 Extreme Edition är ca 100x snabbare.
http://en.wikipedia.org/wiki/Instructions_per_second
Men alla cpuer är inte så snabba. Antag att en Quad core ger 50.000 mips, då är den typ 30x snabbare. Med andra ord: en PowerPC uppnår 3% av hastigheten som en Quad Core ger.

Det verkar som att parityberäkningar är ganska billigt att göra, om en så klen PowerPC cpu ger lika höga överföringshastigheter som en 30 ggr snabbare Quad Core som kör ZFS.

Omvänt, om ZFS gör så mycket felkorrigering och checksumme beräkningar att en 3% PowerPC är lika snabb, hur grundliga och säkra är då parity beräkningar? Inte vidare? Jag tycker det är betryggande att ZFS är så grundlig att den kollar alla data riktigt ordentligt. Jag kör hellre långsamt och säkert, än snabbt och osäkert. Det låter lite oroväckande att hw-raid är så ytliga att de inte kollar någonting, allt för att vara snabba.

Det låter lite som Linux utvecklare, som fuskar i koden för att vinna benchmarks. Linux hackern Ted Tso (skaparen av ext4) förklarar:
http://phoronix.com/forums/showthread.php?36507-Large-HDD-SSD...

"(It's a sad fact that sometimes the desire to win benchmark competition will cause developers to cheat, sometimes at the expense of their users.)
In the case of ext3, it's actually an interesting story. Both Red Hat and SuSE turn on barriers by default in their Enterprise kernels. SuSE, to its credit, did this earlier than Red Hat. We tried to get the default changed in ext3, but it was overruled by Andrew Morton, on the grounds that it would represent a big performance loss, and he didn't think the corruption happened all that often --- despite the fact that Chris Mason had developed a python program that would reliably corrupt an ext3 file system if you ran it and then pulled the power plug"

Detta är ju oroväckande. Linux utvecklare tummar på säkerheten bara för att vinna benchmarks. Är det verkligen så viktigt att vara snabb? Bättre snabb och få felaktiga data, än lite långsammare och säker? Eller?

Om man får välja mellan en dator som är jättesnabb (men för att uppnå snabbheten så skippar den var femte beräkning) så du får felaktiga utdata - eller en långsammare dator som gör allting rätt - vad väljer man då? Ja, Linux utvecklare skulle nog välja den första bara för att vara snabbare, misstänker jag.

Ett annat av skälen att ZFS är långsammare, är att det pga sin konstruktion är immunt mot write-hole error som hw-raid lider av: om du drar strömmen mitt under en skrivning, så kan loggen och datat hamna ur synk och du kan förlora hela din raid. Precis det som "mats42" pratar om:

"Som jag skrev ovan så räcker det med en hängning plus Writecache i ram så är det kört. Det kan inget filsystem alls skydda sig emot utan extrema prestandaförluster (Dvs stäng av writecache)."

Men detta problem påverkar inte ZFS alls.

Skulle det verkligen skita sig med en ZFS raid och du förlorar hela ZFS raidet, så kan du alltid backa i tiden till ett tillfälle då allting funkade. I ZFS: om du ändrar på data, så sparas endast ändringarna, så originalet rörs inte. Ändringarna sparas på ett annat ställe på disken, originalet skrivs aldrig över. Så antag att något skiter hela ZFS raidet, då backar du bara tillbaka till originalet och raderar ändringarna. Då förlorar du senaste ändringarna iofs, som kan sträcka sig ända upp till 30sekunder. Det är ett litet problem dock, tycker jag.

Men vad är hårdvara byggd för stabilitet? Pratar du om hårdvara för miljontals kronor? Eller pratar du om vanliga hw-raid? Om du pratar om vanlig hw-raid, så är de inte så säkra som du tror. Här finns några problem med hw-raid
http://en.wikipedia.org/wiki/RAID#Problems_with_RAID

Sen finns det massor av forskning som visar hur osäkert hw-raid är. Här finns en bunt forskningsartiklar av team med professorer och forskare i datavetenskap:
http://en.wikipedia.org/wiki/ZFS#Data_Integrity

För övrigt så är ZFS immunt mot write-hole error som du pratar om:
http://blogs.oracle.com/bonwick/entry/raid_z
http://blogs.oracle.com/bonwick/entry/zfs_end_to_end_data

Bra poäng där. Eftersom det inte finns ZFS eller BTRFS till Windows, så tvingas de köra hw-raid.

För det första kan du inte jämföra två olika typer av HW på det sätt du gör. Det är en ruggig skillnad på specialiserad HW som gör sitt jobb och en generell processor som egentligen inte är riktigt bra på nått.

Titta tex på vad en gammal stordator från 90 talet har för mipstal och betänk sen att de funkade fint som databasservrar för 10000 plus användare. Prova sen att köra det på en quadCore med en singeldisk.

Du verkar ju utgå från att CPU och Minne också har tid att offra på att ta hand om diskI/O. Det stämmer inte i en större server utan där gäller det att ha ett balanserat system. Ett bra verktyg att testa med är tex I/O meter.

ZFS är precis lika sårbart som alla andra filsystem för förlorad WriteCache fortfarande. Tappar du en writecache är datat borta. Du kan inte backa något från en journal som inte finns då varken den eller datat har skrivits till disk ännu. Det enda försvaret mot det är som jag skrev att inte använda någon som helst writecache. Det är också exakt vad ZFS gör, man använder inte ramcache och tvingar diskarna att tömma sin cache direkt. Som privatperson kvittar det då man som sagt ALDRIG ska använda writecach utan batteribackup. På en lätt lastad server eller en server med högt read/write förhållande gör det ingen större skillnad heller. Där kan man ta till ett annat knepp för att få upp hastigheten, nämligen att stoppa i fler diskar. Problemet är när du kommer upp till servrar med högt Write/read förhållande. Nu börjar det kosta rejält att köra utan writecache. En vanlig filserver kan man se detta på men där det blir fruktansvärt uppenbart är en transaktionsserver eller dedikerad databasserver

Att ZFS försöker spara ändringar är trevligt men då får du nästa problem istället. Om du har ett ordentligt förändligt data som i en transkationsDB så kommer din diff hantering väldigt fort ta enorma mängder disk istället. Därmed blir man tvungen att begränsa den och så vart det dags för backupen i varje fall. (IBM:s Tivoli backup system jobbar just med Diff för att försöka hålla nere backuptiderna men till priset av att backuparkivet blir väldigt stort). Att förlora 30 sekunder i ett transaktionssytem kan innebära en stoppad fabrik för X antal miljoner i kostnad.

En bra och stabil lösning är tex en Proliant Server med dess Smart Array controllers. De hanterar de flesta av de fel som nämns i din artikel per automatik och de larmar om diskar håller på att rasa i förtid.

På snart 20 år i branchen och några tusen raidset så har jag varit med om att tappa ett. Där hadde man konfat larmhanteringen lite snett så att larmet för trasig disk gick till en person som hadde slutat. Servern hadde snyggt och prydligt larmat i tre dagar innan disken la av.

Sen finns det ingen mirakellösning för dataskydd överhuvudtaget. Alla är komromisser mellan pris, prestanda och säkerhet. Du kan få två utav de tre men du kan aldrig få alla tre. En snabb och säker lösning är görbar. Då blir det just HW controllers eller SAN. Du kan få det billigt och säkert med tex ZFS men då blir det inte så snabbt. Du kan få det snabbt och billigt med tex moderkorts raid 1 men det är inte särskillt säkert.

Vill du ha en garanti på att du har datat kvar så finns det bara en sak och det är backup.

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Medlem

Ja nu vet jag visserligen att denna tråden ligger i Linux delen, men då topic rör "Hwraid på väg att dö ut" så måste jag posta här ändå.

Ja diskussionen mellan HW-raid och ZFS går vild i tråden, men jag då, jag som inbiten windows människa, som inte vill sätta upp in linux maskin för att köra ZFS. Är jag på något sätt en sämre människa för att jag inte kan köra ZFS pga detta?

Visa signatur

//Axeteg

Permalänk
Avstängd
Skrivet av Arctunix:

Läste du ens länken?

PowerPC CPU:n som finns i RAID-kort använder inte ALU:n för paritetsberäkningarna.

Om jag förstår det rätt så är denna logik inbakad som en del av PLB och når således upp till 12,8 GB/s vilket är snabbare än Core i7 930 som når 11 GB/s enligt denna länk: http://openbenchmarking.org/system/1103093-IV-XTENDXTON02/xte...

Visst, den är en snabb liten rackare på just detta.

Men, samtidigt så tycker jag det är lite märkligt att man fuskar med säkerheten bara för att allt ska gå så snabbt som möjligt. Det dära inlägget av Ted Tso tyckte jag var lite oroväckande. T.ex köra ext3 ovanpå ett hw-raid låter inte som en bra kombination i mina öron. ext3 är ju osäkert i sig och det fuskats i koden. hw-raid är ju osäkert i sig också, enligt de länkar jag visat. De tillsammans låter illa - i mina öron.

Håller du inte med om att man kan misstänka att en lagringslösning som är flera ggr snabbare än ZFS för att fuska med sina felkontroller? Jag hörde om nån snubbe som hade kört fsck på sin JFS(?) raid. Han checkade 12 TB data på typ 10 sekunder och skröt om hur snabbt JFS är. Men, det blir typ 1200MB/sek eller så - mycket mera än vad raidet klarade av att läsa. Mao, så fuskades det en hel del, och inte mycket data kontrollerades egentligen. Snabbt men slarvigt. Jag är misstänksam mot för snabba lösningar - då är det nog massa fusk bakom. Precis det som Ted Tso förklarade.

Skrivet av Arctunix:

Behöver man ens nämna att den gör allt detta för 6W medan Core i7 930 har en TDP på 130W?

Det är en viktig poäng du har. Men jag ser inte poängen med att köpa massa extra hårdvara när en cpu kan göra samma sak. Jag äger ju redan cpun, varför lägga ut ännu mera pengar?

Skrivet av Arctunix:

Ajdå! Verkar som man i så fall inte kan använda ZFS för ACID-databaser överhuvudtaget (i.e. du tappar D-et).

Jaså, hur menar du då? Jag förstår inte. Kan du förklara lite mer?

Skrivet av mats42:

För det första kan du inte jämföra två olika typer av HW på det sätt du gör. Det är en ruggig skillnad på specialiserad HW som gör sitt jobb och en generell processor som egentligen inte är riktigt bra på nått.

Titta tex på vad en gammal stordator från 90 talet har för mipstal och betänk sen att de funkade fint som databasservrar för 10000 plus användare. Prova sen att köra det på en quadCore med en singeldisk.

En stordator har massa I/O cpuer som avlastar den. Själva cpun är ju långsam, och jag skulle inte bli förvånad om en QuadCore är snabbare än hela Stordatorns alla vanliga cpuer.

Men du har en poäng där. Dedikerad hw är alltid snabbare än generell hw. Dock, är min tes att när man kan emulera det i mjukvara på en vanlig cpu, så ser jag ingen anledning till att fortsätta köpa dedikerad hw. Du kan ju göra allting i mjukvara och få likvärdig prestanda, så varför köpa extra hw? Det är ungefär som att du har massa ketchup hemma, så varför begära extra ketchup förpackningar i take away restaurangen? Jag ser inte poängen.

Citat:

ZFS är precis lika sårbart som alla andra filsystem för förlorad WriteCache fortfarande. Tappar du en writecache är datat borta. Du kan inte backa något från en journal som inte finns då varken den eller datat har skrivits till disk ännu. Det enda försvaret mot det är som jag skrev att inte använda någon som helst writecache. Det är också exakt vad ZFS gör, man använder inte ramcache och tvingar diskarna att tömma sin cache direkt. Som privatperson kvittar det då man som sagt ALDRIG ska använda writecach utan batteribackup. På en lätt lastad server eller en server med högt read/write förhållande gör det ingen större skillnad heller. Där kan man ta till ett annat knepp för att få upp hastigheten, nämligen att stoppa i fler diskar. Problemet är när du kommer upp till servrar med högt Write/read förhållande. Nu börjar det kosta rejält att köra utan writecache. En vanlig filserver kan man se detta på men där det blir fruktansvärt uppenbart är en transaktionsserver eller dedikerad databasserver

Om man har problem med långsamma skrivningar i ZFS, så löses det enklast med en SSD som ZIL, dvs en dedikerad skrivcache som är snabbare än hårddiskar. Dessa bör speglas också, har jag för mig. Och köra batteribackup.

Citat:

Att ZFS försöker spara ändringar är trevligt men då får du nästa problem istället. Om du har ett ordentligt förändligt data som i en transkationsDB så kommer din diff hantering väldigt fort ta enorma mängder disk istället. Därmed blir man tvungen att begränsa den och så vart det dags för backupen i varje fall.

Man kan lagra alla skrivningar på en SSD.

Citat:

En bra och stabil lösning är tex en Proliant Server med dess Smart Array controllers. De hanterar de flesta av de fel som nämns i din artikel per automatik och de larmar om diskar håller på att rasa i förtid.

Jasså, vad är det för lösning? Skyddar den mot bitröta menar du?

Citat:

På snart 20 år i branchen och några tusen raidset så har jag varit med om att tappa ett. Där hadde man konfat larmhanteringen lite snett så att larmet för trasig disk gick till en person som hadde slutat. Servern hadde snyggt och prydligt larmat i tre dagar innan disken la av.

Det är inte alltid diskar kraschar. Istället råkar man ut för bitröta. T.ex. denna artikel om ZFS, detta kan aldrig ett vanligt hw-raid göra. Inte en chans. Eller menar du att Proliant server med Smart Array controllers har end-to-end checksummor som ZFS och skulle märkt detta fel?
http://jforonda.blogspot.com/2007/01/faulty-fc-port-meets-zfs...

Citat:

Sen finns det ingen mirakellösning för dataskydd överhuvudtaget. Alla är komromisser mellan pris, prestanda och säkerhet. Du kan få två utav de tre men du kan aldrig få alla tre. En snabb och säker lösning är görbar. Då blir det just HW controllers eller SAN. Du kan få det billigt och säkert med tex ZFS men då blir det inte så snabbt. Du kan få det snabbt och billigt med tex moderkorts raid 1 men det är inte särskillt säkert.

Alltså, du kan ju få det snabbt med ZFS också. Det handlar bara om hur du konfar raidet. Om du t.ex. har 46 diskar så kommer du upp i 2-3GB/sec läs hastighet, och stoppar du i några SSD som cache så kan du komma upp i 100.000 tals IOPS. Det handlar bara om hur du konfar ZFS raidet, och hur många diskar du har. Men sant är att om du har många diskar så börjar ZFS käka cpu.

Här når ZFS servern utan hw-raid kort 2.70GB/sek och 300.000 IOPS, men dessa siffror kanske inte är så realistiskt i produktion. Mera, vad ZFS som kör på en vanlig cpu, klarar av.
http://dtrace.org/blogs/brendan/2010/01/27/iscsi-before-and-a...
http://blogs.oracle.com/brendan/entry/slog_screenshots

Skrivet av Axeteg:

Ja diskussionen mellan HW-raid och ZFS går vild i tråden, men jag då, jag som inbiten windows människa, som inte vill sätta upp in linux maskin för att köra ZFS. Är jag på något sätt en sämre människa för att jag inte kan köra ZFS pga detta?

Japp, du är en usel människa!

Nej då, men problemet är att ju mer data som lagras, desto större är risken att fel uppkommer, t.ex. bitröta eller att bitar flippas randomly. Denna felprocent har alltid varit likadan genom tiden. Ungefär. Så när man hade 4GB hårddiskar så kanske man knappt råkade på ett sånt fel. Men när man har stora snabba raids som lagrar flera TB, så är risken reell att man råkar ut för såna fel. Hårdvaruraid är en gammal design, och härstammar från en tid då diskarna var små och långsamma - mao hann du inte skyffla tillräckligt många bitar innan du råkade ut för fel. Men dessa fel råkar du ut för idag eftersom raiden är stora och väldigt snabba. Bl.a. CERN har gjort undersökningar på detta.
http://storagemojo.com/2007/09/19/cerns-data-corruption-resea...

På samma sätt kan du råka ut för bit flippar i minnet, det är därför man har ECC ram i servrar. Mao, kör du Windows och hw-raid så kan du råka ut för dessa problem på diskarna. Nu är ju inte dessa problem hela världen iofs. I värsta fall kanske du inte kan öppna din rar fil om den korruptas pga bit röta eller nåt sånt. Jag själv kör ju inte ECC ram, så det är ju lite lustigt att jag pratar om att ZFS skyddar mot bitröta, samtidigt som jag struntat i att skydda ram. MS gjorde en studie, som visade att typ 20% av alla Windows krascher berodde på bit flippar i RAM, därför krävde MS att alla måste köra ECC RAM - så blir Windows mer stabilt. Men det blev ramaskri och MS drog tillbaka det kravet.

(Linux och Solaris kraschar inte, på samma dator, med samma dåliga RAM stickor - så det går nog att undvika krascher pga flippade bitar i RAM.)

Men det är ju faktiskt inte hela världen om en hemanvändares dator blåskärmar. Påverkas man inte så mycket av en datorkrasch, så bryr man sig nog inte heller om att skydda sina diskar mot bitröta med ZFS. Så egentligen är det onödigt att köra ZFS för hemanvändare, man kan få problem bara ibland. Nån här, berättade att hans gamla gamla rar filer inte kunde öppnas längre - därför switchade han till ZFS. Men för ett företag med kritiska data, så borde man vara noga med att skydda sina bitar, både i RAM och på disk. Detta gäller ju ej hemanvändare. ZFS är ju mer mot Enterprise än hemanvändare.

Permalänk
Medlem
Skrivet av saddam:

Men, samtidigt så tycker jag det är lite märkligt att man fuskar med säkerheten bara för att allt ska gå så snabbt som möjligt. Det dära inlägget av Ted Tso tyckte jag var lite oroväckande. T.ex köra ext3 ovanpå ett hw-raid låter inte som en bra kombination i mina öron. ext3 är ju osäkert i sig och det fuskats i koden. hw-raid är ju osäkert i sig också, enligt de länkar jag visat. De tillsammans låter illa - i mina öron.

Håller du inte med om att man kan misstänka att en lagringslösning som är flera ggr snabbare än ZFS för att fuska med sina felkontroller? Jag hörde om nån snubbe som hade kört fsck på sin JFS(?) raid. Han checkade 12 TB data på typ 10 sekunder och skröt om hur snabbt JFS är. Men, det blir typ 1200MB/sek eller så - mycket mera än vad raidet klarade av att läsa. Mao, så fuskades det en hel del, och inte mycket data kontrollerades egentligen. Snabbt men slarvigt. Jag är misstänksam mot för snabba lösningar - då är det nog massa fusk bakom. Precis det som Ted Tso förklarade.

Man fuskar inte med säkerheten. Problemen är väldokumenterade och många mid/high-end RAID-kontrollers har inte dem överhuvudtaget.

ZFS har sina egna problem om du googlar på "zfs kernel panic", "zfs performance degradation", "zfs lost array" eller "zfs can't expand array".

Skrivet av saddam:

Det är en viktig poäng du har. Men jag ser inte poängen med att köpa massa extra hårdvara när en cpu kan göra samma sak. Jag äger ju redan cpun, varför lägga ut ännu mera pengar?

Du är inte målgruppen för hårdvaru-RAID.

Men bara för att spinna vidare på watt-argumentet. Varför tror du vissa server-farmer använder "low voltage" CPU:n som är både dyrare och långsammare än vanliga?

Skrivet av saddam:

Jaså, hur menar du då? Jag förstår inte. Kan du förklara lite mer?

mats42 förklarade det bättre än mig.

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Medlem
Skrivet av saddam:

Visst, den är en snabb liten rackare på just detta.

Men, samtidigt så tycker jag det är lite märkligt att man fuskar med säkerheten bara för att allt ska gå så snabbt som möjligt. Det dära inlägget av Ted Tso tyckte jag var lite oroväckande. T.ex köra ext3 ovanpå ett hw-raid låter inte som en bra kombination i mina öron. ext3 är ju osäkert i sig och det fuskats i koden. hw-raid är ju osäkert i sig också, enligt de länkar jag visat. De tillsammans låter illa - i mina öron.

Håller du inte med om att man kan misstänka att en lagringslösning som är flera ggr snabbare än ZFS för att fuska med sina felkontroller? Jag hörde om nån snubbe som hade kört fsck på sin JFS(?) raid. Han checkade 12 TB data på typ 10 sekunder och skröt om hur snabbt JFS är. Men, det blir typ 1200MB/sek eller så - mycket mera än vad raidet klarade av att läsa. Mao, så fuskades det en hel del, och inte mycket data kontrollerades egentligen. Snabbt men slarvigt. Jag är misstänksam mot för snabba lösningar - då är det nog massa fusk bakom. Precis det som Ted Tso förklarade.

Det är en viktig poäng du har. Men jag ser inte poängen med att köpa massa extra hårdvara när en cpu kan göra samma sak. Jag äger ju redan cpun, varför lägga ut ännu mera pengar?

Jaså, hur menar du då? Jag förstår inte. Kan du förklara lite mer?

En stordator har massa I/O cpuer som avlastar den. Själva cpun är ju långsam, och jag skulle inte bli förvånad om en QuadCore är snabbare än hela Stordatorns alla vanliga cpuer.

Men du har en poäng där. Dedikerad hw är alltid snabbare än generell hw. Dock, är min tes att när man kan emulera det i mjukvara på en vanlig cpu, så ser jag ingen anledning till att fortsätta köpa dedikerad hw. Du kan ju göra allting i mjukvara och få likvärdig prestanda, så varför köpa extra hw? Det är ungefär som att du har massa ketchup hemma, så varför begära extra ketchup förpackningar i take away restaurangen? Jag ser inte poängen.

Om man har problem med långsamma skrivningar i ZFS, så löses det enklast med en SSD som ZIL, dvs en dedikerad skrivcache som är snabbare än hårddiskar. Dessa bör speglas också, har jag för mig. Och köra batteribackup.

Man kan lagra alla skrivningar på en SSD.

Jasså, vad är det för lösning? Skyddar den mot bitröta menar du?

Det är inte alltid diskar kraschar. Istället råkar man ut för bitröta. T.ex. denna artikel om ZFS, detta kan aldrig ett vanligt hw-raid göra. Inte en chans. Eller menar du att Proliant server med Smart Array controllers har end-to-end checksummor som ZFS och skulle märkt detta fel?
http://jforonda.blogspot.com/2007/01/faulty-fc-port-meets-zfs...

Alltså, du kan ju få det snabbt med ZFS också. Det handlar bara om hur du konfar raidet. Om du t.ex. har 46 diskar så kommer du upp i 2-3GB/sec läs hastighet, och stoppar du i några SSD som cache så kan du komma upp i 100.000 tals IOPS. Det handlar bara om hur du konfar ZFS raidet, och hur många diskar du har. Men sant är att om du har många diskar så börjar ZFS käka cpu.

Här når ZFS servern utan hw-raid kort 2.70GB/sek och 300.000 IOPS, men dessa siffror kanske inte är så realistiskt i produktion. Mera, vad ZFS som kör på en vanlig cpu, klarar av.
http://dtrace.org/blogs/brendan/2010/01/27/iscsi-before-and-a...
http://blogs.oracle.com/brendan/entry/slog_screenshots

Japp, du är en usel människa!

Nej då, men problemet är att ju mer data som lagras, desto större är risken att fel uppkommer, t.ex. bitröta eller att bitar flippas randomly. Denna felprocent har alltid varit likadan genom tiden. Ungefär. Så när man hade 4GB hårddiskar så kanske man knappt råkade på ett sånt fel. Men när man har stora snabba raids som lagrar flera TB, så är risken reell att man råkar ut för såna fel. Hårdvaruraid är en gammal design, och härstammar från en tid då diskarna var små och långsamma - mao hann du inte skyffla tillräckligt många bitar innan du råkade ut för fel. Men dessa fel råkar du ut för idag eftersom raiden är stora och väldigt snabba. Bl.a. CERN har gjort undersökningar på detta.
http://storagemojo.com/2007/09/19/cerns-data-corruption-resea...

På samma sätt kan du råka ut för bit flippar i minnet, det är därför man har ECC ram i servrar. Mao, kör du Windows och hw-raid så kan du råka ut för dessa problem på diskarna. Nu är ju inte dessa problem hela världen iofs. I värsta fall kanske du inte kan öppna din rar fil om den korruptas pga bit röta eller nåt sånt. Jag själv kör ju inte ECC ram, så det är ju lite lustigt att jag pratar om att ZFS skyddar mot bitröta, samtidigt som jag struntat i att skydda ram. MS gjorde en studie, som visade att typ 20% av alla Windows krascher berodde på bit flippar i RAM, därför krävde MS att alla måste köra ECC RAM - så blir Windows mer stabilt. Men det blev ramaskri och MS drog tillbaka det kravet.

(Linux och Solaris kraschar inte, på samma dator, med samma dåliga RAM stickor - så det går nog att undvika krascher pga flippade bitar i RAM.)

Men det är ju faktiskt inte hela världen om en hemanvändares dator blåskärmar. Påverkas man inte så mycket av en datorkrasch, så bryr man sig nog inte heller om att skydda sina diskar mot bitröta med ZFS. Så egentligen är det onödigt att köra ZFS för hemanvändare, man kan få problem bara ibland. Nån här, berättade att hans gamla gamla rar filer inte kunde öppnas längre - därför switchade han till ZFS. Men för ett företag med kritiska data, så borde man vara noga med att skydda sina bitar, både i RAM och på disk. Detta gäller ju ej hemanvändare. ZFS är ju mer mot Enterprise än hemanvändare.

Vilken HW raid kontroller fuskar med säkerheten menar du. Kan du nämna ett exempel på en riktig kontroller dvs inte (intels moderkort eller annat utan battreibackup) som fuskar med säkerheten? Att en utvecklare av ett filsystem gjorde det har återigen ingenting med hårdvaran att göra

Riktiga kontrollers hanterar svagheterna i Raid med hjälp av just sin hårdvara. Det näms tom i den wiki sida du länkade till. Därmed är de riskerna rejält minimerade till i praktiken obefintliga.

Att olika mjukvaruradier har olika hastigheter kan vara skäl för misstanke. Att jämföra mjukvara som ZFS med hårdvara år helt fel och där kan man inte dra någon specifik slutsats utan att veta mer om hur lösningen är byggd. Riktiga Kontrolelrs kan ju styra diskarna mer effektivt än vad ett moderkort kan och når därmed betydligt högre I/O värden. Har du tex 64 diskar i Raidsetet så kan du ju i vissa fall tex skriva med 64X150Mbyte i sekunden.

Som privatperson har du CPU:n och den gör troligen inte allt för mycket annat. Därmed gör säg 5-10% lst inte så mycket men för en väl balanaserad server så är 10-10% CPU rätt mycket (Den skriver mycket mer därav högre siffror). Sen kommer det ännu större problemet och det är datatransporten mellan disk och CPU. Just I/O bussarna är oftast det som är tyngst lastat i en server. Att då kunna skicka ett jobb till raidkontrollern istället för att behöva skicka 8-10 jobb till olika diskar är en massiv prestandaförbättring. Enda lösningen på det förutom "smarta" kort är att köpa en större och därmed betydligt dyrare server.

All energiförbrukning i en dator blir ju värme. I ett hem så gör det inte så mycket. I en datorhall så krävs det massiva kylanläggningar. Därmed är energiförbrukningen högintresant då varje extra watt är en onödig kostnad timme för timme.

Helt rätt att en stordator har I/O funktioner under sig. Det har även Raidkontrollern just för att vara effektivare.

Återigen så visst kan du emulera men vad kostar emuleringen? Den lasten är inte gratis den heller (för hemmabruk kan det vara snudd på men det är det inte i en datorhall. Där kostar som sagt varje watt, varje I/O, varje millisekund i extra väntetid). Därmed handlar det mer om att jämföra kostnader för Felix kontra Heinz ketchup.

Och fortfarande är inte någon SSD lösningen på avsaknad writecache. Du gör faktiskt tom problemet värre för nu ska du först skriva till SSD, sen lässa från SSD och sen skriva till disk. Dvs du tredubblade mängden I/O som krävdes för att skicka datat till disk och du kan fortfarande inte skriva fortare till disken heller.

Att skicka alla skrivningar till SSD är ju liksom lite omöjligt. Då ska ju all disk vara SSD. Annars är det samma cacheproblem som ovan igen.

Bra kontrollers kan mycket väl hantera bitröta. Det gör man geonom att läsa och skriva om bliocken. Därmed blir bitrötan ett i praktiken icke existernade problem. Ser man till att varje block är ok så behöver man inte hantera det längre upp. ZFS och andra mjukvarulösningar kan inte göra det och därmed måste de hantera dem längre upp.
Skulle bitröta vara ett reellt problem så skulle det ha rasat massor av raidset i samma takt som diskar i dem rasar. SOm jag sa tidigare så har det aldrig inträffat på de system jag har haft att göra med.

En SSD löser inte några I/O problem för du skriver fortfarande inte snabbare till diskarna. Vad gör du när din SSD är full? Eller när den krashar (har du bara en så är det ju dessutom ett singel point of failure).

Att läsa 2-3Gb/sekunden är inte så imponerande alls. Det är ju bara 3000/46 dvs ca 43-66Mbyte/s och disk. Titta på vad en vanlig disk i en standardpc fixar. Dessutom som du själv påpekar så har du skalningsproblem med ZFS också. När system blri större så går det långsammare. Normalt sett är det tvärtom. Ju fler diskar, ju fler huvuden man kan skriva med, ju snabbare I/O.

Sen vet jag faktiskt inte om du skämtar när du hävdar att Linux och solaris inte krachar pga minnesfel. I verkligheten krachar de precis lika hårt som windows eller något annat. Kan du inte läsa minnet där tex hårddiskdrivern låg så kan du inte längre prata med disken oavsett OS. Därmed kommer också krachen som ett brev på posten.

Anledningen till att MS ser mer av problemet är att MS hadde 90-95% marknadsnadel av kontors och hemdatorer. Gissa var de billigaste och därmed också sämsta komponenterna sitter? Sätter sen någon upp en server på en sån burk utan att ge den ett anständigt powersupply och vettig kylning. Tja det blir ingen stadig lösning.

Sen kan du ju försöka stoppa icke ECC minnen i en Sun server. Går precis lika dåligt som om man försöker stoppa dem i Prolianten. Rätt hanterat och på rätt HW så ligger Windows på ungefär samma siffror som Solarismaskinerna i tillgänglighet. (något lägre pga patchning men det är ju planerade stopp inte oplanerade).

ZFS kan kanske bli bra för enterprise marknaden på sikt men då kommer det troligen att krävas ZFS ner i HW för att få upp farten (sen är ju RAIDZ egentligen bara en utvecklad variant på raid5) och stabiliteten. Det finns ju en trave artiklar om problem med diskar och diskkontrollers som flaggar skrivning klar tillbaka till ZFS innan det är klart. Får man ett strömavbrott i det läget så är det fullständigt godnatt då ZFS tror att både data och journal är uppdaterade utan att så är fallet. Dvs samma problem som jag nämde tidigare med ramcachning.

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Avstängd
Skrivet av Arctunix:

Man fuskar inte med säkerheten. Problemen är väldokumenterade och många mid/high-end RAID-kontrollers har inte dem överhuvudtaget.

Jasså, det har jag inte hört. Jag har ett gäng länkar som säger att hw-raid är ganska osäkert, vill du se dem? Men om du har länkar som säger tvärtom, så får du gärna posta dem så ska jag ta en titt.

Citat:

ZFS har sina egna problem om du googlar på "zfs kernel panic", "zfs performance degradation", "zfs lost array" eller "zfs can't expand array".

Absolut har ZFS också problem, jag säger inte att ZFS är problemfritt. Men jag tycker du måste skilja på buggar i ZFS, och designproblem. De saker du tar upp handlar om buggar. All mjukvara har buggar, jag hoppas du inte tror att mjukvaran i extremt dyra highend hw-raid kort är buggfria? Enda skillnaden är att de kör på en dedikerad cpu, medan ZFS kör på datorns cpu. Jag tycker inte riktigt att buggar är relevanta för diskussionen, all mjukvara har buggar. Även hårdvara har buggar. ZFS är nu typ 10 år gammalt, och har fortfarande buggar. När Btrfs släpps i v1.0 så kommer det ta 10 år till, innan de allvarligaste buggarna är borta.

De problem jag tycker är relevanta, är design problem. T.ex. är hw-raid designat för att skydda mot bitröta? Nej. DET, är ett problem.

Citat:

Men bara för att spinna vidare på watt-argumentet. Varför tror du vissa server-farmer använder "low voltage" CPU:n som är både dyrare och långsammare än vanliga?

Kanske för att t.ex. Google betalar typ flera milj kr i månaden för elen, och de tjänar på low wattage cpuer?

Citat:

mats42 förklarade det bättre än mig.

Ok, men jag tror fortfarande du har fel angående ACID. Jag tror inte "D" tappas bort med ZFS. Om du förklarar hur du menar, så ska jag förklara varför jag tror du har fel. Jag förstår inte hur ZFS tappar "D"?

Permalänk
Avstängd
Skrivet av mats42:

Vilken HW raid kontroller fuskar med säkerheten menar du. Kan du nämna ett exempel på en riktig kontroller dvs inte (intels moderkort eller annat utan battreibackup) som fuskar med säkerheten? Att en utvecklare av ett filsystem gjorde det har återigen ingenting med hårdvaran att göra

Ja, här är ett gäng länkar som visar att hw-raid fuskar med säkerheten. Eller, äsch, här är ett par länkar, så slipper jag posta dem igen
#8840437
T.ex. om raid-6:

the best RAID-6 can do is use probabilistic methods to distinguish between single and dual-disk corruption, eg.
"there are 95% chances it is single-disk corruption so I am going to fix it assuming that, but there are 5% chances I am going to actually corrupt more data, I just can't tell"

Sen har vi även mera länkar om hw-raid
#10023449

Här har du en hel websida med massa artiklar skrivna av sysadmins, varför du ska undvika raid-5
http://www.baarf.com/

Mao, det låter som att både raid-5 och raid-6 är osäkert. Det finns massor av länkar om du läser trådarna ovan.

Citat:

Riktiga kontrollers hanterar svagheterna i Raid med hjälp av just sin hårdvara. Det näms tom i den wiki sida du länkade till. Därmed är de riskerna rejält minimerade till i praktiken obefintliga.

Det här låter märkligt. Kan du citera? Flera sysadmins jag pratat med, säger att hw-raid inte gör checksummor och skyddar inte mot bitröta. Det torde bara vara du och Emigrating12 som säger att hw-raid är säkert.

Om du kollar i spec sheet till en Enterprise SAS disk, så står det att "1 irreparabel fel per 10^16". Mao, kommer disken få fel som den inte kan korrigera. Om du litar på hårdvaran: nej, gör inte det.

Citat:

Bra kontrollers kan mycket väl hantera bitröta. Det gör man geonom att läsa och skriva om bliocken. Därmed blir bitrötan ett i praktiken icke existernade problem. Ser man till att varje block är ok så behöver man inte hantera det längre upp. ZFS och andra mjukvarulösningar kan inte göra det och därmed måste de hantera dem längre upp.
Skulle bitröta vara ett reellt problem så skulle det ha rasat massor av raidset i samma takt som diskar i dem rasar. SOm jag sa tidigare så har det aldrig inträffat på de system jag har haft att göra med.

CERN säger att även mycket dyr Enterprise utrustning INTE skyddar mot bitröta. Det är bara ZFS som gör det.

Om du påstår att vanliga bra kontollers hanterar bitröta, så får du gärna posta länkar. Jag har grottat ganska mycket i detta, och ingen har presenterat bevis för det.

Citat:

En SSD löser inte några I/O problem för du skriver fortfarande inte snabbare till diskarna. Vad gör du när din SSD är full? Eller när den krashar (har du bara en så är det ju dessutom ett singel point of failure).

Man flushar till SSD, som sen skriver ned till disk. Det är så ZFS gör.

Citat:

Att läsa 2-3Gb/sekunden är inte så imponerande alls. Det är ju bara 3000/46 dvs ca 43-66Mbyte/s och disk. Titta på vad en vanlig disk i en standardpc fixar.

Du påstod att ett hw-raid kan läsa 150MB/sec för varje disk. Har du mer läsning om det? Vem som helst kan läsa en disk snabbt, men att göra det för många diskar är lite knepigare.

Citat:

Dessutom som du själv påpekar så har du skalningsproblem med ZFS också. När system blri större så går det långsammare. Normalt sett är det tvärtom. Ju fler diskar, ju fler huvuden man kan skriva med, ju snabbare I/O.

Skalningsproblem med ZFS har jag inte påstått nånstans. Var god citera, så ska jag förklara hur jag menar.

Citat:

Sen vet jag faktiskt inte om du skämtar när du hävdar att Linux och solaris inte krachar pga minnesfel. I verkligheten krachar de precis lika hårt som windows eller något annat. Kan du inte läsa minnet där tex hårddiskdrivern låg så kan du inte längre prata med disken oavsett OS. Därmed kommer också krachen som ett brev på posten.

Jag skämtar inte. Om du installerar Solaris på exakt samma hårdvara som kraschade innan, så kommer Solaris ha bättre upptid - är min fasta övertygelse. Bl.a. med tanke på self-healing som ökar uptime med 30% i praktiska tester.

Citat:

Anledningen till att MS ser mer av problemet är att MS hadde 90-95% marknadsnadel av kontors och hemdatorer. Gissa var de billigaste och därmed också sämsta komponenterna sitter? Sätter sen någon upp en server på en sån burk utan att ge den ett anständigt powersupply och vettig kylning. Tja det blir ingen stadig lösning.

Jag menar att om man installerar alla OS på EXAKT samma hårdvara så kommer Windows krascha då och då, och Linux och Solaris krascha färre gånger.

Citat:

Sen kan du ju försöka stoppa icke ECC minnen i en Sun server. Går precis lika dåligt som om man försöker stoppa dem i Prolianten. Rätt hanterat och på rätt HW så ligger Windows på ungefär samma siffror som Solarismaskinerna i tillgänglighet. (något lägre pga patchning men det är ju planerade stopp inte oplanerade).

Det här håller jag inte med dig om alls. Att påstå att Windows är stabilt som ett Enterprise Unix är det en hel del personer som inte tycker.

Citat:

ZFS kan kanske bli bra för enterprise marknaden på sikt men då kommer det troligen att krävas ZFS ner i HW för att få upp farten (sen är ju RAIDZ egentligen bara en utvecklad variant på raid5) och stabiliteten. Det finns ju en trave artiklar om problem med diskar och diskkontrollers som flaggar skrivning klar tillbaka till ZFS innan det är klart. Får man ett strömavbrott i det läget så är det fullständigt godnatt då ZFS tror att både data och journal är uppdaterade utan att så är fallet. Dvs samma problem som jag nämde tidigare med ramcachning.

Om du pratar om ZFS problem, så skilj på buggar och designproblem. Hw-raid har massa designproblem. ZFS har buggar (och även antagligen designproblem).

Om man får strömavbrott på ZFS, så gör du rollback precis som jag beskrev. Alla ändringar som görs på ZFS sker alltid på ett nytt ställe, alla originaldata är alltid intakt och orörda. Görs en ändring där allting skiter sig, så gör du rollback till originaldatat. Och förlorar upp till 30sekunders ändringar då. Men folk har gjort ganska mycket strömavbrott på ZFS, och inget har hänt, eftersom ZFS är Copy-On-Write. Alla ändringar görs på ett nytt ställe på disken, och sist flyttas pekaren om till att peka den nya ändringen. Om strömmen går mitt i, så hinner inte pekaren flyttas till det nya datat, utan det pekar på originaldatat - så allting är kvar och inget har förlorats.

Permalänk
Medlem
Skrivet av saddam:

Absolut har ZFS också problem, jag säger inte att ZFS är problemfritt. Men jag tycker du måste skilja på buggar i ZFS, och designproblem. De saker du tar upp handlar om buggar. All mjukvara har buggar, jag hoppas du inte tror att mjukvaran i extremt dyra highend hw-raid kort är buggfria? Enda skillnaden är att de kör på en dedikerad cpu, medan ZFS kör på datorns cpu. Jag tycker inte riktigt att buggar är relevanta för diskussionen, all mjukvara har buggar. Även hårdvara har buggar. ZFS är nu typ 10 år gammalt, och har fortfarande buggar. När Btrfs släpps i v1.0 så kommer det ta 10 år till, innan de allvarligaste buggarna är borta.

De problem jag tycker är relevanta, är design problem. T.ex. är hw-raid designat för att skydda mot bitröta? Nej. DET, är ett problem.

Vet du vad skillnaden är mellan att stöta på en bugg i ett komplext filsystem som ZFS, och att stöta på design[icke]problem?

Jo, med buggar så tappar du all din data idag (Googla så får du se att det har hänt många som har använt ZFS). Med "designproblemen" som du kallar dem så har du bara möjligheten att tappa all din data... och detta bara när Jupiter, Saturnus och Pluto bildar en rät linje. Det finns en orsak till varför vissa har gått tillbaka till tried-and-true hårdvaru-RAID + UFS.

Skrivet av saddam:

Kanske för att t.ex. Google betalar typ flera milj kr i månaden för elen, och de tjänar på low wattage cpuer?

Se, där har du svaret på din egen fråga.

Skrivet av saddam:

Ok, men jag tror fortfarande du har fel angående ACID. Jag tror inte "D" tappas bort med ZFS. Om du förklarar hur du menar, så ska jag förklara varför jag tror du har fel. Jag förstår inte hur ZFS tappar "D"?

Citerat från mats42:

Skrivet av mats42:

ZFS är precis lika sårbart som alla andra filsystem för förlorad WriteCache fortfarande. Tappar du en writecache är datat borta. Du kan inte backa något från en journal som inte finns då varken den eller datat har skrivits till disk ännu. Det enda försvaret mot det är som jag skrev att inte använda någon som helst writecache. Det är också exakt vad ZFS gör, man använder inte ramcache och tvingar diskarna att tömma sin cache direkt. Som privatperson kvittar det då man som sagt ALDRIG ska använda writecach utan batteribackup. På en lätt lastad server eller en server med högt read/write förhållande gör det ingen större skillnad heller. Där kan man ta till ett annat knepp för att få upp hastigheten, nämligen att stoppa i fler diskar. Problemet är när du kommer upp till servrar med högt Write/read förhållande. Nu börjar det kosta rejält att köra utan writecache. En vanlig filserver kan man se detta på men där det blir fruktansvärt uppenbart är en transaktionsserver eller dedikerad databasserver

Att ZFS försöker spara ändringar är trevligt men då får du nästa problem istället. Om du har ett ordentligt förändligt data som i en transkationsDB så kommer din diff hantering väldigt fort ta enorma mängder disk istället. Därmed blir man tvungen att begränsa den och så vart det dags för backupen i varje fall. (IBM:s Tivoli backup system jobbar just med Diff för att försöka hålla nere backuptiderna men till priset av att backuparkivet blir väldigt stort). Att förlora 30 sekunder i ett transaktionssytem kan innebära en stoppad fabrik för X antal miljoner i kostnad.

Välj mellan att antingen slå av skrivcachen och få ohyggligt dålig prestanda, eller slå på den och därmed tappa D i ACID eftersom ZFS då inte längre flushar till ett permanent lagringsmedium när transaktionssystemet säger åt den att göra det.

Följande argument mot SSD-cache är också alldeles för viktiga för att ignoneras:

Skrivet av mats42:

Och fortfarande är inte någon SSD lösningen på avsaknad writecache. Du gör faktiskt tom problemet värre för nu ska du först skriva till SSD, sen lässa från SSD och sen skriva till disk. Dvs du tredubblade mängden I/O som krävdes för att skicka datat till disk och du kan fortfarande inte skriva fortare till disken heller.

<...>

En SSD löser inte några I/O problem för du skriver fortfarande inte snabbare till diskarna. Vad gör du när din SSD är full? Eller när den krashar (har du bara en så är det ju dessutom ett singel point of failure).

För att inte nämna skrivcyklerna.

Enligt SweClocker's nyhet om Intel's nästa enterprise SSD så kan den skriva upp till 500 - 1100 TB. Det tar inte längre än mellan 30 och 65 dagar att få slut på dem, trots att vi flaskar med 200 MB/s vilket är långt under medel-belastningen på relativt vanliga hårdvaru-RAID arrayer. Okay, SSD:n räcker egentligen för dubbla antalet dagar eftersom (som mats42 har påpekat) så måste även läsa upp allt som skrivs ner. 100 MB/s? Ouch!

ZFS ser bra ut på pappret men har väldiga praktiska prestandaproblem, tycker jag.

Visa signatur

"Nothing is impossible because impossible itself says I M Possible..."

Permalänk
Medlem
Skrivet av saddam:

Ja, här är ett gäng länkar som visar att hw-raid fuskar med säkerheten. Eller, äsch, här är ett par länkar, så slipper jag posta dem igen
#8840437
T.ex. om raid-6:

the best RAID-6 can do is use probabilistic methods to distinguish between single and dual-disk corruption, eg.
"there are 95% chances it is single-disk corruption so I am going to fix it assuming that, but there are 5% chances I am going to actually corrupt more data, I just can't tell"

Sen har vi även mera länkar om hw-raid
#10023449

Här har du en hel websida med massa artiklar skrivna av sysadmins, varför du ska undvika raid-5
http://www.baarf.com/

Mao, det låter som att både raid-5 och raid-6 är osäkert. Det finns massor av länkar om du läser trådarna ovan.

Det här låter märkligt. Kan du citera? Flera sysadmins jag pratat med, säger att hw-raid inte gör checksummor och skyddar inte mot bitröta. Det torde bara vara du och Emigrating12 som säger att hw-raid är säkert.

Om du kollar i spec sheet till en Enterprise SAS disk, så står det att "1 irreparabel fel per 10^16". Mao, kommer disken få fel som den inte kan korrigera. Om du litar på hårdvaran: nej, gör inte det.

CERN säger att även mycket dyr Enterprise utrustning INTE skyddar mot bitröta. Det är bara ZFS som gör det.

Om du påstår att vanliga bra kontollers hanterar bitröta, så får du gärna posta länkar. Jag har grottat ganska mycket i detta, och ingen har presenterat bevis för det.

Man flushar till SSD, som sen skriver ned till disk. Det är så ZFS gör.

Du påstod att ett hw-raid kan läsa 150MB/sec för varje disk. Har du mer läsning om det? Vem som helst kan läsa en disk snabbt, men att göra det för många diskar är lite knepigare.

Skalningsproblem med ZFS har jag inte påstått nånstans. Var god citera, så ska jag förklara hur jag menar.

Jag skämtar inte. Om du installerar Solaris på exakt samma hårdvara som kraschade innan, så kommer Solaris ha bättre upptid - är min fasta övertygelse. Bl.a. med tanke på self-healing som ökar uptime med 30% i praktiska tester.

Jag menar att om man installerar alla OS på EXAKT samma hårdvara så kommer Windows krascha då och då, och Linux och Solaris krascha färre gånger.

Det här håller jag inte med dig om alls. Att påstå att Windows är stabilt som ett Enterprise Unix är det en hel del personer som inte tycker.

Om du pratar om ZFS problem, så skilj på buggar och designproblem. Hw-raid har massa designproblem. ZFS har buggar (och även antagligen designproblem).

Om man får strömavbrott på ZFS, så gör du rollback precis som jag beskrev. Alla ändringar som görs på ZFS sker alltid på ett nytt ställe, alla originaldata är alltid intakt och orörda. Görs en ändring där allting skiter sig, så gör du rollback till originaldatat. Och förlorar upp till 30sekunders ändringar då. Men folk har gjort ganska mycket strömavbrott på ZFS, och inget har hänt, eftersom ZFS är Copy-On-Write. Alla ändringar görs på ett nytt ställe på disken, och sist flyttas pekaren om till att peka den nya ändringen. Om strömmen går mitt i, så hinner inte pekaren flyttas till det nya datat, utan det pekar på originaldatat - så allting är kvar och inget har förlorats.

HW-raid i form av Intels moderkort och likanande eller riktiga kontrollers? Dina länkar säger inget om det så utan det så tror jag att det är mer lågprisprylar i händerna på människor som inte vet hur de ska hantera prylarna än något annat. Jag ser ingenting som säger att raid-5 eller raid-6 är osäkert när det körs på riktiga kontrollers då de just utökar standarden för att ta itu med de svagheter som fanns i designen.

Kan det vara så att vi jobbar yrkesaktivt med servrar dagarna i ända? Jag tror inte att du gör det. Som jag tidigare nämde så har jag driftat ett antal tusen raidset. Du kan väl fundera på och förklara varför inte ett enda av dem har rasat pga bit-röta om det vorde ett reellt problem. Varken Windows eller Solarismaskinerna har rasat. Jag har aldrig hört talas om att ett SAN-skåp som kör raid internt skulle ha rasat heller. Och då har jag ett kontaktnät på några hundra aktiva servertekniker så jag har nog prat med minst lika många sysadmin och ingen har haft problemet.

Defekter i en disk detekteras av controllern och beroende på fel så flaggar den disken som dålig, slutar använda den och kopplar på spare disken istället. Rätt konfad så får man också ett larm om att det är dags att byta den dåliga disken.

Att flusha till SSD hjälper en del på ett system som inte har hög last då man hoppas kunna skjuta upp jobbet lite tills det är lugnare men på en lastad server funkar det fortfarande inte. Tre I/O operationer blir fortfarande mer jobb än en. Dessutom får man ju en risk för att SSD disken pajar och vipps var vi tillbaka i grundproblemet utan writecache.

Jag vet faktiskt inte vad som finns öppet publicerat om vad kontrollrarna kan. Samma sak gäller HDS skåpen. (Vi har ju avtal med dem så jag har andra informationsvägar). Har du en server och 30 disk kan du ju alltid testa med tex I/O meeter eller liknande. Det är ju normalt så man gör att man bygger upp den lösning man bedömmer ska klara kundens behov och sen testar man den och bifogar det protokollet till leveransdokumentationen

Med mjukvara kan du få sämre prestanda då det blir mer för CPU och moderkort att göra för att hålla rätt på diskarna och skicka jobb till dem. Med HW så ser inte datorn diskarna utan den ser en rackarns snabb disk från controllern. Den i sin tur gynnas av att ha flera diskar under sig. Du får ju fler huvuden att läsa/skriva med . Dessutom ökar du ju sanolikheten för att du har en disk som har ett läshuvud nära det begärda datat vilket också sparar tid (mer markant för random read/write naturligtvis). Det är därför man på databasservrar hellre vill ha en trave små diskar än några stora.

Du skrev själv att ZFS käkar ZPU med många diskar i maskinen. Det är ett skalningsproblem när man designar ett system då prestanda på systemet blir sämre när du utökar datamängden. Ska du då sälja på kunden en större server så att den klarar utlovade prestanda om ett år?

Du får ursäkta men din fasta övertygelse är fullständigt fel. Hur ska du hantera att du inte kommer åt din disk längre iom att driverns minne är borta?
Det kan du helt enkelt inte hur mycket du än vill tro det. Är det minnesblocket borta så är det borta, det är vad korrupt minne innebär. Det enda försvaret mot det är speglat minne och checksummor och det hittar du på lite större burkar. Har inte satt upp det hos någon kund ännu utan man tycker att ECC är bra nog.

Jo att det finns många som inte tror att WindowsServers sätter 99,99% i uptime. På riktig HW är det inga problem alls. Brukar vara standardkrav i upphandlingar. Vill du upp i fem nior så går det med men då pratar vi kluster på alla dessa då det mer handlar om att hantera HW haverier som tex moderkort eller just minnen.

ZFS kommer att tvingas börja skriva över så fort disken blir full eller ska du hela tiden köpa nya diskar?
Ta tex ett logsystem(mätvärden i tillverkningsindustri) som består av en Databas på 5GB som du skriver 200GB ändringar per dygn till. ska du då lagra 200GB ändringar per dag i en månad så behöver du du alltså 200X30 dvs 6TB för att lagra en DB som är 5GB stor. Tvekar på att någon kund vll betala det.

ZFS designproblem är detsamma som i princip alla andra filsystem, dvs att den utgår från att diskkontrollern alltid kommer att tala sanning om vad som är skrivet till disk och i rätt ordning. Ett Scenario är när kontrollern svarar med att datat är skrivet så fort kontrollern har tagit emot det. Då tror ZFS att datat är på plats och ändrar pekaren utan att datat finns på disken. Detta har ZFS inget skydd emot därför att man från mjukvara fortfarande inte kan hantera HW problem. Man kan ev detektera dem men man kan inte förebygga dem.

Och återigen utan writecache så kommer du få sådanna prestandaproblem på den typen av system så att du antagligen behöver fler system istället och då var en HW controller billigare.

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Medlem
Skrivet av Arctunix:

Vet du vad skillnaden är mellan att stöta på en bugg i ett komplext filsystem som ZFS, och att stöta på design[icke]problem?

Jo, med buggar så tappar du all din data idag (Googla så får du se att det har hänt många som har använt ZFS). Med "designproblemen" som du kallar dem så har du bara möjligheten att tappa all din data... och detta bara när Jupiter, Saturnus och Pluto bildar en rät linje. Det finns en orsak till varför vissa har gått tillbaka till tried-and-true hårdvaru-RAID + UFS.

Se, där har du svaret på din egen fråga.

Citerat från mats42:

Välj mellan att antingen slå av skrivcachen och få ohyggligt dålig prestanda, eller slå på den och därmed tappa D i ACID eftersom ZFS då inte längre flushar till ett permanent lagringsmedium när transaktionssystemet säger åt den att göra det.

Följande argument mot SSD-cache är också alldeles för viktiga för att ignoneras:

För att inte nämna skrivcyklerna.

Enligt SweClocker's nyhet om Intel's nästa enterprise SSD så kan den skriva upp till 500 - 1100 TB. Det tar inte längre än mellan 30 och 65 dagar att få slut på dem, trots att vi flaskar med 200 MB/s vilket är långt under medel-belastningen på relativt vanliga hårdvaru-RAID arrayer. Okay, SSD:n räcker egentligen för dubbla antalet dagar eftersom (som mats42 har påpekat) så måste även läsa upp allt som skrivs ner. 100 MB/s? Ouch!

ZFS ser bra ut på pappret men har väldiga praktiska prestandaproblem, tycker jag.

Den dagen man får ned ZFS i HW så tror jag på den. RaidZ är ju egentligen bara en utökning av software raid-5 så det borde inte vara helt omöjligt att få ned det i rommen på en Controller. På så sätt kan man också stoppa dit en riktig writecache och lösa prestandafrågan runt multidisk I/O.

Fram tills dess är Raid eller san (som iofs kör raid internt i 9 fall av 10) som kommer att regera datorhallarna

ZFS på ett san bli också intresant. Ska skrivande dator styra diskarna i sanet direkt eller ska man nu göra ett fullständigt avsteg från ZFS specen och klarflagga när datat har nått skåpet? Det första alternativet skulle ju vara kul att se prestandan på. Helst med sanspegling och en 30 mil mellan skåpen eller så.

Visa signatur

Arbetsdator: HFX Mini. Ryzen 3600, GTX1650. Skärmar: Dell 2415

Permalänk
Avstängd

Vi måste ju ta med i våra beräkningar, att ifall för mycket elektrisk information skickas genom en kabel, så börjar den lysa. Likadant som en glödlampstråd. Å andra sidan så verkar raidkort väldigt bra, speciellt nu när det finns snabbare sata (3).