/ / अजगर वेब फ्रेमवर्क के साथ कैसेंड्रा CQL3 का उपयोग करना - अजगर, डीजेंगो, मॉडल-व्यू-कंट्रोलर, कैसेंड्रा, वेब-फ्रेमवर्क

पाइथन वेब ढांचे के साथ कैसंड्रा सीक्यूएल 3 का उपयोग करना - पायथन, डीजेंगो, मॉडल-व्यू-कंट्रोलर, कैसंड्रा, वेब-फ्रेमवर्क

मैं एक मूवी वेब एप्लिकेशन बनाने की कोशिश कर रहा हूंDjango का उपयोग कर। मैंने कैसंड्रा के साथ बैक एंड के रूप में जाने का फैसला किया। काफी समय तक कैसेंड्रा का अध्ययन करने के बाद मैंने पाया कि थ्रिफ्ट एपीआई अब विरासत हैं और समुदाय CQL 3.0 का उपयोग करने के लिए प्रोत्साहित कर रहा है, हालांकि Django में मुझे cql के किसी भी समर्थन के बारे में पता नहीं है। जहाँ तक मुझे पता है कि वहाँ हैं: https://github.com/vaterlaus/django_cassandra_backend https://github.com/pycassa/pycassa

लेकिन दोनों थ्रिफ्ट एपीआई का पालन करते हैं। इसके अलावा, मैं MongoDB की तरह कैसेंड्रा और Django एकीकरण के कई उदाहरण नहीं ढूंढ सका। मैंने काफी शोध के बाद कैसंड्रा का उपयोग करने का फैसला किया है और सीक्यूएल 3.0 की शक्ति को देखकर मैं अपने डेटाबेस विकल्प को नहीं छोड़ना चाहता हूं। इसके बजाय मैं दूसरे को देखने के लिए तैयार हूं। पायथन, फ्लास्क इत्यादि जैसे पायथन में वेब फ्रेमवर्क। तो उस पर कोई सुझाव? और जैसा कि मैंने पूर्व में Django का उपयोग किया है मैं इसे जारी रखना चाहता हूं, हालांकि Django का सिद्धांत लाभ जो रिलेशनल डेटाबेस के लिए Django ORM है "t" यहां लागू है। वहाँ MySQL और Cassandra Django के साथ इसे काम करने के लिए एकीकृत करने के लिए कोई रास्ता नहीं है? इसके अलावा वहाँ Django के साथ कैसंड्रा की स्थापना के अलावा कोई भी ट्यूटोरियल है जो ट्विसंड्रा उदाहरण के साथ है?

ट्विस्ंड्रा की सेटिंग्सडोम को देखने के अलावा यह कहता है:

DATABASE_ENGINE = "sqlite3"
DATABASE_NAME = "dev.db"

संपर्क : https://github.com/twissandra/twissandra/blob/master/settings.py

यदि यह कैसंड्रा पर काम कर रहा है तो यह sqlite3 को कैसे निर्दिष्ट करता है? क्या मुझे यहां किसी तरह का एकीकरण याद आ रहा है?

उत्तर:

जवाब के लिए 2 № 1

चूँकि आप "एक ऑब्जेक्ट मैपर की तलाश में हैं, मैंcqlengine को देखने का सुझाव दें। (अस्वीकरण: यह मेरी परियोजना है :)) यह 2 साल से अधिक समय से विकास में है और काफी बड़ी कंपनियों द्वारा इसका उपयोग किया जा रहा है।

http://cqlengine.readthedocs.org/en/latest/

Django के साथ उपयोग करने के लिए, देखें https://pypi.python.org/pypi/django-cassandra-engine/


उत्तर № 2 के लिए 1

यहां दो विषय हैं।

एक बेहतर कैसेंड्रा ड्राइवर के बारे में

https://github.com/datastax/python-driver, यह CQL का उपयोग करता है, यह सरल और शक्तिशाली है।

एक Django / Cassandra के बारे में

वैसे, यहाँ कोई सरल उपाय नहीं है। वहां एक है django-nonrel परियोजना लेकिन यह मानगो और जीएई पर केंद्रित है।

मैं आपको सलाह दूंगा कि आप अपने अधिकांश सामानों के लिए RDMS (MySQL / PostgreSQL) का उपयोग करें और आवश्यक होने पर केवल कैसेंड्रा का उपयोग करें।

हां आप बवंडर जैसे अन्य वेबफ्रेमवर्क का भी उपयोग कर सकते हैं, लेकिन सत्र, प्रमाणीकरण, प्रपत्र जैसी चीजों को संभालना आपके लिए उपयोग किए जाने पर दर्दनाक है।

ट्विसेंड्रा sqlite3 का उपयोग केवल इसलिए करता है क्योंकि django की आवश्यकता है काम करने के लिए एक डेटाबेस का उपयोग करने के लिए। तो वहाँ कोई django / कैसेंड्रा एकीकरण बिल्कुल नहीं है।


यह आपके प्रश्न के दायरे से बाहर है: यदि आप एक मूवी वेब ऐप बनाना चाहते हैं, तो आप शायद कोर डेटा के लिए "t need cassandra" नहीं करेंगे। आपको शायद केवल रेटिंग, स्टैटिस्टिक्स, शायद स्टोरेज जैसी चीजों के लिए इसकी आवश्यकता होगी। कोर डेटा के लिए, एक मानक RDMS शायद बहुत होगा। बेहतर।