أكثر

هل تستخدم الشركات الكبيرة وظائف SQL Server GeoSpatial بنجاح؟

هل تستخدم الشركات الكبيرة وظائف SQL Server GeoSpatial بنجاح؟


أنا أعمل في مشروع حيث يتعين علي السماح للمستخدمين بالعثور على الأشياء القريبة. في الماضي ، قمت بتخزين خطوط الطول / العرض يدويًا وقمت بحساباتي الخاصة ، لكنني أشعر بالفضول إذا كان الأمر يستحق النظر في استخدام ميزات GeoSpatial في SQL Server 2008.

هل نجح الأشخاص في استخدام هذا في استفساراتهم المكانية؟ هل هناك أمثلة لشركات كبيرة تستخدم هذا؟ هل هناك أي مشاكل شائعة يجب أن أكون على علم بها؟


بينما لا يمكنني الإجابة عن أي شخص آخر ، والشركة ليست كبيرة الحجم التي أعمل بها ، فقد حققنا نجاحًا كبيرًا في استخدام SQL Server 2008 وقدراته المكانية. لأنني أعمل في شركة غابات ، فإن الجانب المكاني للأشياء مهم جدًا لأعمالنا.

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

نقوم أيضًا بتشغيل postgres مع postgis أيضًا ، لذلك تستند مقارناتي بين هذين الاثنين. يتمتع Postgres بدعم مكاني جيد جدًا ، ولم يعد SQL Server 2008 على قدم المساواة حتى الآن من حيث الوظائف مع Postgres. هناك شيء واحد أجده مزعجًا في SQL Server وهو أنه ليس من السهل إعادة طرحه إذا كنت تستخدم نوع بيانات الهندسة. تشجع Microsoft بشكل عام استخدام نوع الجغرافيا ، الذي يعتمد على خطوط الطول / العرض ، ولكن له مسافات ومساحات بوحدات مترية بدلاً من درجات. نحتاج إلى تخزين البيانات بنوع هندسي ، وبالتالي لإجراء حسابات المنطقة والمسافة ، نحتاج بانتظام إلى التحويل من الهندسة إلى الجغرافيا والعكس مرة أخرى. بالطبع إذا كنت تخزن في الجغرافيا فقط ، فهذه ليست مشكلة.

في الإصدارات السابقة ، كان عليك دفع الفهارس المكانية ، ولكن في التحديث الأخير ، يبدو أن هذا قد سهّل لنا معظم هذه الأنواع من المشكلات. أجد ما إذا كنت تقوم بإنشاء فهارس مكانية يدويًا مملة بعض الشيء في Sql Server ، ولكن هذا لأنه يجب عليك تحديد مربع إحاطة (إذا كنت تستخدم نوعًا هندسيًا). مرة أخرى ، إذا كنت تستخدم الجغرافيا ، فهذا ليس ضروريًا.

يتحسن دعم برامج GIS لـ SQL Server ، حيث يقدم معظم البائعين الرئيسيين اتصالاً مباشرًا بـ SQL Server. أصبح نظام المعلومات الجغرافية مفتوح المصدر متاحًا الآن بعد أن أصبح لدى OGR موصلات SQL Server 2008. لم يكن لدي أي خبرة مع هؤلاء ، لذلك لن أعلق. نحن نقدم مربعات خرائط لبياناتنا من خلال Geoserver ، الذي يحتوي على مكون إضافي للسماح بتقديم البيانات من خلال SQL Server. على الرغم من أنها ليست ناضجة (أو سريعة) مثل تنفيذ Postgres ، إلا أنها لا تزال أكثر من كافية لتلبية احتياجاتنا.

نحن متجر تطوير .NET ووجدت أنواع الهندسة / الجغرافيا المكشوفة من خلال مساحة الاسم Microsoft.SqlServer.Types لتكون بديهية بما يكفي للاستخدام. لم أستخدمها كثيرًا ، ولم أفعل أي شيء رائع بخلاف التحويل من نص معروف إلى الهندسة والمثابرة عليها ، لكنها نجحت فقط. كان هناك بعض الحديث عن عدم إمكانية استخدام مساحة الاسم هذه في Silverlight ، ولكن إذا كان ذلك مناسبًا لك ، فسيتعين عليك البحث في هذا الأمر أكثر. نحن نستخدمه مع الواجهة الأمامية لـ ASP.NET والفئات المترجمة في الخلف ، ونتحدث إلى قاعدة البيانات ولم نواجه أي مشاكل. يمكنك إنشاء استعلامات مكانية في التعليمات البرمجية ، ثم نقلها إلى قاعدة البيانات والحصول على النتائج مرة أخرى إذا كنت ترغب في ذلك ، تمامًا كما لو كنت تستخدم نوع بيانات غير مكاني. أعتقد أن Microsoft Entity Framework لا يدعم الأنواع المكانية اعتبارًا من أحدث إصدار مستقر ، لكن CTP الذي تم إصداره في يونيو يدعم الهندسة والجغرافيا. أعلم أن NHibernate لديها دعم مكاني ، كما تفعل بعض أجهزة Micro ORM الأخرى التي ظهرت مثل PetaPoco.

للتعرف على ما يستخدمه الأشخاص من أجله ، من المحتمل أن يؤدي البحث في gis.stackexchange لخادم SQL إلى عرض بعض الحالات المهتمة.


تعمل الوظيفة المكانية المتوفرة في SQL Server (من بين أشياء أخرى) على ذلك بالضبط. ابحث عن الأشياء القريبة. لماذا إعادة اختراع العجلة؟ تم تحسينه ، ومن ثم يمكنك دائمًا استخدام جميع الوظائف الأخرى لإجراء مزيد من التحليل. لذلك أود أن أقول نعم - إنه بالتأكيد يستحق النظر فيه. أما بالنسبة لدراسات الحالة ، فقد كشف بحث سريع على موقع qoogle عن هذا وذاك. ويمكنك أيضًا الانتقال إلى http://www.microsoft.com/casestudies/ والبحث عن SQL Server 2008 والمكاني ككلمات رئيسية في البحث المتقدم.


أعلم من تجربتي أن العديد من الشركات الكبيرة تستخدم بنجاح (املأ أي شيء هنا). يعتمد مقياس النجاح على عدد رسائل البريد الإلكتروني الناجحة لتعليقات العملاء المرسلة قبل x-mas أو بعد الانتهاء من المشروع.


باستخدام الدوال المكانية SQL2008 ، كيف يمكنني إنشاء مضلع يحتوي على نتائج aggreation

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

أجد صعوبة في العثور حتى على ما إذا كان هناك أي تجميعات مضمنة لأنواع بيانات الجغرافيا ، ناهيك عن إعطائي المضلع المحيط

من أجل الجدل ، افترض أن لدي طاولة تشبه إلى حد ما:

(في الواقع أصغر مساحة 57 نقطة والأكبر 626 نقطة)


4 إجابات 4

أعتقد أنه يجب عليك النظر في شحن السجل بمجرد إعداده ، يمكن شحن سجلات 10 دقائق إلى الخادم ، لذلك يتم تحديث التغييرات فقط.

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

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

بالتناوب ، يمكنك استخدام AlwaysOn بدلاً من تسجيل الشحن لنفس التأثير.

الترخيص: لست خبيرًا في الترخيص ، ولكن ما أفهمه هو أنه إذا كان مثيل وجهة شحن السجل (أو AlwaysOn) مخصصًا لـ DR فقط ، فلا توجد تكلفة إضافية.

سأكتب إجابة ، ولكن ذلك يعتمد حقًا على البنية التحتية لديك ، أو يمكنك تحمل تكاليفها:

  1. لماذا تحتفظ بالقراءة فقط وبيانات المعاملات في قاعدة بيانات واحدة؟ ربما يجب أن تكون البيانات للقراءة فقط على مجموعة منفصلة من الملفات / قاعدة البيانات / القرص / الخوادم. لا أعتقد أنك تقرأ باستمرار ملف بيانات 500 جيجا بايت طوال الوقت وفي كل مكان. يمنحك الفصل القدرة على الاحتفاظ بنسخة احتياطية من هذا الجزء الذي تم تغييره فقط. قد يكون النسخ الاحتياطي كنسخ متماثل لخادم قاعدة البيانات المنفصل
  2. يمكنك البحث عن إزالة البيانات المكررة فيما يتعلق ببروتوكولات تعزيز البيانات. هذا يعني شيئًا ما (وكيل البرنامج) أثناء النسخ الاحتياطي يقارن البيانات المتغيرة وينقل الجزء الذي تم تغييره فقط (مثل النسخ الاحتياطي التفاضلي). الفرق هو أنه في التخزين غير المكرر ، قد تنشئ هذه الأنظمة في وضع عدم الاتصال اصطناعي نسخة احتياطية كاملة. حتى إذا تطلب الأمر rdbms إجراء نسخ احتياطي كامل كلاسيكي ، فإن نقل البيانات هو مجرد اختلاف. بناءً على عوامل مختلفة ، قد تحصل على نسخة احتياطية كاملة أسرع نتيجة لذلك.
  3. يمكنك البحث عن تقنية اللقطة من بائعين مختلفين. بعض هذه الحلول قادرة على أداء لقطات متسقة لمختلف قواعد البيانات rdbms. قد يكون حل معتمد بالكامل.

في النهاية ذهب لخيار التقسيم:

تم تقسيم جداول "البيانات" الرئيسية (مع 95٪ من البيانات) ، ورسم سطر "أرشيف / للقراءة فقط" قبل 6 أشهر.

كان المنتج الثانوي هو أن الجداول من الدرجة الثالثة (بيانات 5٪) في القسم الخاص بها ويمكن استعادتها بشكل مستقل (مفيدة لفوضى البيانات الوصفية هذه!)

سنستخدم أيضًا Log-shipping لـ DR ، ولكن نظرًا لأنه يتطلب تراخيص إضافية حتى نتمكن من إزالة النسخ الاحتياطية من الثانوية ، ما زلنا نترك أخذ النسخ الاحتياطية المحلية.

يمكنك أيضًا تجربة Microsoft Azure Backup Server لإضافة بعض الميزات الإضافية خارج الموقع.

تعتمد أفضل إستراتيجية على هدف نقطة الاسترداد RPO ، بالإضافة إلى RTO - Recovery Time Objective المعروف أيضًا باسم ما مدى السرعة التي يجب أن تستعيدها وكذلك مقدار البيانات المسموح لك بفقدانها.

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

لقد قمنا بإنشاء خادم تحكم يحتوي على جميع قواعد بيانات المنظمة بالإضافة إلى RTO و SLA الخاصة بهم وتشغيل نسخة احتياطية بناءً على مقدار البيانات التي تغيرت بالإضافة إلى الخوادم التي عرفت آخر بيانات IO.

ما نقوم به هو أننا قمنا بكتابة نصوص الاستعادة إلى SQL Job على الخادم المحدد ولدينا مجموعة الوظائف وسجل المعاملات وقياس التغييرات. عند إجراء النسخ الاحتياطي ، نقوم بإنشاء برنامج نصي للاستعادة (محليًا وعن بعد) وكلما حدث تغيير في RTO / RPO / SLA نقوم بتحديث الخادم. إذا احتاجنا إلى الاسترداد (في مكانه أو خادم الاسترداد السريع) ، فإننا ننفذ البرنامج النصي للاسترداد الذي يحصل على النسخ الاحتياطية المناسبة الكاملة والتفاضلية والمعاملات لفترة زمنية أو استرداد بسيط.

لدينا العديد من قواعد البيانات لأي نهج آخر ، كما يجب أن نتعرض لمخاطر مالية عالية إذا قمنا بالأشياء "يدويًا". قد يقوم DBA 1 و DBA 2 بعمل أشياء مختلفة أيضًا كيف يمكنك تنفيذ شيء ما باستمرار على "جميع" الخوادم عندما تحصل على تحديث أمني أو ما هو أسوأ .. فكرة جديدة في الإدارة ...

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


هل الفساد غير القابل للإصلاح في الفهرس المكاني يعتبر أمرًا طبيعيًا؟

انا املك الفهرس المكاني التي أبلغت CHECKDB DBCC عن حالات فساد لها:

لا يحتوي الفهرس المكاني أو فهرس XML أو طريقة العرض المفهرسة 'sys.extended_index_xxx_384000' (معرف الكائن xxx) على جميع الصفوف التي ينتجها تعريف العرض. لا يمثل هذا بالضرورة مشكلة تكامل مع البيانات الموجودة في قاعدة البيانات هذه.

يحتوي الفهرس المكاني أو فهرس XML أو طريقة العرض المفهرسة 'sys.extended_index_xxx_384000' (معرف الكائن xxx) على صفوف لم يتم إنتاجها بواسطة تعريف العرض. لا يمثل هذا بالضرورة مشكلة تكامل مع البيانات الموجودة في قاعدة البيانات هذه.

عثر CHECKDB على 0 أخطاء تخصيص و 2 أخطاء تناسق في الجدول 'sys.extended_index_xxx_384000' (معرف الكائن xxx).

مستوى الإصلاح هو repair_rebuild.

لا يؤدي حذف وإعادة إنشاء الفهرس إلى إزالة تقارير الفساد هذه. بدون EXTENDED_LOGICAL_CHECKS ولكن مع DATA_PURITY لا يتم الإبلاغ عن الخطأ.

أيضًا ، يستغرق CHECKTABLE 45 دقيقة لهذا الجدول على الرغم من أن حجم CI الخاص به يبلغ 30 ميغابايت ويوجد حوالي 30 ألف صف. جميع البيانات في هذا الجدول هي بيانات جغرافية النقطة.

هل هذا السلوك متوقع تحت أي ظرف من الظروف؟ تقول "هذا لا يمثل بالضرورة مشكلة النزاهة". ماذا علي أن أفعل؟ CHECKDB يفشل وهي مشكلة.

هذا البرنامج النصي يعيد إظهار المشكلة:

هذا هو الإصدار 12.0.4427.24 (SQL Server 2014 SP1 CU3).

لقد قمت بكتابة الجدول باستخدام المخطط والبيانات ، وقاعدة بيانات جديدة ، وتنفيذها. نفس الخطأ. CHECKDB لديه أيضًا وقت تشغيل مذهل يبلغ 45 دقيقة. لقد التقطت خطة استعلام CHECKDB باستخدام SQL Profiler. لها صلة حلقة مضللة تسبب على ما يبدو وقت تشغيل مفرط. تحتوي الخطة على وقت تشغيل تربيعي في عدد صفوف الجدول! صلات حلقة المسح المتداخلة المزدوجة.


مراجعة لـ Microsoft SQL Server

برنامج نظام إدارة قواعد البيانات العلائقية (RDBMS)

نظام إدارة قواعد البيانات هو برنامج أو مجموعة برامج تنظم البيانات وتديرها عبر قواعد البيانات. يمكن لبرنامج DBMS تنظيم البيانات وتصنيفها وتسميتها ، بالإضافة إلى عناصر مثل عناوين الأعمدة والملفات ، لتبسيط عملية تحليل البيانات.

برنامج نظام إدارة قواعد البيانات العلائقية (RDBMS) هو نوع معين من نظم إدارة قواعد البيانات التي تعرض العلاقات بين إدخالات البيانات عبر الجداول. تتم إدارة العلاقات عبر الجداول من خلال برنامج RDBMS ، مما يسمح بتنظيف البيانات وتحديثها بمرور الوقت.

يجب أن تنتقل أنظمة إدارة قواعد البيانات دائمًا إلى ما هو أبعد من التنظيم الأساسي لقواعد البيانات ، مع التأكد من أن محللي البيانات يمكنهم تحليل وإنشاء تقارير تحليلية بكفاءة حول مجموعات البيانات الأكثر أهمية ، وفقًا لمايكروسوفت.

ميزات Microsoft SQL Server

مع إصدار Microsoft SQL Server 2019 ، توسعت Microsoft في عروضها في مجالات تجميع البيانات الضخمة ومعالجة الاستعلامات الذكية (IQP).

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

تركز معالجة الاستعلامات الذكية على رفع بعض الضغط عن مسؤولي قواعد البيانات الذين يقضون وقتًا طويلاً في تعديل قاعدة بياناتهم وتعديل الاستعلامات. يضمن IQP أن عملهم لا يتداخل مع الذاكرة أو الأداء العام لبيانات الشركة. تسمح الوظيفة للنظام بتأجيل اتخاذ القرار خلال فترات التحسين ، وتنفيذ الاستعلامات عبر وضع الدُفعات ، وتذكر أداء الاستعلام السابق أثناء الضبط في الوقت الفعلي لسيناريوهات الاستعلام غير المتوقعة.

يوضح هذا الرسم البياني كيفية عمل ميزة مجموعات البيانات الضخمة. وهي من أحدث الميزات التي صاحبت إطلاق SQL Server 2019. (المصدر: مايكروسوفت)

فيما يلي بعض أهم الميزات الأخرى لـ Microsoft SQL Server:

  • التوافر العالي والتعافي
  • متوافق مع أنظمة تشغيل Microsoft و Linux
  • ذكاء أعمال متنقل شامل (BI)
  • أمان مدمج وتتبع الامتثال
  • تشفير البيانات وتصفية الأدوار
  • إخفاء البيانات
  • افتراضية البيانات
  • خيارات في أماكن العمل والسحابة

تكامل Microsoft SQL Server

يقدم Microsoft SQL Server العديد من عمليات الدمج المضمنة ، ولكن المنتج متوافق أيضًا مع معظم واجهات برمجة التطبيقات. ضمن مجموعة أدوات SQL Server ، ستجد & # 8217 خدمات تكامل خادم SQL ، الأداة الأساسية التي تساعد في تخزين البيانات والترحيل والاتصال عبر الأنظمة الأساسية الداخلية والخارجية.

فيما يلي أمثلة لعمليات التكامل الممكنة:

أدوات داخل عائلة Microsoft

تكامل الطرف الثالث

  • MySQL
  • PostgreSQL
  • MongoDB
  • اباتشي سبارك
  • وحي
  • تيراتا
  • HDFS
  • تحليلات IBM Cognos
  • كلوديرا

فوائد Microsoft SQL Server

  • يتوفر التثبيت / النشر المبسط من خلال معالج التثبيت في جميع الحزم.
  • تساعد منتديات مجتمع المستخدمين وخدمة عملاء Microsoft في استكشاف مجموعة متنوعة من المشكلات وإصلاحها.
  • تعمل Microsoft في سوق نظم إدارة قواعد البيانات (DBMS) منذ عام 1989 وتصدر إصدارات جديدة بميزات جديدة كل بضع سنوات.
  • تقدم Microsoft حزم تسعير مرنة تكلف عمومًا أقل من منافسي نظم إدارة قواعد البيانات الآخرين.

يعد معالج التثبيت أحد أكثر ميزات Microsoft SQL Server التي تم الإشادة بها ، حيث يساعد المستخدمين من جميع الخلفيات على تشغيل برنامج SQL Server الخاص بهم بنجاح. (المصدر: مايكروسوفت)

حالات استخدام Microsoft SQL Server

يتم استخدام برنامج DBMS هذا من قبل الشركات في مجموعة متنوعة من الصناعات وبمستويات متفاوتة من الخبرة في مجال البيانات. يعتمد بعض المستخدمين على Microsoft SQL Server للإعداد وسهولة الاستخدام التي يوفرها معالج التثبيت والقوالب ومنتديات المستخدم. يفضل البعض الآخر الأداة & # 8217s الانفتاح على التطبيقات والتكاملات المشفرة حسب الطلب.

إليك ما يقوله العديد من المستخدمين عن تجربتهم مع SQL Server وكيفية استخدامه:

& # 8220 لقد كنت أستخدم SQL Server لسنوات عديدة. يوفر لي المرونة والموثوقية اللازمتين لبناء تطبيقات قواعد البيانات المختلفة. لقد أدهشتني الميزات الجديدة لـ SQL Server 2019 & # 8217s مثل معالجة الاستعلامات الذكية ومجموعات البيانات الضخمة. معظم الميزات سهلة الاستخدام ، وأنا دائمًا أتحقق من منتديات المجتمع عندما أحتاج إلى حل مشكلة. & # 8221 - مسؤول تكنولوجيا المعلومات في صناعة التصنيع ، مراجعة Microsoft SQL Server في Gartner Peer Insights

& # 8220 [نحب] مرونته وقدرته على التكامل مع مصادر البيانات المختلفة بالإضافة إلى وظائفه المدعومة مثل الأتمتة من خلال حزم SSIS أو إعداد التقارير من خلال SSRS. لدينا أيضًا مستوى عالٍ من الدعم من خلال الخدمات الأخرى التي يمكن أن تتكامل مع MS SQL Server ، مثل Tableau ، من بين أشياء أخرى لإعداد تقارير أكثر دقة. & # 8221 - محلل ومطور في صناعة الاتصالات ، مراجعة Microsoft SQL Server في Gartner رؤى الأقران

& # 8220 كنا بحاجة إلى نظام RDBMS ناضج لدعم كل من تطبيقاتنا الهامة وتطبيقاتنا الأقل أهمية. أيضًا نظام RDBMS يستخدمه عدد كبير من المنظمات في جميع أنحاء العالم مع مجتمع نشط لدعم المنتج. يبدو أن SQL Server يحتوي على كل هذه الميزات. & # 8221 - رئيس عمليات قاعدة البيانات في الصناعة المالية ، مراجعة Microsoft SQL Server في Gartner Peer Insights

مراجعات المستخدم لـ Microsoft SQL Server

يعمل Microsoft SQL Server بشكل جيد في معظم فئات مراجعة المستخدم ، وهو يتألق بشكل خاص في مجالات الإدارة / الإدارة ، والأمن ، والتعامل مع أنواع / هياكل بيانات متعددة.

بشكل عام ، يمنح المستخدمون المنتج 4.5 من 5 في Gartner Peer Insights.

عبر 10 فئات ، يمنحها المستخدمون درجات تتراوح من 4.3 إلى 4.6.

فيما يتعلق بنقاط الضعف في النظام الأساسي ، يلاحظ العديد من المستخدمين أن تحميل الاستعلامات على SQL Server قد يستغرق وقتًا طويلاً ، مما قد يؤدي إلى إبطاء الوظائف والأداء العام لمسؤولي قواعد البيانات.

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

تسعير Microsoft SQL Server

تقدم Microsoft العديد من حزم التسعير المختلفة لـ SQL Server وفقًا لحجم المؤسسة واحتياجاتها ، بما في ذلك الإصدارات المجانية مثل Developer و Express.

يأتي إصدار Enterprise بأعلى قائمة أسعار ، لكن العديد من المستخدمين أوضحوا أن عددًا قليلاً من المؤسسات سيحتاج إلى إمكانات نظام إدارة قواعد البيانات (DBMS) بخلاف تلك الموجودة في الحزم ذات المستوى الأدنى والقياسية.

على الرغم من أن هذه الأرقام قد تختلف بناءً على قناة المبيعات والشراء ، فهذه هي حزم تسعير Microsoft SQL Server:

مستوىالسعرمعدل الاشتراك
تعبير عنحرغير متاح
الويبتحقق من الأسعارغير متاح
مطورحرغير متاح
قياسي (CAL)$2091418 دولارًا / سنويًا
أنوية عقد البيانات الكبيرة: 400 دولار في السنة
قياسي (الخادم)$8991418 دولارًا / سنويًا
أنوية عقد البيانات الكبيرة: 400 دولار في السنة
قياسي (لكل نواة)$3,5861418 دولارًا / سنويًا
أنوية عقد البيانات الكبيرة: 400 دولار في السنة
مشروع$13,7485،434 دولار / سنة
أنوية عقد البيانات الكبيرة: 400 دولار في السنة

منافسي Microsoft SQL Server

شهد سوق نظام إدارة قواعد البيانات نموًا صحيًا لسنوات عديدة ، حيث بلغت القيمة السوقية حوالي 58.4 مليار دولار في عام 2020.

من المتوقع أن ينمو سوق نظم إدارة قواعد البيانات العالمية بمعدل نمو سنوي مركب يبلغ 13.81٪ بين عامي 2021 و 2026 ، بقيمة متوقعة تبلغ حوالي 126.9 مليار دولار بحلول عام 2026 ، وفقًا لأبحاث السوق المتخصصة.

في حين يأتي هذا النمو من جميع أنواع الأعمال ، يُعزى الكثير منه إلى الشركات التي تعمل مع مجموعات متزايدة من بيانات التجارة الإلكترونية ووسائل التواصل الاجتماعي.

فيما يلي بعض من أفضل المنافسين لـ Microsoft SQL Server & # 8217s في سوق DBMS و RDBMS:


يمكن أن تكون إدارة مجموعة بيانات الطرود الخاصة بالبلدية و # 8217s وظيفة بدوام كامل ، اعتمادًا على عدة عوامل بما في ذلك حجم البلدية وطبيعة النمو في تلك البلدية. على سبيل المثال ، ستتضمن مجموعة بيانات الطرود المحدثة أحدث المعلومات حول العديد من السمات التي يحتمل أن تتغير بانتظام ، مثل من يملك العقار ونوع الضرائب المستحقة على المالك. لا يقتصر الأمر على تغيير إسناد مجموعة بيانات الطرد على أساس منتظم ، ولكن يمكن أيضًا تغيير الشكل الهندسي الذي يمثل حدود كل طرد. أحد الأسباب الأكثر شيوعًا للتغيير في هندسة الطرود هو التقسيم الفرعي.

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

لحسن الحظ ، إذا كنت تدير البيانات في بيئة GIS لسطح المكتب ، فهناك العديد من الأدوات المتاحة لك والتي ستسمح لك بإنشاء مضلعات جديدة وقطع آثار أقدامها من المضلعات الأصلية. ومع ذلك ، إذا كانت بياناتك مستضافة في قاعدة بيانات مكانية ، فقد لا تمتلك الأدوات المتاحة لك للقيام بذلك. تمت كتابة نص SQL التالي لهذه الوظيفة بالضبط ، بافتراض أن لديك بالفعل آثار أقدام الطرود المقسمة التي تم إنشاؤها ، وتحتاج إلى تحديث هندسة الطرد الأصلي لتعكس التقسيمات الفرعية التي تمت إزالتها. تمت كتابة البرنامج النصي الذي تمت مناقشته أدناه لـ Microsoft SQL Server (T-SQL) ، ومع ذلك ، يمكن تطبيق المبادئ العامة على العديد من إصدارات SQL الأخرى. يوجد أدناه النص الكامل ، متبوعًا بإرشادات تفصيلية للخطوات المهمة في الكود وما يفعلونه.

يستخدم برنامج SQL النصي لقص أشكال هندسية متعددة الأضلاع من مضلع مصدر واحد

يقوم البرنامج النصي بما يلي:

  1. يحدد مسبقًا الرقم الأصلي & # 8217s معرّف سجل الهندسة الذي ترغب في تعديله.
  2. حدد & # 8217s السجل المكاني المستند إلى قائمة معرفات & # 8217s المقدمة (تمثل الأشكال الهندسية للطرد الجديد الذي تم إنشاؤه ، ليتم قصه من الطرد الأصلي) ويمرر هذه السجلات إلى المؤشر.
  3. يتم تحديد الشكل الهندسي للسجل الأول داخل المؤشر.
  4. بعد ذلك ، يتم توحيد جميع الأشكال الهندسية الأخرى معًا.
  5. بمجرد انتهاء المؤشر من توحيد الأشكال الهندسية الجديدة للطرد ، يتم تحديد سجل موقع الطرد الأصلي & # 8217s.
  6. أخيرًا ، تم تحديث هندسة الطرد الأصلي & # 8217s ، باستخدام STDifference لإزالة الطرود الموحدة & # 8217 الأشكال الهندسية من الطرد الأصلي & # 8217s الهندسة.

نتيجة تشغيل برنامج SQL النصي لقص مضلع واحد من خلال اتحاد عدة مضلعات أخرى.

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


SQL Server ، مثيل محلي ، لا توجد عملية على الطرف الآخر من توجيه الإخراج

على تثبيت جديد ، على بلدي محلي مثيل خادم SQL ، باستخدام SQL Server Management Studio ، يمكنني تسجيل الدخول باستخدام مصادقة Windows الخاصة بي ، ولكن ليس باستخدام مستخدم sa الخاص بي. في كلتا الحالتين ، أستخدم (محلي) كاسم الخادم الخاص بي. الخطأ كالتالي:

  • كلمة المرور صحيحة ، لأنني قمت بتغييرها.
  • لقد أعدت تشغيل جهاز الكمبيوتر الخاص بي منذ تثبيت SQL Server.
  • ال عامل خادم SQL لا يعمل وأعتقد أنه من أجل الوظائف فقط.
  • ال مستعرض SQL Server لا يعمل ، أعتقد أنه مخصص للاتصالات البعيدة فقط ، ولا يعمل بشكل جيد على كمبيوتر آخر حيث لا أواجه المشكلة.
  • في SQL Server Configuration Manager ، يعمل عميل SQL الأصلي (32 بت و 64 بت) على تمكين الذاكرة المشتركة و TCP / IP والأنابيب المسماة (لم أقم بتغيير أي شيء في هذه الإعدادات)
  • في SQL Server Configuration Manager ، يسمح تكوين شبكة SQL Server فقط بالذاكرة المشتركة ويتم تعطيل TCP / IP Named Pipes و VIA (لم أقم بتغيير أي شيء في هذه الإعدادات)
  • في SQL Server Configuration Manager ، لم تعمل محاولة تنشيط الأنابيب المسماة لتكوين الشبكة (وإعادة تشغيل خدمة MSSQLSERVER) على حل المشكلة (لم أقم بإعادة التمهيد لهذا التغيير).
  • لقد حاولت تغيير اسم خادم connextion من (محلي) إلى 192.168.x.x أو إلى MY-COMPUTER-NETWORK-NAME دون أي نجاح.

أنا أستخدم Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (X64) 17 يونيو 2011 00:54:03 حقوق النشر (c) Microsoft Corporation Standard Edition (64 بت) على Windows NT 6.1 & ltX64 & gt (الإصدار 7601: الخدمة حزمة 1).


تسجيل الدخول إلى Microsoft SQL Server باستخدام بيانات اعتماد Active Directory

تعمل خوادم Microsoft SQL الخاصة بنا على خوادم Windows التي تعد جزءًا من مجال Active Directory.

لسهولة إدارة المستخدم ، تم إعداد ترخيص SQL الخاص بنا باستخدام مجموعات مستخدمي Active Directory كما هو موضح في هذا المنشور.

الآن هذا يعمل بشكل جيد طالما أن الجميع يعملون داخل المجال. يقوم الأشخاص بتسجيل الدخول إلى أجهزة الكمبيوتر الخاصة بهم باستخدام بيانات اعتماد AD الخاصة بهم ويمكنهم الاتصال بخادم SQL باستخدام "مصادقة Windows".

تكمن المشكلة في أن مستخدمينا سيعملون أيضًا على أجهزة كمبيوتر عميل أخرى ليست جزءًا من مجال Active Directory (وإضافتها إلى المجال ليس خيارًا).

كنت آمل أن يتمكنوا ببساطة من الاستمرار في استخدام بيانات اعتماد AD الخاصة بهم لتسجيل الدخول إلى الخادم باستخدام مصادقة AD كما هو مذكور في شاشة تسجيل الدخول إلى SQL Server.

لكن هذا لا يبدو أنه يعمل.

يؤدي تسجيل الدخول باستخدام مصادقة كلمة مرور الدليل Acive Directory إلى حدوث مشكلات في الشهادة. خطأ: "تم إصدار سلسلة الشهادات بواسطة مرجع غير موثوق به."

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

هل الإعداد الذي أريد تحقيقه ممكن؟ وإذا كان الأمر كذلك ، كيف يمكنني تحقيق ذلك؟ :)

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


كيفية حل البيانات الجغرافية المكانية عبر خادم مرتبط يسبب خطأ؟

الخطأ الدقيق فشل في تهيئة Common Language Runtime (CLR) v2.0.50727 مع HRESULT 0x80131022. يمكنك حل المشكلة والمحاولة مرة أخرى في وقت لاحق.

حدث الخطأ في المثيل المحلي الخاص بي من SQL Server 2008r2 في sp الذي يستدعي خادمًا مرتبطًا (خادم sql آخر 2008r2) عبر مكالمة OPENQUERY. أقوم بتنفيذ ذلك sp من المثيل المحلي الخاص بي. يفشل الرمز الذي يستدعي الخادم المرتبط ولكن فقط عندما يتم تضمين البيانات الجغرافية المكانية (الهندسة) في الجزء المحدد من العبارة (العبارة التي يتم استدعاؤها في الاستعلام المفتوح.) عندما لا تكون هناك بيانات جغرافية مكانية في بيان التحديد للخادم المرتبط ، تم إعدامه بخير. لذا فإن البيانات الجغرافية المكانية عبر اتصال خادم مرتبط تسبب الخطأ.

يجب أن أشير ، ولكن هذا قد يكون رنجة حمراء ، أن نفس الإجراء المخزن تم استدعاؤه من مهمة sql في حزمة ssis وتم اجتيازها. استدعى الإجراء على المثيل المحلي لخادم SQL. لكن هذا ليس هو القضية الآن. تم تحديد القضية أعلاه.

يجب أن أشير أيضًا إلى أن Microsoft وصفت هذا الخطأ المحدد بأنه خطأ في ضغط الذاكرة.


تعليقات على هذه المادة


الأربعاء 7 أكتوبر 2020-02: 31:47 م - ميغيل العودة الى الأعلى (86622)
شكرا لك للمشاركة

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

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

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

باستخدام هذه المنهجية ، ما هو إجمالي وقت التطوير لمخطط نجمي جديد تمامًا أو تعقيد مشابه في تقديرك؟

شكرا لك على التعليق الممتاز!

اتفق معك تماما.

أتساءل عما إذا كان سؤالك حول نصيحتي الأخرى & ldquo إنشاء تقرير خدمات تقارير SQL Server مفصل يحتوي على صور خارجية ورأس جدول متكرر & rdquo.

لم أقم بتحميل ملف التقرير & ldquoSales_Order_Detail_Report.rdl & rdquo. ومع ذلك ، قمت بالإشارة إلى & ldquoMSFTRSProdSamples لتصميم التقرير. يمكنك العثور على & ldquoAdventureWorks Sample Reports & rdquo من خلال https://archive.codeplex.com/؟p=msftrsprodsamples

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

برنامج تعليمي ممتاز ومفصل للغاية وموضح جيدًا. )

مع مرور الوقت من قبل مسؤولي قواعد البيانات ، سيقوم مطورو / مهندسو البيانات بأداء أقل من هذه المهام نظرًا لوجود الكثير من الأدوات الآلية التي ستقوم بذلك في النهاية. لا تزال معرفة الأسس والنظرية الفعلية ذات قيمة كبيرة حيث يمكن أن يكون للأدوات دائمًا قيود وثغرات وأخطاء ، وهذا هو المكان الذي نأتي إليه (ولا يزال لدينا وظيفة)!




الثلاثاء 1 أكتوبر 2019-5: 15:00 م - ناي بياو تشو العودة الى الأعلى (82637)