يعادل CASSANDRA API "اختيار ... من ... حيث معرف في (" ... "،" ... "،" ... ")؛"
سؤال
افترض مجموعة البيانات التالية:
id age city phone
== === ==== =====
alfred 30 london 3281283
jeff 43 sydney 2342734
joe 29 tokyo 1283881
kelly 54 new york 2394929
molly 20 london 1823881
rob 39 sydney 4928381
للحصول على مجموعة النتائج التالية ..
id age phone
== === =====
alfred 30 3281283
joe 29 1283881
molly 20 1823881
.. باستخدام SQL واحد سيصدر ..
SELECT id, age, phone FROM dataset WHERE id IN ('alfred', 'joe', 'molly');
ما هي دعوة Cassandra API المقابلة التي من شأنها أن تسفر عن نفس النتيجة المحددة في أمر واحد؟
المحلول
يدعم CQL (لغة الاستعلام التي تشبه SQL ل Cassandra) الآن:
SELECT ... WHERE keyalias IN ('key1', 'key2', 'key3', ...);
نصائح أخرى
كنت تفعل multiget_slice w / مفاتيح من ألفريد، جو، وملي، و slicePredicate column_names_names من الهوية، العمر، الهاتف
يمكن أن يتم تصميم ما يعادلها كاساندرا كما هو موضح أدناه:
Users = { //this is a ColumnFamily
"alfred": { //this is the key to this Row inside the CF
"age":"30",
"city":"london",
"phone":"3281283"
}, // end row
// more rows...
}
حيث "Alfred" هو مفتاح (الصف) والصف يحتوي على ثلاثة أعمدة؛ العمر والمدينة والهاتف. (حذف حقل الطابع الزمني (للبساطة) للأعمدة الثلاثة)
لا تنتمي إلى StackOverflow