سؤال

لدي كمية كبيرة من البيانات التي أحتاج إلى تخزينها، وأن أكون قادرًا على إنشاء تقارير عنها - كل منها يمثل حدثًا على موقع ويب (نحن نتحدث عن أكثر من 50 تقريرًا في الثانية، لذلك من الواضح أنه يجب تجميع البيانات القديمة).

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

آمل أن يكون لدى بعض SOERS خبرة في مثل هذه البرامج ويمكنهم تقديم توصية و/أو الإشارة إلى المخاطر.

من الناحية المثالية، أود نشر هذا على EC2.

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

المحلول

رائع.انت تفتح موضوع كبير

بعض الأشياء التي تخطر على بالي..

  1. فكر جيدًا في المخطط الخاص بك للإدراجات في جزء المعاملات والقراءات في جزء التقارير، فقد يكون من الأفضل الاحتفاظ بها منفصلة إذا كان لديك كميات كبيرة من البيانات
  2. انظر بعناية إلى زمن الوصول الذي يمكنك تحمله بين إعداد التقارير في الوقت الفعلي عن معاملاتك والتقارير المجمعة عن بياناتك التاريخية.ربما يجب أن يكون لديك عملية يتم تشغيلها بشكل دوري وتجمع معاملاتك.
  3. انظر بعناية إلى أي متطلب يتطلب منك إعداد التقارير عبر بيانات المعاملات والمجمعة، إما في نفس التقرير أو من خلال التنقل من واحد إلى الآخر
  4. نموذج أولي مع بعض الاستعلامات ذات المغزى وبعض أحجام البيانات الواقعية
  5. احصل على جودة إنتاج حقيقية، وقاعدة بيانات جاهزة للمؤسسات، على سبيل المثال.أوراكل / MSSQL
  6. فكر في استخدام كود/منتج شخص آخر لإعداد التقارير، على سبيل المثال. كريستال/بو / كوجنوس

كما أقول، موضوع ضخم.عندما أفكر في المزيد سأستمر في الإضافة إلى قائمتي.

HTH ونتمنى لك التوفيق

نصائح أخرى

@سيمون قدمت الكثير من النقاط الممتازة، وسأضيف القليل منها وأعيد التكرار/التأكيد على النقاط الأخرى:

  1. استخدم نوع البيانات الصحيح للطوابع الزمنية - تأكد من أن نظام إدارة قواعد البيانات يتمتع بالدقة المناسبة.
  2. فكر في الانتظار لالتقاط الأحداث، مما يسمح لسلاسل عمليات/عمليات متعددة بالتعامل مع التخزين الفعلي للأحداث.
  3. افصل بين المخططات الخاصة بمستودع المعاملات والبيانات
  4. فكر بجدية في ETL الدوري من قاعدة بيانات المعاملات إلى مستودع البيانات.
  5. تذكر أنك ربما متعود لديك 50 معاملة/ثانية 24x7x365 - معاملات الذروة مقابل.متوسط ​​المعاملات
  6. يفتش التقسيم الجداول في نظام إدارة قواعد البيانات (DBMS).سيقوم كل من Oracle وMSSQL بالتقسيم على قيمة (مثل التاريخ/الوقت).
  7. لديك سياسة أرشفة / الاحتفاظ بالبيانات منذ البداية.تبدأ العديد من المشاريع في تسجيل البيانات دون وجود خطط لإزالتها/أرشفتها.

وايم فوجئت أي من الإجابات هنا تغطية Hadoop وHDFS - أود أن أقترح ذلك لأن SO هو سؤال وجواب المبرمجين وسؤالك هو في الواقع مسألة علم البيانات

إذا كنت تتعامل مع عدد كبير من الاستفسارات والوقت اللازم لتجهيز كبير، يمكنك استخدام HDFS (شكل تخزين موزعة على EC) لتخزين البيانات والاستفسارات دفعة تشغيل (أي التحليل) على الأجهزة السلعية.

ويمكنك عندئذ توفير العديد من الحالات EC2 حسب الحاجة (مئات أو آلاف اعتمادا على كيفية كبيرة البيانات الخاصة بك الطحن المتطلبات) وخريطة المدى تقلل queires against.your البيانات لإنتاج التقارير.

رائع..هذا موضوع ضخم

اسمحوا لي أن أبدأ بقواعد البيانات.احصل أولاً على شيء جيد إذا كنت ستحصل على كميات هائلة من البيانات.أنا أحب Oracle و Teradata.

ثانيًا، هناك فرق واضح بين تسجيل بيانات المعاملات وإعداد التقارير/التحليلات.ضع بيانات المعاملات الخاصة بك في منطقة واحدة ثم قم بتجميعها وفقًا لجدول منتظم في منطقة التقارير (المخطط).

أعتقد أنه يمكنك التعامل مع هذا بطريقتين

  • رمي المال على المشكلة:قم بشراء أفضل البرامج في فئتها (قواعد البيانات وبرامج إعداد التقارير) وقم بتعيين عدد قليل من الأشخاص ذوي الخبرة التقنية للمساعدة

  • اتبع النهج المحلي:قم ببناء ما تحتاجه الآن فقط وقم بتنمية كل شيء بشكل عضوي.ابدأ بقاعدة بيانات بسيطة وقم ببناء إطار لإعداد التقارير على الويب.هناك الكثير من أدوات النسب مفتوحة المصدر والوكالات غير المكلفة التي تقوم بهذا العمل.

وبقدر ما نهج EC2 ..لست متأكدًا من مدى تناسب هذا مع استراتيجية تخزين البيانات.المعالجة محدودة حيث تكون EC2 قوية.هدفك الأساسي هو التخزين والاسترجاع الفعال.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top