2012-02-07 6 views
7

के माध्यम से अमेज़ॅन के डायनेमो डीबी पर डेटा एक्सेस करना 1) क्लाइंट एक्सेस: क्लाइंट साइड जावास्क्रिप्ट (आरईएसटी/अजाक्स/jQuery) का उपयोग करके डायनेमो डीबी पर सीआरयूडी संचालन करने के लिए वैसे भी है?जावास्क्रिप्ट

मुझे पता है कि अमेज़ॅन को .NET और Java के लिए समर्थन है।

2) सर्वर एक्सेस: क्या सर्वर पर जावा/.NET इंस्टॉल किए बिना सर्वर साइड जावास्क्रिप्ट (Node.js) का उपयोग करके हम डायनेमोडीबी तक पहुंच सकते हैं?

उत्तर

16

अद्यतन 2012-12-05

अब है एक अधिकारी AWS SDK for Node.js, जानकारी के लिए परिचयात्मक पोस्ट AWS SDK for Node.js - Now Available in Preview Form देखते हैं, यहाँ शुरू में समर्थित सेवाएं हैं:

एसडीके Amazon S3 का समर्थन करता है, Amazon EC2 , Amazon DynamoDB, और Amazon Simple Workflow Service, अतिरिक्त सेवाओं के समर्थन के साथ ड्राइंग सूअर पर घ। [जोर मेरा]


अद्यतन 2012-02-27

Wantworthy, अपनी शुरुआत की तारीख के बाद Amazon DynamoDB एक सप्ताह तक पहुँचने, इस प्रकार 2 कवर) और साथ के लिए एक Node.js मॉड्यूल लागू किया गया है देखें dynode:

डिनोड बुद्धिमान काम करने का एक आसान और आसान तरीका बनने के लिए डिज़ाइन किया गया है एच अमेज़ॅन डायनेमो डीबी सेवा। अमेज़ॅन का http एपीआई जटिल है और यह स्पष्ट नहीं है कि इसके साथ बातचीत करने के लिए कैसे। इस ग्राहक का उद्देश्य डायनेमो डीबी के साथ काम करने का एक स्पष्ट तरीका प्रदान करना है, लेकिन पर अपने तरीके से या बिना डायनामो डीबी के साथ आप क्या कर सकते हैं सीमित कर सकते हैं।


अद्यतन 2012-02-11

Peng Xie अपनी शुरुआत की तारीख मूल रूप में Amazon DynamoDB तक पहुँचने, इस प्रकार 2 कवर) पहले से ही के लिए एक Node.js मॉड्यूल लागू किया गया है, dynamoDB देखें:

डायनेमोडीबी संचार के लिए जेएसओएन का उपयोग करता है। [...] यह मॉड्यूल अनुरोध को लपेटता है और प्रमाणीकरण का ख्याल रखता है। उपयोगकर्ता अनुरोध को तैयार करने और परिणाम लेने के लिए के लिए ज़िम्मेदार होगा।


दुर्भाग्य से एडब्ल्यूएस के लिए कोई आधिकारिक/पूरा जावास्क्रिप्ट एसडीके आज के रूप में (AWS Software Development Kits और boto [Python] उपलब्ध प्रसाद के लिए देखें)।

जावास्क्रिप्ट में कई एडब्ल्यूएस सेवाओं के लिए सौभाग्य से सभ्य कवरेज नोड द्वारा प्रदान किया जाता है।जेएस लाइब्रेरी aws-lib पहले से ही, जो तदनुसार डायनेमो डीबी जोड़ने के लिए एक अच्छा प्रारंभिक बिंदु होगा। आज के रूप में अनसुलझा फीचर अनुरोध Add support for DynamoDB को पहले से ही दायर किया गया है।

इसके अलावा, एडब्ल्यूएस मंच उपयोगकर्ता gmlvsk3 हाल ही में समर्पित JavaScript interface for DynamoDB लागू किया गया है, लेकिन माना जाता है कि आप जरूरत [एक] जावा रनटाइम क्योंकि यह Mozilla Rhino जावास्क्रिप्ट इंजन पर आधारित है यह को चलाने के लिए, - मैं कोड समीक्षा नहीं की है विस्तार से अभी तक (पहली नजर में यह थोड़ा अपरिपक्व दिखता है, उदाहरण के लिए aws-lib की तुलना में, लेकिन निश्चित रूप से आपकी आवश्यकताओं को कवर कर सकता है), इसलिए आपको इसे स्वयं देखना चाहिए।

अंत में, आप को लागू जावास्क्रिप्ट HTTP Requests to Amazon DynamoDB खुद निश्चित रूप से (विवरण के लिए API Reference for Amazon DynamoDB) कर सकते हैं:,

आप एडब्ल्यूएस SDK का उपयोग नहीं करते हैं आप अमेज़न DynamoDB का उपयोग कर HTTP पर कार्रवाई कर सकते हैं POST अनुरोध विधि। POST विधि आपको अनुरोध के शीर्षलेख में ऑपरेशन निर्दिष्ट करने की आवश्यकता है और अनुरोध के शरीर में JSON प्रारूप में ऑपरेशन के लिए डेटा प्रदान करता है।

0

2) हम डीडीबी लॉन्च तिथि के बाद से भी काम कर रहे हैं। उसके प्रमुख विशेषताओं में से एक सादगी/प्रदर्शन और कैसे पास यह है (व्यवहार पुन: प्रयास, आदि) अमेज़न आधिकारिक जावा/पीएचपी पुस्तकालयों के लिए कर रहे हैं:

https://github.com/teleportd/node-dynamodb

यह सफलतापूर्वक 100 + लिखने के साथ विभिन्न स्थानों पर उत्पादन में प्रयोग किया जाता है/एस (teleportd पर)। इसके अतिरिक्त हम लाइब्रेरी के क्लाइंट कोड के कुशल परीक्षण को सक्षम करने के लिए एक मॉक किए गए संस्करण पर काम कर रहे हैं।

1

मैंने वेब अनुप्रयोगों में एडब्ल्यूएस एसडीके के साथ काम करना आसान बनाने के लिए Dino नामक एक मॉड्यूल बनाया है। आरईएसटी इंटरफ़ेस के माध्यम से jQuery पर अपना डेटा बेनकाब करने के लिए आप Restify जैसे कुछ का उपयोग कर सकते हैं।

मान लीजिए कि आप किसी उपयोगकर्ता के लिए ब्लॉग पोस्ट के पेज प्रदर्शित करना चाहते हैं। डिनो और Restify का उपयोग करना, आप क्या करेंगे निम्नलिखित:

server.get('/posts/:user_id', function(req, res, next){ 
    Post.find({ 
     match: { 
      user_id: req.params.user_id 
     }, 
     skip: req.params.skip || 0, 
     take: req.params.take || 10 
    }, function(err, posts){ 
     return res.send(posts.toJSON()); 
    }); 
}); 
+0

छोड़कर ठीक से अंकन ले रहे हैं? यह कैसे लागू हुआ? पूर्ण स्कैन? –

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