عن المشروع

Miller هي أداة معالجة بيانات بسطر الأوامر للبيانات المفهرسة بالاسم وذات أزواج المفتاح والقيمة. بدلاً من عدّ الحقول موضعياً كما تفعل أدوات Unix التقليدية، تتيح لك الإشارة إلى الحقول بالاسم، باستخدام صيغ مثل CSV وTSV وJSON وJSON Lines والإدخال المفهرس موضعياً. القدرات الأساسية الموصوفة في README: - معالجة بيانات متعددة الأغراض: تنظيف البيانات، وتقليل البيانات، والتقارير الإحصائية، وإدارة العمليات وإدارة النظام، ومعالجة ملفات السجلات، وتحويل الصيغ، والمعالجة اللاحقة لاستعلامات قواعد البيانات. - عمليات على الحقول المسماة: إضافة حقول جديدة محسوبة من الحقول الموجودة، وإسقاط الحقول، والفرز، والتجميع الإحصائي، والطباعة المنسقة، كل ذلك بشكل فوري. - الوعي بالصيغ: على سبيل المثال، يحافظ الفرز والعكس في CSV على أسطر الترويسة أولاً؛ ويتم توفير التحويل بين الصيغ المدعومة. - تصميم قائم على البث: تحتاج معظم العمليات إلى سجل واحد فقط في الذاكرة في كل مرة، لذا يمكن معالجة الملفات الأكبر من ذاكرة الوصول العشوائي المتاحة حيثما كان ذلك ممكناً وظيفياً، ويمكن استخدامها في سياقات tail -f. العمليات التي تحتاج إلى احتفاظ أعمق (sort وtac وstats1) تحتفظ فقط بالقدر اللازم من البيانات. - تباين السجلات: يمكن تداخل السجلات ذات المخططات المختلفة (أسماء الحقول)، متجاوزةً أدوات Unix التقليدية. - ملائمة للأنابيب: تتفاعل مع مجموعة أدوات Unix. - تكمّل أدوات تحليل البيانات مثل R وpandas لتنظيف البيانات وتحضيرها، وتكمّل قواعد بيانات SQL للتقطيع والتقسيم وإعادة التنسيق من جهة العميل. - مكتوبة بلغة Go المحمولة دون أي اعتماديات وقت تشغيل؛ يمكن نسخ ملف ثنائي واحد إلى جهاز آخر. التثبيت متاح عبر العديد من مديري الحزم، بما في ذلك apt/yum/snap على Linux، وHomebrew وMacPorts على macOS، وChocolatey وWinGet وScoop على Windows. البناء من المصدر مدعوم باستخدام make (make وmake check وmake install) أو مباشرةً بأوامر Go. المشروع مرخّص تحت BSD-2-Clause ويوفر توثيقاً شاملاً ودروساً تعليمية وقنوات نقاش مجتمعية.