सवाल जेएफएस बनाम एक्सएफएस


हम एक ~ 16 टीबी स्टोरेज सर्वर बनाने पर विचार कर रहे हैं। फिलहाल, हम फाइल सिस्टम के रूप में ज़ेडएफएस और एक्सएफएस दोनों पर विचार कर रहे हैं। फायदे, नुकसान क्या हैं? हमें क्या देखना है? क्या कोई तीसरा, बेहतर विकल्प है?


54
2018-04-30 09:03


मूल


उनकी तुलना भी मत करो। जेएफएस एक आधुनिक उद्यम-स्तरीय फ़ाइल सिस्टम है जैसे jfs2, wafl। एक्सएफएस 10 साल पहले अच्छा था लेकिन आज यह सिर्फ एक पत्थर की उम्र है। - disserman
कुछ मायनों में, आप उनकी तुलना नहीं कर सकते: एक्सएफएस एक फाइल सिस्टम है; जेडएफएस एक फाइल सिस्टम है और बहुत कुछ है: यह फाइल सिस्टम, वॉल्यूम मैनेजर (जैसे एलवीएम), और RAID को बदल देता है। हालांकि, अगर स्मृति सेवा करता है तो जेएफएस अब बनाए रखा नहीं जाता है: हालांकि, एक्सएफएस सक्रिय और बनाए रखा और मजबूत है। किसी भी तरह से - जेएफएस या एक्सएफएस - आप मेरी राय में गलत नहीं जा सकते हैं। - Mei
मुझे अभी भी लगता है कि यह प्रश्न प्रासंगिक है, इसलिए बीमार यहां हमारे अनुभव को लिखते हैं: एक्सएफएस सरल है, आप इसे इंस्टॉल करते हैं, आप इसे चलाते हैं, यह तेज़ है, यह काम करता है। (नीचे एचडब्ल्यू RAID)। जेएफएस बचा है, संपीड़न है, लेकिन XFS के रूप में तेजी से काम करने के लिए काम करने के लिए काम की आवंटन है। तो यह उस स्थिति पर भी निर्भर करता है जिस पर आप सर्वर को चलाने की उम्मीद कर रहे हैं। (क्लस्टर का बैकएंड। उपयोगकर्ता भंडारण, संग्रह, ...) - SvennD
हैमर 2 भी है dragonflybsd.org/hammer - skan


जवाब:


मैंने एक्सएफएस को संभवतः बहुत बड़ी फाइल सिस्टम के साथ बहुत बड़ी फाइलों के लिए उपयुक्त पाया है। मेरे पास 2 साल से अधिक समय तक कोई समस्या नहीं होने के साथ 3.6TB XFS फाइल सिस्टम काम कर रहा है। निश्चित रूप से उस आकार में ext3, आदि से बेहतर काम करता है (विशेष रूप से जब कई बड़ी फ़ाइलों और I / O के बहुत से व्यवहार करते हैं)।

जेएफएस के साथ आपको जो मिलता है वह डिवाइस पूलिंग, स्ट्रिपिंग और फाइल सिस्टम में निर्मित अन्य उन्नत फीचर्स है। मैं विनिर्देशों से बात नहीं कर सकता (मैं दूसरों को टिप्पणी करूंगा), लेकिन जो कुछ मैं बता सकता हूं, उससे आप सबसे अधिक लाभ प्राप्त करने के लिए सोलारिस का उपयोग करना चाहेंगे। यह भी अस्पष्ट है कि यदि आप हार्डवेयर RAID (जैसा कि मैं हूं) का उपयोग कर रहे हैं तो ZFS कितना मदद करता है।


41
2018-04-30 11:49



जेएफएस की मुख्य विशेषता है कि आप (आमतौर पर) कहीं और नहीं पाते हैं, ब्लॉक-स्तरीय सीआरसी है, जिसे मूक डेटा भ्रष्टाचार का पता लगाना (और उम्मीद है कि रोकना) है। अधिकांश फाइल सिस्टम मानते हैं कि यदि कोई लेखन सफलतापूर्वक पूरा हुआ, तो डेटा वास्तव में डिस्क पर लिखा गया था। यह हमेशा मामला नहीं है, खासकर यदि कोई क्षेत्र "मामूली" हो रहा है। जेएफएस परिणामस्वरूप लिखने के खिलाफ सीआरसी की जांच करके इसका पता लगाता है। - Avery Payne
और हाँ, मुझे एक्सएफएस बहुत पसंद है। :) एकमात्र गोचा जिसे आपको ध्यान में रखना है, वह जर्नल रिकवरी के दौरान "खराब" क्षेत्रों को शून्य करने की प्रवृत्ति है। कुछ (दुर्लभ) मामलों में, आप कुछ डेटा हानि के साथ समाप्त कर सकते हैं ... इस पेपर को Google खोज शब्द के साथ मिला "xfs शून्य से बाहर निकलने वाले क्षेत्रों" pages.cs.wisc.edu/~vshree/xfs.pdf - Avery Payne
एक्सएफएस में मुझे पसंद की चीजों में से एक है xfs_fsr "डीफ्रैग्मेंटेशन" प्रोग्राम। - Cristian Ciupitu
जेएफएस ब्लॉक-स्तर सीआरसी की उपयोगिता संदिग्ध है। हार्ड ड्राइव और एसएसडी एकल-बिट त्रुटियों को ठीक करने और दो-बिट त्रुटियों की रिपोर्ट करने के लिए हैमिंग कोड ईसीसी का उपयोग करते हैं। यदि ईसीसी पारदर्शी रूप से भौतिक पठन त्रुटि को सही नहीं कर सकता है, तो डेटा वैसे भी खो जाता है और ओएस को पढ़ने की विफलता की सूचना दी जाएगी। सीआरसी त्रुटियों को सही नहीं करते हैं। इस सुविधा को जेएफएस के एक बड़े लाभ के रूप में धकेल दिया गया है लेकिन सच्चाई यह अनावश्यक है और इसका कोई मूल्य नहीं है। एक्सएफएस शून्य-बाद-शक्ति-असफल बग के लिए, जिसे बहुत समय पहले ठीक किया गया था और आज प्रासंगिक नहीं है। - Jody Lee Bruchon


जेएफएस आपको सॉफ्टवेयर RAID से परे फायदे देगा। कमांड संरचना बहुत विचारपूर्वक रखी गई है, और सहज है। इंडेक्सिंग मेटा-डेटा को तेज़ी से बढ़ाने के लिए इसे संपीड़न, स्नैपशॉट्स, क्लोनिंग, फाइल सिस्टम भेज / प्राप्त, और कैश डिवाइस (उन फैंसी नई एसएसडी ड्राइव) भी मिलते हैं।

संपीड़न:

#zfs set compression=on filesystem/home

यह कॉपी-ऑन-राइट स्नैपशॉट बनाने के लिए सरल का समर्थन करता है जो लाइव-माउंट किया जा सकता है:

# zfs snapshot filesystem/home/user@tuesday
# cd filesystem/home/user/.zfs/snapshot/tuesday

फाइल सिस्टम क्लोनिंग:

# zfs clone filesystem/home/user@tuesday filesystem/home/user2

फाइल सिस्टम भेजें / प्राप्त करें:

# zfs send filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"

वृद्धिशील भेजें / प्राप्त करें:

# zfs send -i filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"

कैशिंग डिवाइस:

# zpool add filesystem cache ssddev

यह सिर्फ हिमशैल की नोक है, मैं अत्यधिक ओपन सोलारिस के इंस्टॉलेशन पर अपने हाथों की सलाह देने और इसे आज़माने की सलाह दूंगा।

http://www.opensolaris.org/os/TryOpenSolaris/

संपादित करें: यह बहुत पुराना है, ओपन सोलारिस बंद कर दिया गया है, जेएफएस का उपयोग करने का सबसे अच्छा तरीका शायद चालू है लिनक्स, या FreeBSD


पूर्ण प्रकटीकरण: मैं एक सन स्टोरेज आर्किटेक्ट होता था, लेकिन मैंने एक साल में उनके लिए काम नहीं किया है, मैं इस उत्पाद के बारे में उत्साहित हूं।


73
2018-05-05 21:09



वह लिंक www के साथ मेरे लिए काम नहीं करता था। उपयोग http://opensolaris.org/os/TryOpenSolaris/ - aggregate1166877
मैं वास्तव में कहूंगा कि जेएफएस के लिए सबसे अच्छी शर्त अभी भी फ्रीबीएसडी है। यह काफी सालों से सिस्टम का हिस्सा रहा है। तो मेरा अनुमान है, बुरा आश्चर्य के लिए कम से कम संभावना है। हालांकि यह सिर्फ $ 0.02 है। - Fox


लाइव फाइल सिस्टम पर एलवीएम स्नैपशॉट्स और एक्सएफएस का उपयोग आपदा के लिए एक नुस्खा है ख़ास तौर पर बहुत बड़ी फाइल सिस्टम का उपयोग करते समय।

मैं अपने सर्वर पर पिछले 6 वर्षों के लिए विशेष रूप से LVM2 और xfs पर चल रहा हूं (घर पर भी zfs-fuse बस सादा बहुत धीमा है) ...

हालांकि, मैं अब स्नैपशॉट्स का उपयोग करते समय सामने आने वाले विभिन्न विफलता मोडों की गणना नहीं कर सकता। मैंने उन्हें पूरी तरह से उपयोग करना बंद कर दिया है - यह बहुत खतरनाक है।

एकमात्र अपवाद जो मैं अब करूँगा वह मेरा व्यक्तिगत मेलसर्वर / वेबसर्वर बैकअप है, जहां मैं एक अल्पकालिक स्नैपशॉट का उपयोग करके रातोंरात बैकअप करूँगा, जो हमेशा स्रोत एफएस के आकार के बराबर होता है, तथा बाद में हटा दिया जाता है।

ध्यान में रखने के लिए सबसे महत्वपूर्ण पहलू:

  1. यदि आपके पास एक बड़ा (आईएसएच) फाइल सिस्टम है जिसमें स्नैपशॉट है, तो लेखन का प्रदर्शन बेहद खराब हो गया है
  2. यदि आपके पास एक बड़ा (आईएसएच) फाइल सिस्टम है जिसमें स्नैपशॉट है, तो बूट समय को सचमुच दस मिनट के साथ देरी होगी जबकि डिस्क वॉल्यूम ग्रुप के आयात के दौरान मंथन और मंथन होगी। कोई संदेश प्रदर्शित नहीं किया जाएगा। यह प्रभाव विशेष रूप से डरावना है अगर रूट lvm2 पर है (क्योंकि रूट डिवाइस के लिए प्रतीक्षा टाइमआउट होगा और सिस्टम बूट नहीं होगा)
  3. यदि आपके पास स्नैपशॉट है तो अंतरिक्ष से बाहर निकलना बहुत आसान है। एक बार जब आप अंतरिक्ष से बाहर हो जाते हैं, तो स्नैपशॉट दूषित होता है और मरम्मत नहीं की जा सकती है।
  4. इस समय स्नैपशॉट को रोलडबैक / विलय नहीं किया जा सकता है (देखें http://kerneltrap.org/Linux/LVM_Snapshot_Merging)। इसका अर्थ है स्नैपशॉट से डेटा को पुनर्स्थापित करने का एकमात्र तरीका वास्तव में इसे कॉपी करना है (rsync?) इसे खत्म करना है। डेंजर डेंजर: आप करते हैं नहीं ऐसा करना चाहते हैं यदि स्नैपशॉट क्षमता कम से कम स्रोत fs का आकार नहीं है; यदि आप नहीं करते हैं तो आप जल्द ही ईंट की दीवार पर हिट करेंगे और स्रोत एफएस और स्नैपशॉट दोनों के साथ समाप्त हो जाएंगे। (मैं वहाँ गया था!)

18
2017-10-08 23:14



जैसा कि होता है, बस आज किसी ने पुष्टि की है कि स्नैपशॉट के साथ vg - असमर्थ-टू-बूट-लिनक्स अभी भी चालू है: bugs.launchpad.net/lvm2/+bug/360237 - sehe
इस बग की समीक्षा, वे अभी भी सोचते हैं कि स्नैफॉट्स के साथ अबाध बूट समस्याएं "एलवीएम के लिए सामान्य व्यवहार" हैं: bugs.launchpad.net/lvm2/+bug/360237/comments/7 (2012-01-07 को) - sehe
अद्यतन: वही स्थिति। केवल अब यह 7 और साल हो गया है। - sehe


इसके बारे में सोचने के लिए कुछ अतिरिक्त चीजें।

  • यदि किसी हार्डवेयर RAID सरणी में कोई ड्राइव मर जाती है, तो उस पर मौजूद फाइल सिस्टम के बावजूद डिवाइस पर सभी ब्लॉक को पुनर्निर्मित करना होगा। यहां तक ​​कि जिनके पास कोई डेटा नहीं था। दूसरी तरफ जेएफएस वॉल्यूम मैनेजर, फाइल सिस्टम है, और डेटा रिडंडेंसी और स्ट्रिपिंग का प्रबंधन करता है। तो यह बुद्धिमानी से केवल उन ब्लॉक को पुनर्निर्माण कर सकता है जिनमें डेटा शामिल है। इसके परिणामस्वरूप वॉल्यूम 100% पूर्ण होने के अलावा तेज़ी से पुनर्निर्माण के समय में होता है।

  • जेडएफएस में पृष्ठभूमि स्क्रबिंग है जो सुनिश्चित करता है कि आपका डेटा डिस्क पर लगातार रहता है और डेटा हानि के परिणामस्वरूप इससे पहले किसी भी समस्या को मरम्मत करता है।

  • जेएफएस फाइल सिस्टम हमेशा एक सतत स्थिति में रहते हैं इसलिए fsck की कोई आवश्यकता नहीं है।

  • जेएफएस एलवीएम द्वारा प्रस्तावित स्नैपशॉट की तुलना में स्नैपशॉट्स और क्लोन के साथ अधिक लचीलापन और फीचर्स भी प्रदान करता है।

लिनक्स, एलवीएम, एक्सएफएस स्टैक पर बड़े प्रारूप वीडियो उत्पादन के लिए बड़े भंडारण पूल चलाने के बाद। मेरा अनुभव यह रहा है कि आपके स्टोरेज को माइक्रो-मैनेजमेंट में गिरना आसान है। इसके परिणामस्वरूप आपके लॉजिकल वॉल्यूम्स के प्रबंधन के साथ अप्रयुक्त आवंटित स्थान और समय / समस्याएं बड़ी मात्रा में हो सकती हैं। यदि आपके पास पूर्णकालिक स्टोरेज व्यवस्थापक है, तो यह एक बड़ा सौदा नहीं हो सकता है, जो भंडारण को माइक्रो-प्रबंधित करना है। लेकिन मुझे पता चला है कि जेएफएस का पूल स्टोरेज दृष्टिकोण इन प्रबंधन मुद्दों को हटा देता है।


13
2017-07-14 18:21





जेएफएस बिल्कुल अद्भुत है। मैं इसे 5 x 1 टीबी एचडी फाइल सर्वर के लिए अपने होम फाइल सर्वर के रूप में उपयोग कर रहा हूं, और इसे लगभग 32 टीबी हार्ड ड्राइव स्पेस के साथ उत्पादन में भी उपयोग कर रहा हूं। यह तेज़, उपयोग करने में आसान है और डेटा भ्रष्टाचार के खिलाफ कुछ बेहतरीन सुरक्षा शामिल है।

हम विशेष रूप से इस सर्वर पर ओपनसोलारिस का उपयोग कर रहे हैं क्योंकि हम नई सुविधाओं तक पहुंच बनाना चाहते थे और क्योंकि यह नई पैकेज प्रबंधन प्रणाली और उन्नयन का तरीका प्रदान करता था।


8
2018-05-06 00:07





आप किस ओएस पर चलने की योजना बना रहे हैं? या यह विचार का एक और हिस्सा है? यदि आप सोलारिस चला रहे हैं, तो एक्सएफएस एक विकल्प भी नहीं है जहां तक ​​मुझे पता है। यदि आप सोलारिस नहीं चला रहे हैं, तो आप ZFS का उपयोग करने की योजना कैसे बना रहे हैं? समर्थन अन्य प्लेटफार्मों पर सीमित है।

यदि आप किसी लिनक्स सर्वर के बारे में बात कर रहे हैं, तो मैं व्यक्तिगत रूप से Ext3 के साथ चिपके रहूंगा, अगर केवल इसलिए कि यह अधिकतर परीक्षण प्राप्त करता है। zfs-fuse अभी भी बहुत छोटा है। इसके अलावा, मुझे XFS के साथ एक बार परेशानी हुई, जब एक बग ने कर्नेल अद्यतन के बाद डेटा भ्रष्टाचार का कारण बना दिया। एक्स 3 पर एक्सएफएस के फायदे निश्चित रूप से मशीन को बहाल करने में शामिल लागत से अधिक नहीं थे, जो रिमोट डेटासेंटर में स्थित था।


7
2018-04-30 11:45



फ्रीबीएसडी में जेएफएस का परिपक्व मूल बंदरगाह है - Brian Gianforcaro
wiki.freebsd.org/ZFSKnownProblems मुझे लगता है कि परिपक्व होने की आपकी परिभाषा मेरे से भिन्न हो सकती है :-) शायद 8.0 के बाद इसे मैं मानता हूं। - Kjetil Limkjær
16TB के साथ ext3? नहीं नहीं नहीं। ऐसा मत करो। आप रोएंगे। जेडएफएस या एक्सएफएस मेरी राय में सबसे अच्छी फाइल सिस्टम हैं। यदि आप कर सकते हैं तो ZFS का उपयोग करें (इसे Linux पर नहीं चलाएं)। मैं इसे 5 साल से अधिक लिनक्स और सोलारिस पर बड़ी मात्रा में अनुभव के साथ कहता हूं। - Thomas
200 9 0601 के बाद फ्रीबीएसडी 7.2 ने ज़ेडएफएसकेनप्रोब्लम्स म्यूट का अधिकांश हिस्सा प्रदान किया है। यदि आप ओएस के AMD64 संस्करण चला रहे हैं, तो यह अब स्थिर है। 8.0 में, फ्रीबीएसडी ने जेएफएस को उत्पादन के लिए पर्याप्त स्थिर के रूप में चिह्नित किया है। - Walter
लिनक्स पर जेएफएस अब उपलब्ध है (zfsonlinux.org) - James Moore


मुझे नहीं लगता कि आपको प्रदर्शन पर ध्यान देना चाहिए। क्या आपका डेटा एक्सएफएस, एक्सटी 4, आदि के साथ सुरक्षित है? नहीं। इन पीएचडी थीसिस और शोध पत्र पढ़ें:

डेटा भ्रष्टाचार के खिलाफ एक्सएफएस सुरक्षित नहीं है: pages.cs.wisc.edu/~vshree/xfs.pdf

और न तो ext3, जेएफएस, ReiserFS, आदि है: zdnet.com/blog/storage/how-microsoft-puts-your-data-at-risk/169?p=169&tag=mantle_skin%3bcontent "मैं विजयन प्रभाकरन, आईआरओएन फाइल सिस्टम के आकर्षक पीएचडी थीसिस में आया था, जो विश्लेषण करता है कि कैसे पांच कमोडिटी जर्नलिंग फाइल सिस्टम - एनटीएफएस, एक्सटी 3, रीइजरएफएस, जेएफएस और एक्सएफएस - भंडारण की समस्याएं हैंडल करते हैं।

संक्षेप में उन्होंने पाया कि सभी फाइल सिस्टम में हैं

. . . failure policies that are often inconsistent, sometimes buggy, and generally inadequate in their ability to recover from partial disk failures. "

लेकिन जेएफएस सफलतापूर्वक आपके डेटा की सुरक्षा करता है। यहां पर एक शोध पत्र है: zdnet.com/blog/storage/zfs-data-integrity-tested/811


6
2018-05-16 12:34





एक एफएस उन्मुख उत्तर नहीं है लेकिन ध्यान रखें कि कई डिस्क नियंत्रक> 2TB LUNS / तार्किक-डिस्क से निपटेंगे नहीं - यह आपके संग्रहण को व्यवस्थित करने के तरीके को सीमित कर सकता है। मैं चाहता था कि आप जागरूक रहें ताकि आप यह सुनिश्चित करने के लिए अपने सिस्टम को अंत तक जांच सकें कि यह 16TB के साथ सौदा करेगा।


5
2018-06-16 12:52





यह निर्भर करता है कि आप कौन सी विशेषताओं को चाहते हैं ..., दो उचित विकल्प xfs और zfs हैं जैसा आपने कहा है, xfs कोड बहुत अच्छी तरह से परीक्षण किया गया है, मैंने इसे पहले 8 साल पहले आईआरईएक्स के तहत इस्तेमाल किया था

Xfs से स्नैपशॉट प्राप्त करना संभव है (lvm और xfs_freeze का उपयोग करके)

एक अलग लॉग डिवाइस जैसे एसएसडी होना संभव है

mkfs.xfs -l logdev=/dev/sdb1,size=10000b /dev/sda1

बड़े xfs पारंपरिक रूप से जांच करने के लिए बहुत सारी मेमोरी की आवश्यकता है

ज़ीरोस के साथ समस्या एक "सुरक्षा" सुविधा थी, जो मुझे लगता है कि कुछ समय पहले गायब हो गया था।


1
2017-07-14 16:48