2013-02-04 11 views
6

में लेआउट नमूना() फ़ंक्शन फ़ंक्शन Spark में फ़ंक्शन का उपयोग करने का प्रयास कर रहा है और पैरामीटर हैं - डेटा, नमूने की संख्या और बीज। लेकिन मैं बीज का उपयोग नहीं करना चाहता। मैं हर बार एक अलग जवाब चाहते हैं। मैं यह समझने में सक्षम नहीं हूं कि मैं यह कैसे कर सकता हूं। मैंने बीज मूल्य के रूप में System.nanoTime का उपयोग करने का प्रयास किया लेकिन मुझे एक त्रुटि मिली क्योंकि मुझे लगता है कि डेटा प्रकार मेल नहीं खाता था। क्या takeSample() के समान कोई अन्य कार्य है जिसका प्रयोग बीज के बिना किया जा सकता है? या क्या कोई अन्य कार्यान्वयन है जिसका उपयोग मैं takeSample() के साथ कर सकता हूं ताकि मुझे हर बार एक अलग आउटपुट मिल सके।स्पार्क

उत्तर

7

System.nanoTime, प्रकार long की है बीज takeSample से उम्मीद प्रकार Int की है। इसलिए, takeSample(..., System.nanoTime.toInt) काम करना चाहिए।

+1

स्केल '.IINT' में' .intValue' –

+0

@ रेगिज़ेन-गिल्स धन्यवाद, को सही किया जाना चाहिए। –

1

System.nanoTime लंबे समय तक लौटाता है, जबकि टेक नमूना एक इंट की अपेक्षा करता है।
आप scala.util.Random.nextInt को लेस नमूना फ़ंक्शन के लिए बीज मान के रूप में फ़ीड कर सकते हैं।

संबंधित मुद्दे