2009-09-25 15 views
5

तो मैं अपने मौसम पूर्वानुमान डेटा (10000 स्थानों, 40 पैरामीटर प्रत्येक, अगले 14 दिनों के लिए प्रति घंटा मूल्य = लगभग 130 मिलियन मूल्यों) तक पहुंचने के लिए एक webservice पर काम कर रहा हूं।बड़े डेटा सेट के संदर्भ में एक विश्वसनीय संसाधन क्या है, i.E. मौसम डेटा?

तो मैंने रीस्टफुल सेवाओं और इसकी विचारधारा के बारे में सब कुछ पढ़ा।

तो मैं समझता हूं कि एक यूआरएल एक रिसोर्स को संबोधित कर रहा है।

लेकिन मेरे मामले में एक रिसोर्स है?

सामान्य उपयोग केस यह है कि आप एक या अधिक स्थान पर एक समय पर दो पैरामीटर के लिए डेटा प्राप्त करना चाहते हैं। तो स्पष्ट रूप से प्रत्येक मूल्य को अपना यूआरएल देना प्रैक्टिकल नहीं है और इसके परिणामस्वरूप सैकड़ों अनुरोध होंगे। मुझे यह महसूस हो रहा है कि मेरी विशिष्ट समस्या अस्थिर रूप से रीस्टफुल पैटर्न में फिट नहीं होती है।

अद्यतन: स्पष्ट करने के लिए: सेवा के दो उपयोग पैटर्न हैं। 1. कच्चा डेटा; कई स्थानों और मानकों के लिए डेटा की पंक्तियां और पंक्तियां।

  1. व्याख्या डेटा; कच्चे डेटा प्रतीकों में गणना की जाती है (उदाहरण के लिए सन & बादल) और अन्य पैरामीटर।

वहाँ एक 'पूर्वानुमान' नहीं है। विभिन्न ग्राहकों के डेटा के लिए अलग-अलग ज़रूरतें हैं।

कारण मुझे लगता है कि यह बाकी पैटर्न में फ़िट नहीं होता है, कि मैं वास्तव में एक 'पूर्वानुमान' ressource हो सकता है, जबकि, मैं अभी भी अनुरोध पैरामीटर का एक बहुत प्रस्तुत करने के लिए किया है। इसलिए एक रिसोर्स पर एक सरल जीईटी अनुरोध काम नहीं करता है, मैं जगह पर पोस्टिंग डेटा समाप्त करता हूं।

उत्तर

3

तो मैं हमारे मौसम पूर्वानुमान डेटा तक पहुंचने का वेब सेवा पर काम कर रहा हूँ (10000 स्थान, 40 पैरामीटर प्रत्येक, अगले 14 दिनों के लिए प्रति घंटा मूल्य = लगभग 130 मिलियन मूल्य)। ... लेकिन मेरे मामले में एक रिसोर्स क्या है?

यह आपकी समस्या डोमेन के विवरण पर निर्भर करता है। आरईएसटी से बचने के लिए बस एक बड़ी मात्रा में डेटा नहीं है। उस डेटा को मॉडल और एक्सपोज़ करने के लिए स्मार्ट तरीके और गूंगा तरीके हैं।

जैसा कि आप सही ढंग से देखते हैं, इस बिंदु पर आपका मुख्य लक्ष्य यह समझना चाहिए कि वास्तव में संसाधन क्या है। मौसम चैनल का पालन करने के लिए मौसम पूर्वानुमान के बारे में केवल इतना ही जानते हुए, मैं यहां बहुत मदद नहीं करूंगा। यह आपके जैसे डोमेन विशेषज्ञों के लिए कॉल करने के लिए है।

यदि आप थोड़ी अधिक विस्तार से व्याख्या करना चाहते हैं तो प्रमुख डोमेन अवधारणाओं के साथ आप काम कर रहे हैं, यह विशिष्ट सलाह देने के लिए थोड़ा आसान बना सकता है।

उदाहरण के लिए, एक संसाधन पूर्वानुमान हो सकता है। जब मौसम के लोग पूर्वानुमान के बारे में बात करते हैं, तो कौन से शब्द आते रहते हैं? जब आप छोटे तत्वों में पूर्वानुमान को तोड़ने के बारे में सोचते हैं, तो आप टुकड़ों का वर्णन करने के लिए किस शब्द का उपयोग करते हैं?

इस प्रक्रिया को बार-बार करें, और आप शायद महत्वपूर्ण शर्तों की एक सूची बनाने में सक्षम होंगे। यह न भूलें कि ये शर्तें चीजों या कार्यों का वर्णन कर सकती हैं। इस शब्द का वास्तव में क्या अर्थ है, इस बारे में सोचें कि आप उन्हें किस मॉडल का उपयोग कर सकते हैं, उन्हें कैसे एकत्र किया जा सकता है।

इस बिंदु पर आपके पास कुछ ऐसी चीजें हैं जो आप एक रेस्टस्टेबल सिस्टम बनाने शुरू कर सकते हैं - लेकिन पहले नहीं।

यह न भूलें कि एक विश्वसनीय प्रणाली HTTP में लिपटा डेटा डंप नहीं है - यह hypertext-driven सिस्टम है।

यह भी नहीं भूलें कि media types आपके सर्वर और उसके ग्राहकों के बीच संपर्क का बिंदु है। एक मीडिया प्रकार केवल आपकी कल्पना से सीमित है और यदि आप इसके बारे में चतुर हैं तो किसी भी आकार के डेटासेट मॉडल कर सकते हैं। इसमें एक्सएमएल, जेएसओएन, वाईएएमएल, ब्लूम फ़िल्टर जैसे बाइनरी तत्व, या समस्या के लिए जो भी काम हो सकता है।

+0

आपके इनपुट के लिए धन्यवाद, मैंने अपनी पोस्ट में थोड़ा सा स्पष्टीकरण देने की कोशिश की। –

+1

@ क्रिस्टियन, आपका संपादन इंगित करता है कि कोई भी "पूर्वानुमान" नहीं है - कोई समस्या नहीं है। लेकिन असली सवाल यह है कि: डोमेन अवधारणा के रूप में "पूर्वानुमान" कितना महत्वपूर्ण है? क्लाइंट की ज़रूरतों के आधार पर एक ही संसाधन में कई प्रतिनिधित्व हो सकते हैं, लेकिन संसाधन एक आम तौर पर लागू डोमेन अवधारणा है जिसे इसे अपने प्रतिनिधित्व के स्वतंत्र रूप से मॉडलिंग किया जा सकता है। इसे रखने का एक और तरीका: अपनी सेवा का उपयोग कर ग्राहक की कल्पना करें। यह क्या है कि वे बनाने की कोशिश कर रहे हैं या वे क्या करने की कोशिश कर रहे हैं? –

+0

हम्म, इसके लिए धन्यवाद, मैं अब थोड़ा और स्पष्ट रूप से देख सकता हूं ... –

0

शायद आप रिसोर्स के रूप में पूर्वानुमान का उपयोग कर सकते हैं और xlink के साथ अच्छी तरह से दानेदार सेवाओं के लिए गहरे जा सकते हैं।

0

यह कुछ इस तरह करना संभव होगा, जब से तुम इतने सारे पैरामीटर तो मैं सोच रहा था कि अगर किसी भी तरह आप इसे आईडी/पैरामीटर कॉम्बो का मिश्रण से संबंधित यूआरएल आकार घटाने के लिए कर सकते हैं

/WeatherForeCastService// दिन/घंटे

0
www.weatherornot.com/today/days/x  // (where x is number of days) 
www.weatherornot.com/today/9am/hours/h // (where h is number of hours) 
1

सबसे पहले, वहाँ कोई बार और के लिए सभी सही जवाब है। मदद कर सकता है कि आप परिदृश्यों को कम -

प्रत्येक मान्य url कुछ है कि समझ में आता है, क्वेरी आपके डेटा को खोजते लोगों के लिए क्वेरी रूपों प्रदान करने के लिए समकक्ष के रूप में उनमें से सोचना है।

यह व्यक्तिगत स्वाद और संभवतः टूलकिट आप क्या बुनियादी url पथ में चला जाता है और क्या मानकों इनकोड करने के लिए के रूप में उपयोग करते हैं, की बात है। बहस तत्व बनाम विशेषताओं में मूल्य डालने पर एक्सएमएल बहस की तरह थोड़ा सा है। यह हमेशा तर्कसंगत या तर्कसंगत निर्णय नहीं होता है और न ही आपके निर्णय पर सभी लोग उनकी टिप्पणियों में दयालु होंगे।

यदि आप रेल की तरह बैकएंड का उपयोग कर रहे हैं, तो यह कुछ conventions का तात्पर्य है। यहां तक ​​कि यदि आप रेल का उपयोग नहीं कर रहे हैं, तो यह तब तक काम करने के लिए समझ में आता है जब तक आपके पास बदलने का कोई मजबूत कारण न हो।इस तरह, ग्राहकों लेखन लोग रेल आधारित सेवाओं से बात करने की तुम्हारा समझने में अधिक आसान मिलेगा और यह प्रलेखन समय पर बचाता है ;-)

+0

मुझे इन सम्मेलनों के बारे में पता है, मैं नहीं देख सकता कि उन्हें मेरे मामले में कैसे लागू किया जाए। –

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