タグ付けされた質問 「hardware」

4
CPUクロック速度とCPUコア数の比較-より高いGHzか、それともSQL Serverのコアが多いですか?
VMware内のSQL Server 2016ノードの仮想クラスターに一連の物理サーバーのプロビジョニングを開始しています。Enterprise Editionライセンスを利用します。 6つのノードのセットアップを計画していますが、CPUクロック速度とCPUコアカウントに関して、物理サーバーをプロビジョニングする理想的な方法については少し議論があります。 これは、トランザクション量と他のソフトウェア固有の要因の中で保存されているデータベースの数に大きく依存することを知っていますが、推奨される一般的な経験則はありますか? たとえば、デュアル8コア、3.2 GHz物理サーバー(16コア)は、デュアル16コア、2.6 GHzサーバー(32コア)よりも優先されますか? このタイプのトピックをさらに掘り下げたホワイトペーパーに出会った人はいますか?

4
SSDはデータベースの有用性を低下させますか
今日私はロバート・マーティンについて聞いただけで、彼はソフトウェアの世界で有名な人物のようですので、タイトルがクリックの餌のように見えたり、口に言葉を入れているように見えるわけではありませんが、これは単に限られた経験と理解で彼から聞いたことをどのように解釈したか。 本日(ソフトウェアアーキテクチャ)、ロバートC.マーティンの講演でビデオを見ていました。ビデオの後半では、データベースのトピックが主な焦点でした。 彼の発言を理解したところ、SSDはデータベースの有用性を(かなり)低下させると言っていたようです。 この解釈に至った経緯を説明するには: 彼は、HDD /スピニングディスクでは、データの取得が遅い方法について説明しました。しかし、最近ではSSDを使用している、と彼は指摘しました。「RAM is coming」で始まり、RAMディスクについて言及し続けますが、RAMディスクと呼ぶことはできないと言うので、RAMと言うことに頼ります。したがって、RAMでは、すべてのバイトが取得するのに同じ時間がかかるため、インデックスは必要ありません。(この段落は私によって言い換えられています) だから、彼はDBの代わりにRAMを(コンピューターのメモリのように)提案することは(それは私が彼の声明を解釈したものだから)意味をなさない。オンデマンドでディスクファイルからプルしない限り) だから、私はRAMで考えることに頼った、彼はSSDを意味します。したがって、その場合、彼はSSDがデータベースの有用性を低下させると言っています。彼は「私がオラクルだったら怖いだろう。私が存在する理由の根底にあるのは蒸発する」とさえ言う。 SSDについての私のわずかな理解から、O(n)シーク時間であるHDDとは異なり(私は思う)、SSDは近くO(1)、またはほぼランダムです。だから、彼の提案は私にとって興味深いものでした。数年前に私が初めてデータベースを紹介されたとき、教授が通常のファイルシステムに対する利点を説明していたとき、私はデータベースの主な役割は本質的に非常にインデックス付けされたファイルシステムであると結論付けました(最適化、キャッシュ、同時アクセス、など)、したがって、SSDでインデックスが必要ない場合、この種のデータベースの有用性は低下します。 それにもかかわらず、私が初心者であることを前にすると、純粋なファイルシステムではなくDBをアプリケーションの主要なポイントとして誰もが使用し、彼が単純化しすぎていると感じたため、それらがあまり有用ではなくなると信じることは難しいデータベースの役割。 注:彼が何か違うことを言わないように最後まで見ました。 参考までに、42:22はデータベーストピック全体が表示されるとき、43: 52は 「なぜデータベースがあるのか​​」で始まるときです。 この答えは、SSDがDBを大幅に高速化すると言っています。 この質問は、最適化がどのように変更されるかについて尋ねます。 TL; DR私の質問は、サーバ市場で広くSSDの使用の出現は(それは今後のだか、すでに起こっているかどうか)のデータベースの有用性を減らすのですか? プレゼンターが伝えようとしていたのは、SSDを使用すると、データをディスクに保存でき、SSDのように古いHDDのようにデータを取得するのに時間がかかることを心配する必要がないということでしたO(1)(おもう)。そのため、それが真実である場合、それはそれが持っていた利点の1つを仮定的に失うでしょう:インデックス付け、より速いシーク時間のためのインデックスを持つ利点がなくなったので。

3
更新(ソフトウェアおよびハードウェア)からの重いI / Oのためにデータベースを最適化する方法
状況 は非常に頻繁に更新されるpostgresql 9.2データベースがあります。したがって、システムはI / Oにバインドされており、現在別のアップグレードを検討しています。改善を開始する場所についての指示が必要です。 過去3か月間の状況の様子を次の図に示します。 ご覧のとおり、更新操作はほとんどのディスク使用率を考慮しています。より詳細な3時間のウィンドウで状況がどのように見えるかの別の写真を次に示します。 ご覧のとおり、ピーク書き込み速度は約20MB / sです ソフトウェア サーバーは、ubuntu 12.04およびpostgresql 9.2を実行しています。更新のタイプは、通常、IDで識別される個々の行で小規模に更新されます。例UPDATE cars SET price=some_price, updated_at = some_time_stamp WHERE id = some_id。可能な限りインデックスを削除して最適化し、サーバー構成(Linuxカーネルとpostgres confの両方)もかなり最適化されています。 ハードウェア ハードウェアは、32GB ECC ram、RAID 10アレイの4x 600GB 15.000 rpm SASディスクを備えた専用サーバーで、BBUとIntel Xeon E3-1245 Quadcoreプロセッサーを搭載したLSI RAIDコントローラーによって制御されます。 ご質問 グラフに表示されるパフォーマンスは、この口径のシステム(読み取り/書き込み)にとって妥当ですか? したがって、ハードウェアのアップグレードに重点を置くか、ソフトウェアの詳細な調査(カーネルの調整、confs、クエリなど)を行う必要がありますか? ハードウェアのアップグレードを行う場合、ディスクの数はパフォーマンスにとって重要ですか? - - - - - - - - …

5
SQL Server 2008R2の最適なドライブ構成
SQL Server 2008 R2を実行している次のセットアップを備えたかなり忙しいデータベースサーバーがあります。 SATA RAID 1(2ドライブ)-OS /プログラム SAS RAID 10(4ドライブ)-SQLデータベースファイル(データとログ) SAS RAID 1(2ドライブ)-TempDB(データとログ) このサーバーにドライブを追加できないと仮定して、利用可能な構成を最大限に活用しましたか?または、たとえばログをデータファイルから分離する別のスキームを検討する必要がありますか? 更新: ハードウェアの詳細をさらにリクエストした場合: SATAドライブ(OS /プログラムパーティションに使用)は次のとおりです。WD 7200 RPM 3 Gb / s 3.5インチSATA 他のアレイで使用されるSASドライブは次のとおりです。Seagate 15K RPM 6 Gb / s 3.5インチSAS 使用されるRAIDコントローラーは、LSI 9260-8i SAS / SATA 6 Gb 8ポートです。 アップデート2: 私が受け取ったフィードバックに基づいて、選択可能な次の実行可能なオプションがあるように見えます-私が概説した環境で最高である可能性が高いことを教えてくれる人に賞金を授与します: すべてをそのままにしておきます-私はおそらくあまり良くはしません 2台のSAS RAID 1ドライブを既存のRAID 10アレイに移動して、合計6台のディスクで構成する ログファイルをSAS …

1
SQL Serverボックスのボリュームを拡張するにはどうすればよいですか?
ここにあるシステム運用者(またはこの経験を以前に経験したことのある人)に対する質問があります。 私の会社は、運用中の既存のSQL Serverボックスに追加のディスク領域を割り当てたいと考えています。ボリュームの拡張(ディスクの管理の「ボリュームの拡張...」)をオンラインで実行できるのか、またはSQL Serverサービスをシャットダウンする必要があるのか​​疑問に思っています。 これを行うためにSQL Serverサービスを停止する必要がある理由、または日中にこの操作を実行するだけでよいのですか? システム仕様が関連する場合に備えて。これは、Windows 2012 R2およびSQL Server 2008 R2を実行する実際のボックス(仮想化なし)です。 ありがとう!

3
SQL ServerがすべてのCPUコア/スレッドを使用していない
SQL Serverのハードウェアをアップグレードした後、Windowsタスクマネージャーで、SQLインスタンスが使用可能なスレッドの半分しか使用していないことに気付きました。 。 サーバーには次のハードウェアとソフトウェアがあります。 Windows 2008 R2 Enterprise 64ビットSP1 Intel Xeon E7-4870-4プロセッサー(40コア、80スレッド) Microsoft SQL Server 2012 Enterprise Edition(64ビット) 実行select cpu_count from sys.dm_os_sys_infoすると40が返されます。 OSは80スレッドすべてを認識します。 サーバーの処理能力の半分しか使用されていないのはなぜですか? 2台のサーバーに同じハードウェアとソフトウェアがあり、どちらも同じ動作を示します。

1
古いバージョンを含むSQL Server 2017は、8kのディスクセクターサイズをサポートしていますか?
ディスク(回転メディアだけでなく、非回転メディア[SSD、NVMeなど]を含むように大まかに言います)ドライブは、基礎となるフォーマットとハードウェアで進化し続けています。これの一部は、512バイトの物理セクターサイズから4kの物理セクターサイズへの「拡張」であり、ディスク上のレイアウト(512n、512e、4kn)を変更します。 この次の進化は、8kの物理セクターサイズを使用することです。これは、一部のメーカーが生産と生産のセットアップを開始しています。この次のステップを考えると、8kセクターサイズのディスクはWindowsでサポートされていますか?SQL Serverはセクターサイズを考慮しますか?

2
より多くのCPUコアとより高速なディスク
私は小さな会社の一員なので、いつものようにさまざまな役割を担当しています。最新のものは、.NET Webアプリ専用のSQL Serverボックスを調達しています。32 GBのRAMを備えたデュアルXeon E5-2620(6コア)2.00 GHz CPU構成(合計12コア)で引用されています。これにより、ディスクアレイの予算が制限され、基本的にRAID 1構成の2つの2.5インチSAS 300 GBドライブ(15k RPM)で構成されます。 ディスクのセットアップがSQL Serverにとって最適ではないことを知っているので、データベース、ログファイル、およびtempdbを独自のドライブに配置できるように、RAID 10をプッシュしたいと考えています。これを予算と両立させるには、CPUコアの数を減らすことを検討する必要がありますか?それとも、コアを保持し、使用するドライブを少なくして、おそらくデュアルRAID 1セットアップで4台を使用することで、より良い銀行を獲得できますか? 追加の統計情報は次のとおりです SQL Serverデータベースは、おそらく80%対20%の多数の読み取りから書き込みに傾いています。現在のDBサイズは現在約10 GB、 26 GBで、1か月あたり250 MBの割合で増加しています。 現在、Webサーバー(RAID 1の12 GB Ram、2 x 10k 300GB SASドライブ)と共有されているシングルクアッドコアXeonボックスでSQL Server 2008 R2 Standardを実行し、SQL Server 2012 Standardへの移行を検討しています。 データベースは約100〜150人の同時ユーザーにサービスを提供し、バックグラウンドスケジューリングタスクがスローされます。これを読んで、12コアは深刻すぎると思います! SQL Azure DBにリンクされたAzureクラウドサービス(2つの小さなインスタンス)にアプリケーション全体をデプロイしました。テスト時のパフォーマンスは合理的でしたが(ほとんどゼロの負荷)、予測不可能だったため、本番環境で使用する勇気を失いました。スケールアウトのアプローチではうまくいくかもしれませんが、たった10 GBのデータベースを使用すれば、今すぐスケールアップしてお金を節約できます。 最初はライセンスコストを見落としていましたが、SQL Server 2012のライセンスがコアの数に基づいていることに気付きませんでした。SQL Server 2012 StandardライセンスのBizSpark MSDNサブスクリプションを持っているので、これがすぐに利用できるコアの数について調べる必要があります。

3
SQL Server 2008 R2の一般的なメモリ要件
私はDBAの仕事の経験はありませんが、SQLサーバーに追加のリソースを要求するためのケースを作ろうとしていて、何人かが実行する必要のある大まかな概算を提供してくれる賢い人たちを集めることを望んでいました。ITが本番SQLサーバーに割り当てたリソースの割り当てが少ないのではないかと思います。 ハードウェアとソフトウェア: データベース:SQL Server 2008 R2エンタープライズデータベース Windows:Windows 2008 r2 Enterprise 64ビット、VMwareで実行していることを確認してください。 プロセッサー:Intel(R)Xeon(R)CPU E7-4860 @ 2.27GHz 2.26 GHz(2プロセッサー) 搭載メモリ:4GB データベースファイル用ハードドライブ:300 GB バックアップ用ハードドライブ:150GB ログ用ハードドライブ:100GB 応用: 合計で約170GBのデータを追加する3つのメインデータベース、同じサーバー上のReporting Servicesデータベース(SSRS)があり、毎日生成される多分10の異なるレポート(それぞれ平均70万件のレコードを含む)を格納しています。私たちのユーザーベースは約20人の同時ユーザーです。そのうち5人は、大量のデータを処理する大量のレポートを生成する「リソース集中型」と考えることができます。ユーザーの大半は、asp.net WebサイトおよびレポートサーバーWebサイトを介してデータベースと対話します。さらに、開発者はサーバーに直接リモート処理することにより、BIDSでSSISを広範囲に使用します(最大2つのリモート接続)。最後に、かなり複雑なデータウェアハウジング操作があり、サーバーでも実行されるSSISパッケージを介して、おそらく1日あたり300万件のレコードを取り込みます。 現在の問題: 慢性的なサーバータイムアウトがあり、ウェブサイトへの応答時間がかなり悪いです。私たちが持っているメモリの量(4GB)はおそらく大きなボトルネックだと思います。以前の追加メモリの要求は、より多くのクエリ最適化を実行する必要があるという一般的な応答で拒否されました。私たちはsqlの専門家ではありませんが(私たちのセットアップでわかるように)db adminの専門家ではありませんが、ハードウェアがボトルネック。 tl; drを回避してくれてありがとう!

1
SQL Serverクエリが7 MB /秒を超えるディスクI / Oを使用しないのはなぜですか
IOmeterテストを使用して、200 MB /秒を超えるパフォーマンスを示すSSDを持っています。しかし、ローカルマシンからSQLクエリを実行すると、Windowsリソースモニターに7MB /秒を超えるディスクIOが表示されません。これは、実行に2分以上かかるクエリでも当てはまります。SSDから7MB /秒しか使用していないことがボトルネックになるのは何ですか? 私は走っています: Windows Server 2012スタンダード SQL Server 2008 R2 Intel i7 3820 32GBのRAM sandisk SSD

1
奇妙な動作DBCC Shrinkfile
データの95%がアーカイブおよび削除されているデータベースに対して、1 GBのチャンクでdbcc圧縮ファイルを実行しようとしています。9GBがデータ/インデックスである235GBファイルを使用しています。これを50GBに縮小したいと思います。データベースファイルの圧縮は悪いことです。断片化などが発生します。データのパージ/圧縮の一部として、idnexスクリプトを再構築することもできます。 自分のワークステーション(クアッドコア、12GB RAM、2 x SATAドライブ)のデータベースに対してdbcc圧縮ファイルスクリプトを実行すると、圧縮に約8〜10分かかります。 データベースポストデータパージの同じコピーに対して同じコードを実行すると、テスト環境(80以上のコア、128GB RAM、SSD SAN)では、70分かかります。注目すべきは、縮小ファイルの実行時にこのサーバーでアクティビティがほとんどないことです。同じ結果で4回実行されました。 次に、別のアプローチをとり、残りの9GBを別のファイルグループと物理ファイルに移動しました。自分のワークステーションで空の230GBファイルに対してdbccrinkfileを実行して50GBに圧縮すると、1分未満かかります。 これと同じアプローチで、テスト環境では、70分以上かかります。 テスト環境での70分間の実行中に、Brent Ozarのスクリプトに従って前後に待機統計のスナップショットを撮りました。下の上位3行: 秒単位のサンプル時間秒単位のサンプル期間wait_type待機時間(秒)待機数待機あたりの平均ミリ秒 2013-05-28 11:24:22.893 3600 WRITELOG 160.8 143066 1.1 2013-05-28 11:24:22.893 3600 CXPACKET 20.9 13915 1.5 2013-05-28 11:24:22.893 3600 PAGELATCH_EX 11.1 443038 0.0 Windowsイベントログに異常は何も表示されません。私はこの時点でスクラッチに向かっています。スタンドアロンワークステーションと比較して、忍者ハードウェアでこれほど時間がかかるのはなぜですか。

3
トランザクションログファイルを別のドライブに配置すると、パフォーマンス上のメリットはありますか?
SQL Serverデータファイルを1つのハードドライブに配置し、トランザクションログを別のハードドライブに配置することのメリットを称賛する多くのブログ投稿とベストプラクティスの記事があります。理由は、トランザクションログにはシーケンシャルな書き込みしかありませんが、データベースファイルではランダムな読み取りと書き込みが発生するためです。 しかし、何百ものデータベースがある場合はどうでしょうか?数百のトランザクションログファイルを別のディスクに配置することには、本当にパフォーマンス上のメリットがありますか 複数のトランザクションログが書き込まれている場合、トランザクションログの書き込みはデータベースの書き込みと同じくらいランダムになると思います。

1
SQL Serverは使用可能なメモリを使用していません
Windows 2008R2 Enterprise上のSQL Server 2008 R2 Standard Edition(64ビット) サーバーには300 GBを超えるメモリがありますが、コントロールパネルの合計メモリ使用量が86 GBを超えることはありません 最大量のメモリを使用するようにSQLを構成する 頻繁に使用する場合でも-CPUが80%以上分 専用SQLサーバー いくつかの大きなデータベース 頻繁に使用される1つのテーブルのインデックスサイズだけで10 GBを超える メモリにロックを保持するようにサービスアカウントを設定する それは正常ですか? 何をテストできますか? SQL Serverでより多くのメモリを使用できますか?

1
大量のRAMを備えたSQL Serverを編成するための戦略
これで、DB用の新しいサーバーができ、とりわけ128 GBのRAMを利用できます(以前は16 GBでした)。SQL Serverはそのリソースの管理に非常に優れていることを知っていますが、SSが確実に実行するためにサーバー/データベースの設定または処理コード(ストアドプロシージャ/インデックスなど)で使用する必要がある特別な設定や戦略があるかどうか疑問に思っていました利用可能なラムの最大の利点。 DBは約70GBで、非トランザクションデータベースです(データウェアハウスです)。したがって、基本的には大きなWRITEの後に大量のREADが続くのが通常の流れです。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.