C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: パフォーマンス


(過去ログ 33 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■16209 / inTopicNo.1)  パフォーマンス
  
□投稿者/ ユーザ (5回)-(2008/03/31(Mon) 18:17:16)

分類:[ASP.NET (VB)] 

2008/03/31(Mon) 22:45:52 編集(投稿者)

質問が明確でなかったため後日考えしなおさせてください。
引用返信 編集キー/
■16211 / inTopicNo.2)  Re[1]: パフォーマンス
□投稿者/ はつね (547回)-(2008/03/31(Mon) 18:24:54)
はつね さんの Web サイト
No16209 (ユーザ さん) に返信

oracle10gですよね?
そのあたり、きちんと質問時に明記した方がいいです。

> あるテーブル数十個を結合した結果データ数が数千万単位であるデータベースがあります。
> データをGridViewにて表示し、編集、削除、追加などを行おうとしております。
> すべての行を範囲とするため数千万のデータにそれぞれチェックボックスなどを設け、選択
> されたものを削除などを行えるようにするというのが条件です。

無理です。
GridViewに表示するためには、そのデータをすべてクライアント側にとってこないとダメです。
データやりとりやクライアントのメモリ不足などが発生して速度はでません事が想定されます。
改ページ制御、ページごとのデータ取得制御、そもそもそんなに一度に変更するのに画面で手作業なのかの検討などが必要です。

・検索機能はないの?
・一度に変更するならば、[○○設定]ボタンのような機能が必要なんじゃないの?
etc......

> 結合後の結果をマテリアライズドビューというものをしようして最大限パフォーマンスを考慮
> したものを作成したいです。

マテリアライズドビューにするか否かは、ビューのように逐次変更が反映されなくてもいいかどうかという切り口での検討が必須です。
早いからというだけで選択しては失敗します。


> ビューでやろうとしたところ索引などが振れないということでそちらを使用したく思います。

ビューに索引は振れないというよりも、ビューを構成しているテーブルに索引が使えるということです。
# 前もそう回答したような。

引用返信 編集キー/
■16212 / inTopicNo.3)  Re[2]: パフォーマンス
□投稿者/ ネタ好き (14回)-(2008/03/31(Mon) 18:32:11)
No16209 (ユーザ さん) に返信
一画面で全てのデータを表示する事は無いと思いますので、
必要なデータを表示するイベントを捉えて、そこでデータを取得して表示すればいいと思います。

引用返信 編集キー/
■16213 / inTopicNo.4)  Re[3]: パフォーマンス
□投稿者/ なちゃ (115回)-(2008/03/31(Mon) 18:47:21)
> すべての行を範囲とするため数千万のデータにそれぞれチェックボックスなどを設け、選択されたものを削除などを行えるようにするというのが条件です。

まず有り得ない仕様です、特にWebでは。
Windowsアプリでそれっぽく見えるように工夫するというならまだしも…
まあそれでも限度を超えてると思いますし簡単にはいきませんが。

ビューがどうこういう前に仕様を考え直さないと
このままではまず実現不可能です。

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -