🚀 جرب Zilliz Cloud، الـ Milvus المدارة بالكامل، مجاناً — تجربة أداء أسرع بـ 10 أضعاف! جرب الآن>>

milvus-logo
LFAI
الصفحة الرئيسية
  • هجرة ميلفوس
  • Home
  • Docs
  • هجرة ميلفوس

  • من ميلفوس 1.x

من ميلفوس 1.x

يوفر هذا الدليل عملية شاملة وخطوة بخطوة لترحيل البيانات من Milvus 1.x (بما في ذلك 0.9.x وما فوق) إلى Milvus 2.x. باتباع هذا الدليل، ستتمكن من نقل بياناتك بكفاءة، والاستفادة من ميزات Milvus 2.x المتقدمة والأداء المحسّن.

المتطلبات الأساسية

تصدير البيانات الوصفية الخاصة بتثبيت Milvus المصدر

لإعداد بيانات الترحيل لـ Milvus 0.9.x حتى 1.x، قم بإيقاف Milvus المصدر أو على الأقل إيقاف تنفيذ أي عمليات DML فيه.

  1. تصدير البيانات الوصفية لتثبيت المصدر Milvus المصدر إلى meta.json.

    • بالنسبة لتلك التثبيتات التي تستخدم MySQL كواجهة خلفية، قم بتشغيل
    ./milvus-migration export -m "user:password@tcp(adderss)/milvus?charset=utf8mb4&parseTime=True&loc=Local" -o outputDir
    
    • بالنسبة لتلك التثبيتات التي تستخدم SQLite كواجهة خلفية، قم بتشغيل
    ./milvus-migration export -s /milvus/db/meta.sqlite -o outputDir
    
  2. انسخ المجلد tables من تثبيت Milvus الخاص بك، ثم انقل المجلد meta.json والمجلد tables إلى مجلد فارغ.

    بمجرد الانتهاء من هذه الخطوة، يجب أن تبدو بنية المجلد الفارغ بهذا الشكل:

    migration_data
    ├── meta.json
    └── tables
    
  3. قم بتحميل المجلد الذي تم إعداده في الخطوة السابقة إلى دلو تخزين كتلة S3 أو استخدم هذا المجلد المحلي مباشرة في القسم التالي.

تكوين ملف الترحيل

احفظ مثال ملف تهيئة الترحيل بصيغة migration.yaml وقم بتعديل التكوينات بناءً على ظروفك الفعلية. لك الحرية في وضع ملف التكوين في أي دليل محلي.

dumper:
  worker:
    limit: 2
    workMode: milvus1x
    reader:
      bufferSize: 1024
    writer:
      bufferSize: 1024
loader:
  worker:
    limit: 16
meta:
  mode: local
  localFile: /outputDir/test/meta.json
source:
  mode: local
  local:
    tablesDir: /db/tables/
target:
  mode: remote
  remote:
    outputDir: "migration/test/xx"
    ak: xxxx
    sk: xxxx
    cloud: aws
    region: us-west-2
    bucket: xxxxx
    useIAM: true
    checkBucket: false
  milvus2x:
    endpoint: "{yourMilvus2_xServerAddress}:{port}"
    username: xxxx
    password: xxxx

يصف الجدول التالي المعلمات في ملف التكوين النموذجي. للحصول على قائمة كاملة بالتكوينات، ارجع إلى Milvus Migration: Milvus1.x إلى Milvus 2.x.

  • dumper

    المعلمةالوصف
    dumper.worker.limitتزامن خيوط الترحيل.
    dumper.worker.workModeالوضع التشغيلي لمهمة الترحيل. تعيين إلى milvus1x عند الترحيل من Milvus 1.x.
    dumper.worker.reader.bufferSizeحجم المخزن المؤقت للقراءة من Milvus 1.x في كل دفعة. الوحدة: كيلوبايت.
    dumper.worker.writer.bufferSizeحجم المخزن المؤقت للكتابة إلى Milvus 2.x في كل دفعة. الوحدة: كيلوبايت: كيلوبايت.
  • loader

    المعلمةالوصف
    loader.worker.limitتزامن خيوط المحمل.
  • meta

    المعلمةالوصف
    meta.modeتحديد مكان قراءة ملف التعريف meta.json. قيم صالحة: local ، remote ، mysql ، ، sqlite.
    meta.localFileمسار الدليل المحلي حيث يوجد الملف meta.json. يتم استخدام هذا التكوين فقط عندما يتم تعيين meta.mode على local. للحصول على تكوينات التعريف الأخرى، راجع README_1X.
  • source

    المعلمةالوصف
    source.modeيحدد مكان قراءة الملفات المصدر من. القيم الصالحة:
    - local: يقرأ الملفات من قرص محلي.
    - remote: يقرأ الملفات من وحدة تخزين بعيدة.
    source.local.tablesDirمسار الدليل حيث توجد الملفات المصدر. على سبيل المثال، /db/tables/.
  • target

    المعلمةالوصف
    target.modeموقع التخزين للملفات الملقاة. القيم الصالحة:
    - local: تخزين الملفات الملقاة على الأقراص المحلية.
    - remote: تخزين الملفات الملقاة على وحدة تخزين الكائنات.
    target.remote.outputDirمسار دليل الإخراج في دلو التخزين السحابي.
    target.remote.akمفتاح الوصول للتخزين Milvus 2.x.
    target.remote.skالمفتاح السري للتخزين Milvus 2.x.
    target.remote.cloudمزود خدمة التخزين السحابي. مثال على القيم: aws ، gcp ، azure.
    target.remote.regionمنطقة التخزين السحابي. يمكن أن تكون أي قيمة إذا كنت تستخدم MinIO المحلي.
    target.remote.bucketاسم الدلو لتخزين البيانات. يجب أن تكون القيمة هي نفس قيمة التكوين في Milvus 2.x. لمزيد من المعلومات، راجع تكوينات النظام.
    target.remote.useIAMما إذا كنت تريد استخدام دور IAM للاتصال.
    target.remote.checkBucketما إذا كان سيتم التحقق من وجود الدلو المحدد في تخزين الكائنات.
    target.milvus2x.endpointعنوان خادم Milvus الهدف.
    target.milvus2x.usernameاسم المستخدم لخادم Milvus 2.x. هذه المعلمة مطلوبة إذا تم تمكين مصادقة المستخدم لخادم Milvus الخاص بك. لمزيد من المعلومات، راجع تمكين المصادقة.
    target.milvus2x.passwordكلمة المرور لخادم Milvus 2.x. هذه المعلمة مطلوبة إذا تم تمكين مصادقة المستخدم لخادم Milvus الخاص بك. لمزيد من المعلومات، راجع تمكين المصادقة.

بدء مهمة الترحيل

  1. ابدأ مهمة الترحيل باستخدام الأمر التالي. استبدل {YourConfigFilePath} بالدليل المحلي حيث يوجد ملف التكوين migration.yaml.

    ./milvus-migration  dump  --config=/{YourConfigFilePath}/migration.yaml
    

    يقوم الأمر أعلاه بتحويل بيانات المصدر في Milvus 1.x إلى ملفات NumPy، ثم يستخدم عملية الإدراج الجماعي لكتابة البيانات إلى الحزمة المستهدفة.

  2. بمجرد إنشاء ملفات NumPy، قم باستيراد هذه الملفات إلى Milvus 2.x باستخدام الأمر التالي. استبدل {YourConfigFilePath} بالدليل المحلي حيث يوجد ملف التكوين migration.yaml.

    ./milvus-migration  load  --config=/{YourConfigFilePath}/migration.yaml
    

تحقق من النتيجة

بمجرد تنفيذ مهمة الترحيل، يمكنك إجراء مكالمات واجهة برمجة التطبيقات أو استخدام Attu لعرض عدد الكيانات التي تم ترحيلها. لمزيد من المعلومات، راجع Attu و get_collection_stats().

جرب Managed Milvus مجاناً

Zilliz Cloud خالي من المتاعب، ويعمل بواسطة Milvus ويعمل بسرعة 10 أضعاف.

ابدأ
التعليقات

هل كانت هذه الصفحة مفيدة؟