جزءا لا يتجزأ التناظرية من CouchDB نفس سكليتي ل SQL Server
-
10-07-2019 - |
سؤال
أنا أحب فكرة الوثيقة الموجهة قواعد البيانات مثل CouchDB.أنا أبحث عن البساطة التناظرية.
متطلبات بلدي هو فقط:
- persistance التخزين المخطط أقل من البيانات ؛
- بعض بسيطة في proc quering;
- من الجيد أن يكون المعاملات الإصدارات;
- روبي API ؛
- خريطة/تقليل هي أيضا جيدة أن يكون ؛
- يجب أن تعمل على استضافة مشتركة
ما لا تحتاجين للراحة/HTTP واجهات (سيتم استخدامه في proc).أيضا لا تحتاج كل قابلية الأشياء.
المحلول
حل بسيط جدا سيكون PStore من روبي المكتبة القياسية.يجب أن نلتقي تقريبا جميع الاحتياجات الخاصة بك:
- PStore مخازن روبي الهرمية الكائن في الملفات بحيث يمكنك بسهولة استخدام التجزئة مثل الهياكل سيكون لديك في CouchDB
- يمكنك الوصول إلى محتويات PStore مع API بسيط
- وقد المعاملات ، ولكن لا الإصدارات بقدر ما أعرف
- نعم
- يمكنك استخدام روبي خريطة وحقن وظائف
- كل ما تحتاجه هو الوصول إلى نظام الملفات
على سبيل المثال:
إدراج البيانات في المتجر:
require 'pstore'
store = PStore.new("/tmp/store")
store.transaction do
store["products"] = [{:name => "Test", :price => 100}
{:name => "Bla", :price => 120}
{:name => "Oink", :price => 300}]
end
الاستعلام عن مجموع أسعار جميع المنتجات:
store.transaction do
store['products'].map {|p| p[:price]}.inject {|sum, p| sum + p}
end
مزيد من المعلومات في هذا بلوق وظيفة
نصائح أخرى
يبدو أنك تحتاج بيركلي DB.انه يفعل كل شيء لك قائمة باستثناء خريطة/الحد.
لا تنتمي إلى StackOverflow