मैं स्पार्क और कैसंड्रा स्पार्क कनेक्टर का उपयोग कर स्ट्रीम डेटा को कैसंड्रा में सहेजने का प्रयास करता हूं।डेटास्टैक्स स्पार्क कनेक्टर का उपयोग कर कैसंड्रा में शून्य मानों को सहेजें
बनाएँ मॉडल कक्षा::
public class ContentModel {
String id;
String available_at; //may be null
public ContentModel(String id, String available_at){
this.id=id;
this.available_at=available_at,
}
}
मानचित्रण स्ट्रीमिंग सामग्री मॉडल के लिए:
JavaDStream<ContentModel> contentsToModel = myStream.map(new Function<String, ContentModel>() {
@Override
public ContentModel call(String content) throws Exception {
String[] parts = content.split(",");
return new ContentModel(parts[0], parts[1]);
}
});
सहेजें:
मैं निम्नलिखित की तरह कुछ बनाया
CassandraStreamingJavaUtil.javaFunctions(contentsToModel).writerBuilder("data", "contents", CassandraJavaUtil.mapToRow(ContentModel.class)).saveToCassandra();
हैं रों
com.datastax.spark.connector.types.TypeConversionException: Cannot convert object null to struct.ValueRepr.
वहाँ स्पार्क कैसेंड्रा कनेक्टर का उपयोग कर शून्य मान स्टोर करने के लिए एक रास्ता है: ome मूल्यों null
मैं निम्नलिखित त्रुटि मिलती है कर रहे हैं?
मुझे ऐसा नहीं लगता है। मैंने डेटास्टैक्स के जावा मैपिंग ड्राइवर का उपयोग करके कैसंड्रा टेबल में शून्य मान डालने का प्रयास किया है और यह सफल है, भले ही कॉलम का प्रकार int और float हो। और कैसंद्रा भी शून्य दिखाता है और शून्य देता है, इसलिए कथन "कैसंद्रा अवधारणा एफ नल नहीं है" बहुत विश्वास नहीं है। –