مكتبة Java لتلخيص البيانات في التدفقات التي لا يمكن تخزين جميع الأحداث فيها. وبشكل أكثر تحديدًا، هناك فئات للتقدير: العلاقة الأساسية (أي عد الأشياء)؛ تعيين العضوية؛ عناصر أعلى k والتردد. إحدى الميزات المفيدة بشكل خاص هي إمكانية دمج مقدرات الأصل ذات التكوينات المتوافقة بأمان.
يمكن استخدام هذه الفئات مباشرةً في مشروع JVM أو مع نصوص Shell المتوفرة وإعادة توجيه Unix IO القديمة.
الأفكار هنا ليست أصلية بالنسبة لنا. لقد سعينا إلى إنشاء تطبيقات مفيدة من خلال تكرار الأدبيات الأكاديمية الموجودة. على هذا النحو، تعتمد هذه المكتبة بشكل كبير على أعمال الآخرين. يرجى قراءة أقسام المصادر والمراجع.
$ echo -e "foonfoonbar" | ./bin/topk
item count error
---- ----- -----
foo 2 0
bar 1 0
Item count: 3
$ echo -e "foonfoonbar" | ./bin/cardinality
Item Count Cardinality Estimate
---------- --------------------
3 2
< dependency >
< groupId >com.clearspring.analytics</ groupId >
< artifactId >stream</ artifactId >
< version >2.9.5</ version >
</ dependency >
بافتراض أنك قمت بتثبيت Apache Maven وتكوينه:
mvn package
ويجب أن تكون جاهزًا.
القائمة البريدية: http://groups.google.com/group/stream-lib-user
رمز العضوية المحدد هو تطبيق Bloom Filter من Apache Cassandra حوالي ديسمبر 2009. التغييرات هنا ضئيلة وكانت بغرض الاختبار والاستخدام المستقل. تم الاحتفاظ برؤوس Apache Software Foundation في هذه الملفات. وبالامتداد فإننا ندرج أيضًا murmurhash.
لقد استلهمنا استخدام هذا الرمز من خلال منشور جوناثان إليس، كل ما تريد معرفته عن كتابة مرشحات الإزهار.
هناك مراجع javadoc لأوراق محددة. كانت هذه هي تلك التي وجدناها الأكثر أهمية أثناء البحث.
مين كاي، وجيان بينغ بان، ويو ك. كووك، وكاي هوانج. قياس سريع ودقيق لمصفوفة حركة المرور باستخدام العد الأساسي التكيفي. في MineNet '05: وقائع ورشة عمل ACM SIGCOMM لعام 2005 حول بيانات شبكة التعدين، الصفحات 205-206، نيويورك، نيويورك، الولايات المتحدة الأمريكية، 2005. ACM.
أحمد متولي، ديفياكانت أغراوال، وعمرو عبادي. لماذا نذهب إلى اللوغاريتمي إذا كان بإمكاننا أن نسير بشكل خطي؟: نحو حساب فعال ومتميز لحركة البحث. في EDBT '08: وقائع المؤتمر الدولي الحادي عشر حول توسيع تكنولوجيا قواعد البيانات، الصفحات 618-629، نيويورك، نيويورك، الولايات المتحدة الأمريكية، 2008. ACM.
نيكوس نتارموس، وبيتر تريانتافيلو، وجيرهارد ويكوم. العد بشكل عام: تقدير فعال للأصل في شبكات البيانات على نطاق الإنترنت. في ICDE '06: وقائع المؤتمر الدولي الثاني والعشرين لهندسة البيانات، الصفحات 40+، واشنطن العاصمة، الولايات المتحدة الأمريكية، 2006. جمعية IEEE للكمبيوتر.
ماريان دوراند وفيليب فلاجولي. LogLog العد من أصل كبير. في ESA03، المجلد 2832 من LNCS، الصفحات 605-617، 2003.
كيو واي وانج، وبراد تي فاندر زاندن، وهوارد إم تايلور. خوارزمية العد الاحتمالي الخطي للزمن لتطبيقات قواعد البيانات. ايه سي ام ترانس. نظام قاعدة البيانات، 15(2):208-229، 1990.
موسى شاريكار، وكيفن تشين، ومارتن إف كولتون. البحث عن العناصر المتكررة في تدفقات البيانات. في ICALP '02: وقائع الندوة الدولية التاسعة والعشرين حول الأتمتة واللغات والبرمجة، الصفحات 693-703، لندن، المملكة المتحدة، 2002. Springer-Verlag.
ستيفان هيول، مارك نونكيسير، أليكس هول. HyperLogLog في الممارسة العملية: الهندسة الخوارزمية لخوارزمية تقدير الكاردينالية الحديثة. وقائع مؤتمر EDBT 2013، ACM، جنوة، إيطاليا
تشيتشينغ جين، وينينغ تشيان، تشاوفنغ شا، جيفري إكس يو، وأويينغ تشو. الحفاظ ديناميكيًا على العناصر المتكررة عبر دفق البيانات. في CIKM '03: وقائع المؤتمر الدولي الثاني عشر لإدارة المعلومات والمعرفة، الصفحات 287-294، نيويورك، نيويورك، الولايات المتحدة الأمريكية، 2003. ACM. 10.1145/956863.956918 http://dl.acm.org/citizen.cfm?id=956918
أحمد متولي، ديفياكانت أغراوال، وعمرو عبادي. حساب فعال للعناصر المتكررة وأعلى k في تدفقات البيانات. الصفحات 398-412. 2005. 10.1007/978-3-540-30570-5_27 http://link.springer.com/chapter/10.1007/978-3-540-30570-5_27