প্রশ্ন ফাইল সিস্টেমে এক মিলিয়ন ছবি সংরক্ষণ করা হচ্ছে


আমি একটি প্রকল্প আছে যা ইমেজ একটি বিশাল সংখ্যা উৎপন্ন করবে। শুরু জন্য প্রায় 1,000,000। তারা বড় ছবি নয় তাই আমি শুরুতে এক মেশিনে তাদের সব সংরক্ষণ করব।

আপনি দক্ষতার এই ইমেজ সংরক্ষণ করার জন্য কিভাবে সুপারিশ করবেন? (বর্তমানে NTFS ফাইল সিস্টেম)

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

একটি ভাল নামকরণ প্রকল্প কি হবে:

একটি / বি / সি / 0 ... z / z / z / 999

অথবা

একটি / বি / সি / 000 ... z / z / z / 999

এই কোন ধারণা?


75
2017-12-17 16:52


উত্স


তারা নির্দিষ্ট ব্যবহারকারী বা শুধু জেনারিক বাঁধা হয়? তারা কোন ফ্যাশন গ্রুপ?
শুধুমাত্র জেনেরিক। কিছু প্রযুক্তিগত সরঞ্জাম দ্বারা উত্পাদিত ইমেজ একটি গুচ্ছ। আমি একটি সময় উদারতা ধারণা আছে শুধু 1 আপ থেকে ক্রমবর্ধমান নামকরণ করছি। - s.mihai
কিভাবে তারা ব্যবহার / প্রবেশ করা যাচ্ছে? একটি bespoke অ্যাপ্লিকেশন মাধ্যমে বা কি? - dove
এইটা তুমি? i46.tinypic.com/1z55k7q.jpg
:)) হ্যাঁ ... 1 মিলিয়ন। অশ্লীল ছবি :)) - s.mihai


উত্তর:


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

ডাটাবেসের প্রকৃত পথ সংরক্ষণ করবেন না। ইমেজ এর ক্রম সংখ্যার ডাটাবেস ডাটাবেস থেকে সঞ্চয় করা এবং ক্রিয়াকাণ্ড থেকে পথ তৈরি করতে এমন ফাংশন থাকতে পারে। উদাঃ:

 File path = generatePathFromSequenceNumber(sequenceNumber);

আপনি কিছু কিভাবে ডিরেক্টরি গঠন পরিবর্তন করতে হবে যদি এটা হ্যান্ডেল সহজ। হয়তো আপনাকে ছবিগুলি বিভিন্ন অবস্থানে স্থানান্তরিত করতে হবে, হয়তো আপনি স্থান শেষ হয়ে যাবেন এবং আপনি ডিস্ক এ এবং কিছু কিছু ডিস্কের চিত্রগুলি সংরক্ষণ করতে শুরু করবেন। ডিস্ক বি ইত্যাদিতে এটি একটি ফাংশন পরিবর্তন করা সহজ। ।

ডিরেক্টরি গঠন তৈরির জন্য আমি এই ধরনের অ্যালগরিদম ব্যবহার করব:

  1. প্রথম প্যাড আপনি কমপক্ষে 12 ডিজিট স্ট্রিং না হওয়া পর্যন্ত আপনি নেতৃস্থানীয় শূন্য সঙ্গে ক্রম সংখ্যা। এটি আপনার ফাইলের জন্য নাম। আপনি একটি অনুভূতি যোগ করতে চান:
    • 12345 -> 000000012345.jpg
  2. তারপরে স্ট্রিংটি 2 বা 3 অক্ষর ব্লকগুলিতে বিভক্ত করুন যেখানে প্রতিটি ব্লক ডিরেক্টরি স্তরকে নির্দেশ করে। ডিরেক্টরি স্তর একটি নির্দিষ্ট সংখ্যা আছে (উদাহরণস্বরূপ 3):
    • 000000012345 -> 000/000/012
  3. উত্পন্ন ডিরেক্টরি অধীনে ফাইল সংরক্ষণ করুন:
    • সুতরাং ক্রম আইডি সঙ্গে ফাইলের জন্য পুরো পাথ এবং ফাইল ফাইলের নাম 123 হয় 000/000/012/00000000012345.jpg
    • ক্রম আইডি সঙ্গে ফাইলের জন্য 12345678901234 পথ হতে হবে 123/456/789/12345678901234.jpg

ডিরেক্টরি কাঠামো এবং ফাইল স্টোরেজ সম্পর্কে কিছু বিষয় বিবেচনা করা:

  • উপরোক্ত অ্যালগরিদম আপনাকে এমন একটি সিস্টেম দেয় যেখানে প্রতিটি পাতার ডিরেক্টরিতে 1000 টি ফাইলের সর্বাধিক ফাইল থাকে (যদি আপনার কম পরিমাণে 1 000 000 000 000 ফাইল থাকে)
  • উদাহরণস্বরূপ, কতগুলি ফাইল এবং সাবডিরেক্টরির একটি ডিরেক্টরি থাকতে পারে তা সীমাবদ্ধ থাকতে পারে Linux এ ext3 ফাইল সিস্টেম একটি ডিরেক্টরি প্রতি 31998 সাব ডিরেক্টরি একটি সীমা আছে।
  • সাধারণ সরঞ্জাম (উইনজিপ, উইন্ডোজ এক্সপ্লোরার, কমান্ড লাইন, বাশ শেল, ইত্যাদি) খুব ভালোভাবে কাজ করতে পারে না যদি আপনার ডিরেক্টরির প্রতি বৃহত সংখ্যক ফাইল থাকে (> 1000)
  • ডিরেক্টরি গঠন নিজেই কিছু ডিস্ক স্থান নেবে, তাই আপনি অনেক ডিরেক্টরি চাইবেন না।
  • উপরের কাঠামোর সাথে আপনি ফাইল ফাইলটির জন্য শুধুমাত্র সঠিক পথটি সন্ধান করতে পারেন, যদি আপনি আপনার ডিরেক্টরি গঠনগুলিকে আপগ্রেড করে থাকেন।
  • যদি আপনি বিভিন্ন মেশিন থেকে ফাইলগুলি অ্যাক্সেস করতে চান তবে নেটওয়ার্ক ফাইল সিস্টেমের মাধ্যমে ফাইল ভাগ করে নেওয়ার কথা বিবেচনা করুন।
  • আপনি যদি অনেক ফাইল মুছে ফেলেন তবে উপরের ডিরেক্টরি গঠন কাজ করবে না। এটি ডিরেক্টরি গঠন মধ্যে "গর্ত" পাতা। কিন্তু যেহেতু আপনি কোন ফাইল মুছে ফেলছেন না তাই এটি ঠিক করা উচিত।

70
2017-12-17 17:32



অনেক আগ্রহব্যাঞ্জক! ফাইল নাম splitting ... আমি যে চিন্তা না। আমি এই কাজ করার মার্জিত উপায় অনুমান: -? - s.mihai
ফাইলের নামের পাশাপাশি ডিরেক্টরি বিতরণ হিসাবে একটি হ্যাশ ব্যবহার করা (যেমন MD5), কাজ করবে। কেবলমাত্র ফাইলগুলির অখণ্ডতা নামকরণ স্কীম (সহজেই চেক করা) এর পক্ষে একটি উপকারী সুবিধা নয়, তবে আপনার ডিরেক্টরির শ্রেণিবদ্ধ জুড়েও যুক্তিসঙ্গতভাবে বন্টন থাকবে। সুতরাং যদি আপনার "f6a5b1236dbba1647257cc4646308326.jpg" নামক একটি ফাইল থাকে তবে আপনি এটি "/ f / 6" (অথবা আপনার প্রয়োজন অনুসারে গভীর) এ সংরক্ষণ করবেন। 2 মাত্রা গভীর 256 ডিরেক্টরি দেয়, অথবা প্রাথমিক 1 এম ফাইলের জন্য প্রতি ডিরেক্টরিের জন্য 4000 ফাইলের অধীনে। এটি গভীরতর পরিকল্পনার পুনঃবিস্তার স্বয়ংক্রিয়করণ করা খুব সহজ হবে।
+1 আমি লক্ষ্য করেছি যে এই উত্তরটি আমি যে পোস্টটি পোস্ট করেছি তার অনুরূপ। - 3dinfluence
আমি নিশ্চিতভাবে ফাইলেসিস্টেম ব্যবহার করে এবং একটি আর্টিফিক্যাল আইডেন্টিফায়ার তৈরি করার জন্য ফোল্ডার নামগুলিতে "স্লাইস" করতে সম্মত। তবে আপনাকে সনাক্তকারীর র্যান্ডম বিতরণ পেতে চেষ্টা করতে হবে, যেমন একটি ক্রম সংখ্যা ব্যবহার করবেন না। যে আপনি ফোল্ডার একটি আরো সুষম গাছ আছে অনুমতি দেবে। উপরন্তু, র্যান্ডম বিতরণের সাথে আপনি একাধিক ফাইল সিস্টেমগুলিতে গাছটিকে আরও সহজে ভাগ করতে পারেন। আমি একটি ZFS ভিত্তিক SAN ব্যবহার করে ডিটুপ চালু এবং প্রতিটি ফাইল সিস্টেমের জন্য একটি স্পার ভলিউম ব্যবহার করব। আপনি এখনও অ্যাক্সেসের জন্য iSCSI ব্যবহার করে NTFS ব্যবহার করতে পারেন। - Michael Dillon
আপনি ধাপে ডান থেকে বামে যান 2 ফাইল সমানভাবে বিতরণ করা হয়। এছাড়াও আপনি কোনও সীমাহীন সংখ্যক ফাইল করতে পারেন এমন যথেষ্ট সংখ্যক জিরোগুলি পূরণ না করার বিষয়ে আপনাকে চিন্তা করতে হবে না - ropo


আমি নেতিবাচক পরামর্শের এক টুকরা আমার 2 সেন্ট মূল্য দিতে যাচ্ছি: ডাটাবেসের সাথে যেতে না।

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

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


29
2017-12-17 17:12



হ্যাঁ। নোট নেওয়া! - s.mihai
আপনি এসকিউএল 2008 এর FILESTREAM তথ্য টাইপ তাকান আছে? এটা ডাটাবেস এবং ফাইল সিস্টেম স্টোরেজ মধ্যে একটি ক্রস। - NotMe
আপনি দ্রুত এবং অননুমোদিত আইও অপারেশন করছেন যেমন একটি ডাটাবেস চেয়ে ফাইল সার্ভার সঙ্গে sticking উপর +1।
আপনি যদি কেবল ডাটাবেসের প্রতি কয়েক শত ডক্স বা ছবি সংরক্ষণ করেন তবে স্টোরেজের জন্য ডেটাবেস ব্যবহার করার জন্য কোনও ক্ষতি? - Beep beep
+1 ... কোনও ফাইল সিস্টেমটি কোনও "ডাটাবেস" ধরনের (নিশ্চিতভাবে এনটিএফএস), তাই কেন এটি অত্যন্ত জটিল করে তোলে। - akira


আমি মনে করি বেশিরভাগ সাইটগুলি এটি ব্যবহার করতে হবে যেগুলি কোনও ধরণের হ্যাশ ব্যবহার করে ফাইলগুলি সমানভাবে ফোল্ডারগুলিতে বিতরণ করা হয় তা নিশ্চিত করতে।

সুতরাং আপনি একটি ফাইল একটি হ্যাশ আছে যে ভালো কিছু 515d7eab9c29349e0cde90381ee8f810
আপনি নিম্নোক্ত অবস্থানে এটি সংরক্ষণ করতে পারেন এবং আপনি প্রতিটি ফোল্ডারের নিম্নে ফাইলগুলির সংখ্যা রাখার জন্য কতগুলি স্তরের গভীর প্রয়োজন তা ব্যবহার করতে পারেন।
\51\5d\7e\ab\9c\29\349e0cde90381ee8f810.jpg

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


12
2017-12-17 20:17



গিট একটি অনুরূপ পদ্ধতি ব্যবহার করে: git-scm.com/book/en/v2/Git-Internals-Git-Objects (এই উত্তর ব্যাক আপ) - aexl


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

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

উদাঃ,

/ রুট / [0-99] / [0-99] / ফাইলের নাম

বিঃদ্রঃ, http://technet.microsoft.com/en-us/library/cc781134(WS.10).aspx এনটিএফএস সেটআপ উপর আরো বিস্তারিত আছে। বিশেষ করে, "যদি আপনি NTFS ফোল্ডারে বড় সংখ্যক ফাইল ব্যবহার করেন (300,000 বা তার বেশি), ভাল পারফরম্যান্সের জন্য শর্ট-ফাইল নাম প্রজন্মকে অক্ষম করুন, এবং বিশেষ করে যদি দীর্ঘ ফাইল নামগুলির প্রথম ছয়টি অক্ষর একই রকম থাকে।"

আপনাকে আপনার দরকার এমন ফাইল সিস্টেমগুলির বৈশিষ্ট্যগুলি নিষ্ক্রিয় করা উচিত নয় (উদাঃ, সর্বশেষ অ্যাক্সেস সময়)। http://www.pctools.com/guides/registry/detail/50/


11
2017-12-17 17:01



8.3 ফাইল নাম উত্পাদন এবং শেষ অ্যাক্সেস সময় নিষ্ক্রিয় করার জন্য +1; আমি যখন "ফাইলের বিশাল সংখ্যা [ফাইল]" এবং "এনটিএফএস" (উইন্ডোজ) পড়তে থাকি তখন মনে হচ্ছিল যে এটি প্রথম বিষয়। - rob
নিচে লিঙ্ক........................ - Pacerier


আপনি যাই হোক না কেন, এক ডিরেক্টরি তাদের সব সংরক্ষণ করবেন না।

এই ছবিগুলির নামের বন্টনের উপর ভিত্তি করে, আপনি একটি ডিরেক্টরি গঠন তৈরি করতে পারেন যেখানে আপনার একক অক্ষর শীর্ষ স্তরের ফোল্ডার রয়েছে যেখানে আপনার দ্বিতীয় অক্ষরের চিত্রের জন্য অন্য একটি সাবফোল্ডারের সেট থাকবে।

তাই:

ফোল্ডার img\a\b\c\d\e\f\g\ 'abcdefg' এর সাথে শুরু হওয়া চিত্রগুলি এবং এরকম কিছু থাকবে।

আপনি আপনার নিজস্ব উপযুক্ত গভীরতা পরিচয় করিয়ে দিতে পারে।

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


7
2017-12-17 16:58



\ a \ b \ c \ d \ e \ f \ আমি এখন করছি, আমি ভাবছিলাম এটি করার একটি বিজ্ঞ উপায়। - s.mihai
শারীরিকভাবে সেগুলি কীভাবে সঞ্চয় করবেন তার একটি সাধারণভাবে গৃহীত সমাধান। চিত্র URL এর স্পষ্টভাবে জেনারেট করা এমন কিছু যা সহজেই চিত্র ফাইল নামের উপর ভিত্তি করে গতিশীলভাবে সম্পন্ন করা যেতে পারে। এছাড়াও, তাদের পরিবেশন করার জন্য, যদি আপনি চেয়েছিলেন, ইমেজ সার্ভারে IMG-A, IMG-B সাবডোমেনগুলি এমনকি লোডিংয়ের সময়গুলি দ্রুততর করতেও পারেন।
এবং +1 "তাদের সকলকে এক ডিরেক্টরিতে সংরক্ষণ করবেন না"। আমি একটি লিগ্যাসি সিস্টেমকে সমর্থন করছি যা একটি ফোল্ডারে সার্ভারে 47000 টি ফাইল রেখেছে এবং এক্সপ্লোরারের জন্য ফোল্ডারটি খুলতে প্রায় এক মিনিট সময় লাগে। - Mark Ransom
একটি \ b \ c \ d \ e \ f \ g করছেন ডিরেক্টরি গঠনটি খুব গভীর করে এবং প্রতিটি ডিরেক্টরিটিতে কেবল কয়েকটি ফাইল থাকে। ডিরেক্টরি স্তর প্রতি এক চিঠি যেমন আরও ব্যবহার করতে ভাল। ab \ cd \ ef \ বা abc \ def \। ডিরেক্টরিগুলি ডিস্ক থেকেও স্থান গ্রহণ করে যাতে আপনি তাদের অনেকগুলি চান না। - Juha Syrjälä
আমি একটি অ্যাপ্লিকেশন সমর্থন ছিল যে একটি ডিরেক্টরি 4 + মিলিয়ন ফাইল সব ছিল; এটি চমকপ্রদভাবে ভাল কাজ করেছে, কিন্তু আপনি ফোল্ডার খুলতে কখনও এক্সপ্লোরার পেতে না পারে, এটি ক্রমাগত নতুন সংযোজন বাছাই করা হবে। এনটিএফএসের জন্য +1 ডাইনিং ছাড়াই এটি পরিচালনা করতে সক্ষম হচ্ছে। - SqlACID


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

এছাড়াও যদি আপনি ফাইল সিস্টেম নির্বাচন করেন তবে আপনাকে এই ফাইলগুলি ডিরেক্টরিগুলির সাথে ভাগ করতে হবে। আমি এই সমস্যাটি দেখছি এবং একটি সমাধান প্রস্তাব করেছি কিন্তু এটি কোনও উপায়ে নিখুঁত নয়। আমি হ্যাশ টেবিল দ্বারা পার্টিশন করছি এবং ব্যবহারকারীরা আপনি আমার উপর আরো পড়তে পারেন ব্লগ


5
2017-12-17 16:59



ইমেজ ঘন ঘন এক্সেস জন্য বোঝানো হয় না। তাই এই সঙ্গে কোন সমস্যা নেই। তাদের সংখ্যা বেশ দ্রুত বৃদ্ধি হবে। আমি অনুমান 1mil হবে। 1 মাস চিহ্নিত করুন। - s.mihai
আমি প্রোগ্রামার ভিউতে আগ্রহী নই, যাতে আমি এটিকে অত্যধিক গুরুত্ব না দিই - s.mihai
তাই যদি দ্রুত অ্যাক্সেসের প্রয়োজন হয় না তবে হস্টস্ট্যাক সম্ভবত আপনার জন্য নয়। পার্টিশনের জন্য ডিরেক্টরি ব্যবহার করে আমার ভিউতে সহজতম সমাধান। - Lukasz


আমরা 4 মিলিয়ন ছবির সাথে একটি ফটো স্টোর সিস্টেম আছে। আমরা মেটা ডেটা শুধুমাত্র ডেটাবেস ব্যবহার করি এবং সমস্ত ছবি ফাইল সিস্টেমে একটি বিপরীত নামকরণ সিস্টেম ব্যবহার করে সংরক্ষণ করা হয়, যেখানে ফাইলের নামের শেষ সংখ্যা থেকে অঙ্কিত হয়, শেষ -1, ইত্যাদি। উদাঃ .: 000001234.jpg ডিরেক্টরি কাঠামোতে সংরক্ষণ করা হয় যেমন 4 \ 3 \ 2 \ 1 \ 000001234.jpg।

এই প্রকল্পটি ডাটাবেসের পরিচয় সূচক সহ খুব ভালভাবে কাজ করে, কারণ এটি সমানভাবে সম্পূর্ণ ডিরেক্টরি গঠন পূরণ করে।


5
2017-12-30 22:10





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


4
2017-12-17 17:18



: -? ভাল দ্রুত বিন্দু। শুধু যে আমি পাথ উৎপাদনের জন্য একটি অ্যালগরিদম নেই। - s.mihai


নতুন এমএস এসকিউএল ২008 এ ধরনের ক্ষেত্রে হ্যান্ডেল করার জন্য একটি নতুন বৈশিষ্ট্য রয়েছে, এটি FILESTREAM নামে পরিচিত। এক নজর দেখে নাও:

মাইক্রোসফট টেকনেট ফাইলেস্ট্রিম সংক্ষিপ্ত বিবরণ


4
2017-12-17 17:24





আপনার ইমেজ অনন্য নাম দেওয়া হবে?  এই চিত্রগুলি তৈরি করে এমন প্রক্রিয়াটি একই ফাইলনাম একবারে তৈরি করতে পারে? কোন ডিভাইসটি ফাইল নাম তৈরি করছে তা জানার ব্যপারে বলা কঠিন কিন্তু ডিভাইসটি 'রিসেট' এবং এটি পুনঃসূচনা করার পরে চিত্রগুলিকে নামকরণ শুরু করে যা শেষবার এটি 'রিসেট' ছিল - যদি এটি এমন একটি উদ্বেগ হয় ..

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

আমি জিজ্ঞাসা করছি কারণ আপনি ইমেজ দ্বারা আপনার ফাইল সিস্টেম নকশা শুরু করতে পারে, তারপর। আমি আপনাকে এমন একটি ডিরেক্টরি কাঠামোতে চিত্রগুলি সংরক্ষণ করার পরামর্শ দিতে উত্সাহিত হতে পারে:

imgs\yyyy\mm\filename.ext

where: yyyy = 4 digit year
         mm = 2 digit month

example:  D:\imgs\2009\12\aaa0001.jpg
          D:\imgs\2009\12\aaa0002.jpg
          D:\imgs\2009\12\aaa0003.jpg
          D:\imgs\2009\12\aaa0004.jpg
                   |
          D:\imgs\2009\12\zzz9982.jpg
          D:\imgs\2010\01\aaa0001.jpg (this is why I ask about uniqueness)
          D:\imgs\2010\01\aab0001.jpg

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

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

যখন আমি উত্তর দিচ্ছিলাম তখন আপনি / অন্যরা এই ধারনাগুলি তুলে ধরতে পারে .. আশা করি এটি সাহায্য করবে ..


4
2017-12-17 18:24



1. সমস্ত ফাইল অনন্যভাবে নামকরণ করা হবে 2. সিস্টেমটি প্রথমে বৃদ্ধি পাবে এবং বৃদ্ধি পাবে এটি প্রায় 1 মিলিমিটারের চিত্র খুঁজে বের করবে এবং তারপরে প্রতি মাসে কয়েক হাজার হাজারের হারে বাড়বে। 3. ভবিষ্যতে কিছু সময়ে ফাইলগুলির কিছু ট্যাগিং হবে, এজন্য আমি ডিবিতে কিছু ধরণের তথ্য ডেটা সংরক্ষণ করতে চাই। - s.mihai


জনপ্রিয় প্রশ্ন

আমি কিভাবে একটি ইবিএস রুট ডিভাইসের সাথে উইন্ডোজ EC2 ইনস্ট্যান্সে ইনস্ট্যান্স সঞ্চয়স্থান অ্যাক্সেস করতে পারি? SSLCipherSuite - দুর্বল এনক্রিপশন, সিবিসি সাইফার এবং MD5 ভিত্তিক অ্যালগরিদম নিষ্ক্রিয় করুন Tridion 2011 SP1 HR1 ক্যাশ চ্যানেল সার্ভার - সেটআপ আমি কি একটি ভার্চুয়াল nic ব্যবহার না করে ESXi এর আমার ভার্চুয়াল মেশিনগুলির জন্য একটি ভার্চুয়াল অভ্যন্তরীণ নেটওয়ার্ক তৈরি করতে পারি? সিস্কো Anyconnect: একটি দূরবর্তী ডেস্কটপ থেকে ভিপিএন ইনস্টলেশন ক্ষমতা নিষ্ক্রিয় করা হয় Applocker বনাম সফটওয়্যার সীমাবদ্ধতা নীতি লিনাক্স স্লো স্টার্ট: আইপি রুট পরিবর্তন করলে প্রাথমিক উইন্ডোতে কোন প্রভাব নেই