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? 24 1482
"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
If your Lead Developer is suggesting this, then I think you need a new
Lead Developer ASAP.
Thanks
Robb Andrew
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
"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
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
//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
// 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
"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. :)
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?
This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
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;
|
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
orchestrate a project plan that makes use of add-in
|
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+ lookup tables
2. Small number of records added monthly (<100)
3. Fairly complex, PCU-intensive...
|
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 architecture instead of a 3 tier
architecture. I am used to seperating the application into 3 tiers:...
|
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 requirements
(within the scope of the plug-in interface spec of course). In the past
I've done this with...
| |
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 I want client
applications (that are potentially on machines different from the
network on which...
|
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 recommendations from Microsoft on developing Windows Services, but
to be honest I have found difficultly in...
|
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 in mind the 'easiest' way to pass data between the layers would be with a dataset - should my BL...
|
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 longer than 30 seconds
to process my data before I get a response back from them. This is taking
far...
|
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.
|
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 usage, and What is the difference between ONU and Router. Let’s take a closer look !
Part I. Meaning of...
| |
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it.
Here is my compilation command:
g++-12 -std=c++20 -Wnarrowing bit_field.cpp
Here is the code in...
|
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 most users, this new feature is actually very convenient. If you want to control the update process,...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
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 instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
|
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 the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
| |
by: adsilva |
last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
|
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
| |