473,587 Members | 2,200 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

architecture question

Jon
I'm working on a project and the lead developer wants to put all of the
business logic on the database side. He wants the proc to do all of the
logic and create XML on the fly, parse out data, etc, and then return the
final result to the business layer. I pushed back and said that the business
layer should do all of the logic, just have SQL return the data needed and
then have the code do all of the XML creation, parsing of data, etc. I was
told I was wrong and thats not the best practice.
Now, this app can hit the db by a total of 100-500 users a day, and having
the db do all of the processing can have a performance hit. Then he
mentioned something about using temp table in the database side, do a
select, then insert into the temp table, then do a select on the temp table
and do the business logic. I pushed back on that as well..

Now, I'm not a DBA but a developer and I've seen DB's take performance hits
when doing logic such as this on the database side, so my question is, which
would be the best solution for this?
Jul 6 '07 #1
24 1456
PS
"Jon" <Jo*@community. nospam.comwrote in message
news:%2******** ********@TK2MSF TNGP04.phx.gbl. ..
I'm working on a project and the lead developer wants to put all of the
business logic on the database side. He wants the proc to do all of the
logic and create XML on the fly, parse out data, etc, and then return the
final result to the business layer. I pushed back and said that the
business layer should do all of the logic, just have SQL return the data
needed and then have the code do all of the XML creation, parsing of data,
etc. I was told I was wrong and thats not the best practice.
Now, this app can hit the db by a total of 100-500 users a day, and having
the db do all of the processing can have a performance hit. Then he
mentioned something about using temp table in the database side, do a
select, then insert into the temp table, then do a select on the temp
table and do the business logic. I pushed back on that as well..

Now, I'm not a DBA but a developer and I've seen DB's take performance
hits when doing logic such as this on the database side, so my question
is, which would be the best solution for this?
What does the business layer do with the XML? Is it becoming an object or is
the XML purely data like reporting data?

PS
Jul 6 '07 #2
If your Lead Developer is suggesting this, then I think you need a new
Lead Developer ASAP.

Thanks
Robb Andrew

Jul 6 '07 #3
Jon
The developer is generating his own XML to be returned to the C# web
service. Though he's creating a dataset and returning that from his method
which calls the database, he has the stored procedure generating XML within
the proc and then just using that as his dataset to populate Grid,
listboxes, etc.
so the XML isn't being used for reporting, is just being created and then
being used to populate grid, textboxes, labels, listboxes, etc.

he's creating his own dataset XML instead of using the XML format that is
returned when creating a dataset in .NET, though his dataset XML and the one
that .NET returns actually mirror each other, so why is he creating his own
XML I have no idea

"PS" <ec***********@ hotmail.comwrot e in message
news:u4******** ******@TK2MSFTN GP06.phx.gbl...
"Jon" <Jo*@community. nospam.comwrote in message
news:%2******** ********@TK2MSF TNGP04.phx.gbl. ..
>I'm working on a project and the lead developer wants to put all of the
business logic on the database side. He wants the proc to do all of the
logic and create XML on the fly, parse out data, etc, and then return the
final result to the business layer. I pushed back and said that the
business layer should do all of the logic, just have SQL return the data
needed and then have the code do all of the XML creation, parsing of
data, etc. I was told I was wrong and thats not the best practice.
Now, this app can hit the db by a total of 100-500 users a day, and
having the db do all of the processing can have a performance hit. Then
he mentioned something about using temp table in the database side, do a
select, then insert into the temp table, then do a select on the temp
table and do the business logic. I pushed back on that as well..

Now, I'm not a DBA but a developer and I've seen DB's take performance
hits when doing logic such as this on the database side, so my question
is, which would be the best solution for this?

What does the business layer do with the XML? Is it becoming an object or
is the XML purely data like reporting data?

PS

Jul 6 '07 #4
"Jon" <Jo*@community. nospam.comwrote in message
news:%2******** ********@TK2MSF TNGP04.phx.gbl. ..
Now, I'm not a DBA but a developer and I've seen DB's take performance
hits when doing logic such as this on the database side, so my question
is, which would be the best solution for this?
In addition to what others have replied, I think you have two choices:

1) find another job or, at the very least, ask to be transferred to another
project with a different "lead" (ha! ha!) developer;

2) show this thread to your lead developer and ask for his/her comments.

In fact, I'd probably do both... :-)
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Jul 6 '07 #5
Jon
LOL
the good side of this, is that I'm only helping out so they meet their
deadline. I'm not even truly on the project full time, but they brought me
in on this project to help out and kind of over see it to make sure its
going down the correct path technology wise and architecture wise, and so
far, I think its ready for huge downfall performance wise and after going
through some of the code, I'm seeing some other performance issues, as well
as other things.

"Mark Rae [MVP]" <ma**@markNOSPA Mrae.netwrote in message
news:e0******** ******@TK2MSFTN GP02.phx.gbl...
"Jon" <Jo*@community. nospam.comwrote in message
news:%2******** ********@TK2MSF TNGP04.phx.gbl. ..
>Now, I'm not a DBA but a developer and I've seen DB's take performance
hits when doing logic such as this on the database side, so my question
is, which would be the best solution for this?

In addition to what others have replied, I think you have two choices:

1) find another job or, at the very least, ask to be transferred to
another project with a different "lead" (ha! ha!) developer;

2) show this thread to your lead developer and ask for his/her comments.

In fact, I'd probably do both... :-)
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Jul 6 '07 #6
//he's creating his own dataset XML instead of using the XML format that
is
returned when creating a dataset in .NET, though his dataset XML and the
one
that .NET returns actually mirror each other, so why is he creating his
own
XML I have no idea//

Wow.

Here are some articles:
(mine)
http://sholliday.space s.live.com/Blog/cns!A68482B9628 A842A!139.entry
(pay attention to the dataset vs custom collection performance in the 1.1
code)
http://sholliday.space s.live.com/Blog/cns!A68482B9628 A842A!140.entry
(microsoft)
http://msdn.microsoft.com/library/de...tml/BOAGag.asp

He is misusing XML. Somebody needs to reel that guy in.
Life is too short dude. Find another job if you can. Get on another
project if you can.
This guy is going to set you back so many years, you won't be able to get a
good 'next' job.

If this guy has any (perceived) authority/power, get away from him. (from
your earlier comment that "his way is the best way, period")


"Jon" <Jo*@community. nospam.comwrote in message
news:OY******** ******@TK2MSFTN GP04.phx.gbl...
The developer is generating his own XML to be returned to the C# web
service. Though he's creating a dataset and returning that from his method
which calls the database, he has the stored procedure generating XML
within
the proc and then just using that as his dataset to populate Grid,
listboxes, etc.
so the XML isn't being used for reporting, is just being created and then
being used to populate grid, textboxes, labels, listboxes, etc.

he's creating his own dataset XML instead of using the XML format that is
returned when creating a dataset in .NET, though his dataset XML and the
one
that .NET returns actually mirror each other, so why is he creating his
own
XML I have no idea

"PS" <ec***********@ hotmail.comwrot e in message
news:u4******** ******@TK2MSFTN GP06.phx.gbl...
"Jon" <Jo*@community. nospam.comwrote in message
news:%2******** ********@TK2MSF TNGP04.phx.gbl. ..
I'm working on a project and the lead developer wants to put all of the
business logic on the database side. He wants the proc to do all of the
logic and create XML on the fly, parse out data, etc, and then return
the
final result to the business layer. I pushed back and said that the
business layer should do all of the logic, just have SQL return the
data
needed and then have the code do all of the XML creation, parsing of
data, etc. I was told I was wrong and thats not the best practice.
Now, this app can hit the db by a total of 100-500 users a day, and
having the db do all of the processing can have a performance hit. Then
he mentioned something about using temp table in the database side, do
a
select, then insert into the temp table, then do a select on the temp
table and do the business logic. I pushed back on that as well..

Now, I'm not a DBA but a developer and I've seen DB's take performance
hits when doing logic such as this on the database side, so my question
is, which would be the best solution for this?
What does the business layer do with the XML? Is it becoming an object
or
is the XML purely data like reporting data?

PS


Jul 6 '07 #7
// In fact, I'd probably do both... :-)//

Amen.


"Mark Rae [MVP]" <ma**@markNOSPA Mrae.netwrote in message
news:e0******** ******@TK2MSFTN GP02.phx.gbl...
"Jon" <Jo*@community. nospam.comwrote in message
news:%2******** ********@TK2MSF TNGP04.phx.gbl. ..
Now, I'm not a DBA but a developer and I've seen DB's take performance
hits when doing logic such as this on the database side, so my question
is, which would be the best solution for this?

In addition to what others have replied, I think you have two choices:

1) find another job or, at the very least, ask to be transferred to
another
project with a different "lead" (ha! ha!) developer;

2) show this thread to your lead developer and ask for his/her comments.

In fact, I'd probably do both... :-)
--
Mark Rae
ASP.NET MVP
http://www.markrae.net

Jul 6 '07 #8

"Jon" <Jo*@community. nospam.comwrote in message news:%2******** ********@TK2MSF TNGP05.phx.gbl. ..
LOL
the good side of this, is that I'm only helping out so they meet their
deadline. I'm not even truly on the project full time, but they brought me
in on this project to help out and kind of over see it to make sure its
going down the correct path technology wise and architecture wise, and so
far, I think its ready for huge downfall performance wise and after going
through some of the code, I'm seeing some other performance issues, as well
as other things.
You should remove yourself from the project, and let it go down tubes without you, if possible.

Or become a contractor where you can think to yourself, "It's your bed lay in it, as I am just passing through -- just pay me." :)

If you're up in a NG posting about these kind of issues, then you don't need the stress, as it will kill you early. :)


Jul 6 '07 #9
Wow, flame on here.
Generally people who don't listen/admit mistakes/take advice are hard to
work with, and under... I know little compared to some of the flyers around
here, but it's that admission that keeps us current/fresh/growing.

"Jon" <Jo*@community. nospam.comwrote in message
news:%2******** ********@TK2MSF TNGP04.phx.gbl. ..
I'm working on a project and the lead developer wants to put all of the
business logic on the database side. He wants the proc to do all of the
logic and create XML on the fly, parse out data, etc, and then return the
final result to the business layer. I pushed back and said that the
business layer should do all of the logic, just have SQL return the data
needed and then have the code do all of the XML creation, parsing of data,
etc. I was told I was wrong and thats not the best practice.
Now, this app can hit the db by a total of 100-500 users a day, and having
the db do all of the processing can have a performance hit. Then he
mentioned something about using temp table in the database side, do a
select, then insert into the temp table, then do a select on the temp
table and do the business logic. I pushed back on that as well..

Now, I'm not a DBA but a developer and I've seen DB's take performance
hits when doing logic such as this on the database side, so my question
is, which would be the best solution for this?


Jul 6 '07 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
1571
by: comp.lang.php | last post by:
I can't possibly reproduce the code for this as the 2 classes in question are about 1500 lines each and condensing is in this case impossible due to algorithmic logic dependencies. Let's say you have a Class A and a Class B. Let's say Class A is like this: class A { var $b;
3
2601
by: Michael Crawford | last post by:
Hi, Where would one start for this type of application: I want to create an vb.net container application that has the gives the end user the ability to install and uninstall plugins or add-in modules. As the user installs the various components, additional functionality to the application is integrated. How would I structure or...
6
381
by: Tim | last post by:
Hello everyone. I visit this board pretty regularly but have never posted. My question is an application architecture question... so hopefully it's okay to post in the dotnet general forum. I have this project I'm proposing but want to get some opinions on a good architecture. Some of the requirements are as follows: 1. 30+ tables and 25+...
2
1770
by: hans | last post by:
Hi! I am new to .NET (coming from Java). We have to implement a desktop application which extracts data from a database, does some analysis, filtering etc. and displays the results. I have noticed that in .NET applications Windows widgets like the DataGrid are often directly bound to a DataSet Object. For me this means essentially a 2 tier...
6
2937
by: Gary James | last post by:
This may not be a direct C# question, but since I'll be using using C# for development, I thought I'd pose the question here. I'll soon be involved in the design of a new software product that will employ a software "Plug-In" architecture. Taking the plug-in route will give us a design that can adapt to, as yet, undefined future...
1
3121
by: dilip ranganathan | last post by:
Howdy All I have a quick question on an architecture I am trying to implement. I want to implement something similar to a pub-sub architecture. Is it possible to broadcast event notifications across machines and networks? I have a .NET application (lets call it .NETApp) sitting on an IIS box that recieves events from another source. If...
1
4461
by: benmorganpowell | last post by:
I have a small windows service which connects to a POP3 server at defined intervals, scans the available messages, extracts the required information and inserts the data into a SQL database. I am assuming that this is not an uncommon piece of software. I want to get an architecture that conforms as closely as possible with the...
3
1527
by: Ken H | last post by:
Hi I have a question about architecting solutions.. I have a part of a project which requires me to track person details (name, addresses, etc... Should I be creating Person objects, Address objects etc as Business layer classes and then have an data access layer which actually save / updates / delete to and from the DB.. If so, and bearing...
2
1761
by: John A | last post by:
I have a Web Service that I am reponsible for that we use for data integration purposes. Recently I have been tasked with sending some of this data to a third party. Because they need to receive the data in real time. They have requested that I subscribe to a Web Service that they have published. The only problem is that they often take...
13
7134
by: rrs.matrix | last post by:
hi i have to detect the type of CPU. whether it is 32-bit or 64-bit.. how can this be done.. can anyone please help me.. thanks.
0
7915
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main...
0
7843
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
1
7967
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For...
1
5712
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes...
0
5392
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3840
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3872
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2347
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
0
1185
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.