ক্যাশে অ্যাপ্লিকেশন জন্য MemoryMapped ফাইল এবং বি গাছ

এটি একটি ধারণা, আমার এখনো কোনও কোড নেই, আমার কিছু নকশা পরামর্শ দরকার। আমি C# এ MemoryMappedFile ব্যবহার করে একটি ক্যাশে (প্রথম উদাহরণে অ বিতরণিত) বাস্তবায়ন করব। আমি মনে করি একটি বি-গাছকে অসহায় কাঠামো হিসাবে ভাল করা ভাল, তবে এটি বিতর্কিত। তাই প্রশ্ন হল:

  • অবিলম্বে সমর্থন একটি মেমরি ম্যাপ করা ফাইলগুলির মধ্যে দ্রুত অনুসন্ধান আইটেমগুলিতে ব্যবহার করার জন্য বি-ট্রি একটি ভাল কৌশল?
  • মেমরি ম্যাপ করা ফাইলগুলির সাথে আমাদের কি টিপ এবং কৌশল আছে? দৃশ্যটি কত বড় হতে পারে, যখন এটি খুব ছোট বা খুব বড় হয় তখন ত্রুটিগুলি কি?
  • মাল্টিথ্রেড বিবেচনা: আমরা কিভাবে মেমরি ম্যাপ করা ফাইল এবং সমান্তরাল সঙ্গে মোকাবিলা? ক্যাশে ক্লায়েন্টদের দ্বারা আড়ম্বরপূর্ণ hitten হতে অনুমিত হয়, কিছু কারিগরি আছে কি কৌশল ভাল?

@ অভ্যন্তরীণ সার্ভার ত্রুটির জিজ্ঞাসা হিসাবে, আমি এই প্রশ্নের সাথে সংহত করে: কী একটি স্ট্রিং হবে, প্রায় 64 অক্ষর সর্বোচ্চ লেন। তথ্যটি বাইট [] প্রায় 1024 বাইট লম্বা হবে তবে 128 বাইটের গড় বা তার চেয়েও ভাল বিবেচনা করবে: আমি যা করতে চাই তা হল OR/M সংস্থানগুলি, বাইটগুলিতে একটি সিরিয়ালাইজড সত্তা কতটা বিএসওএন সিরিয়ালাইজারের মতো ।

1
কী একটি স্ট্রিং হবে, 64 অক্ষর সম্পর্কে কিছু বিবেচনা। ডাটা বাইটের একটি অ্যারে হতে পারে: একটি সিরিয়ালাইজড সত্তা, সম্ভবত 4 থেকে 1k বাইটের কিছু।
যোগ লেখক Felice Pollano, উৎস
@ সেহ, তুমি ঠিক আছো, আমি মংডব জানি, কিন্তু আমি আমার প্রোজেক্টে এম্বেডযোগ্য কিছু চাই
যোগ লেখক Felice Pollano, উৎস
কেন আপনার নিজের রোল? couchdb, memcached, mongodb; স্পষ্টতই mongodb দ্রুত
যোগ লেখক sehe, উৎস
আপনি ক্যাশে হয় ডাটা টাইপ (গুলি) কি? কি ধরনের কি? আমরা কত তথ্য নিয়ে কথা বলছি?
যোগ লেখক 500 - Internal Server Error, উৎস

1 উত্তর

  • বি-ট্রিটি ভাল (মেমরি-ম্যাপেড ফাইলগুলির সাথে), তবে যদি ফাইলটি সর্বদা বাসিন্দাদের মেমরিতে রাখা না থাকে তবে একটি পৃষ্ঠা-সংলগ্ন B + Tree অনেক ভাল। এটি দেখুন
  • মেমরি-ম্যাপড ফাইলগুলির সাহায্যে 64-বিট আর্কিটেকচারটি ব্যবহার করা হয় যাতে আপনি সমগ্র ফাইলটিকে মেমরিতে মানচিত্র করতে পারেন, অন্যথা আপনাকে শুধুমাত্র অংশগুলি এবং ক্যাশেড পড়া গুলি mmap গুলি এর চেয়ে দ্রুত হতে পারে।
  • ভাগ করা মেমরির উপর CAS (তুলনা-এবং-সোয়াপ) চেষ্টা করুন। এটি দেখুন
1
যোগ
অনেক ধন্যবাদ, ভাল রেফারেন্স খুব।
যোগ লেখক Felice Pollano, উৎস
হয়তো আপনার জন্য C# -পিশ আছে nosql-database.org এ। অথবা কিছু সি প্রকল্প একটি রেফারেন্স হিসাবে কাজ করতে পারে।
যোগ লেখক ArtemGr, উৎস