محرك بيانات ضخم موزع للبحث العمودي في C ++.
التكوين المرن . يمكن أن تكون SF1R قابلة للتكوين بشكل كبير لدعم محرك البحث الموزع أو غير الموزعة. بالنسبة للغات الآسيوية ، يمكن تطبيق أنواع مختلفة من المحلل المورفوغرافي أو الرمز المميز المتفاني لتكييفها مع مواقف مختلفة. يمكن تكوين كل مثيل SF1R لدعم مجموعات متعددة ، في حين يمكن مقارنة مفهوم التجميع بـ "الجدول" في RDBMS . يمكن أن تدار المجموعات ديناميكيًا تمامًا دون إيقاف مثيل الخادم.
ثبت تجاريا . تم إثبات SF1R بالكامل في بيئات تجارية مع كل من المواقف المعقدة والتزامن عالي للغاية. من أجل تلبية أنواع مختلفة من المتطلبات ، يتم دعم ثلاثة أنواع من المؤشرات ضمن SF1R ، بما في ذلك فهرس Likene Like File القائم على الفهرس المقلوب ، والفهرس المقلوب في الذاكرة الخالصة مع أداء إزالة الضغط العالي للغاية ، ومؤشر ذاتي مختصرة. هذا نشر عملي لسحابة البحث مع كل من العمودي الموزعة وغير الموزعة ، كلها تقف وراء وكيل HTTP العكسي القائم على NGINX لتوفير إدخال موحد.
مكونات التعدين قابلة للتمديد . في المرحلة المبكرة من SF1R ، هناك عشرات من مكونات التعدين المرفقة ، مثل duplicate detection ، taxonomy generation ، query recommendation ، collaborative filtering ، ... ، إلخ. للحفاظ على المستودع كـ Lite قدر الإمكان ، قمنا ببعض التحسينات لإزالة معظم مكونات التعدين. ومع ذلك ، فإن بنية SF1R قد ضمنت المرونة في تقديم أي منها ، في الواقع ، واحدة من الفهرس--تم تغليفها باستخدام مكون التعدين لوسائل الراحة.
يمكن الوصول إلى المستندات الصينية هنا ، بينما قمنا أيضًا بإعداد التقرير الفني باللغة الإنجليزية.
لقد تحولنا للتو إلى C++ 11 لـ SF1R مؤخرًا ، و GCC 4.8 مطلوب لبناء SF1R في المقابل. لا نوصي باستخدام Ubuntu لبناء المشروع بسبب المراجع المتداخلة بين الكثير من المكتبات. Centos / Redhat / Gentoo / CoreOs هي المنصة المفضلة. تحتاج أيضًا إلى CMake و Boost 1.56 لبناء المستودع. هنا قائمة المستودعات التابعة:
CMake : وحدات CMAKE المطلوبة لبناء جميع مشاريع IzeneCloud C ++.
Izenelib : المكتبات العامة C ++.
ICMA : مكتبة المحلل المورفولوجي الصيني.
IJMA : مكتبة المحلل المورفولوجي الياباني.
Ilplib : مكتبات معالجة اللغة.
IDMLIB : مكتبات تعدين البيانات.
علاوة على ذلك ، هناك بعض مستودعات الطرف الثالث المطلوب:
Tokyocabinet : نادراً ما تستخدم مكتبة قيمة Tokyocabinet ، ولكن كان لدينا تغليف طريقة وصول موحدة.
Google Glog : مكتبة التسجيل التي توفرها Google.
التوفير : هذا اختياري ، إذا كنت ترغب في أن تتمكن SF1R من الاتصال بـ Cassandra ، يلزم التوفير ، وقمنا بإعداد عميل C ++ Cassandra في Izenelib.
بالإضافة إلى ذلك ، هناك مشروعان إضافيان:
NGINX : الوكيل العكسي القائم على NGINX لـ SF1R. هذا هو أول مشروع NGINX الذي يتمكن من التواصل مع ZOOKEEPER للتعرف على طوبولوجيا عقدة SF1R.
Ruby Driver : The Ruby Client for SF1R ، كما أنه يحتوي على مرسل واجهة برمجة تطبيقات الويب للاختبار الغرض.
لاستخدام SF1R ، يجب أن يكون لديك ملفات تكوين موجودة في دليل config . بعد ذلك:
$ cd bin
$ ./CobraProcess -F configيرجى الاطلاع على المستندات لمزيد من الاستخدام.
يتم نشر مشروع SF1R ضمن ترخيص Apache ، الإصدار 2.0: http://www.apache.org/licenses/license-2.0