سؤال

علي ضرورة إجراء توزيع البحث عبر كبير قليلا من مجموعة من الملفات الصغيرة (~10M) مع كل ملف كونها مجموعة من key: value أزواج.لدي مجموعة من الخوادم مع ما مجموعه 56 النوى وحدة المعالجة المركزية المتوفرة عن هذا - هذه هي في الغالب ثنائية النواة و رباعية النواة, ولكن أيضا كبير DL785 مع 16 النوى.

يحتاج النظام إلى أن تكون مصممة على استفسارات انا يبحث مثالي لتنفيذ خدمة الويب والتي ترجع سلمان الناتج على الطلب من الواجهة الأمامية.

إلى مزيد من تعقيد الأمور ، أي البحث في بعض الأحيان أنا فقط أريد أن ننظر إلى أحدث نسخة من كل ملف ، لكن البحث قد تنطبق فقط على تلك الإصدارات من الملفات التي كانت موجودة في تاريخ معين.

لقد بحثت في Hadoop ، ولكن الإدارة هي فظيعة جدا ، الافتراضي وظيفة تقديم أساليب بطيئة.يبدو أن المصممة حاليا كبيرة جدا على نطاق المعالجة ، وليس على معالجة البيانات.

CouchDB تبدو لطيفة كوثيقة متجر يعرف عن key: value على غرار الوثائق و الإصدارات و MapReduce, ولكن أنا لا يمكن أن تجد أي شيء حول الكيفية التي يمكن أن تستخدم توزيع MapReduce النظام.كل من تجميع الوثائق محادثات حول استخدام تجميع النسخ المتماثل من كامل قاعدة البيانات موازنة التحميل, في حين أن ما أحتاجه هو تحميل التوزيع.

لقد التحقيق أيضا مختلف DHTs ، في حين انهم بخير في تخزين واسترجاع السجلات الفردية ، هم الفقراء عموما في القيام 'خريطة' جزء من MapReduce.بالتكرار على كامل الوثيقة مجموعة حاسمة.

وبالتالي مثالية نظام وسيضم نظام ملفات الموزعة مثل Hadoop HDFS مع خدمة الويب قدرات CouchDB.

يمكن لأي شخص أن لي نقطة في الاتجاه من أي شيء يمكن أن تساعد ؟ تنفيذ اللغة ليست الكثير من القلق, إلا أنه يجب أن تعمل على لينكس.

هل كانت مفيدة؟

المحلول

يبدو أن المشكلة المجال من شأنه أن يكون أفضل حل مثل المؤسسة العامة لاستصلاح الأراضي.المؤسسة العامة لاستصلاح الأراضي يقدم http واجهات التطبيقات الأخرى ، حتى سلمان.يمكن تقسيم البحث عبر عدة آلات أو توزيع نسخة واحدة عبر آلات موازنة التحميل(ماجستير/الرقيق).فإنه يعتمد على ما عملت أفضل للبيانات الخاصة بك.ولكن في تجربتي على نتائج البحث في الوقت الحقيقي, لوسين/المؤسسة العامة لاستصلاح الأراضي هو الذهاب الى الفوز على أي نظام يقوم على الخريطة/تقلل من النظام.

انها بسيطة جدا لدمج المؤسسة العامة لاستصلاح الأراضي في تطبيق والقيام التحديثات الإضافية.ليس لدي أي فكرة من الإصدارات على الرغم من.إذا كان ذلك ضروريا حقا عليك أن تجد طريقة أخرى تك على.

نصائح أخرى

قد تكون مشوشة قليلا على ما يحتاج التطبيق الخاص بك ، كنت أذكر تحتاج إلى أن تكون قادرة على البحث عن طريق مفتاح/قيمة أزواج ، حيث المؤسسة العامة لاستصلاح الأراضي سيكون التطبيق كبيرة.ولكن أذكر لكم أيضا الحاجة إلى استخدام الخريطة جزء من خريطة/خفض التي تحتاج إلى مسح 10 ملايين الوثائق.أنا غير متأكد من أنك سوف تجد الحل الذي سوف تفحص 10M الوثائق و العودة النتائج في الأزياء على الانترنت (في ميلي ثانية واحدة نطاق).ولكن حل آخر هو أيضا النظر في HBase.هذا يبني على رأس HDFS ويسمح لك لتشغيل الخريطة خفض الوظائف من النوع الذي تريد الملايين من البنود الصغيرة.لكن المهمة لن تكون submittable والانتهاء في أي مكان بالقرب من الوقت الذي كنت أبحث عنه.

لدي حاليا اختبار HBase مع عناصر RSS (2M بنود عدة كيلو بايت في البند).مجموع DB حجم ~5Gb.هناك العديد من الوظائف التي تعمل ضد هذا DB مسح كافة العناصر ومن ثم إخراج النتائج.الكتلة سوف تفحص العناصر في ~5,000 / الثانية, لكنه لا يزال يأخذ حوالي 10 دقائق لإكمال المهمة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top