70-762日本語 無料問題集「Microsoft Developing SQL Databases (70-762日本語版)」

注:この質問は、同じまたは類似の回答の選択肢を使用する一連の質問の一部です。回答の選択は、シリーズ内の複数の質問に対して正しい場合があります。このシリーズの他の質問とは無関係に、それぞれの質問。質問に記載されている情報と詳細は、その質問にのみ適用されます。
あなたは会社のデータベース開発者です。この会社には、複数の物理ディスクを持つサーバーがあります。ディスクはRAIDアレイの一部ではありません。サーバーは3つのMicrosoft SQL Serverインスタンスをホストします。オフピーク時に実行される多くのSQLジョブがあります。
あなたは、多くのデッドロックがその日の特定の時間帯に起こっているように見えることを観察します。
SQL環境をモニターして、デッドロックを引き起こしているプロセスに関する情報を取り込む必要があります。
あなたは何をするべきか?

解説: (JPNTest メンバーにのみ表示されます)
注:この質問は、同じシナリオを提示する一連の質問の一部です。
シリーズの各質問には固有の解決策が含まれています。解決策が記載されている目標を満たしているかどうかを判断します。
クラスタ化インデックスと非クラスタ化インデックスを持つテーブルがあります。インデックスはテーブルとは異なる列を使用します。ノンクラスタードインデックスを使用するQuery1という名前のクエリがあります。
ユーザーは、Query1が結果を報告するのに長い時間がかかることを報告します。 Query1を実行し、インデックスシーク操作について次の統計を確認します。

パフォーマンスの問題を解決する必要があります。
解決策:両方のインデックスを最適化します。
解決策は目標を満たしていますか?

解説: (JPNTest メンバーにのみ表示されます)
4つのサーバーにクラスター化されるデータウェアハウスを設計しています。 データウェアハウスのいくつかのテーブルには、必要に応じて再構築できる一時データが含まれています。
データのスキーマは定期的に変更されます。 スキーマを変更し、それらの変更をサーバーファーム全体に展開するために必要な作業を最小限に抑える必要があります。 管理者は、次のスキーマ変更を行える必要があります。
*テーブルへの列の追加
*テーブルから列を削除する
*テーブルの追加
*テーブルの削除
一時データへの変更は、シングルトン操作として行われます。 サーバーファーム内のすべてのサーバーでデータを利用できるようにする必要があります。 サーバー間のデータ移動は、リアルタイムまたはほぼリアルタイムで発生する必要があります。
どのサーバーからのデータに対しても、いつでもSELECTステートメントを実行できる必要があります。
環境を構成する必要があります。
どのテクノロジーを実装する必要がありますか? 回答するには、回答エリアで適切なテクノロジーを選択します。
注:それぞれの正しい選択には1ポイントの価値があります。
正解:

Explanation

Box 1: Durable in-Memory OLTP
Databases containing memory-optimized tables, with or without native compiled stored procedures, are fully supported with Always On Availability Groups. There is no difference in the configuration and support for databases which contain In-Memory OLTP objects as compared to those without.
Box 2: Always on Availability groups
The Always On availability groups feature is a high-availability and disaster-recovery solution that provides an enterprise-level alternative to database mirroring. Always On availability groups maximizes the availability of a set of user databases for an enterprise. An availability group supports a failover environment for a discrete set of user databases, known as availability databases, that fail over together. An availability group supports a set of read-write primary databases and one to eight sets of corresponding secondary databases. Optionally, secondary databases can be made available for read-only access and/or some backup operations.
An availability group fails over at the level of an availability replica.
References:
https://docs.microsoft.com/en-us/sql/relational-databases/in-memory-oltp/high-availability-support-for-in-memo
https://docs.microsoft.com/en-us/sql/database-engine/availability-groups/windows/always-on-availability-groups
バックグラウンド
Employeeという名前のテーブルを含むHR1という名前のデータベースがあります。
定期的に変化する合計を含む、読み取り専用の履歴レポートがいくつかあります。 レポートは複数のクエリを使用して給与計算費用を見積もります。 クエリは同時に実行されます。 ユーザーは、給与見積もりレポートが常に実行されるとは限らないと報告しています。 データベースを監視して、レポートの実行を妨げる問題を特定する必要があります。
他のアプリケーションをサポートするデータベースサーバーにアプリケーションを配置することを計画しています。 データベースに必要なストレージの量を最小限に抑える必要があります。
従業員テーブル
次のTransact-SQLステートメントを使用して、Employeeテーブルを作成、設定、設定します。

応用
Employeesテーブルを更新するアプリケーションがあります。 アプリケーションは、次のストアドプロシージャを同時に非同期に呼び出します。
- UspA:このストアード・プロシージャーはEmployeeStatus列のみを更新します。
- UspB:このストアドプロシージャは、EmployeePayRate列のみを更新します。
アプリケーションはビューを使用してデータへのアクセスを制御します。 ビューは以下の要件を満たす必要があります。
- ビューがアクセスするテーブル内のすべての列へのユーザーアクセスを許可します。
- ビューから返される行のみに更新を制限します。
示す

展示物に示されているようにデッドロックグラフを見る。 ドロップダウンメニューを使用して、グラフィックに表示されている情報に基づいて各質問に回答する回答の選択肢を選択します。
注:それぞれ正しい選択は1ポイントの価値があります。
正解:

Explanation

References: https://msdn.microsoft.com/en-us/library/ms186736.aspx
注:この質問は、同じシナリオを提示する一連の質問の一部です。
このシリーズの各質問には固有の解決策が含まれています。解決策が記載されている目標を満たしているかどうかを判断します。
Accountテーブルは、次のTransact-SQLステートメントを使用して作成されました。

Accountテーブルには10億を超えるレコードがあります。アカウント番号列は、各アカウントを一意に識別します。 ProductCode列には100個の異なる値があります。値はテーブルに均等に分散されています。テーブル統計は最新の情報に更新されます。
次のTransact-SQL SELECTステートメントを頻繁に実行します。

クエリを実行するときにはテーブルスキャンを避けなければなりません。
テーブルに対して1つ以上のインデックスを作成する必要があります。
解決方法:次のTransact-SQLステートメントを実行します。

解決策は目標を満たしていますか?

解説: (JPNTest メンバーにのみ表示されます)
データベース環境のパフォーマンスを分析しています。
現在のデータベースに欠けているインデックスがいくつかあると思います。
現在のデータベースで欠けているインデックスの優先順位付きリストを返す必要があります。
Transact-SQLステートメントをどのように完成させるべきですか? 回答するには、適切なTransact-SQLセグメントを正しい場所にドラッグします。 各Transact-SQLセグメントは、1回、複数回、またはまったく使用しないことができます。
コンテンツを表示するには、ペイン間の分割バーをドラッグするか、スクロールする必要があります。
正解:

Explanation

Box 1: sys.db_db_missing_index_group_stats
The sys.db_db_missing_index_group_stats table include the required columns for the main query:
avg_total_user_cost, avg_user_impact, user_seeks, and user scans.
Box 2: group_handle
Example: The following query determines which missing indexes comprise a particular missing index group, and displays their column details. For the sake of this example, the missing index group handle is 24.
SELECT migs.group_handle, mid.*
FROM sys.dm_db_missing_index_group_stats AS migs
INNER JOIN sys.dm_db_missing_index_groups AS mig
ON (migs.group_handle = mig.index_group_handle)
INNER JOIN sys.dm_db_missing_index_details AS mid
ON (mig.index_handle = mid.index_handle)
WHERE migs.group_handle = 24;
Box 3: sys.db_db_missing_index_group_stats
The sys.db_db_missing_index_group_stats table include the required columns for the subquery:
avg_total_user_cost and avg_user_impact.
Example: Find the 10 missing indexes with the highest anticipated improvement for user queries The following query determines which 10 missing indexes would produce the highest anticipated cumulative improvement, in descending order, for user queries.
SELECT TOP 10 *
FROM sys.dm_db_missing_index_group_stats
ORDER BY avg_total_user_cost * avg_user_impact * (user_seeks + user_scans)DESC;
次のTransact-SQLステートメントを実行して、FactSalesというデータベーステーブルを作成します。

ix_FactSales_EmployeeKeyインデックスを変更せずにインデックスを最適化する必要があります。
テーブルの列ストアインデックスを実装する必要があります。
Transact-SQLコードをどのように完成させるべきですか? 回答するには、回答領域で適切なTransact-SQLセグメントを選択します。
注:それぞれ正しい選択は1ポイントの価値があります。
正解:

完了までに時間がかかる複数のクエリがあります。
クエリでTransact_SQLに関する詳細情報を使用して原因を特定する必要があります。 Transact_SQLステートメントは分析の一部として実行してはいけません。
どのTransact_SQLステートメントを実行しますか?

解説: (JPNTest メンバーにのみ表示されます)
注:この質問は、同じシナリオを使用する一連の質問の一部です。 あなたの便宜のために、シナリオは各質問で繰り返されます。 各質問はそれぞれ異なる目標と答えの選択を提示しますが、シナリオの本文はこのシリーズの各質問でまったく同じです。
BlogCategory、BlogEntry、ProductReview、Product、およびSalesPersonの各テーブルを含むデータベースがあります。 テーブルは、次のTransact SQLステートメントを使用して作成されました。

以下の要件を満たすようにProductReviewテーブルを変更する必要があります。
* テーブルはProductテーブルのProductID列を参照する必要があります
* ProductReviewテーブル内の既存のレコードはProductテーブルで検証してはいけません。
* レコードがProductReviewテーブルによって参照されている場合は、Productテーブルのレコードを削除してはいけません。
* Productテーブル内のレコードへの変更はProductReviewテーブルに伝播する必要があります。
次のデータベーステーブルもあります:Order、ProductTypes、およびSalesHistory、これらのテーブルのtransaction-SQLステートメントは使用できません。
以下の要件を満たすようにOrdersテーブルを変更する必要があります。
* テーブルにINSERT権限を付与せずにテーブルに新しい行を作成します。
* 注文が完了したかどうかを注文を出した販売員に通知してください。
SalesHistoryテーブルに次の制約を追加する必要があります。
* フィールドをレコードIDとして使用できるようにするSaleID列の制約
* ProductTypesテーブルのProduct列を参照するためにProductID列を使用する定数
* 列にNULL値を持つ1行を許可するCategoryID列に対する制約
* SalesPrice列を4人以上の財務部門ユーザーに制限する制約は、SalesYTD列の値が特定のしきい値を超える営業担当者のSalesHistoryテーブルからデータを取得できる必要があります。
以下の要件を満たすようにOrdersテーブルを変更する必要があります。
* テーブルにINSERT権限を付与せずにテーブルに新しい行を作成します。
* 注文が完了したかどうかを注文を出した販売員に通知してください。
SalesHistoryテーブルに次の制約を追加する必要があります。
* フィールドをレコードIDとして使用できるようにするSaleID列の制約
* ProductTypesテーブルのProduct列を参照するためにProductID列を使用する定数
* 列にNULL値を持つ1行を許可するCategoryID列に対する制約
* SalesPrice列を4人以上の財務部門ユーザーに制限する制約は、SalesYTD列の値が特定のしきい値を超える営業担当者のSalesHistoryテーブルからデータを取得できる必要があります。
正解:

Explanation

Box 1:
SaleID must be the primary key, as a constraint on the SaleID column that allows the field to be used as a record identifier is required.
Box2:
A constraint that limits the SalePrice column to values greater than four.
Box 3: UNIQUE
A constraint on the CategoryID column that allows one row with a null value in the column.
Box 4:
A foreign key constraint must be put on the productID referencing the ProductTypes table, as a constraint that uses the ProductID column to reference the Product column of the ProductTypes table is required.
Note: Requirements are:
You must add the following constraints to the SalesHistory table:
dbo.Proc1、dbo.Proc2、およびdbo.Proc3という3つの暗号化されたストアドプロシージャを含むデータベースがあります。 ストアドプロシージャには、INSERT、UPDATE、DELETE、およびBACKUP DATABASEステートメントが含まれます。
以下の要件があります。
* すべてのストアドプロシージャを同じトランザクション内で実行する必要があります。
* ストアドプロシージャにDML文が含まれている場合は、自動的にトランザクションを開始する必要があります。
* ストアドプロシージャにDDL文が含まれている場合は、トランザクションを自動的に開始しないでください。
3つすべてのストアドプロシージャを実行する必要があります。
ソリューションを開発するためにどの4つのTransact-SQLセグメントを使用する必要がありますか? 回答するには、適切なTransact-SQLセグメントを回答領域に移動してから正しい順序で配置します。
正解:

Explanation

Note:
Implicit transaction mode remains in effect until the connection executes a SET IMPLICIT_TRANSACTIONS OFF statement, which returns the connection to autocommit mode. In autocommit mode, all individual statements are committed if they complete successfully.
When a connection is in implicit transaction mode and the connection is not currently in a transaction, executing any of the following statements starts a transaction:
Note 2: XACT_STATE returns the following values.
1 The current request has an active user transaction. The request can perform any actions, including writing data and committing the transaction. The transaction is committable.
-1 The current request has an active user transaction, but an error has occurred that has caused the transaction to be classified as an uncommittable transaction. The transaction is uncommittable and should be rolled back.
0 There is no active user transaction for the current request. A commit or rollback operation would generate an error.
References:
https://technet.microsoft.com/en-us/library/ms187807(v=sql.105).aspx
https://technet.microsoft.com/en-us/library/ms189797(v=sql.110).aspx

弊社を連絡する

我々は12時間以内ですべてのお問い合わせを答えます。

オンラインサポート時間:( UTC+9 ) 9:00-24:00
月曜日から土曜日まで

サポート:現在連絡