من فضلك تسجيل الدخول أو تسجيل لتفعل ذلك.
“text”>”auto”>”-1″ dir=”auto”> Samchika

سامشيكا (معنى ملف في السنسكريتية) إعادة استخدامو سهل الاستخدام، و سريع للغاية مكتبة معالجة الملفات للغة جافا.

تم تصميمه مع التركيز القوي على Multithesply للتعامل مع مهام معالجة الملفات المكثفة في وحدة المعالجة المركزية بالتوازي ، مما يتيح الأداء العالي حتى مع الملفات الضخمة.


“-1” dir=”auto”> 🚀 الميزات

  • 🔁 متعدد مؤشرات الترابط بالكامل – محسّن لمعالجة الملفات المتوازية.
  • 🧩 API البسيط – فقط قم بتوصيل مسار الملف والمنطق.
  • 📊 احصائيات وقت التشغيل الاختياري-الوقت المستغرق ، والذاكرة المستخدمة ، ومعلومات مستوى مؤشر ترابط.
  • 🧪 مثالي للمعالجة والتحليل ملفات نصية كبيرة (مثل سجلات ، مجموعات البيانات).
  • 🌍 ودية مفتوحة المصدر-المساهمات مرحب بها!

“-1” dir=”auto”> استخدام الحالات

تتفوق Samchika في العديد من السيناريوهات التي توفر فيها معالجة الملفات المتعددة مزايا مهمة:

  • تحليل السجل ومعالجته
  • عمليات ETL (المستخلص ، التحويل ، الحمل)
  • معالجة مجموعة نصية كبيرة
  • جيل تقرير الدُفعات
  • خطوط أنابيب تحويل البيانات
  • معالجة البيانات في الوقت الحقيقي

راجع دليل الأمثلة للتطبيقات التفصيلية لحالات الاستخدام هذه.

“-1” dir=”auto”> مثال سريع

Java // تحويل ملف CSV كبير بأداء الأمثل

line.ToupperCase ()) .displayStats (true) .build () .execute () ؛”>

SmartFileProcessor.builder () .inppath ("large_dataset.csv") .outputpath ("transformed_dataset.csv".

“-1” dir=”auto”> 📦 التثبيت

“-1” dir=”auto”> مافن

“-1” dir=”auto”> Gradle

repositories {    maven { url 'https://jitpack.io' }}dependencies {    implementation 'com.github.mayankpratap:samchika:1.0.0'}

“-1” dir=”auto”> 🛠 كيفية الاستخدام

“-1” dir=”auto”> الخطوة 1: استيراد المكتبة

import com.samchika.SmartFileProcessor;

“-1” dir=”auto”> الخطوة 2: رمز العميل

الفراغ الثابت العام الرئيسي (السلسلة[] args) {SmartFileProcessor Processor=SmartFileProcessor.builder () .inputpath ("input.txt") // مسار إلى الملف المراد معالجته .OutputPath ("output.txt") // مسار لكتابة الإخراج .LineProcessor (Main :: Processline) // منطق عملك لكل سطر .DisplayStats (صواب) // اختياري: عرض إحصائيات وقت التشغيل .Build () ؛ Processor.execute () ؛ }

“-1” dir=”auto”> 📈 الأداء

المعيار ضد تطبيقات ساذجة Bufferreader على ملفات من مختلف الأحجام:

✅ 200 ميغابايت

✅ 1 غيغابايت

✅ 5 جيجابايت

✅ 16 جيجابايت

لوحظت تحسينات كبيرة في الأداء ، خاصة في الأنظمة متعددة النواة (أكثر من 70 ٪ من الأداء)

يتحسن الربح في الوقت المحفوظ بالمقارنة مع التعليمات البرمجية الساذجة ، حيث نزيد من حجم ملف الإدخال. أيضًا للحصول على كسب الأداء الضخم في الوقت المناسب ، يمكن التحكم في الذاكرة المستخدمة في الملفات الكبيرة (16 جيجابايت) (حوالي 800 ميغابايت).

“_blank” rel=”noopener noreferrer” HREF=”http://github.com/MayankPratap/Samchika/blob/main/images/time_memory.jpg”>”http://github.com/MayankPratap/Samchika/raw/main/images/time_memory.jpg” alt=”Perf visualization”>

“-1” dir=”auto”> الترخيص

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

“-1” dir=”auto”> 💡 الإلهام

استلهم هذا المشروع من:

  1. شوبهام موريا (“https://github.com/complex1″> https://github.com/complex1 ) ، صديق عزيز ، نشر مكتبة JavaScript – مما أثار الدافع لفعل شيء مماثل في Java.

  2. منشور LinkedIn يناقش تحديات معالجة الملفات النصية الكبيرة – والتي أعطتني فكرة حلها باستخدام واجهة برمجة تطبيقات أنيقة وهندسة متعددة المعاقين.

اقرأ المزيد

لماذا تفشل أنظمة خرقة المؤسسة: تقدم Google Study حل "السياق الكافي"
هل يمكنك تخمين بطل الوزن هذا في لعبة التوافه في 5 اليوم؟

Reactions

0
0
0
0
0
0
بالفعل كان رد فعل لهذا المنصب.

ردود الفعل