আরেকটি বিকল্প কিছু যে আমি শুধু সম্প্রতি জুড়ে আসা করেছি (মঞ্জুর, আমি এখনো এটি ব্যবহার করতে, কিন্তু পরিকল্পনা শীঘ্রই): rdbms-subsetter
।
এটি জেলারের তুলনায় কিছুটা সহজ এবং হালকা, কয়েকটি দুর্দান্ত বৈশিষ্ট্য / পার্কস সহ:
- বিদ্যমান টিউলিং পর্যন্ত তারের পক্ষে সিএলআই এত সহজ
- মুক্ত উৎস
- তথ্যের সুসংগত উপসেট
আনতে বিদেশী কীগুলি অনুসরণ করবে
- আপনার যদি সঠিকভাবে সংজ্ঞায়িত বিদেশী কী না থাকে তবে JSON কনফিগারেশন ফাইলের মাধ্যমে সম্পর্কগুলি সরবরাহ করা যেতে পারে। আমার ক্ষেত্রে, আমি অন্য কোথাও সঞ্চিত স্কিমা মেটাডেটা থেকে এই কনফিগারেশনটি তৈরি করার পরিকল্পনা করছি (ধন্যবাদ, রেলস: \)
- আপনি একটি নির্দিষ্ট সারিটি লক্ষ্যবস্তু করতে পারেন এবং সম্পর্কিত সমস্ত রেকর্ড পেতে পারেন (উদাহরণস্বরূপ একটি নির্দিষ্ট গ্রাহকের সমস্যা হচ্ছে, যাতে আপনি তাদের অ্যাকাউন্টের কাজের ডেটা স্থানীয়ভাবে অ্যাক্সেসযোগ্য করতে সমস্ত কিছু টেনে নিতে পারেন)
- এটি হয় প্রতি টেবিলে অবিচ্ছিন্ন রেকর্ড নিতে পারে বা ওভারবোর্ডে না গিয়ে বড় টেবিলগুলি থেকে আরও ডেটা পেতে লগারিদম নিতে পারে।
এটি হিরোকু ডাটাবেসের জন্য বিশেষভাবে অন্য একটি বিকল্প উল্লেখ করার মতো, যা আমি প্রচুর ব্যবহার করেছি (যেমন আমি সেখানে কাজ করতাম) to
হিরোকু একটি নতুন স্ন্যাপশ্যাটেড ডিবি আনতে আসলেই খুব দ্রুত কারণ এটি লেখার জন্য প্রস্তুত লগগুলি প্রথমে প্রস্তুত করার জন্য টানছে, তারপরে প্রাথমিক ডিবিতে সংযোগ স্থাপন করেছে, তারপরে এটি অনুসরণ করা বন্ধ করে দেয়। উত্পাদনকে খুব বেশি প্রভাবিত করতে এড়াতে আপনি অ্যাপ্লিকেশনগুলিতে এই "কাঁটাচামচ" তৈরি করতে পারেন:
$ heroku addons:create heroku-postgres[:specific-plan] \
--fork your-production-app::DATABASE \
--app some-other-app-to-own-forked-database \
[--as PRODUCTION_SNAPSHOT]
তারপরে, আপনি স্থানীয়ভাবে সেই স্ন্যাপশটের দিকে নির্দেশ করে আপনার অ্যাপটি বুট করতে পারেন up আমি ডেটা বা স্কিমা মাইগ্রেশন বা ডিবাগ গ্রাহক সমস্যাগুলির শুকনো রান করতে এটি ঘন ঘন ব্যবহার করি।
উপরে যে কমান্ডে, আপনি একটি ডিবি সঙ্গে প্রবেশযোগ্য আছে DATABASE_URL
উপর your-production-app
, আপনি আপ ডিবি সঙ্গে প্রবেশযোগ্য দিয়ে শেষ করব PRODUCTION_SNAPSHOT_URL
(যদি আপনার নির্দিষ্ট করা --as
) নামে একটি আলাদা অ্যাপে some-other-app-to-own-forked-database
।