إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تركز هذه المقالة على توفير العديد من النصائح لاستخدام المخططات المعرفة من قبل المستخدم T-SQL لتطوير حلول في تجمع SQL مخصص.
مخططات لحدود التطبيق
غالبا ما تستخدم مستودعات البيانات التقليدية قواعد بيانات منفصلة لإنشاء حدود التطبيق استنادا إلى حمل العمل أو المجال أو الأمان.
على سبيل المثال، قد يتضمن مستودع بيانات SQL Server التقليدي قاعدة بيانات مرحلية وقاعدة بيانات مستودع بيانات وبعض قواعد بيانات سوق البيانات. في هذا المخطط، تعمل كل قاعدة بيانات كعبء عمل ون حدود أمان في البنية.
وعلى النقيض من ذلك، يقوم تجمع SQL المخصص بتشغيل حمل عمل مستودع البيانات بأكمله داخل قاعدة بيانات واحدة. لا يسمح بالصلات عبر قاعدة البيانات. يتوقع تجمع SQL المخصص تخزين جميع الجداول المستخدمة من قبل المستودع داخل قاعدة البيانات الواحدة.
إشعار
لا يدعم تجمع SQL استعلامات قاعدة البيانات المشتركة من أي نوع. وبالتالي، ستحتاج تطبيقات مستودع البيانات التي تستفيد من هذا النمط إلى مراجعة.
التوصيات
فيما يلي توصيات لدمج أحمال العمل والأمان والمجال والحدود الوظيفية باستخدام المخططات المعرفة من قبل المستخدم:
- استخدم قاعدة بيانات واحدة في تجمع SQL مخصص لتشغيل حمل عمل مستودع البيانات بأكمله.
- دمج بيئة مستودع البيانات الحالية لاستخدام قاعدة بيانات تجمع SQL مخصصة واحدة.
- استفد من المخططات المعرفة من قبل المستخدم لتوفير الحد الذي تم تنفيذه مسبقا باستخدام قواعد البيانات.
إذا لم يتم استخدام المخططات المعرفة من قبل المستخدم مسبقا، فسيكون لديك لوح نظيف. استخدم اسم قاعدة البيانات القديمة كأساس للمخططات المعرفة من قبل المستخدم في قاعدة بيانات تجمع SQL المخصصة.
إذا تم استخدام المخططات بالفعل، فلديك بعض الخيارات:
- قم بإزالة أسماء المخططات القديمة وابدأ من جديد.
- احتفظ بأسماء المخططات القديمة عن طريق إلحاق اسم المخطط القديم باسم الجدول.
- احتفظ بأسماء المخططات القديمة عن طريق تنفيذ طرق العرض على الجدول في مخطط إضافي لإعادة إنشاء بنية المخطط القديمة.
إشعار
في خيار التفتيش الأول 3 قد يبدو وكأنه الخيار الأكثر جاذبية. ومع ذلك، الشيطان في التفاصيل. تتم قراءة طرق العرض فقط في تجمع SQL المخصص. يجب إجراء أي تعديل على البيانات أو الجدول مقابل الجدول الأساسي. يقدم الخيار 3 أيضا طبقة من طرق العرض في النظام الخاص بك. قد ترغب في إعطاء هذا بعض الأفكار الإضافية إذا كنت تستخدم طرق العرض في البنية الخاصة بك بالفعل.
أمثلة:
تنفيذ المخططات المعرفة من قبل المستخدم استنادا إلى أسماء قواعد البيانات:
CREATE SCHEMA [stg]; -- stg previously database name for staging database
GO
CREATE SCHEMA [edw]; -- edw previously database name for the data warehouse
GO
CREATE TABLE [stg].[customer] -- create staging tables in the stg schema
( CustKey BIGINT NOT NULL
, ...
);
GO
CREATE TABLE [edw].[customer] -- create data warehouse tables in the edw schema
( CustKey BIGINT NOT NULL
, ...
);
احتفظ بأسماء المخططات القديمة عن طريق إلحاقها باسم الجدول. استخدام المخططات لحدود حمل العمل:
CREATE SCHEMA [stg]; -- stg defines the staging boundary
GO
CREATE SCHEMA [edw]; -- edw defines the data warehouse boundary
GO
CREATE TABLE [stg].[dim_customer] --pre-pend the old schema name to the table and create in the staging boundary
( CustKey BIGINT NOT NULL
, ...
);
GO
CREATE TABLE [edw].[dim_customer] --pre-pend the old schema name to the table and create in the data warehouse boundary
( CustKey BIGINT NOT NULL
, ...
);
احتفظ بأسماء المخططات القديمة باستخدام طرق العرض:
CREATE SCHEMA [stg]; -- stg defines the staging boundary
GO
CREATE SCHEMA [edw]; -- stg defines the data warehouse boundary
GO
CREATE SCHEMA [dim]; -- edw defines the legacy schema name boundary
GO
CREATE TABLE [stg].[customer] -- create the base staging tables in the staging boundary
( CustKey BIGINT NOT NULL
, ...
)
GO
CREATE TABLE [edw].[customer] -- create the base data warehouse tables in the data warehouse boundary
( CustKey BIGINT NOT NULL
, ...
)
GO
CREATE VIEW [dim].[customer] -- create a view in the legacy schema name boundary for presentation consistency purposes only
AS
SELECT CustKey
, ...
FROM [edw].customer
;
إشعار
يحتاج أي تغيير في استراتيجية المخطط إلى مراجعة نموذج الأمان لقاعدة البيانات. في كثير من الحالات، قد تتمكن من تبسيط نموذج الأمان عن طريق تعيين أذونات على مستوى المخطط. إذا كانت هناك حاجة إلى المزيد من الأذونات الدقيقة، يمكنك استخدام أدوار قاعدة البيانات.
الخطوات التالية
لمزيد من نصائح التطوير، قم بمراجعةنظرة عامة على التطوير.