স্থানিক ডেটার জন্য একটি এপিআই ডিজাইন করা


10

আমি একটি এপিআই তৈরির চেষ্টা করার বিষয়ে বিবেচনা করছি যাতে আমি বিশ্লেষণের জন্য কিছু কিছু স্থানিক ডেটাসেট সহকর্মীদের কাছে উপলব্ধ করতে পারি।

আমার কাজের অংশটি হ'ল ডেটা বিশ্লেষণ এবং প্রস্তুত করা যা পরে অন্যরা আরও বিশ্লেষণের জন্য ব্যবহার করতে পারে। কাজটি (বর্তমানে একটি ছোট স্কেল এবং কম পরিশীলিত অবস্থায়) ওয়াকস্কোরের সমান তবে কিছু প্রচুর ডেটাসেট জড়িত। আমি কীভাবে মূল ডেটা ভাগ করতে পারি তার উপর ক্রমবর্ধমান বিধিনিষেধ রয়েছে তবে আমার ডেরাইভেটিভ কাজটি ভাগ করে নেওয়া যায়। আমি আমার বিশ্লেষণের ফলাফলগুলি কীভাবে সবচেয়ে ভাল ভাগ করে নেব সে সম্পর্কে ভাবছিলাম (বড় ডেটাসেটগুলি পাস করার বাইরে) এবং ভেবেছিলাম যে কোনও এপিআই এক পদ্ধতির হবে। কি ধরণের জিনিস, আমি একটি এপিআই বানানোর সময় চিন্তা করা উচিত? আমি অনুসরণ করতে পারেন যে নকশা নির্দিষ্টকরণ আছে?

আমার দৃষ্টি এখনকার চেয়ে কিছুটা বেশি পুরুন্দময় শোনাচ্ছে তবে আমার মনে হয় এই কাজের শুরুতে এটি বিবেচনা করা একটি দরকারী কাঠামো হবে।


1
আপনি কি আর্কজিআইএস ফ্লেক্স ভিউয়ারের মতো বাক্স API এর বাইরে বা এমন কিছু যা আপনি আরও কাস্টমাইজ করতে চান?
আর্টওয়ার্ক

আমি কিছু (বা জিনিস) চেষ্টা এবং কাস্টমাইজ করতে চাই। আমি বর্তমানে ডেটা স্টোরেজ এবং বিশ্লেষণ, এবং ম্যাপসভারের জন্য পোস্টজিআইএস ব্যবহার করছি (তবে কোনওভাবেই এটি বিশেষজ্ঞের ব্যবহার না করে)। আমি ভাবছি যে এই পদক্ষেপটি অন্যকে অ্যাক্সেসযোগ্য করে তুলবে এবং আমার কী শিখতে হবে তা নির্ধারণ করার জন্য পরবর্তী পদক্ষেপটি কী হবে।
djq

উত্তর:


7

এপিআই দ্বারা, আমি অনুমান করি আপনি গুগল ম্যাপস এপিআইয়ের মতো এইচটিটিপি পোস্ট / জিইটি টাইপ অ্যাফেয়ারের মাধ্যমে আপনার ডেটাতে কোনও ধরণের নেটওয়ার্ক অ্যাক্সেস বলতে চাইছেন? এটি রাস্টার বা ভেক্টর ডেটা হবে? আমি এই আলোচনার উদ্দেশ্যে ভেক্টর ধরে নেব। এটি আসলে একটি অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেসের পরিবর্তে কেবল একটি যোগাযোগ প্রোটোকল।

আপনাকে স্ক্র্যাচ থেকে কোনও ডিজাইনের দরকার পড়বে না, কারণ প্রচুর স্ট্যান্ডার্ড প্রোটোকল রয়েছে (প্রতি সেপি এপিআই এর চেয়ে বেশি, আমি জিনিসগুলি এপিআই না করার সময় কল করার বিষয়ে আমার কিছুটা বাগবার রয়েছে, তবে আমি আপনাকে জোর করব না! )। আপনি যদি আপনার ক্লায়েন্টদের কাছে কেবল পঠনযোগ্য ভেক্টর ডেটা সরবরাহ করতে আগ্রহী হন তবে আপনার কেবল একটি ডাব্লুএফএস সার্ভারের দরকার যা আপনার ডাটাবেসের সামনে বসে। আমি অতীতে জিও সার্ভার ব্যবহার করেছি , তবে আমি টিনিওএসের লাইট ওয়েইগনেসকে পছন্দ করি । উভয়ই একই কাজ করে: উত্পন্ন ডেটাতে আপনার ডাটাবেস অ্যাক্সেস করতে তাদের কনফিগার করুন, ওয়েব সার্ভারের অংশ হিসাবে এগুলি চালিত করুন ( অ্যাপাচি সাধারণ, তবে আমি লাইটটিপিডি পছন্দ করি)), এবং সেখানে আপনি এটা আছে. কিউজিআইএস একটি ডাব্লুএফএস সার্ভার থেকে ডেটা লোড করতে পারে এবং সন্দেহাতীতভাবে আর্কও করতে পারে। ব্রাউজার-ভিত্তিক সমাধানের জন্য ওপেনলায়ার্সে ডাব্লুএফএসের রেন্ডারিং ক্যাপিবিলাইটও রয়েছে। নিম্ন স্তরে, জিডিএল ডাব্লুএফএস থেকে ডেটা রূপান্তর করতে কোনও ভেক্টর ফর্ম্যাট ওজিআর সমর্থন করে।

আপনি যদি সম্পাদনা করার ক্ষমতা চান তবে জিও সার্ভার এবং টিনিওএস উভয়ই ডাব্লুএফএস-টি সমর্থন করে, যা আপনার ব্যবহারকারীদের তাদের বিশ্লেষণগুলি আপনার সার্ভারে ফিরে যেতে সক্ষম করে।

আপনার নিজস্ব এপিআই তৈরি করা এই মানদণ্ডগুলিকে প্রথম স্থানে রাখার উদ্দেশ্যটি সত্যই হ্রাস করে, যদি না আপনি অবিশ্বাস্যভাবে বিশেষজ্ঞ হন এবং আপনার যেমন পারফরম্যান্স এবং সুনির্দিষ্ট প্রয়োজনীয়তা না থাকে ... তবে আমি ভাবতে পারি এটাই about যুক্তিসঙ্গত পরিমাণ সংস্থান ছাড়াই এই রুটে যাওয়া একটি পরিপূর্ণ - যদিও অসম্ভব নয় - কাজ।


আপনার মতামতের জন্য আপনাকে ধন্যবাদ - সম্ভবত আমি আমার প্রশ্নে ভুলভাবে এপিআই ব্যবহার করেছি। আমি একটি ডাব্লুএমএস এবং ডাব্লুএফএস উভয় পরিষেবাতে আগ্রহী (রাস্টার এবং ভেক্টর উভয়); আপনার ব্যাখ্যাটি খুব কার্যকর কারণ আমি এটি সম্পর্কে আরও চিন্তা করি।
djq

6

আপনার কাছে কয়েকটি বিকল্প রয়েছে; আপনার পছন্দটি আপনার ডেটা মডেল, পরিবেশন করার উপাত্তের ধরণ, অভিযুক্ত ব্যবহারের মডেল, অ্যাক্সেস নিয়ন্ত্রণের পাশাপাশি বিতরণের প্ল্যাটফর্মের উপর নির্ভর করবে (ওয়েব, এইচটিএমএল, জাভা সার্ভার, আইআইএস, স্ট্যাটিক ডেটা সেট)।

  1. আপনার ডেটা সেটটি গ্রাস করতে একটি বিদ্যমান পণ্য প্রসারিত করুন। আপনি আপনার (বা উত্সর্গীকৃত?) কম্পিউটারে একটি জিও সার্ভার উদাহরণ হোস্টিংয়ের দিকে তাকিয়ে দেখতে পারেন এবং আপনার ডেটা সেভাবে বিতরণ করতে পারেন। যদি আপনার ডেটা এমন কোনও ফর্ম্যাট না হয় যা জিও সার্ভার বুঝতে পারে তবে সেই ক্ষমতাটি সরবরাহ করার জন্য আপনার কাছে জাভা প্যাকেজ লেখার বিকল্প রয়েছে। সুবিধাটি হ'ল আপনার কাছে ভিজ্যুয়ালাইজেশন (ডাব্লুএমএস) এবং ফিচার ম্যানিপুলেশন / ডাউনলোড (ডাব্লুএফএস) উভয়ের জন্য স্থানিক তথ্য সরবরাহ করার জন্য একটি ভাল সংজ্ঞায়িত মান রয়েছে পাশাপাশি জিওচ্যাচিং এবং টাইলিংয়ের মতো অন্যান্য সুবিধাগুলি রয়েছে।
  2. আপনার এপিআই বিকল্পটি নিন এবং ব্যবহারকারীরা কীভাবে এটির সাথে ইন্টারফেস করে তার উপর আপনার সম্পূর্ণ নিয়ন্ত্রণ রয়েছে। যা আপনার প্রথম কার্যটিতে আসে, আপনি কীভাবে ব্যবহারকারীদের আপনার ডেটার সাথে ইন্টারঅ্যাক্ট করতে চান তা নির্ধারণ করুন। আপনার ডেটাতে এই ইন্টারফেসটি সাফল্য বা ব্যর্থতার মধ্যে কী হবে। যদি আপনার ইন্টারফেসটি খুব বেশি উন্মুক্ত থাকে, তবে এটি জটিল এবং অব্যবহারযোগ্য, খুব সাধারণ এবং সীমাবদ্ধ, ধীর বা গ্রহণযোগ্য হতে পারে। যেভাবেই হোক, ব্যবহারকারীরা কীভাবে আপনার ডেটা অ্যাক্সেস করতে চান তা নির্ধারণ করা এবং ব্যবহারকারীরা আপনার ডেটা যেভাবে ব্যবহার করতে চান তা গুরুত্বপূর্ণ হবে।

ভাগ্য ভাল, একটি এপিআই কোনও ছোট্ট উদ্যোগ নয় কারণ আপনাকে মুক্তির পদ্ধতি এবং চক্র, বাগ ফিক্সগুলি, পরীক্ষার বিষয়টি বিবেচনা করতে হবে। এই সমস্ত ব্যবহারযোগ্যতা অবদান। আমি বলছি না এটি করবেন না, এটি দুর্দান্ত অভিজ্ঞতা হবে। যদিও একটি বিদ্যমান পণ্য উপর নির্মিত খুব ইতিবাচক অভিজ্ঞতা হতে পারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.